summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.github/CODEOWNERS4
-rw-r--r--doc/languages-frameworks/index.xml1
-rw-r--r--doc/languages-frameworks/ocaml.xml101
-rw-r--r--doc/languages-frameworks/python.section.md17
-rw-r--r--doc/meta.xml55
-rw-r--r--doc/quick-start.xml4
-rw-r--r--doc/stdenv.xml17
-rw-r--r--lib/licenses.nix5
-rw-r--r--lib/sources.nix6
-rw-r--r--maintainers/maintainer-list.nix35
-rw-r--r--nixos/doc/manual/release-notes/rl-1903.xml47
-rw-r--r--nixos/lib/make-channel.nix4
-rw-r--r--nixos/lib/test-driver/Machine.pm3
-rw-r--r--nixos/lib/testing.nix4
-rw-r--r--nixos/modules/config/pulseaudio.nix8
-rw-r--r--nixos/modules/hardware/ckb-next.nix (renamed from nixos/modules/hardware/ckb.nix)16
-rw-r--r--nixos/modules/hardware/opengl.nix4
-rw-r--r--nixos/modules/hardware/video/amdgpu-pro.nix4
-rw-r--r--nixos/modules/hardware/video/ati.nix4
-rw-r--r--nixos/modules/hardware/video/nvidia.nix4
-rw-r--r--nixos/modules/misc/ids.nix4
-rw-r--r--nixos/modules/misc/nixpkgs.nix1
-rw-r--r--nixos/modules/module-list.nix4
-rw-r--r--nixos/modules/programs/bash/bash.nix2
-rw-r--r--nixos/modules/programs/dmrconfig.nix38
-rw-r--r--nixos/modules/programs/sway-beta.nix33
-rw-r--r--nixos/modules/rename.nix4
-rw-r--r--nixos/modules/security/rngd.nix2
-rw-r--r--nixos/modules/services/backup/bacula.nix24
-rw-r--r--nixos/modules/services/cluster/kubernetes/dns.nix386
-rw-r--r--nixos/modules/services/development/jupyter/default.nix1
-rw-r--r--nixos/modules/services/mail/rspamd.nix107
-rw-r--r--nixos/modules/services/misc/gitea.nix12
-rw-r--r--nixos/modules/services/misc/nix-daemon.nix14
-rw-r--r--nixos/modules/services/misc/packagekit.nix3
-rw-r--r--nixos/modules/services/monitoring/alerta.nix116
-rw-r--r--nixos/modules/services/monitoring/kapacitor.nix38
-rw-r--r--nixos/modules/services/monitoring/prometheus/default.nix29
-rw-r--r--nixos/modules/services/search/solr.nix181
-rw-r--r--nixos/modules/services/web-servers/tomcat.nix27
-rw-r--r--nixos/modules/system/boot/stage-1-init.sh5
-rw-r--r--nixos/modules/tasks/filesystems.nix8
-rw-r--r--nixos/modules/tasks/filesystems/bcachefs.nix61
-rw-r--r--nixos/modules/virtualisation/parallels-guest.nix4
-rw-r--r--nixos/release.nix15
-rw-r--r--nixos/tests/gitea.nix74
-rwxr-xr-xnixos/tests/hydra/create-trivial-project.sh3
-rw-r--r--nixos/tests/kubernetes/dns.nix4
-rw-r--r--nixos/tests/opensmtpd.nix2
-rw-r--r--nixos/tests/rspamd.nix100
-rw-r--r--nixos/tests/solr.nix47
-rw-r--r--pkgs/applications/audio/espeak-ng/default.nix2
-rw-r--r--pkgs/applications/audio/lollypop/default.nix4
-rw-r--r--pkgs/applications/audio/picard/default.nix16
-rw-r--r--pkgs/applications/audio/pulseaudio-modules-bt/default.nix10
-rw-r--r--pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch15
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix4
-rw-r--r--pkgs/applications/audio/spotify/default.nix6
-rw-r--r--pkgs/applications/audio/vocal/default.nix9
-rw-r--r--pkgs/applications/display-managers/ly/default.nix29
-rw-r--r--pkgs/applications/editors/android-studio/default.nix12
-rw-r--r--pkgs/applications/editors/emacs/default.nix11
-rw-r--r--pkgs/applications/editors/rstudio/clang-location.patch25
-rw-r--r--pkgs/applications/editors/rstudio/fix-cmake.patch15
-rw-r--r--pkgs/applications/editors/rstudio/preview.nix119
-rw-r--r--pkgs/applications/editors/standardnotes/default.nix48
-rw-r--r--pkgs/applications/editors/texmaker/default.nix4
-rw-r--r--pkgs/applications/editors/vim/default.nix8
-rw-r--r--pkgs/applications/graphics/feh/default.nix4
-rw-r--r--pkgs/applications/graphics/gimp/default.nix11
-rw-r--r--pkgs/applications/graphics/gimp/remove-cc-reference.patch13
-rw-r--r--pkgs/applications/graphics/phototonic/default.nix8
-rw-r--r--pkgs/applications/graphics/rapid-photo-downloader/default.nix4
-rw-r--r--pkgs/applications/graphics/yacreader/default.nix25
-rw-r--r--pkgs/applications/misc/1password/default.nix8
-rw-r--r--pkgs/applications/misc/archiver/default.nix28
-rw-r--r--pkgs/applications/misc/archiver/deps.nix56
-rw-r--r--pkgs/applications/misc/calibre/default.nix17
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix4
-rw-r--r--pkgs/applications/misc/dmrconfig/default.nix12
-rw-r--r--pkgs/applications/misc/glava/default.nix11
-rw-r--r--pkgs/applications/misc/gnuradio/rds.nix2
-rw-r--r--pkgs/applications/misc/gollum/Gemfile.lock4
-rw-r--r--pkgs/applications/misc/gollum/gemset.nix4
-rw-r--r--pkgs/applications/misc/gpxsee/default.nix4
-rw-r--r--pkgs/applications/misc/jekyll/basic/Gemfile.lock18
-rw-r--r--pkgs/applications/misc/jekyll/basic/gemset.nix32
-rw-r--r--pkgs/applications/misc/jekyll/full/Gemfile.lock20
-rw-r--r--pkgs/applications/misc/jekyll/full/gemset.nix36
-rw-r--r--pkgs/applications/misc/kdeconnect/default.nix4
-rw-r--r--pkgs/applications/misc/latte-dock/default.nix4
-rw-r--r--pkgs/applications/misc/mlterm/default.nix4
-rw-r--r--pkgs/applications/misc/multimon-ng/default.nix4
-rw-r--r--pkgs/applications/misc/mupdf/darwin.patch71
-rw-r--r--pkgs/applications/misc/mupdf/default.nix18
-rw-r--r--pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch45
-rw-r--r--pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch39
-rw-r--r--pkgs/applications/misc/osmium-tool/default.nix23
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix87
-rw-r--r--pkgs/applications/misc/qtbitcointrader/default.nix4
-rw-r--r--pkgs/applications/misc/tzupdate/default.nix4
-rw-r--r--pkgs/applications/misc/visidata/default.nix4
-rw-r--r--pkgs/applications/misc/xca/default.nix4
-rw-r--r--pkgs/applications/misc/xmr-stak/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/pdf-mupdf/default.nix19
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix5
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix16
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix5
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/canto-curses/default.nix6
-rw-r--r--pkgs/applications/networking/feedreaders/canto-daemon/default.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/psi-plus/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/toxic/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/aggregate-commands.patch110
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix57
-rw-r--r--pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix4
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix2
-rw-r--r--pkgs/applications/networking/syncthing/default.nix4
-rw-r--r--pkgs/applications/office/ledger-web/Gemfile.lock6
-rw-r--r--pkgs/applications/office/ledger-web/gemset.nix12
-rw-r--r--pkgs/applications/office/libreoffice/wrapper.nix5
-rw-r--r--pkgs/applications/science/astronomy/gildas/default.nix6
-rw-r--r--pkgs/applications/science/biology/igv/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/electronics/ngspice/default.nix6
-rw-r--r--pkgs/applications/science/logic/acgtk/default.nix50
-rw-r--r--pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch23
-rw-r--r--pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch11
-rw-r--r--pkgs/applications/science/logic/eprover/default.nix4
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix25
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix4
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock4
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix4
-rw-r--r--pkgs/applications/version-management/subversion/default.nix10
-rw-r--r--pkgs/applications/video/makemkv/default.nix7
-rw-r--r--pkgs/applications/video/qgifer/default.nix25
-rw-r--r--pkgs/applications/virtualization/docker/default.nix8
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix14
-rw-r--r--pkgs/applications/virtualization/virt-what/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/default.nix4
-rw-r--r--pkgs/build-support/build-fhs-userenv/chrootenv/default.nix11
-rw-r--r--pkgs/build-support/build-fhs-userenv/chrootenv/meson.build5
-rw-r--r--pkgs/build-support/build-fhs-userenv/default.nix4
-rw-r--r--pkgs/build-support/ocaml/dune.nix36
-rw-r--r--pkgs/data/fonts/ibm-plex/default.nix4
-rw-r--r--pkgs/data/misc/osinfo-db/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/default.nix10
-rw-r--r--pkgs/desktops/plasma-5/fetch.sh2
-rw-r--r--pkgs/desktops/plasma-5/srcs.nix360
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix27
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix21
-rw-r--r--pkgs/development/compilers/cudatoolkit/default.nix6
-rw-r--r--pkgs/development/compilers/gcc/4.8/default.nix4
-rw-r--r--pkgs/development/compilers/gcc/4.9/default.nix4
-rw-r--r--pkgs/development/compilers/gcc/5/default.nix2
-rw-r--r--pkgs/development/compilers/gcc/6/default.nix2
-rw-r--r--pkgs/development/compilers/gcc/7/default.nix2
-rw-r--r--pkgs/development/compilers/gcc/8/default.nix2
-rw-r--r--pkgs/development/compilers/ghc/7.10.3-binary.nix163
-rw-r--r--pkgs/development/compilers/ghc/8.2.1-binary.nix1
-rw-r--r--pkgs/development/compilers/ghc/8.6.2.nix232
-rw-r--r--pkgs/development/compilers/graalvm/default.nix44
-rw-r--r--pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--pkgs/development/compilers/ocaml/ber-metaocaml.nix (renamed from pkgs/development/compilers/ocaml/ber-metaocaml-104.nix)10
-rw-r--r--pkgs/development/compilers/purescript/psc-package/default.nix4
-rw-r--r--pkgs/development/compilers/reason/default.nix7
-rw-r--r--pkgs/development/coq-modules/autosubst/default.nix1
-rw-r--r--pkgs/development/coq-modules/contribs/default.nix2
-rw-r--r--pkgs/development/coq-modules/fiat/HEAD.nix5
-rw-r--r--pkgs/development/coq-modules/mathcomp/default.nix80
-rw-r--r--pkgs/development/coq-modules/mathcomp/generic.nix42
-rw-r--r--pkgs/development/coq-modules/ssreflect/default.nix59
-rw-r--r--pkgs/development/coq-modules/ssreflect/generic.nix49
-rw-r--r--pkgs/development/dhall-modules/default.nix9
-rw-r--r--pkgs/development/dhall-modules/prelude/v3.nix25
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix46
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix20
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml85
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix1
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1880
-rw-r--r--pkgs/development/haskell-modules/lib.nix44
-rw-r--r--pkgs/development/interpreters/joker/default.nix4
-rw-r--r--pkgs/development/interpreters/joker/deps.nix9
-rw-r--r--pkgs/development/interpreters/jruby/default.nix4
-rw-r--r--pkgs/development/interpreters/python/cpython/3.4/default.nix214
-rw-r--r--pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch51
-rw-r--r--pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch147
-rw-r--r--pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch48
-rw-r--r--pkgs/development/libraries/SDL/default.nix21
-rw-r--r--pkgs/development/libraries/SDL2/default.nix28
-rw-r--r--pkgs/development/libraries/SDL2_image/default.nix4
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix4
-rw-r--r--pkgs/development/libraries/bamf/default.nix7
-rw-r--r--pkgs/development/libraries/clucene-core/2.x.nix16
-rw-r--r--pkgs/development/libraries/glbinding/default.nix4
-rw-r--r--pkgs/development/libraries/http-parser/default.nix40
-rw-r--r--pkgs/development/libraries/java/lombok/default.nix4
-rw-r--r--pkgs/development/libraries/libaccounts-glib/default.nix49
-rw-r--r--pkgs/development/libraries/libaccounts-glib/py-override.patch38
-rw-r--r--pkgs/development/libraries/libdigidocpp/default.nix4
-rw-r--r--pkgs/development/libraries/libestr/default.nix4
-rw-r--r--pkgs/development/libraries/libmtp/default.nix4
-rw-r--r--pkgs/development/libraries/libosmium/default.nix24
-rw-r--r--pkgs/development/libraries/libui/default.nix6
-rw-r--r--pkgs/development/libraries/libunarr/default.nix21
-rw-r--r--pkgs/development/libraries/mesa/default.nix6
-rw-r--r--pkgs/development/libraries/nss_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/opencollada/default.nix4
-rw-r--r--pkgs/development/libraries/pcl/default.nix1
-rw-r--r--pkgs/development/libraries/podofo/default.nix23
-rw-r--r--pkgs/development/libraries/protozero/default.nix22
-rw-r--r--pkgs/development/libraries/qt-5/5.11/default.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtbase.nix6
-rw-r--r--pkgs/development/libraries/science/math/scalapack/default.nix42
-rw-r--r--pkgs/development/libraries/talloc/default.nix8
-rw-r--r--pkgs/development/libraries/theft/default.nix4
-rw-r--r--pkgs/development/libraries/v8/plv8_6_x.nix187
-rw-r--r--pkgs/development/libraries/vtk/default.nix2
-rw-r--r--pkgs/development/libraries/wcslib/default.nix4
-rw-r--r--pkgs/development/libraries/xapian/default.nix2
-rw-r--r--pkgs/development/mobile/xpwn/default.nix4
-rw-r--r--pkgs/development/node-packages/node-packages-v10.nix111
-rw-r--r--pkgs/development/node-packages/node-packages-v6.nix111
-rw-r--r--pkgs/development/node-packages/node-packages-v8.json2
-rw-r--r--pkgs/development/node-packages/node-packages-v8.nix4188
-rw-r--r--pkgs/development/ocaml-modules/angstrom/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/atd/default.nix14
-rw-r--r--pkgs/development/ocaml-modules/bigstringaf/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/biniou/default.nix14
-rw-r--r--pkgs/development/ocaml-modules/bitstring/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/camlimages/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/camomile/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt-unix.nix12
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt.nix12
-rw-r--r--pkgs/development/ocaml-modules/conduit/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt-unix.nix12
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt.nix12
-rw-r--r--pkgs/development/ocaml-modules/cstruct/default.nix14
-rw-r--r--pkgs/development/ocaml-modules/cstruct/lwt.nix12
-rw-r--r--pkgs/development/ocaml-modules/cstruct/ppx.nix14
-rw-r--r--pkgs/development/ocaml-modules/cstruct/unix.nix12
-rw-r--r--pkgs/development/ocaml-modules/csv/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/doc-ock-html/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/doc-ock-xml/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/doc-ock/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/dtoa/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/ezjsonm/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/ezxmlm/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/faraday/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/gapi-ocaml/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/git-http/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/git-unix/default.nix18
-rw-r--r--pkgs/development/ocaml-modules/git/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/hex/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/httpaf/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/io-page/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/ipaddr/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/janestreet/default.nix166
-rw-r--r--pkgs/development/ocaml-modules/janestreet/janePackage.nix25
-rw-r--r--pkgs/development/ocaml-modules/janestreet/old.nix160
-rw-r--r--pkgs/development/ocaml-modules/lambda-term/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/linenoise/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/lwt/4.x.nix20
-rw-r--r--pkgs/development/ocaml-modules/lwt/ppx.nix16
-rw-r--r--pkgs/development/ocaml-modules/lwt_log/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/lwt_react/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/lwt_ssl/default.nix18
-rw-r--r--pkgs/development/ocaml-modules/mstruct/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/odoc/default.nix26
-rw-r--r--pkgs/development/ocaml-modules/ppx_blob/default.nix18
-rw-r--r--pkgs/development/ocaml-modules/ppx_derivers/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/ppx_gen_rec/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/ppxlib/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/re/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/rresult/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/sequence/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/sqlexpr/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/sqlexpr/ppx.nix14
-rw-r--r--pkgs/development/ocaml-modules/uri/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/visitors/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/wtf8/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/zmq/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/zmq/lwt.nix12
-rw-r--r--pkgs/development/python-modules/Flask-PyMongo/default.nix4
-rw-r--r--pkgs/development/python-modules/Logbook/default.nix4
-rw-r--r--pkgs/development/python-modules/alerta-server/default.nix27
-rw-r--r--pkgs/development/python-modules/alerta/default.nix27
-rw-r--r--pkgs/development/python-modules/astral/default.nix4
-rw-r--r--pkgs/development/python-modules/authres/default.nix4
-rw-r--r--pkgs/development/python-modules/autologging/default.nix19
-rw-r--r--pkgs/development/python-modules/click-completion/default.nix4
-rw-r--r--pkgs/development/python-modules/distributed/default.nix4
-rw-r--r--pkgs/development/python-modules/django/2_1.nix4
-rw-r--r--pkgs/development/python-modules/dkimpy/default.nix4
-rw-r--r--pkgs/development/python-modules/dropbox/default.nix4
-rw-r--r--pkgs/development/python-modules/exchangelib/default.nix4
-rw-r--r--pkgs/development/python-modules/fonttools/default.nix4
-rw-r--r--pkgs/development/python-modules/gphoto2/default.nix4
-rw-r--r--pkgs/development/python-modules/httmock/default.nix22
-rw-r--r--pkgs/development/python-modules/humanize/default.nix2
-rw-r--r--pkgs/development/python-modules/imageio/default.nix32
-rw-r--r--pkgs/development/python-modules/lark-parser/default.nix12
-rw-r--r--pkgs/development/python-modules/libversion/default.nix4
-rw-r--r--pkgs/development/python-modules/moviepy/default.nix5
-rw-r--r--pkgs/development/python-modules/mwclient/default.nix4
-rw-r--r--pkgs/development/python-modules/neovim/default.nix4
-rw-r--r--pkgs/development/python-modules/networkx/default.nix5
-rw-r--r--pkgs/development/python-modules/nibabel/default.nix4
-rw-r--r--pkgs/development/python-modules/owslib/default.nix22
-rw-r--r--pkgs/development/python-modules/peppercorn/default.nix4
-rw-r--r--pkgs/development/python-modules/plyvel/default.nix6
-rw-r--r--pkgs/development/python-modules/py3status/default.nix10
-rw-r--r--pkgs/development/python-modules/pyaxmlparser/default.nix4
-rw-r--r--pkgs/development/python-modules/pyfiglet/default.nix4
-rw-r--r--pkgs/development/python-modules/pyotp/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-datafiles/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-repeat/default.nix4
-rw-r--r--pkgs/development/python-modules/python-gitlab/default.nix22
-rw-r--r--pkgs/development/python-modules/python-stdnum/default.nix4
-rw-r--r--pkgs/development/python-modules/pytorch/default.nix2
-rw-r--r--pkgs/development/python-modules/qtconsole/default.nix4
-rw-r--r--pkgs/development/python-modules/snapcast/default.nix28
-rw-r--r--pkgs/development/python-modules/splinter/default.nix4
-rw-r--r--pkgs/development/python-modules/sslib/default.nix22
-rw-r--r--pkgs/development/python-modules/stevedore/default.nix4
-rw-r--r--pkgs/development/python-modules/toml/default.nix4
-rw-r--r--pkgs/development/python-modules/uncertainties/default.nix4
-rw-r--r--pkgs/development/python-modules/uncompyle6/default.nix4
-rw-r--r--pkgs/development/python-modules/uproot-methods/default.nix4
-rw-r--r--pkgs/development/python-modules/websockets/default.nix4
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix10
-rw-r--r--pkgs/development/tools/ammonite/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix29
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix6
-rw-r--r--pkgs/development/tools/asmfmt/default.nix37
-rw-r--r--pkgs/development/tools/asmfmt/deps.nix20
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix40
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix20
-rw-r--r--pkgs/development/tools/build-managers/qbs/default.nix32
-rw-r--r--pkgs/development/tools/check/default.nix30
-rw-r--r--pkgs/development/tools/check/deps.nix11
-rw-r--r--pkgs/development/tools/chefdk/Gemfile.lock4
-rw-r--r--pkgs/development/tools/chefdk/gemset.nix4
-rw-r--r--pkgs/development/tools/deadcode/default.nix31
-rw-r--r--pkgs/development/tools/errcheck/default.nix29
-rw-r--r--pkgs/development/tools/errcheck/deps.nix20
-rw-r--r--pkgs/development/tools/flyway/default.nix11
-rw-r--r--pkgs/development/tools/go-tools/default.nix29
-rw-r--r--pkgs/development/tools/go-tools/deps.nix20
-rw-r--r--pkgs/development/tools/gocode-gomod/default.nix50
-rw-r--r--pkgs/development/tools/gocode-gomod/deps.nix11
-rw-r--r--pkgs/development/tools/gocode/default.nix13
-rw-r--r--pkgs/development/tools/gocode/deps.nix4
-rw-r--r--pkgs/development/tools/goconst/default.nix27
-rw-r--r--pkgs/development/tools/gocyclo/default.nix28
-rw-r--r--pkgs/development/tools/gogetdoc/default.nix31
-rw-r--r--pkgs/development/tools/gogetdoc/deps.nix13
-rw-r--r--pkgs/development/tools/gometalinter/default.nix70
-rw-r--r--pkgs/development/tools/gosec/default.nix29
-rw-r--r--pkgs/development/tools/gosec/deps.nix193
-rw-r--r--pkgs/development/tools/iferr/default.nix28
-rw-r--r--pkgs/development/tools/impl/default.nix30
-rw-r--r--pkgs/development/tools/impl/deps.nix11
-rw-r--r--pkgs/development/tools/ineffassign/default.nix29
-rw-r--r--pkgs/development/tools/interfacer/default.nix31
-rw-r--r--pkgs/development/tools/interfacer/deps.nix29
-rw-r--r--pkgs/development/tools/kexpand/default.nix18
-rw-r--r--pkgs/development/tools/kexpand/deps.nix63
-rw-r--r--pkgs/development/tools/maligned/default.nix30
-rw-r--r--pkgs/development/tools/maligned/deps.nix20
-rw-r--r--pkgs/development/tools/misc/binutils/default.nix2
-rw-r--r--pkgs/development/tools/misc/cwebbin/default.nix1
-rw-r--r--pkgs/development/tools/misc/eggdbus/default.nix9
-rw-r--r--pkgs/development/tools/misc/icon-naming-utils/default.nix3
-rw-r--r--pkgs/development/tools/misc/ltrace/default.nix3
-rw-r--r--pkgs/development/tools/misc/pkgconfig/default.nix1
-rw-r--r--pkgs/development/tools/misc/sqitch/default.nix1
-rw-r--r--pkgs/development/tools/misc/tie/default.nix1
-rw-r--r--pkgs/development/tools/ocaml/dune/default.nix12
-rw-r--r--pkgs/development/tools/ocaml/merlin/default.nix16
-rw-r--r--pkgs/development/tools/ocaml/ocaml-top/default.nix18
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/default.nix27
-rw-r--r--pkgs/development/tools/parse-cli-bin/default.nix3
-rw-r--r--pkgs/development/tools/parsing/peg/default.nix6
-rw-r--r--pkgs/development/tools/reftools/default.nix29
-rw-r--r--pkgs/development/tools/sigrok-cli/default.nix4
-rw-r--r--pkgs/development/tools/skopeo/default.nix12
-rw-r--r--pkgs/development/tools/tradcpp/default.nix5
-rw-r--r--pkgs/development/tools/unconvert/default.nix31
-rw-r--r--pkgs/development/tools/unconvert/deps.nix29
-rw-r--r--pkgs/development/tools/vagrant/default.nix19
-rw-r--r--pkgs/development/tools/vagrant/gemset.nix47
-rw-r--r--pkgs/development/tools/vagrant/gemset_libvirt.nix19
-rw-r--r--pkgs/development/tools/xcbuild/default.nix1
-rw-r--r--pkgs/development/tools/yarn/default.nix6
-rw-r--r--pkgs/development/web/mailcatcher/Gemfile.lock4
-rw-r--r--pkgs/development/web/mailcatcher/default.nix30
-rw-r--r--pkgs/development/web/mailcatcher/gemset.nix11
-rw-r--r--pkgs/development/web/now-cli/default.nix4
-rw-r--r--pkgs/games/blackshades/default.nix2
-rw-r--r--pkgs/games/blackshadeselite/default.nix2
-rw-r--r--pkgs/games/dwarf-fortress/wrapper/default.nix9
-rw-r--r--pkgs/games/privateer/default.nix2
-rw-r--r--pkgs/games/steam/chrootenv.nix9
-rw-r--r--pkgs/games/vdrift/default.nix2
-rw-r--r--pkgs/misc/brightnessctl/default.nix12
-rw-r--r--pkgs/misc/cups/drivers/splix/default.nix6
-rw-r--r--pkgs/misc/emulators/retroarch/default.nix4
-rw-r--r--pkgs/misc/lollypop-portal/default.nix61
-rw-r--r--pkgs/misc/vim-plugins/generated.nix229
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix50
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names15
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/frameworks.nix5
-rw-r--r--pkgs/os-specific/linux/busybox/sandbox-shell.nix2
-rw-r--r--pkgs/os-specific/linux/cpuset/default.nix27
-rw-r--r--pkgs/os-specific/linux/eudev/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix39
-rw-r--r--pkgs/os-specific/linux/fuse/default.nix4
-rw-r--r--pkgs/os-specific/linux/hdparm/default.nix4
-rw-r--r--pkgs/os-specific/linux/jfbview/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.18.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/linux-riscv.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/linux-samus-4.12.nix16
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix8
-rw-r--r--pkgs/os-specific/linux/ndiswrapper/default.nix28
-rw-r--r--pkgs/os-specific/linux/ndiswrapper/no-sbin.patch9
-rw-r--r--pkgs/servers/asterisk/default.nix2
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix2
-rw-r--r--pkgs/servers/http/nginx/generic.nix4
-rw-r--r--pkgs/servers/http/nginx/modules.nix11
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/mail/dovecot/default.nix11
-rw-r--r--pkgs/servers/mail/opensmtpd/default.nix9
-rw-r--r--pkgs/servers/matrix-synapse/default.nix102
-rw-r--r--pkgs/servers/memcached/default.nix4
-rw-r--r--pkgs/servers/misc/client-ip-echo/client-ip-echo.nix7
-rw-r--r--pkgs/servers/monitoring/riemann-dash/Gemfile.lock4
-rw-r--r--pkgs/servers/monitoring/riemann-dash/gemset.nix6
-rw-r--r--pkgs/servers/nosql/apache-jena/fuseki-binary.nix4
-rw-r--r--pkgs/servers/nosql/redis/default.nix4
-rw-r--r--pkgs/servers/plex/default.nix6
-rw-r--r--pkgs/servers/radicale/default.nix4
-rw-r--r--pkgs/servers/search/solr/default.nix23
-rw-r--r--pkgs/servers/smcroute/default.nix4
-rw-r--r--pkgs/servers/sql/postgresql/plv8/default.nix12
-rw-r--r--pkgs/servers/sql/postgresql/timescaledb/default.nix2
-rw-r--r--pkgs/servers/varnish/default.nix4
-rw-r--r--pkgs/servers/web-apps/frab/Gemfile.lock2
-rw-r--r--pkgs/servers/web-apps/frab/gemset.nix72
-rw-r--r--pkgs/servers/x11/quartz-wm/default.nix8
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix22
-rw-r--r--pkgs/servers/x11/xquartz/default.nix13
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/stdenv/generic/check-meta.nix12
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix4
-rw-r--r--pkgs/tools/X11/xidlehook/default.nix4
-rw-r--r--pkgs/tools/admin/fastlane/Gemfile.lock10
-rw-r--r--pkgs/tools/admin/fastlane/gemset.nix16
-rw-r--r--pkgs/tools/admin/oxidized/Gemfile.lock4
-rw-r--r--pkgs/tools/admin/oxidized/gemset.nix6
-rw-r--r--pkgs/tools/archivers/unshield/default.nix4
-rw-r--r--pkgs/tools/backup/bacula/default.nix16
-rw-r--r--pkgs/tools/backup/bup/default.nix4
-rw-r--r--pkgs/tools/backup/duplicity/default.nix4
-rw-r--r--pkgs/tools/filesystems/snapraid/default.nix4
-rw-r--r--pkgs/tools/graphics/netpbm/default.nix2
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix4
-rw-r--r--pkgs/tools/misc/ckb-next/default.nix (renamed from pkgs/tools/misc/ckb/default.nix)26
-rw-r--r--pkgs/tools/misc/ckb-next/install-dirs.patch32
-rw-r--r--pkgs/tools/misc/ckb-next/modprobe.patch26
-rw-r--r--pkgs/tools/misc/ckb-next/systemd-service.patch45
-rw-r--r--pkgs/tools/misc/ckb/ckb-animations-location.patch12
-rw-r--r--pkgs/tools/misc/ckb/ckb-modprobe.patch13
-rw-r--r--pkgs/tools/misc/contacts/default.nix12
-rw-r--r--pkgs/tools/misc/jdupes/default.nix4
-rw-r--r--pkgs/tools/misc/patdiff/default.nix2
-rw-r--r--pkgs/tools/misc/pgmetrics/default.nix24
-rw-r--r--pkgs/tools/misc/pgmetrics/deps.nix84
-rw-r--r--pkgs/tools/misc/snapper/default.nix4
-rw-r--r--pkgs/tools/misc/svtplay-dl/default.nix12
-rw-r--r--pkgs/tools/misc/tio/default.nix4
-rw-r--r--pkgs/tools/misc/tmux/default.nix4
-rw-r--r--pkgs/tools/misc/watchexec/default.nix12
-rw-r--r--pkgs/tools/misc/yank/default.nix4
-rw-r--r--pkgs/tools/misc/you-get/default.nix4
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/grpcurl/default.nix29
-rw-r--r--pkgs/tools/networking/grpcurl/deps-darwin.nix57
-rw-r--r--pkgs/tools/networking/grpcurl/deps-linux.nix66
-rw-r--r--pkgs/tools/networking/httpie/default.nix4
-rw-r--r--pkgs/tools/networking/ip2unix/default.nix32
-rw-r--r--pkgs/tools/networking/shadowsocks-libev/default.nix18
-rw-r--r--pkgs/tools/networking/spoofer/default.nix4
-rw-r--r--pkgs/tools/networking/swaks/default.nix4
-rw-r--r--pkgs/tools/networking/tgt/default.nix4
-rw-r--r--pkgs/tools/security/acsccid/default.nix54
-rw-r--r--pkgs/tools/security/chrome-token-signing/default.nix27
-rw-r--r--pkgs/tools/security/metasploit/Gemfile.lock4
-rw-r--r--pkgs/tools/security/metasploit/gemset.nix52
-rw-r--r--pkgs/tools/security/pcsclite/default.nix4
-rw-r--r--pkgs/tools/security/pinentry/mac.nix9
-rw-r--r--pkgs/tools/security/qdigidoc/default.nix16
-rw-r--r--pkgs/tools/security/qesteidutil/default.nix17
-rw-r--r--pkgs/tools/system/rsyslog/default.nix4
-rw-r--r--pkgs/tools/text/bcat/Gemfile.lock4
-rw-r--r--pkgs/tools/text/bcat/gemset.nix4
-rw-r--r--pkgs/tools/text/gucci/default.nix30
-rw-r--r--pkgs/tools/text/gucci/deps.nix30
-rw-r--r--pkgs/tools/typesetting/asciidoctor/Gemfile.lock4
-rw-r--r--pkgs/tools/typesetting/asciidoctor/gemset.nix6
-rw-r--r--pkgs/tools/typesetting/pdf2djvu/default.nix4
-rw-r--r--pkgs/tools/typesetting/scdoc/default.nix2
-rw-r--r--pkgs/tools/typesetting/scdoc/use-source-date-epoch.patch75
-rw-r--r--pkgs/tools/video/atomicparsley/default.nix14
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix311
-rw-r--r--pkgs/top-level/coq-packages.nix11
-rw-r--r--pkgs/top-level/haskell-packages.nix24
-rw-r--r--pkgs/top-level/ocaml-packages.nix4
-rw-r--r--pkgs/top-level/python-packages.nix16
-rw-r--r--pkgs/top-level/release-lib.nix2
-rw-r--r--pkgs/top-level/release.nix2
-rw-r--r--pkgs/top-level/stage.nix4
540 files changed, 11224 insertions, 7067 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index e819d451fd5..17b830e5fad 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -113,3 +113,7 @@
 /nixos/modules/services/databases/postgresql.xml @thoughtpolice
 /nixos/modules/services/databases/postgresql.nix @thoughtpolice
 /nixos/tests/postgresql.nix @thoughtpolice
+
+# Dhall
+/pkgs/development/dhall-modules      @Gabriel439 @Profpatsch
+/pkgs/development/interpreters/dhall @Gabriel439 @Profpatsch
diff --git a/doc/languages-frameworks/index.xml b/doc/languages-frameworks/index.xml
index f22984cb56b..ac0ad712532 100644
--- a/doc/languages-frameworks/index.xml
+++ b/doc/languages-frameworks/index.xml
@@ -19,6 +19,7 @@
  <xi:include href="java.xml" />
  <xi:include href="lua.xml" />
  <xi:include href="node.section.xml" />
+ <xi:include href="ocaml.xml" />
  <xi:include href="perl.xml" />
  <xi:include href="python.section.xml" />
  <xi:include href="qt.xml" />
diff --git a/doc/languages-frameworks/ocaml.xml b/doc/languages-frameworks/ocaml.xml
new file mode 100644
index 00000000000..d1c29c72f72
--- /dev/null
+++ b/doc/languages-frameworks/ocaml.xml
@@ -0,0 +1,101 @@
+<section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xml:id="sec-language-ocaml">
+ <title>OCaml</title>
+
+ <para>
+   OCaml libraries should be installed in
+   <literal>$(out)/lib/ocaml/${ocaml.version}/site-lib/</literal>. Such
+   directories are automatically added to the <literal>$OCAMLPATH</literal>
+   environment variable when building another package that depends on them
+   or when opening a <literal>nix-shell</literal>.
+ </para>
+
+ <para>
+   Given that most of the OCaml ecosystem is now built with dune,
+   nixpkgs includes a convenience build support function called
+   <literal>buildDunePackage</literal> that will build an OCaml package
+   using dune, OCaml and findlib and any additional dependencies provided
+   as <literal>buildInputs</literal> or <literal>propagatedBuildInputs</literal>.
+ </para>
+
+ <para>
+   Here is a simple package example. It defines an (optional) attribute
+   <literal>minimumOCamlVersion</literal> that will be used to throw a
+   descriptive evaluation error if building with an older OCaml is attempted.
+   It uses the <literal>fetchFromGitHub</literal> fetcher to get its source.
+   It sets the <literal>doCheck</literal> (optional) attribute to
+   <literal>true</literal> which means that tests will be run with
+   <literal>dune runtest -p angstrom</literal> after the build
+   (<literal>dune build -p angstrom</literal>) is complete.
+   It uses <literal>alcotest</literal> as a build input (because it is needed
+   to run the tests) and <literal>bigstringaf</literal> and
+   <literal>result</literal> as propagated build inputs (thus they will also
+   be available to libraries depending on this library).
+   The library will be installed using the <literal>angstrom.install</literal>
+   file that dune generates.
+ </para>
+
+ <programlisting>
+{ stdenv, fetchFromGitHub, buildDunePackage, alcotest, result, bigstringaf }:
+
+buildDunePackage rec {
+  pname = "angstrom";
+  version = "0.10.0";
+
+  minimumOCamlVersion = "4.03";
+
+  src = fetchFromGitHub {
+    owner  = "inhabitedtype";
+    repo   = pname;
+    rev    = version;
+    sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
+  };
+
+  buildInputs = [ alcotest ];
+  propagatedBuildInputs = [ bigstringaf result ];
+  doCheck = true;
+
+  meta = {
+    homepage = https://github.com/inhabitedtype/angstrom;
+    description = "OCaml parser combinators built for speed and memory efficiency";
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
+  };
+}
+ </programlisting>
+
+ <para>
+   Here is a second example, this time using a source archive generated with
+   <literal>dune-release</literal>. The <literal>unpackCmd</literal>
+   redefinition is necessary to be able to unpack the kind of tarball that
+   <literal>dune-release</literal> generates. This library does not depend
+   on any other OCaml library and no tests are run after building it.
+ </para>
+
+ <programlisting>
+{ stdenv, fetchurl, buildDunePackage }:
+
+buildDunePackage rec {
+  pname = "wtf8";
+  version = "1.0.1";
+
+  minimumOCamlVersion = "4.01";
+
+  src = fetchurl {
+    url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
+    sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
+  };
+
+  unpackCmd = "tar xjf $src";
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/flowtype/ocaml-wtf8;
+    description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
+    license = licenses.mit;
+    maintainers = [ maintainers.eqyiel ];
+  };
+}
+ </programlisting>
+
+</section>
diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md
index 857463c5787..81ce4d94ad2 100644
--- a/doc/languages-frameworks/python.section.md
+++ b/doc/languages-frameworks/python.section.md
@@ -483,12 +483,12 @@ and in this case the `python35` interpreter is automatically used.
 
 ### Interpreters
 
-Versions 2.7, 3.4, 3.5, 3.6 and 3.7 of the CPython interpreter are available as
-respectively `python27`, `python34`, `python35`, `python36` and `python37`. The PyPy interpreter
-is available as `pypy`. The aliases `python2` and `python3` correspond to respectively `python27` and
-`python37`. The default interpreter, `python`, maps to `python2`.
-The Nix expressions for the interpreters can be found in
-`pkgs/development/interpreters/python`.
+Versions 2.7, 3.5, 3.6 and 3.7 of the CPython interpreter are available as
+respectively `python27`, `python35`, `python36` and `python37`. The PyPy
+interpreter is available as `pypy`. The aliases `python2` and `python3`
+correspond to respectively `python27` and `python37`. The default interpreter,
+`python`, maps to `python2`. The Nix expressions for the interpreters can be
+found in `pkgs/development/interpreters/python`.
 
 All packages depending on any Python interpreter get appended
 `out/{python.sitePackages}` to `$PYTHONPATH` if such directory
@@ -507,7 +507,7 @@ Each interpreter has the following attributes:
 - `buildEnv`. Function to build python interpreter environments with extra packages bundled together. See section *python.buildEnv function* for usage and documentation.
 - `withPackages`. Simpler interface to `buildEnv`. See section *python.withPackages function* for usage and documentation.
 - `sitePackages`. Alias for `lib/${libPrefix}/site-packages`.
-- `executable`. Name of the interpreter executable, e.g. `python3.4`.
+- `executable`. Name of the interpreter executable, e.g. `python3.7`.
 - `pkgs`. Set of Python packages for that specific interpreter. The package set can be modified by overriding the interpreter and passing `packageOverrides`.
 
 ### Building packages and applications
@@ -529,7 +529,6 @@ attribute set is created for each available Python interpreter. The available
 sets are
 
 * `pkgs.python27Packages`
-* `pkgs.python34Packages`
 * `pkgs.python35Packages`
 * `pkgs.python36Packages`
 * `pkgs.python37Packages`
@@ -837,7 +836,7 @@ community to help save time. No tool is preferred at the moment.
 
 ### Deterministic builds
 
-Python 2.7, 3.5 and 3.6 are now built deterministically and 3.4 mostly.
+The Python interpreters are now built deterministically.
 Minor modifications had to be made to the interpreters in order to generate
 deterministic bytecode. This has security implications and is relevant for
 those using Python in a `nix-shell`.
diff --git a/doc/meta.xml b/doc/meta.xml
index 496b3291655..51c7b2dfc88 100644
--- a/doc/meta.xml
+++ b/doc/meta.xml
@@ -252,6 +252,61 @@ meta.platforms = stdenv.lib.platforms.linux;
    </varlistentry>
    <varlistentry>
     <term>
+     <varname>tests</varname>
+    </term>
+    <listitem>
+     <para>
+      An attribute set with as values tests. A test is a derivation, which
+      builds successfully when the test passes, and fails to build otherwise. A
+      derivation that is a test requires some <literal>meta</literal> elements
+      to be defined: <literal>needsVMSupport</literal> (automatically filled-in
+      for NixOS tests) and <literal>timeout</literal>.
+     </para>
+     <para>
+      The NixOS tests are available as <literal>nixosTests</literal> in
+      parameters of derivations. For instance, the OpenSMTPD derivation
+      includes lines similar to:
+<programlisting>
+{ /* ... */, nixosTests }:
+{
+  # ...
+  meta.tests = {
+    basic-functionality-and-dovecot-integration = nixosTests.opensmtpd;
+  };
+}
+</programlisting>
+     </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     <varname>timeout</varname>
+    </term>
+    <listitem>
+     <para>
+      A timeout (in seconds) for building the derivation. If the derivation
+      takes longer than this time to build, it can fail due to breaking the
+      timeout. However, all computers do not have the same computing power,
+      hence some builders may decide to apply a multiplicative factor to this
+      value. When filling this value in, try to keep it approximately
+      consistent with other values already present in
+      <literal>nixpkgs</literal>.
+     </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     <varname>needsVMSupport</varname>
+    </term>
+    <listitem>
+     <para>
+      A boolan that states whether the derivation requires build-time support
+      for Virtual Machine to build successfully.
+     </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
      <varname>hydraPlatforms</varname>
     </term>
     <listitem>
diff --git a/doc/quick-start.xml b/doc/quick-start.xml
index b9e6d789404..8dd673ed273 100644
--- a/doc/quick-start.xml
+++ b/doc/quick-start.xml
@@ -147,8 +147,8 @@ $ git add pkgs/development/libraries/libfoo/default.nix</screen>
       </listitem>
       <listitem>
        <para>
-        You can use <command>nix-prefetch-url</command> (or similar
-        nix-prefetch-git, etc) <replaceable>url</replaceable> to get the
+        You can use <command>nix-prefetch-url</command>
+        <replaceable>url</replaceable> to get the
         SHA-256 hash of source distributions. There are similar commands as
         <command>nix-prefetch-git</command> and
         <command>nix-prefetch-hg</command> available in
diff --git a/doc/stdenv.xml b/doc/stdenv.xml
index b2f30bf08db..ef45ec301a6 100644
--- a/doc/stdenv.xml
+++ b/doc/stdenv.xml
@@ -618,7 +618,7 @@ let f(h, h + 1, i) = i + h
   </variablelist>
 
   <variablelist>
-   <title>Variables affecting build properties</title>
+   <title>Attributes affecting build properties</title>
    <varlistentry>
     <term>
      <varname>enableParallelBuilding</varname>
@@ -637,21 +637,6 @@ let f(h, h + 1, i) = i + h
      </para>
     </listitem>
    </varlistentry>
-   <varlistentry>
-    <term>
-     <varname>preferLocalBuild</varname>
-    </term>
-    <listitem>
-     <para>
-      If set, specifies that the package is so lightweight in terms of build
-      operations (e.g. write a text file from a Nix string to the store) that
-      there's no need to look for it in binary caches -- it's faster to just
-      build it locally. It also tells Hydra and other facilities that this
-      package doesn't need to be exported in binary caches (noone would use it,
-      after all).
-     </para>
-    </listitem>
-   </varlistentry>
   </variablelist>
 
   <variablelist>
diff --git a/lib/licenses.nix b/lib/licenses.nix
index 092cbbbdb25..e3803c098c7 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -13,6 +13,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
    * add it to this list. The URL mentioned above is a good source for inspiration.
    */
 
+  abstyles = spdx {
+    spdxId = "Abstyles";
+    fullName = "Abstyles License";
+  };
+
   afl21 = spdx {
     spdxId = "AFL-2.1";
     fullName = "Academic Free License v2.1";
diff --git a/lib/sources.nix b/lib/sources.nix
index e64b23414e8..1a9f3f7d1f3 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -73,7 +73,7 @@ rec {
   # Get the commit id of a git repo
   # Example: commitIdFromGitRepo <nixpkgs/.git>
   commitIdFromGitRepo =
-    let readCommitFromFile = path: file:
+    let readCommitFromFile = file: path:
       with builtins;
         let fileName       = toString path + "/" + file;
             packedRefsName = toString path + "/packed-refs";
@@ -85,7 +85,7 @@ rec {
                  matchRef    = match "^ref: (.*)$" fileContent;
              in if   isNull matchRef
                 then fileContent
-                else readCommitFromFile path (lib.head matchRef)
+                else readCommitFromFile (lib.head matchRef) path
            # Sometimes, the file isn't there at all and has been packed away in the
            # packed-refs file, so we have to grep through it:
            else if lib.pathExists packedRefsName
@@ -96,7 +96,7 @@ rec {
                 then throw ("Could not find " + file + " in " + packedRefsName)
                 else lib.head matchRef
            else throw ("Not a .git directory: " + path);
-    in lib.flip readCommitFromFile "HEAD";
+    in readCommitFromFile "HEAD";
 
   pathHasContext = builtins.hasContext or (lib.hasPrefix builtins.storeDir);
 
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index ec4289f19ea..c73cda5ea1c 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -406,6 +406,11 @@
     github = "AveryLychee";
     name = "Avery Lychee";
   };
+  averelld = {
+    email = "averell+nixos@rxd4.com";
+    github = "averelld";
+    name = "averelld";
+  };
   avnik = {
     email = "avn@avnik.info";
     github = "avnik";
@@ -619,6 +624,11 @@
     github = "bramd";
     name = "Bram Duvigneau";
   };
+  braydenjw = {
+    email = "nixpkgs@willenborg.ca";
+    github = "braydenjw";
+    name = "Brayden Willenborg";
+  };
   brian-dawn = {
     email = "brian.t.dawn@gmail.com";
     github = "brian-dawn";
@@ -957,6 +967,11 @@
     github = "danielfullmer";
     name = "Daniel Fullmer";
   };
+  das-g = {
+    email = "nixpkgs@raphael.dasgupta.ch";
+    github = "das-g";
+    name = "Raphael Das Gupta";
+  };
   das_j = {
     email = "janne@hess.ooo";
     github = "dasJ";
@@ -2219,6 +2234,11 @@
     github = "knedlsepp";
     name = "Josef Kemetmüller";
   };
+  knl = {
+    email = "nikola@knezevic.co";
+    github = "knl";
+    name = "Nikola Knežević";
+  };
   konimex = {
     email = "herdiansyah@netc.eu";
     github = "konimex";
@@ -2675,6 +2695,11 @@
     github = "mgdelacroix";
     name = "Miguel de la Cruz";
   };
+  mgregoire = {
+    email = "gregoire@martinache.net";
+    github = "M-Gregoire";
+    name = "Gregoire Martinache";
+  };
   mgttlinger = {
     email = "megoettlinger@gmail.com";
     github = "mgttlinger";
@@ -3800,6 +3825,11 @@
     github = "scolobb";
     name = "Sergiu Ivanov";
   };
+  screendriver = {
+    email = "nix@echooff.de";
+    github = "screendriver";
+    name = "Christian Rackerseder";
+  };
   Scriptkiddi = {
     email = "nixos@scriptkiddi.de";
     github = "scriptkiddi";
@@ -3983,6 +4013,11 @@
     github = "spacefrogg";
     name = "Michael Raitza";
   };
+  spacekookie = {
+    email = "kookie@spacekookie.de";
+    github = "spacekookie";
+    name = "Katharina Fey";
+  };
   spencerjanssen = {
     email = "spencerjanssen@gmail.com";
     github = "spencerjanssen";
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
index 09abca5a468..5beca39e8be 100644
--- a/nixos/doc/manual/release-notes/rl-1903.xml
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -99,20 +99,20 @@
        start org.nixos.nix-daemon</command>.
       </para>
      </listitem>
-     <listitem>
-      <para>
-        The Syncthing state and configuration data has been moved from
-        <varname>services.syncthing.dataDir</varname> to the newly defined
-        <varname>services.syncthing.configDir</varname>, which default to
-        <literal>/var/lib/syncthing/.config/syncthing</literal>.
-        This change makes possible to share synced directories using ACLs
-        without Syncthing resetting the permission on every start.
-      </para>
-     </listitem>
     </itemizedlist>
    </listitem>
    <listitem>
     <para>
+      The Syncthing state and configuration data has been moved from
+      <varname>services.syncthing.dataDir</varname> to the newly defined
+      <varname>services.syncthing.configDir</varname>, which default to
+      <literal>/var/lib/syncthing/.config/syncthing</literal>.
+      This change makes possible to share synced directories using ACLs
+      without Syncthing resetting the permission on every start.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
      Package <varname>rabbitmq_server</varname> is renamed to
      <varname>rabbitmq-server</varname>.
     </para>
@@ -192,6 +192,20 @@
       options can occour more than once in the configuration.
     </para>
    </listitem>
+   <listitem>
+    <para>
+      The <literal>solr</literal> package has been upgraded from 4.10.3 to 7.5.0 and has undergone
+      some major changes. The <literal>services.solr</literal> module has been updated to reflect
+      these changes. Please review http://lucene.apache.org/solr/ carefully before upgrading.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+     Package <literal>ckb</literal> is renamed to <literal>ckb-next</literal>,
+     and options <literal>hardware.ckb.*</literal> are renamed to
+     <literal>hardware.ckb-next.*</literal>.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 
@@ -219,6 +233,19 @@
      supports loading TrueCrypt volumes.
     </para>
    </listitem>
+   <listitem>
+    <para>
+      The Kubernetes DNS addons, kube-dns, has been replaced with CoreDNS.
+      This change is made in accordance with Kubernetes making CoreDNS the official default
+      starting from
+      <link xlink:href="https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#sig-cluster-lifecycle">Kubernetes v1.11</link>.
+      Please beware that upgrading DNS-addon on existing clusters might induce
+      minor downtime while the DNS-addon terminates and re-initializes.
+      Also note that the DNS-service now runs with 2 pod replicas by default.
+      The desired number of replicas can be configured using:
+      <option>services.kubernetes.addons.dns.replicas</option>.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/lib/make-channel.nix b/nixos/lib/make-channel.nix
index fd805f7f943..9b920b989fc 100644
--- a/nixos/lib/make-channel.nix
+++ b/nixos/lib/make-channel.nix
@@ -1,3 +1,7 @@
+/* Build a channel tarball. These contain, in addition to the nixpkgs
+ * expressions themselves, files that indicate the version of nixpkgs
+ * that they represent.
+ */
 { pkgs, nixpkgs, version, versionSuffix }:
 
 pkgs.releaseTools.makeSourceTarball {
diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm
index abcc1c50d4d..a00fe25c2b8 100644
--- a/nixos/lib/test-driver/Machine.pm
+++ b/nixos/lib/test-driver/Machine.pm
@@ -250,8 +250,7 @@ sub connect {
         $self->start;
 
         local $SIG{ALRM} = sub { die "timed out waiting for the VM to connect\n"; };
-        # 50 minutes -- increased as a test, see #49441
-        alarm 3000;
+        alarm 300;
         readline $self->{socket} or die "the VM quit before connecting\n";
         alarm 0;
 
diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix
index 42a0c60c7e1..8cdf4150057 100644
--- a/nixos/lib/testing.nix
+++ b/nixos/lib/testing.nix
@@ -69,7 +69,9 @@ in rec {
             mkdir -p $out/coverage-data
             mv $i $out/coverage-data/$(dirname $(dirname $i))
           done
-        ''; # */
+        '';
+
+        meta.needsVMSupport = true;
     };
 
 
diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix
index d4aa5950629..67f7105fe2f 100644
--- a/nixos/modules/config/pulseaudio.nix
+++ b/nixos/modules/config/pulseaudio.nix
@@ -1,4 +1,4 @@
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
 
 with pkgs;
 with lib;
@@ -19,7 +19,7 @@ let
 
   # Forces 32bit pulseaudio and alsaPlugins to be built/supported for apps
   # using 32bit alsa on 64bit linux.
-  enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs_i686.alsaLib != null && pkgs_i686.libpulseaudio != null);
+  enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs.pkgsi686Linux.alsaLib != null && pkgs.pkgsi686Linux.libpulseaudio != null);
 
 
   myConfigFile =
@@ -63,7 +63,7 @@ let
     pcm_type.pulse {
       libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;
       ${lib.optionalString enable32BitAlsaPlugins
-     "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"}
+     "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"}
     }
     pcm.!default {
       type pulse
@@ -72,7 +72,7 @@ let
     ctl_type.pulse {
       libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;
       ${lib.optionalString enable32BitAlsaPlugins
-     "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"}
+     "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"}
     }
     ctl.!default {
       type pulse
diff --git a/nixos/modules/hardware/ckb.nix b/nixos/modules/hardware/ckb-next.nix
index 8429572a882..a275fb8fd60 100644
--- a/nixos/modules/hardware/ckb.nix
+++ b/nixos/modules/hardware/ckb-next.nix
@@ -3,17 +3,17 @@
 with lib;
 
 let
-  cfg = config.hardware.ckb;
+  cfg = config.hardware.ckb-next;
 
 in
   {
-    options.hardware.ckb = {
+    options.hardware.ckb-next = {
       enable = mkEnableOption "the Corsair keyboard/mouse driver";
 
       package = mkOption {
         type = types.package;
-        default = pkgs.ckb;
-        defaultText = "pkgs.ckb";
+        default = pkgs.ckb-next;
+        defaultText = "pkgs.ckb-next";
         description = ''
           The package implementing the Corsair keyboard/mouse driver.
         '';
@@ -23,12 +23,12 @@ in
     config = mkIf cfg.enable {
       environment.systemPackages = [ cfg.package ];
 
-      systemd.services.ckb = {
-        description = "Corsair Keyboard Daemon";
+      systemd.services.ckb-next = {
+        description = "Corsair Keyboards and Mice Daemon";
         wantedBy = ["multi-user.target"];
-        script = "${cfg.package}/bin/ckb-daemon";
+        script = "exec ${cfg.package}/bin/ckb-next-daemon";
         serviceConfig = {
-          Restart = "always";
+          Restart = "on-failure";
           StandardOutput = "syslog";
         };
       };
diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix
index 46d06d71333..48e0072e089 100644
--- a/nixos/modules/hardware/opengl.nix
+++ b/nixos/modules/hardware/opengl.nix
@@ -1,4 +1,4 @@
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
 
 with lib;
 
@@ -148,7 +148,7 @@ in
       [ "/run/opengl-driver/share" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/share";
 
     hardware.opengl.package = mkDefault (makePackage pkgs);
-    hardware.opengl.package32 = mkDefault (makePackage pkgs_i686);
+    hardware.opengl.package32 = mkDefault (makePackage pkgs.pkgsi686Linux);
 
     boot.extraModulePackages = optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions;
   };
diff --git a/nixos/modules/hardware/video/amdgpu-pro.nix b/nixos/modules/hardware/video/amdgpu-pro.nix
index 50af022b93c..ab9e0c92020 100644
--- a/nixos/modules/hardware/video/amdgpu-pro.nix
+++ b/nixos/modules/hardware/video/amdgpu-pro.nix
@@ -1,6 +1,6 @@
 # This module provides the proprietary AMDGPU-PRO drivers.
 
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
 
 with lib;
 
@@ -11,7 +11,7 @@ let
   enabled = elem "amdgpu-pro" drivers;
 
   package = config.boot.kernelPackages.amdgpu-pro;
-  package32 = pkgs_i686.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; };
+  package32 = pkgs.pkgsi686Linux.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; };
 
   opengl = config.hardware.opengl;
 
diff --git a/nixos/modules/hardware/video/ati.nix b/nixos/modules/hardware/video/ati.nix
index 2fa37af6ca5..6102919f015 100644
--- a/nixos/modules/hardware/video/ati.nix
+++ b/nixos/modules/hardware/video/ati.nix
@@ -1,6 +1,6 @@
 # This module provides the proprietary ATI X11 / OpenGL drivers.
 
-{ config, lib, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
 
 with lib;
 
@@ -24,7 +24,7 @@ in
       { name = "fglrx"; modules = [ ati_x11 ]; libPath = [ "${ati_x11}/lib" ]; };
 
     hardware.opengl.package = ati_x11;
-    hardware.opengl.package32 = pkgs_i686.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; };
+    hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; };
 
     environment.systemPackages = [ ati_x11 ];
 
diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix
index f8524ab99e8..21e12395498 100644
--- a/nixos/modules/hardware/video/nvidia.nix
+++ b/nixos/modules/hardware/video/nvidia.nix
@@ -1,6 +1,6 @@
 # This module provides the proprietary NVIDIA X11 / OpenGL drivers.
 
-{ stdenv, config, lib, pkgs, pkgs_i686, ... }:
+{ stdenv, config, lib, pkgs, ... }:
 
 with lib;
 
@@ -25,7 +25,7 @@ let
   nvidia_x11 = nvidiaForKernel config.boot.kernelPackages;
   nvidia_libs32 =
     if versionOlder nvidia_x11.version "391" then
-      ((nvidiaForKernel pkgs_i686.linuxPackages).override { libsOnly = true; kernel = null; }).out
+      ((nvidiaForKernel pkgs.pkgsi686Linux.linuxPackages).override { libsOnly = true; kernel = null; }).out
     else
       (nvidiaForKernel config.boot.kernelPackages).lib32;
 
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 16737efb185..446a311807c 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -333,6 +333,8 @@
       lidarr = 306;
       slurm = 307;
       kapacitor = 308;
+      solr = 309;
+      alerta = 310;
 
       # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
 
@@ -626,6 +628,8 @@
       lidarr = 306;
       slurm = 307;
       kapacitor = 308;
+      solr = 309;
+      alerta = 310;
 
       # When adding a gid, make sure it doesn't match an existing
       # uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix
index 7f9833e184a..1dfd2c3c6cf 100644
--- a/nixos/modules/misc/nixpkgs.nix
+++ b/nixos/modules/misc/nixpkgs.nix
@@ -208,7 +208,6 @@ in
   config = {
     _module.args = {
       pkgs = cfg.pkgs;
-      pkgs_i686 = cfg.pkgs.pkgsi686Linux;
     };
   };
 }
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 37e90232da2..3d5479c31f0 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -34,7 +34,7 @@
   ./config/zram.nix
   ./hardware/all-firmware.nix
   ./hardware/brightnessctl.nix
-  ./hardware/ckb.nix
+  ./hardware/ckb-next.nix
   ./hardware/cpu/amd-microcode.nix
   ./hardware/cpu/intel-microcode.nix
   ./hardware/digitalbitbox.nix
@@ -90,6 +90,7 @@
   ./programs/criu.nix
   ./programs/dconf.nix
   ./programs/digitalbitbox/default.nix
+  ./programs/dmrconfig.nix
   ./programs/environment.nix
   ./programs/firejail.nix
   ./programs/fish.nix
@@ -419,6 +420,7 @@
   ./services/misc/weechat.nix
   ./services/misc/xmr-stak.nix
   ./services/misc/zookeeper.nix
+  ./services/monitoring/alerta.nix
   ./services/monitoring/apcupsd.nix
   ./services/monitoring/arbtt.nix
   ./services/monitoring/bosun.nix
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 0fbc77ea44c..d325fff6a57 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -16,7 +16,7 @@ let
     # programmable completion. If we do, enable all modules installed in
     # the system and user profile in obsolete /etc/bash_completion.d/
     # directories. Bash loads completions in all
-    # $XDG_DATA_DIRS/share/bash-completion/completions/
+    # $XDG_DATA_DIRS/bash-completion/completions/
     # on demand, so they do not need to be sourced here.
     if shopt -q progcomp &>/dev/null; then
       . "${pkgs.bash-completion}/etc/profile.d/bash_completion.sh"
diff --git a/nixos/modules/programs/dmrconfig.nix b/nixos/modules/programs/dmrconfig.nix
new file mode 100644
index 00000000000..e48a4f31837
--- /dev/null
+++ b/nixos/modules/programs/dmrconfig.nix
@@ -0,0 +1,38 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.programs.dmrconfig;
+
+in {
+  meta.maintainers = [ maintainers.etu ];
+
+  ###### interface
+  options = {
+    programs.dmrconfig = {
+      enable = mkOption {
+        default = false;
+        type = types.bool;
+        description = ''
+          Whether to configure system to enable use of dmrconfig. This
+          enables the required udev rules and installs the program.
+        '';
+        relatedPackages = [ "dmrconfig" ];
+      };
+
+      package = mkOption {
+        default = pkgs.dmrconfig;
+        type = types.package;
+        defaultText = "pkgs.dmrconfig";
+        description = "dmrconfig derivation to use";
+      };
+    };
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    environment.systemPackages = [ cfg.package ];
+    services.udev.packages = [ cfg.package ];
+  };
+}
diff --git a/nixos/modules/programs/sway-beta.nix b/nixos/modules/programs/sway-beta.nix
index 04f2e0662b8..e651ea4cca3 100644
--- a/nixos/modules/programs/sway-beta.nix
+++ b/nixos/modules/programs/sway-beta.nix
@@ -5,6 +5,15 @@ with lib;
 let
   cfg = config.programs.sway-beta;
   swayPackage = cfg.package;
+
+  swayWrapped = pkgs.writeShellScriptBin "sway" ''
+    ${cfg.extraSessionCommands}
+    exec ${pkgs.dbus.dbus-launch} --exit-with-session ${swayPackage}/bin/sway
+  '';
+  swayJoined = pkgs.symlinkJoin {
+    name = "sway-joined";
+    paths = [ swayWrapped swayPackage ];
+  };
 in {
   options.programs.sway-beta = {
     enable = mkEnableOption ''
@@ -20,13 +29,30 @@ in {
       '';
     };
 
+    extraSessionCommands = mkOption {
+      type = types.lines;
+      default = "";
+      example = ''
+        export SDL_VIDEODRIVER=wayland
+        # needs qt5.qtwayland in systemPackages
+        export QT_QPA_PLATFORM=wayland
+        export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
+        # Fix for some Java AWT applications (e.g. Android Studio),
+        # use this if they aren't displayed properly:
+        export _JAVA_AWT_WM_NONREPARENTING=1
+      '';
+      description = ''
+        Shell commands executed just before Sway is started.
+      '';
+    };
+
     extraPackages = mkOption {
       type = with types; listOf package;
       default = with pkgs; [
-        xwayland dmenu
+        xwayland rxvt_unicode dmenu
       ];
       defaultText = literalExample ''
-        with pkgs; [ xwayland dmenu ];
+        with pkgs; [ xwayland rxvt_unicode dmenu ];
       '';
       example = literalExample ''
         with pkgs; [
@@ -42,7 +68,7 @@ in {
   };
 
   config = mkIf cfg.enable {
-    environment.systemPackages = [ swayPackage ] ++ cfg.extraPackages;
+    environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
     security.pam.services.swaylock = {};
     hardware.opengl.enable = mkDefault true;
     fonts.enableDefaultFonts = mkDefault true;
@@ -51,4 +77,3 @@ in {
 
   meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
 }
-
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index aa2b5c0b2df..dc0a175d5bb 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -282,6 +282,10 @@ with lib;
     (mkRenamedOptionModule [ "programs" "man"  "enable" ] [ "documentation" "man"  "enable" ])
     (mkRenamedOptionModule [ "services" "nixosManual" "enable" ] [ "documentation" "nixos" "enable" ])
 
+    # ckb
+    (mkRenamedOptionModule [ "hardware" "ckb" "enable" ] [ "hardware" "ckb-next" "enable" ])
+    (mkRenamedOptionModule [ "hardware" "ckb" "package" ] [ "hardware" "ckb-next" "package" ])
+
   ] ++ (flip map [ "blackboxExporter" "collectdExporter" "fritzboxExporter"
                    "jsonExporter" "minioExporter" "nginxExporter" "nodeExporter"
                    "snmpExporter" "unifiExporter" "varnishExporter" ]
diff --git a/nixos/modules/security/rngd.nix b/nixos/modules/security/rngd.nix
index 63e00b54812..a54ef2e6fca 100644
--- a/nixos/modules/security/rngd.nix
+++ b/nixos/modules/security/rngd.nix
@@ -29,7 +29,7 @@ with lib;
 
       description = "Hardware RNG Entropy Gatherer Daemon";
 
-      serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f -v";
+      serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f";
     };
   };
 }
diff --git a/nixos/modules/services/backup/bacula.nix b/nixos/modules/services/backup/bacula.nix
index a0565ca2620..24cad612826 100644
--- a/nixos/modules/services/backup/bacula.nix
+++ b/nixos/modules/services/backup/bacula.nix
@@ -346,8 +346,12 @@ in {
       description = "Bacula File Daemon";
       wantedBy = [ "multi-user.target" ];
       path = [ pkgs.bacula ];
-      serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-fd -f -u root -g bacula -c ${fd_conf}";
-      serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+      serviceConfig = {
+        ExecStart = "${pkgs.bacula}/sbin/bacula-fd -f -u root -g bacula -c ${fd_conf}";
+        ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+        LogsDirectory = "bacula";
+        StateDirectory = "bacula";
+      };
     };
 
     systemd.services.bacula-sd = mkIf sd_cfg.enable {
@@ -355,8 +359,12 @@ in {
       description = "Bacula Storage Daemon";
       wantedBy = [ "multi-user.target" ];
       path = [ pkgs.bacula ];
-      serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-sd -f -u bacula -g bacula -c ${sd_conf}";
-      serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+      serviceConfig = {
+        ExecStart = "${pkgs.bacula}/sbin/bacula-sd -f -u bacula -g bacula -c ${sd_conf}";
+        ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+        LogsDirectory = "bacula";
+        StateDirectory = "bacula";
+      };
     };
 
     services.postgresql.enable = dir_cfg.enable == true;
@@ -366,8 +374,12 @@ in {
       description = "Bacula Director Daemon";
       wantedBy = [ "multi-user.target" ];
       path = [ pkgs.bacula ];
-      serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-dir -f -u bacula -g bacula -c ${dir_conf}";
-      serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+      serviceConfig = {
+        ExecStart = "${pkgs.bacula}/sbin/bacula-dir -f -u bacula -g bacula -c ${dir_conf}";
+        ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+        LogsDirectory = "bacula";
+        StateDirectory = "bacula";
+      };
       preStart = ''
         if ! test -e "${libDir}/db-created"; then
             ${pkgs.postgresql}/bin/createuser --no-superuser --no-createdb --no-createrole bacula
diff --git a/nixos/modules/services/cluster/kubernetes/dns.nix b/nixos/modules/services/cluster/kubernetes/dns.nix
index 43bbb50a48d..5a3e281ea69 100644
--- a/nixos/modules/services/cluster/kubernetes/dns.nix
+++ b/nixos/modules/services/cluster/kubernetes/dns.nix
@@ -3,8 +3,13 @@
 with lib;
 
 let
-  version = "1.14.10";
+  version = "1.2.5";
   cfg = config.services.kubernetes.addons.dns;
+  ports = {
+    dns = 10053;
+    health = 10054;
+    metrics = 10055;
+  };
 in {
   options.services.kubernetes.addons.dns = {
     enable = mkEnableOption "kubernetes dns addon";
@@ -27,49 +32,130 @@ in {
       type = types.str;
     };
 
-    kube-dns = mkOption {
-      description = "Docker image to seed for the kube-dns main container.";
-      type = types.attrs;
-      default = {
-        imageName = "k8s.gcr.io/k8s-dns-kube-dns-amd64";
-        imageDigest = "sha256:b99fc3eee2a9f052f7eb4cc00f15eb12fc405fa41019baa2d6b79847ae7284a8";
-        finalImageTag = version;
-        sha256 = "0x583znk9smqn0fix7ld8sm5jgaxhqhx3fq97b1wkqm7iwhvl3pj";
-      };
-    };
-
-    dnsmasq-nanny = mkOption {
-      description = "Docker image to seed for the kube-dns dnsmasq container.";
-      type = types.attrs;
-      default = {
-        imageName = "k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64";
-        imageDigest = "sha256:bbb2a290a568125b3b996028958eb773f33b5b87a6b37bf38a28f8b62dddb3c8";
-        finalImageTag = version;
-        sha256 = "1fihml7s2mfwgac51cbqpylkwbivc8nyhgi4vb820s83zvl8a6y1";
-      };
+    replicas = mkOption {
+      description = "Number of DNS pod replicas to deploy in the cluster.";
+      default = 2;
+      type = types.int;
     };
 
-    sidecar = mkOption {
-      description = "Docker image to seed for the kube-dns sidecar container.";
+    coredns = mkOption {
+      description = "Docker image to seed for the CoreDNS container.";
       type = types.attrs;
       default = {
-        imageName = "k8s.gcr.io/k8s-dns-sidecar-amd64";
-        imageDigest = "sha256:4f1ab957f87b94a5ec1edc26fae50da2175461f00afecf68940c4aa079bd08a4";
+        imageName = "coredns/coredns";
+        imageDigest = "sha256:33c8da20b887ae12433ec5c40bfddefbbfa233d5ce11fb067122e68af30291d6";
         finalImageTag = version;
-        sha256 = "08l1bv5jgrhvjzpqpbinrkgvv52snc4fzyd8ya9v18ns2klyz7m0";
+        sha256 = "13q19rgwapv27xcs664dw502254yw4zw63insf6g2danidv2mg6i";
       };
     };
   };
 
   config = mkIf cfg.enable {
-    services.kubernetes.kubelet.seedDockerImages = with pkgs.dockerTools; [
-      (pullImage cfg.kube-dns)
-      (pullImage cfg.dnsmasq-nanny)
-      (pullImage cfg.sidecar)
-    ];
+    services.kubernetes.kubelet.seedDockerImages =
+      singleton (pkgs.dockerTools.pullImage cfg.coredns);
 
     services.kubernetes.addonManager.addons = {
-      kubedns-deployment = {
+      coredns-sa = {
+        apiVersion = "v1";
+        kind = "ServiceAccount";
+        metadata = {
+          labels = {
+            "addonmanager.kubernetes.io/mode" = "Reconcile";
+            "k8s-app" = "kube-dns";
+            "kubernetes.io/cluster-service" = "true";
+          };
+          name = "coredns";
+          namespace = "kube-system";
+        };
+      };
+
+      coredns-cr = {
+        apiVersion = "rbac.authorization.k8s.io/v1beta1";
+        kind = "ClusterRole";
+        metadata = {
+          labels = {
+            "addonmanager.kubernetes.io/mode" = "Reconcile";
+            "k8s-app" = "kube-dns";
+            "kubernetes.io/cluster-service" = "true";
+            "kubernetes.io/bootstrapping" = "rbac-defaults";
+          };
+          name = "system:coredns";
+        };
+        rules = [
+          {
+            apiGroups = [ "" ];
+            resources = [ "endpoints" "services" "pods" "namespaces" ];
+            verbs = [ "list" "watch" ];
+          }
+          {
+            apiGroups = [ "" ];
+            resources = [ "nodes" ];
+            verbs = [ "get" ];
+          }
+        ];
+      };
+
+      coredns-crb = {
+        apiVersion = "rbac.authorization.k8s.io/v1beta1";
+        kind = "ClusterRoleBinding";
+        metadata = {
+          annotations = {
+            "rbac.authorization.kubernetes.io/autoupdate" = "true";
+          };
+          labels = {
+            "addonmanager.kubernetes.io/mode" = "Reconcile";
+            "k8s-app" = "kube-dns";
+            "kubernetes.io/cluster-service" = "true";
+            "kubernetes.io/bootstrapping" = "rbac-defaults";
+          };
+          name = "system:coredns";
+        };
+        roleRef = {
+          apiGroup = "rbac.authorization.k8s.io";
+          kind = "ClusterRole";
+          name = "system:coredns";
+        };
+        subjects = [
+          {
+            kind = "ServiceAccount";
+            name = "coredns";
+            namespace = "kube-system";
+          }
+        ];
+      };
+
+      coredns-cm = {
+        apiVersion = "v1";
+        kind = "ConfigMap";
+        metadata = {
+          labels = {
+            "addonmanager.kubernetes.io/mode" = "Reconcile";
+            "k8s-app" = "kube-dns";
+            "kubernetes.io/cluster-service" = "true";
+          };
+          name = "coredns";
+          namespace = "kube-system";
+        };
+        data = {
+          Corefile = ".:${toString ports.dns} {
+            errors
+            health :${toString ports.health}
+            kubernetes ${cfg.clusterDomain} in-addr.arpa ip6.arpa {
+              pods insecure
+              upstream
+              fallthrough in-addr.arpa ip6.arpa
+            }
+            prometheus :${toString ports.metrics}
+            proxy . /etc/resolv.conf
+            cache 30
+            loop
+            reload
+            loadbalance
+          }";
+        };
+      };
+
+      coredns-deploy = {
         apiVersion = "extensions/v1beta1";
         kind = "Deployment";
         metadata = {
@@ -77,183 +163,97 @@ in {
             "addonmanager.kubernetes.io/mode" = "Reconcile";
             "k8s-app" = "kube-dns";
             "kubernetes.io/cluster-service" = "true";
+            "kubernetes.io/name" = "CoreDNS";
           };
-          name = "kube-dns";
+          name = "coredns";
           namespace = "kube-system";
         };
         spec = {
-          selector.matchLabels."k8s-app" = "kube-dns";
+          replicas = cfg.replicas;
+          selector = {
+            matchLabels = { k8s-app = "kube-dns"; };
+          };
           strategy = {
-            rollingUpdate = {
-              maxSurge = "10%";
-              maxUnavailable = 0;
-            };
+            rollingUpdate = { maxUnavailable = 1; };
+            type = "RollingUpdate";
           };
           template = {
             metadata = {
-              annotations."scheduler.alpha.kubernetes.io/critical-pod" = "";
-              labels.k8s-app = "kube-dns";
+              labels = {
+                k8s-app = "kube-dns";
+              };
             };
             spec = {
-              priorityClassName = "system-cluster-critical";
               containers = [
                 {
-                  name = "kubedns";
-                  image = with cfg.kube-dns; "${imageName}:${finalImageTag}";
-                  resources = {
-                    limits.memory = "170Mi";
-                    requests = {
-                      cpu = "100m";
-                      memory = "70Mi";
-                    };
-                  };
+                  args = [ "-conf" "/etc/coredns/Corefile" ];
+                  image = with cfg.coredns; "${imageName}:${finalImageTag}";
+                  imagePullPolicy = "Never";
                   livenessProbe = {
                     failureThreshold = 5;
                     httpGet = {
-                      path = "/healthcheck/kubedns";
-                      port = 10054;
+                      path = "/health";
+                      port = ports.health;
                       scheme = "HTTP";
                     };
                     initialDelaySeconds = 60;
                     successThreshold = 1;
                     timeoutSeconds = 5;
                   };
-                  readinessProbe = {
-                    httpGet = {
-                      path = "/readiness";
-                      port = 8081;
-                      scheme = "HTTP";
-                    };
-                    initialDelaySeconds = 3;
-                    timeoutSeconds = 5;
-                  };
-                  args = [
-                    "--domain=${cfg.clusterDomain}"
-                    "--dns-port=10053"
-                    "--config-dir=/kube-dns-config"
-                    "--v=2"
-                  ];
-                  env = [
-                    {
-                      name = "PROMETHEUS_PORT";
-                      value = "10055";
-                    }
-                  ];
+                  name = "coredns";
                   ports = [
                     {
-                      containerPort = 10053;
-                      name = "dns-local";
+                      containerPort = ports.dns;
+                      name = "dns";
                       protocol = "UDP";
                     }
                     {
-                      containerPort = 10053;
-                      name = "dns-tcp-local";
+                      containerPort = ports.dns;
+                      name = "dns-tcp";
                       protocol = "TCP";
                     }
                     {
-                      containerPort = 10055;
+                      containerPort = ports.metrics;
                       name = "metrics";
                       protocol = "TCP";
                     }
                   ];
-                  volumeMounts = [
-                    {
-                      mountPath = "/kube-dns-config";
-                      name = "kube-dns-config";
-                    }
-                  ];
-                }
-                {
-                  name = "dnsmasq";
-                  image = with cfg.dnsmasq-nanny; "${imageName}:${finalImageTag}";
-                  livenessProbe = {
-                    httpGet = {
-                      path = "/healthcheck/dnsmasq";
-                      port = 10054;
-                      scheme = "HTTP";
-                    };
-                    initialDelaySeconds = 60;
-                    timeoutSeconds = 5;
-                    successThreshold = 1;
-                    failureThreshold = 5;
-                  };
-                  args = [
-                    "-v=2"
-                    "-logtostderr"
-                    "-configDir=/etc/k8s/dns/dnsmasq-nanny"
-                    "-restartDnsmasq=true"
-                    "--"
-                    "-k"
-                    "--cache-size=1000"
-                    "--log-facility=-"
-                    "--server=/${cfg.clusterDomain}/127.0.0.1#10053"
-                    "--server=/in-addr.arpa/127.0.0.1#10053"
-                    "--server=/ip6.arpa/127.0.0.1#10053"
-                  ];
-                  ports = [
-                    {
-                      containerPort = 53;
-                      name = "dns";
-                      protocol = "UDP";
-                    }
-                    {
-                      containerPort = 53;
-                      name = "dns-tcp";
-                      protocol = "TCP";
-                    }
-                  ];
                   resources = {
+                    limits = {
+                      memory = "170Mi";
+                    };
                     requests = {
-                      cpu = "150m";
-                      memory = "20Mi";
+                      cpu = "100m";
+                      memory = "70Mi";
                     };
                   };
-                  volumeMounts = [
-                    {
-                      mountPath = "/etc/k8s/dns/dnsmasq-nanny";
-                      name = "kube-dns-config";
-                    }
-                  ];
-                }
-                {
-                  name = "sidecar";
-                  image = with cfg.sidecar; "${imageName}:${finalImageTag}";
-                  livenessProbe = {
-                    httpGet = {
-                      path = "/metrics";
-                      port = 10054;
-                      scheme = "HTTP";
+                  securityContext = {
+                    allowPrivilegeEscalation = false;
+                    capabilities = {
+                      drop = [ "all" ];
                     };
-                    initialDelaySeconds = 60;
-                    timeoutSeconds = 5;
-                    successThreshold = 1;
-                    failureThreshold = 5;
+                    readOnlyRootFilesystem = true;
                   };
-                  args = [
-                    "--v=2"
-                    "--logtostderr"
-                    "--probe=kubedns,127.0.0.1:10053,kubernetes.default.svc.${cfg.clusterDomain},5,A"
-                    "--probe=dnsmasq,127.0.0.1:53,kubernetes.default.svc.${cfg.clusterDomain},5,A"
-                  ];
-                  ports = [
+                  volumeMounts = [
                     {
-                      containerPort = 10054;
-                      name = "metrics";
-                      protocol = "TCP";
+                      mountPath = "/etc/coredns";
+                      name = "config-volume";
+                      readOnly = true;
                     }
                   ];
-                  resources = {
-                    requests = {
-                      cpu = "10m";
-                      memory = "20Mi";
-                    };
-                  };
                 }
               ];
               dnsPolicy = "Default";
-              serviceAccountName = "kube-dns";
+              nodeSelector = {
+                "beta.kubernetes.io/os" = "linux";
+              };
+              serviceAccountName = "coredns";
               tolerations = [
                 {
+                  effect = "NoSchedule";
+                  key = "node-role.kubernetes.io/master";
+                }
+                {
                   key = "CriticalAddonsOnly";
                   operator = "Exists";
                 }
@@ -261,10 +261,15 @@ in {
               volumes = [
                 {
                   configMap = {
-                    name = "kube-dns";
-                    optional = true;
+                    items = [
+                      {
+                        key = "Corefile";
+                        path = "Corefile";
+                      }
+                    ];
+                    name = "coredns";
                   };
-                  name = "kube-dns-config";
+                  name = "config-volume";
                 }
               ];
             };
@@ -272,51 +277,40 @@ in {
         };
       };
 
-      kubedns-svc = {
+      coredns-svc = {
         apiVersion = "v1";
         kind = "Service";
         metadata = {
+          annotations = {
+            "prometheus.io/port" = toString ports.metrics;
+            "prometheus.io/scrape" = "true";
+          };
           labels = {
             "addonmanager.kubernetes.io/mode" = "Reconcile";
             "k8s-app" = "kube-dns";
             "kubernetes.io/cluster-service" = "true";
-            "kubernetes.io/name" = "KubeDNS";
+            "kubernetes.io/name" = "CoreDNS";
           };
           name = "kube-dns";
-          namespace  = "kube-system";
+          namespace = "kube-system";
         };
         spec = {
           clusterIP = cfg.clusterIp;
           ports = [
-            {name = "dns"; port = 53; protocol = "UDP";}
-            {name = "dns-tcp"; port = 53; protocol = "TCP";}
+            {
+              name = "dns";
+              port = 53;
+              targetPort = ports.dns;
+              protocol = "UDP";
+            }
+            {
+              name = "dns-tcp";
+              port = 53;
+              targetPort = ports.dns;
+              protocol = "TCP";
+            }
           ];
-          selector.k8s-app = "kube-dns";
-        };
-      };
-
-      kubedns-sa = {
-        apiVersion = "v1";
-        kind = "ServiceAccount";
-        metadata = {
-          name = "kube-dns";
-          namespace = "kube-system";
-          labels = {
-            "kubernetes.io/cluster-service" = "true";
-            "addonmanager.kubernetes.io/mode" = "Reconcile";
-          };
-        };
-      };
-
-      kubedns-cm = {
-        apiVersion = "v1";
-        kind = "ConfigMap";
-        metadata = {
-          name = "kube-dns";
-          namespace = "kube-system";
-          labels = {
-            "addonmanager.kubernetes.io/mode" = "EnsureExists";
-          };
+          selector = { k8s-app = "kube-dns"; };
         };
       };
     };
diff --git a/nixos/modules/services/development/jupyter/default.nix b/nixos/modules/services/development/jupyter/default.nix
index 9fcc0043186..f20860af6e1 100644
--- a/nixos/modules/services/development/jupyter/default.nix
+++ b/nixos/modules/services/development/jupyter/default.nix
@@ -145,6 +145,7 @@ in {
       systemd.services.jupyter = {
         description = "Jupyter development server";
 
+        after = [ "network.target" ];
         wantedBy = [ "multi-user.target" ];
 
         # TODO: Patch notebook so we can explicitly pass in a shell
diff --git a/nixos/modules/services/mail/rspamd.nix b/nixos/modules/services/mail/rspamd.nix
index d83d6f1f750..1c37ae41e07 100644
--- a/nixos/modules/services/mail/rspamd.nix
+++ b/nixos/modules/services/mail/rspamd.nix
@@ -6,6 +6,7 @@ let
 
   cfg = config.services.rspamd;
   opts = options.services.rspamd;
+  postfixCfg = config.services.postfix;
 
   bindSocketOpts = {options, config, ... }: {
     options = {
@@ -58,7 +59,7 @@ let
       };
       type = mkOption {
         type = types.nullOr (types.enum [
-          "normal" "controller" "fuzzy_storage" "proxy" "lua"
+          "normal" "controller" "fuzzy_storage" "rspamd_proxy" "lua"
         ]);
         description = "The type of this worker";
       };
@@ -99,19 +100,21 @@ let
         description = "Additional entries to put verbatim into worker section of rspamd config file.";
       };
     };
-    config = mkIf (name == "normal" || name == "controller" || name == "fuzzy") {
+    config = mkIf (name == "normal" || name == "controller" || name == "fuzzy" || name == "rspamd_proxy") {
       type = mkDefault name;
-      includes = mkDefault [ "$CONFDIR/worker-${name}.inc" ];
-      bindSockets = mkDefault (if name == "normal"
-        then [{
-              socket = "/run/rspamd/rspamd.sock";
-              mode = "0660";
-              owner = cfg.user;
-              group = cfg.group;
-            }]
-        else if name == "controller"
-        then [ "localhost:11334" ]
-        else [] );
+      includes = mkDefault [ "$CONFDIR/worker-${if name == "rspamd_proxy" then "proxy" else name}.inc" ];
+      bindSockets =
+        let
+          unixSocket = name: {
+            mode = "0660";
+            socket = "/run/rspamd/${name}.sock";
+            owner = cfg.user;
+            group = cfg.group;
+          };
+        in mkDefault (if name == "normal" then [(unixSocket "rspamd")]
+          else if name == "controller" then [ "localhost:11334" ]
+          else if name == "rspamd_proxy" then [ (unixSocket "proxy") ]
+          else [] );
     };
   };
 
@@ -138,24 +141,31 @@ let
         .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/logging.inc"
       }
 
-      ${concatStringsSep "\n" (mapAttrsToList (name: value: ''
-        worker ${optionalString (value.name != "normal" && value.name != "controller") "${value.name}"} {
+      ${concatStringsSep "\n" (mapAttrsToList (name: value: let
+          includeName = if name == "rspamd_proxy" then "proxy" else name;
+          tryOverride = if value.extraConfig == "" then "true" else "false";
+        in ''
+        worker "${value.type}" {
           type = "${value.type}";
           ${optionalString (value.enable != null)
             "enabled = ${if value.enable != false then "yes" else "no"};"}
           ${mkBindSockets value.enable value.bindSockets}
           ${optionalString (value.count != null) "count = ${toString value.count};"}
           ${concatStringsSep "\n  " (map (each: ".include \"${each}\"") value.includes)}
-          ${value.extraConfig}
+          .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/worker-${includeName}.inc"
+          .include(try=${tryOverride}; priority=10) "$LOCAL_CONFDIR/override.d/worker-${includeName}.inc"
         }
       '') cfg.workers)}
 
-      ${cfg.extraConfig}
+      ${optionalString (cfg.extraConfig != "") ''
+        .include(priority=10) "$LOCAL_CONFDIR/override.d/extra-config.inc"
+      ''}
    '';
 
+  filterFiles = files: filterAttrs (n: v: v.enable) files;
   rspamdDir = pkgs.linkFarm "etc-rspamd-dir" (
-    (mapAttrsToList (name: file: { name = "local.d/${name}"; path = file.source; }) cfg.locals) ++
-    (mapAttrsToList (name: file: { name = "override.d/${name}"; path = file.source; }) cfg.overrides) ++
+    (mapAttrsToList (name: file: { name = "local.d/${name}"; path = file.source; }) (filterFiles cfg.locals)) ++
+    (mapAttrsToList (name: file: { name = "override.d/${name}"; path = file.source; }) (filterFiles cfg.overrides)) ++
     (optional (cfg.localLuaRules != null) { name = "rspamd.local.lua"; path = cfg.localLuaRules; }) ++
     [ { name = "rspamd.conf"; path = rspamdConfFile; } ]
   );
@@ -188,6 +198,15 @@ let
         in mkDefault (pkgs.writeText name' config.text));
     };
   };
+
+  configOverrides =
+    (mapAttrs' (n: v: nameValuePair "worker-${if n == "rspamd_proxy" then "proxy" else n}.inc" {
+      text = v.extraConfig;
+    })
+    (filterAttrs (n: v: v.extraConfig != "") cfg.workers))
+    // (if cfg.extraConfig == "" then {} else {
+      "extra-config.inc".text = cfg.extraConfig;
+    });
 in
 
 {
@@ -207,7 +226,7 @@ in
       };
 
       locals = mkOption {
-        type = with types; loaOf (submodule (configFileModule "locals"));
+        type = with types; attrsOf (submodule (configFileModule "locals"));
         default = {};
         description = ''
           Local configuration files, written into <filename>/etc/rspamd/local.d/{name}</filename>.
@@ -220,7 +239,7 @@ in
       };
 
       overrides = mkOption {
-        type = with types; loaOf (submodule (configFileModule "overrides"));
+        type = with types; attrsOf (submodule (configFileModule "overrides"));
         default = {};
         description = ''
           Overridden configuration files, written into <filename>/etc/rspamd/override.d/{name}</filename>.
@@ -284,7 +303,7 @@ in
         description = ''
           User to use when no root privileges are required.
         '';
-       };
+      };
 
       group = mkOption {
         type = types.string;
@@ -292,7 +311,30 @@ in
         description = ''
           Group to use when no root privileges are required.
         '';
-       };
+      };
+
+      postfix = {
+        enable = mkOption {
+          type = types.bool;
+          default = false;
+          description = "Add rspamd milter to postfix main.conf";
+        };
+
+        config = mkOption {
+          type = with types; attrsOf (either bool (either str (listOf str)));
+          description = ''
+            Addon to postfix configuration
+          '';
+          default = {
+            smtpd_milters = ["unix:/run/rspamd/rspamd-milter.sock"];
+            non_smtpd_milters = ["unix:/run/rspamd/rspamd-milter.sock"];
+          };
+          example = {
+            smtpd_milters = ["unix:/run/rspamd/rspamd-milter.sock"];
+            non_smtpd_milters = ["unix:/run/rspamd/rspamd-milter.sock"];
+          };
+        };
+      };
     };
   };
 
@@ -300,6 +342,25 @@ in
   ###### implementation
 
   config = mkIf cfg.enable {
+    services.rspamd.overrides = configOverrides;
+    services.rspamd.workers = mkIf cfg.postfix.enable {
+      controller = {};
+      rspamd_proxy = {
+        bindSockets = [ {
+          mode = "0660";
+          socket = "/run/rspamd/rspamd-milter.sock";
+          owner = cfg.user;
+          group = postfixCfg.group;
+        } ];
+        extraConfig = ''
+          upstream "local" {
+            default = yes; # Self-scan upstreams are always default
+            self_scan = yes; # Enable self-scan
+          }
+        '';
+      };
+    };
+    services.postfix.config = mkIf cfg.postfix.enable cfg.postfix.config;
 
     # Allow users to run 'rspamc' and 'rspamadm'.
     environment.systemPackages = [ pkgs.rspamd ];
diff --git a/nixos/modules/services/misc/gitea.nix b/nixos/modules/services/misc/gitea.nix
index a222325579f..7a10bd87299 100644
--- a/nixos/modules/services/misc/gitea.nix
+++ b/nixos/modules/services/misc/gitea.nix
@@ -6,6 +6,7 @@ let
   cfg = config.services.gitea;
   gitea = cfg.package;
   pg = config.services.postgresql;
+  useMysql = cfg.database.type == "mysql";
   usePostgresql = cfg.database.type == "postgres";
   configFile = pkgs.writeText "app.ini" ''
     APP_NAME = ${cfg.appName}
@@ -14,7 +15,7 @@ let
 
     [database]
     DB_TYPE = ${cfg.database.type}
-    HOST = ${cfg.database.host}:${toString cfg.database.port}
+    HOST = ${if cfg.database.socket != null then cfg.database.socket else cfg.database.host + ":" + toString cfg.database.port}
     NAME = ${cfg.database.name}
     USER = ${cfg.database.user}
     PASSWD = #dbpass#
@@ -148,6 +149,13 @@ in
           '';
         };
 
+        socket = mkOption {
+          type = types.nullOr types.path;
+          default = null;
+          example = "/run/mysqld/mysqld.sock";
+          description = "Path to the unix socket file to use for authentication.";
+        };
+
         path = mkOption {
           type = types.str;
           default = "${cfg.stateDir}/data/gitea.db";
@@ -253,7 +261,7 @@ in
 
     systemd.services.gitea = {
       description = "gitea";
-      after = [ "network.target" "postgresql.service" ];
+      after = [ "network.target" ] ++ lib.optional usePostgresql "postgresql.service" ++ lib.optional useMysql "mysql.service";
       wantedBy = [ "multi-user.target" ];
       path = [ gitea.bin ];
 
diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix
index 5e171c08d89..97357557061 100644
--- a/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixos/modules/services/misc/nix-daemon.nix
@@ -62,11 +62,15 @@ let
         ''}
         $extraOptions
         END
-      '' + optionalString cfg.checkConfig ''
-        echo "Checking that Nix can read nix.conf..."
-        ln -s $out ./nix.conf
-        NIX_CONF_DIR=$PWD ${cfg.package}/bin/nix show-config >/dev/null
-      '');
+      '' + optionalString cfg.checkConfig (
+            if pkgs.stdenv.hostPlatform != pkgs.stdenv.buildPlatform then ''
+              echo "Ignore nix.checkConfig when cross-compiling"
+            '' else ''
+              echo "Checking that Nix can read nix.conf..."
+              ln -s $out ./nix.conf
+              NIX_CONF_DIR=$PWD ${cfg.package}/bin/nix show-config >/dev/null
+            '')
+      );
 
 in
 
diff --git a/nixos/modules/services/misc/packagekit.nix b/nixos/modules/services/misc/packagekit.nix
index 2d1ff7bb411..bce21e8acff 100644
--- a/nixos/modules/services/misc/packagekit.nix
+++ b/nixos/modules/services/misc/packagekit.nix
@@ -6,11 +6,8 @@ let
 
   cfg = config.services.packagekit;
 
-  backend = "nix";
-
   packagekitConf = ''
 [Daemon]
-DefaultBackend=${backend}
 KeepCache=false
     '';
 
diff --git a/nixos/modules/services/monitoring/alerta.nix b/nixos/modules/services/monitoring/alerta.nix
new file mode 100644
index 00000000000..8f4258e26de
--- /dev/null
+++ b/nixos/modules/services/monitoring/alerta.nix
@@ -0,0 +1,116 @@
+{ options, config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.alerta;
+
+  alertaConf = pkgs.writeTextFile {
+    name = "alertad.conf";
+    text = ''
+      DATABASE_URL = '${cfg.databaseUrl}'
+      DATABASE_NAME = '${cfg.databaseName}'
+      LOG_FILE = '${cfg.logDir}/alertad.log'
+      LOG_FORMAT = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
+      CORS_ORIGINS = [ ${concatMapStringsSep ", " (s: "\"" + s + "\"") cfg.corsOrigins} ];
+      AUTH_REQUIRED = ${if cfg.authenticationRequired then "True" else "False"}
+      SIGNUP_ENABLED = ${if cfg.signupEnabled then "True" else "False"}
+      ${cfg.extraConfig}
+    '';
+  };
+in
+{
+  options.services.alerta = {
+    enable = mkEnableOption "alerta";
+
+    port = mkOption {
+      type = types.int;
+      default = 5000;
+      description = "Port of Alerta";
+    };
+
+    bind = mkOption {
+      type = types.str;
+      default = "0.0.0.0";
+      example = literalExample "0.0.0.0";
+      description = "Address to bind to. The default is to bind to all addresses";
+    };
+
+    logDir = mkOption {
+      type = types.path;
+      description = "Location where the logfiles are stored";
+      default = "/var/log/alerta";
+    };
+
+    databaseUrl = mkOption {
+      type = types.str;
+      description = "URL of the MongoDB or PostgreSQL database to connect to";
+      default = "mongodb://localhost";
+      example = "mongodb://localhost";
+    };
+
+    databaseName = mkOption {
+      type = types.str;
+      description = "Name of the database instance to connect to";
+      default = "monitoring";
+      example = "monitoring";
+    };
+
+    corsOrigins = mkOption {
+      type = types.listOf types.str;
+      description = "List of URLs that can access the API for Cross-Origin Resource Sharing (CORS)";
+      example = [ "http://localhost" "http://localhost:5000" ];
+      default = [ "http://localhost" "http://localhost:5000" ];
+    };
+
+    authenticationRequired = mkOption {
+      type = types.bool;
+      description = "Whether users must authenticate when using the web UI or command-line tool";
+      default = false;
+    };
+
+    signupEnabled = mkOption {
+      type = types.bool;
+      description = "Whether to prevent sign-up of new users via the web UI";
+      default = true;
+    };
+
+    extraConfig = mkOption {
+      description = "These lines go into alertad.conf verbatim.";
+      default = "";
+      type = types.lines;
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.alerta = {
+      description = "Alerta Monitoring System";
+      wantedBy = [ "multi-user.target" ];
+      after = [ "networking.target" ];
+      environment = {
+        ALERTA_SVR_CONF_FILE = alertaConf;
+      };
+      serviceConfig = {
+        ExecStart = "${pkgs.python36Packages.alerta-server}/bin/alertad run --port ${toString cfg.port} --host ${cfg.bind}";
+        User = "alerta";
+        Group = "alerta";
+        PermissionsStartOnly = true;
+      };
+      preStart = ''
+        mkdir -p ${cfg.logDir}
+        chown alerta:alerta ${cfg.logDir}
+      '';
+    };
+
+    environment.systemPackages = [ pkgs.python36Packages.alerta ];
+
+    users.users.alerta = {
+      uid = config.ids.uids.alerta;
+      description = "Alerta user";
+    };
+
+    users.groups.alerta = {
+      gid = config.ids.gids.alerta;
+    };
+  };
+}
diff --git a/nixos/modules/services/monitoring/kapacitor.nix b/nixos/modules/services/monitoring/kapacitor.nix
index 1de0a8d5af2..a4bdfa8f805 100644
--- a/nixos/modules/services/monitoring/kapacitor.nix
+++ b/nixos/modules/services/monitoring/kapacitor.nix
@@ -42,6 +42,15 @@ let
           password = "${cfg.defaultDatabase.password}"
       ''}
 
+      ${optionalString (cfg.alerta.enable) ''
+        [alerta]
+          enabled = true
+          url = "${cfg.alerta.url}"
+          token = "${cfg.alerta.token}"
+          environment = "${cfg.alerta.environment}"
+          origin = "${cfg.alerta.origin}"
+      ''}
+
       ${cfg.extraConfig}
     '';
   };
@@ -120,6 +129,35 @@ in
         type = types.string;
       };
     };
+
+    alerta = {
+      enable = mkEnableOption "kapacitor alerta integration";
+
+      url = mkOption {
+        description = "The URL to the Alerta REST API";
+        default = "http://localhost:5000";
+        example = "http://localhost:5000";
+        type = types.string;
+      };
+
+      token = mkOption {
+        description = "Default Alerta authentication token";
+        type = types.str;
+        default = "";
+      };
+
+      environment = mkOption {
+        description = "Default Alerta environment";
+        type = types.str;
+        default = "Production";
+      };
+
+      origin = mkOption {
+        description = "Default origin of alert";
+        type = types.str;
+        default = "kapacitor";
+      };
+    };
   };
 
   config = mkIf cfg.enable {
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index e2ee995cea8..bf4dfc666bb 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -10,6 +10,13 @@ let
   # Get a submodule without any embedded metadata:
   _filter = x: filterAttrs (k: v: k != "_module") x;
 
+  # a wrapper that verifies that the configuration is valid
+  promtoolCheck = what: name: file: pkgs.runCommand "${name}-${what}-checked"
+    { buildInputs = [ cfg.package ]; } ''
+    ln -s ${file} $out
+    promtool ${what} $out
+  '';
+
   # Pretty-print JSON to a file
   writePrettyJSON = name: x:
     pkgs.runCommand name { } ''
@@ -19,18 +26,19 @@ let
   # This becomes the main config file
   promConfig = {
     global = cfg.globalConfig;
-    rule_files = cfg.ruleFiles ++ [
+    rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [
       (pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
-    ];
+    ]);
     scrape_configs = cfg.scrapeConfigs;
   };
 
   generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
 
-  prometheusYml =
-    if cfg.configText != null then
+  prometheusYml = let
+    yml =  if cfg.configText != null then
       pkgs.writeText "prometheus.yml" cfg.configText
-    else generatedPrometheusYml;
+      else generatedPrometheusYml;
+    in promtoolCheck "check-config" "prometheus.yml" yml;
 
   cmdlineArgs = cfg.extraFlags ++ [
     "-storage.local.path=${cfg.dataDir}/metrics"
@@ -376,6 +384,15 @@ in {
         '';
       };
 
+      package = mkOption {
+        type = types.package;
+        default = pkgs.prometheus;
+        defaultText = "pkgs.prometheus";
+        description = ''
+          The prometheus package that should be used.
+        '';
+      };
+
       listenAddress = mkOption {
         type = types.str;
         default = "0.0.0.0:9090";
@@ -495,7 +512,7 @@ in {
       after    = [ "network.target" ];
       script = ''
         #!/bin/sh
-        exec ${pkgs.prometheus}/bin/prometheus \
+        exec ${cfg.package}/bin/prometheus \
           ${concatStringsSep " \\\n  " cmdlineArgs}
       '';
       serviceConfig = {
diff --git a/nixos/modules/services/search/solr.nix b/nixos/modules/services/search/solr.nix
index 90140a337ed..7200c40e89f 100644
--- a/nixos/modules/services/search/solr.nix
+++ b/nixos/modules/services/search/solr.nix
@@ -6,142 +6,105 @@ let
 
   cfg = config.services.solr;
 
-  # Assemble all jars needed for solr
-  solrJars = pkgs.stdenv.mkDerivation {
-    name = "solr-jars";
-
-    src = pkgs.fetchurl {
-      url = http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.36/bin/apache-tomcat-5.5.36.tar.gz;
-      sha256 = "01mzvh53wrs1p2ym765jwd00gl6kn8f9k3nhdrnhdqr8dhimfb2p";
-    };
-
-    installPhase = ''
-      mkdir -p $out/lib
-      cp common/lib/*.jar $out/lib/
-      ln -s ${pkgs.ant}/lib/ant/lib/ant.jar $out/lib/
-      ln -s ${cfg.solrPackage}/lib/ext/* $out/lib/
-      ln -s ${pkgs.jdk.home}/lib/tools.jar $out/lib/
-    '' + optionalString (cfg.extraJars != []) ''
-      for f in ${concatStringsSep " " cfg.extraJars}; do
-         cp $f $out/lib
-      done
-    '';
-  };
-
-in {
+in
 
+{
   options = {
     services.solr = {
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Enables the solr service.
-        '';
-      };
-
-      javaPackage = mkOption {
-        type = types.package;
-        default = pkgs.jre;
-        defaultText = "pkgs.jre";
-        description = ''
-          Which Java derivation to use for running solr.
-        '';
-      };
+      enable = mkEnableOption "Enables the solr service.";
 
-      solrPackage = mkOption {
+      package = mkOption {
         type = types.package;
         default = pkgs.solr;
         defaultText = "pkgs.solr";
-        description = ''
-          Which solr derivation to use for running solr.
-        '';
+        description = "Which Solr package to use.";
       };
 
-      extraJars = mkOption {
-        type = types.listOf types.path;
-        default = [];
-        description = ''
-          List of paths pointing to jars. Jars are copied to commonLibFolder to be available to java/solr.
-        '';
+      port = mkOption {
+        type = types.int;
+        default = 8983;
+        description = "Port on which Solr is ran.";
       };
 
-      log4jConfiguration = mkOption {
-        type = types.lines;
-        default = ''
-          log4j.rootLogger=INFO, stdout
-          log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-          log4j.appender.stdout.Target=System.out
-          log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-          log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
-        '';
-        description = ''
-          Contents of the <literal>log4j.properties</literal> used. By default,
-          everything is logged to stdout (picked up by systemd) with level INFO.
-        '';
+      stateDir = mkOption {
+        type = types.path;
+        default = "/var/lib/solr";
+        description = "The solr home directory containing config, data, and logging files.";
       };
 
-      user = mkOption {
-        type = types.str;
-        description = ''
-          The user that should run the solr process and.
-          the working directories.
-        '';
+      extraJavaOptions = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        description = "Extra command line options given to the java process running Solr.";
       };
 
-      group = mkOption {
+      user = mkOption {
         type = types.str;
-        description = ''
-          The group that will own the working directory.
-        '';
+        default = "solr";
+        description = "User under which Solr is ran.";
       };
 
-      solrHome = mkOption {
+      group = mkOption {
         type = types.str;
-        description = ''
-          The solr home directory. It is your own responsibility to
-          make sure this directory contains a working solr configuration,
-          and is writeable by the the user running the solr service.
-          Failing to do so, the solr will not start properly.
-        '';
-      };
-
-      extraJavaOptions = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Extra command line options given to the java process running
-          solr.
-        '';
-      };
-
-      extraWinstoneOptions = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Extra command line options given to the Winstone, which is
-          the servlet container hosting solr.
-        '';
+        default = "solr";
+        description = "Group under which Solr is ran.";
       };
     };
   };
 
   config = mkIf cfg.enable {
 
-    services.winstone.solr = {
-      serviceName = "solr";
-      inherit (cfg) user group javaPackage;
-      warFile = "${cfg.solrPackage}/lib/solr.war";
-      extraOptions = [
-        "--commonLibFolder=${solrJars}/lib"
-        "--useJasper"
-      ] ++ cfg.extraWinstoneOptions;
-      extraJavaOptions = [
-        "-Dsolr.solr.home=${cfg.solrHome}"
-        "-Dlog4j.configuration=file://${pkgs.writeText "log4j.properties" cfg.log4jConfiguration}"
-      ] ++ cfg.extraJavaOptions;
+    environment.systemPackages = [ cfg.package ];
+
+    systemd.services.solr = {
+      after = [ "network.target" "remote-fs.target" "nss-lookup.target" "systemd-journald-dev-log.socket" ];
+      wantedBy = [ "multi-user.target" ];
+
+      environment = {
+        SOLR_HOME = "${cfg.stateDir}/data";
+        LOG4J_PROPS = "${cfg.stateDir}/log4j2.xml";
+        SOLR_LOGS_DIR = "${cfg.stateDir}/logs";
+        SOLR_PORT = "${toString cfg.port}";
+      };
+      path = with pkgs; [
+        gawk
+        procps
+      ];
+      preStart = ''
+        mkdir -p "${cfg.stateDir}/data";
+        mkdir -p "${cfg.stateDir}/logs";
+
+        if ! test -e "${cfg.stateDir}/data/solr.xml"; then
+          install -D -m0640 ${cfg.package}/server/solr/solr.xml "${cfg.stateDir}/data/solr.xml"
+          install -D -m0640 ${cfg.package}/server/solr/zoo.cfg "${cfg.stateDir}/data/zoo.cfg"
+        fi
+
+        if ! test -e "${cfg.stateDir}/log4j2.xml"; then
+          install -D -m0640 ${cfg.package}/server/resources/log4j2.xml "${cfg.stateDir}/log4j2.xml"
+        fi
+      '';
+
+      serviceConfig = {
+        User = cfg.user;
+        Group = cfg.group;
+        ExecStart="${cfg.package}/bin/solr start -f -a \"${concatStringsSep " " cfg.extraJavaOptions}\"";
+        ExecStop="${cfg.package}/bin/solr stop";
+      };
     };
 
+    users.users = optionalAttrs (cfg.user == "solr") (singleton
+      { name = "solr";
+        group = cfg.group;
+        home = cfg.stateDir;
+        createHome = true;
+        uid = config.ids.uids.solr;
+      });
+
+    users.groups = optionalAttrs (cfg.group == "solr") (singleton
+      { name = "solr";
+        gid = config.ids.gids.solr;
+      });
+
   };
 
 }
diff --git a/nixos/modules/services/web-servers/tomcat.nix b/nixos/modules/services/web-servers/tomcat.nix
index be54e9255c7..68261c50324 100644
--- a/nixos/modules/services/web-servers/tomcat.nix
+++ b/nixos/modules/services/web-servers/tomcat.nix
@@ -31,10 +31,26 @@ in
         '';
       };
 
+      purifyOnStart = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          On startup, the `baseDir` directory is populated with various files,
+          subdirectories and symlinks. If this option is enabled, these items
+          (except for the `logs` and `work` subdirectories) are first removed.
+          This prevents interference from remainders of an old configuration
+          (libraries, webapps, etc.), so it's recommended to enable this option.
+        '';
+      };
+
       baseDir = mkOption {
         type = lib.types.path;
         default = "/var/tomcat";
-        description = "Location where Tomcat stores configuration files, webapplications and logfiles";
+        description = ''
+          Location where Tomcat stores configuration files, web applications
+          and logfiles. Note that it is partially cleared on each service startup
+          if `purifyOnStart` is enabled.
+        '';
       };
 
       logDirs = mkOption {
@@ -197,6 +213,15 @@ in
       after = [ "network.target" ];
 
       preStart = ''
+        ${lib.optionalString cfg.purifyOnStart ''
+          # Delete most directories/symlinks we create from the existing base directory,
+          # to get rid of remainders of an old configuration.
+          # The list of directories to delete is taken from the "mkdir" command below,
+          # excluding "logs" (because logs are valuable) and "work" (because normally
+          # session files are there), and additionally including "bin".
+          rm -rf ${cfg.baseDir}/{conf,virtualhosts,temp,lib,shared/lib,webapps,bin}
+        ''}
+
         # Create the base directory
         mkdir -p \
           ${cfg.baseDir}/{conf,virtualhosts,logs,temp,lib,shared/lib,webapps,work}
diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh
index 3bc33a20a09..6a4ac8128ab 100644
--- a/nixos/modules/system/boot/stage-1-init.sh
+++ b/nixos/modules/system/boot/stage-1-init.sh
@@ -246,10 +246,7 @@ checkFS() {
     if [ "$fsType" = iso9660 -o "$fsType" = udf ]; then return 0; fi
 
     # Don't check resilient COWs as they validate the fs structures at mount time
-    if [ "$fsType" = btrfs -o "$fsType" = zfs ]; then return 0; fi
-
-    # Skip fsck for bcachefs - not implemented yet.
-    if [ "$fsType" = bcachefs ]; then return 0; fi
+    if [ "$fsType" = btrfs -o "$fsType" = zfs -o "$fsType" = bcachefs ]; then return 0; fi
 
     # Skip fsck for nilfs2 - not needed by design and no fsck tool for this filesystem.
     if [ "$fsType" = nilfs2 ]; then return 0; fi
diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix
index b3690fad1a6..9e4057b5089 100644
--- a/nixos/modules/tasks/filesystems.nix
+++ b/nixos/modules/tasks/filesystems.nix
@@ -230,6 +230,8 @@ in
       let
         fsToSkipCheck = [ "none" "bindfs" "btrfs" "zfs" "tmpfs" "nfs" "vboxsf" "glusterfs" ];
         skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck;
+        # https://wiki.archlinux.org/index.php/fstab#Filepath_spaces
+        escape = string: builtins.replaceStrings [ " " ] [ "\\040" ] string;
       in ''
         # This is a generated file.  Do not edit!
         #
@@ -238,10 +240,10 @@ in
 
         # Filesystems.
         ${concatMapStrings (fs:
-            (if fs.device != null then fs.device
-             else if fs.label != null then "/dev/disk/by-label/${fs.label}"
+            (if fs.device != null then escape fs.device
+             else if fs.label != null then "/dev/disk/by-label/${escape fs.label}"
              else throw "No device specified for mount point ‘${fs.mountPoint}’.")
-            + " " + fs.mountPoint
+            + " " + escape fs.mountPoint
             + " " + fs.fsType
             + " " + builtins.concatStringsSep "," fs.options
             + " 0"
diff --git a/nixos/modules/tasks/filesystems/bcachefs.nix b/nixos/modules/tasks/filesystems/bcachefs.nix
index 227707173a3..5fda24adb97 100644
--- a/nixos/modules/tasks/filesystems/bcachefs.nix
+++ b/nixos/modules/tasks/filesystems/bcachefs.nix
@@ -1,26 +1,65 @@
-{ config, lib, pkgs, ... }:
+{ config, lib, pkgs, utils, ... }:
 
 with lib;
 
 let
 
-  inInitrd = any (fs: fs == "bcachefs") config.boot.initrd.supportedFilesystems;
+  bootFs = filterAttrs (n: fs: (fs.fsType == "bcachefs") && (utils.fsNeededForBoot fs)) config.fileSystems;
+
+  commonFunctions = ''
+    prompt() {
+        local name="$1"
+        printf "enter passphrase for $name: "
+    }
+    tryUnlock() {
+        local name="$1"
+        local path="$2"
+        if bcachefs unlock -c $path > /dev/null 2> /dev/null; then    # test for encryption
+            prompt $name
+            until bcachefs unlock $path 2> /dev/null; do              # repeat until sucessfully unlocked
+                printf "unlocking failed!\n"
+                prompt $name
+            done
+            printf "unlocking successful.\n"
+        fi
+    }
+  '';
+
+  openCommand = name: fs:
+    let
+      # we need only unlock one device manually, and cannot pass multiple at once
+      # remove this adaptation when bcachefs implements mounting by filesystem uuid
+      # also, implement automatic waiting for the constituent devices when that happens
+      # bcachefs does not support mounting devices with colons in the path, ergo we don't (see #49671)
+      firstDevice = head (splitString ":" fs.device);
+    in
+      ''
+        tryUnlock ${name} ${firstDevice}
+      '';
 
 in
 
 {
-  config = mkIf (any (fs: fs == "bcachefs") config.boot.supportedFilesystems) {
+  config = mkIf (elem "bcachefs" config.boot.supportedFilesystems) (mkMerge [
+    {
+      system.fsPackages = [ pkgs.bcachefs-tools ];
 
-    system.fsPackages = [ pkgs.bcachefs-tools ];
+      # use kernel package with bcachefs support until it's in mainline
+      boot.kernelPackages = pkgs.linuxPackages_testing_bcachefs;
+    }
 
-    # use kernel package with bcachefs support until it's in mainline
-    boot.kernelPackages = pkgs.linuxPackages_testing_bcachefs;
-    boot.initrd.availableKernelModules = mkIf inInitrd [ "bcachefs" ];
+    (mkIf ((elem "bcachefs" config.boot.initrd.supportedFilesystems) || (bootFs != {})) {
+      # the cryptographic modules are required only for decryption attempts
+      boot.initrd.availableKernelModules = [ "bcachefs" "chacha20" "poly1305" ];
 
-    boot.initrd.extraUtilsCommands = mkIf inInitrd
-      ''
-        copy_bin_and_libs ${pkgs.bcachefs-tools}/bin/fsck.bcachefs
+      boot.initrd.extraUtilsCommands = ''
+        copy_bin_and_libs ${pkgs.bcachefs-tools}/bin/bcachefs
+      '';
+      boot.initrd.extraUtilsCommandsTest = ''
+        $out/bin/bcachefs version
       '';
 
-  };
+      boot.initrd.postDeviceCommands = commonFunctions + concatStrings (mapAttrsToList openCommand bootFs);
+    })
+  ]);
 }
diff --git a/nixos/modules/virtualisation/parallels-guest.nix b/nixos/modules/virtualisation/parallels-guest.nix
index 36ca7f356d4..4e0f2cae299 100644
--- a/nixos/modules/virtualisation/parallels-guest.nix
+++ b/nixos/modules/virtualisation/parallels-guest.nix
@@ -1,4 +1,4 @@
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
 
 with lib;
 
@@ -64,7 +64,7 @@ in
     };
 
     hardware.opengl.package = prl-tools;
-    hardware.opengl.package32 = pkgs_i686.linuxPackages.prl-tools.override { libsOnly = true; kernel = null; };
+    hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.prl-tools.override { libsOnly = true; kernel = null; };
 
     services.udev.packages = [ prl-tools ];
 
diff --git a/nixos/release.nix b/nixos/release.nix
index c3a10c9d330..b7f8c01bb00 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -45,6 +45,7 @@ let
       system.nixos.revision = nixpkgs.rev or nixpkgs.shortRev;
     };
 
+  makeModules = module: rest: [ configuration versionModule module rest ];
 
   makeIso =
     { module, type, system, ... }:
@@ -53,7 +54,9 @@ let
 
     hydraJob ((import lib/eval-config.nix {
       inherit system;
-      modules = [ configuration module versionModule { isoImage.isoBaseName = "nixos-${type}"; } ];
+      modules = makeModules module {
+        isoImage.isoBaseName = "nixos-${type}";
+      };
     }).config.system.build.isoImage);
 
 
@@ -64,7 +67,7 @@ let
 
     hydraJob ((import lib/eval-config.nix {
       inherit system;
-      modules = [ configuration module versionModule ];
+      modules = makeModules module {};
     }).config.system.build.sdImage);
 
 
@@ -77,7 +80,7 @@ let
 
       config = (import lib/eval-config.nix {
         inherit system;
-        modules = [ configuration module versionModule ];
+        modules = makeModules module {};
       }).config;
 
       tarball = config.system.build.tarball;
@@ -97,7 +100,7 @@ let
 
   buildFromConfig = module: sel: forAllSystems (system: hydraJob (sel (import ./lib/eval-config.nix {
     inherit system;
-    modules = [ configuration module versionModule ] ++ singleton
+    modules = makeModules module
       ({ ... }:
       { fileSystems."/".device  = mkDefault "/dev/sda1";
         boot.loader.grub.device = mkDefault "/dev/sda";
@@ -108,7 +111,7 @@ let
     let
       configEvaled = import lib/eval-config.nix {
         inherit system;
-        modules = [ module versionModule ];
+        modules = makeModules module {};
       };
       build = configEvaled.config.system.build;
       kernelTarget = configEvaled.pkgs.stdenv.hostPlatform.platform.kernelTarget;
@@ -301,6 +304,7 @@ in rec {
   tests.fsck = callTest tests/fsck.nix {};
   tests.fwupd = callTest tests/fwupd.nix {};
   tests.gdk-pixbuf = callTest tests/gdk-pixbuf.nix {};
+  tests.gitea = callSubTests tests/gitea.nix {};
   tests.gitlab = callTest tests/gitlab.nix {};
   tests.gitolite = callTest tests/gitolite.nix {};
   tests.gjs = callTest tests/gjs.nix {};
@@ -410,6 +414,7 @@ in rec {
   tests.slurm = callTest tests/slurm.nix {};
   tests.smokeping = callTest tests/smokeping.nix {};
   tests.snapper = callTest tests/snapper.nix {};
+  tests.solr = callTest tests/solr.nix {};
   #tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946
   tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {};
   tests.sudo = callTest tests/sudo.nix {};
diff --git a/nixos/tests/gitea.nix b/nixos/tests/gitea.nix
new file mode 100644
index 00000000000..7ffe05ef3f1
--- /dev/null
+++ b/nixos/tests/gitea.nix
@@ -0,0 +1,74 @@
+{ system ? builtins.currentSystem }:
+
+with import ../lib/testing.nix { inherit system; };
+with pkgs.lib;
+
+{
+  mysql = makeTest {
+    name = "gitea-mysql";
+    meta.maintainers = [ maintainers.aanderse ];
+
+    machine =
+      { config, pkgs, ... }:
+      { services.mysql.enable = true;
+        services.mysql.package = pkgs.mariadb;
+        services.mysql.ensureDatabases = [ "gitea" ];
+        services.mysql.ensureUsers = [
+          { name = "gitea";
+            ensurePermissions = { "gitea.*" = "ALL PRIVILEGES"; };
+          }
+        ];
+
+        services.gitea.enable = true;
+        services.gitea.database.type = "mysql";
+        services.gitea.database.socket = "/run/mysqld/mysqld.sock";
+      };
+
+    testScript = ''
+      startAll;
+
+      $machine->waitForUnit('gitea.service');
+      $machine->waitForOpenPort('3000');
+      $machine->succeed("curl --fail http://localhost:3000/");
+    '';
+  };
+
+  postgres = makeTest {
+    name = "gitea-postgres";
+    meta.maintainers = [ maintainers.aanderse ];
+
+    machine =
+      { config, pkgs, ... }:
+      {
+        services.gitea.enable = true;
+        services.gitea.database.type = "postgres";
+        services.gitea.database.password = "secret";
+      };
+
+    testScript = ''
+      startAll;
+
+      $machine->waitForUnit('gitea.service');
+      $machine->waitForOpenPort('3000');
+      $machine->succeed("curl --fail http://localhost:3000/");
+    '';
+  };
+
+  sqlite = makeTest {
+    name = "gitea-sqlite";
+    meta.maintainers = [ maintainers.aanderse ];
+
+    machine =
+      { config, pkgs, ... }:
+      { services.gitea.enable = true;
+      };
+
+    testScript = ''
+      startAll;
+
+      $machine->waitForUnit('gitea.service');
+      $machine->waitForOpenPort('3000');
+      $machine->succeed("curl --fail http://localhost:3000/");
+    '';
+  };
+}
diff --git a/nixos/tests/hydra/create-trivial-project.sh b/nixos/tests/hydra/create-trivial-project.sh
index 3cca5665acc..39122c9b473 100755
--- a/nixos/tests/hydra/create-trivial-project.sh
+++ b/nixos/tests/hydra/create-trivial-project.sh
@@ -31,7 +31,8 @@ mycurl -X POST -d '@data.json' $URL/login -c hydra-cookie.txt
 cat >data.json <<EOF
 {
   "displayname":"Trivial",
-  "enabled":"1"
+  "enabled":"1",
+  "visible":"1"
 }
 EOF
 mycurl --silent -X PUT $URL/project/$PROJECT_NAME -d @data.json -b hydra-cookie.txt
diff --git a/nixos/tests/kubernetes/dns.nix b/nixos/tests/kubernetes/dns.nix
index 30e1acd255a..f25ea5b9ed8 100644
--- a/nixos/tests/kubernetes/dns.nix
+++ b/nixos/tests/kubernetes/dns.nix
@@ -87,7 +87,7 @@ let
       # check if pods are running
       $machine1->waitUntilSucceeds("kubectl get pod redis | grep Running");
       $machine1->waitUntilSucceeds("kubectl get pod probe | grep Running");
-      $machine1->waitUntilSucceeds("kubectl get pods -n kube-system | grep 'kube-dns.*3/3'");
+      $machine1->waitUntilSucceeds("kubectl get pods -n kube-system | grep 'coredns.*1/1'");
 
       # check dns on host (dnsmasq)
       $machine1->succeed("host redis.default.svc.cluster.local");
@@ -111,7 +111,7 @@ let
       # check if pods are running
       $machine1->waitUntilSucceeds("kubectl get pod redis | grep Running");
       $machine1->waitUntilSucceeds("kubectl get pod probe | grep Running");
-      $machine1->waitUntilSucceeds("kubectl get pods -n kube-system | grep 'kube-dns.*3/3'");
+      $machine1->waitUntilSucceeds("kubectl get pods -n kube-system | grep 'coredns.*1/1'");
 
       # check dns on hosts (dnsmasq)
       $machine1->succeed("host redis.default.svc.cluster.local");
diff --git a/nixos/tests/opensmtpd.nix b/nixos/tests/opensmtpd.nix
index 4d3479168f7..883ad760494 100644
--- a/nixos/tests/opensmtpd.nix
+++ b/nixos/tests/opensmtpd.nix
@@ -120,4 +120,6 @@ import ./make-test.nix {
     $smtp2->waitUntilFails('smtpctl show queue | egrep .');
     $client->succeed('check-mail-landed >&2');
   '';
+
+  meta.timeout = 30;
 }
diff --git a/nixos/tests/rspamd.nix b/nixos/tests/rspamd.nix
index af765f37b91..c2175f1bc25 100644
--- a/nixos/tests/rspamd.nix
+++ b/nixos/tests/rspamd.nix
@@ -28,6 +28,8 @@ let
       ${checkSocket "/run/rspamd/rspamd.sock" "rspamd" "rspamd" "660" }
       sleep 10;
       $machine->log($machine->succeed("cat /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-controller.inc' /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-normal.inc' /etc/rspamd/rspamd.conf"));
       $machine->log($machine->succeed("systemctl cat rspamd.service"));
       $machine->log($machine->succeed("curl http://localhost:11334/auth"));
       $machine->log($machine->succeed("curl http://127.0.0.1:11334/auth"));
@@ -56,6 +58,8 @@ in
       ${checkSocket "/run/rspamd.sock" "root" "root" "600" }
       ${checkSocket "/run/rspamd-worker.sock" "root" "root" "666" }
       $machine->log($machine->succeed("cat /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-controller.inc' /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-normal.inc' /etc/rspamd/rspamd.conf"));
       $machine->log($machine->succeed("rspamc -h /run/rspamd-worker.sock stat"));
       $machine->log($machine->succeed("curl --unix-socket /run/rspamd-worker.sock http://localhost/ping"));
     '';
@@ -78,6 +82,15 @@ in
           owner = "root";
           group = "root";
         }];
+        workers.controller2 = {
+          type = "controller";
+          bindSockets = [ "0.0.0.0:11335" ];
+          extraConfig = ''
+            static_dir = "''${WWWDIR}";
+            secure_ip = null;
+            password = "verysecretpassword";
+          '';
+        };
       };
     };
 
@@ -87,8 +100,14 @@ in
       ${checkSocket "/run/rspamd.sock" "root" "root" "600" }
       ${checkSocket "/run/rspamd-worker.sock" "root" "root" "666" }
       $machine->log($machine->succeed("cat /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-controller.inc' /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'CONFDIR/worker-normal.inc' /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'LOCAL_CONFDIR/override.d/worker-controller2.inc' /etc/rspamd/rspamd.conf"));
+      $machine->log($machine->succeed("grep 'verysecretpassword' /etc/rspamd/override.d/worker-controller2.inc"));
+      $machine->waitUntilSucceeds("journalctl -u rspamd | grep -i 'starting controller process' >&2");
       $machine->log($machine->succeed("rspamc -h /run/rspamd-worker.sock stat"));
       $machine->log($machine->succeed("curl --unix-socket /run/rspamd-worker.sock http://localhost/ping"));
+      $machine->log($machine->succeed("curl http://localhost:11335/ping"));
     '';
   };
   customLuaRules = makeTest {
@@ -110,16 +129,33 @@ in
       '';
       services.rspamd = {
         enable = true;
-        locals."groups.conf".text = ''
-          group "cows" {
-            symbol {
-              NO_MUH = {
-                weight = 1.0;
-                description = "Mails should not muh";
+        locals = {
+          "antivirus.conf" = mkIf false { text = ''
+              clamav {
+                action = "reject";
+                symbol = "CLAM_VIRUS";
+                type = "clamav";
+                log_clean = true;
+                servers = "/run/clamav/clamd.ctl";
+              }
+            '';};
+          "redis.conf" = {
+            enable = false;
+            text = ''
+              servers = "127.0.0.1";
+            '';
+          };
+          "groups.conf".text = ''
+            group "cows" {
+              symbol {
+                NO_MUH = {
+                  weight = 1.0;
+                  description = "Mails should not muh";
+                }
               }
             }
-          }
-        '';
+          '';
+        };
         localLuaRules = pkgs.writeText "rspamd.local.lua" ''
           local rspamd_logger = require "rspamd_logger"
           rspamd_config.NO_MUH = {
@@ -152,6 +188,10 @@ in
       $machine->log($machine->succeed("cat /etc/rspamd/rspamd.conf"));
       $machine->log($machine->succeed("cat /etc/rspamd/rspamd.local.lua"));
       $machine->log($machine->succeed("cat /etc/rspamd/local.d/groups.conf"));
+      # Verify that redis.conf was not written
+      $machine->fail("cat /etc/rspamd/local.d/redis.conf >&2");
+      # Verify that antivirus.conf was not written
+      $machine->fail("cat /etc/rspamd/local.d/antivirus.conf >&2");
       ${checkSocket "/run/rspamd/rspamd.sock" "rspamd" "rspamd" "660" }
       $machine->log($machine->succeed("curl --unix-socket /run/rspamd/rspamd.sock http://localhost/ping"));
       $machine->log($machine->succeed("rspamc -h 127.0.0.1:11334 stat"));
@@ -162,4 +202,48 @@ in
       $machine->log($machine->succeed("cat /etc/tests/muh.eml | rspamc -h 127.0.0.1:11334 symbols | grep NO_MUH"));
     '';
   };
+  postfixIntegration = makeTest {
+    name = "rspamd-postfix-integration";
+    machine = {
+      environment.systemPackages = with pkgs; [ msmtp ];
+      environment.etc."tests/gtube.eml".text = ''
+        From: Sheep1<bah@example.com>
+        To: Sheep2<tester@example.com>
+        Subject: Evil cows
+
+        I find cows to be evil don't you?
+
+        XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X
+      '';
+      environment.etc."tests/example.eml".text = ''
+        From: Sheep1<bah@example.com>
+        To: Sheep2<tester@example.com>
+        Subject: Evil cows
+
+        I find cows to be evil don't you?
+      '';
+      users.users.tester.password = "test";
+      services.postfix = {
+        enable = true;
+        destination = ["example.com"];
+      };
+      services.rspamd = {
+        enable = true;
+        postfix.enable = true;
+      };
+    };
+    testScript = ''
+      ${initMachine}
+      $machine->waitForOpenPort(11334);
+      $machine->waitForOpenPort(25);
+      ${checkSocket "/run/rspamd/rspamd-milter.sock" "rspamd" "postfix" "660" }
+      $machine->log($machine->succeed("rspamc -h 127.0.0.1:11334 stat"));
+      $machine->log($machine->succeed("msmtp --host=localhost -t --read-envelope-from < /etc/tests/example.eml"));
+      $machine->log($machine->fail("msmtp --host=localhost -t --read-envelope-from < /etc/tests/gtube.eml"));
+
+      $machine->waitUntilFails('[ "$(postqueue -p)" != "Mail queue is empty" ]');
+      $machine->fail("journalctl -u postfix | grep -i error >&2");
+      $machine->fail("journalctl -u postfix | grep -i warning >&2");
+    '';
+  };
 }
diff --git a/nixos/tests/solr.nix b/nixos/tests/solr.nix
new file mode 100644
index 00000000000..9ba3863411e
--- /dev/null
+++ b/nixos/tests/solr.nix
@@ -0,0 +1,47 @@
+import ./make-test.nix ({ pkgs, lib, ... }:
+{
+  name = "solr";
+  meta.maintainers = [ lib.maintainers.aanderse ];
+
+  machine =
+    { config, pkgs, ... }:
+    {
+      # Ensure the virtual machine has enough memory for Solr to avoid the following error:
+      #
+      #   OpenJDK 64-Bit Server VM warning:
+      #     INFO: os::commit_memory(0x00000000e8000000, 402653184, 0)
+      #     failed; error='Cannot allocate memory' (errno=12)
+      #
+      #   There is insufficient memory for the Java Runtime Environment to continue.
+      #   Native memory allocation (mmap) failed to map 402653184 bytes for committing reserved memory.
+      virtualisation.memorySize = 2000;
+
+      services.solr.enable = true;
+    };
+
+  testScript = ''
+    startAll;
+
+    $machine->waitForUnit('solr.service');
+    $machine->waitForOpenPort('8983');
+    $machine->succeed('curl --fail http://localhost:8983/solr/');
+
+    # adapted from pkgs.solr/examples/films/README.txt
+    $machine->succeed('sudo -u solr solr create -c films');
+    $machine->succeed(q(curl http://localhost:8983/solr/films/schema -X POST -H 'Content-type:application/json' --data-binary '{
+      "add-field" : {
+        "name":"name",
+        "type":"text_general",
+        "multiValued":false,
+        "stored":true
+      },
+      "add-field" : {
+        "name":"initial_release_date",
+        "type":"pdate",
+        "stored":true
+      }
+    }')) =~ /"status":0/ or die;
+    $machine->succeed('sudo -u solr post -c films ${pkgs.solr}/example/films/films.json');
+    $machine->succeed('curl http://localhost:8983/solr/films/query?q=name:batman') =~ /"name":"Batman Begins"/ or die;
+  '';
+})
diff --git a/pkgs/applications/audio/espeak-ng/default.nix b/pkgs/applications/audio/espeak-ng/default.nix
index f4160ff6f80..5d0af8cf17a 100644
--- a/pkgs/applications/audio/espeak-ng/default.nix
+++ b/pkgs/applications/audio/espeak-ng/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open source speech synthesizer that supports over 70 languages, based on eSpeak";
-    homepage = https://github.com/espeak-ng/espeak-ng;
+    homepage = src.meta.homepage;
     license = licenses.gpl3;
     maintainers = with maintainers; [ aske ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index 8df2be1a039..f68d93fa69d 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -4,7 +4,7 @@
 , gobjectIntrospection, wrapGAppsHook }:
 
 python3.pkgs.buildPythonApplication rec  {
-  version = "0.9.610";
+  version = "0.9.611";
   name = "lollypop-${version}";
 
   format = "other";
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec  {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "0nn4cjw0c2ysd3y2a7l08ybcd21v993wsz99f7w0881jhws3q5p4";
+    sha256 = "1k78a26sld0xd14c9hr4qv8c7qaq1m8zqk1mzrh4pl7ysqqg9p20";
   };
 
   nativeBuildInputs = with python3.pkgs; [
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index d7e6173da9a..3dae0ca5d7c 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, python2Packages, fetchurl, gettext }:
+{ stdenv, python3Packages, fetchurl, gettext, chromaprint }:
 
 let
-  pythonPackages = python2Packages;
+  pythonPackages = python3Packages;
 in pythonPackages.buildPythonApplication rec {
   pname = "picard";
-  version = "1.4.2";
+  version = "2.0.4";
 
   src = fetchurl {
     url = "http://ftp.musicbrainz.org/pub/musicbrainz/picard/picard-${version}.tar.gz";
-    sha256 = "0d12k40d9fbcn801gp5zdsgvjdrh4g97vda3ga16rmmvfwwfxbgh";
+    sha256 = "0ds3ylpqn717fnzcjrfn05v5xram01bj6n3hwn9igmkd1jgf8vhc";
   };
 
   buildInputs = [ gettext ];
 
   propagatedBuildInputs = with pythonPackages; [
-    pyqt4
+    pyqt5
     mutagen
+    chromaprint
     discid
   ];
 
@@ -23,6 +24,11 @@ in pythonPackages.buildPythonApplication rec {
     python setup.py install --prefix="$out"
   '';
 
+  prePatch = ''
+    # Pesky unicode punctuation.
+    substituteInPlace setup.cfg --replace "‘" "'"
+  '';
+
   doCheck = false;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
index b377db65c0c..cb267d8bbb6 100644
--- a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
@@ -5,6 +5,7 @@
 , pkgconfig
 , ffmpeg_4
 , patchelf
+, fdk_aac
 , libtool
 , cmake
 , bluez
@@ -22,13 +23,13 @@ let
 
 in stdenv.mkDerivation rec {
   name = "pulseaudio-modules-bt-${version}";
-  version = "unstable-2018-10-16";
+  version = "unstable-2018-11-01";
 
   src = fetchFromGitHub {
     owner = "EHfive";
     repo = "pulseaudio-modules-bt";
-    rev = "552c2b48c0cc7dd44d0746b261f7c7d5559e8e30";
-    sha256 = "052jb1hjx1in7bafx4zpn78s7r6f2y7djriwi36dzqy9wmalmyjy";
+    rev = "a2f62fcaa702bb883c07d074ebca8d7135520ab8";
+    sha256 = "1fhg7q9064zikhy0xxldn4fvh49pc47mgikcbd9yhsk66gcn6zj3";
     fetchSubmodules = true;
   };
 
@@ -45,6 +46,7 @@ in stdenv.mkDerivation rec {
   buildInputs = [
     pulseaudio
     ffmpeg_4
+    fdk_aac
     libtool
     bluez
     dbus
@@ -72,7 +74,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = https://github.com/EHfive/pulseaudio-modules-bt;
-    description = "SBC, Sony LDAC codec (A2DP Audio) support for Pulseaudio";
+    description = "LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support for Linux PulseAudio";
     platforms = platforms.linux;
     license = licenses.mit;
     maintainers = with maintainers; [ adisbladis ];
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
index 2b4ff86ab71..e500d1fb133 100644
--- a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
@@ -1,11 +1,20 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0f5baa0..1f35cce 100644
+index d869979..185144d 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -122,5 +121,4 @@ INSTALL(TARGETS
+@@ -143,13 +143,13 @@ INSTALL(TARGETS
          module-bluez5-device
          module-bluetooth-discover
          module-bluetooth-policy
 -        LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
--
 +        LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
+ 
+ if(NOT ${HAVE_SYSTEM_LDAC})
+ 
+ INSTALL(TARGETS
+         ldacBT_enc
+         ldacBT_abr
+-        LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
++        LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
+ 
+ endif()
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index baf49ff78e5..e26c2496d56 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -9,7 +9,7 @@
 let optionals = stdenv.lib.optionals; in
 python3.pkgs.buildPythonApplication rec {
   pname = "quodlibet${tag}";
-  version = "4.1.0";
+  version = "4.2.0";
 
   # XXX, tests fail
   # https://github.com/quodlibet/quodlibet/issues/2820
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication rec {
 
   src = fetchurl {
     url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz";
-    sha256 = "1vcxx4sz5i4ag74pjpdfw7jkwxfb8jhvn8igcjwd5cccw4gscm2z";
+    sha256 = "0w64i999ipzgjb4c4lzw7jp792amd6km46wahx7m3bpzly55r3f6";
   };
 
   nativeBuildInputs = [ wrapGAppsHook gettext intltool ];
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index cbcf5220564..15aaab40a67 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -5,14 +5,14 @@
 let
   # TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
   # "rev" decides what is actually being downloaded
-  version = "1.0.83.316.ge96b6e67-5";
+  version = "1.0.93.242.gc2341a27-15";
   # To get the latest stable revision:
   # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
   # To get general information:
   # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
   # More examples of api usage:
   # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
-  rev = "17";
+  rev = "24";
 
 
   deps = [
@@ -65,7 +65,7 @@ stdenv.mkDerivation {
   # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
   src = fetchurl {
     url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
-    sha512 = "19bbr4142shsl4qrikf48vq7kyrd4k4jbsada13qxicxps46a9bx51vjm2hkijqv739c1gdkgzwx7llyk95z26lhrz53shm2n5ij8xi";
+    sha512 = "920d55b3dcad4ac6acd9bc73c8ad8eb1668327a175da465ce3d8bba2430da47aaefa5218659315fab43b5182611eb03047d4e2679c1345c57380b7def7a1212d";
   };
 
   buildInputs = [ squashfsTools makeWrapper ];
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
index 97f59ee5f94..af8b3ac9394 100644
--- a/pkgs/applications/audio/vocal/default.nix
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchFromGitHub, cmake, ninja, pkgconfig, vala, gtk3, libxml2, granite, webkitgtk, clutter-gtk
+{ stdenv, fetchFromGitHub, cmake, ninja, pkgconfig, vala_0_40, gtk3, libxml2, granite, webkitgtk, clutter-gtk
 , clutter-gst, libunity, libnotify, sqlite, gst_all_1, libsoup, json-glib, gnome3, gobjectIntrospection, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "vocal";
-  version = "2.2.0";
+  version = "2.3.0";
 
   name = "${pname}-${version}";
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "needle-and-thread";
     repo = pname;
     rev = version;
-    sha256 = "09cm4azyaa9fmfymygf25gf0klpm5p04k6bc1i90jhw0f1im8sgl";
+    sha256 = "1wkkyai14in4yk3q4qq23wk3l49px2xi8z819y3glna236qsq6qp";
   };
 
   nativeBuildInputs = [
@@ -20,13 +20,14 @@ stdenv.mkDerivation rec {
     libxml2
     ninja
     pkgconfig
-    vala
+    vala_0_40 # should be `elementary.vala` when elementary attribute set is merged
     wrapGAppsHook
   ];
 
   buildInputs = with gst_all_1; [
     clutter-gst
     clutter-gtk
+    gnome3.defaultIconTheme # should be `elementary.defaultIconTheme`when elementary attribute set is merged
     gnome3.libgee
     granite
     gst-plugins-base
diff --git a/pkgs/applications/display-managers/ly/default.nix b/pkgs/applications/display-managers/ly/default.nix
new file mode 100644
index 00000000000..e8edcc3f634
--- /dev/null
+++ b/pkgs/applications/display-managers/ly/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchFromGitHub, linux-pam }:
+
+stdenv.mkDerivation rec { 
+  name = "ly-${version}";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "cylgom";
+    repo = "ly";
+    rev = version;
+    sha256 = "16gjcrd4a6i4x8q8iwlgdildm7cpdsja8z22pf2izdm6rwfki97d";
+    fetchSubmodules = true;
+  }; 
+
+  buildInputs = [ linux-pam ];
+  makeFlags = [ "FLAGS=-Wno-error" ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/ly $out/bin 
+  '';
+
+  meta = with lib; {
+    description = "TUI display manager";
+    license = licenses.wtfpl;
+    homepage = https://github.com/cylgom/ly;
+    maintainers = [ maintainers.spacekookie ];
+  };
+}
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index e97e22e4a9e..f2e77d65f05 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -13,14 +13,14 @@ let
     sha256Hash = "117skqjax1xz9plarhdnrw2rwprjpybdc7mx7wggxapyy920vv5r";
   };
   betaVersion = {
-    version = "3.3.0.14"; # "Android Studio 3.3 Beta 2"
-    build = "182.5078385";
-    sha256Hash = "10jw508fzxbknfl1l058ksnnli2nav91wmh2x2p0mz96lkf5bvhn";
+    version = "3.3.0.15"; # "Android Studio 3.3 Beta 3"
+    build = "182.5105271";
+    sha256Hash = "03j3g39v1g4jf5q37bd50zfqsgjfnwnyhjgx8vkfwlg263vhhvdq";
   };
   latestVersion = { # canary & dev
-    version = "3.4.0.1"; # "Android Studio 3.4 Canary 2"
-    build = "183.5081642";
-    sha256Hash = "0ck6habkgnwbr10pr3bfy8ywm3dsm21k9jdj7g685v22sw0zy3yk";
+    version = "3.4.0.2"; # "Android Studio 3.4 Canary 3"
+    build = "183.5112304";
+    sha256Hash = "0dzk4ag1dirfq8l2q91j6hsfyi07wx52qcsmbjb9a2710rlwpdhp";
   };
 in rec {
   # Old alias
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index c1bfdf8157d..e95d2b61535 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
 , pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
-, alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
+, alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
 , systemd ? null
 , withX ? !stdenv.isDarwin
 , withNS ? stdenv.isDarwin
@@ -64,9 +64,12 @@ stdenv.mkDerivation rec {
     ++ lib.optional (withX && withGTK2) gtk2-x11
     ++ lib.optionals (withX && withGTK3) [ gtk3-x11 gsettings-desktop-schemas ]
     ++ lib.optional (stdenv.isDarwin && withX) cairo
-    ++ lib.optionals (withX && withXwidgets) [ webkitgtk ];
-
-  propagatedBuildInputs = lib.optionals withNS [ AppKit GSS ImageIO ];
+    ++ lib.optionals (withX && withXwidgets) [ webkitgtk ]
+    ++ lib.optionals withNS [
+      AppKit GSS ImageIO
+      # Needed for CFNotificationCenterAddObserver symbols.
+      cf-private
+    ];
 
   hardeningDisable = [ "format" ];
 
diff --git a/pkgs/applications/editors/rstudio/clang-location.patch b/pkgs/applications/editors/rstudio/clang-location.patch
new file mode 100644
index 00000000000..402abdd8563
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/clang-location.patch
@@ -0,0 +1,25 @@
+diff --git i/src/cpp/core/libclang/LibClang.cpp w/src/cpp/core/libclang/LibClang.cpp
+index ec12a3a1ff..8c81b633ae 100644
+--- i/src/cpp/core/libclang/LibClang.cpp
++++ w/src/cpp/core/libclang/LibClang.cpp
+@@ -54,7 +54,7 @@ std::vector<std::string> defaultCompileArgs(LibraryVersion version)
+ 
+    // we need to add in the associated libclang headers as
+    // they are not discovered / used by default during compilation
+-   FilePath llvmPath = s_libraryPath.parent().parent();
++   FilePath llvmPath("@clang@");
+    boost::format fmt("%1%/lib/clang/%2%/include");
+    fmt % llvmPath.absolutePath() % version.asString();
+    std::string includePath = fmt.str();
+@@ -77,10 +77,7 @@ std::vector<std::string> systemClangVersions()
+ #elif defined(__unix__)
+    // default set of versions
+    clangVersions = {
+-      "/usr/lib/libclang.so",
+-      "/usr/lib/llvm/libclang.so",
+-      "/usr/lib64/libclang.so",
+-      "/usr/lib64/llvm/libclang.so",
++      "@libclang.so@"
+    };
+    
+    // iterate through the set of available 'llvm' directories
diff --git a/pkgs/applications/editors/rstudio/fix-cmake.patch b/pkgs/applications/editors/rstudio/fix-cmake.patch
new file mode 100644
index 00000000000..3effc0eaa32
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/fix-cmake.patch
@@ -0,0 +1,15 @@
+diff --git a/src/cpp/desktop/CMakeLists.txt b/src/cpp/desktop/CMakeLists.txt
+index f5701bf735..27af4148ff 100644
+--- a/src/cpp/desktop/CMakeLists.txt
++++ b/src/cpp/desktop/CMakeLists.txt
+@@ -112,6 +112,7 @@ find_package(Qt5WebEngine REQUIRED)
+ find_package(Qt5WebEngineWidgets REQUIRED)
+ find_package(Qt5PrintSupport REQUIRED)
+ find_package(Qt5Quick REQUIRED)
++find_package(Qt5QuickWidgets REQUIRED)
+ find_package(Qt5Positioning REQUIRED)
+ find_package(Qt5Sensors REQUIRED)
+ find_package(Qt5Svg REQUIRED)
+-- 
+2.17.1
+
diff --git a/pkgs/applications/editors/rstudio/preview.nix b/pkgs/applications/editors/rstudio/preview.nix
new file mode 100644
index 00000000000..340aeec15e0
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/preview.nix
@@ -0,0 +1,119 @@
+{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
+, openssl, R, qtbase, qtdeclarative, qtsensors, qtwebengine, qtwebchannel
+, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
+, llvmPackages
+}:
+
+let
+  rev = "f33fb2b2f1";
+  ginVer = "2.1.2";
+  gwtVer = "2.8.1";
+in
+stdenv.mkDerivation rec {
+  name = "RStudio-preview-${rev}";
+
+  nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
+
+  buildInputs = [ boost zlib openssl R qtbase qtdeclarative qtsensors
+                  qtwebengine qtwebchannel libuuid ];
+
+  src = fetchFromGitHub {
+    owner = "rstudio";
+    repo = "rstudio";
+    inherit rev;
+    sha256 = "0v3vzqjp74c3m4h9l6w2lrdnjqaimdjzbf7vhnlxj2qa0lwsnykb";
+  };
+
+  # Hack RStudio to only use the input R and provided libclang.
+  patches = [ ./r-location.patch ./clang-location.patch ];
+  postPatch = ''
+    substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
+    substituteInPlace src/cpp/core/libclang/LibClang.cpp \
+      --replace '@clang@' ${llvmPackages.clang.cc} \
+      --replace '@libclang.so@' ${llvmPackages.clang.cc.lib}/lib/libclang.so
+  '';
+
+  ginSrc = fetchurl {
+    url = "https://s3.amazonaws.com/rstudio-buildtools/gin-${ginVer}.zip";
+    sha256 = "16jzmljravpz6p2rxa87k5f7ir8vs7ya75lnfybfajzmci0p13mr";
+  };
+
+  gwtSrc = fetchurl {
+    url = "https://s3.amazonaws.com/rstudio-buildtools/gwt-${gwtVer}.zip";
+    sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb";
+  };
+
+  hunspellDictionaries = with stdenv.lib; filter isDerivation (attrValues hunspellDicts);
+
+  mathJaxSrc = fetchurl {
+    url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip;
+    sha256 = "0wbcqb9rbfqqvvhqr1pbqax75wp8ydqdyhp91fbqfqp26xzjv6lk";
+  };
+
+  rsconnectSrc = fetchFromGitHub {
+    owner = "rstudio";
+    repo = "rsconnect";
+    rev = "984745d8";
+    sha256 = "037z0y32k1gdda192y5qn5hi7wp8wyap44mkjlklrgcqkmlcylb9";
+  };
+
+  preConfigure =
+    ''
+      GWT_LIB_DIR=src/gwt/lib
+
+      mkdir -p $GWT_LIB_DIR/gin/${ginVer}
+      unzip ${ginSrc} -d $GWT_LIB_DIR/gin/${ginVer}
+
+      unzip ${gwtSrc}
+      mkdir -p $GWT_LIB_DIR/gwt
+      mv gwt-${gwtVer} $GWT_LIB_DIR/gwt/${gwtVer}
+
+      mkdir dependencies/common/dictionaries
+      for dict in ${builtins.concatStringsSep " " hunspellDictionaries}; do
+        for i in "$dict/share/hunspell/"*; do
+          ln -sv $i dependencies/common/dictionaries/
+        done
+      done
+
+      unzip ${mathJaxSrc} -d dependencies/common/mathjax-26
+
+      mkdir -p dependencies/common/pandoc
+      cp ${pandoc}/bin/pandoc dependencies/common/pandoc/
+
+      cp -r ${rsconnectSrc} dependencies/common/rsconnect
+      pushd dependencies/common
+      ${R}/bin/R CMD build -d --no-build-vignettes rsconnect
+      popd
+    '';
+
+  enableParallelBuilding = true;
+
+  cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=$NIX_QT5_TMP/bin/qmake" ];
+
+  desktopItem = makeDesktopItem {
+    name = name;
+    exec = "rstudio %F";
+    icon = "rstudio";
+    desktopName = "RStudio Preview";
+    genericName = "IDE";
+    comment = meta.description;
+    categories = "Development;";
+    mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
+  };
+
+  postInstall = ''
+      wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
+      mkdir $out/share
+      cp -r ${desktopItem}/share/applications $out/share
+      mkdir $out/share/icons
+      ln $out/rstudio.png $out/share/icons
+  '';
+
+  meta = with stdenv.lib;
+    { description = "Set of integrated tools for the R language";
+      homepage = https://www.rstudio.com/;
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ averelld ];
+      platforms = platforms.linux;
+    };
+}
diff --git a/pkgs/applications/editors/standardnotes/default.nix b/pkgs/applications/editors/standardnotes/default.nix
new file mode 100644
index 00000000000..d9bca530948
--- /dev/null
+++ b/pkgs/applications/editors/standardnotes/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, appimage-run, fetchurl }:
+
+let
+  version = "2.3.12";
+
+  plat = {
+    "i386-linux" = "i386";
+    "x86_64-linux" = "x86_64";
+  }.${stdenv.hostPlatform.system};
+
+  sha256 = {
+    "i386-linux" = "0q7izk20r14kxn3n4pn92jgnynfnlnylg55brz8n1lqxc0dc3v24";
+    "x86_64-linux" = "0myg4qv0vrwh8s9sckb12ld9f86ymx4yypvpy0w5qn1bxk5hbafc";
+  }.${stdenv.hostPlatform.system};
+in
+
+stdenv.mkDerivation rec {
+  name = "standardnotes-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-${plat}.AppImage";
+    inherit sha256;
+  };
+
+  buildInputs = [ appimage-run ];
+
+  unpackPhase = ":";
+
+  installPhase = ''
+    mkdir -p $out/{bin,share}
+    cp $src $out/share/standardNotes.AppImage
+    echo "#!/bin/sh" > $out/bin/standardnotes
+    echo "${appimage-run}/bin/appimage-run $out/share/standardNotes.AppImage" >> $out/bin/standardnotes
+    chmod +x $out/bin/standardnotes $out/share/standardNotes.AppImage
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A simple and private notes app";
+    longDescription = ''
+      Standard Notes is a private notes app that features unmatched simplicity,
+      end-to-end encryption, powerful extensions, and open-source applications.
+    '';
+    homepage = https://standardnotes.org;
+    license = licenses.agpl3;
+    maintainers = with maintainers; [ mgregoire ];
+    platforms = [ "i386-linux" "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/editors/texmaker/default.nix b/pkgs/applications/editors/texmaker/default.nix
index c5f691e95c2..036bd8e546c 100644
--- a/pkgs/applications/editors/texmaker/default.nix
+++ b/pkgs/applications/editors/texmaker/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "texmaker";
-  version = "5.0.2";
+  version = "5.0.3";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://www.xm1math.net/texmaker/${name}.tar.bz2";
-    sha256 = "0y81mjm89b99pr9svcwpaf4iz2q9pc9hjas5kiwd1pbgl5vqskm9";
+    sha256 = "0vrj9w5lk3vf6138n5bz8phmy3xp5kv4dq1rgirghcf4hbxdyx30";
   };
 
   buildInputs = [ qtbase qtscript poppler zlib ];
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index 26cd61d182b..2f34a6ddeb6 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -6,7 +6,7 @@
     sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c";
   }
 # apple frameworks
-, Carbon, Cocoa
+, cf-private, Carbon, Cocoa
 }:
 
 let
@@ -19,7 +19,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ gettext pkgconfig ];
   buildInputs = [ ncurses ]
-    ++ stdenv.lib.optionals stdenv.hostPlatform.isDarwin [ Carbon Cocoa ];
+    ++ stdenv.lib.optionals stdenv.hostPlatform.isDarwin [
+      Carbon Cocoa
+      # Needed for OBJC_CLASS_$_NSArray symbols.
+      cf-private
+    ];
 
   configureFlags = [
     "--enable-multibyte"
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index bbc533d37e8..5146919fde6 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -6,11 +6,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "feh-${version}";
-  version = "2.28";
+  version = "2.28.1";
 
   src = fetchurl {
     url = "https://feh.finalrewind.org/${name}.tar.bz2";
-    sha256 = "1nfka7w6pzj2bbwx8vydr2wwm7z8mrbqiy1xrq97c1g5bxy2vlhk";
+    sha256 = "0wian0gnx0yfxf8x9b8wr57fjd6rnmi3y3xj83ni6x0xqrjnf1lp";
   };
 
   outputs = [ "out" "man" "doc" ];
diff --git a/pkgs/applications/graphics/gimp/default.nix b/pkgs/applications/graphics/gimp/default.nix
index 15033b8b2b0..729b58ee89e 100644
--- a/pkgs/applications/graphics/gimp/default.nix
+++ b/pkgs/applications/graphics/gimp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, intltool, babl, gegl, gtk2, glib, gdk_pixbuf, isocodes
+{ stdenv, fetchurl, substituteAll, pkgconfig, intltool, babl, gegl, gtk2, glib, gdk_pixbuf, isocodes
 , pango, cairo, freetype, fontconfig, lcms, libpng, libjpeg, poppler, poppler_data, libtiff
 , libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, shared-mime-info
 , python2Packages, libexif, gettext, xorg, glib-networking, libmypaint, gexiv2
@@ -36,6 +36,15 @@ in stdenv.mkDerivation rec {
     export GIO_EXTRA_MODULES="${glib-networking}/lib/gio/modules:$GIO_EXTRA_MODULES"
   '';
 
+  patches = [
+    # to remove compiler from the runtime closure, reference was retained via
+    # gimp --version --verbose output
+    (substituteAll {
+      src = ./remove-cc-reference.patch;
+      cc_version = stdenv.cc.cc.name;
+    })
+  ];
+
   postFixup = ''
     wrapPythonProgramsIn $out/lib/gimp/${passthru.majorVersion}/plug-ins/
     wrapProgram $out/bin/gimp-${stdenv.lib.versions.majorMinor version} \
diff --git a/pkgs/applications/graphics/gimp/remove-cc-reference.patch b/pkgs/applications/graphics/gimp/remove-cc-reference.patch
new file mode 100644
index 00000000000..0d6a87000cc
--- /dev/null
+++ b/pkgs/applications/graphics/gimp/remove-cc-reference.patch
@@ -0,0 +1,13 @@
+diff --git a/app/gimp-version.c b/app/gimp-version.c
+index 12605c6..a9083da 100644
+--- a/app/gimp-version.c
++++ b/app/gimp-version.c
+@@ -203,7 +203,7 @@ gimp_version (gboolean be_verbose,
+       lib_versions = gimp_library_versions (localized);
+       verbose_info = g_strdup_printf ("git-describe: %s\n"
+                                       "C compiler:\n%s\n%s",
+-                                      GIMP_GIT_VERSION, CC_VERSION,
++                                      GIMP_GIT_VERSION, "@cc_version@",
+                                       lib_versions);
+       g_free (lib_versions);
+ 
diff --git a/pkgs/applications/graphics/phototonic/default.nix b/pkgs/applications/graphics/phototonic/default.nix
index ce300eaf9f6..7da1d4b612f 100644
--- a/pkgs/applications/graphics/phototonic/default.nix
+++ b/pkgs/applications/graphics/phototonic/default.nix
@@ -2,15 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "phototonic-${version}";
-  version = "1.7.1";
+  version = "2.1";
 
   src = fetchFromGitHub {
     repo = "phototonic";
     owner = "oferkv";
-    # There is currently no tag for 1.7.1 see
-    # https://github.com/oferkv/phototonic/issues/214
-    rev = "c37070e4a068570d34ece8de1e48aa0882c80c5b";
-    sha256 = "1agd3bsrpljd019qrjvlbim5l0bhpx53dhpc0gvyn0wmcdzn92gj";
+    rev = "v${version}";
+    sha256 = "0csidmxl1sfmn6gq81vn9f9jckb4swz3sgngnwqa4f75lr6604h7";
   };
 
   buildInputs = [ qtbase exiv2 ];
diff --git a/pkgs/applications/graphics/rapid-photo-downloader/default.nix b/pkgs/applications/graphics/rapid-photo-downloader/default.nix
index d4edbae1d28..59d6fec45da 100644
--- a/pkgs/applications/graphics/rapid-photo-downloader/default.nix
+++ b/pkgs/applications/graphics/rapid-photo-downloader/default.nix
@@ -6,11 +6,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "rapid-photo-downloader";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "https://launchpad.net/rapid/pyqt/${version}/+download/${pname}-${version}.tar.gz";
-    sha256 = "0nzahps7hs120xv2r55k293kialf83nx44x3jg85yh349rpqrii8";
+    sha256 = "1517w18sxil1gwd78jjbbixcd1b0sp05imnnd5h5lr8wl3f0szj0";
   };
 
   # Disable version check and fix install tests
diff --git a/pkgs/applications/graphics/yacreader/default.nix b/pkgs/applications/graphics/yacreader/default.nix
new file mode 100644
index 00000000000..3cf42343658
--- /dev/null
+++ b/pkgs/applications/graphics/yacreader/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, qmake, poppler, pkgconfig, libunarr, libGLU
+, qtdeclarative, qtgraphicaleffects, qtmultimedia, qtquickcontrols, qtscript
+}:
+
+stdenv.mkDerivation rec {
+  name = "yacreader-${version}";
+  version = "9.5.0";
+
+  src = fetchurl {
+    url = "https://github.com/YACReader/yacreader/releases/download/${version}/${name}-src.tar.xz";
+    sha256 = "0cv5y76kjvsqsv4fp99j8np5pm4m76868i1nn40q6hy573dmxwm6";
+  };
+
+  nativeBuildInputs = [ qmake pkgconfig ];
+  buildInputs = [ poppler libunarr libGLU qtmultimedia qtscript ];
+  propagatedBuildInputs = [ qtquickcontrols qtgraphicaleffects qtdeclarative ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "A comic reader for cross-platform reading and managing your digital comic collection";
+    homepage = http://www.yacreader.com;
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/misc/1password/default.nix b/pkgs/applications/misc/1password/default.nix
index 331f516c88c..a25d40e29bd 100644
--- a/pkgs/applications/misc/1password/default.nix
+++ b/pkgs/applications/misc/1password/default.nix
@@ -2,24 +2,24 @@
 
 stdenv.mkDerivation rec {
   name = "1password-${version}";
-  version = "0.5.3";
+  version = "0.5.4";
   src =
     if stdenv.hostPlatform.system == "i686-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip";
-        sha256 = "05s223h1yps4k9kmignl0r5sbh6w7m1hnlmafnf1kiwv7gacvxjc";
+        sha256 = "0wni2hk5b1qfr24vi24jiprpi08k3qgaw9lqp61k41a1sjp3izv0";
         stripRoot = false;
       }
     else if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip";
-        sha256 = "0p9x1fx0309v8dxxaf88m8x8q15zzqywfmjn6v5wb9v3scp9396v";
+        sha256 = "169d5fl3cfw3xrlpm9nlmwbnp0xgh0la9qybzf8ragp0020nlyih";
         stripRoot = false;
       }
     else if stdenv.hostPlatform.system == "x86_64-darwin" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.zip";
-        sha256 = "1z2xp9bn93gr4ha6zx65va1fb58a2xlnnmpv583y96gq3vbnqdcj";
+        sha256 = "1scikv7v33kzg9rqsrz97yklxaskvif84br13zg8annm43k5vlma";
         stripRoot = false;
       }
     else throw "Architecture not supported";
diff --git a/pkgs/applications/misc/archiver/default.nix b/pkgs/applications/misc/archiver/default.nix
new file mode 100644
index 00000000000..25fafb604c3
--- /dev/null
+++ b/pkgs/applications/misc/archiver/default.nix
@@ -0,0 +1,28 @@
+{ buildGoPackage
+, fetchFromGitHub
+, lib
+}:
+
+buildGoPackage rec {
+  name = "archiver-${version}";
+  version = "3.0.0";
+
+  goPackagePath = "github.com/mholt/archiver";
+
+  src = fetchFromGitHub {
+    owner = "mholt";
+    repo = "archiver";
+    rev = "v${version}";
+    sha256 = "1wngv51333h907mp6nbzd9dq6r0x06mag2cij92912jcbzy0q8bk";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Easily create and extract .zip, .tar, .tar.gz, .tar.bz2, .tar.xz, .tar.lz4, .tar.sz, and .rar (extract-only) files with Go";
+    homepage = https://github.com/mholt/archiver;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/misc/archiver/deps.nix b/pkgs/applications/misc/archiver/deps.nix
new file mode 100644
index 00000000000..4b14fd47711
--- /dev/null
+++ b/pkgs/applications/misc/archiver/deps.nix
@@ -0,0 +1,56 @@
+[
+  {
+    goPackagePath = "github.com/dsnet/compress";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dsnet/compress";
+      rev = "cc9eb1d7ad760af14e8f918698f745e80377af4f";
+      sha256 = "159liclywmyb6zx88ga5gn42hfl4cpk1660zss87fkx31hdq9fgx";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/snappy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/snappy";
+      rev = "2e65f85255dbc3072edf28d6b5b8efc472979f5a";
+      sha256 = "05w6mpc4qcy0pv8a2bzng8nf4s5rf5phfang4jwy9rgf808q0nxf";
+    };
+  }
+  {
+    goPackagePath = "github.com/nwaples/rardecode";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nwaples/rardecode";
+      rev = "197ef08ef68c4454ae5970a9c2692d6056ceb8d7";
+      sha256 = "0vvijw7va283dbdvnf4bgkn7bjngxqzk1rzdpy8sl343r62bmh4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/pierrec/lz4";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pierrec/lz4";
+      rev = "623b5a2f4d2a41e411730dcdfbfdaeb5c0c4564e";
+      sha256 = "1hhf7vyz5irrqs7ixdmvsvzmy9izv3ha8jbyy0cs486h61nzqkki";
+    };
+  }
+  {
+    goPackagePath = "github.com/ulikunitz/xz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ulikunitz/xz";
+      rev = "590df8077fbcb06ad62d7714da06c00e5dd2316d";
+      sha256 = "07mivr4aiw3b8qzwajsxyjlpbkf3my4xx23lv0yryc4pciam5lhy";
+    };
+  }
+  {
+    goPackagePath = "github.com/xi2/xz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xi2/xz";
+      rev = "48954b6210f8d154cb5f8484d3a3e1f83489309e";
+      sha256 = "178r0fa2dpzxf0sabs7dn0c8fa7vs87zlxk6spkn374ls9pir7nq";
+    };
+  }
+]
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 1ad236f0d13..3554c36f519 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, poppler_utils, pkgconfig, libpng
 , imagemagick, libjpeg, fontconfig, podofo, qtbase, qmake, icu, sqlite
 , makeWrapper, unrarSupport ? false, chmlib, python2Packages, libusb1, libmtp
-, xdg_utils, makeDesktopItem, wrapGAppsHook
+, xdg_utils, makeDesktopItem, wrapGAppsHook, removeReferencesTo
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  nativeBuildInputs = [ makeWrapper pkgconfig qmake ];
+  nativeBuildInputs = [ makeWrapper pkgconfig qmake removeReferencesTo ];
 
   buildInputs = [
     poppler_utils libpng imagemagick libjpeg
@@ -58,8 +58,8 @@ stdenv.mkDerivation rec {
     export MAGICK_LIB=${imagemagick.out}/lib
     export FC_INC_DIR=${fontconfig.dev}/include/fontconfig
     export FC_LIB_DIR=${fontconfig.lib}/lib
-    export PODOFO_INC_DIR=${podofo}/include/podofo
-    export PODOFO_LIB_DIR=${podofo}/lib
+    export PODOFO_INC_DIR=${podofo.dev}/include/podofo
+    export PODOFO_LIB_DIR=${podofo.lib}/lib
     export SIP_BIN=${python2Packages.sip}/bin/sip
     ${python2Packages.python.interpreter} setup.py install --prefix=$out
 
@@ -88,6 +88,15 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  # Remove some references to shrink the closure size. This reference (as of
+  # 2018-11-06) was a single string like the following:
+  #   /nix/store/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-podofo-0.9.6-dev/include/podofo/base/PdfVariant.h
+  preFixup = ''
+    remove-references-to -t ${podofo.dev} $out/lib/calibre/calibre/plugins/podofo.so
+  '';
+
+  disallowedReferences = [ podofo.dev ];
+
   calibreDesktopItem = makeDesktopItem {
     name = "calibre";
     desktopName = "calibre";
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 412a2e9d4fd..f7c1990ef3c 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   name = "dbeaver-ce-${version}";
-  version = "5.2.2";
+  version = "5.2.4";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "1rrj0c7ksvv9irsz9hb4ip30qgmzps4dy1nj4vl8mzzf389xa43n";
+    sha256 = "1zwbqr5s76r77x7klydpqbaqakzzilzv92ddyck1sj5jiy5prwpp";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/dmrconfig/default.nix b/pkgs/applications/misc/dmrconfig/default.nix
index 9edf5e4f88c..5d02eb937ff 100644
--- a/pkgs/applications/misc/dmrconfig/default.nix
+++ b/pkgs/applications/misc/dmrconfig/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "dmrconfig-${version}";
-  version = "2018-10-29";
+  version = "2018-11-07";
 
   src = fetchFromGitHub {
     owner = "sergev";
     repo = "dmrconfig";
-    rev = "4924d00283c3c81a4b8251669e42aecd96b6145a";
-    sha256 = "00a4hmbr71g0d4faskb8q96y6z212g2r4n533yvp88z8rq8vbxxn";
+    rev = "b58985d3c848b927e91699d97f96d9de014c3fc7";
+    sha256 = "083f21hz6vqjpndkn27nsjnhnc5a4bw0cr26ryfqcvz275rj4k18";
   };
 
   buildInputs = [
@@ -20,8 +20,10 @@ stdenv.mkDerivation rec {
     substituteInPlace Makefile --replace /usr/local/bin/dmrconfig $out/bin/dmrconfig
   '';
 
-  preInstall = ''
-    mkdir -p $out/bin
+  installPhase = ''
+    mkdir -p $out/bin $out/lib/udev/rules.d
+    make install
+    install 99-dmr.rules $out/lib/udev/rules.d/99-dmr.rules
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/glava/default.nix b/pkgs/applications/misc/glava/default.nix
index 7e32e566234..0cac0e6fd3f 100644
--- a/pkgs/applications/misc/glava/default.nix
+++ b/pkgs/applications/misc/glava/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, fetchurl, writeScript
+{ stdenv, writeScript, fetchFromGitHub
 , libGL, libX11, libXext, python3, libXrandr, libXrender, libpulseaudio, libXcomposite
 , enableGlfw ? false, glfw }:
 
@@ -22,12 +22,13 @@ let
 in
   stdenv.mkDerivation rec {
     name = "glava-${version}";
-    version = "1.5.5";
+    version = "1.5.8";
 
-    src = fetchgit {
-      url = "https://github.com/wacossusca34/glava.git";
+    src = fetchFromGitHub {
+      owner = "wacossusca34";
+      repo = "glava";
       rev = "v${version}";
-      sha256 = "0mpbgllwz45wkax6pgvnh1pz2q4yvbzq2l8z8kff13wrsdvl8lh0";
+      sha256 = "0mps82qw2mhxx8069jvqz1v8n4x7ybrrjv92ij6cms8xi1y8v0fm";
     };
 
     buildInputs = [
diff --git a/pkgs/applications/misc/gnuradio/rds.nix b/pkgs/applications/misc/gnuradio/rds.nix
index b617791dc2e..5d9670ba307 100644
--- a/pkgs/applications/misc/gnuradio/rds.nix
+++ b/pkgs/applications/misc/gnuradio/rds.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "bastibl";
     repo = "gr-rds";
-    rev = "$v{version}";
+    rev = "v${version}";
     sha256 = "008284ya464q4h4fd0zvcn6g7bym231p8fl3kdxncz9ks4zsbsxs";
   };
 
diff --git a/pkgs/applications/misc/gollum/Gemfile.lock b/pkgs/applications/misc/gollum/Gemfile.lock
index 977bd5e50dd..e6c66cba1e0 100644
--- a/pkgs/applications/misc/gollum/Gemfile.lock
+++ b/pkgs/applications/misc/gollum/Gemfile.lock
@@ -39,7 +39,7 @@ GEM
     nokogiri (1.8.4)
       mini_portile2 (~> 2.3.0)
     posix-spawn (0.3.13)
-    rack (1.6.10)
+    rack (1.6.11)
     rack-protection (1.5.5)
       rack
     rouge (2.2.1)
@@ -65,4 +65,4 @@ DEPENDENCIES
   gollum
 
 BUNDLED WITH
-   1.16.3
+   1.16.4
diff --git a/pkgs/applications/misc/gollum/gemset.nix b/pkgs/applications/misc/gollum/gemset.nix
index 3413b6ba631..bb105805ca8 100644
--- a/pkgs/applications/misc/gollum/gemset.nix
+++ b/pkgs/applications/misc/gollum/gemset.nix
@@ -137,10 +137,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.10";
+    version = "1.6.11";
   };
   rack-protection = {
     dependencies = ["rack"];
diff --git a/pkgs/applications/misc/gpxsee/default.nix b/pkgs/applications/misc/gpxsee/default.nix
index d2427d95c19..50a81890789 100644
--- a/pkgs/applications/misc/gpxsee/default.nix
+++ b/pkgs/applications/misc/gpxsee/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "gpxsee-${version}";
-  version = "6.2";
+  version = "6.3";
 
   src = fetchFromGitHub {
     owner = "tumic0";
     repo = "GPXSee";
     rev = version;
-    sha256 = "13hd6n5mzkk4nx9v9dwg8vvixr73zjba72h6vmxvz9fmywc4rs5p";
+    sha256 = "0kbnmcis04kjqkd0msfjd8rdmdf23c71dpzx9wcpf2yadc9rv4c9";
   };
 
   nativeBuildInputs = [ qmake ];
diff --git a/pkgs/applications/misc/jekyll/basic/Gemfile.lock b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
index a714cdbb0d0..6841bc14c38 100644
--- a/pkgs/applications/misc/jekyll/basic/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
@@ -9,7 +9,7 @@ GEM
     addressable (2.5.2)
       public_suffix (>= 2.0.2, < 4.0)
     colorator (1.1.0)
-    concurrent-ruby (1.0.5)
+    concurrent-ruby (1.1.1)
     em-websocket (0.5.1)
       eventmachine (>= 0.12.9)
       http_parser.rb (~> 0.6.0)
@@ -23,7 +23,7 @@ GEM
     http_parser.rb (0.6.0)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    jekyll (3.8.4)
+    jekyll (3.8.5)
       addressable (~> 2.4)
       colorator (~> 1.0)
       em-websocket (~> 0.5)
@@ -47,14 +47,14 @@ GEM
       jekyll (~> 3.3)
     jekyll-sitemap (1.2.0)
       jekyll (~> 3.3)
-    jekyll-watch (2.0.0)
+    jekyll-watch (2.1.2)
       listen (~> 3.0)
     jemoji (0.10.1)
       gemoji (~> 3.0)
       html-pipeline (~> 2.2)
       jekyll (~> 3.0)
     kramdown (1.17.0)
-    liquid (4.0.0)
+    liquid (4.0.1)
     listen (3.1.5)
       rb-fsevent (~> 0.9, >= 0.9.4)
       rb-inotify (~> 0.9, >= 0.9.7)
@@ -62,18 +62,18 @@ GEM
     mercenary (0.3.6)
     mini_portile2 (2.3.0)
     minitest (5.11.3)
-    nokogiri (1.8.4)
+    nokogiri (1.8.5)
       mini_portile2 (~> 2.3.0)
-    pathutil (0.16.1)
+    pathutil (0.16.2)
       forwardable-extended (~> 2.6)
     public_suffix (3.0.3)
     rb-fsevent (0.10.3)
     rb-inotify (0.9.10)
       ffi (>= 0.5.0, < 2)
-    rouge (3.2.1)
+    rouge (3.3.0)
     ruby_dep (1.5.0)
     safe_yaml (1.0.4)
-    sass (3.5.7)
+    sass (3.6.0)
       sass-listen (~> 4.0.0)
     sass-listen (4.0.0)
       rb-fsevent (~> 0.9, >= 0.9.4)
@@ -96,4 +96,4 @@ DEPENDENCIES
   rouge
 
 BUNDLED WITH
-   1.16.3
+   1.16.4
diff --git a/pkgs/applications/misc/jekyll/basic/gemset.nix b/pkgs/applications/misc/jekyll/basic/gemset.nix
index 7ab1c70a98b..d680f925590 100644
--- a/pkgs/applications/misc/jekyll/basic/gemset.nix
+++ b/pkgs/applications/misc/jekyll/basic/gemset.nix
@@ -28,10 +28,10 @@
   concurrent-ruby = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      sha256 = "1bnr2dlj2a11qy3rwh6m1mv5419vy32j2axk3ln7bphyvwn7pli0";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.1.1";
   };
   em-websocket = {
     dependencies = ["eventmachine" "http_parser.rb"];
@@ -104,10 +104,10 @@
     dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01rnf0y7wx4rzh2ag74bg37vkxbg8m4nf450lypgh4khrarr3bhw";
+      sha256 = "1nn2sc308l2mz0yiall4r90l6vy67qp4sy9zapi73a948nd4a5k3";
       type = "gem";
     };
-    version = "3.8.4";
+    version = "3.8.5";
   };
   jekyll-avatar = {
     dependencies = ["jekyll"];
@@ -158,10 +158,10 @@
     dependencies = ["listen"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m7scvj3ki8bmyx5v8pzibpg6my10nycnc28lip98dskf8iakprp";
+      sha256 = "1s9ly83sp8albvgdff12xy2h4xd8lm6z2fah4lzmk2yvp85jzdzv";
       type = "gem";
     };
-    version = "2.0.0";
+    version = "2.1.2";
   };
   jemoji = {
     dependencies = ["gemoji" "html-pipeline" "jekyll"];
@@ -183,10 +183,10 @@
   liquid = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17fa0jgwm9a935fyvzy8bysz7j5n1vf1x2wzqkdfd5k08dbw3x2y";
+      sha256 = "0bs9smxgj29s4k76zfj09f7mhd35qwm9zki1yqa4jfwiki8v97nw";
       type = "gem";
     };
-    version = "4.0.0";
+    version = "4.0.1";
   };
   listen = {
     dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
@@ -225,19 +225,19 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz";
       type = "gem";
     };
-    version = "1.8.4";
+    version = "1.8.5";
   };
   pathutil = {
     dependencies = ["forwardable-extended"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wc18ms1rzi44lpjychyw2a96jcmgxqdvy2949r4vvb5f4p0lgvz";
+      sha256 = "12fm93ljw9fbxmv2krki5k5wkvr7560qy8p4spvb9jiiaqv78fz4";
       type = "gem";
     };
-    version = "0.16.1";
+    version = "0.16.2";
   };
   public_suffix = {
     source = {
@@ -267,10 +267,10 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f";
+      sha256 = "1digsi2s8wyzx8vsqcxasw205lg6s7izx8jypl8rrpjwshmv83ql";
       type = "gem";
     };
-    version = "3.2.1";
+    version = "3.3.0";
   };
   ruby_dep = {
     source = {
@@ -292,10 +292,10 @@
     dependencies = ["sass-listen"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sy7xsbgpcy90j5ynbq967yplffp74pvph3r8ivn2sv2b44q6i61";
+      sha256 = "18c6prbw9wl8bqhb2435pd9s0lzarl3g7xf8pmyla28zblvwxmyh";
       type = "gem";
     };
-    version = "3.5.7";
+    version = "3.6.0";
   };
   sass-listen = {
     dependencies = ["rb-fsevent" "rb-inotify"];
diff --git a/pkgs/applications/misc/jekyll/full/Gemfile.lock b/pkgs/applications/misc/jekyll/full/Gemfile.lock
index 01e4f368223..5fe2d108500 100644
--- a/pkgs/applications/misc/jekyll/full/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/full/Gemfile.lock
@@ -16,7 +16,7 @@ GEM
       execjs
     coffee-script-source (1.11.1)
     colorator (1.1.0)
-    concurrent-ruby (1.0.5)
+    concurrent-ruby (1.1.1)
     em-websocket (0.5.1)
       eventmachine (>= 0.12.9)
       http_parser.rb (~> 0.6.0)
@@ -34,7 +34,7 @@ GEM
     http_parser.rb (0.6.0)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    jekyll (3.8.4)
+    jekyll (3.8.5)
       addressable (~> 2.4)
       colorator (~> 1.0)
       em-websocket (~> 0.5)
@@ -68,14 +68,14 @@ GEM
       jekyll (~> 3.3)
     jekyll-sitemap (1.2.0)
       jekyll (~> 3.3)
-    jekyll-watch (2.0.0)
+    jekyll-watch (2.1.2)
       listen (~> 3.0)
     jemoji (0.10.1)
       gemoji (~> 3.0)
       html-pipeline (~> 2.2)
       jekyll (~> 3.0)
     kramdown (1.17.0)
-    liquid (4.0.0)
+    liquid (4.0.1)
     liquid-c (3.0.0)
       liquid (>= 3.0.0)
     listen (3.1.5)
@@ -90,11 +90,11 @@ GEM
     minitest (5.11.3)
     multi_json (1.13.1)
     multipart-post (2.0.0)
-    nokogiri (1.8.4)
+    nokogiri (1.8.5)
       mini_portile2 (~> 2.3.0)
-    octokit (4.12.0)
+    octokit (4.13.0)
       sawyer (~> 0.8.0, >= 0.5.3)
-    pathutil (0.16.1)
+    pathutil (0.16.2)
       forwardable-extended (~> 2.6)
     public_suffix (3.0.3)
     pygments.rb (1.2.1)
@@ -105,10 +105,10 @@ GEM
     rdiscount (2.2.0.1)
     rdoc (6.0.4)
     redcarpet (3.4.0)
-    rouge (3.2.1)
+    rouge (3.3.0)
     ruby_dep (1.5.0)
     safe_yaml (1.0.4)
-    sass (3.5.7)
+    sass (3.6.0)
       sass-listen (~> 4.0.0)
     sass-listen (4.0.0)
       rb-fsevent (~> 0.9, >= 0.9.4)
@@ -152,4 +152,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.3.1)
 
 BUNDLED WITH
-   1.16.3
+   1.16.4
diff --git a/pkgs/applications/misc/jekyll/full/gemset.nix b/pkgs/applications/misc/jekyll/full/gemset.nix
index 3e92d3f28a0..4e33cd6ccdc 100644
--- a/pkgs/applications/misc/jekyll/full/gemset.nix
+++ b/pkgs/applications/misc/jekyll/full/gemset.nix
@@ -62,10 +62,10 @@
   concurrent-ruby = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      sha256 = "1bnr2dlj2a11qy3rwh6m1mv5419vy32j2axk3ln7bphyvwn7pli0";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.1.1";
   };
   em-websocket = {
     dependencies = ["eventmachine" "http_parser.rb"];
@@ -163,10 +163,10 @@
     dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01rnf0y7wx4rzh2ag74bg37vkxbg8m4nf450lypgh4khrarr3bhw";
+      sha256 = "1nn2sc308l2mz0yiall4r90l6vy67qp4sy9zapi73a948nd4a5k3";
       type = "gem";
     };
-    version = "3.8.4";
+    version = "3.8.5";
   };
   jekyll-avatar = {
     dependencies = ["jekyll"];
@@ -261,10 +261,10 @@
     dependencies = ["listen"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m7scvj3ki8bmyx5v8pzibpg6my10nycnc28lip98dskf8iakprp";
+      sha256 = "1s9ly83sp8albvgdff12xy2h4xd8lm6z2fah4lzmk2yvp85jzdzv";
       type = "gem";
     };
-    version = "2.0.0";
+    version = "2.1.2";
   };
   jemoji = {
     dependencies = ["gemoji" "html-pipeline" "jekyll"];
@@ -286,10 +286,10 @@
   liquid = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17fa0jgwm9a935fyvzy8bysz7j5n1vf1x2wzqkdfd5k08dbw3x2y";
+      sha256 = "0bs9smxgj29s4k76zfj09f7mhd35qwm9zki1yqa4jfwiki8v97nw";
       type = "gem";
     };
-    version = "4.0.0";
+    version = "4.0.1";
   };
   liquid-c = {
     dependencies = ["liquid"];
@@ -370,28 +370,28 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz";
       type = "gem";
     };
-    version = "1.8.4";
+    version = "1.8.5";
   };
   octokit = {
     dependencies = ["sawyer"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1lki5vlsiijdmhaqdvr29zmcyvrlmkgi0x92hgan2194l2ikfjlh";
+      sha256 = "1yh0yzzqg575ix3y2l2261b9ag82gv2v4f1wczdhcmfbxcz755x6";
       type = "gem";
     };
-    version = "4.12.0";
+    version = "4.13.0";
   };
   pathutil = {
     dependencies = ["forwardable-extended"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wc18ms1rzi44lpjychyw2a96jcmgxqdvy2949r4vvb5f4p0lgvz";
+      sha256 = "12fm93ljw9fbxmv2krki5k5wkvr7560qy8p4spvb9jiiaqv78fz4";
       type = "gem";
     };
-    version = "0.16.1";
+    version = "0.16.2";
   };
   public_suffix = {
     source = {
@@ -454,10 +454,10 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f";
+      sha256 = "1digsi2s8wyzx8vsqcxasw205lg6s7izx8jypl8rrpjwshmv83ql";
       type = "gem";
     };
-    version = "3.2.1";
+    version = "3.3.0";
   };
   ruby_dep = {
     source = {
@@ -479,10 +479,10 @@
     dependencies = ["sass-listen"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sy7xsbgpcy90j5ynbq967yplffp74pvph3r8ivn2sv2b44q6i61";
+      sha256 = "18c6prbw9wl8bqhb2435pd9s0lzarl3g7xf8pmyla28zblvwxmyh";
       type = "gem";
     };
-    version = "3.5.7";
+    version = "3.6.0";
   };
   sass-listen = {
     dependencies = ["rb-fsevent" "rb-inotify"];
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix
index 97e371e9e72..d15926ba6fb 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/misc/kdeconnect/default.nix
@@ -20,12 +20,12 @@
 
 stdenv.mkDerivation rec {
   pname = "kdeconnect";
-  version = "1.3.1";
+  version = "1.3.3";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/src/${pname}-kde-${version}.tar.xz";
-    sha256 = "0rzjbn4d2lh81n19dd3a5ilm8qml3zs3g3ahg75avcw8770rr344";
+    sha256 = "1vac0mw1myrswr61adv7lgif0c4wzw5wnsj0sqxj6msp4l4pfgsg";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/latte-dock/default.nix b/pkgs/applications/misc/latte-dock/default.nix
index 6d22be32afa..5af5d558dd7 100644
--- a/pkgs/applications/misc/latte-dock/default.nix
+++ b/pkgs/applications/misc/latte-dock/default.nix
@@ -3,12 +3,12 @@
 
 mkDerivation rec {
   pname = "latte-dock";
-  version = "0.8.1";
+  version = "0.8.2";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://download.kde.org/stable/${pname}/${name}.tar.xz";
-    sha256 = "1f480ahrsxrksiiyspg7kb1hnz4vcjbs3w039cjkq2vp4wvjd74q";
+    sha256 = "1acwgxg9swmazi9bg5a0iyyin07h2gvp3mhbn6cfqqhpmndqxfdx";
     name = "${name}.tar.xz";
   };
 
diff --git a/pkgs/applications/misc/mlterm/default.nix b/pkgs/applications/misc/mlterm/default.nix
index 31793031dc1..c872af68cef 100644
--- a/pkgs/applications/misc/mlterm/default.nix
+++ b/pkgs/applications/misc/mlterm/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   name = "mlterm-${version}";
-  version = "3.8.6";
+  version = "3.8.7";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
-    sha256 = "06zylbinh84s9v79hrlvv44rd57z7kvgz9afbps3rjcbncxcmivd";
+    sha256 = "10j7q7rk6ck86xl1898maxhgkp1h7vy7nliv9sk5bqgs7rdwn4kl";
   };
 
   nativeBuildInputs = [ pkgconfig autoconf ];
diff --git a/pkgs/applications/misc/multimon-ng/default.nix b/pkgs/applications/misc/multimon-ng/default.nix
index 99d511d413c..3fb26801775 100644
--- a/pkgs/applications/misc/multimon-ng/default.nix
+++ b/pkgs/applications/misc/multimon-ng/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, qt4, qmake4Hook, libpulseaudio }:
 let
-  version = "1.1.5";
+  version = "1.1.6";
 in
 stdenv.mkDerivation {
   name = "multimon-ng-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     owner = "EliasOenal";
     repo = "multimon-ng";
     rev = "${version}";
-    sha256 = "00h884hn5afrx5i52xmngpsv3204hgb7xpw9my3lm8sajmfrjj1g";
+    sha256 = "1a166mh73x77yrrnhhhzk44qrkgwav26vpidv1547zj3x3m8p0bm";
   };
 
   buildInputs = [ qt4 libpulseaudio ];
diff --git a/pkgs/applications/misc/mupdf/darwin.patch b/pkgs/applications/misc/mupdf/darwin.patch
index 7466fc2ca62..be1b84b0012 100644
--- a/pkgs/applications/misc/mupdf/darwin.patch
+++ b/pkgs/applications/misc/mupdf/darwin.patch
@@ -1,47 +1,30 @@
-diff --git a/Makerules b/Makerules
---- a/Makerules
-+++ b/Makerules
-@@ -81,22 +81,10 @@ HAVE_GLUT ?= yes
- SYS_GLUT_CFLAGS := -Wno-deprecated-declarations
- SYS_GLUT_LIBS := -framework GLUT -framework OpenGL
- 
--CC = xcrun cc
--AR = xcrun ar
--LD = xcrun ld
--RANLIB_CMD = xcrun ranlib $@
--
--# Linux uses pkg-config for system libraries.
--else ifeq "$(OS)" "Linux"
+diff -ruN mupdf-1.14.0-source.orig/Makerules mupdf-1.14.0-source/Makerules
+--- mupdf-1.14.0-source.orig/Makerules	2018-11-02 06:57:12.114012496 +0100
++++ mupdf-1.14.0-source/Makerules	2018-11-02 10:11:56.717232992 +0100
+@@ -80,13 +80,6 @@
+   HAVE_GLUT := yes
+   SYS_GLUT_CFLAGS := -Wno-deprecated-declarations
+   SYS_GLUT_LIBS := -framework GLUT -framework OpenGL
+-  CC = xcrun cc
+-  AR = xcrun ar
+-  LD = xcrun ld
+-  RANLIB = xcrun ranlib
 -
- HAVE_PTHREAD := yes
- SYS_PTHREAD_CFLAGS :=
- SYS_PTHREAD_LIBS := -lpthread
+-else ifeq ($(OS),Linux)
+-  HAVE_OBJCOPY := yes
  
--HAVE_GLUT := yes
--SYS_GLUT_CFLAGS :=
--SYS_GLUT_LIBS := -lglut -lGL
--
- ifeq "$(shell pkg-config --exists 'libcrypto >= 1.1.0' && echo yes)" "yes"
- HAVE_LIBCRYPTO := yes
- SYS_LIBCRYPTO_CFLAGS := -DHAVE_LIBCRYPTO $(shell pkg-config --cflags libcrypto)
-@@ -113,7 +101,7 @@ SYS_CURL_CFLAGS += $(shell pkg-config --cflags openssl)
- SYS_CURL_DEPS += $(shell pkg-config --libs openssl)
- endif
- endif
--SYS_CURL_DEPS += -lpthread -lrt
-+SYS_CURL_DEPS += -lpthread
+   ifeq ($(shell pkg-config --exists freetype2 && echo yes),yes)
+ 	SYS_FREETYPE_CFLAGS := $(shell pkg-config --cflags freetype2)
+@@ -119,12 +112,6 @@
+ 	SYS_CURL_LIBS := $(shell pkg-config --libs libcurl)
+   endif
  
- ifeq "$(shell pkg-config --exists x11 xext && echo yes)" "yes"
- HAVE_X11 := yes
-diff --git a/platform/gl/gl-main.c b/platform/gl/gl-main.c
-index d58f7ba..808af18 100644
---- a/platform/gl/gl-main.c
-+++ b/platform/gl/gl-main.c
-@@ -16,6 +16,7 @@ void glutExit(void) {}
- void glutMouseWheelFunc(void *fn) {}
- void glutInitErrorFunc(void *fn) {}
- void glutInitWarningFunc(void *fn) {}
-+#define glutSetOption(X,Y)
- #endif
- 
- enum
+-  HAVE_GLUT := yes
+-  ifeq ($(HAVE_GLUT),yes)
+-	SYS_GLUT_CFLAGS :=
+-	SYS_GLUT_LIBS := -lglut -lGL
+-  endif
+-
+   HAVE_X11 := $(shell pkg-config --exists x11 xext && echo yes)
+   ifeq ($(HAVE_X11),yes)
+ 	X11_CFLAGS := $(shell pkg-config --cflags x11 xext)
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index bce2a79cde3..d4f59272c9c 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, freetype, harfbuzz, openjpeg
+{ stdenv, lib, fetchurl, pkgconfig, freetype, harfbuzz, openjpeg
 , jbig2dec, libjpeg , darwin
 , enableX11 ? true, libX11, libXext, libXi, libXrandr
 , enableCurl ? true, curl, openssl
@@ -14,23 +14,17 @@ let
 
 
 in stdenv.mkDerivation rec {
-  version = "1.13.0";
+  version = "1.14.0";
   name = "mupdf-${version}";
 
   src = fetchurl {
     url = "https://mupdf.com/downloads/archive/${name}-source.tar.gz";
-    sha256 = "02faww5bnjw76k6igrjzwf0lnw4xd9ckc8d6ilc3c4gfrdi6j707";
+    sha256 = "093p7lv6pgyymagn28n58fs0np928r0i5p2az9cc4gwccwx4hhy4";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "CVE-2018-10289.patch";
-      url = "https://bugs.ghostscript.com/attachment.cgi?id=15230";
-      sha256 = "0jmpacxd9930g6k57kda9jrcrbk75whdlv8xwmqg5jwn848qvy4q";
-    })
-  ]
+  patches =
     # Use shared libraries to decrease size
-    ++ stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.13-shared_libs-1.patch
+       stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch
     ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch
   ;
 
@@ -38,7 +32,7 @@ in stdenv.mkDerivation rec {
     sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c
   '';
 
-  makeFlags = [ "prefix=$(out)" ];
+  makeFlags = [ "prefix=$(out) USE_SYSTEM_LIBS=yes" ];
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut libGLU ]
                 ++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ]
diff --git a/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch b/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch
deleted file mode 100644
index e29f1f52077..00000000000
--- a/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch
+++ /dev/null
@@ -1,45 +0,0 @@
---- mupdf-1.12.0-source.orig/Makefile	2017-12-13 15:00:30.000000000 +0100
-+++ mupdf-1.12.0-source/Makefile	2017-12-31 00:05:23.003277481 +0100
-@@ -14,7 +14,7 @@
- # Do not specify CFLAGS or LIBS on the make invocation line - specify
- # XCFLAGS or XLIBS instead. Make ignores any lines in the makefile that
- # set a variable that was set on the command line.
--CFLAGS += $(XCFLAGS) -Iinclude
-+CFLAGS += $(XCFLAGS) -Iinclude -fPIC
- LIBS += $(XLIBS) -lm
- 
- LIBS += $(FREETYPE_LIBS)
-@@ -312,10 +312,10 @@
- 
- # --- Library ---
- 
--MUPDF_LIB = $(OUT)/libmupdf.a
--THIRD_LIB = $(OUT)/libmupdfthird.a
--THREAD_LIB = $(OUT)/libmuthreads.a
--PKCS7_LIB = $(OUT)/libmupkcs7.a
-+MUPDF_LIB = $(OUT)/libmupdf.so
-+THIRD_LIB = $(OUT)/libmupdfthird.so
-+THREAD_LIB = $(OUT)/libmuthreads.so
-+PKCS7_LIB = $(OUT)/libmupkcs7.so
- 
- MUPDF_OBJ := \
- 	$(FITZ_OBJ) \
-@@ -343,13 +343,17 @@
- 	$(ZLIB_OBJ) \
- 	$(LCMS2_OBJ)
- 
--$(MUPDF_LIB) : $(MUPDF_OBJ)
-+$(MUPDF_LIB) : $(MUPDF_OBJ) $(THIRD_LIB) $(THREAD_LIB)
-+	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf.so -Wl,--no-undefined
- $(THIRD_LIB) : $(THIRD_OBJ)
-+	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupdfthird.so -Wl,--no-undefined
- $(THREAD_LIB) : $(THREAD_OBJ)
-+	$(LINK_CMD) -shared -Wl,-soname -Wl,libmuthreads.so -Wl,--no-undefined -lpthread
- $(PKCS7_LIB) : $(PKCS7_OBJ)
-+	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupkcs7.so
- 
--INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB)
-+INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) $(PKCS7_LIB)
- 
- # --- Tools and Apps ---
- 
diff --git a/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch b/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch
new file mode 100644
index 00000000000..131a1bbbf6b
--- /dev/null
+++ b/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch
@@ -0,0 +1,39 @@
+--- mupdf-1.14.0-source.orig/Makefile	2018-11-02 06:57:12.114012496 +0100
++++ mupdf-1.14.0-source/Makefile	2018-11-02 09:57:10.067945307 +0100
+@@ -20,7 +20,7 @@
+ # Do not specify CFLAGS or LIBS on the make invocation line - specify
+ # XCFLAGS or XLIBS instead. Make ignores any lines in the makefile that
+ # set a variable that was set on the command line.
+-CFLAGS += $(XCFLAGS) -Iinclude
++CFLAGS += $(XCFLAGS) -Iinclude -fPIC
+ LIBS += $(XLIBS) -lm
+ 
+ ifneq ($(threading),no)
+@@ -190,17 +190,21 @@
+ 
+ # --- Library ---
+ 
+-MUPDF_LIB = $(OUT)/libmupdf.a
+-THIRD_LIB = $(OUT)/libmupdf-third.a
+-THREAD_LIB = $(OUT)/libmupdf-threads.a
+-PKCS7_LIB = $(OUT)/libmupdf-pkcs7.a
++MUPDF_LIB = $(OUT)/libmupdf.so
++THIRD_LIB = $(OUT)/libmupdf-third.so
++THREAD_LIB = $(OUT)/libmupdf-threads.so
++PKCS7_LIB = $(OUT)/libmupdf-pkcs7.so
+ 
+-$(MUPDF_LIB) : $(MUPDF_OBJ)
++$(MUPDF_LIB) : $(MUPDF_OBJ) $(THIRD_LIB) $(THREAD_LIB)
++	$(LINK_CMD) $(THIRD_LIBS) -shared -Wl,-soname -Wl,libmupdf.so -Wl,--no-undefined
+ $(THIRD_LIB) : $(THIRD_OBJ)
++	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-third.so -Wl,--no-undefined
+ $(THREAD_LIB) : $(THREAD_OBJ)
++	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-threads.so -Wl,--no-undefined -lpthread
+ $(PKCS7_LIB) : $(PKCS7_OBJ)
++	$(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-pkcs7.so
+ 
+-INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB)
++INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) $(PKCS7_LIB)
+ 
+ # --- Main tools and viewers ---
+ 
diff --git a/pkgs/applications/misc/osmium-tool/default.nix b/pkgs/applications/misc/osmium-tool/default.nix
new file mode 100644
index 00000000000..36e58cf5070
--- /dev/null
+++ b/pkgs/applications/misc/osmium-tool/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, cmake, libosmium, protozero, boost, bzip2, zlib, expat }:
+
+stdenv.mkDerivation rec {
+  name = "osmium-tool-${version}";
+  version = "1.9.1";
+
+  src = fetchFromGitHub {
+    owner = "osmcode";
+    repo = "osmium-tool";
+    rev = "v${version}";
+    sha256 = "1cwabjbrdpqbi2gl7448sgniiwwa73avi9l6pnvh4r0jia2wi5wk";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libosmium protozero boost bzip2 zlib expat ];
+
+  meta = with stdenv.lib; {
+    description = "Multipurpose command line tool for working with OpenStreetMap data based on the Osmium library";
+    homepage = "https://osmcode.org/osmium-tool/";
+    license = with licenses; [ gpl3 mit bsd3 ];
+    maintainers = with maintainers; [ das-g ];
+  };
+}
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
new file mode 100644
index 00000000000..1a46b275a5e
--- /dev/null
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -0,0 +1,87 @@
+{ stdenv, lib, makeWrapper, fetchurl
+, dpkg, wrapGAppsHook, autoPatchelfHook
+, gtk3, cairo, gnome2, atk, gdk_pixbuf, glib
+, at-spi2-atk, dbus, libX11, libxcb, libXi
+, libXcursor, libXdamage, libXrandr, libXcomposite
+, libXext, libXfixes, libXrender, libXtst, libXScrnSaver
+, nss, nspr, alsaLib, cups, fontconfig, expat
+, libudev0-shim, glibc, curl, openssl, libnghttp2, gnome3 }:
+
+
+stdenv.mkDerivation rec {
+  name = "polar-bookshelf-${version}";
+  version = "1.0.11";
+
+  # fetching a .deb because there's no easy way to package this Electron app
+  src = fetchurl {
+    url = "https://github.com/burtonator/polar-bookshelf/releases/download/v${version}/polar-bookshelf-${version}-amd64.deb";
+    sha256 = "11rrwd5cr984nhgrib12hx6k74hzgmb3cfk6qnr1l604dk9pqfqx";
+  };
+
+  buildInputs = [
+    gnome3.gsettings_desktop_schemas
+    glib
+    gtk3
+    cairo
+    gnome2.pango
+    atk
+    gdk_pixbuf
+    at-spi2-atk
+    dbus
+    libX11
+    libxcb
+    libXi
+    libXcursor
+    libXdamage
+    libXrandr
+    libXcomposite
+    libXext
+    libXfixes
+    libXrender
+    libXtst
+    libXScrnSaver
+    nss
+    nspr
+    alsaLib
+    cups
+    fontconfig
+    expat
+  ];
+
+  nativeBuildInputs = [ 
+    wrapGAppsHook
+    autoPatchelfHook
+    makeWrapper 
+    dpkg
+  ];
+
+  runtimeLibs = lib.makeLibraryPath [ libudev0-shim glibc curl openssl libnghttp2 ];
+
+  unpackPhase = "dpkg-deb -x $src .";
+
+  installPhase = ''
+    mkdir -p $out/share/polar-bookshelf
+    mkdir -p $out/bin
+    mkdir -p $out/lib
+
+    mv opt/Polar\ Bookshelf/* $out/share/polar-bookshelf
+    mv $out/share/polar-bookshelf/*.so $out/lib
+
+    mv usr/share/* $out/share/
+
+    ln -s $out/share/polar-bookshelf/polar-bookshelf $out/bin/polar-bookshelf
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "${runtimeLibs}" )
+  '';
+
+  meta = {
+    homepage = https://getpolarized.io/;
+    description = "Personal knowledge repository for PDF and web content supporting incremental reading and document annotation";
+    license = stdenv.lib.licenses.gpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.noneucat ];
+  };
+
+}
diff --git a/pkgs/applications/misc/qtbitcointrader/default.nix b/pkgs/applications/misc/qtbitcointrader/default.nix
index 90908c67b4e..4865ed7ee00 100644
--- a/pkgs/applications/misc/qtbitcointrader/default.nix
+++ b/pkgs/applications/misc/qtbitcointrader/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, qt5 }:
 
 let
-  version = "1.40.13";
+  version = "1.40.23";
 in
 stdenv.mkDerivation {
   name = "qtbitcointrader-${version}";
 
   src = fetchurl {
     url = "https://github.com/JulyIGHOR/QtBitcoinTrader/archive/v${version}.tar.gz";
-    sha256 = "0d6b9ls742nghzg5y97dx7myvv8i88f0s27lhr52yy4833hdxdwn";
+    sha256 = "11r2jzb09a62hf9fkg6aw8pg2js8c87k6lba9xz2q8n6d6jv44r1";
   };
 
   buildInputs = [ qt5.qtbase qt5.qtmultimedia qt5.qtscript ];
diff --git a/pkgs/applications/misc/tzupdate/default.nix b/pkgs/applications/misc/tzupdate/default.nix
index 3a723907c92..a5d2f206f3a 100644
--- a/pkgs/applications/misc/tzupdate/default.nix
+++ b/pkgs/applications/misc/tzupdate/default.nix
@@ -5,11 +5,11 @@ let
 in
 buildPythonApplication rec {
   pname = "tzupdate";
-  version = "1.2.0";
+  version = "1.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1wj2r1wirnn5kllaasdldimvp3cc3w7w890iqrjksz5wwjbnj8pk";
+    sha256 = "085kp4v9ijhkfvr0r5rzn4z7nrkb2qig05j0bajb0gkgynwf8wnz";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix
index dd95b231bd1..20e3c3daccb 100644
--- a/pkgs/applications/misc/visidata/default.nix
+++ b/pkgs/applications/misc/visidata/default.nix
@@ -4,13 +4,13 @@
 buildPythonApplication rec {
   name = "${pname}-${version}";
   pname = "visidata";
-  version = "1.3.1";
+  version = "1.5";
 
   src = fetchFromGitHub {
     owner = "saulpw";
     repo = "visidata";
     rev = "v${version}";
-    sha256 = "1d5sx1kfil1vjkynaac5sjsnn9azxxw834gwbh9plzd5fwxg4dz2";
+    sha256 = "0schpfksxddbsv0s54pv1jrf151nw9kr51m41fp0ycnw7z2jqirm";
   };
 
   propagatedBuildInputs = [dateutil pyyaml openpyxl xlrd h5py fonttools
diff --git a/pkgs/applications/misc/xca/default.nix b/pkgs/applications/misc/xca/default.nix
index 7b95cf002ca..280b3012872 100644
--- a/pkgs/applications/misc/xca/default.nix
+++ b/pkgs/applications/misc/xca/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   name = "xca-${version}";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner  = "chris2511";
     repo   = "xca";
     rev    = "RELEASE.${version}";
-    sha256 = "1d09329a80axwqhxixwasd8scsmh23vsq1076amy5c8173s4ambi";
+    sha256 = "0slfqmz0b01lwmrv4h78hmrsdrhcyc7sjzsxcw05ylgmhvdq3dw9";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix
index ed90689da1e..8149c6fe853 100644
--- a/pkgs/applications/misc/xmr-stak/default.nix
+++ b/pkgs/applications/misc/xmr-stak/default.nix
@@ -12,13 +12,13 @@ in
 
 stdenv'.mkDerivation rec {
   name = "xmr-stak-${version}";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchFromGitHub {
     owner = "fireice-uk";
     repo = "xmr-stak";
     rev = "${version}";
-    sha256 = "0n042vxrr52k6x86h06f298flmxghsfh2a3kqnc41r7p7qybgjj8";
+    sha256 = "0fk51s0789arwkidgx4c5y4shdvawwc132dzn8z71fpi6kh6ggvm";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";
diff --git a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
index 9d86dfe4a44..709c1edb0b8 100644
--- a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
@@ -1,13 +1,20 @@
-{ stdenv, lib, meson, ninja, fetchurl, pkgconfig, zathura_core, cairo,
-gtk-mac-integration, girara, mupdf }:
+{ stdenv, lib, meson, ninja, fetchurl, fetchFromGitHub
+, pkgconfig, zathura_core, cairo , gtk-mac-integration, girara, mupdf }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.3";
+  version = "0.3.4";
   name = "zathura-pdf-mupdf-${version}";
 
-  src = fetchurl {
-    url = "https://pwmt.org/projects/zathura-pdf-mupdf/download/${name}.tar.xz";
-    sha256 = "1zbdqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j";
+  # pwmt.org server was down at the time of last update
+  # src = fetchurl {
+  #   url = "https://pwmt.org/projects/zathura-pdf-mupdf/download/${name}.tar.xz";
+  #   sha256 = "1zbaqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j";
+  # };
+  src = fetchFromGitHub {
+    owner = "pwmt";
+    repo = "zathura-pdf-mupdf";
+    rev = version;
+    sha256 = "1m4w4jrybpjmx6pi33a5saxzmfd8rrym2k13jpd1fv543s17d9dy";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig ];
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 54b588fb097..9f81a2fda38 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,995 +1,995 @@
 {
-  version = "63.0";
+  version = "63.0.1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ach/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ach/firefox-63.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "0557937473fe8758371d21ec4b0d983ac2db59e8b9d3d627a318d3adf9a0cd0712f3e9b375f0cd6d9acf3f39b0c42fbcdb31364c5973916c7287f618a5f074ec";
+      sha512 = "fcf06e003f7e3bfc79288d9f0199ad2ca13a91eee718437d25c745381dbb351483b992b0cad929e9c869d4a993eee66b2206ddb6e98023f12f4351f41e61313b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/af/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/af/firefox-63.0.1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "4b0d715ba2a7edd648bcc2c396ea764e8a29fce69d526803e6621053f3886df44d758fdbf2c8af8a9e3acd307e10dcdcf3e13eff0e60bce28885b699cf2426d0";
+      sha512 = "8b8515147df6deaff4356fee727acb377c3f46cc288271da813f6bb752a3a62585262d0e5a5760d6bc5c8d6f7e84b2d76825ff55dab8bdb5e20fe345230a3bc0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/an/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/an/firefox-63.0.1.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "79665a9586e0fceacb0a49560d0fc2a72a76187799563b0f8ef972043020744dafc971cb94b52b30df6056673aea4e0885f994d55c99c7976f9f7805c30e5796";
+      sha512 = "c532a212522ad51e0718339e1962f275b49d15a0e67cf397c1fc9dfdfddeb746a59572ef2cf1661f480736ecb7a77ce7da62f65f3e7898e2fe53321512820a70";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ar/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ar/firefox-63.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "d338b5fdf1dc4bb920bd372ba69934ddf39bdc7e37b725a010fbc9fd71ff487181d898e863c7ce9a21039d51d256c4ec1ca2cdcf0da078788243e867b0bc151f";
+      sha512 = "35fbbb6d2f53293eaee86d9d402d556abea5a5c62a1a282f35ea97d7afee57e2b222ad96f2c91ac8b30f6501e96d8702a52e2f96556abd838c244a36720d123f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/as/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/as/firefox-63.0.1.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "2022a993455456d0c900ddaf8e6a74a3d5478edec456df0cba627dfa1ad41f0274053c21b9c1ca4ca6b640e26993d60ffcc2f879c68143699f6e31d43f7acc19";
+      sha512 = "86fc2f0b5089997dff76f5b5b4ef1e4be465da16a8fc119ab88ddf96cf6fbdfb4dca1e384ce336a033ca5430f041c60d34afaa3dfee9a8afb93d26c7717314b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ast/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ast/firefox-63.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "1eca2ca8385215a886a16de77988d76e41b7257a41fceacd3df18e21ba82c8c67df045aa8201a2b18032f1690997b4b8bfb55a80c47341335aab45cbb15eefd1";
+      sha512 = "ba960a426f0c6ccd703e3b12bc08c29dff71cb829a66346cceb689233c62777ed22ea047624833f6584867cf78c040684cccbae99a9518eaff069af756eeb983";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/az/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/az/firefox-63.0.1.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "3788f68a69a8605e3185e5e776edf3339a650e010fc4810f574e5c0a62c9aaf30c84151ea169c005c1f381c3eaa4c3a8f6758c336a9423cfeaffb83aef96dc73";
+      sha512 = "6e2e9231fe88fed849c2d1850f24ab169a901b68be4bde9d9875d2cb736ae4c1456f53c2964f4f00b80ecf2e46543b4cd25cfed31cb04dbe4fae3a040432352c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/be/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/be/firefox-63.0.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "f538b9f8d566f7f3c5bc92a24127966d618b47dd368ecbb4fae0e5c90045bb75cb1b921edd865227ca6c34e3e2e037acb81d9f7368cfdee59cbdcf6ff2798ffe";
+      sha512 = "379ec5a79a4af1b141485230b9c5af0b622845df43499616417debead4db466ad16f7a63c1c0e8c09b4bddae288772bfcd2aea115a780a551e90001b2d353364";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/bg/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/bg/firefox-63.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "497a95b4309e60093ec3f1b0a72ac05d1b9a47d78799ca33492394c7bf0b81e64e60103218c479b4ff3a3b2acfcf95493f43be23feb89fbdfebe42ec8a124132";
+      sha512 = "4aed2144069d39f00a0ab2f45ca7532f9f97684ff18cb2596b20b6639edbd793e0c4857b784657c354caa7503c2df6497ef0f298fbf438954c2c46de3c2f29b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/bn-BD/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/bn-BD/firefox-63.0.1.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "3c2123b34ebb2e3c6def220c679069b31b3d7a2110ec2eadea88a930b6582fcab0452bce97f0302a39af324ca1b58ec49ed49aa865ade7d814152bf16fd1cadc";
+      sha512 = "bf87308c72330e32efe1473d879f36097fc1d0e697ab6f9034a03c5e872353ab5c2cb7391aa274b35e08c6102986a08ede184810e821f8ba02838d469b623528";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/bn-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/bn-IN/firefox-63.0.1.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "55fdb9a3efe54db994706fb8345918f5c19f1a24f77107e6819dd1272a09900ef3534897c1d3b38c331c94813446694b2422356ae6ca2356338d6253e15a37e1";
+      sha512 = "0063c6dce614b8efa9a663c60d2d393816f6a65c87aa1a1a6a96f501cfc7e86a05b038ab5173b13bd86a2a02dcb3ac6ed15bb4e4c8eefd371027e07cb31c1e5c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/br/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/br/firefox-63.0.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "c35e40bfd6b1fb06c8426c6f9f834f8a6d658ced8892c575079d852dbb2e24f09657b1f37bc8af3588cc2c8b9ba1924cf5a85c7be0d6db4334c592f03abeb142";
+      sha512 = "93c3a9a59386c211c32c9aec1aeca3ab0a3f0b878001f6485a42283c2ca6fedc6847d7c2fddea870da462967dfddb94f518cbe0f115838b313d803ae8f12df65";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/bs/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/bs/firefox-63.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "ea63659f3a930b4d0a8add69cd8ca1a3d98e015aab1b6bc607c8e0fbd610de8fdc49ac290c61bcd762092d4f56554f70f029a18be4bcf426cafffc6fe9677699";
+      sha512 = "d191539482457407ae37e47b52b4d79eb99ebf2ed2999921c695268b6e3dc75b96ba93131f70666b29a3c2e73bad0a470abfd99c2f51d2ea3eb4af52296846fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ca/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ca/firefox-63.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "10993691fe9072706f1c092199dadea2f1ffbcfecede53771326dd03b88387133aa23e75f96bebe7117eb02ea2775e5758c36064c5ddd72f7aab441feca659e4";
+      sha512 = "41520a18c201bea97b56a70a74546f7a2f2f1909f303740e14cf79701499bd26494cd453ebd630ce100ddd17b5ffcea08e8a9d95f908425da0a9ad22dd751dea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/cak/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/cak/firefox-63.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "0413afe78e4c8ca1af3edad09c801607c73069366a255d4d1d9e6d4589ba3757c732a2cd691b8f223ab10cc99cdcc322e98d8daca49b3107082a8cb41cd278ff";
+      sha512 = "24aaa62ff598ee48d9c9b6b19e92adc38d00eeaec7d7d562160955c751ba5e3b01f281cc59a0fcecdfd24d6a792f070c151c58ba23d1db55699c25988ea9412f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/cs/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/cs/firefox-63.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "d4ee0844c1587ed0d65d40a444fd130022f99831749f721523b0f594d4967e723fd8af10c363f53b4fdca91f676962882e93327dd5b1529d3d66c27f17bf29a4";
+      sha512 = "b29c9ae988b40ba77cf036d92b4d9cbcdc8af0c7c8e76f97222a3544bef06c81682fa35ab9e24a5f3d224873d2359e3c1f73b61de4101106ab4da57d3a362d44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/cy/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/cy/firefox-63.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "103177bdcb204d0da7dc8fbfcd82a52bbf3956b13f716de1547252a076d68b21f9bf4684ed63a62aa4635fa39cb776a64942d81333ebf41dfc5f12d6087261af";
+      sha512 = "99963d98d62d811c03b2a841fb97b31f10b5d14a98b5bc5918f4c7164663511efc9a36a7271a6927fcbcfe00fb7d15693a7d031f6305d9dbc0e7e0718699d314";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/da/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/da/firefox-63.0.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "38cc06165c713ffdb5a2bcef9b8e6c7f55c2e821c4e4c87d30b613cd78aa6320761e709f3a784a0f55da283dd7088ab67d0e58a16a90bbd182985d29691bd50e";
+      sha512 = "622cf4fd584b9e4bc07661874093b1281b53e985355679b914b5becdd78b25daa43b3e6f0a220707fbe21f4a41c85d81728ccd2af998ca0be938e8ae955d6e56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/de/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/de/firefox-63.0.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "076276ef8556922e80bf74aaf3624e6604eb904ec6dda35df7f91edf99c62015d1309ea1a5cc28d84ce96f9924dc908c81f959ecf93f2419156d07bb303fcbd9";
+      sha512 = "af9d143a4d5f26f81474681945b171fb9be80f7e679aeaeb08175d3b0957e274ea1ee4112781607c170a0af479dd45c5ec3d88b5cd39bac37e59d1343474dc02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/dsb/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/dsb/firefox-63.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "979013e2bc62db710891d95d8898857e51bc1a2073e3a56948af57c9676fdbc87b6a9d827177a5a1d7926f71d83e9df706c42ea98bca98fab998815daf50458d";
+      sha512 = "963604bcd19ee34949ab256e1276423d3de262a87d8d5f3e098cab11af2ed62ecb793b86817e54f490f5accd32d7c35a50aab583118eee79270e827032edc464";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/el/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/el/firefox-63.0.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "1f4e5983ca94ecd9da6d65ec7c39ef7e01296f957cbe3812a20981bafdd9a2c0e07bb5814b5caab781ed1f2f6fb2ce2079557e3b9bbc1422b2fb7d882b921ffb";
+      sha512 = "9831e750314c3514e6e885dc4930836e296537cb16c8a9da189c9f53d122e0731e30fc068fbdc8cefe2582aad715d9eb36746bf7b289a45410c99e8ffcc4ee8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/en-CA/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/en-CA/firefox-63.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "77a9038b33a15a2f12db383039f89d29f1e855aad6354375517726d28c5e1984fe77993cb802f17975488441ef36ac143c1e4e2d29c7104143db511229e9b28a";
+      sha512 = "6cb022756601db6273bfc2e84e9e7fc24e8d427ae5905c85b8f674132a740a9f7b1eb34562f996bb31be03cb7fa6173f3aff80fcec6c41c0e0e25a34180d8cc7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/en-GB/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/en-GB/firefox-63.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "62f5374d07b90e80d9f67b04a647f68fc75af267e9b9c04674d754b0d023ed9d78241a693f11504d5b74902328c68414be394923493c17c551a62d06621edf4d";
+      sha512 = "1ecfd9ed098a97c9b6952f5ee56560cc7e5c9ee8976a0e744e8c50debd2eb100e4f4d3842593dfd6244740b7b48a9e64e49b082345197f969e4a0b52f9866196";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/en-US/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/en-US/firefox-63.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "906376e344b9f01c5eca8a6e24386927a68613a74202062fe52de5bc1b9d1073103e9c59d19f40f33efabf0f5e4852210195691a73f1bd05db790e7c1eac5f28";
+      sha512 = "49d776cfb5f42c6e5ea1a55a80d9f6bad223080b16baa0d39de63534c25e68340091b4e16be5355d565f81291cb94fb996f03ae7e3e4c7a28021b0a0929daf58";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/en-ZA/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/en-ZA/firefox-63.0.1.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "895f9dbd5ef281a48e5c3124dcb668b9fe4d6b41a3402850e68e138190b756ab10292bd002c36a1f8391ff3598c48a8623552ac35d18d0948dbe194b28684f81";
+      sha512 = "b3c8b9282822eca4a0be69eb4b26cc9e6fb0e20e7cb0e8244a1e54a680dee570ada3f6085e4efab67c63b68cbea64c8978a3ea430a791ae1b3bd71d31c03302f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/eo/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/eo/firefox-63.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "defe31badc0ce4c41785abf6aef543584778e5c6f373300c2fc3582c89daaa500cc9aedac55e1a1569abd8eb0de207268e31b9eae61565e76a43eecf41ef774f";
+      sha512 = "c08f5dce7559e3e363b8b66a3402697ec1b62e893c825c5820c8a0978a6d41431101a479a59b04065bd36f50c044c79de4e45e23fdd0a819fbd379bdbf65be22";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/es-AR/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/es-AR/firefox-63.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "bfe81fbc669fa156c6741c62b00c9ebcf74fb2f49c92206c5ca79986358e7b8ec29d98d206c4d0e21e81a781ed8216fde5b072f0f1a19604ed7c3784b82829c5";
+      sha512 = "ebbc1b36010ee9988ad2f63b100d48e52be391ea85ef170a8838978471b9354aa1d9a55a27d8214d4639c60879fecd56f0a488a38da5520dfb79aab078571a35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/es-CL/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/es-CL/firefox-63.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "cd3bc97552a30c9eabf8627ef97db2d4f48f2fbce4c72b5e6b41000a623ab1782f87ee8ac61dde5e3fccc59a91f87b4a3b279b90de3b08e90293329bc85976d9";
+      sha512 = "aaa97d383fa7efa07d8958603f5bd5a0022bfd94f99d0644adf824544e4c1a932ec1b0bc10b78a409accd3c1e1e9e51231186f8063d9bf7cda5958447a27cc9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/es-ES/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/es-ES/firefox-63.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "1d761d479df22483c576598db8248b3ab6a7b838c518058c6903d7097452c4027b9c38cacd206063816669ce664501c138741044369de04eafcd40087ccc3688";
+      sha512 = "cd742475b06eaeee5edd8561c9c5b45e95f0544a3a9e607b961827bf3dac722ea1fa124dd2eecfd18e339cf784694d267a83efd09c798608d99db66c0cbc078b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/es-MX/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/es-MX/firefox-63.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "934aabdcb204dcdc80d9e35cf19aaf83dc235f95d597f5b2a6302635275aa68245932f4b5f1b2725ec84711e8d0f2c830aaa45406ada91efa2d21c8b31995939";
+      sha512 = "704856a075a4ddaf811856e3e2258e267bef132d9760e7ae61c81c5c832cbeece35cfd5018b69155a7673e93b439ab6997920164e6bf90d2564858385667b9a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/et/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/et/firefox-63.0.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "5b669b4adb7d14eb4550fcbcd05a1e7a1a186954bfba39d491248b177d057662227b672d2902273315c12e9d57bb944ea2df41d7cb35514fa00d79d235c178c0";
+      sha512 = "462bf71afc7ee40e2ddadd80f07d154b940075f1d88bd132513a6db776c6fb6ea98a02137cb60a3d8ad12c999313401ff4ec3fe498a2a2374cd8d11b6b0cc149";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/eu/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/eu/firefox-63.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "c8555e93e6cc7d4fe179ad68ad1b2fe3f0735134c8a30bb9911b0bf5475e169e07640eee85afa2c7193b27d96c8cebe2227d38e1ff7499b3470b68a04bff2953";
+      sha512 = "7869247c5b534874836ec636dcdd4186eaf5ad760eba1e7430b207d76454c5d9384f5b6d3ddd638380383504a17012ccd4c54acf4088aa428220e2be40e197ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/fa/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/fa/firefox-63.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "c607251f6b855fd86504fec3780ba66d8d451d76a16d0541fe5b96ba5b8d809ecd7d591209f3320bfb044463470b394862a6c0717cd9398048a154d6c2b93bad";
+      sha512 = "6dd1a2cda0e1e3837d8aa5fbbbd8a842dfedaa90a5e5b07249d904046b7645b5b025b90a2302e5b4751b958fa506305a9bedc89db7eabc663fc8a4461427572d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ff/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ff/firefox-63.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "d9850e4d78d6bebb9d342898bea876d66a9811ac62ffcd56ab8ca662a4db6bd872a643ac233e02fdebb9dc107349d7f0f258ad790ac11bfdd791a2d8336197a0";
+      sha512 = "2c5da87b5879283fab3f59f5a7e628464efc1132f36f753404a805a2805e0305642cdbd1f6cee22384b1fad26315666fdcbe954e28a1661b27a2d8d9731b3f46";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/fi/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/fi/firefox-63.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "8be60c2bc3c175aedc3a1c062107c5368f503bbea245e87f5f269c9faed3832ff8c93f221815637b3947c474b44be31f3ea09955e7a87d2be67454dbb4d4e9b4";
+      sha512 = "9c4fecc333e4cdd779ac3e0f08f6c5dfb65d685a82295d0d6b24ca5d7709d5287e1e21515b41cb86014e59b2c87b8fb83f1625b8a1e8b1e74c1819d21fc02c3e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/fr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/fr/firefox-63.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "ac559deff6caa20f40bb561e350129e765ba7f63ee8758dc01542fb5f685262c0bd6ec0d13fd65c196aecb352b72b62d10335d121edcca11500684fdb1be8be3";
+      sha512 = "3bf8845b1b1630fde8d86e0d163ddfa7d1bb2482f43e2cd22ed6208666087aa0af54a4bd2d93f56c0cec32a8621b5698531a5ae252cd1ceda197f9e4d773b47f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/fy-NL/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/fy-NL/firefox-63.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "c6a19730d2861a20a69ec8a7ded79377849554f21143e3b55ef0b009519b52d9ba2fa0f2e58ef592f3eba00305d0e2dcf44df958ed22043a83a86ed7fa72362a";
+      sha512 = "aa17ff3c7b218ccc959d1746a9597837f0b2d1b1cb068a5dc4639fe2858cd3aadd4f981290eed5bb7c9729f1418f4ddbc8d309107ca3deb6b7a57d67611af110";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ga-IE/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ga-IE/firefox-63.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "28c68d871e4e025eb22f19fc1c4d786185934bd6254f03061b95eea8459776c9c28a903e30edbcd53f6e0cc5b24b6c65e2311a6483e18620b246ca8ce2fc5470";
+      sha512 = "eaca615bbd2d675d9d1bedde308700226fcc7ad529f1d0a3a432b04b1f7cbac582ce99645f23805dc7dd39029210c0b71855d4126dcd69de635d5465885697ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/gd/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/gd/firefox-63.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "d6e9b226b893050925259a7de5dfc67104b6defc76778272adb8e5b41427a646549ddf6e38d58d9ee4bd27c476406ac9e65244fc57f78a3ef54d7c7bc758df80";
+      sha512 = "ed71b7907f8303ce9fdf6bc5b6aac7f7eb00b0be60eebc37f84158b22c54911479d2bd5122683ae0e2ffb662611e4510daae4cd17fe2271d3f361019a516d6fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/gl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/gl/firefox-63.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "3f73ec82235a8345c2e1e86b521f062a5f45bf0fdb884533c22f1661bff430c1a3c440c5fa5c209474c2eb542d1be25ab2c6a4aa50b872ffe34bb66ef2da6e0d";
+      sha512 = "d99b88e5530b08f406a85567070f3f4d709586815c7eb48254491442238b0cb5868a1afdc418739f8b33972ab94b38cad3a06a7211cff1a3e32ab5d0384e18a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/gn/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/gn/firefox-63.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "4be814c72579653264990737b7eefed0ed7f332da1317bbff3a0a1d6f45aecdac12552eb0e6897ac0bae64f261de6b46b36588623a8523a51b880d1bde5d763c";
+      sha512 = "0bc5d75e74d9b8aadda1d6a2c2379049bd269378a3c383b0afa787bbb4b35ab78a06492928a5c4aff2eb66f7897641f8c64240190e1987fdfb4059d743218266";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/gu-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/gu-IN/firefox-63.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "00670cb7caec8f841f17e613a86554182512e0aa49ff7c8298c9d3c9d364d7fd391063b890461cc41966e5facde0a8a325ac97e08bd0bd9d25858b32c348fa81";
+      sha512 = "8231b8dddf89310ca92707e2bd6ba84b3cdca7e22c641c0fb307fd45dfd1b7de6ff5f29413a7bc303adf0d7601eedb560680b016d1e896deef6ee93a8767adb2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/he/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/he/firefox-63.0.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "653538026ba533c7446108a2277dc7f87a2e519583d27c028be2b056c67299ceb9b2296dd83f94c3a043a2bb9fbb05de2260248d408f3279a7c8fc49e0e84416";
+      sha512 = "14625dd32723b4d207fa545959d8af1a78cec0601a7b1073086c5b2da20ab54e679bb248bbab5fab05628665727058c00175d6826915779423b5709d166f7315";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/hi-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/hi-IN/firefox-63.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "a4989edea0edf4f509d4387b225340a4b67805b3f8cd7af67b575b1b3b5a8cc98f9a8d6d2a05ee878e15dd8ac2b0c35f43fae52917a8b667098f1812e361fbef";
+      sha512 = "5e8c2792d5509e2cdaa95d26829827cb5d183a734e46d11d91f94406267a481e5d780e233475ab87901c260e7c1cfc0b9584fca8b300c076921eda140f71c3ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/hr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/hr/firefox-63.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "b762c1bf922e72a9cd8570012962fb63c5658de25fa08ce4532c6c96b7b06c0e13bc71b2306219a6e0219a8ef7aef168a8523cf39b1cc1e6362198fac0696545";
+      sha512 = "f1753eb8e18920507d210c16c6b9da944444ab771b456871cface1e867afb142c24fd7e5b7ccbccae47dabedc396b47dbe68bd36b2a1ca723d1ff927a90f85e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/hsb/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/hsb/firefox-63.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "22ea6afb26555d88680cea7bc1fba6570aa7e0b8517b23f4f5a7d3f2fee285315e29e818954dacd29768642e62a57adea282fa35116a7733c1012d2578647bbe";
+      sha512 = "04e39227067e6a98d2398e0b832c0c3d18dbcaed3b683a6508479a29d20860117c2ca04489990508d503b045e882e388d198e62503a0446cfa40ced150000858";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/hu/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/hu/firefox-63.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "cbd0d026cfb693c7eda3f58f0954bad41ec260e307b8a4a9d4e774e2277786420f99c8afab9ee0fc9f7cf7f9e4542904c6d1c1b92c1c3bffa62f8dd9aedd8a73";
+      sha512 = "f260853efc310b0426e72a50e272c810f390069d743c5c0e64d1400d87df860704d87d1fb1b3f2c13a857ea0c15713561379a9e027db86f92cfcdb2e52c6bae5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/hy-AM/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/hy-AM/firefox-63.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "59315b0561ccccfc031b240b699b019c3b6d2769cda6d816bd60c359ca1a4076c4fcd8342bbff6cd4cf66243dc5164e1c0066bc7821275cf5c11caff0e86a6e4";
+      sha512 = "5f1b3fe9cf4ce690105e99bf492ca4e67bcd4fe0a09aac45435bc1dd2acdcfd7d2c5faa7125e6ed14a4da1710e1e8564ef969e70cd0ff3b53fa434035d7232c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ia/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ia/firefox-63.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "2addd61131770c825227639d5d7790bc0c9f0be430077fa31cb11cf74f6ec191f6dbdd88c4e0b2fc199eeee7ecc39c6dce8c790924224ab0603e0af41e082a63";
+      sha512 = "d4e20bf61a36438b018c5e69cb5fb9a305f4b67d1c1be82c619afb44faa536903944204d9cbbb05b766076038ffc0e0a51af528dbc93fe1690cf1f4ac8a0382d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/id/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/id/firefox-63.0.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "81a68f78f003685e1a06d242ca3c24df27b7a0b28d0a5df2f41cbe9b92e312b32a35608c7e094ca136d6f6356e523c62baded1cc027d19342ba44cf88b479843";
+      sha512 = "0987ea50242ea6e843df40537519b13e6a0b6c85cafa9ea5957b69648b8aadbd12527e4adf04d135b98f50e1413a71f85e327fc3025897beaa0178b7013015ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/is/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/is/firefox-63.0.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "cabbb8d0f7b5009aa6e889c983046a5c806f1c077c8e27f7cd148b54a25c9cadb5010acb97b2cdbe6480463f205bd7a4edb966fae0a92a8380439082542dd9bc";
+      sha512 = "185e9bf39d07a0455b609286c498fe24e301cd7779913da4e16d36e36edb640d0d2e09bf04d85209f2879238f0596fb5a7ef3d9b53b611101cfa78ca8ec27166";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/it/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/it/firefox-63.0.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "8d3eb041fccf54dfe389566cd11b2dad4276fee3b902914bdb4a8cf06c6613a39f4ebe7d00d33a1873bcee32f398b0527d4807d08ee91e0accabb92205eff51f";
+      sha512 = "334d4f61f8bf56123a57a488da8af7ad364fa4998d41b0cf4052bcb33494642eb0f429b97193b36a23947350e94f97a37dcfa4092fc8c642321fffa66f2c022d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ja/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ja/firefox-63.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "facf7aa7f639104956f44dd4f2a6f4064ac4474d3c3bf2e355f1934c68831bb774172b719b2f0685435e3f3cd56ed589980d06a1d2dbb6e405a5f5c32395136f";
+      sha512 = "51f4d9a5ad768d34354fa56839412ae4f89fc46bdcb0f4d427a58bbe7d7ecd5d6ac6d3282d305b69325d3bb360d6356d8915ac200efaaf645504d1d607a75eb7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ka/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ka/firefox-63.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "c8d5407fd932d83fe6d55fa012c9fab70a4d67fc6043dc4c9e18c6f6e25bd4fb8feb0dba97ec7a8a3f1cccfa37c46cae482b9fab90ac29c34b57a35387742b66";
+      sha512 = "973e37affd3574b682a245d4366c5868520ae832000f96c2c7ef7b0bfed82e65e838fd8895069d5c4b03b8553233928798bbfa94c20e713367f84845639d5217";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/kab/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/kab/firefox-63.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "0949d40892060b97c1fdf69d9777893b2456d5c936d29876832aa41492c01c1a07c88665fb669d53b8cb91f23757cd14636f87ecfae7aa112384658288afd4e0";
+      sha512 = "0d13ac3a4783623e09028d5ea9b860db230f8c9c5c98fa83d1db33ee1adf09f18b312412040a997293c53fcf4e9ebabdf3d5f935689f45613f1c70e959ee6ead";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/kk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/kk/firefox-63.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "30d3e966ebad9eca27d255c20bf11bdc5c6073f0cec8954c568c4abda86f689e5a9c4c2f508cbe09687e0efdd2ea8f5f8ef5de781c3fde399f39bd9b229bd187";
+      sha512 = "822c5d0a3f4ee7327712734258afbd4ac5216fefea0cb6d3dcdf144af7ac04ac79a2c5f09c79bbb9a1adf7d57f8d0ad3300d6e56a483b3d1c149723a1aebf9b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/km/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/km/firefox-63.0.1.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "f9514178a460bc3f1a6e56878f951208d6afe92de893ff1861e38ece04909535d9a5de8d59359b6de32f0bf4ad462c6958b0b881c3678da074cddcc5a6ad8150";
+      sha512 = "8bcdc71c8d707295e753c5a9a06d47fd932a7acd35516cf857fc74d3e9025156c0a5ddef34cfc9b98311e672b386bb06c241c949fb34e238f1353d2ffd2b7385";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/kn/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/kn/firefox-63.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "cc229a04e851f479f785d1abc0e2b486f20797ae0269d62cb64aa6bf8a3925958b9271bcbaf0acc3dcd7fe7f39b9077b1a8a7650055d2fceeb2ca6db676240e3";
+      sha512 = "a6c6e301ce118c4b7f133255a082d0c9615e2de3977a7500d900ab24c8c6d585132f52d120c32b85892bf9df1fa6855e66a5ff4145fdceece917f81b92bed62f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ko/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ko/firefox-63.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "6d7ccf3e6d062014af2c59abf03b3f9300a1045855cd6f6c37d8a9c9733ec7c2775fb702ce219b96d6c0aea4dc1121188805324e1f65e5b222190c5fe34a9fd9";
+      sha512 = "950a8573fc2ec19b5cee1bdc8709d7724df4a89942b64a0e31969fc8e7802b16b1309fb98d7ccd929ac7e6a0444b4fee60db3d934346ac8c4209c9be467121d4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/lij/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/lij/firefox-63.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "3ab2e904fd162bada37cb2536c928fb2f5bec09d8023556b42c9b0a77395f1288f65cec792d0bb6def19952e0d49dc6e3ae7a8398697ba2341750d7707c89fef";
+      sha512 = "88a746f55e3f3d8fc5ea8b1f73c9112af0c87e18ac365341c7ce655edf25db58064c9bddf8e7ac9242fd67cca0911597ee795a222ca8cdaf37627f3addfae981";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/lt/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/lt/firefox-63.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "3e821ba12956af86bedc0d179542cff85631fd20bec53c34c410f5e3315be076634548ea512041241d82c46a88387a830af483fcb35cc6a4d897f09f3fb93be8";
+      sha512 = "f7e7ec28ce981a931d2e5892d85ed5e6ef2685af52309ea5f8a779b3569b5a84bec5c7c1cd5583785211a5748663eca2e6b0db13ad0a1b846deafd7135db4afa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/lv/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/lv/firefox-63.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "21d5e0fad3bd77c2e414044dae95e8464d33fa41badaa0049294a142b04ccdeb62708f209b5ad8c07d7eb5064479b6f4a58433b0ca7fd0436e62ccbb5ff52786";
+      sha512 = "78de629ab28273c18717f07d3609bea0e0690b5cf95c9ee380a4ff7b11d06b91a596fabff78c8935e7d52c2720875b224381f5e537bddc83ae7ad9c3fc80b802";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/mai/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/mai/firefox-63.0.1.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "c3e34de39bf5c77cf1c61d3e691b838ac4a560ce098540d6e58be13d7b1760a670f00aff505bbbb417b37190e494e48426bba73cee3e8e2454a73c15975465ab";
+      sha512 = "aa0f2b177337837b9515ad1d14748f7e68146ce5d2b3f6fd128be1cd2c09a62538d0f79320e74c17c8ddad8b084705803a42a86bb621f8ae227363686d8469a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/mk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/mk/firefox-63.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "9a26b08ba538caf677e1a2f3f3c98e5c67e51e7dec72e73097036c6f34bbab2d5b77ec9bcc96679bd3ab7ae83c3bd94d2c3307843d82f8b1e9ea95455ec91308";
+      sha512 = "36de8542490f43e7b63db4bbca49933716f79b85b4292a89aa16817c11bcaedc95e966529ab14fac87eced7a2feb5c0d4c077c0218c5dbd49567b0b77fc47d98";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ml/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ml/firefox-63.0.1.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "924193b490fb8d65604fc7f61a6f00b79074b61ba437060fc35efdfa117d5014144c285ab149fe7b9dcdb75486ffe516ef1109eb751a6951c88e317d0c3bf222";
+      sha512 = "fc31609037e0f3796ae2fced50953042560e991059f565a3096fb30f27abe741933866442d6a6aa4e5c9beb60f5275b14576ec7424f0dd57b42e097b25cd9736";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/mr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/mr/firefox-63.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "163b3aee29777bef44bdfb56a637c3fd06c435acd05294818f3993f32f8062d0f1ae4fce96c48c05d99a9d97521e58230fa7ee7a9129b63956fd5522722b5c8a";
+      sha512 = "43aab6723f6f21087848358fc7a29c4c41f8a527c818c75b078f1a9b2db2ee28d25f12dc3456fd82400f75e22761063a51de8d237fbb8f72c45fb1be700b3c46";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ms/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ms/firefox-63.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "7eb5b0f2d0b69e56e01c3aed184a995e3634853a267d30fb5149850269c3f1efcabdda8625a367ffd0b70282d5853158084e5890c1e79078818c19a94630d9e7";
+      sha512 = "3e6a411e234ba04e61337200f81dc8a4260be1d7fd7bebfafbf9430e25a96d3a0d944096feee643d34163f53f848caa6c27d6c6cfda5389cb59128ac98a1949d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/my/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/my/firefox-63.0.1.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "41eda41795d4db0198bf3b603ce097cafcab58e37bb58678aaef7ffad424fb6b9bf462801052a78c9d02092fef58a845cff5ab5640714efaf7eb94adeae2a669";
+      sha512 = "6b61f60a70997576f2a08abf95f0647725a0df92c348173f64428187f9020e451077de36ae7ee2912ab8b708314effd4c8c6aec4958c14825266e82b6114534b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/nb-NO/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/nb-NO/firefox-63.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "d87d4b281238d8c54468196c3a3ac55a2774fc4d04a4e9939cb47f526c57fbc1366c2ffc590d01767bdb14448edf9a11a21e8e221044529d0b0bb83532476040";
+      sha512 = "5b58f0fe658ef9bcffe9eb8553875a4ce01071b050ebe4c14dbbeaad0304d9eedcb18b5cc411c992c97ff043e9453f4bab937203d4c6f704fbdd02cba1415f65";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ne-NP/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ne-NP/firefox-63.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "3cb49431e5831d63dd849aec87affb63e170f4feabd6701d520fbebe9ca16aafe448152231b4823c494d0595d23eae81fa79e5b9778a1c1a08d5011e7ad25908";
+      sha512 = "f3acdc3d0b9cd75b70e5c01e38d20c7c3071f175e1d50daba8c4851ce56c8e1f54eb19eaa198bfed2a70903d796e4457a2a8afac57ce4b8f9f16b139c8277e1a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/nl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/nl/firefox-63.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "d29c06e0829eb07930605ac1c438175c65029f9635d0feda571c944e91e93332c99a697c47acd55f27f0adab49f46fae5f81955e783ae70cb1247029b0687de8";
+      sha512 = "f106e3c846869bb55baa612960e2713ab89edc156b31bbdfb86b40be160c4ad97fd402a3ada7a5729bd94415c1d21e234b4c0212bb2f31407bb71e49aaf0adab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/nn-NO/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/nn-NO/firefox-63.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "2f9acb29eeba9aaff86ebec0de7e67a6b17ec48607b5bd1c9c9466d465fba2825d41c86e0ae7492873e093f7ac36ffaaf1c744a5e3ffe0f3b2b5ac468aa43c33";
+      sha512 = "5a7371cbffd421e07e45120f87e85add83c75fcc62596321c08a1f5fd03b607a1d9f54f9be7d6174cb8f325aa77186728cca15e6d8a1a3f537cce5c996bcd477";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/oc/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/oc/firefox-63.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "bad2f0d5f7a9a7013d74002ead12768d16cf949b7bb5ac3a130c5cfd1a8911a68da27d4682a7cfb31ba20f4d826ece3578aa46258c8773def49449e21d0bdbd5";
+      sha512 = "de159758170c954884d76f5325c7c88c5650044a4867a833ec79a9b6fc3addcddc8703620548e44801313326d5827df18ca688d67de9354a3ce1890e6bcea3d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/or/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/or/firefox-63.0.1.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "aca0bdc501ca0d4de6f8036b3aa3670ac6044563d54aac931fdeb154f796b2814a420432644a53329d46677cf7b77d5d3a8e4a3f6aab5469708ef9e4364590ea";
+      sha512 = "29c89abeb78cd688a2664dca3f6cf4da984187608f6c2e5e876bc7b15d744bce23a2a45de8bba87b3fcfcdd08d501f78c1ac6da44dca1391d0d9f391d371a8ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/pa-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/pa-IN/firefox-63.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "e20d542fc62d4610f85c0c02737c294f4ffe14f88da9f15f557ae170c332f131900a59718cd725dccaf282fe29c22c85c8466267f6b0d16464f5992e9876b536";
+      sha512 = "a4d4f1ba14a664d8df73d46695ab2ff403630c290a2e65dc7bd0896b5e6dcfd9175f09a1470f62c19b2f7d6a0c83105baa26625a4a63dba034150c6dc9b8ff79";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/pl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/pl/firefox-63.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "e3848d7706e78f36ff41ad10656976b11ca12c98285bd5b18afb13dae9cfd43f2a38378ccdbbd741b6a2603daa1b3ed72eda4e8f47153e2eedcb066cf073877e";
+      sha512 = "bb8da953e6d290e7c89e1da82929c19b9918b1ba9edb020bf242bdda0999bd2af35c67b31f6ea9856a25e08330d25ba2f71f42ab00b1396173fdf97a8034e334";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/pt-BR/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/pt-BR/firefox-63.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "9848181304658218d4bc0e2c21dbd878f40d3ec5a7d93d9ca6c7e1efc803f957e845344b15f697f347da0a743b7f25bce2e5b822a81c4e0f038380ea95509605";
+      sha512 = "02f3b9091ee88864d5979631e4b968a8bd8d8530b47bb74b2ce32e34f7a91146d4acff58c122dae9b97db38b8dbda90aafed0a9d463ee7bc4871788bb112d042";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/pt-PT/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/pt-PT/firefox-63.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "8d9e9f52b80bd790a919442a970dc8e0f19f8ed5b64de22c4756fa9c0f7d1b72998a62aa249a9e8f3dc1caed1e74a07cc91ea15ee5b3f5ed1e5e340cf148eec7";
+      sha512 = "8cb41e6c6d14e4721ecff46b84af58c689d987f42cd6cc3abcc06c1e265b95421a7858bbd665395b86a0f101c78270c12d1d7fd6efb256871aef1b8f620c0234";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/rm/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/rm/firefox-63.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "ea7cfa4dcf6b3cd3a483b73c8360b525d8002773a5c766887306320d99183b035f6acb9761384cd44cf5cf3391e3fc06d554e68cc95814ddd3548de5ff2e311b";
+      sha512 = "1ac1d855316f38a0e570be034301fced730e61a5cfddfd43964689f003e454c9870ef215dfedba5027d2d291926cb3c26deaa9872b91686315ef76d14de2489f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ro/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ro/firefox-63.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "97271af95125b146c4d3655daa99e59c2b3f1dba57e9c947b7337cfacebdda5517be62f14a5a3eda723bd1dbba6437c0825e0f5200f9895fe678ae80708b53ee";
+      sha512 = "431100bb1d819ae8bf5de1883210f96de661b5c1a8e735e70b2df6c7517190d4c9703aea6e406371f49e6b1287a8e9d53e6ed4a228a521b8f4a8a532e442bc1b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ru/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ru/firefox-63.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "e8e3fefa17ae3ff51bec782b163049eb10398cb1a46b2fbc8124e9000ea0a37a0adaeb71794ef392fbad501bb4c04b0f98765cb94f90cdee4a46a30fa07dd925";
+      sha512 = "35527353ebca6f60f310705dfd53f2a9dae16317c39bf05eac1f5ef4ebe9e5ba08d36c5557dba8a607d604483b4d02aa3085352c11295bbad1ad57d0e2a02ab6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/si/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/si/firefox-63.0.1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "d16d3ae7c5b5ef04b09b6c0afcf4fc55f8e47b20729bef33d2278bcf4727703710f27cfc610b78ebf8e9d45f80bdb3119f438da2598a4922a43cdd88967485f6";
+      sha512 = "9ac19eb2441202229e730f8af9a23092b6da83aab1d879aab07affb39a37bbb8908c452721f37d2f6e062b871441aef9ce4aa5b616f1307f70091269fda8e3ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/sk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/sk/firefox-63.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "3d23ce446b62314b5b6281aa4e8fa7e38ae3ea9ed7be7ae3d37d223b69ab8ab20a2e2d772d278538db8a572b839d59ebf4b7aa40211049f81641784c523e6fcc";
+      sha512 = "b599713ba833c15c2626c174efe93bd34b63d78fcf06b1507ba0ac905bda58da37e138df4eb01bf560c5551156cc9468ca062846b4083ce0d217164deeb31f21";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/sl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/sl/firefox-63.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "25e2bb9a9e92ebe5507ecea35302792acb7be4666fcbfe3dc7b0cd8ffe77ccfd514f92b9762346a5a71d55e28ed654ad55752b4ca82686d3e8fba97473afb6b8";
+      sha512 = "506e20b8c55a6d3e20e24400bfc784fe81e135f2b71f761c10312b1af9983f43d6e71b77578dbb221247d730a1f372261a83db6b7fa1382c06407fc6d0599230";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/son/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/son/firefox-63.0.1.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "13f167d22fb355b90b02c4d8fd8f9aa38e7f6e626c633276a34088d5ea83e410cf3a0c00d33560c4ab48aac4613cb0d422751f8c8b7440c0fd59b8e8be0ef204";
+      sha512 = "41c7f4a449d181bb352c2e9f3b7c43b8e5782c9d86265992788ce8ba5b2e1c7fc1ce93a5f41973650ee816b60f6874e375cf780e1b76102dd7662d1f8651ec96";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/sq/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/sq/firefox-63.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "f57dc4ec2cd1b8a45ac114b7f838d34f766f4f1f4fa9308504e6c9bfce05fb977e2982c1d83f433a957098d9069b58dc0c578af948b38f3d5f53ed59ecd3ef24";
+      sha512 = "d73f03127c26cf55352e7963d4222efa26c43aca5d2b2a45a5bb958f9c4d7f0d618e018ed8ee86ba009b360338c2c559f553caace5735e27474357a392f2e80e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/sr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/sr/firefox-63.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "89ab6e7a42ccc21b0a2c3c2a55b0e3920d0addb4505dcdb98ff6d93e995f18130b31dc92c55a0f72301c59cccbd142f439a24962e19ae24ee25af59c6611c668";
+      sha512 = "0f70af467f21d399258a41a9cf89b01f8461d9063d23e7e15c269effaa7d7c3a70fd034a4a1939fab1f31dcbcf293452c48ae5c49bacfb2a2e6151f343c30866";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/sv-SE/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/sv-SE/firefox-63.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "e5e1e25d4c5d1c97e715bb984c0862237602329a786776b3b3a5407e585399fc3d5ea7c8e6927292f25b97924a568c95bcd758e23b74ce71cb7592877a5da3ad";
+      sha512 = "dd2f383544dbd19efab3c967e762a54209da2ee3d6001d07f173141ce5abedd62216fb9888569e04f409def45b38d95989dbf3165a46a0270151c72bee4d3bd4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ta/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ta/firefox-63.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "4f9e44175061339559ee743528f4e7dbe4e9b0a3d92cc178879aa71f1a30fb260be307ff75722a2f69259e3fb13e509228ab86d4a6e9708564c3696ac3531afe";
+      sha512 = "4c625d005c97f8dd8e31990c97d35fe51dcb614e6e8737d60daa42271b15c9a705cbcfa71a32b3a88860c57e7ed0dd3e22bde0b9485ec30d2dcfce9802a10f60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/te/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/te/firefox-63.0.1.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "99e52a537ec1048b63dd77a9a9ccd1e44e8a00af256ad8b0f61ecd4e2767591550a000e66cfc1b3db4819580cb05dd7a76f2d64a4839a9e72dc43e65940afb73";
+      sha512 = "77a995c552e01b688de4651eab8df025d8163684a4096bec415f40468f49fc5bbce667748bbcf989c636440e8343eaeeb228a9b612d989c520c07420c2888a4f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/th/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/th/firefox-63.0.1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "2db11524432184bff0646b86f665431cf71a1f3389185e1e85312af7cc75be26f55f0d899262405db411acc21a549a8d451b63d1c060fb892040c72b996c0b0c";
+      sha512 = "c51fbc08ec739f0c410537cb9f1897c3aba11c916c739c143ddf3e19cc6fc743ce50fbaaa95569302fb3411cee9d4a4ab6b525a02e1583387113a1cedfc4af94";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/tr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/tr/firefox-63.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "90b2543238e92f66981c0aa6cc0e563eb1bd623c7bfcc9a72aa3f158b52ddf8fc7c0b550312cdb279dbb192c3cb5d2f9019817435a17d79b31239564771ea644";
+      sha512 = "1aac702b3f84217813d76248e201c1923e812f57ae7fea00cb00f12874f8cdc17e6e90a633aa578673b793760bd2300d5f0a2bb7e5f3bb5d61dec8e082e45b2c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/uk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/uk/firefox-63.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "cc3973e6ebcc956a626292e09629a5041bdab89e92c94c4ef461e01f2384021b39057c04981d61deaae238bcfc6cbf0eda2ac19e271fb7fecc4c22f42808ed36";
+      sha512 = "cf8bb456b740d856201d6a832c809b1be7a0b9541c73988d9d526b5251c5036d46fe1e2c26dabacaed9afc17cbff53f2f5beea3a5018d4ebb82c1085e272846e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/ur/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/ur/firefox-63.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "0efd6d37984445601e5076cfd19e345c2f0d038d4eb88e4543c90b27c468164ee16bf7695fe8a8f1d6fc2fdec1c8ff6525886da5b84ccb8ee6ceee8d751884b1";
+      sha512 = "02f5ba3d99d84ae6990fa2fe7739365dded19914271f4967671365a6dee76e3fa125d523aa042a70f4fdce7144bc29349158834ad75cf5b195ff8f3bf916bb30";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/uz/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/uz/firefox-63.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "61ff04342906c902710dae18b8c83e40e14120bba2276aa677543032bb0667b12ff7c9df70ed5e478eb3fe79fcc1ba306b738ec5ea2b3bed2728698f49f7b1c2";
+      sha512 = "fe7cd3f100ae5515304ece3341e5308a2efe2a650a603f8e4979097e95281f7e0f75470e599a2292ef5296cd001d3778bbfb877c8b80bec22a27c95b7c06010b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/vi/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/vi/firefox-63.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "615754da0770dc5ac5347f7fd3ab5d4ef7aad96167deb5e7b22714595ad96e59069794abb676bc553b8aff226fe37f3db84c63ee2f662a71bd3f9163698beb0f";
+      sha512 = "293434d3817d02efe5af252e39f4cd9bcc9629f67011294f3e64c3700a0d41524fd2c7cbf7f7f38503422743006a57168d00251633d29f6dafdf2bc27ca9bfc4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/xh/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/xh/firefox-63.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "4f82fe26348a515871f1c5775dc0ef4b31fff9a3bf48944379d08aed499bab55b314227e354ca17fe644807f1d2b1f732b8204c3179907c05f9c6d168c7fca3b";
+      sha512 = "e1f3490f6809f98bfa6dc38e40d2bc2642bd9a161b54e43fa5d1f4891d1698d32a074f241ec68ca2bfedaf7f2a7912a9632c9292d4bb3fb9932640b274a73c67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/zh-CN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/zh-CN/firefox-63.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "2d13d782b2988389d2bbdb5560d494c77d2ef0ec479289ab683a3a7336200d2775577b2508f23587bcc8d3441693c07593c3f040fa767ea19a8adf29ed9b9b0a";
+      sha512 = "e66e82965e5aa68e82d1f85bed52bd79ac0729224ad5ae5fb4801cc1702c7578e3e9c8af5c3b1659e481076912796c608ed365b88c1fae1b4ee01dce15b22052";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-x86_64/zh-TW/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-x86_64/zh-TW/firefox-63.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "af0c5f6d98fa4cd4556c46740edbbaa76653630d1b8fe265e63caa54e51977e6eacfbe4523ab29d3b9c9af466775dae5f62b00468cc644d6e84332d59605d6e7";
+      sha512 = "ac6e7df610a1d49b655f084eb280468e711f1df668b8d6d077b7c84dba1aa8c0d47e7993e4322de8fb45d8bad7f7bdaf3325c1716501fa12f59e881cfa68172d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ach/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ach/firefox-63.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "d4b255e6675e460c80df56aac8a81a531d90c4b6ebeab018a1c5d333da440d780a89ece811f2a24616949bd71e7471925059b13fd32a3376b636012b0b035f84";
+      sha512 = "ba1444fa8ccebe86891a2777c5d8bb11d8098e2c61574b86e916e98c9fa6dbfea99c19fefae42708ee17142d095122c9a83303ed8a2143872f23bd0f3e63c7c2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/af/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/af/firefox-63.0.1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "61ce8c74d62b9b2e35d7a46e0b1284ffcc3837247b12e8e5ae0242049631b5c8050b353ea07ecf7a925e237dec111d10fe10c86e49fada11f007db0b3ef3c29d";
+      sha512 = "ad827930699e223cbb0ee7b34e89a76922f83f5ccc1bf14fc1743cae156623a190eb4d73ffb7cbdd9483460f30e868ee9a471af78d5f4aecb1c924e9a039fb74";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/an/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/an/firefox-63.0.1.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "eeb42821c1e94ab24cb4438245aa018d44b84c89afcbbf271e4905929e6908ddc922768868b3c9bb4e6a83ccb266ea6b4f2d82f4a3a35c527130f3bb2aab88cf";
+      sha512 = "bce2959772589d2b356b3d3e0af7ed62448f77b66badd59ecdd4dad7fb7d43cce99aa5b3088770cd509dd262c585336b084982ad77b4328b4d3ac47ef7b0daf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ar/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ar/firefox-63.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "068310cf06b3149b8c54cbc8f56f4334eb1a5b0cab1ba5d7bcb899f507836240528d48c3762af4f37e4d5a9a1eb7bb0a5610d66e0911aba47c3e1ead3a0281b8";
+      sha512 = "1ec918fb0cce996b80a5f3702720dccc09682a5d223d049eb9f69c4486de24196ce0760e2f33f76a613554e5feca71af392fa8a9938a4b4d8a1d48ed88bd0307";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/as/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/as/firefox-63.0.1.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "1487c99d76cf37a4a53b6849501670fa8a80c6f7431f6b9503bd493dceb4786697685bb6d3970c4f47b121c8cf83299225112421217a314640ea7027cfc2c0bc";
+      sha512 = "8fe8b70c8ca653885bfaf94875a9239b38477d1bba36b6c5c3cd5a76a444ff846d9ff49d07ab7460e56261458135a797cc3cc557aa0296cac12f428785801f06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ast/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ast/firefox-63.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "cd8205327bcef45ef0610c4c8e5010c6eb3b488401b776186350351f433a3dd3639f9c8c7a2fc26c3a3d578f85f49a1f3525a84b40a473443ca81d8d8823454a";
+      sha512 = "b83bf7d6797f652c10eeb1ec268fbf8bd892fce13590f506b076fd05e423e113eae859fc4833d9192b9e7fbbdffce1be59356e04b1e60505d1b0efe97b25dc08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/az/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/az/firefox-63.0.1.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "0a7f11ea5f476e0a45e70bf8a1c6779ba32b96f81bff2f88c8cfd6ff29b6951456dc9aba4146ff13faaa35481c1fdb26ca944709dbbc72e4c11d9854cfc2476e";
+      sha512 = "3a3178afd4616dd0949d92f886ba62105f182eaae574f4d9abec54851314bc67175c6a9c4f8f8490446505be456bdae59715cc50e08d563d43821011b598cedb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/be/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/be/firefox-63.0.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "8e34c1b191e2d2cae88c94d99dc3d5bf6afd8a658601fb723d1b0f75f3dc7dc85b9f3bb6ecf24bb75e94a411f82c56fc88dd8a548c670351f19fc4137ad77751";
+      sha512 = "a70e7754379993e6d616374a337fc41d5ca3146b19d91290a09b6224eb6d38a0684466e1ea358268683296ad7c8cc34df51011d316239da2ef942ce5782e2238";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/bg/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/bg/firefox-63.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "b7ba0be703e7e52abd61e8e27a25ee7a8868c1872f4babf82b3b1775abfd073c4112f738eb1ff9f341c56a15bbce5d5663895f342618e7b81fea0cfa35f3ae2d";
+      sha512 = "3a55a9bab9b175a167c3044c873ba356868fa11b6da85a6ff8af155c21c604504b74018eb72f7ba17a4a31ba14020b9e4c13f9428e4759772771038996a242f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/bn-BD/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/bn-BD/firefox-63.0.1.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "ccf789ace9b1e5b378a8e37fa8e1c68e52f70247305e369c536981424f6baa9d8bb132475b4af512780a6b881d5e2090ee985c9fc9481c0a0718b0028b516dd2";
+      sha512 = "e5a110accd63efa525b608b7c30d2468e5b6f1e0dcac670b09fa834d6964d5663b70783adcc4085caf6520f72d2e4faeda037ab0a5b2f5c105aae449cf8b6078";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/bn-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/bn-IN/firefox-63.0.1.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "4ca51c703f5a394b149e7c9fec038a84558fc2eab0f8ac7a2b7109e5e73207b94cfa998c9fa8f4d2ac4bec65e7f6ebdee804c5f0801bc815dc5aaa50aeda3db5";
+      sha512 = "26f033b925adcf250619fe624eccd86350a4fddcf2eda3dedabfd5814d5ec7543173f0412b42dec6af6cd919041d8ed82867839f65c574f3a5c53bb7edfdf192";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/br/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/br/firefox-63.0.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "750480cb435134377e0d09a1c0b342e104903bcec9c68ba08827ea20027754f55cde63b0d44bc248800f85f26747f5d5552bffb7f5344bd5848d6fd7d72d0269";
+      sha512 = "adc30801180e72a4f6e5ef439aa1cb7fc0707b6b0f2b8439d5e5bf8f797ba568d2b66110b013079f251b80119dfd8c2cc6a6350ebc90e65a6aa189d56dd2bd50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/bs/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/bs/firefox-63.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "1d8fdd486341c623b46a93d36bce8ce71e92269348f7e344122b9f8908c6db882d79f5d46b2498e3177df73b5344747f809b6938ee5f59f4fee43a3e1b116624";
+      sha512 = "635b6c284cca1c601d6868f51e7528768691245501e95f8dfa575aed3f31f39a466e33355f228d080f406af9d9fc178d75f614a18f29f3d1263fb4c1fe59fd98";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ca/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ca/firefox-63.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "760d086dec533bd4bd98760a9de99557591c9916bfd930de061105bccf97420d2662b9286287f6d92d5d81f37a08bc30fa57874d992592eca0c531faa61f98eb";
+      sha512 = "3a0a0cef6114539553d1ae40cca4c71393a757d3eddab862e9d4192afb5c5e28c1c6884b929fd9de43bf122d4e8d73dbb0d46254393fbbd25ac0f88b3e6e7510";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/cak/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/cak/firefox-63.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "e6238a1dd0ce26d80b3237f70ee822bcde3ec9149a55a152f24d4f9a44021044b8e15a2a386f731a4d7b026391fa72f3a28055f1f02dcae11d6feff670581f00";
+      sha512 = "67967b99868c100d9014bd03e171be755993d476e9831cfdfbac8eeec97ab05c11959cbec0c4ef2da34a4c406f9fb4cd171293103e0cba131d6a05e1ebaa4d50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/cs/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/cs/firefox-63.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "e96e451f5ad543bdcc44b87227190716f0e864408a006043dfebb37d6f5d464e08ace9c98c0fb9e51531c7aba364532a2b3147519bf6d521336d6950e4d54078";
+      sha512 = "3d642f59728b4655e770f554eb5fa7c1893e581a1bc35aa5c680efd41a5e2747560b28acd6ae4a68aa2668098ad4b638673a033d4da19d2c2e4e9cc42165a48e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/cy/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/cy/firefox-63.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "0ea943b9b5156f4e814e501c8b7a589d888e1a2f9340f0c064b134d2299e40fc766e5fb8ac89ba82e3c5c586b410af16cc86caeb71285b94efde9e171652f57f";
+      sha512 = "877caaef6d1398416f44a53b0a91d1d49e5694c319da19d0b5c5ff71164b80a30530a4ed4c2a22602f3daad37be28e499930099edec3668bb0cc008afc5b3404";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/da/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/da/firefox-63.0.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "6e2b71137d36912e6c4f28907b251a19bcb1f6a3f9d830b6c7b3e90fd28c5d4dfd5f31496ec45728141596b6b37c78b3c29fcf07b85fe0facf1e47c4953edf31";
+      sha512 = "eb911318ee4231558a16b809ee69b936692c6a88d891041630eb01d3dfe9eb061a51313d07a3616140b30617b67620cbee00c3a0dfaa6e9c4f4fcedb84bcc770";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/de/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/de/firefox-63.0.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "def2445efecbd7a998cf846c438e85e4b751655d36212b46227aa95483b474a78249e46e5d44beeb8a2ceb4baaf1e0ea84cb742993941fa2ec0f90f13f11f098";
+      sha512 = "f7f5a05c8c83eee203fa741a1cc09124688c21eac32f5122bf3e3f7b4a389dc37acbdb3ae6990b4413970c98eedafc0df4ecc08b508d52692d2fd3d9ece46538";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/dsb/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/dsb/firefox-63.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "3cf731e4247dfc99ac7eaf85001b70413447a5409518a8aa7791e8affe85efa703c607ee9b2c3896b1ab3c640e0d80610bcca3600b057c8d0c09cedcc9e3b93e";
+      sha512 = "f003cd4232bb20585aa08a7cd07e7d717eda2f6bca941cbf01615d1143015806423e3d6b55dccce207d9af6250e4e3c6e3470c4bf6b0055c8174bc17c8652e3e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/el/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/el/firefox-63.0.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "8ac061359a5806661eabe8c5e22c30ce795b0e019abf6f2d6b673d37b2842887525a4ced40b6aecc6fb2f02ec841d309866fe638f105ffef8576af5d3fc6cb9c";
+      sha512 = "f172315fa9608aa89e53c0db3fccb68e0e5313d18a8effa514049d555dffcada49693d4bb65c1f987ed5c28a92591daf1a85e0f4186bba7d2b53dbb98a485d9f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/en-CA/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/en-CA/firefox-63.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "9d62cfe7f055db10bdb8dd152d6dbbc40ce12b9ef4fe59086fe9818f87d95c9ea79092d25d3bf8a34cf2977b28a505f3ded4406a864d493a6f4bf2d625bf124e";
+      sha512 = "0040a4809792c5739f68e5d95a4d4068f165daaca55408ba89641acee502ad3237dc1e9d6a2d37afe3feed0f44c3883b50b837f5626b5b86cca1430db46556fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/en-GB/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/en-GB/firefox-63.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "ce98acdad497391f8872ee0c41d2fed73a51c0d52e8e812aa7a426684bc0f39103f95cbda3bde1006aeb95d8662275211efd32cfe82609a344178089153db2bd";
+      sha512 = "4661b07660719c0d3ceac74642c4e70d9b406dee58f8ff0f7c40a006fc76dfe3e2a81699b70027e3ae209e05fe321d58a124d37bef10a1e1283cbc07643c0852";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/en-US/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/en-US/firefox-63.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "06d5c79c57ac5b46cbd452a3a095ff0b87ed9a4cdfdb02d73d90947c29a8ab4c34f2bfc3f537a0dc2e60c83350531aae07f58d1808a08bd57a79bf2881144ee5";
+      sha512 = "4d09db5a69fe203386e05bfeb909fcc798fcdce2c3a14c27af18cd1a3837439cd3fed50c6bf951b4882a125f181dc24d5ec201899097e65e279834db63018fad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/en-ZA/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/en-ZA/firefox-63.0.1.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "a162dc2aaa5f2036849bd73bf0014f073235c853b3fab0e3571c08a85f6fefcbd9a7d3c033d5515126e72eb1cb54ad9f68241201ca9bbc786253f0c84f6e3590";
+      sha512 = "85befa2c7d200fe88128724743186c354efc6eef85d780b245f05e0f657f898061862673be6816c9d13e2e37a4a6c1c8efdfb1bd8716c424e9a45f139cdebdd5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/eo/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/eo/firefox-63.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "1639bf250506d4dc4aff272ab0517c76eff75cc3fb4e8e9fadd2028f877e204d0bf19e3eccd7107fe448f1372e3f6dd19c99ad2f8aa1891b1c3b2dbb4b8c34ed";
+      sha512 = "12af4981f2da08abd4027052ea0fb6ce24af2aaf19c18190fadb19bf9a99326307f1ecef484f50ab0880e183ad971ffcc4853814ff97fdd0e32387434fcc731a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/es-AR/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/es-AR/firefox-63.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "b9afb2474208530ca83b4d8bbd59176f02558d21143227f695a8705a70b16e6089d86316105deff2c89b857fd14a5c5bbd6c057aa9b66e9ebaaaff763321a86a";
+      sha512 = "6d244ec1c396e165fd5507af11e74f202ca7793fbc4c2fd9e47eddf429bf6aac4477a2994fd2ca146f5d8eba1307fd7877406ee62bebb73c098d5dc342b1a64f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/es-CL/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/es-CL/firefox-63.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "134eefbb975dc1ad3f98cf340b0c544f084bd2a1bd1432594bf228e0a23e402461e936e777ee3fe0c9a86bfc59947c35f6c6d7cd74deaf6cdbf1224c9fbdf4ff";
+      sha512 = "18ecebef241940ba62771850ae78d4249ff937c0c069782d0e1f83bc7d162fc0b2792a16231ee943ff1e93141fef860f9e376a1357c30375c5458d01156cfe82";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/es-ES/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/es-ES/firefox-63.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "66fac925408ea40d3348f207716e732f878bf5bf5837499a9a27a9b1e8e4a9210c3400fe90faf2807aa30d49f67dae2324e7b41d80a21daeb531e907bbdb35b9";
+      sha512 = "3edb35b0e6a8d0d8838fa9d648f138980e68bc08e6a36c78db8fc3053123f364cc888937722c6b2bb892586bdc9b9a7de730270fc433bfd1461a5d2c8a689f92";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/es-MX/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/es-MX/firefox-63.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "e1dd051782b59f9b2601b051459e4f23bbf949b0d257dd70cd8bd171429f661274f3b7bd5d8d16a5daacf5a08a488db85b462c667c3c3ce0ea280648c5b2820c";
+      sha512 = "a157fdfdc2488233c56b93a015f33e96c6ba2c7b9112bce83a1f53931421cc9523f3db0fa1cf428fe35c1ea0c1e9579b237c44537da89a8d05d4116d43db4eab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/et/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/et/firefox-63.0.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "9b46809e42acaa8dbbcdce1df8f7471d20cf40b0a84384edafaad1a0afd17a1f2385c6d41d7eb5b472205e80c528e3408282ba0d81cd19b8d92c7f0550c4a5a2";
+      sha512 = "7f118ae92f0a38ddd9a0eb35089f99c09771e377e6e6864006d8f2ae604d9ad76d38d641723660cfba138694840bfd5ad8cb9ffce87a4dee76fdd032d2ff3bc2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/eu/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/eu/firefox-63.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "790dcd461764cad902cba93054c35539d2aeb30bb5fd3a6f940ae125368944e20fdbdba9899f3b52b6774fd27fe73a13c0eed7e269b20a7b73dc4fa123122a1d";
+      sha512 = "f354842728b0821dd779957d7bc5ea58f7f498f26dba21f8822b6198148e47caa7e33b18e37651a92620387046eb2f494d9efa6f8a83091dd945191a24afb3f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/fa/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/fa/firefox-63.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "4e0608da711a17faa10b5a043192b52e6d88360752d9c388e173bbee3de86bddf9693dfc75cba7ac42153e95a8056c6d0ba48141cde476b524d1fadfe3a3bc10";
+      sha512 = "473441e4410cf8683a536802a1ba15cbbe0c802fc43e03eaca0b458ac8222f5f8b3f43cf4e85018288967ba2a305db8360c6d583e5aabb80b4146d8bd6c96865";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ff/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ff/firefox-63.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "1f50eae02bed18b0230c824c9768b13e2ede4c622e42120f6cc684f7cdfae4753eb31f867cfb272710b2fb2ad9e649a99d2187eeefa74a5afc1999e002b6cfaa";
+      sha512 = "e8e1c2fd944f6839560e3182b2933b2cf9d62628589b9f3116179d918ff9b5aa8b518c5150d9178dd3aa4571e7e6c1a7c21e263faa409c106b0a63fdb9ea07ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/fi/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/fi/firefox-63.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "5f089861d3a67b754e5ddad49858789d6d6ee309507baf9ff5198e011c26f970cef54ed37398458a3729beebfe9451fb16981ef32607cf1635cc40b7556a7f9a";
+      sha512 = "5c5360aa4afb19fc04126e3ac59eaf0ddcde87fbd702fff8c81084b1b14932de8a17965138eef2473532c7ce6a624ff89f7fe6f8f096aee42162fa26a6e4156e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/fr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/fr/firefox-63.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "5f8963809cc8cc33dfce49b2ce7e44c8351d8a3d193766eea99c668533abdea89d53233ced42c9a8d57356195a3f31f549a486a42f9f06c8ee6d32720856ab1f";
+      sha512 = "7be9df5480663cba5ca9d0ad5ae163073689395ff353e68deeb89714d5c535ddb2313f8495ff7933208c64360e74f6704a92e50c15a7b5c8b752e73080f0d743";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/fy-NL/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/fy-NL/firefox-63.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "50e1a6c68daa2d330ce9f8b070413e100bfc29f7a0f1a7794c58473de04961ff62f776e2c343452ed6ddc3cb309f615ebdada91e4d259e60f066398068141e3e";
+      sha512 = "a376fa68939d16fe7dbbbf91437f7b757b66e7948eab2bb1170f390a310dbfb02f9ddac481896d1eb9deb5a12c942e7bb7e133dcad4fcbbdf90024d56a887e6f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ga-IE/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ga-IE/firefox-63.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "42b2b796a5ab27137e5207ead28daec4d9a0a0fdd58336064c30a56f13a4389d49188c91b6d2101d49550b071584ebefb81d1c3fcc3d9948e2b14f00a7c0feb9";
+      sha512 = "90ee86c14d64bad009d4a976bb6290d4ff2c521422a12e42eaf31a58991d2d3cc20239f6c16b12aa7f11b5fc0f219ee0baeb660f1bf6036fb1b93a8d25da7ccc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/gd/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/gd/firefox-63.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "794193059ee643092981491b0c32886e77be4faef7948c5db2b79a76e3ad4baf30dc149cc63d935a9210c02ccaa843521398e9274dacfa6f98ef4f49caf65c70";
+      sha512 = "c3c1ef229cb2fb1c77ea10c13fb53a2b87cb43068f39182517787fa14043ca4e47b4a262b3ab11ee33ce28340ceadb1486127d280718b58f4d3d28c6d1e56155";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/gl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/gl/firefox-63.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "3a494f60eefef37ad8b62b30d1e32ce9e783bbea29e594668839bceb416d6cc16786a95f9cba06f31b027b4bd40528738ad26c955adac3a433ac083e49642b90";
+      sha512 = "8e403f07b874ca951b0fd0811308dbb6766a82ae9cdd2e826fc93e19fa89be075f2a480ba403c534ce7f078e29b92b2ecddec1cd461dfde5e7503ffe10757d77";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/gn/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/gn/firefox-63.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "ddc555b5f0aeefd9fd435442a457c7c37d4bf4e338b16bf10e1f1798735c52a758b30beab270f03d425dae187bf9d83f828afee627c7d0eb3dc7615bf22f684d";
+      sha512 = "288a0c5e1217924cc4b7596a4367d05914d4e3846871a7cabe0f733eac998cd18651e1083d23e034a22feec764f809bbea0ada464a19fb49673b86bc86cdd7b0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/gu-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/gu-IN/firefox-63.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "a3b67578d9ab00920489d088d59f3ff1845319d9b4467ae3854ad9b08df72a07be94f2436f93db7524bed13a467ed0acf1d271dd6faa86ba9ce74535aee3d35d";
+      sha512 = "39acbba4c189498cd9682a80475404ab8cb5fc344cc3daac6a2bc9161f062d4888fec2a7c6c710463f86c286d0ecd5ada624265ed0894cbb37b6d516b22daae8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/he/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/he/firefox-63.0.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "a6da54477d9a4ba632ab0c077904ead3f83c1e268781ca2bd8fbeecf15da62a3d1393c8cf316716c3c22f7c949a48e2cc7e90bf6d394b5dbf5559cb8c92c8097";
+      sha512 = "8950daf8e742b4d643fb7f6fde87c80bc62e9af98896270bbc834b9e7bc73ed7ae1c9696b9a8c14b2ed372c05ab3b5206e9582b6aaca224a73d3260ea3a7ba91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/hi-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/hi-IN/firefox-63.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "708c9f75ff02efca7cbc7a2483aba15cbe1b22fcc5d4a743633d027afcb22a0ca5778fa05ce40786279a1d145f75c4b9bb64a16bdcad87c9f6f6a439ff748fd8";
+      sha512 = "902547d964746179ac21b4b6c3bdc92b1a11125fdbae97d501d497c882002e6c2ee1ce339b2447c6e650571b02803f51a009b751d6b100939ad5a09eb3e682c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/hr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/hr/firefox-63.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "6cc028e94748d9133887398299e21f70abffa4df216ab629eb579270be8c5ff9b600fbc2094b9d47ec60c577a2158ef3d3e81d63492954260d4b53bc19868769";
+      sha512 = "f94af79ed665da21b9c798331409a1b1542d45e4abfe9a1124b0c5d38e175d7653cc2916fa59f380b8288766da88526742947902edcf147fd93b1f63f29af1eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/hsb/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/hsb/firefox-63.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "81e8f54353a6279041694ff9e95eeb730d3ccf7438cf0b1c4c45425144b3f9e655656b9ac912405f85b9206ddd37ea31bcd6e975b25a14b179849a33368c0693";
+      sha512 = "10ce80b0c58913a50d279c9276365994597dbb2688aae32a8eab851a2fdcef4829e9f3b217b14103d82cd67aa586c7ef184121b688979080ee87b152738abfbb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/hu/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/hu/firefox-63.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "cbdc13d964387f0a5add945cb5f5f71fe2d4c6da9d37f77883074a5ffb22121c293e7c665580bea27a43d98547e2459c7d42cec60af80f44b0d5650b3b6d9042";
+      sha512 = "909de698586db1192f09d8cc9b707c2487784910184ff2e72d1e5d8bdae103b4b4e3296073d57e5827f8063e17310632aba79acffa47313f577bdca30e35354a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/hy-AM/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/hy-AM/firefox-63.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "16aa31cd906a9dcc41cdee45e00df6fbffd1fc83fe9fe5a7c10e0b6007f3ab542bfe328b456f8ec68283a6633d63457ce61dde4661283e75917a0198b38c1a72";
+      sha512 = "4c5dc3c1030dae4153911faf69f5399b7e90927c8419a742f7fc7e319924a67e508c32d07be16d178fa579a4dda39373a828f32fa112a99a6da05dbcfa0b271b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ia/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ia/firefox-63.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "f622f1a1c95bff1b68beb21398fc22e88e05350a2ca1d6d0c018db4d30962f1b5ee4bcc0b9fee7484b02bf06326596f702a1a9e5b0acad5e0fdb73be1c1dab45";
+      sha512 = "bf6fdb4ec04641a9e9a7e349df82a431c78b4d3402a0f145309f364028e33d05a0126bcd236d69c355c8a60c3e3dbbd0db373bc9d5ceef1f7a2a1fcecd998a05";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/id/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/id/firefox-63.0.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "9d44617bac45ccfc191ee02a3c6f994734c9a1bbd5f6cb160808361522430a57798493a33b774eeb331846c99ac09b46788e06abfc716a0a634324b2992085ff";
+      sha512 = "66bc5e37493b5d49202a1a49b2a688e04fc279b4fc59b39501b1ca263d273fe64e4d100af49425be7487cd190cdc4774f1ed076bd9d31d6f10be099afe5a206e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/is/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/is/firefox-63.0.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "6c64320f40b41fc0ba93b94302d83cfdeaa90992681a5ef810399b35fb1f1d40406b2ed80148cecbf6603bd9dc1298dc6b3b334b98a13ffcbdc0b2e19615051f";
+      sha512 = "b0e5c494eaa593fce4e683fcb3483dfed0b23931eaaac632289cd4064c1244eaac82da8966db7fc85a9b380a5993cb1e21a3c5b811ae53bc4ecafba0e8a62842";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/it/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/it/firefox-63.0.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "deaf12ee7fa25a650116dc21b2507df41ed0535821f43cf7e469d870154f4e0d9d66ade3ed3463742e1c5b28d4526f4cccecba4f3995178ad7f6b82d29ea0e88";
+      sha512 = "e03a88871c696ea20917dc6e43707895bc8a2d12d1478b18f3f7059cb7d73d86a690038a0e65ad5434749c01874a41d414494544fc40c7a74a278fec6c409ea7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ja/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ja/firefox-63.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "e4c1a5724c77bd99d9d10bff3f9e011f35bc130aa711e629df458e7ee46a3bdf1fcfb4bdeba4852bd0dda773b8327bb3ddeba2115406517c77d0f4d224267af6";
+      sha512 = "60548d2697967ba841350488239e061a597f56e1eb9285b763f83bb57df6c0906f39eb9d030cd649f496ad3ed54c717cc4ac71fa44bbdaf3f18e32288c6dd434";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ka/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ka/firefox-63.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "1040735b4e1f6616ac9b2676b7007435c7423116e5fdcf8a0a9b472c5cb0c17c089dda5d711fa10129d6bb1c84082602adf20161f5d6d560fbfa12f6225635c4";
+      sha512 = "2c3a2454ef64a184b1a28f884462ee63806ac61b578f59f61ec194691690880a9ce2d76e0e183ed16ef9ad570383161ce9370cdc97515a1b33a6b279d134ca6b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/kab/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/kab/firefox-63.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "511ccb5a8745fb1b93fdd49ec9369498b577a155fe5134b9990e6740505f342e76b0da136cb3ebfd2a15921b677be7cab6099cdc8cdea9d6040b989cb12672db";
+      sha512 = "0ab0ae54fb5472af7dadd987c2d8a5a6d820670b1d6fd2bf17eb036fbfa4151e7ae754028570be254d8520f98b2cfc953d50e98774be0ab5736c3ad52313aed7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/kk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/kk/firefox-63.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "1e5d5aec9db2fc36a56acd1d9e723659c3425ab4f048966f0550eb1723ffa27b0b91acf8daf8cac9bd6f9929a5fd880edbb4ec1aa4359282f4d4c4532bd6636d";
+      sha512 = "0fe809a4ceedc163dc3923397c51ebce0bc933fa8d728fe8da44eea098a3a150ab3d86bef8e6904f59d20440dafe16a8c45be3d8d00f4a0392e446a3f60c925d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/km/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/km/firefox-63.0.1.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "76063e3d83454f4850849af7084d9489baf4d354001277a9f606a28db089e589147033c132320b34c59032b2dfc7611ee52786c960bd280b5426781a0a0b7be3";
+      sha512 = "5ca1faa0a2dd1fbc1c2ea9b7c631ca682c442ad26a384065f27261265a731003214560fbb6b90be791b07f10a5ca7ee33d22c682a61f2eb65f813c9af06d6ea7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/kn/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/kn/firefox-63.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "14fdec60154ffe181f00808f8877de3b045c72b91b0a6c017951033eae786ee26e4f96555034b8161318edafb8ff07ac41203a9bce91ddc20215be87571c5e11";
+      sha512 = "f4df227197c065304532c5dfc2e86393adcee0d494223d7771c724bcf8e11205db7e4085373c3b43b51c84274bf741d39712cc2143c7361c706ce0613e244c96";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ko/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ko/firefox-63.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "7990af9dc0df8f9fae35d928ee5b476dde1e12db6294f5a3033d37e73e44fb8d0bcbf7916f79459dcc6c8f05ef065ff4b0dea95bc2c342ae81f2161fd61b2fd0";
+      sha512 = "1e98e25daa86dd69a06c69146f171c84ae45c42e5906fb04aec245235c3eaab310bda6a08822081a18ea75c934905b3beee22d17f9f2a2f3cf823c3c0b695f08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/lij/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/lij/firefox-63.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "42faccbb1029df56f17b94c7a5d9e6f6d5fcd7c5e6b623a6fe8f89f143c909961dba135e02d0ade1bd57399bed1279a61ae16381402ca391aeb55761428f97dc";
+      sha512 = "864335bc53c70d738d0338426e499bb8aec9b35edb2e63451805a064c8601b6698293f1fc759a4cc3d38b556fb7ca83f4a1d15c7ae9aed7f668d9d901b47c456";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/lt/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/lt/firefox-63.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "b4079f36c1a4788f8da2a4e1efd0ab4bb166ec45dcda1ff0077746a85ed5d34b8cd498a0f1d12463349d4fcfae820db39946caf7e55f4ae9ff1c9ec587a95fd0";
+      sha512 = "676ffb0616224c53b61c5e13713fcd59078d9acd46268a76321e199414acdc734093979a71b1e7a054d690f6e62f1ef28f807345cad620e7b6ab7920f84a7559";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/lv/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/lv/firefox-63.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "5a8eeb1274c30e57f7ecaf307e23eddaabbd7272128063ece88f480c7a8bdf96efbf8d2db2416e0232773457b10474a531ace2eac264175e590050662c8d606b";
+      sha512 = "ee93f40d4e624e24dd9fba0951d6f0d67e4caea63fe8d24ee1641f44de3c44f214aee0f26ce9a04418c585e9a6486d50957a68bfffabe614cdd9243604b9b519";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/mai/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/mai/firefox-63.0.1.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "b2ff3a58ff0216df0d980c941648e143a3dea87e1c90c4ef1367a3a75d5052b1c1e54b07476602a91adb691bca2fe4e9b70d89895773b3a021944257b0429518";
+      sha512 = "c71cd9d320f09e0d6307cf1e04cebee3ee565078a73630a32fe461815098c3dc09053fcfe15c51736da2686b6edee435138cf953931500bfa3b049a31cdc086d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/mk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/mk/firefox-63.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "4ee9b4744ed73d866d6d2e73d0a9aae983d063af3fb4e313e8c6a2fec055b10bb1d414cbf87c0909119f1f804cd64eacb981b5c17ecc87e29ab246d736b6f9df";
+      sha512 = "d04883a77536aeefe29ec9efab45bac90ab548a9d67076911446f4f8d7e86ec01055367b5fdd089f857bb3e6e108ae1e4ff6727db2cafc17ef25ba9ac52914c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ml/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ml/firefox-63.0.1.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "9bdd87f047491ba138796e48e46dd4fefbccac03adb4d652978d51b933327f007ca89d41929c075dc61353584cfb5a3fbd94986ca791750117b55a4ed65b7994";
+      sha512 = "d9c71712d7b852c4585245d87fd060b707c1789a5406e69248d46b8b6a2145fba33cdc5a31dcfb654e7386fb1b2b70be7f6e22c320d5fa85927d1bb9867280a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/mr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/mr/firefox-63.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "7680c9af0d556599120b3d8a2883a4bfb9bd0dca47a2d2b3dec669fe2852de39c134cfaec0f53082b269245a28588bc699250d438668264c778c7cbf3037a50f";
+      sha512 = "fc82d00af91de103828c99eab71ebdf0f047d978c7477f57bb7df64fa20b4fedc39bf0fcaeac4239981cd0a0eb845509e78e4b645860f2bc1835a2a3dd1c32b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ms/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ms/firefox-63.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "ae78016ae552d10f4220e68259b464097464081cc2b3c114648a6e36e4381df7e9333f7c13c08e0346bdaaaaaadbbc9a111dea55cb6b4daafef29ff0b0db5afd";
+      sha512 = "935f32b98168d0b136a6e1d1fed10b8636e74100f0f40d94273483acfc239e818907159e1b6009fec132ef88710a2a4189689a1313bb26eb7d3c7bf13cf365ee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/my/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/my/firefox-63.0.1.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "e682f1e998a946053672d61f880a75472d692ea9f7232df9e2a51c6b3d27f7d5496138144dc17a56cd07378b20bde48450a27157782e9ff0463ce922c08c6e3f";
+      sha512 = "74d85bc47ba363f889f1d8785756406643f03e60d04a340f99a79f0fdd4ff733cab1807b16e76bdb1bc0fb8f8f69397624d8d8aea934e689637b90d283c171a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/nb-NO/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/nb-NO/firefox-63.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "b6b68de70089bc3f02741de04138922b3a4b6ea760d5b43c00bc636a3f60fdc510886e76b989facbc4db23e72e0659db9ed38705c8c56851ef9cb9209524d58a";
+      sha512 = "a9e43f742b720a03b9c7ba43e812225c6d32174e908dad8de15a72e758dc2f6374aaca5eb7ed7abbfe7180d06936bf7eef6f021c25bf3d440d63c1a0bc3c1804";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ne-NP/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ne-NP/firefox-63.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "057ba9953a8ff6824567de1d3629b7d995924a7da49f9b03e1b5e872cafe750dfafe05a74b72cc360c932237445712bddb646cad2a961523d29a8b5327ca3bc6";
+      sha512 = "c20328156416c0678d701c386999a9de88365bda8b033804661158098911247b883e4521d7881d63fec08713136a457f1fa52cae000e7cea7e8392baef7986d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/nl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/nl/firefox-63.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "abfa808668e527940d7f344522650cccb4272555b67e4d90398faeb7aa31766002287c5e73f259b2ebeafdba890b0ca9940fe0bd12926f8b748ce172ff786abd";
+      sha512 = "b1d16825d152c208108938846397d6fe1315493e5e5166835c546c611badd25f3e21aa2bd044ab84b827e81f3eef0094af8196d58dd84bb1cff604bd63e7fab6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/nn-NO/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/nn-NO/firefox-63.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "e5048346227c41b20534e71042a911a74348e403283ecbcd3a90f1ecf3154907e0c7c21eb26b67f2ba09a6e8d04200c990f7a4babe4ea5782a847a31a6a880ab";
+      sha512 = "7f86b552c74fae7a7d0ee81edb44696770cd31ad17fbb1cf8bf1a9cf6c102b006d76204185a6d36eba2c73fe9220735668ad12fdadeff6dfaf4a4fdf507c47af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/oc/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/oc/firefox-63.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "ec1f24de15020cd6a16d95d47db8e2e73d1b3aa269e27d30421c15e3d71b57625c10e7c20427fb1fcf2ca7b2e1aeb0f16b254c1107aee28c2e8522fb535d4a5d";
+      sha512 = "496cc5e21d8dee68a929d9338d3b7c341579af2092279168c846efb355eb28d47180173d159d3e93f279e1494fea778b0e769a2b87e483abaec3da4baf0a258f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/or/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/or/firefox-63.0.1.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "c55f10e0a9a3cd3403eb9167139b4c6f0e8a5f66e3f33b12efb40bb6b2bbb7d1dc2aa365b1ab375f41da34e7d21d2848223934ffd2ab61fa93220bccbe9fc720";
+      sha512 = "a4df6ee8516b67bfc783d566e3e78490ee89cc74645e1caef73cfb4623bb571df292b03a8796c313338df637ffd3825e7ee6dd0779e2217319fdce7b07bc9b8d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/pa-IN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/pa-IN/firefox-63.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "f74dd4d54680d94ea270bb7755f6ea4fe058899cea2472c08ebe5f34b8323be7157b060abc83ec80aef8f2ca63f3c806a7a4d831a4e72025ad25d4ca40783cd8";
+      sha512 = "7e6efcd008e69c56ee21d8f00a7d0766c2c9a79d8a2b01cf7b9deae0dce7e03ff3148b2ebacc587268d39a3564fe9870c5cd12db836ffa96891953306e6822ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/pl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/pl/firefox-63.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "05c82b2e08f65e37d4e82fd93d3d2ebe6a5d5441ab11069cbc66b18af0ed93e877466daf1d804c53ac3c712307aea475c99f922b5064cb551d136e5378e23765";
+      sha512 = "947ad8bffca0d619d0c3a4fd77830120395592cdc342ea462c793c298252fe76819999110ba4dbb9b3b6189b107aa307a5b04270b4642113f634593a3813b565";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/pt-BR/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/pt-BR/firefox-63.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "c8f2d36ada67a2fa7717527355a0e083ca5891ece1de70505efeac51dad5f6985666e2be0bdf23ad0f4402d6ee96fa2e12af50369297a3e46b9804cb0b830c89";
+      sha512 = "9b465f5c34fafc80b33b45d03933c81dd7f2e1d54417d5b80953b35addce08b011d0ccd1a75353f5e600d4567794e62268c27603d5fa9ef6bd2e5ce83889ea6b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/pt-PT/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/pt-PT/firefox-63.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "5e4478ab220636c747ce9c5564a1b71554b1c67999722bc55204f747d0ad430eb2a0b71336997e80ca391d7680ebf92c66ea7ef4d25dc568f8c6860cd31ee26b";
+      sha512 = "4a9c47304cbd015ab36e5763ab0b6564cf81ae4c791d28c1c37d49224e4fd9aff186815b19a4047c7d6b713a6c4ea7f3d341d11e56885ee5b73cd2f2a2048efe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/rm/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/rm/firefox-63.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "67438f3cb1a89a0258890448de6d16be5f79291d4c0989691d9c8f38966a7a4ba2f8eaccb26ee4458a81a733ae9513555a22f8b57652b4fce1eb1e3ab2368848";
+      sha512 = "24dd07cee63e1a3370b970c5a2e0c215e6587ff17ca0438bb8b52313eeb52e9b241c56fb31740602067b635b314cf20d63e03fe269ae35b4374f2043c8292af9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ro/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ro/firefox-63.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "3cdc7f593af3bbd858285237a9ffaa07aa76cbfc67c0f7d22d5cf261a19756ba3aa8971d54a10b820344beb509810b601faf0cc89c86636bc60ea1a6d8421873";
+      sha512 = "25c0d057571ca970344f91a07ee1437e290ffeaec2c15a3b106e4c690afcdf7b3bc9f92f28b11d179cb8912697b1d7e255a6596bebbe8e1488dcf4347cc7fecf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ru/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ru/firefox-63.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "7b6b03cca2fe3887d7ee86eeb8ee699157a6cd828108737e26724a48af72cf3fe326024f41c6afc13f7e332c262a4e991728ad5d46ac6fb6942c5c3b4ea93a9c";
+      sha512 = "7110c2ff51b8d5539018383560c113e63ba1a870510501b0bfa1294bd5c19a992d07786732bbcbb820ece4045fb826bfcc778200dd3ad63504e64cc2d85deb4c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/si/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/si/firefox-63.0.1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "10f9fe43304931dbce1d0073ec4e827f369291b3705b322a3f3ba8f7002a974c019be8f5a594d8c88add527667d9295a27e85f2b1072e16ef1720e9e433111b3";
+      sha512 = "6dcb0eccef3c582545e7de5d9c33c80690db698a9b28dc7fe654187b60e69a41309c3326eb2b73ed6869a4278c22db369e12a8fca5f2553327b2b6fa7fdf389d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/sk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/sk/firefox-63.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "6b90fd21c51d48ca997ad47025aef3a4280e30152a0f18d0ab8948e055b80e5aa7cf1374b2eeeb1432d8892fb07de505adb9ae6c57e776ced4c429859577f040";
+      sha512 = "9e7b74a0c495cc6247c5d37931d6038508186070de80a935d2a39540960d3d57996f47497fa430b24cc9164bae5bf5e761558cf60231594ab9637956a26326ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/sl/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/sl/firefox-63.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "55faeb2d5310266395a442d0d9ce4a1020197d0ce7655caa8d00efd022db9e1c9926b7418f4cfa380d04e1971ed47e7025d434a36ca0fe6f58f02be7f0e26a69";
+      sha512 = "6c65c39d0ae8a398e25733f0be9180dad1bc17d3ffa58f02844d6750bbb64a0d70f31b565e3ed606b6452431d0aa705f671b45dc2280cbb90aaba741b60d82a9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/son/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/son/firefox-63.0.1.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "63f104da43ff4103b40e271de6c962fae3d77891f50fe5b39698d3c2e382b4234dad41a3a64794015ad88d34a7e2b819c0ecb62b1bb44a4d8e83eadbc1803151";
+      sha512 = "55ea357bf7f6ddb7e8b51796ef199168c89ff5959e5e64fdbe8e362bfb1efa19f9f407c20510139c52cf44058a5c4823b2c1c10821a2ee06a18b19d48a85a403";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/sq/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/sq/firefox-63.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "534ce38e5dec85de50e9dd541f6d8445e95fdfac074a51866c993e97d020b9a310abebffa2162fc513572d202f9fec8e3a267207bf9c401b27c8541534ee2aaf";
+      sha512 = "5fd975a71f9899b9eb90f46adaab044c2d21ac64cc71558748368c41bc50ea8ae688fffb0579693633f1ed82970917e1b46a41133af3133950dfb051c33556a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/sr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/sr/firefox-63.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "1174da8c998cdd62370bb8c80c6a47360cdcc84144b03ab33f10367b5622ecf6ff3058e4f525e46ddb523f13e29b6fe557b7442dfec92956b34eaf507bd5f8c8";
+      sha512 = "e8cc283b6d87718f81a619e0c54a2e440e21940375f8eabb318d24c22b5e04fa387d27dd6b2c28c98c65a94cc8aa1966ea8c6ac346f3012df0a6f268c9aac67a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/sv-SE/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/sv-SE/firefox-63.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "7c24f0d4552ca7bc3076b9b0485c757e0547713a58d09cd568e506e37dd6133c5c7a7ad3edcffdd387cc0c5661d3602f4252d778174bf78812788ad1daa9384a";
+      sha512 = "324c7b8b0b313d9de9d83f05d2e802c9733537a5bc1a77bc7335f2551f1466da9c276622a848440e7a353f944e463e1b323fea7655985cf755b38c80e17fe335";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ta/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ta/firefox-63.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "4387b1cfd77da777a3257e714b014c686ad8c5ff1edb7ba0e2d01f62621eaec92766ccc3bbeb93be45c0b414b9b31676692e75b366a7ed0fb8e0526f95126807";
+      sha512 = "6f35862c7052f55b06ffcf0205331288c4278fd2de713c57a509543a02394978a9726fe747709f4972ee2c43a5a001c0f7c5e58e63269047abcb5f4f26e78ff3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/te/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/te/firefox-63.0.1.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "8ad96e47cfc1066d27560a5ad26659dba098724374605520198d580867be3bcc05a63120865745055ef00163b8c7cb97ac35f18bfcdc3d171e7eed6a05f50855";
+      sha512 = "4a5534580d90af3f27ab1d66f54f38782179ab239ad913153660539591001db9dad409ef849df97f5f382388f559eef336c2f9245180704caf9d414e0965c17c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/th/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/th/firefox-63.0.1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "74272739144c6ae69dba8229420894b10e0dd9d75ae386f1221b17f8e54baf8c3d921591c5707ab5d8847deedad2daa3061fff03add11a2e450fdf691dd49f9a";
+      sha512 = "1a21c20e0f410aaff94eb4dee6f26555515c0095aae9cc5e7ec8c90e57bbc73e8dd5a931b9f6fae52d5ebf7de4a3aea2176b973effe3e65e844e1936387ed8d6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/tr/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/tr/firefox-63.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "0cddf14cd7a7cd4594ca04d1416b3ab32db42a287e62b68197fe8e08078999028e47074e563302c77e480d02563932d20ceffdd89c53b53c79221f3cc309e802";
+      sha512 = "1e69c3de2d1836082369994ea843e164212527a13808153b16c02e5a3986a3f11c87abbe0fb2eb9077f1273ff14cbb545856c376945a9e40143217896a444e17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/uk/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/uk/firefox-63.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "17e3d498e900ddfc4b00e3ea99b7b2f55c0252e88eede45b47b020293131d6adf5642c1bf94c39bba5b9042e2f9e20ba5399e6717e6965e65d90c4717a236832";
+      sha512 = "87c4e1b907db9bdce6d8dcd2e4c70d57a4e8ce5125473727582987c2eea25543d2d97596d0f3c776962c003f2a5356260d3d9f18410448dec4198fead5461da1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/ur/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/ur/firefox-63.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "cef0ade8282d3360e27d51b4c5487882ae8dc78c598b4150cd3053cc442843cd58f5c362ed6c5ea8362517633dfbb2751a894c6cbc45bac796c181f32f095dc8";
+      sha512 = "533dc9eefd4b7604d92420333aa4f6e1b741ac545814ec1a868393e321d3e84e5d3ba475a98cf1e226b746f1f6b5b42db082d7a6d65b10971b2576e0a3d4cc69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/uz/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/uz/firefox-63.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "e8dc2b26f35f5ddbc93e4891d7b9b4dfd932ba6c7d1da19a6bec1f5c259f78c1c3105d9f2c89cd97c91f4032489f95a339ba5a22dc4daf3c948a968bf580d4bf";
+      sha512 = "e3830088e08eb8e16e6d7196e153eddc85bfb1bab3a29904aeb59c427215fdf82d7a5e50ab9db5e7abaa74b88ca7a4c002fef11883ab000b3b10814650d337e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/vi/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/vi/firefox-63.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "6dc0945c634052824326cfe8558d1eddb192dbb4eca9eac458b8cfb3680cb1cf5537dd8ff4237ed32264d730e95287d9504fd0b1528fa33907dc1a2b4558ea61";
+      sha512 = "5cfce3e3a278964aec4b8b863caa60618691fcd959009395a705b8ccbc51fb7b30adcc84de3be6e2627329d0d61fc7ab7d6c2ab15f93c255c336f327b8aa8a13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/xh/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/xh/firefox-63.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "3792ce77db9de5080437b2aad6537f00963593ff98cdd47a145ffef8243a5ea23e8cd42f82e217885601b04df4c17d833aa88b9d15cad7a6840978af3a756b05";
+      sha512 = "61630ecd035d69866d0934f3a4ef4b574c4ae1205af3c130889d1eb132066fd2068a4583eb87b9e214f033184a671bb973368faf417aaa3018e8badd16295592";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/zh-CN/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/zh-CN/firefox-63.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "8043f8900ef35f85cb05f2092829899d119e079210dcb8bd9d369c7d73ff901e80afc4eecb25421058b65e5e267f7cf671c62cdec5849c2ff0da104f4ec12ad2";
+      sha512 = "968987d12dcf4a9ac0e078132ae50b321987c990c9bd8cd3388d981c7e5dc94d26c7af14492e356d2b984badd595998bc7e9f955e0772534b5adf31886c319b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0/linux-i686/zh-TW/firefox-63.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0.1/linux-i686/zh-TW/firefox-63.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "614b7835c82f80dd27c841023aca6aa8580bdadac8241f08fc053fe7657f069d6337e3edbe0bebcc4018d47f3d9f2d328176add89aacd9847393ebd21f3e9230";
+      sha512 = "286919b5f69f2585c291c0736dec6b37493a809e7e2b342743523d73e749ac4e860236da061ffb14c28452884f72055d47084fa3455898f9afee798c1ec7cdea";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 16c9b548325..2f0209ed8fd 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -18,7 +18,7 @@
 ## optional libraries
 
 , alsaSupport ? stdenv.isLinux, alsaLib
-, pulseaudioSupport ? true, libpulseaudio
+, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
 , ffmpegSupport ? true, gstreamer, gst-plugins-base
 , gtk3Support ? true, gtk2, gtk3, wrapGAppsHook
 , gssSupport ? true, kerberos
@@ -196,8 +196,7 @@ stdenv.mkDerivation rec {
   ]
   ++ lib.optional (stdenv.isDarwin && lib.versionAtLeast ffversion "61") "--disable-xcode-checks"
   ++ lib.optional (lib.versionOlder ffversion "61") "--enable-system-hunspell"
-  ++ lib.optionals (lib.versionAtLeast ffversion "56" && !stdenv.hostPlatform.isi686) [
-    # on i686-linux: --with-libclang-path is not available in this configuration
+  ++ lib.optionals (lib.versionAtLeast ffversion "56") [
     "--with-libclang-path=${llvmPackages.libclang}/lib"
     "--with-clang-path=${llvmPackages.clang}/bin/clang"
   ]
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 102b0de3fcc..81f805feddf 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -8,22 +8,16 @@ let
     ./env_var_for_system_dir.patch
   ];
 
-  firefox60_aarch64_skia_patch = fetchpatch {
-    name = "aarch64-skia.patch";
-    url = https://src.fedoraproject.org/rpms/firefox/raw/8cff86d95da3190272d1beddd45b41de3148f8ef/f/build-aarch64-skia.patch;
-    sha256 = "11acb0ms4jrswp7268nm2p8g8l4lv8zc666a5bqjbb09x9k6b78k";
-  };
-
 in
 
 rec {
 
   firefox = common rec {
     pname = "firefox";
-    ffversion = "63.0";
+    ffversion = "63.0.1";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "095nn50g72l4ihbv26qqqs2jg4ahnmd54vxvm7nxwrnkx901aji7pph6c91zfpf7df26ib1b0pqyir9vsac40sdxc8yrzm6d0lyl1m2";
+      sha512 = "29acad70259d71a924cbaf4c2f01fb034cf8090759b3a2d74a5eabc2823f83b6508434e619d8501d3930702e2bbad373581a70e2ce57aead9af77fc42766fbe2";
     };
 
     patches = nixpkgsPatches ++ [
@@ -70,10 +64,10 @@ rec {
 
   firefox-esr-60 = common rec {
     pname = "firefox-esr";
-    ffversion = "60.2.2esr";
+    ffversion = "60.3.0esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "2h2naaxx4lv90bjpcrsma4sdhl4mvsisx3zi09vakjwv2lad91gy41cmcpqprpcbsmlvpqf8yiv52ah4d02a8d9335xhw2ajw6asjc1";
+      sha512 = "7ded25a38835fbd73a58085e24ad83308afee1784a3bf853d75093c1500ad46988f5865c106abdae938cfbd1fb10746cc1795ece7994fd7eba8a002158cf1bcd";
     };
 
     patches = nixpkgsPatches ++ [
@@ -82,7 +76,7 @@ rec {
       # this one is actually an omnipresent bug
       # https://bugzilla.mozilla.org/show_bug.cgi?id=1444519
       ./fix-pa-context-connect-retval.patch
-    ] ++ lib.optional stdenv.isAarch64 firefox60_aarch64_skia_patch;
+    ];
 
     meta = firefox.meta // {
       description = "A web browser built from Firefox Extended Support Release source tree";
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index 0d86e4f8294..6043744f296 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -4,7 +4,7 @@
 , glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
 , libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
 , alsaLib, libXdamage, libXtst, libXrandr, expat, cups
-, dbus, gtk2, gtk3, gdk_pixbuf, gcc-unwrapped, at-spi2-atk
+, dbus, gtk2, gtk3, gdk_pixbuf, gcc-unwrapped, at-spi2-atk, at-spi2-core
 , kerberos
 
 # command line arguments which are always set e.g "--disable-gpu"
@@ -57,7 +57,7 @@ let
     libexif
     liberation_ttf curl utillinux xdg_utils wget
     flac harfbuzz icu libpng opusWithCustomModes snappy speechd
-    bzip2 libcap at-spi2-atk
+    bzip2 libcap at-spi2-atk at-spi2-core
     kerberos
   ] ++ optional pulseSupport libpulseaudio
     ++ [ gtk ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
index 38b064ec6e2..7a26a4d1970 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
@@ -33,6 +33,7 @@
 , libXxf86vm
 , libdrm
 , libffi
+, libglvnd
 , libpng
 , libvdpau
 , libxcb
@@ -132,8 +133,8 @@ stdenv.mkDerivation rec {
       alsaLib atk bzip2 cairo curl expat fontconfig freetype gdk_pixbuf glib
       glibc graphite2 gtk2 harfbuzz libICE libSM libX11 libXau libXcomposite
       libXcursor libXdamage libXdmcp libXext libXfixes libXi libXinerama
-      libXrandr libXrender libXt libXxf86vm libdrm libffi libpng libvdpau
-      libxcb libxshmfence nspr nss pango pcre pixman zlib
+      libXrandr libXrender libXt libXxf86vm libdrm libffi libglvnd libpng
+      libvdpau libxcb libxshmfence nspr nss pango pcre pixman zlib
     ];
 
   meta = {
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
index 108d7c5f4a1..5c4d0540289 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
@@ -33,6 +33,7 @@
 , libXxf86vm
 , libdrm
 , libffi
+, libglvnd
 , libpng
 , libvdpau
 , libxcb
@@ -88,8 +89,8 @@ stdenv.mkDerivation rec {
       alsaLib atk bzip2 cairo curl expat fontconfig freetype gdk_pixbuf glib
       glibc graphite2 gtk2 harfbuzz libICE libSM libX11 libXau libXcomposite
       libXcursor libXdamage libXdmcp libXext libXfixes libXi libXinerama
-      libXrandr libXrender libXt libXxf86vm libdrm libffi libpng libvdpau
-      libxcb libxshmfence nspr nss pango pcre pixman zlib
+      libXrandr libXrender libXt libXxf86vm libdrm libffi libglvnd libpng
+      libvdpau libxcb libxshmfence nspr nss pango pcre pixman zlib
     ];
 
   meta = {
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 343380c6075..c3ed2d16df1 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -15,13 +15,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   name = "kubernetes-${version}";
-  version = "1.12.1";
+  version = "1.12.2";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "1gm0v5p008w9i4k94ddjdyfqfsbx7a6ngmh81p155599hifm32zc";
+    sha256 = "14w77yw8pd2y5d764byh31vv9203y38zlvcr1a9wylrs00kgzwfw";
   };
 
   buildInputs = [ removeReferencesTo makeWrapper which go_1_10 rsync go-bindata ];
diff --git a/pkgs/applications/networking/feedreaders/canto-curses/default.nix b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
index 0190d5f9798..36b4732ca2e 100644
--- a/pkgs/applications/networking/feedreaders/canto-curses/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchFromGitHub, python34Packages, readline, ncurses, canto-daemon }:
+{ stdenv, fetchFromGitHub, python3Packages, readline, ncurses, canto-daemon }:
 
-python34Packages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   version = "0.9.9";
-  name = "canto-curses-${version}";
+  pname = "canto-curses";
 
   src = fetchFromGitHub {
     owner = "themoken";
diff --git a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
index 4b1721278e3..e700c5634ad 100644
--- a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
@@ -1,9 +1,8 @@
-{ stdenv, fetchFromGitHub, python34Packages, }:
+{ stdenv, fetchFromGitHub, python3Packages, }:
 
-python34Packages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   version = "0.9.7";
-  name = "canto-daemon-${version}";
-  namePrefix = "";
+  pname = "canto-daemon";
 
   src = fetchFromGitHub {
     owner = "themoken";
@@ -12,7 +11,7 @@ python34Packages.buildPythonApplication rec {
     sha256 = "1si53r8cd4avfc56r315zyrghkppnjd6n125z1agfv59i7hdmk3n";
   };
 
-  propagatedBuildInputs = with python34Packages; [ feedparser ];
+  propagatedBuildInputs = with python3Packages; [ feedparser ];
 
   meta = {
     description = "Daemon for the canto Atom/RSS feed reader";
diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 64e3c822108..d01019a5619 100644
--- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -5,20 +5,20 @@
 
 stdenv.mkDerivation rec {
   name = "psi-plus-${version}";
-  version = "1.3.422";
+  version = "1.4.404";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = "${version}";
-    sha256 = "193n3yvhp9m14irb49kg2rc4h7ypdmvidrgvv1i2n373iq751z05";
+    sha256 = "05dcr1i7ic6nff70w4zfpdcmwf19kkhgxm7mcznmlr484d5i1v2m";
   };
 
   resources = fetchFromGitHub {
     owner = "psi-plus";
     repo = "resources";
-    rev = "c0bfb8a025eeec82cd0a23a559e0aa3da15c3ec3";
-    sha256 = "1q7v01w085vk7ml6gwis7j409w6f5cplpm7c0ajs4i93c4j53xdf";
+    rev = "d623f57db35eb5af81ccdf69b2cbe1c437190f29";
+    sha256 = "024cyazyxka5vcbjrkkw32c5zw6aa70n50fdp6zh5v5c51d9ci8k";
   };
 
   postUnpack = ''
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index af2030a20b8..529a530a4a3 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -5,7 +5,7 @@
 
 let
 
-  version = "3.2.1";
+  version = "3.3.3";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
@@ -47,7 +47,7 @@ let
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
-        sha256 = "095dpkwvvnwlxsglyg6wi9126wpalzi736b6g6j3bd6d93z9afah";
+        sha256 = "01x4anbm62y49zfkyfvxih5rk8g2qi32ppb8j2a5pwssyw4wqbfi";
       }
     else
       throw "Slack is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/applications/networking/instant-messengers/toxic/default.nix b/pkgs/applications/networking/instant-messengers/toxic/default.nix
index 646b41cfe75..cbf2dd7d99a 100644
--- a/pkgs/applications/networking/instant-messengers/toxic/default.nix
+++ b/pkgs/applications/networking/instant-messengers/toxic/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "toxic-${version}";
-  version = "0.8.2";
+  version = "0.8.3";
 
   src = fetchFromGitHub {
     owner  = "Tox";
     repo   = "toxic";
     rev    = "v${version}";
-    sha256 = "0fwmk945nip98m3md58y3ibjmzfq25hns3xf0bmbc6fjpww8d5p5";
+    sha256 = "09l2j3lwvrq7bf3051vjsnml9w63790ly3iylgf26gkrmld6k31w";
   };
 
   makeFlags = [ "PREFIX=$(out)"];
diff --git a/pkgs/applications/networking/irc/weechat/aggregate-commands.patch b/pkgs/applications/networking/irc/weechat/aggregate-commands.patch
deleted file mode 100644
index 41e3c54a2d5..00000000000
--- a/pkgs/applications/networking/irc/weechat/aggregate-commands.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-diff --git a/src/core/wee-command.c b/src/core/wee-command.c
-index 91c3c068d..8105e4171 100644
---- a/src/core/wee-command.c
-+++ b/src/core/wee-command.c
-@@ -8345,10 +8345,20 @@ command_exec_list (const char *command_list)
- void
- command_startup (int plugins_loaded)
- {
-+    int i;
-+
-     if (plugins_loaded)
-     {
-         command_exec_list (CONFIG_STRING(config_startup_command_after_plugins));
--        command_exec_list (weechat_startup_commands);
-+        if (weechat_startup_commands)
-+        {
-+            for (i = 0; i < weelist_size (weechat_startup_commands); i++)
-+            {
-+                command_exec_list (
-+                    weelist_string (
-+                        weelist_get (weechat_startup_commands, i)));
-+            }
-+        }
-     }
-     else
-         command_exec_list (CONFIG_STRING(config_startup_command_before_plugins));
-diff --git a/src/core/weechat.c b/src/core/weechat.c
-index f74598ad5..ff2e539d1 100644
---- a/src/core/weechat.c
-+++ b/src/core/weechat.c
-@@ -60,6 +60,7 @@
- #include "wee-eval.h"
- #include "wee-hdata.h"
- #include "wee-hook.h"
-+#include "wee-list.h"
- #include "wee-log.h"
- #include "wee-network.h"
- #include "wee-proxy.h"
-@@ -102,7 +103,8 @@ int weechat_no_gnutls = 0;             /* remove init/deinit of gnutls      */
-                                        /* (useful with valgrind/electric-f.)*/
- int weechat_no_gcrypt = 0;             /* remove init/deinit of gcrypt      */
-                                        /* (useful with valgrind)            */
--char *weechat_startup_commands = NULL; /* startup commands (-r flag)        */
-+struct t_weelist *weechat_startup_commands = NULL; /* startup commands      */
-+                                                   /* (option -r)           */
- 
- 
- /*
-@@ -152,9 +154,13 @@ weechat_display_usage ()
-           "  -h, --help               display this help\n"
-           "  -l, --license            display WeeChat license\n"
-           "  -p, --no-plugin          don't load any plugin at startup\n"
--          "  -r, --run-command <cmd>  run command(s) after startup\n"
--          "                           (many commands can be separated by "
--          "semicolons)\n"
-+          "  -P, --plugins <plugins>  load only these plugins at startup\n"
-+          "                           (see /help weechat.plugin.autoload)\n"
-+          "  -r, --run-command <cmd>  run command(s) after startup;\n"
-+          "                           many commands can be separated by "
-+          "semicolons,\n"
-+          "                           this option can be given multiple "
-+          "times\n"
-           "  -s, --no-script          don't load any script at startup\n"
-           "      --upgrade            upgrade WeeChat using session files "
-           "(see /help upgrade in WeeChat)\n"
-@@ -276,9 +282,10 @@ weechat_parse_args (int argc, char *argv[])
-         {
-             if (i + 1 < argc)
-             {
--                if (weechat_startup_commands)
--                    free (weechat_startup_commands);
--                weechat_startup_commands = strdup (argv[++i]);
-+                if (!weechat_startup_commands)
-+                    weechat_startup_commands = weelist_new ();
-+                weelist_add (weechat_startup_commands, argv[++i],
-+                             WEECHAT_LIST_POS_END, NULL);
-             }
-             else
-             {
-@@ -616,6 +623,8 @@ weechat_shutdown (int return_code, int crash)
-         free (weechat_home);
-     if (weechat_local_charset)
-         free (weechat_local_charset);
-+    if (weechat_startup_commands)
-+        weelist_free (weechat_startup_commands);
- 
-     if (crash)
-         abort ();
-diff --git a/src/core/weechat.h b/src/core/weechat.h
-index 9420ff415..cbb565a03 100644
---- a/src/core/weechat.h
-+++ b/src/core/weechat.h
-@@ -96,6 +96,8 @@
- /* name of environment variable with an extra lib dir */
- #define WEECHAT_EXTRA_LIBDIR "WEECHAT_EXTRA_LIBDIR"
- 
-+struct t_weelist;
-+
- /* global variables and functions */
- extern int weechat_headless;
- extern int weechat_debug_core;
-@@ -112,7 +114,7 @@ extern char *weechat_local_charset;
- extern int weechat_plugin_no_dlclose;
- extern int weechat_no_gnutls;
- extern int weechat_no_gcrypt;
--extern char *weechat_startup_commands;
-+extern struct t_weelist *weechat_startup_commands;
- 
- extern void weechat_term_check ();
- extern void weechat_shutdown (int return_code, int crash);
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index c2c5d18e2f0..69de3ef5d51 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, fixDarwinDylibNames
+{ fetchurl, stdenv
 , pkgconfig, gnupg
 , xapian, gmime, talloc, zlib
 , doxygen, perl
@@ -34,18 +34,11 @@ stdenv.mkDerivation rec {
     bash-completion  # (optional) dependency to install bash completion
     emacs  # (optional) to byte compile emacs code, also needed for tests
     ruby  # (optional) ruby bindings
-    which dtach openssl bash  # test dependencies
-  ]
-  ++ optional stdenv.isDarwin fixDarwinDylibNames
-  ++ optionals (!stdenv.isDarwin) [ gdb man ]; # test dependencies
+  ];
 
   postPatch = ''
     patchShebangs configure
-
-    find test/ -type f -exec \
-      sed -i \
-        -e "1s|#!/usr/bin/env bash|#!${bash}/bin/bash|" \
-        "{}" ";"
+    patchShebangs test/
 
     for src in \
       util/crypto.c \
@@ -54,6 +47,9 @@ stdenv.mkDerivation rec {
       substituteInPlace "$src" \
         --replace \"gpg\" \"${gnupg}/bin/gpg\"
     done
+
+    substituteInPlace lib/Makefile.local \
+      --replace '-install_name $(libdir)' "-install_name $out/lib"
   '';
 
   configureFlags = [ "--zshcompletiondir=$(out)/share/zsh/site-functions" ];
@@ -64,33 +60,6 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
   makeFlags = "V=1";
 
-  preFixup = optionalString stdenv.isDarwin ''
-    set -e
-
-    die() {
-      >&2 echo "$@"
-      exit 1
-    }
-
-    prg="$out/bin/notmuch"
-    lib="$(find "$out/lib" -name 'libnotmuch.?.dylib')"
-
-    [[ -s "$prg" ]] || die "couldn't find notmuch binary"
-    [[ -s "$lib" ]] || die "couldn't find libnotmuch"
-
-    badname="$(otool -L "$prg" | awk '$1 ~ /libtalloc/ { print $1 }')"
-    goodname="$(find "${talloc}/lib" -name 'libtalloc.*.*.*.dylib')"
-
-    [[ -n "$badname" ]]  || die "couldn't find libtalloc reference in binary"
-    [[ -n "$goodname" ]] || die "couldn't find libtalloc in nix store"
-
-    echo "fixing libtalloc link in $lib"
-    install_name_tool -change "$badname" "$goodname" "$lib"
-
-    echo "fixing libtalloc link in $prg"
-    install_name_tool -change "$badname" "$goodname" "$prg"
-  '';
-
   preCheck = let
     test-database = fetchurl {
       url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
@@ -99,12 +68,14 @@ stdenv.mkDerivation rec {
   in ''
     ln -s ${test-database} test/test-databases/database-v1.tar.xz
   '';
-  doCheck = !stdenv.isDarwin && (versionAtLeast gmime.version "3.0");
-  checkTarget = "test V=1";
-
-  postInstall = ''
-    make install-man
-  '';
+  doCheck = !stdenv.hostPlatform.isDarwin && (versionAtLeast gmime.version "3.0");
+  checkTarget = "test";
+  checkInputs = [
+    which dtach openssl bash
+    gdb man
+  ];
+
+  installTargets = "install install-man";
 
   dontGzipMan = true; # already compressed
 
diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
index 3ddbe9be4fc..fdd00270d0e 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "transmission-remote-gtk-${version}";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "transmission-remote-gtk";
     repo = "transmission-remote-gtk";
     rev = "${version}";
-    sha256 = "02q0vl7achx9rpd0iv0347h838bwzm7aj4k04y88g3bh8fi3cddh";
+    sha256 = "126s7aqh9j06zvnwhjbql5x9ibz05pdrrzwb9c6h4qndvr8iqqff";
   };
 
   preConfigure = "./autogen.sh";
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index 81ced3e641b..dc17ccc4a37 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -11,7 +11,7 @@
 
 with stdenv.lib;
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "remmina-${version}";
   version = "1.2.32";
 
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 86c8b6db2c4..8bd21b1a6a0 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -3,14 +3,14 @@
 let
   common = { stname, target, patches ? [], postInstall ? "" }:
     stdenv.mkDerivation rec {
-      version = "0.14.51";
+      version = "0.14.52";
       name = "${stname}-${version}";
 
       src = fetchFromGitHub {
         owner  = "syncthing";
         repo   = "syncthing";
         rev    = "v${version}";
-        sha256 = "1ycly3vh10s04pk0fk9hb0my7w5b16dfgmnk1mi0zjylcii3yzi5";
+        sha256 = "1qzzbqfyjqlgzysyf6dr0xsm3gn35irmllxjjd94v169swvkk5kd";
       };
 
       inherit patches;
diff --git a/pkgs/applications/office/ledger-web/Gemfile.lock b/pkgs/applications/office/ledger-web/Gemfile.lock
index 2c94c53ebc9..290adb0e8e3 100644
--- a/pkgs/applications/office/ledger-web/Gemfile.lock
+++ b/pkgs/applications/office/ledger-web/Gemfile.lock
@@ -17,7 +17,7 @@ GEM
       sinatra-session
     multi_json (1.12.1)
     pg (0.18.4)
-    rack (1.6.4)
+    rack (1.6.11)
     rack-protection (1.5.3)
       rack
     rack-test (0.6.3)
@@ -55,7 +55,7 @@ PLATFORMS
   ruby
 
 DEPENDENCIES
-  ledger_web (= 1.5.2)
+  ledger_web
 
 BUNDLED WITH
-   1.12.5
+   1.16.4
diff --git a/pkgs/applications/office/ledger-web/gemset.nix b/pkgs/applications/office/ledger-web/gemset.nix
index 62e2ad54847..acd1bed25a0 100644
--- a/pkgs/applications/office/ledger-web/gemset.nix
+++ b/pkgs/applications/office/ledger-web/gemset.nix
@@ -32,6 +32,7 @@
     version = "1.5.1";
   };
   ledger_web = {
+    dependencies = ["database_cleaner" "directory_watcher" "pg" "rack" "rspec" "sequel" "sinatra" "sinatra-contrib" "sinatra-session"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0i4vagaiyayymlr41rsy4lg2cl1r011ib0ql9dgjadfy6imb4kqh";
@@ -58,10 +59,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.4";
+    version = "1.6.11";
   };
   rack-protection = {
     dependencies = ["rack"];
@@ -82,6 +83,7 @@
     version = "0.6.3";
   };
   rspec = {
+    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "16g3mmih999f0b6vcz2c3qsc7ks5zy4lj1rzjh8hf6wk531nvc6s";
@@ -90,6 +92,7 @@
     version = "3.5.0";
   };
   rspec-core = {
+    dependencies = ["rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "12yndf7y6g3s1306bv1aycsmd0gjy5m172spdhx54svca2fcpzy1";
@@ -98,6 +101,7 @@
     version = "3.5.2";
   };
   rspec-expectations = {
+    dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bbqfrb1x8gmwf8x2xhhwvvlhwbbafq4isbvlibxi6jk602f09gs";
@@ -106,6 +110,7 @@
     version = "3.5.0";
   };
   rspec-mocks = {
+    dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nl3ksivh9wwrjjd47z5dggrwx40v6gpb3a0gzbp1gs06a5dmk24";
@@ -130,6 +135,7 @@
     version = "4.37.0";
   };
   sinatra = {
+    dependencies = ["rack" "rack-protection" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1b81kbr65mmcl9cdq2r6yc16wklyp798rxkgmm5pr9fvsj7jwmxp";
@@ -138,6 +144,7 @@
     version = "1.4.7";
   };
   sinatra-contrib = {
+    dependencies = ["backports" "multi_json" "rack-protection" "rack-test" "sinatra" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0vi3i0icbi2figiayxpvxbqpbn1syma7w4p4zw5mav1ln4c7jnfr";
@@ -146,6 +153,7 @@
     version = "1.4.7";
   };
   sinatra-session = {
+    dependencies = ["sinatra"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "183xl8i4d2hc03afd1i52gwn2xi3vzrv02g22llhfy5wkmm44gmq";
diff --git a/pkgs/applications/office/libreoffice/wrapper.nix b/pkgs/applications/office/libreoffice/wrapper.nix
index 8566bd76e1e..ce8910d76d4 100644
--- a/pkgs/applications/office/libreoffice/wrapper.nix
+++ b/pkgs/applications/office/libreoffice/wrapper.nix
@@ -13,4 +13,7 @@ in
   for i in $(ls "${libreoffice}/bin/"); do
     test "$i" = "soffice" || ln -s soffice "$out/bin/$(basename "$i")"
   done
-'') // { inherit libreoffice dbus; }
+'') // {
+  inherit libreoffice dbus;
+  meta = libreoffice.meta;
+}
diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index 802f558731a..65e12125801 100644
--- a/pkgs/applications/science/astronomy/gildas/default.nix
+++ b/pkgs/applications/science/astronomy/gildas/default.nix
@@ -7,8 +7,8 @@ let
 in
 
 stdenv.mkDerivation rec {
-  srcVersion = "oct18b";
-  version = "20181001_b";
+  srcVersion = "nov18a";
+  version = "20181101_a";
   name = "gildas-${version}";
 
   src = fetchurl {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     # source code of the previous release to a different directory
     urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.gz"
       "http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.gz" ];
-    sha256 = "1q54q7y4zdax9vr28pvmy5g34kyr92jr3v1rkpjw7lxjafyqwy27";
+    sha256 = "1dl2v8y6vrwaxm3b7nf6dv3ipzybhlhy2kxwnwgc7gqz5704251v";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix
index 89e38104feb..4ffbaf85fbd 100644
--- a/pkgs/applications/science/biology/igv/default.nix
+++ b/pkgs/applications/science/biology/igv/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "igv-${version}";
-  version = "2.4.14";
+  version = "2.4.15";
 
   src = fetchurl {
     url = "https://data.broadinstitute.org/igv/projects/downloads/2.4/IGV_${version}.zip";
-    sha256 = "0z9hk01czkdgi55b0qdvvi43jsqkkx6gl7wglamv425c6rklcvhc";
+    sha256 = "000l9hnkjbl9js7v8fyssgl4imrl0qd15mgz37qx2bwvimdp75gh";
   };
 
   buildInputs = [ unzip jre ];
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index dab30e90f4d..72dc154b71d 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -17,7 +17,7 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "14.29.26";
+  version = "14.29.28";
   pname = "jmol";
   name = "${pname}-${version}";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    sha256 = "0a728lwqbbnm5v2spi5rbqy3xldbcf2gcsf48rkq3p43laps3630";
+    sha256 = "0m72w5qsnsc07p7jjya78i4yz7zrdjqj8zpk65sa0xa2fh1y01g0";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/electronics/ngspice/default.nix b/pkgs/applications/science/electronics/ngspice/default.nix
index 196374706e1..4777c89e876 100644
--- a/pkgs/applications/science/electronics/ngspice/default.nix
+++ b/pkgs/applications/science/electronics/ngspice/default.nix
@@ -2,11 +2,11 @@
 , readline, libX11, libICE, libXaw, libXmu, libXext, libXt, fftw }:
 
 stdenv.mkDerivation {
-  name = "ngspice-28";
+  name = "ngspice-29";
 
   src = fetchurl {
-    url = "mirror://sourceforge/ngspice/ngspice-28.tar.gz";
-    sha256 = "0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l";
+    url = "mirror://sourceforge/ngspice/ngspice-29.tar.gz";
+    sha256 = "0jjwz73naq7l9yhwdqbpnrfckywp2ffkppivxjv8w92zq7xhyvcd";
   };
 
   nativeBuildInputs = [ flex bison ];
diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix
index b787a4e7a01..729aef4e21c 100644
--- a/pkgs/applications/science/logic/acgtk/default.nix
+++ b/pkgs/applications/science/logic/acgtk/default.nix
@@ -1,57 +1,27 @@
-{ stdenv, fetchurl, ocamlPackages,
-  buildBytecode ? true,
-  buildNative ? true,
-  installExamples ? true,
-  installEmacsMode ? true }:
-
-let inherit (stdenv.lib) versionAtLeast optionalString; in
-
-let inherit (ocamlPackages) ocaml camlp4; in
-
-assert buildBytecode || buildNative;
+{ stdenv, fetchurl, dune, ocamlPackages }:
 
 stdenv.mkDerivation {
 
-  name = "acgtk-1.3.1";
+  name = "acgtk-1.5.0";
 
   src = fetchurl {
-    url = http://calligramme.loria.fr/acg/software/acg-1.3.1-20170303.tar.gz;
-    sha256 = "1hhrf6bx2x2wbv5ldn4fnxhpr9lyrj3zh1vcnx8wf8f06ih4rzfq";
+    url = http://calligramme.loria.fr/acg/software/acg-1.5.0-20181019.tar.gz;
+    sha256 = "14n003gxzw5w79hlpw1ja4nq97jqf9zqyg00ihvpxw4bv9jlm8jm";
   };
 
-  buildInputs = with ocamlPackages; [
-    ocaml findlib camlp4 ansiterminal biniou bolt cairo2 dypgen easy-format ocf yojson
-  ];
-
-  patches = [ ./install-emacs-to-site-lisp.patch
-              ./use-nix-ocaml-byteflags.patch ];
-
-  postPatch = optionalString (camlp4 != null) ''
-    substituteInPlace src/Makefile.master.in \
-      --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4/"
-  '' + optionalString (versionAtLeast (stdenv.lib.getVersion ocamlPackages.yojson) "1.4") ''
-    substituteInPlace src/scripting/Makefile.in --replace yojson.cmo yojson.cma
-  '';
-
-  # The bytecode executable is dependent on the dynamic library provided by
-  # ANSITerminal. We can use the -dllpath flag of ocamlc (analogous to
-  # -rpath) to make sure that ocamlrun is able to link the library at
-  # runtime and that Nix detects a runtime dependency.
-  NIX_OCAML_BYTEFLAGS = "-dllpath ${ocamlPackages.ansiterminal}/lib/ocaml/${ocaml.version}/site-lib/ANSITerminal";
+  buildInputs = [ dune ] ++ (with ocamlPackages; [
+    ocaml findlib ansiterminal cairo2 fmt logs menhir mtime ocf
+  ]);
 
-  buildFlags = optionalString buildBytecode "byte"
-             + " "
-             + optionalString buildNative "opt";
+  buildPhase = "dune build";
 
-  installTargets = "install"
-                 + " " + optionalString installExamples "install-examples"
-                 + " " + optionalString installEmacsMode "install-emacs";
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = http://calligramme.loria.fr/acg/;
     description = "A toolkit for developing ACG signatures and lexicon";
     license = licenses.cecill20;
-    platforms = ocaml.meta.platforms or [];
+    inherit (ocamlPackages.ocaml.meta) platforms;
     maintainers = [ maintainers.jirkamarsik ];
   };
 }
diff --git a/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch b/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch
deleted file mode 100644
index 43ddd20b4a3..00000000000
--- a/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- acg-1.1-20140905/Makefile.in	2014-10-24 15:21:39.442287208 +0200
-+++ acg-1.1-20140905/Makefile.in.new	2014-10-24 15:24:58.557117228 +0200
-@@ -35,6 +35,7 @@
- ACGC_DIR=src/acg-data
- 
- DATA_DIR=@datarootdir@/acgtk
-+EMACS_DIR=@prefix@/share/emacs/site-lisp
- 
- 
- 
-@@ -82,10 +83,10 @@
- 	rm -r $(DATA_DIR)
- 
- install-emacs:
--	mkdir -p $(DATA_DIR) && cp -r emacs $(DATA_DIR)/.
-+	mkdir -p $(EMACS_DIR) && cp emacs/acg.el $(EMACS_DIR)
- 
- uninstall-emacs:
--	rm -rf $(DATA_DIR)/emacs
-+	rm -rf $(EMACS_DIR)/emacs
- 
- install-examples:
- 	mkdir -p $(DATA_DIR) && cp -r examples $(DATA_DIR)/.
diff --git a/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch b/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch
deleted file mode 100644
index 26ade37e452..00000000000
--- a/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- acg-1.1-20140905/src/Makefile.master.in	2014-10-27 10:59:42.263382081 +0100
-+++ acg-1.1-20140905/src/Makefile.master.in.new	2014-10-27 10:59:59.683597972 +0100
-@@ -23,7 +23,7 @@
- # All warnings are treated as errors
- WARNINGS = @OCAML09WARNINGS@ -warn-error A
- COMMONFLAGS= $(WARNINGS) @TYPES@
--BYTEFLAGS = $(COMMONFLAGS) $(DEBUGFLAG)
-+BYTEFLAGS = $(COMMONFLAGS) $(DEBUGFLAG) $(NIX_OCAML_BYTEFLAGS)
- OPTFLAGS = $(COMMONFLAGS)
- LFLAGS= -a
- 
diff --git a/pkgs/applications/science/logic/eprover/default.nix b/pkgs/applications/science/logic/eprover/default.nix
index 0e978f2d5c9..4d8e7b17b2b 100644
--- a/pkgs/applications/science/logic/eprover/default.nix
+++ b/pkgs/applications/science/logic/eprover/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "eprover-${version}";
-  version = "2.1";
+  version = "2.2";
 
   src = fetchurl {
     url = "https://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_${version}/E.tgz";
-    sha256 = "1gh99ajmza33f54idhqkdqxp5zh2k06jsf45drihnrzydlqv1n7l";
+    sha256 = "08ihpwgkz0l7skr42iw8lm202kqr51i792bs61qsbnk9gsjlab1c";
   };
 
   buildInputs = [ which ];
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 50eae575bc1..295125eefd1 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -40,14 +40,16 @@ stdenv.mkDerivation rec {
   ];
 
   packageUpgradePatches = let
-    fetchSageCommit = { rev, ...}@args: (
+    # fetch a diff between base and rev on sage's git server
+    # used to fetch trac tickets by setting the base to the release and the
+    # revision to the last commit that should be included
+    fetchSageDiff = { base, rev, ...}@args: (
       fetchpatch ({
-        url = "https://git.sagemath.org/sage.git/patch/?h=${rev}";
-        # TODO better https://git.sagemath.org/sage.git/patch/?id=${rev} ?
+        url = "https://git.sagemath.org/sage.git/patch?id2=${base}&id=${rev}";
         # We don't care about sage's own build system (which builds all its dependencies).
         # Exclude build system changes to avoid conflicts.
         excludes = [ "build/*" ];
-      } // builtins.removeAttrs args [ "rev" ])
+      } // builtins.removeAttrs args [ "rev" "base" ])
     );
   in [
     # New glpk version has new warnings, filter those out until upstream sage has found a solution
@@ -81,6 +83,21 @@ stdenv.mkDerivation rec {
       url = "https://git.sagemath.org/sage.git/patch/?id=30cc778d46579bd0c7537ed33e8d7a4f40fd5c31";
       sha256 = "13vc2q799dh745sm59xjjabllfj0sfjzcacf8k59kwj04x755d30";
     })
+
+    # https://trac.sagemath.org/ticket/26326
+    # needs to be split because there is a merge commit in between
+    (fetchSageDiff {
+      name = "networkx-2.2-1.patch";
+      base = "8.4";
+      rev = "68f5ad068184745b38ba6716bf967c8c956c52c5";
+      sha256 = "112b5ywdqgyzgvql2jj5ss8la9i8rgnrzs8vigsfzg4shrcgh9p6";
+    })
+    (fetchSageDiff {
+      name = "networkx-2.2-2.patch";
+      base = "626485bbe5f33bf143d6dfba4de9c242f757f59b~1";
+      rev = "db10d327ade93711da735a599a67580524e6f7b4";
+      sha256 = "09v87id25fa5r9snfn4mv79syhc77jxfawj5aizmdpwdmpgxjk1f";
+    })
   ];
 
   patches = nixPatches ++ packageUpgradePatches ++ [
diff --git a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
index 6918f048eae..7a47ed9a992 100644
--- a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
@@ -2,7 +2,7 @@
 
 python2Packages.buildPythonApplication rec {
   pname = "git-big-picture";
-  version = "0.9.0";
+  version = "0.10.1";
 
   name = "${pname}-${version}";
 
@@ -10,7 +10,7 @@ python2Packages.buildPythonApplication rec {
     owner = "esc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1h283gzs4nx8lrarmr454zza52cilmnbdrqn1n33v3cn1rayl3c9";
+    sha256 = "0b0zdq7d7k7f6p3wwc799347fraphbr20rxd1ysnc4xi1cj4wpmi";
   };
 
   buildInputs = [ git graphviz ];
@@ -21,7 +21,7 @@ python2Packages.buildPythonApplication rec {
     '';
 
   meta = {
-    description = "Tool for visualization of Git repositories.";
+    description = "Tool for visualization of Git repositories";
     homepage = https://github.com/esc/git-big-picture;
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock
index 9837a195d8c..e215f12bbe6 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock
@@ -630,7 +630,7 @@ GEM
       pry (>= 0.10.4)
     public_suffix (3.0.3)
     pyu-ruby-sasl (0.0.3.3)
-    rack (1.6.10)
+    rack (1.6.11)
     rack-accept (0.4.5)
       rack (>= 0.4)
     rack-attack (4.4.1)
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix
index ee262b6b5d9..dfbd535aaa8 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix
@@ -2320,10 +2320,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.10";
+    version = "1.6.11";
   };
   rack-accept = {
     dependencies = ["rack"];
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock
index 4355b3ae271..28018c6c5c2 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock
@@ -659,7 +659,7 @@ GEM
       pry (>= 0.10.4)
     public_suffix (3.0.3)
     pyu-ruby-sasl (0.0.3.3)
-    rack (1.6.10)
+    rack (1.6.11)
     rack-accept (0.4.5)
       rack (>= 0.4)
     rack-attack (4.4.1)
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix
index 03efc4e9600..32fc41235f4 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix
@@ -2441,10 +2441,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.10";
+    version = "1.6.11";
   };
   rack-accept = {
     dependencies = ["rack"];
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 5464f605cbd..35d374866c8 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -4,7 +4,7 @@
 
 let
   # if you bump version, update pkgs.tortoisehg too or ping maintainer
-  version = "4.7.2";
+  version = "4.8";
   name = "mercurial-${version}";
   inherit (python2Packages) docutils hg-git dulwich python;
 in python2Packages.buildPythonApplication {
@@ -13,7 +13,7 @@ in python2Packages.buildPythonApplication {
 
   src = fetchurl {
     url = "https://mercurial-scm.org/release/${name}.tar.gz";
-    sha256 = "1yq9r8s9jzj8hk2yizjk25s4w16yx9b8mbdj6wp8ld7j2r15kw4p";
+    sha256 = "00rzjbf2blxkc0qwd9mdzx5fnzgpp4jxzijq6wgsjgmqscx40sy5";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index 54eed51cd86..c8ef35d1943 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -89,7 +89,7 @@ GEM
     protected_attributes (1.1.4)
       activemodel (>= 4.0.1, < 5.0)
     public_suffix (3.0.3)
-    rack (1.6.10)
+    rack (1.6.11)
     rack-openid (1.4.2)
       rack (>= 1.1.0)
       ruby-openid (>= 2.1.8)
@@ -201,4 +201,4 @@ DEPENDENCIES
   yard
 
 BUNDLED WITH
-   1.16.3
+   1.16.4
diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix
index fe56298056b..c0b8cb8d6e2 100644
--- a/pkgs/applications/version-management/redmine/gemset.nix
+++ b/pkgs/applications/version-management/redmine/gemset.nix
@@ -350,10 +350,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.10";
+    version = "1.6.11";
   };
   rack-openid = {
     dependencies = ["rack" "ruby-openid"];
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 2a77e1395b4..dfcc28142ac 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -116,8 +116,8 @@ in {
   };
 
   subversion19 = common {
-    version = "1.9.7";
-    sha256 = "08qn94zaqcclam2spb4h742lvhxw8w5bnrlya0fm0bp17hriicf3";
+    version = "1.9.9";
+    sha256 = "1ll13ychbkp367c7zsrrpda5nygkryma5k18qfr8wbaq7dbvxzcd";
   };
 
   subversion_1_10 = common {
@@ -125,4 +125,10 @@ in {
     sha256 = "1z6r3n91a4znsh68rl3jisfr7k4faymhbpalmmvsmvsap34al3cz";
     extraBuildInputs = [ lz4 utf8proc ];
   };
+
+  subversion_1_11 = common {
+    version = "1.11.0";
+    sha256 = "0miyz3xsxxp56iczxv6yqd8p06av3vxpb5nasyg2xb3ln1247i47";
+    extraBuildInputs = [ lz4 utf8proc ];
+  };
 }
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index c55f4bc5fb2..b25560c50c9 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -4,17 +4,17 @@
 
 stdenv.mkDerivation rec {
   name = "makemkv-${ver}";
-  ver = "1.12.3";
+  ver = "1.14.0";
   builder = ./builder.sh;
 
   src_bin = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
-    sha256 = "0rggpzp7gp4y6gxnhl4saxpdwnaivwkildpwbjjh7zvmgka3749a";
+    sha256 = "1xm5pww6jf3m704y7d7nc2ni2a6ygxwb2c665agg2i059sppwz1f";
   };
 
   src_oss = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
-    sha256 = "1w0l2rq9gyzli5ilw82v27d8v7fmchc1wdzcq06q1bsm9wmnbx1r";
+    sha256 = "1ihma2nv7zgqx1psgj3bdz723h94f4vk8mbahxl1v4v2rn9kg25z";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.unfree;
     homepage = http://makemkv.com;
+    platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.titanous ];
   };
 }
diff --git a/pkgs/applications/video/qgifer/default.nix b/pkgs/applications/video/qgifer/default.nix
deleted file mode 100644
index 8185e15dcc8..00000000000
--- a/pkgs/applications/video/qgifer/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchsvn, cmake, opencv, qt4, giflib }:
-
-stdenv.mkDerivation rec {
-  name = "qgifer-${version}";
-  version = "0.2.1";
-
-  src = fetchsvn {
-    url = "https://svn.code.sf.net/p/qgifer/code/tags/${name}";
-    sha256 = "0fv40n58xjwfr06ix9ga79hs527rrzfaq1sll3n2xxchpgf3wf4f";
-  };
-
-  postPatch = ''
-    substituteInPlace CMakeLists.txt --replace "SET(CMAKE_INSTALL_PREFIX" "#"
-  '';
-
-  buildInputs = [ cmake opencv qt4 giflib ];
-
-  meta = with stdenv.lib; {
-    description = "Video-based animated GIF creator";
-    homepage = https://sourceforge.net/projects/qgifer/;
-    license = licenses.gpl3;
-    platforms = platforms.unix;
-    maintainers = [ maintainers.andrewrk ];
-  };
-}
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index e83a1af4466..05c76408602 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -197,10 +197,10 @@ rec {
   # Get revisions from
   # https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/*
 
-  docker_18_06 = dockerGen rec {
-    version = "18.06.1-ce";
-    rev = "e68fc7a215d7133c34aa18e3b72b4a21fd0c6136"; # git commit
-    sha256 = "1bqd6pv5hga4j1s8jm8q5qdnfbjf8lw1ghdk0bw9hhqkn7rcnrv4";
+  docker_18_09 = dockerGen rec {
+    version = "18.09.0";
+    rev = "4d60db472b2bde6931072ca6467f2667c2590dff"; # git commit
+    sha256 = "0py944f5k71c1cf6ci96vnqk43d5979w7r82cngaxk1g6za6k5yj";
     runcRev = "69663f0bd4b60df09991c08812a60108003fa340";
     runcSha256 = "1l37r97l3ra4ph069w190d05r0a43s76nn9jvvlkbwrip1cp6gyq";
     containerdRev = "468a545b9edcd5932818eb9de8e72413e616e86e";
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 40395568f4b..f2cbe75b869 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2Packages, intltool, file
+{ stdenv, fetchurl, python3Packages, intltool, file
 , wrapGAppsHook, gtk-vnc, vte, avahi, dconf
 , gobjectIntrospection, libvirt-glib, system-libvirt
 , gsettings-desktop-schemas, glib, libosinfo, gnome3, gtk3
@@ -8,14 +8,14 @@
 
 with stdenv.lib;
 
-python2Packages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   name = "virt-manager-${version}";
-  version = "1.5.1";
+  version = "2.0.0";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://virt-manager.org/download/sources/virt-manager/${name}.tar.gz";
-    sha256 = "1ardmd4sxdmd57y7qpka44gf09c1yq2g0xs074d3k1h925crv27f";
+    sha256 = "1b48xbrx99mfiv80c60k3ydzkpcpbq57c8h8dl0gnffmnzbs8vzb";
   };
 
   nativeBuildInputs = [
@@ -28,9 +28,9 @@ python2Packages.buildPythonApplication rec {
       gsettings-desktop-schemas libosinfo gtk3
     ] ++ optional spiceSupport spice-gtk;
 
-  propagatedBuildInputs = with python2Packages;
+  propagatedBuildInputs = with python3Packages;
     [
-      pygobject3 ipaddr libvirt libxml2 requests
+      pygobject3 ipaddress libvirt libxml2 requests
     ];
 
   patchPhase = ''
@@ -39,7 +39,7 @@ python2Packages.buildPythonApplication rec {
   '';
 
   postConfigure = ''
-    ${python2Packages.python.interpreter} setup.py configure --prefix=$out
+    ${python3Packages.python.interpreter} setup.py configure --prefix=$out
   '';
 
   postInstall = ''
diff --git a/pkgs/applications/virtualization/virt-what/default.nix b/pkgs/applications/virtualization/virt-what/default.nix
index 0236a34bb12..8a339ac8322 100644
--- a/pkgs/applications/virtualization/virt-what/default.nix
+++ b/pkgs/applications/virtualization/virt-what/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "virt-what-${version}";
-  version = "1.18";
+  version = "1.19";
 
   src = fetchurl {
     url = "https://people.redhat.com/~rjones/virt-what/files/${name}.tar.gz";
-    sha256 = "1x32h7i6lh823wj97r5rr2hg1v215kqzly14dwg0mwx62j1dshmw";
+    sha256 = "00nhwly5q0ps8yv9cy3c2qp8lfshf3s0kdpwiy5zwk3g77z96rwk";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index 5c95b9daf25..2e18636c621 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "i3-${version}";
-  version = "4.15";
+  version = "4.16";
 
   src = fetchurl {
     url = "https://i3wm.org/downloads/${name}.tar.bz2";
-    sha256 = "09jk70hsdxab24lqvj2f30ijrkbv3f6q9xi5dcsax1dw3x6m4z91";
+    sha256 = "1d2mnryn7m9c6d69awd7lwzadliapd0ahi5n8d0ppqy533ssaq6c";
   };
 
   nativeBuildInputs = [ which pkgconfig makeWrapper ];
diff --git a/pkgs/build-support/build-fhs-userenv/chrootenv/default.nix b/pkgs/build-support/build-fhs-userenv/chrootenv/default.nix
index 375c30e1e46..70a7a43bd39 100644
--- a/pkgs/build-support/build-fhs-userenv/chrootenv/default.nix
+++ b/pkgs/build-support/build-fhs-userenv/chrootenv/default.nix
@@ -1,18 +1,15 @@
-{ stdenv, pkgconfig, glib }:
+{ stdenv, meson, ninja, pkgconfig, glib }:
 
 stdenv.mkDerivation {
   name = "chrootenv";
+  src = ./.;
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ meson ninja pkgconfig ];
   buildInputs = [ glib ];
 
-  buildCommand = ''
-    cc ${./chrootenv.c} $(pkg-config --cflags --libs glib-2.0) -o $out
-  '';
-
   meta = with stdenv.lib; {
     description = "Setup mount/user namespace for FHS emulation";
-    license = licenses.free;
+    license = licenses.mit;
     maintainers = with maintainers; [ yegortimoshenko ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/build-support/build-fhs-userenv/chrootenv/meson.build b/pkgs/build-support/build-fhs-userenv/chrootenv/meson.build
new file mode 100644
index 00000000000..6d0770a0dc4
--- /dev/null
+++ b/pkgs/build-support/build-fhs-userenv/chrootenv/meson.build
@@ -0,0 +1,5 @@
+project('chrootenv', 'c')
+
+glib = dependency('glib-2.0')
+
+executable('chrootenv', 'chrootenv.c', dependencies: [glib], install: true)
diff --git a/pkgs/build-support/build-fhs-userenv/default.nix b/pkgs/build-support/build-fhs-userenv/default.nix
index 2bad200efc4..707b256cd4b 100644
--- a/pkgs/build-support/build-fhs-userenv/default.nix
+++ b/pkgs/build-support/build-fhs-userenv/default.nix
@@ -28,7 +28,7 @@ in runCommand name {
   passthru = passthru // {
     env = runCommand "${name}-shell-env" {
       shellHook = ''
-        exec ${chrootenv} ${init runScript} "$(pwd)"
+        exec ${chrootenv}/bin/chrootenv ${init runScript} "$(pwd)"
       '';
     } ''
       echo >&2 ""
@@ -41,7 +41,7 @@ in runCommand name {
   mkdir -p $out/bin
   cat <<EOF >$out/bin/${name}
   #! ${stdenv.shell}
-  exec ${chrootenv} ${init runScript} "\$(pwd)" "\$@"
+  exec ${chrootenv}/bin/chrootenv ${init runScript} "\$(pwd)" "\$@"
   EOF
   chmod +x $out/bin/${name}
   ${extraInstallCommands}
diff --git a/pkgs/build-support/ocaml/dune.nix b/pkgs/build-support/ocaml/dune.nix
new file mode 100644
index 00000000000..7386b07f575
--- /dev/null
+++ b/pkgs/build-support/ocaml/dune.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, ocaml, findlib, dune, opaline }:
+
+{ pname, version, buildInputs ? [], ... }@args:
+
+if args ? minimumOCamlVersion &&
+   ! stdenv.lib.versionAtLeast ocaml.version args.minimumOCamlVersion
+then throw "${pname}-${version} is not available for OCaml ${ocaml.version}"
+else
+
+stdenv.mkDerivation ({
+
+  buildPhase = ''
+    runHook preBuild
+    dune build -p ${pname}
+    runHook postBuild
+  '';
+  checkPhase = ''
+    runHook preCheck
+    dune runtest -p ${pname}
+    runHook postCheck
+  '';
+  installPhase = ''
+    runHook preInstall
+    ${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR
+    runHook postInstall
+  '';
+
+  meta.platform = ocaml.meta.platform;
+
+} // args // {
+
+  name = "ocaml${ocaml.version}-${pname}-${version}";
+
+  buildInputs = [ ocaml dune findlib ] ++ buildInputs;
+
+})
diff --git a/pkgs/data/fonts/ibm-plex/default.nix b/pkgs/data/fonts/ibm-plex/default.nix
index ba214dd35fd..e5a281eebf6 100644
--- a/pkgs/data/fonts/ibm-plex/default.nix
+++ b/pkgs/data/fonts/ibm-plex/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "1.1.6";
+  version = "1.2.1";
 in fetchzip rec {
   name = "ibm-plex-${version}";
   url = "https://github.com/IBM/plex/releases/download/v${version}/OpenType.zip";
@@ -9,7 +9,7 @@ in fetchzip rec {
     mkdir -p $out/share/fonts
     unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype
   '';
-  sha256 = "0n9qmh6v7gvrl1mfb0knygxlbkb78hvkdrppssx64m3pk4pxw85a";
+  sha256 = "1mwlw39nbqrk08crvgm77l98yyyabwhcgsng89c9s67gq4mlxmxa";
 
   meta = with lib; {
     description = "IBM Plex Typeface";
diff --git a/pkgs/data/misc/osinfo-db/default.nix b/pkgs/data/misc/osinfo-db/default.nix
index 94e3218ad35..b4de04780bd 100644
--- a/pkgs/data/misc/osinfo-db/default.nix
+++ b/pkgs/data/misc/osinfo-db/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, osinfo-db-tools, intltool, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "osinfo-db-20181011";
+  name = "osinfo-db-20181101";
 
   src = fetchurl {
     url = "https://releases.pagure.org/libosinfo/${name}.tar.xz";
-    sha256 = "1f0xa50xn15p3zig9031icqky8drf0654sbjmmziw2ijcdyzfkcp";
+    sha256 = "1n9xq5nspfgsdqifh23ypsc85n5xl6cdbwdlacp0sa8rhkmfdvd7";
   };
 
   nativeBuildInputs = [ osinfo-db-tools intltool libxml2 ];
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index a08e0fd3cd1..34830117b77 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo
 , pango, cogl, clutter, libstartup_notification, zenity, libcanberra-gtk3
 , libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libinput
-, pipewire, libgudev, libwacom, xwayland, autoreconfHook }:
+, pipewire, libgudev, libwacom, xwayland, autoreconfHook, fetchpatch }:
 
 stdenv.mkDerivation rec {
   name = "mutter-${version}";
@@ -16,6 +16,14 @@ stdenv.mkDerivation rec {
     updateScript = gnome3.updateScript { packageName = "mutter"; attrPath = "gnome3.mutter"; };
   };
 
+  patches = [
+    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/172
+    (fetchpatch {
+      url = https://gitlab.gnome.org/GNOME/mutter/commit/62660bbd.patch;
+      sha256 = "1qq8vxlqnyrqh94dc0dh1aj1dsbyw6bwv3x46q5vsscbbxbiv9wk";
+    })
+  ];
+
   configureFlags = [
     "--with-x"
     "--disable-static"
diff --git a/pkgs/desktops/plasma-5/fetch.sh b/pkgs/desktops/plasma-5/fetch.sh
index 64907e6271d..312691dcc7e 100644
--- a/pkgs/desktops/plasma-5/fetch.sh
+++ b/pkgs/desktops/plasma-5/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/plasma/5.14.0/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.14.3/ -A '*.tar.xz' )
diff --git a/pkgs/desktops/plasma-5/srcs.nix b/pkgs/desktops/plasma-5/srcs.nix
index 690f5fafef2..a4d90aa7e3d 100644
--- a/pkgs/desktops/plasma-5/srcs.nix
+++ b/pkgs/desktops/plasma-5/srcs.nix
@@ -3,363 +3,363 @@
 
 {
   bluedevil = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/bluedevil-5.14.0.tar.xz";
-      sha256 = "0d1bw6cp2vwhs17j0bgc3gysy3g2syb1z0zwg28sa889l8a3qyv9";
-      name = "bluedevil-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/bluedevil-5.14.3.tar.xz";
+      sha256 = "048iyzps89caw6dr1x767byj8a7gcg9vl1fvnndabkhm3d71cgxk";
+      name = "bluedevil-5.14.3.tar.xz";
     };
   };
   breeze = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/breeze-5.14.0.tar.xz";
-      sha256 = "0gd95a7km0pqc0qinn2p0kv72j0ihdl96vs14f5jr5n78a2r7r9a";
-      name = "breeze-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/breeze-5.14.3.tar.xz";
+      sha256 = "19wm6krcnyis1vgs655jynvgm93k776drvjra4ysy378d2n3f1w6";
+      name = "breeze-5.14.3.tar.xz";
     };
   };
   breeze-grub = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/breeze-grub-5.14.0.tar.xz";
-      sha256 = "17kghx9qv7flm2019alqg1a6pnacgczj1hc9sc0bvj8znh9hhxvh";
-      name = "breeze-grub-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/breeze-grub-5.14.3.tar.xz";
+      sha256 = "1nkf4av6xdx7q8z6hq0gdsmm38z5xawh1awpcjwc61dd8n55bn8a";
+      name = "breeze-grub-5.14.3.tar.xz";
     };
   };
   breeze-gtk = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/breeze-gtk-5.14.0.tar.xz";
-      sha256 = "1zlhyv26k3zqm2bbd9mk7123q5xy5g2cp6ayavhglgxxb8n0zyx9";
-      name = "breeze-gtk-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/breeze-gtk-5.14.3.tar.xz";
+      sha256 = "000w368cvyi8whbrp500jjcrdivm2fl7kwcn81fj8ydk7wn5pmyn";
+      name = "breeze-gtk-5.14.3.tar.xz";
     };
   };
   breeze-plymouth = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/breeze-plymouth-5.14.0.tar.xz";
-      sha256 = "1ilf3cp7cg3lpkxvd8n7h33wvsbbikrvd514gan2ns16j9d4ziz1";
-      name = "breeze-plymouth-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/breeze-plymouth-5.14.3.tar.xz";
+      sha256 = "0fd8d5hwkhrd3n9ahfw99anh43azi28n5wh47ncrwdy7m81v4lgx";
+      name = "breeze-plymouth-5.14.3.tar.xz";
     };
   };
   discover = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/discover-5.14.0.tar.xz";
-      sha256 = "1chkf5hjpnb4laq5sn7rr8f4fv90mg4brdsx71cz1b5xbvgyy1sf";
-      name = "discover-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/discover-5.14.3.tar.xz";
+      sha256 = "12zx6p68yq5mhv459wy7y2f90nmw3n0n9l7xpb6g7k5ssmr1jqk4";
+      name = "discover-5.14.3.tar.xz";
     };
   };
   drkonqi = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/drkonqi-5.14.0.tar.xz";
-      sha256 = "0i5zgafkdxw6wqqfw81ygdmg5fffy2gkf6sciq7f8nfxxglw6pkp";
-      name = "drkonqi-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/drkonqi-5.14.3.tar.xz";
+      sha256 = "11k8mf45rjrqxb3pny96x6pz50x9hglpaspsmjz9w19b2drxg79i";
+      name = "drkonqi-5.14.3.tar.xz";
     };
   };
   kactivitymanagerd = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kactivitymanagerd-5.14.0.tar.xz";
-      sha256 = "03jxvf4mgh0wmphykskc8ra49ghrjv5in4mgzpafswn7w8q8gyii";
-      name = "kactivitymanagerd-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kactivitymanagerd-5.14.3.tar.xz";
+      sha256 = "0ham0p2zrjx47g12fad2gci56jiq5x57vgnpr29pypqrc3hqwsn5";
+      name = "kactivitymanagerd-5.14.3.tar.xz";
     };
   };
   kde-cli-tools = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kde-cli-tools-5.14.0.tar.xz";
-      sha256 = "1n51vaiy073jzs051wlpll7652bb7vwg5qmravndhl8ibqrv7qaz";
-      name = "kde-cli-tools-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kde-cli-tools-5.14.3.tar.xz";
+      sha256 = "1ld4rhmjbm6xz5xri8r1zs4lr2d443372h7pqjs1hc3r836aivwa";
+      name = "kde-cli-tools-5.14.3.tar.xz";
     };
   };
   kdecoration = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kdecoration-5.14.0.tar.xz";
-      sha256 = "01gkl0yqplm1l2qa4gfw7rzi5zfdxq7d3a25qicdwhas69hc8nzm";
-      name = "kdecoration-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kdecoration-5.14.3.tar.xz";
+      sha256 = "0sifflfdz3md5ymlpkzp2pvccfr0gzw8dx87j1s5qk1b04fx9vg8";
+      name = "kdecoration-5.14.3.tar.xz";
     };
   };
   kde-gtk-config = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kde-gtk-config-5.14.0.tar.xz";
-      sha256 = "0mb1am14hd3x5gkmy3vcg3wb9g29c8y38ywhr0f93riphws0nhvh";
-      name = "kde-gtk-config-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kde-gtk-config-5.14.3.tar.xz";
+      sha256 = "1m0vhgwm5zrk7sg4j71qmn2gsm5qhhgvcdpgryc64kjdk24lss31";
+      name = "kde-gtk-config-5.14.3.tar.xz";
     };
   };
   kdeplasma-addons = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kdeplasma-addons-5.14.0.tar.xz";
-      sha256 = "0k98ms851z2naw4rjmxldy6pl9a51mmwvq6c4znm2pnrw04jz15d";
-      name = "kdeplasma-addons-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kdeplasma-addons-5.14.3.tar.xz";
+      sha256 = "1rw84wfym722z6cl127gwma9npjzy0yj65fzr9rqpplks8il6m4m";
+      name = "kdeplasma-addons-5.14.3.tar.xz";
     };
   };
   kgamma5 = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kgamma5-5.14.0.tar.xz";
-      sha256 = "17vb1bb4glw6ccd1s1chjm07lvpkklcvny7rdjgmz2r00vk6mjqy";
-      name = "kgamma5-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kgamma5-5.14.3.tar.xz";
+      sha256 = "03r866icbnk5q11zpnkxg3azcgbr6fp16b8mmsw7j4jl820shv4q";
+      name = "kgamma5-5.14.3.tar.xz";
     };
   };
   khotkeys = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/khotkeys-5.14.0.tar.xz";
-      sha256 = "0b2q4s0j6wji8112l89347fc8ph9vrf2p8ngig0c4dn4ayk7hqd1";
-      name = "khotkeys-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/khotkeys-5.14.3.tar.xz";
+      sha256 = "1arsjvxw7q6434y3c8l458ilmynqbdb30sdvfzgrlk19m1dqmkym";
+      name = "khotkeys-5.14.3.tar.xz";
     };
   };
   kinfocenter = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kinfocenter-5.14.0.tar.xz";
-      sha256 = "0pc1jc7d26w2asa2yj8rr04rgjvmavlyhw3wd0dqv08rhr0rl7pj";
-      name = "kinfocenter-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kinfocenter-5.14.3.tar.xz";
+      sha256 = "1kapxxb4f4lia7yr4jmx83y0vwn6m1hrij05p5d1axy90jwmcy37";
+      name = "kinfocenter-5.14.3.tar.xz";
     };
   };
   kmenuedit = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kmenuedit-5.14.0.tar.xz";
-      sha256 = "0ld9q5jq7zc6kz72pg9qqg10rbargkwyks657cnv8id1pna17bsr";
-      name = "kmenuedit-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kmenuedit-5.14.3.tar.xz";
+      sha256 = "0yikz8v3gawkbn1vds7i9xj2j4p1y8nv0adrhr4vwdii2ar37jvd";
+      name = "kmenuedit-5.14.3.tar.xz";
     };
   };
   kscreen = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kscreen-5.14.0.tar.xz";
-      sha256 = "1y28a96kal2gziga2vr6vg5swv2ynfiv3804n06v9847rd7s3ixk";
-      name = "kscreen-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kscreen-5.14.3.tar.xz";
+      sha256 = "0jn2d5373agh5b47v7xd17apbkpbrvl5z7x3n83k4q4j30q7pgs3";
+      name = "kscreen-5.14.3.tar.xz";
     };
   };
   kscreenlocker = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kscreenlocker-5.14.0.tar.xz";
-      sha256 = "1nyd8jy4ngpg51nq46cx038i4w1qak9zi4d4v69blkhzd65gckj1";
-      name = "kscreenlocker-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kscreenlocker-5.14.3.tar.xz";
+      sha256 = "1zn99zsn07fm4npf7l6n243bnn970pb818pfpbw9kgwjlh0nyms8";
+      name = "kscreenlocker-5.14.3.tar.xz";
     };
   };
   ksshaskpass = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/ksshaskpass-5.14.0.tar.xz";
-      sha256 = "0nqvr3z7058hfymw8gglnfmcxx976km6sf0msyd3ykfpymxsmz74";
-      name = "ksshaskpass-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/ksshaskpass-5.14.3.tar.xz";
+      sha256 = "1gh5hakc2i7m2scvf8nyrl8inkh1fsrggdydiwb02mg763lkk9nc";
+      name = "ksshaskpass-5.14.3.tar.xz";
     };
   };
   ksysguard = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/ksysguard-5.14.0.tar.xz";
-      sha256 = "0hbcx20r57lfh566q2974rs2kzlq5ghxadnd1ghiwz5141xh02bm";
-      name = "ksysguard-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/ksysguard-5.14.3.tar.xz";
+      sha256 = "1aw8r4ngq00lv0d38iddwdhlmmv97qiwqjvgzy4m20dfm7ldaldp";
+      name = "ksysguard-5.14.3.tar.xz";
     };
   };
   kwallet-pam = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kwallet-pam-5.14.0.tar.xz";
-      sha256 = "0cw173wbf105p7028xik33lm38z82b1rlc7090l4khwsgmwgff97";
-      name = "kwallet-pam-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kwallet-pam-5.14.3.tar.xz";
+      sha256 = "109jzfwf9b0c1mm5rq4jgiaf4sxad1wx4j9pmwxr4m17nf3ys5pg";
+      name = "kwallet-pam-5.14.3.tar.xz";
     };
   };
   kwayland-integration = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kwayland-integration-5.14.0.tar.xz";
-      sha256 = "19xbqb7m6hxyg8s8jdbg1x9qcfia2ypm0z4k6zgva6mwqwhqcbw1";
-      name = "kwayland-integration-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kwayland-integration-5.14.3.tar.xz";
+      sha256 = "117wvplwxhphk3yiy61dlid5nf42m869qkcsx5mlnjdwxglwgwfj";
+      name = "kwayland-integration-5.14.3.tar.xz";
     };
   };
   kwin = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kwin-5.14.0.tar.xz";
-      sha256 = "0rd6hkyg6n0w2jnj648sp7gs7n624igraz8ajyrglfzvxkxvqi8i";
-      name = "kwin-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kwin-5.14.3.tar.xz";
+      sha256 = "0yv8sa96rnaabi29mny17vyxswj4b4rgny75kznqnk6n01wjm4xy";
+      name = "kwin-5.14.3.tar.xz";
     };
   };
   kwrited = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/kwrited-5.14.0.tar.xz";
-      sha256 = "0s9lgi5a945xzpl1j5gdn65n8bywqlwfnrig56x90550achbvmlq";
-      name = "kwrited-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/kwrited-5.14.3.tar.xz";
+      sha256 = "1lzbrifsb9qvn4622rd3b0p5jfr67ql5rsd1lkw1jpib9ckzlrph";
+      name = "kwrited-5.14.3.tar.xz";
     };
   };
   libkscreen = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/libkscreen-5.14.0.tar.xz";
-      sha256 = "1fsi9cb724kwr0cll60dl9qh67290r3gp8lcsmlyw30zk9mqwgdi";
-      name = "libkscreen-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/libkscreen-5.14.3.tar.xz";
+      sha256 = "14zfmycnzf30jgbf1gcyp8kpipvn1w2sd6inrylyyf089565r9ai";
+      name = "libkscreen-5.14.3.tar.xz";
     };
   };
   libksysguard = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/libksysguard-5.14.0.tar.xz";
-      sha256 = "00s1dkiqykw2drlmvzs3hkdrkbk8n86s751kl4xlvcbslbijzcv0";
-      name = "libksysguard-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/libksysguard-5.14.3.tar.xz";
+      sha256 = "099cn9hmz5k10ms3wgskcdps91wmw8r0g52jknnid4ggb7vkpvkr";
+      name = "libksysguard-5.14.3.tar.xz";
     };
   };
   milou = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/milou-5.14.0.tar.xz";
-      sha256 = "1k413zs70ggsamwxxidlfjdf8aqrcnzznar86z30q3ki1y14xf1l";
-      name = "milou-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/milou-5.14.3.tar.xz";
+      sha256 = "16xqshzc4q2c0h9ihgmcqvyh181qacqz7c3amczzf4yc14xcsgxl";
+      name = "milou-5.14.3.tar.xz";
     };
   };
   oxygen = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/oxygen-5.14.0.tar.xz";
-      sha256 = "0kbafhzjkm61dpznx1w713jwyicj7qq76vk7zf6vz2g90b8c47na";
-      name = "oxygen-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/oxygen-5.14.3.tar.xz";
+      sha256 = "1q6xsk9aha6sxq98r28g6wg93ml6hcqd3b73ygrwgncx1rhia446";
+      name = "oxygen-5.14.3.tar.xz";
     };
   };
   plasma-browser-integration = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-browser-integration-5.14.0.tar.xz";
-      sha256 = "1s8cxlfyp8crq2j4appffnhc3cgx9igmqhxyyk9pr4jbb4cwv42b";
-      name = "plasma-browser-integration-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-browser-integration-5.14.3.tar.xz";
+      sha256 = "1fzxmrijrwh75ni5g79cy2dj6g6mja9vkgd3hqrbir7hmmrqs8b3";
+      name = "plasma-browser-integration-5.14.3.tar.xz";
     };
   };
   plasma-desktop = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-desktop-5.14.0.tar.xz";
-      sha256 = "0qrqd78bp9n73rr142wxiynxij2i8cw41ckgd46iw8an550v8s80";
-      name = "plasma-desktop-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-desktop-5.14.3.tar.xz";
+      sha256 = "0kn2l5ca0pmpfjalnbc53h892hj9kr0xv9070a0i09fn6qn4pxcs";
+      name = "plasma-desktop-5.14.3.tar.xz";
     };
   };
   plasma-integration = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-integration-5.14.0.tar.xz";
-      sha256 = "1dv43iwh6rp5ldn16jd6krkab6nmplav47j5qvngcp88src31k47";
-      name = "plasma-integration-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-integration-5.14.3.tar.xz";
+      sha256 = "0iwfkv32s97s459ksbmrk6w3p5qkmg99yiy3prclq73pa7i176x9";
+      name = "plasma-integration-5.14.3.tar.xz";
     };
   };
   plasma-nm = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-nm-5.14.0.tar.xz";
-      sha256 = "1pr4dg90vw22jzsrbhzx3rycyj9by8r4239ypprw0i5d9795mian";
-      name = "plasma-nm-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-nm-5.14.3.tar.xz";
+      sha256 = "0sgqb5izlfpk95vjyn65jg9mwidvlranzrdjq5nyyl47pf8nfigf";
+      name = "plasma-nm-5.14.3.tar.xz";
     };
   };
   plasma-pa = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-pa-5.14.0.tar.xz";
-      sha256 = "1b95vyirgxfpjrccnl81bynlk3zdxz0bf7czsap0bnwhal0mcp2w";
-      name = "plasma-pa-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-pa-5.14.3.tar.xz";
+      sha256 = "1s1csabc6w9vmi0klckq5kvrfbkv2qn9jv7x8r3v6nx6wibc5y7r";
+      name = "plasma-pa-5.14.3.tar.xz";
     };
   };
   plasma-sdk = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-sdk-5.14.0.tar.xz";
-      sha256 = "0b5h7qvan0f5afdf4d19dmpalgbd9gyxgkq3r5h7axqdfdanz38f";
-      name = "plasma-sdk-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-sdk-5.14.3.tar.xz";
+      sha256 = "0sx7a24fzw15dwnlm574z8643sy4kqzcqai1v6l8078smqz4kdqc";
+      name = "plasma-sdk-5.14.3.tar.xz";
     };
   };
   plasma-tests = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-tests-5.14.0.tar.xz";
-      sha256 = "01li04p44f1yajnjhvhhqd8mjwv8si5d02749p5dn0x80fkxgh9d";
-      name = "plasma-tests-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-tests-5.14.3.tar.xz";
+      sha256 = "0y975sv202gg68fnv3wycisx642vmb177zl7x9gkk66wdi5958gb";
+      name = "plasma-tests-5.14.3.tar.xz";
     };
   };
   plasma-vault = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-vault-5.14.0.tar.xz";
-      sha256 = "1kclryjld7lanimr6n7r1b9y8wqgyjvcsky9cfq3ql1ssfc0ncm3";
-      name = "plasma-vault-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-vault-5.14.3.tar.xz";
+      sha256 = "05l96lnfni2vc92vsxjvzlwh0vd8kacmn1ywp3rwzklwdyzwwbw5";
+      name = "plasma-vault-5.14.3.tar.xz";
     };
   };
   plasma-workspace = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-workspace-5.14.0.tar.xz";
-      sha256 = "1fgz06dnszrrq5kqa3zn22cj93adz8vwg9n9vdihgi6c77rqlxyf";
-      name = "plasma-workspace-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-workspace-5.14.3.tar.xz";
+      sha256 = "0mrhlsgckin6n2njr9lmpd84qm515wfdvr4lbhs64dllmqa9c77f";
+      name = "plasma-workspace-5.14.3.tar.xz";
     };
   };
   plasma-workspace-wallpapers = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plasma-workspace-wallpapers-5.14.0.tar.xz";
-      sha256 = "10j006wc1l2hjw9s9w7sxwimpahrnlpidnrrdgwjp0fswmnyqj5c";
-      name = "plasma-workspace-wallpapers-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plasma-workspace-wallpapers-5.14.3.tar.xz";
+      sha256 = "09cwydr45bh367jqi31fax459pj0w4cia6y752869hcm0x55m4jb";
+      name = "plasma-workspace-wallpapers-5.14.3.tar.xz";
     };
   };
   plymouth-kcm = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/plymouth-kcm-5.14.0.tar.xz";
-      sha256 = "0smjnh3adhsbp2ds8gvi5k3jq21i85zvaf9pvr0ih4nqpn4plalk";
-      name = "plymouth-kcm-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/plymouth-kcm-5.14.3.tar.xz";
+      sha256 = "0srv7ph43hcyly69d0jydrxncc2hq8xxy0ppm6g8pdyl06q06iag";
+      name = "plymouth-kcm-5.14.3.tar.xz";
     };
   };
   polkit-kde-agent = {
-    version = "1-5.14.0";
+    version = "1-5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/polkit-kde-agent-1-5.14.0.tar.xz";
-      sha256 = "0bzz2qmxslmms7mrs4l8myg9byx0w7dz6xrmvi8v11wyk2lngsb0";
-      name = "polkit-kde-agent-1-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/polkit-kde-agent-1-5.14.3.tar.xz";
+      sha256 = "05qvwmbaj79m5myb8ah7873diflnqri2j3cwsr4y1i9wyjq2l5bw";
+      name = "polkit-kde-agent-1-5.14.3.tar.xz";
     };
   };
   powerdevil = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/powerdevil-5.14.0.tar.xz";
-      sha256 = "057hj7c3pq5a064ydx2r6kkf0q8lj7rl0jfrzcpr72s0yri3wcjr";
-      name = "powerdevil-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/powerdevil-5.14.3.tar.xz";
+      sha256 = "0css6lrb7bfm4l2piqi6cc28blw45kfxdxrn6q3d30nwb9jhsfj6";
+      name = "powerdevil-5.14.3.tar.xz";
     };
   };
   sddm-kcm = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/sddm-kcm-5.14.0.tar.xz";
-      sha256 = "0dz6iz0qf4ycfic1ad99cqxj05pa4m92m5l74as8pkqviv8mm33d";
-      name = "sddm-kcm-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/sddm-kcm-5.14.3.tar.xz";
+      sha256 = "0f25lyqrjq5kbqjh3bgxlgmfbii0nzgdf3pza8gnbmq8jfx58i5w";
+      name = "sddm-kcm-5.14.3.tar.xz";
     };
   };
   systemsettings = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/systemsettings-5.14.0.tar.xz";
-      sha256 = "0gywcc1zcqp7613gd7m9811plmmk8hr9frd2v0ari69ppm1ndmpj";
-      name = "systemsettings-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/systemsettings-5.14.3.tar.xz";
+      sha256 = "1ks6ib4n1gcmrac9q1cdas1c7xl86cvcz278anrw3ch2dfr7xppc";
+      name = "systemsettings-5.14.3.tar.xz";
     };
   };
   user-manager = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/user-manager-5.14.0.tar.xz";
-      sha256 = "17qdpdq1j53h49i71ri8f91fby9m47ngpd7gn6qp7gzsfcyqky3j";
-      name = "user-manager-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/user-manager-5.14.3.tar.xz";
+      sha256 = "043nc8nlxs6y9fqb2g574l2pjzdlklar9n5v1clrzqmxdrqva0ba";
+      name = "user-manager-5.14.3.tar.xz";
     };
   };
   xdg-desktop-portal-kde = {
-    version = "5.14.0";
+    version = "5.14.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.14.0/xdg-desktop-portal-kde-5.14.0.tar.xz";
-      sha256 = "0xziyrrccv0jjjf8h8p5w2wx0qz745ilib1i2l50amy6dwy0k0s9";
-      name = "xdg-desktop-portal-kde-5.14.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.14.3/xdg-desktop-portal-kde-5.14.3.tar.xz";
+      sha256 = "0g0b73ylhl6y7afdk2mxnsd809v6aby7vbw86zf82ymx23lmwg83";
+      name = "xdg-desktop-portal-kde-5.14.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
index 77d9d85aaa9..573f5e175ec 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
@@ -1,26 +1,43 @@
 let
-  version = "11";
-  buildNumber = "28";
-  baseUrl = "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-${version}%2B${buildNumber}";
-  makePackage = { packageType, vmType, sha256 }: import ./jdk-darwin-base.nix {
+  makePackage = { version, buildNumber, packageType, vmType, sha256 }: import ./jdk-darwin-base.nix {
     name = if packageType == "jdk"
       then
         "adoptopenjdk-${vmType}-bin-${version}"
       else
         "adoptopenjdk-${packageType}-${vmType}-bin-${version}";
-    url = "${baseUrl}/OpenJDK${version}-${packageType}_x64_mac_${vmType}_${version}_${buildNumber}.tar.gz";
+
+    url = "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-${version}%2B${buildNumber}/OpenJDK11-${packageType}_x64_mac_${vmType}_${version}_${buildNumber}.tar.gz";
+
     inherit sha256;
   };
 in
 {
   jdk-hotspot = makePackage {
+    version = "11";
+    buildNumber = "28";
     packageType = "jdk";
     vmType = "hotspot";
     sha256 = "ca0ec49548c626904061b491cae0a29b9b4b00fb34d8973dc217e10ab21fb0f3";
   };
   jre-hotspot = makePackage {
+    version = "11";
+    buildNumber = "28";
     packageType = "jre";
     vmType = "hotspot";
     sha256 = "ef4dbfe5aed6ab2278fcc14db6cc73abbaab56e95f6ebb023790a7ebc6d7f30c";
   };
+  jdk-openj9 = makePackage {
+    version = "11.0.1";
+    buildNumber = "13";
+    packageType = "jdk";
+    vmType = "openj9";
+    sha256 = "c5e9b588b4ac5b0bd5b4edd69d59265d1199bb98af7ca3270e119b264ffb6e3f";
+  };
+  jre-openj9 = makePackage {
+    version = "11.0.1";
+    buildNumber = "13";
+    packageType = "jre";
+    vmType = "openj9";
+    sha256 = "0901dc5946fdf967f92f7b719ddfffdcdde5bd3fef86a83d7a3f2f39ddbef1f8";
+  };
 }
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
index 6e00782c391..f4990b6effc 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
@@ -1,36 +1,43 @@
 let
-  version = "11";
-  buildNumber = "28";
-  baseUrl = "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-${version}%2B${buildNumber}";
-  makePackage = { packageType, vmType, sha256 }: import ./jdk-linux-base.nix {
+  makePackage = { version, buildNumber, packageType, vmType, sha256 }: import ./jdk-linux-base.nix {
     name = if packageType == "jdk"
       then
         "adoptopenjdk-${vmType}-bin-${version}"
       else
         "adoptopenjdk-${packageType}-${vmType}-bin-${version}";
-    url = "${baseUrl}/OpenJDK${version}-${packageType}_x64_linux_${vmType}_${version}_${buildNumber}.tar.gz";
+
+    url = "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-${version}%2B${buildNumber}/OpenJDK11-${packageType}_x64_linux_${vmType}_${version}_${buildNumber}.tar.gz";
+
     inherit sha256;
   };
 in
 {
   jdk-hotspot = makePackage {
+    version = "11";
+    buildNumber = "28";
     packageType = "jdk";
     vmType = "hotspot";
     sha256 = "e1e18fc9ce2917473da3e0acb5a771bc651f600c0195a3cb40ef6f22f21660af";
   };
   jre-hotspot = makePackage {
+    version = "11";
+    buildNumber = "28";
     packageType = "jre";
     vmType = "hotspot";
     sha256 = "346448142d46c6e51d0fadcaadbcde31251d7678922ec3eb010fcb1b6e17804c";
   };
   jdk-openj9 = makePackage {
+    version = "11.0.1";
+    buildNumber = "13";
     packageType = "jdk";
     vmType = "openj9";
-    sha256 = "fd77f22eb74078bcf974415abd888296284d2ceb81dbaca6ff32f59416ebc57f";
+    sha256 = "765947ab9457a29d2aa9d11460a4849611343c1e0ea3b33b9c08409cd4672251";
   };
   jre-openj9 = makePackage {
+    version = "11.0.1";
+    buildNumber = "13";
     packageType = "jre";
     vmType = "openj9";
-    sha256 = "83a7c95e6b2150a739bdd5e8a6fe0315904fd13d8867c95db67c0318304a2c42";
+    sha256 = "a016413fd8415429b42e543fed7a1bee5010b1dbaf71d29a26e1c699f334c6ff";
   };
 }
diff --git a/pkgs/development/compilers/cudatoolkit/default.nix b/pkgs/development/compilers/cudatoolkit/default.nix
index 7a062a55215..6fdbde242f3 100644
--- a/pkgs/development/compilers/cudatoolkit/default.nix
+++ b/pkgs/development/compilers/cudatoolkit/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, makeWrapper, fetchurl, requireFile, perl, ncurses, expat, python27, zlib
-, gcc48, gcc49, gcc5, gcc6
+, gcc48, gcc49, gcc5, gcc6, gcc7
 , xorg, gtk2, glib, fontconfig, freetype, unixODBC, alsaLib, glibc
 }:
 
@@ -229,7 +229,7 @@ in rec {
         sha256 = "1kx6l4yzsamk6q1f4vllcpywhbfr2j5wfl4h5zx8v6dgfpsjm2lw";
       })
     ];
-    gcc = gcc6;
+    gcc = gcc7;
   };
 
   cudatoolkit_9 = cudatoolkit_9_2;
@@ -239,7 +239,7 @@ in rec {
     url = "https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_410.48_linux";
     sha256 = "16p3bv1lwmyqpxil8r951h385sy9asc578afrc7lssa68c71ydcj";
 
-    gcc = gcc6;
+    gcc = gcc7;
   };
 
   cudatoolkit_10 = cudatoolkit_10_0;
diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix
index 1b5f514015d..bcb724fd58c 100644
--- a/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/pkgs/development/compilers/gcc/4.8/default.nix
@@ -177,14 +177,14 @@ stdenv.mkDerivation ({
 
   inherit patches;
 
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
+
   outputs = [ "out" "lib" "man" "info" ];
   setOutputFlags = false;
   NIX_NO_SELF_RPATH = true;
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
-
   postPatch =
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index 172fd9d2665..13ff4165a41 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -185,6 +185,8 @@ stdenv.mkDerivation ({
 
   inherit patches;
 
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
+
   outputs = if langJava || langGo then ["out" "man" "info"]
     else [ "out" "lib" "man" "info" ];
   setOutputFlags = false;
@@ -192,8 +194,6 @@ stdenv.mkDerivation ({
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
-
   postPatch =
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix
index 5933ba7a72d..a30cd6bbda9 100644
--- a/pkgs/development/compilers/gcc/5/default.nix
+++ b/pkgs/development/compilers/gcc/5/default.nix
@@ -178,7 +178,7 @@ stdenv.mkDerivation ({
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
 
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 5d7549ed115..372a7065f2d 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -178,7 +178,7 @@ stdenv.mkDerivation ({
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
 
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix
index 90621205e38..094c26cbf69 100644
--- a/pkgs/development/compilers/gcc/7/default.nix
+++ b/pkgs/development/compilers/gcc/7/default.nix
@@ -149,7 +149,7 @@ stdenv.mkDerivation ({
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
 
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix
index 1c08b1c8901..1335666c54c 100644
--- a/pkgs/development/compilers/gcc/8/default.nix
+++ b/pkgs/development/compilers/gcc/8/default.nix
@@ -143,7 +143,7 @@ stdenv.mkDerivation ({
 
   libc_dev = stdenv.cc.libc_dev;
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
 
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
diff --git a/pkgs/development/compilers/ghc/7.10.3-binary.nix b/pkgs/development/compilers/ghc/7.10.3-binary.nix
deleted file mode 100644
index 53693ff5052..00000000000
--- a/pkgs/development/compilers/ghc/7.10.3-binary.nix
+++ /dev/null
@@ -1,163 +0,0 @@
-{ stdenv
-, fetchurl, perl
-, ncurses5, gmp, libiconv
-, gcc, llvm_35
-}:
-
-# Prebuilt only does native
-assert stdenv.targetPlatform == stdenv.hostPlatform;
-
-let
-  libPath = stdenv.lib.makeLibraryPath ([
-    ncurses5 gmp
-  ] ++ stdenv.lib.optional (stdenv.hostPlatform.isDarwin) libiconv);
-
-  libEnvVar = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin "DY"
-    + "LD_LIBRARY_PATH";
-
-in
-
-stdenv.mkDerivation rec {
-  version = "7.10.3";
-
-  name = "ghc-${version}-binary";
-
-  src = fetchurl ({
-    "i686-linux" = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}b-i386-deb7-linux.tar.bz2";
-      sha256 = "20b32912fb7e57910a3c908f99a9519b57a4872e1ea0f4f2265b2f7b30e8a3cd";
-    };
-    "x86_64-linux" = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}b-x86_64-deb8-linux.tar.bz2";
-      sha256 = "5e163c557e9236cce68be41c984eab0fcdbdc1602e39040ca9ae325e6bdec1c3";
-    };
-    "armv7l-linux" = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-armv7-deb8-linux.tar.bz2";
-      sha256 = "2913763eef88e4d1843a1e4c34225afb1866310d1a1956c08a4131f4593518f6";
-    };
-    "x86_64-darwin" = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}b-x86_64-apple-darwin.tar.bz2";
-      sha256 = "4b537228d49b5ea0f8e8dbcc440a5b3c3cb19a92579d607291cc0041422fa5c3";
-    };
-  }.${stdenv.hostPlatform.system}
-    or (throw "cannot bootstrap GHC on this platform"));
-
-  nativeBuildInputs = [ perl ];
-  buildInputs = stdenv.lib.optionals stdenv.targetPlatform.isAarch32 [ llvm_35 ];
-
-  # Cannot patchelf beforehand due to relative RPATHs that anticipate
-  # the final install location/
-  ${libEnvVar} = libPath;
-
-  postUnpack =
-    # GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
-    # during linking
-    stdenv.lib.optionalString stdenv.isDarwin ''
-      export NIX_LDFLAGS+=" -no_dtrace_dof"
-      # not enough room in the object files for the full path to libiconv :(
-      for exe in $(find . -type f -executable); do
-        isScript $exe && continue
-        ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
-        install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/5/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
-      done
-    '' +
-
-    # Some scripts used during the build need to have their shebangs patched
-    ''
-      patchShebangs ghc-${version}/utils/
-      patchShebangs ghc-${version}/configure
-    '' +
-
-    # Strip is harmful, see also below. It's important that this happens
-    # first. The GHC Cabal build system makes use of strip by default and
-    # has hardcoded paths to /usr/bin/strip in many places. We replace
-    # those below, making them point to our dummy script.
-    ''
-      mkdir "$TMP/bin"
-      for i in strip; do
-        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
-        chmod +x "$TMP/bin/$i"
-      done
-      PATH="$TMP/bin:$PATH"
-    '' +
-    # We have to patch the GMP paths for the integer-gmp package.
-    ''
-      find . -name integer-gmp.buildinfo \
-          -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \;
-    '' + stdenv.lib.optionalString stdenv.isDarwin ''
-      find . -name base.buildinfo \
-          -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${libiconv}/lib@" {} \;
-    '' +
-    # Rename needed libraries and binaries, fix interpreter
-    stdenv.lib.optionalString stdenv.isLinux ''
-      find . -type f -perm -0100 -exec patchelf \
-          --replace-needed libncurses${stdenv.lib.optionalString stdenv.is64bit "w"}.so.5 libncurses.so \
-          --replace-needed libtinfo.so libtinfo.so.5 \
-          --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" {} \;
-
-      paxmark m ./ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
-
-      sed -i "s|/usr/bin/perl|perl\x00        |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
-      sed -i "s|/usr/bin/gcc|gcc\x00        |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
-    '';
-
-  configurePlatforms = [ ];
-  configureFlags = [
-    "--with-gmp-libraries=${stdenv.lib.getLib gmp}/lib"
-    "--with-gmp-includes=${stdenv.lib.getDev gmp}/include"
-  ] ++ stdenv.lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}";
-
-  # Stripping combined with patchelf breaks the executables (they die
-  # with a segfault or the kernel even refuses the execve). (NIXPKGS-85)
-  dontStrip = true;
-
-  # No building is necessary, but calling make without flags ironically
-  # calls install-strip ...
-  dontBuild = true;
-
-  # On Linux, use patchelf to modify the executables so that they can
-  # find editline/gmp.
-  preFixup = stdenv.lib.optionalString stdenv.isLinux ''
-    for p in $(find "$out" -type f -executable); do
-      if isELF "$p"; then
-        echo "Patchelfing $p"
-        patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
-      fi
-    done
-  '' + stdenv.lib.optionalString stdenv.isDarwin ''
-    # not enough room in the object files for the full path to libiconv :(
-    for exe in $(find "$out" -type f -executable); do
-      isScript $exe && continue
-      ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
-      install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/5/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
-    done
-
-    for file in $(find "$out" -name setup-config); do
-      substituteInPlace $file --replace /usr/bin/ranlib "$(type -P ranlib)"
-    done
-  '';
-
-  doInstallCheck = true;
-  installCheckPhase = ''
-    unset ${libEnvVar}
-    # Sanity check, can ghc create executables?
-    cd $TMP
-    mkdir test-ghc; cd test-ghc
-    cat > main.hs << EOF
-      {-# LANGUAGE TemplateHaskell #-}
-      module Main where
-      main = putStrLn \$([|"yes"|])
-    EOF
-    $out/bin/ghc --make main.hs || exit 1
-    echo compilation ok
-    [ $(./main) == "yes" ]
-  '';
-
-  passthru = {
-    targetPrefix = "";
-    enableShared = true;
-  };
-
-  meta.license = stdenv.lib.licenses.bsd3;
-  meta.platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin" "armv7l-linux"];
-}
diff --git a/pkgs/development/compilers/ghc/8.2.1-binary.nix b/pkgs/development/compilers/ghc/8.2.1-binary.nix
index 6caeaf20f64..626c0d8ca9c 100644
--- a/pkgs/development/compilers/ghc/8.2.1-binary.nix
+++ b/pkgs/development/compilers/ghc/8.2.1-binary.nix
@@ -75,6 +75,7 @@ stdenv.mkDerivation rec {
     # Some scripts used during the build need to have their shebangs patched
     ''
       patchShebangs ghc-${version}/utils/
+      patchShebangs ghc-${version}/configure
     '' +
 
     # Strip is harmful, see also below. It's important that this happens
diff --git a/pkgs/development/compilers/ghc/8.6.2.nix b/pkgs/development/compilers/ghc/8.6.2.nix
new file mode 100644
index 00000000000..6470f7b0295
--- /dev/null
+++ b/pkgs/development/compilers/ghc/8.6.2.nix
@@ -0,0 +1,232 @@
+{ stdenv, targetPackages
+
+# build-tools
+, bootPkgs
+, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4
+
+, libiconv ? null, ncurses
+
+, useLLVM ? !stdenv.targetPlatform.isx86 || (stdenv.targetPlatform.isMusl && stdenv.hostPlatform != stdenv.targetPlatform)
+, # LLVM is conceptually a run-time-only depedendency, but for
+  # non-x86, we need LLVM to bootstrap later stages, so it becomes a
+  # build-time dependency too.
+  buildLlvmPackages, llvmPackages
+
+, # If enabled, GHC will be built with the GPL-free but slower integer-simple
+  # library instead of the faster but GPLed integer-gmp library.
+  enableIntegerSimple ? !(stdenv.lib.any (stdenv.lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
+
+, # If enabled, use -fPIC when compiling static libs.
+  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
+
+, # Whether to build dynamic libs for the standard library (on the target
+  # platform). Static libs are always built.
+  enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt
+
+, # Whetherto build terminfo.
+  enableTerminfo ? !stdenv.targetPlatform.isWindows
+
+, # What flavour to build. An empty string indicates no
+  # specific flavour and falls back to ghc default values.
+  ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross"
+}:
+
+assert !enableIntegerSimple -> gmp != null;
+
+let
+  inherit (stdenv) buildPlatform hostPlatform targetPlatform;
+
+  inherit (bootPkgs) ghc;
+
+  # TODO(@Ericson2314) Make unconditional
+  targetPrefix = stdenv.lib.optionalString
+    (targetPlatform != hostPlatform)
+    "${targetPlatform.config}-";
+
+  buildMK = ''
+    BuildFlavour = ${ghcFlavour}
+    ifneq \"\$(BuildFlavour)\" \"\"
+    include mk/flavours/\$(BuildFlavour).mk
+    endif
+    DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
+    INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
+  '' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
+    Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
+    CrossCompilePrefix = ${targetPrefix}
+    HADDOCK_DOCS = NO
+    BUILD_SPHINX_HTML = NO
+    BUILD_SPHINX_PDF = NO
+  '' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
+    GhcLibHcOpts += -fPIC
+    GhcRtsHcOpts += -fPIC
+  '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    EXTRA_CC_OPTS += -std=gnu99
+  '';
+
+  # Splicer will pull out correct variations
+  libDeps = platform: stdenv.lib.optional enableTerminfo [ ncurses ]
+    ++ stdenv.lib.optional (!enableIntegerSimple) gmp
+    ++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
+
+  toolsForTarget =
+    if hostPlatform == buildPlatform then
+      [ targetPackages.stdenv.cc ] ++ stdenv.lib.optional useLLVM llvmPackages.llvm
+    else assert targetPlatform == hostPlatform; # build != host == target
+      [ stdenv.cc ] ++ stdenv.lib.optional useLLVM buildLlvmPackages.llvm;
+
+  targetCC = builtins.head toolsForTarget;
+
+in
+stdenv.mkDerivation (rec {
+  version = "8.6.2";
+  name = "${targetPrefix}ghc-${version}";
+
+  src = fetchurl {
+    url = "https://downloads.haskell.org/~ghc/${version}/ghc-${version}-src.tar.xz";
+    sha256 = "1mbn3n2ynmpfpb7jfnhpzzli31qqxqyi8ws71blws3i846fq3ana";
+  };
+
+  enableParallelBuilding = true;
+
+  outputs = [ "out" "doc" ];
+
+  patches = [(fetchpatch rec { # https://phabricator.haskell.org/D5123
+    url = "http://tarballs.nixos.org/sha256/${sha256}";
+    name = "D5123.diff";
+    sha256 = "0nhqwdamf2y4gbwqxcgjxs0kqx23w9gv5kj0zv6450dq19rji82n";
+  })];
+
+  postPatch = "patchShebangs .";
+
+  # GHC is a bit confused on its cross terminology.
+  preConfigure = ''
+    for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
+      export "''${env#TARGET_}=''${!env}"
+    done
+    # GHC is a bit confused on its cross terminology, as these would normally be
+    # the *host* tools.
+    export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
+    export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
+    # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
+    export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}"
+    export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
+    export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
+    export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
+    export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
+    export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
+    export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
+
+    echo -n "${buildMK}" > mk/build.mk
+    sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+  '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
+    export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS+=" -no_dtrace_dof"
+  '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
+  '' + stdenv.lib.optionalString targetPlatform.isMusl ''
+      echo "patching llvm-targets for musl targets..."
+      echo "Cloning these existing '*-linux-gnu*' targets:"
+      grep linux-gnu llvm-targets | sed 's/^/  /'
+      echo "(go go gadget sed)"
+      sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
+      echo "llvm-targets now contains these '*-linux-musl*' targets:"
+      grep linux-musl llvm-targets | sed 's/^/  /'
+
+      echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
+      # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
+      for x in configure aclocal.m4; do
+        substituteInPlace $x \
+          --replace '*-android*|*-gnueabi*)' \
+                    '*-android*|*-gnueabi*|*-musleabi*)'
+      done
+  '';
+
+  # TODO(@Ericson2314): Always pass "--target" and always prefix.
+  configurePlatforms = [ "build" "host" ]
+    ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
+  # `--with` flags for libraries needed for RTS linker
+  configureFlags = [
+    "--datadir=$doc/share/doc/ghc"
+    "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
+  ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && !enableIntegerSimple) [
+    "--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
+  ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
+    "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
+  ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
+    "--enable-bootstrap-with-devel-snapshot"
+  ] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [
+    "CFLAGS=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+  ] ++ stdenv.lib.optionals (targetPlatform.isDarwin && targetPlatform.isAarch64) [
+    # fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+    "--disable-large-address-space"
+  ];
+
+  # Make sure we never relax`$PATH` and hooks support for compatability.
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    perl autoconf automake m4 python3
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ];
+
+  # For building runtime libs
+  depsBuildTarget = toolsForTarget;
+
+  buildInputs = libDeps hostPlatform;
+
+  propagatedBuildInputs = [ targetPackages.stdenv.cc ]
+    ++ stdenv.lib.optional useLLVM llvmPackages.llvm;
+
+  depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform);
+  depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform);
+
+  # required, because otherwise all symbols from HSffi.o are stripped, and
+  # that in turn causes GHCi to abort
+  stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
+
+  checkTarget = "test";
+
+  hardeningDisable = [ "format" ];
+
+  postInstall = ''
+    for bin in "$out"/lib/${name}/bin/*; do
+      isELF "$bin" || continue
+      paxmark m "$bin"
+    done
+
+    # Install the bash completion file.
+    install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
+
+    # Patch scripts to include "readelf" and "cat" in $PATH.
+    for i in "$out/bin/"*; do
+      test ! -h $i || continue
+      egrep --quiet '^#!' <(head -n 1 $i) || continue
+      sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
+    done
+  '';
+
+  passthru = {
+    inherit bootPkgs targetPrefix;
+
+    inherit llvmPackages;
+    inherit enableShared;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-8.6.2";
+  };
+
+  meta = {
+    homepage = http://haskell.org/ghc;
+    description = "The Glasgow Haskell Compiler";
+    maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
+    inherit (ghc.meta) license platforms;
+  };
+
+} // stdenv.lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
+  dontStrip = true;
+  dontPatchELF = true;
+  noAuditTmpdir = true;
+})
diff --git a/pkgs/development/compilers/graalvm/default.nix b/pkgs/development/compilers/graalvm/default.nix
index 7721ce06a56..a35143b4349 100644
--- a/pkgs/development/compilers/graalvm/default.nix
+++ b/pkgs/development/compilers/graalvm/default.nix
@@ -50,6 +50,9 @@ let
     rec { sha1 = "280c265b789e041c02e5c97815793dfc283fb1e6"; name = "LIBFFI_${sha1}/libffi.tar.gz";                                                    url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/libffi-3.2.1.tar.gz; }
     rec { sha1 = "8819cea8bfe22c9c63f55465e296b3855ea41786"; name = "TruffleJSON_${sha1}/trufflejson.jar";                                             url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/trufflejson-20180130.jar; }
     rec { sha1 = "9712a8124c40298015f04a74f61b3d81a51513af"; name = "CHECKSTYLE_8.8_${sha1}/checkstyle-8.8.jar";                                       url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/checkstyle-8.8-all.jar; }
+    rec { sha1 = "a828a4f32caf9ac0b74f2548f87310959558c526"; name = "VISUALVM_COMMON_${sha1}/visualvm-common.tar.gz";                                  url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/visualvm-612.tar.gz; }
+    rec { sha1 = "7ac829f0c9a37f5cc39afd2265588a365480720d"; name = "VISUALVM_PLATFORM_SPECIFIC_${sha1}/visualvm-platform-specific.tar.gz";            url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/visualvm-612-linux-amd64.tar.gz; }
+    rec { sha1 = "e6e60889b7211a80b21052a249bd7e0f88f79fee"; name = "Java-WebSocket_${sha1}/java-websocket.jar";                                       url = mirror://maven/org/java-websocket/Java-WebSocket/1.3.9/Java-WebSocket-1.3.9.jar; }
   ];
 
   findbugs = fetchzip {
@@ -61,13 +64,13 @@ let
 in rec {
 
   mx = stdenv.mkDerivation rec {
-    version = "5.176.4";
+    version = "5.192.0";
     name = "mx";
     src = fetchFromGitHub {
       owner  = "graalvm";
       repo   = "mx";
       rev    = version;
-      sha256 = "0xmx4hpnd6m9hk49lgwnvwd0q11s2m4d8axwq7zzc8wm10d692xw";
+      sha256 = "04gdf1gzlc8a6li8lcnrs2j9zicj11fs1vqqf7cmhb4pm2h72hml";
     };
     nativeBuildInputs = [ makeWrapper ];
     buildPhase = ''
@@ -79,6 +82,11 @@ in rec {
         'def download(path, urls, verbose=False, abortOnError=True, verifyOnly=False):
           print("FAKE download(path={} urls={} verbose={} abortOnError={} verifyOnly={})".format(path, urls, verbose, abortOnError, verifyOnly))
           return True'
+
+      # avoid crash with 'ValueError: ZIP does not support timestamps before 1980'
+      substituteInPlace mx.py --replace \
+        'zipfile.ZipInfo(arcname, time.localtime(os.path.getmtime(join(root, f)))[:6])' \
+        'zipfile.ZipInfo(arcname, time.strptime ("1 Jan 1980", "%d %b %Y"       )[:6])'
     '';
     installPhase = ''
       mkdir -p $out/bin
@@ -97,9 +105,9 @@ in rec {
 
   # copy of pkgs.oraclejvm8 with JVMCI interface (TODO: it should work with pkgs.openjdk8 too)
   jvmci8 = stdenv.mkDerivation rec {
-    version = "0.45";
+    version = "0.49";
     name = let
-             n = "jvmci8u171-${version}";
+             n = "jvmci${/*"8u191"*/ lib.removePrefix "oraclejdk-" oraclejdk8.name}-${version}";
            in if (lib.stringLength n) == (lib.stringLength oraclejdk8.name) then
                 n
               else
@@ -108,7 +116,7 @@ in rec {
       owner  = "graalvm";
       repo   = "graal-jvmci-8";
       rev    = "jvmci-${version}";
-      sha256 = "1nppk9dpamisiadss1iy82i3rf6igndbf1vax85w9lz310kh0d12";
+      sha256 = "1zgin0w1qa7wmfhcisx470fhnmddfxxp5nyyix31yaa7dznql82k";
     };
     buildInputs = [ mx mercurial ];
     postUnpack = ''
@@ -146,7 +154,7 @@ in rec {
   };
 
   graalvm8 = stdenv.mkDerivation rec {
-    version = "1.0.0-rc3";
+    version = "1.0.0-rc8";
     name = let
              n = "graal-${version}";
            in if (lib.stringLength n) == (lib.stringLength jvmci8.name) then
@@ -157,7 +165,7 @@ in rec {
       owner  = "oracle";
       repo   = "graal";
       rev    = "vm-${version}";
-      sha256 = "1hcs4m6ailapgi3bikav1i517vqn5pn595cyqqjfvlnkjwihbnc3";
+      sha256 = "1fada4awrr8bhw294xdiq4bagvgrlcr44mw6338gaal0ky3vkm0p";
     };
     buildInputs = [ mx zlib mercurial jvmci8 ];
     postUnpack = ''
@@ -170,6 +178,17 @@ in rec {
         hg checkout ${lib.escapeShellArg src.rev}
       )
     '';
+    postPatch = ''
+      substituteInPlace substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/headers/PosixDirectives.java \
+        --replace '<zlib.h>' '<${zlib.dev}/include/zlib.h>'
+      substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java \
+        --replace 'cmd.add("-v");' 'cmd.add("-v"); cmd.add("-L${zlib}/lib");'
+      substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java \
+        --replace 'command.add(Platform.includedIn(Platform.WINDOWS.class) ? "CL" : "gcc");' \
+          'command.add(Platform.includedIn(Platform.WINDOWS.class) ? "CL" : "${stdenv.cc}/bin/gcc");'
+      substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java \
+        --replace 'protected String compilerCommand = "cc";' 'protected String compilerCommand = "${stdenv.cc}/bin/cc";'
+    '';
     buildPhase = ''
       # make a copy of jvmci8
       cp -dpR ${jvmci8} $out
@@ -178,13 +197,14 @@ in rec {
 
       export MX_ALT_OUTPUT_ROOT=$NIX_BUILD_TOP/mxbuild
       export MX_CACHE_DIR=${makeMxCache graal-mxcache}
+
       ( cd substratevm
 
         mkdir -p clibraries
         mx --java-home $out build
 
         # bootstrap native-image (that was removed from mx build in https://github.com/oracle/graal/commit/140d7a7edf54ec5872a8ff45869cd1ae499efde4)
-        mx --java-home $out native-image -cp $MX_ALT_OUTPUT_ROOT/substratevm/dists/svm-driver.jar com.oracle.svm.driver.NativeImage
+        mx --java-home $out native-image -cp $MX_ALT_OUTPUT_ROOT/substratevm/dists/jdk1.8/svm-driver.jar com.oracle.svm.driver.NativeImage
       )
       ( cd tools
         mx --java-home $out build
@@ -195,17 +215,17 @@ in rec {
       mkdir -p $out/jre/tools/{profiler,chromeinspector,truffle/builder} $out/jre/lib/{graal,include,truffle/include}
       cp -vpLR substratevm/svmbuild/native-image-root/lib/*                         $out/jre/lib/           || true # ignore "same file" error when dereferencing symlinks
       cp -vp   $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/bin/*     $out/jre/lib/amd64/
-      cp -vp   $MX_ALT_OUTPUT_ROOT/compiler/dists/graal-*processor*.jar             $out/jre/lib/graal/
+      cp -vp   $MX_ALT_OUTPUT_ROOT/compiler/dists/jdk1.8/graal-*processor*.jar      $out/jre/lib/graal/
       cp -vp   $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/include/* $out/jre/lib/include/
-      cp -vp   $MX_ALT_OUTPUT_ROOT/compiler/dists/graal-management.jar              $out/jre/lib/jvmci/
+      cp -vp   $MX_ALT_OUTPUT_ROOT/compiler/dists/jdk1.8/graal-management.jar       $out/jre/lib/jvmci/
       cp -vdpR $out/jre/lib/svm/clibraries                                          $out/jre/lib/svm/builder/
-      cp -vpR  $MX_ALT_OUTPUT_ROOT/truffle/dists/*                                  $out/jre/lib/truffle/
+      cp -vpR  $MX_ALT_OUTPUT_ROOT/truffle/dists/jdk1.8/*                           $out/jre/lib/truffle/
       cp -vp   $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/include/* $out/jre/lib/truffle/include/
       cp -vpLR substratevm/svmbuild/native-image-root/tools/*                       $out/jre/tools/
       cp -vpR  $MX_ALT_OUTPUT_ROOT/tools/dists/chromeinspector*                     $out/jre/tools/chromeinspector/
       cp -vpR  $MX_ALT_OUTPUT_ROOT/tools/dists/truffle-profiler*                    $out/jre/tools/profiler/
       cp -vpR  $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/*         $out/jre/tools/truffle/
-      cp -vp   $MX_ALT_OUTPUT_ROOT/truffle/dists/truffle-nfi.jar                    $out/jre/tools/truffle/builder/
+      cp -vp   $MX_ALT_OUTPUT_ROOT/truffle/dists/jdk1.8/truffle-nfi.jar             $out/jre/tools/truffle/builder/
 
       echo "name=GraalVM ${version}"                                              > $out/jre/lib/amd64/server/vm.properties
       echo -n "graal"                                                             > $out/jre/lib/jvmci/compiler-name
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index 7b88efd1e61..c427ec75cb3 100644
--- a/pkgs/development/compilers/kotlin/default.nix
+++ b/pkgs/development/compilers/kotlin/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, makeWrapper, jre, unzip }:
 
 let
-  version = "1.2.71";
+  version = "1.3.0";
 in stdenv.mkDerivation rec {
   inherit version;
   name = "kotlin-${version}";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "0yzanv2jkjx3vfixzvjsihfi00khs7zr47y01cil8bylzvyr50p4";
+    sha256 = "14i5qmni1dzfamab6y659b5nvgp99m1abx71i83zcbfi9nw1r1gz";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix b/pkgs/development/compilers/ocaml/ber-metaocaml.nix
index e6c68894036..2eeb6ad8408 100644
--- a/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix
+++ b/pkgs/development/compilers/ocaml/ber-metaocaml.nix
@@ -8,16 +8,16 @@ in
 stdenv.mkDerivation rec {
 
   name = "ber-metaocaml-${version}";
-  version = "104";
+  version = "107";
 
   src = fetchurl {
-    url = "https://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04.0.tar.gz";
-    sha256 = "1pi2hdm9lxhn45qvfqfss1hpa4jijm14qgmrgajsadxqdiplhqyb";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-4.07/ocaml-4.07.1.tar.gz";
+    sha256 = "1x4sln131mcspisr22qc304590rvg720rbl7g2i4xiymgvhkpm1a";
   };
 
   metaocaml = fetchurl {
-    url = "http://okmij.org/ftp/ML/ber-metaocaml-104.tar.gz";
-    sha256 = "1gmwlxairxqcmqa2r6kbf8b4dxc7pfhfbh48g1s14d3z20rj8nib";
+    url = "http://okmij.org/ftp/ML/ber-metaocaml-107.tar.gz";
+    sha256 = "0xy6n0yj1f53pk612zfmn49pn04bd75qa40xgmr0w0lzx6dqsfmm";
   };
 
   # Needed to avoid a SIGBUS on the final executable on mips
diff --git a/pkgs/development/compilers/purescript/psc-package/default.nix b/pkgs/development/compilers/purescript/psc-package/default.nix
index dac8b0279ad..24043ce4774 100644
--- a/pkgs/development/compilers/purescript/psc-package/default.nix
+++ b/pkgs/development/compilers/purescript/psc-package/default.nix
@@ -4,13 +4,13 @@ with lib;
 
 mkDerivation rec {
   pname = "psc-package";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "purescript";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1pbgijglyqrm998a6z5ahp4phd72crzr3s8vq17a9dz3i0a9hcj5";
+    sha256 = "0xvnmpfj4c6h4gmc2c3d4gcs44527jrgfl11l2fs4ai1mc69w5zg";
   };
 
   isLibrary = false;
diff --git a/pkgs/development/compilers/reason/default.nix b/pkgs/development/compilers/reason/default.nix
index 0832d14992d..1b84b934852 100644
--- a/pkgs/development/compilers/reason/default.nix
+++ b/pkgs/development/compilers/reason/default.nix
@@ -21,12 +21,9 @@ stdenv.mkDerivation rec {
 
   buildFlags = [ "build" ]; # do not "make tests" before reason lib is installed
 
-  installPhase = ''
-    for p in reason rtop
-    do
-      ${dune.installPhase} $p.install
-    done
+  inherit (dune) installPhase;
 
+  postInstall = ''
     wrapProgram $out/bin/rtop \
       --prefix PATH : "${utop}/bin" \
       --set OCAMLPATH $out/lib/ocaml/${ocaml.version}/site-lib:$OCAMLPATH
diff --git a/pkgs/development/coq-modules/autosubst/default.nix b/pkgs/development/coq-modules/autosubst/default.nix
index 9c24e77e0f7..bffa5172b0e 100644
--- a/pkgs/development/coq-modules/autosubst/default.nix
+++ b/pkgs/development/coq-modules/autosubst/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "06pcjbngzwqyncvfwzz88j33wvdj9kizxyg5adp7y6186h8an341";
   };
 
+  buildInputs = [ coq ];
   propagatedBuildInputs = [ mathcomp ];
 
   patches = [./0001-changes-to-work-with-Coq-8.6.patch];
diff --git a/pkgs/development/coq-modules/contribs/default.nix b/pkgs/development/coq-modules/contribs/default.nix
index d12d3fefb94..a1ecdd610a3 100644
--- a/pkgs/development/coq-modules/contribs/default.nix
+++ b/pkgs/development/coq-modules/contribs/default.nix
@@ -1018,7 +1018,7 @@ let mkContrib = repo: revs: param:
     sha256 = "0fp3vdl79c8d759qjhk42rjfpkd0ba4pcw572f5gxn28kfwz3rrj";
   };
 
-  zfc = mkContrib "zfc" [ "8.5" "8.6" "8.7" ] {
+  zfc = mkContrib "zfc" [ "8.5" "8.6" "8.7" "8.8" ] {
     version = "v8.5.0-5-gbba3259";
     rev = "bba325933370fea64780b1afa2fad54c1b567819";
     sha256 = "0iwkpmc22nwasrk4g7ki4s5y05zjs7kmqk3j98giwp2wiavhgapn";
diff --git a/pkgs/development/coq-modules/fiat/HEAD.nix b/pkgs/development/coq-modules/fiat/HEAD.nix
index a064064fd91..4abaec6528a 100644
--- a/pkgs/development/coq-modules/fiat/HEAD.nix
+++ b/pkgs/development/coq-modules/fiat/HEAD.nix
@@ -11,8 +11,9 @@ stdenv.mkDerivation rec {
     sha256 = "0griqc675yylf9rvadlfsabz41qy5f5idya30p5rv6ysiakxya64";
   };
 
-  buildInputs = with coq.ocamlPackages; [ ocaml camlp5 python27 ];
-  propagatedBuildInputs = [ coq ];
+  buildInputs = [ coq python27 ] ++ (with coq.ocamlPackages; [ ocaml camlp5 ]);
+
+  prePatch = "patchShebangs etc/coq-scripts";
 
   doCheck = false;
 
diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix
index 92c3c87774a..1e5b6b7bf66 100644
--- a/pkgs/development/coq-modules/mathcomp/default.nix
+++ b/pkgs/development/coq-modules/mathcomp/default.nix
@@ -1,29 +1,65 @@
-{ callPackage, fetchurl, coq }:
+{ stdenv, fetchFromGitHub, coq, ncurses, which
+, graphviz, withDoc ? false
+}:
 
 let param =
 
-  let param_1_7 = {
-      version = "1.7.0";
-      sha256 = "05zgyi4wmasi1rcyn5jq42w0bi9713q9m8dl1fdgl66nmacixh39";
-  }; in
-
+  if stdenv.lib.versionAtLeast coq.coq-version "8.6" then
+  {
+    version = "1.7.0";
+    sha256 = "0wnhj9nqpx2bw6n1l4i8jgrw3pjajvckvj3lr4vzjb3my2lbxdd1";
+  }
+  else if stdenv.lib.versionAtLeast coq.coq-version "8.5" then
   {
-    "8.5" =  {
-      version = "1.6.1";
-      sha256 = "1j9ylggjzrxz1i2hdl2yhsvmvy5z6l4rprwx7604401080p5sgjw";
-    };
-
-    "8.6" = param_1_7;
-    "8.7" = param_1_7;
-    "8.8" = param_1_7;
-
-  }."${coq.coq-version}"
-; in
-
-callPackage ./generic.nix {
-  name = "coq${coq.coq-version}-mathcomp-${param.version}";
-  src = fetchurl {
-    url = "https://github.com/math-comp/math-comp/archive/mathcomp-${param.version}.tar.gz";
+    version = "1.6.1";
+    sha256 = "1ilw6vm4dlsdv9cd7kmf0vfrh2kkzr45wrqr8m37miy0byzr4p9i";
+  }
+  else throw "No version of math-comp is available for Coq ${coq.coq-version}";
+
+in
+
+stdenv.mkDerivation rec {
+  name = "coq${coq.coq-version}-mathcomp-${version}";
+
+  # used in ssreflect
+  inherit (param) version;
+
+  src = fetchFromGitHub {
+    owner = "math-comp";
+    repo = "math-comp";
+    rev = "mathcomp-${param.version}";
     inherit (param) sha256;
   };
+
+  nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
+  buildInputs = [ coq ncurses which ] ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ]);
+
+  enableParallelBuilding = true;
+
+  buildFlags = stdenv.lib.optionalString withDoc "doc";
+
+  COQBIN = "${coq}/bin/";
+
+  preBuild = ''
+    patchShebangs etc/utils/ssrcoqdep || true
+    cd mathcomp
+  '';
+
+  installPhase = ''
+    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
+  '' + stdenv.lib.optionalString withDoc ''
+    make -f Makefile.coq install-doc DOCDIR=$out/share/coq/${coq.coq-version}/
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://ssr.msr-inria.inria.fr/;
+    license = licenses.cecill-b;
+    maintainers = [ maintainers.vbgl maintainers.jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+  passthru = {
+    compatibleCoqVersions = v: stdenv.lib.versionAtLeast v "8.5";
+  };
+
 }
diff --git a/pkgs/development/coq-modules/mathcomp/generic.nix b/pkgs/development/coq-modules/mathcomp/generic.nix
deleted file mode 100644
index 2a602711965..00000000000
--- a/pkgs/development/coq-modules/mathcomp/generic.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ stdenv, coq, ncurses, which
-, graphviz, withDoc ? false
-, src, name
-}:
-
-stdenv.mkDerivation {
-
-  inherit name;
-  inherit src;
-
-  nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
-  buildInputs = with coq.ocamlPackages; [ ocaml findlib camlp5 ncurses which ];
-  propagatedBuildInputs = [ coq ];
-
-  enableParallelBuilding = true;
-
-  buildFlags = stdenv.lib.optionalString withDoc "doc";
-
-  preBuild = ''
-    patchShebangs etc/utils/ssrcoqdep || true
-    cd mathcomp
-    export COQBIN=${coq}/bin/
-  '';
-
-  installPhase = ''
-    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
-  '' + stdenv.lib.optionalString withDoc ''
-    make -f Makefile.coq install-doc DOCDIR=$out/share/coq/${coq.coq-version}/
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://ssr.msr-inria.inria.fr/;
-    license = licenses.cecill-b;
-    maintainers = [ maintainers.vbgl maintainers.jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-  passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
-  };
-
-}
diff --git a/pkgs/development/coq-modules/ssreflect/default.nix b/pkgs/development/coq-modules/ssreflect/default.nix
index 9e9c3c7957a..1fcb7e2da8a 100644
--- a/pkgs/development/coq-modules/ssreflect/default.nix
+++ b/pkgs/development/coq-modules/ssreflect/default.nix
@@ -1,29 +1,32 @@
-{ callPackage, fetchurl, coq }:
-
-let param =
-
-  let param_1_7 = {
-    version = "1.7.0";
-    sha256 = "05zgyi4wmasi1rcyn5jq42w0bi9713q9m8dl1fdgl66nmacixh39";
-  }; in
-
-  {
-    "8.5" =  {
-      version = "1.6.1";
-      sha256 = "1j9ylggjzrxz1i2hdl2yhsvmvy5z6l4rprwx7604401080p5sgjw";
-    };
-
-    "8.6" = param_1_7;
-    "8.7" = param_1_7;
-    "8.8" = param_1_7;
-
-  }."${coq.coq-version}"
-; in
-
-callPackage ./generic.nix {
-  name = "coq${coq.coq-version}-ssreflect-${param.version}";
-  src = fetchurl {
-    url = "https://github.com/math-comp/math-comp/archive/mathcomp-${param.version}.tar.gz";
-    inherit (param) sha256;
-  };
+{ stdenv, fetchFromGitHub, coq, ncurses, which
+, graphviz, mathcomp, withDoc ? false
+}:
+
+stdenv.mkDerivation rec {
+  name = "coq${coq.coq-version}-ssreflect-${version}";
+
+  inherit (mathcomp) src version meta;
+
+  nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
+  buildInputs = [ coq ncurses which ] ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ]);
+
+  enableParallelBuilding = true;
+
+  COQBIN = "${coq}/bin/";
+
+  preBuild = ''
+    patchShebangs etc/utils/ssrcoqdep || true
+    cd mathcomp/ssreflect
+  '';
+
+  installPhase = ''
+    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
+  '';
+
+  postInstall = stdenv.lib.optionalString withDoc ''
+    mkdir -p $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
+    cp -r html $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
+  '';
+
+  passthru.compatibleCoqVersions = mathcomp.compatibleCoqVersions;
 }
diff --git a/pkgs/development/coq-modules/ssreflect/generic.nix b/pkgs/development/coq-modules/ssreflect/generic.nix
deleted file mode 100644
index 23e364cd960..00000000000
--- a/pkgs/development/coq-modules/ssreflect/generic.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ stdenv, coq, ncurses, which
-, graphviz, withDoc ? false
-, src, name, patches ? []
-}:
-
-stdenv.mkDerivation {
-
-  inherit name;
-  inherit src;
-
-  nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
-  buildInputs = with coq.ocamlPackages; [ ocaml findlib camlp5 ncurses which ];
-  propagatedBuildInputs = [ coq ];
-
-  enableParallelBuilding = true;
-
-  inherit patches;
-
-  preBuild = ''
-    patchShebangs etc/utils/ssrcoqdep || true
-    cd mathcomp/ssreflect
-    export COQBIN=${coq}/bin/
-  '';
-
-  installPhase = ''
-    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
-  '';
-
-  postInstall = ''
-    # mkdir -p $out/bin
-    # cp -p bin/ssrcoq $out/bin
-    # cp -p bin/ssrcoq.byte $out/bin
-  '' + stdenv.lib.optionalString withDoc ''
-    mkdir -p $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
-    cp -r html $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://ssr.msr-inria.inria.fr/;
-    license = licenses.cecill-b;
-    maintainers = with maintainers; [ vbgl jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-  passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
-  };
-
-}
diff --git a/pkgs/development/dhall-modules/default.nix b/pkgs/development/dhall-modules/default.nix
new file mode 100644
index 00000000000..b6632a86f31
--- /dev/null
+++ b/pkgs/development/dhall-modules/default.nix
@@ -0,0 +1,9 @@
+{ pkgs }:
+
+# TODO: add into the toplevel fixpoint instead of using rec
+rec {
+
+  prelude = prelude_3_0_0;
+  prelude_3_0_0 = pkgs.callPackage ./prelude/v3.nix {};
+
+}
diff --git a/pkgs/development/dhall-modules/prelude/v3.nix b/pkgs/development/dhall-modules/prelude/v3.nix
new file mode 100644
index 00000000000..ef673310ceb
--- /dev/null
+++ b/pkgs/development/dhall-modules/prelude/v3.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "dhall-prelude";
+
+  src = fetchFromGitHub {
+    owner = "dhall-lang";
+    repo = "dhall-lang";
+    # Commit where the v3.0.0 prelude folder was merged into dhall-lang
+    # and a LICENSE file has been added.
+    rev = "f6aa9399f1ac831d66c34104abe6856023c5b2df";
+    sha256 = "0kqjgh3y1l3cb3rj381j7c09547g1vh2dsfzpm08y1qajhhf9vgf";
+  };
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+    cp -r Prelude $out
+  '';
+
+  meta = {
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ Profpatsch ];
+  };
+}
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 56ffd6ee54e..5928f6624e9 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -86,7 +86,7 @@ self: super: {
       name = "git-annex-${super.git-annex.version}-src";
       url = "git://git-annex.branchable.com/";
       rev = "refs/tags/" + super.git-annex.version;
-      sha256 = "0mgmxcr36b86jh56my3vhp9y4cravi0hbppa463q3c21a1cmjc19";
+      sha256 = "0dnrihpdshrldais74jm5wjfw650i4va8znc1k2zq8gl9p4i8p39";
     };
   }).override {
     dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@@ -242,9 +242,11 @@ self: super: {
   #   This is due to GenList having been removed from generic-random in 1.2.0.0
   # doJailbreak: Can be removed once https://github.com/haskell-nix/hnix/pull/329 is in (5.2 probably)
   #   This is due to hnix currently having an upper bound of <0.5 on deriving-compat, works just fine with our current version 0.5.1 though
-  hnix = dontCheck (doJailbreak (overrideCabal super.hnix (old: {
-    testHaskellDepends = old.testHaskellDepends or [] ++ [ pkgs.nix ];
-  })));
+  hnix =
+    generateOptparseApplicativeCompletion "hnix" (
+    dontCheck (doJailbreak (overrideCabal super.hnix (old: {
+      testHaskellDepends = old.testHaskellDepends or [] ++ [ pkgs.nix ];
+  }))));
 
   # Fails for non-obvious reasons while attempting to use doctest.
   search = dontCheck super.search;
@@ -713,7 +715,9 @@ self: super: {
   });
 
   # The standard libraries are compiled separately
-  idris = doJailbreak (dontCheck super.idris);
+  idris = generateOptparseApplicativeCompletion "idris" (
+    doJailbreak (dontCheck super.idris)
+  );
 
   # https://github.com/bos/math-functions/issues/25
   math-functions = dontCheck super.math-functions;
@@ -1047,7 +1051,20 @@ self: super: {
   vector-algorithms = dontCheck super.vector-algorithms;
 
   # The test suite attempts to use the network.
-  dhall = dontCheck super.dhall;
+  dhall =
+    generateOptparseApplicativeCompletion "dhall" (
+      dontCheck super.dhall
+  );
+
+  dhall-json =
+    generateOptparseApplicativeCompletions ["dhall-to-json" "dhall-to-yaml"] (
+      super.dhall-json
+  );
+
+  dhall-nix =
+    generateOptparseApplicativeCompletion "dhall-to-nix" (
+      super.dhall-nix
+  );
 
   # https://github.com/well-typed/cborg/issues/174
   cborg = doJailbreak super.cborg;
@@ -1064,14 +1081,18 @@ self: super: {
   # haddock-library_1_6_0 = doJailbreak (dontCheck super.haddock-library_1_6_0);
 
   # The tool needs a newer hpack version than the one mandated by LTS-12.x.
-  cabal2nix = super.cabal2nix.overrideScope (self: super: {
-    hpack = self.hpack_0_31_0;
-    yaml = self.yaml_0_11_0_0;
-  });
+  # Also generate shell completions.
+  cabal2nix = generateOptparseApplicativeCompletion "cabal2nix"
+    (super.cabal2nix.overrideScope (self: super: {
+      hpack = self.hpack_0_31_1;
+      yaml = self.yaml_0_11_0_0;
+    }));
   stack2nix = super.stack2nix.overrideScope (self: super: {
-    hpack = self.hpack_0_31_0;
+    hpack = self.hpack_0_31_1;
     yaml = self.yaml_0_11_0_0;
   });
+  # Break out of "aeson <1.3, temporary <1.3".
+  stack = generateOptparseApplicativeCompletion "stack" (doJailbreak super.stack);
 
   # https://github.com/pikajude/stylish-cabal/issues/11
   stylish-cabal = super.stylish-cabal.override { hspec = self.hspec_2_4_8; hspec-core = self.hspec-core_2_4_8; };
@@ -1112,6 +1133,9 @@ self: super: {
   # https://github.com/snapframework/xmlhtml/pull/37
   xmlhtml = doJailbreak super.xmlhtml;
 
+  # Generate shell completions
+  purescript = generateOptparseApplicativeCompletion "purs" super.purescript;
+
   # https://github.com/NixOS/nixpkgs/issues/46467
   safe-money-aeson = super.safe-money-aeson.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
   safe-money-store = super.safe-money-store.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index 213651405f3..226b437d58b 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -63,11 +63,11 @@ self: super: {
   # more verbose but friendlier for Hydra.
   stack = (doJailbreak super.stack).override {
     Cabal = self.Cabal_2_4_0_1;
-    hpack = self.hpack_0_31_0.override { Cabal = self.Cabal_2_4_0_1; };
+    hpack = self.hpack_0_31_1.override { Cabal = self.Cabal_2_4_0_1; };
     yaml = self.yaml_0_11_0_0;
     hackage-security = self.hackage-security.override { Cabal = self.Cabal_2_4_0_1; };
   };
-  hpack_0_31_0 = super.hpack_0_31_0.override {
+  hpack_0_31_1 = super.hpack_0_31_1.override {
     yaml = self.yaml_0_11_0_0;
   };
 
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
index bf021956593..315740b309f 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -56,25 +56,25 @@ self: super: {
   hledger = doJailbreak super.hledger;
   hledger-lib = doJailbreak super.hledger-lib;
   hledger-ui = doJailbreak super.hledger-ui;
-  hpack = self.hpack_0_31_0;
+  hpack = self.hpack_0_31_1;
   hslua = self.hslua_1_0_1;
   hslua-module-text = self.hslua-module-text_0_2_0;
-  hspec = self.hspec_2_5_8;
-  hspec-core = self.hspec-core_2_5_8;
-  hspec-discover = self.hspec-discover_2_5_8;
+  hspec = self.hspec_2_6_0;
+  hspec-core = self.hspec-core_2_6_0;
+  hspec-discover = self.hspec-discover_2_6_0;
   hspec-megaparsec = doJailbreak super.hspec-megaparsec;  # newer versions need megaparsec 7.x
   hspec-meta = self.hspec-meta_2_5_6;
+  HTF = dontCheck super.HTF_0_13_2_5; # https://github.com/skogsbaer/HTF/issues/74
   JuicyPixels = self.JuicyPixels_3_3_2;
   lens = self.lens_4_17;
   megaparsec = dontCheck (doJailbreak super.megaparsec);
-  neat-interpolation = dontCheck super.neat-interpolation;  # test suite depends on broken HTF
   patience = markBrokenVersion "0.1.1" super.patience;
   polyparse = self.polyparse_1_12_1;
   primitive = self.primitive_0_6_4_0;
   QuickCheck = self.QuickCheck_2_12_6_1;
   semigroupoids = self.semigroupoids_5_3_1;
   tagged = self.tagged_0_8_6;
-  vty = self.vty_5_25;
+  vty = self.vty_5_25_1;
   wizards = doJailbreak super.wizards;
   wl-pprint-extras = doJailbreak super.wl-pprint-extras;
   yaml = self.yaml_0_11_0_0;
@@ -97,17 +97,11 @@ self: super: {
   unicode-transforms = dontCheck super.unicode-transforms;
   monad-par = dontCheck super.monad-par;  # https://github.com/simonmar/monad-par/issues/66
 
-  # https://github.com/bmillwood/haskell-src-meta/pull/80
-  haskell-src-meta = doJailbreak super.haskell-src-meta;
-
-  # https://github.com/skogsbaer/HTF/issues/69
-  HTF = markBrokenVersion "0.13.2.4" super.HTF;
-
   # https://github.com/jgm/skylighting/issues/55
   skylighting-core = dontCheck super.skylighting-core;
 
   # https://github.com/jgm/pandoc/issues/4974
-  pandoc = doJailbreak super.pandoc_2_3_1;
+  pandoc = doJailbreak super.pandoc_2_4;
 
   # Break out of "yaml >=0.10.4.0 && <0.11".
   stack = doJailbreak super.stack;
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index aa96bebc21b..97f2955d3a9 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -45,7 +45,7 @@ default-package-overrides:
   - base-compat-batteries ==0.10.1
   # Newer versions don't work in LTS-12.x
   - cassava-megaparsec < 2
-  # LTS Haskell 12.16
+  # LTS Haskell 12.17
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -73,7 +73,7 @@ default-package-overrides:
   - aeson-typescript ==0.1.1.0
   - aeson-utils ==0.3.0.2
   - aeson-yak ==0.1.1.3
-  - Agda ==2.5.4.1
+  - Agda ==2.5.4.2
   - al ==0.1.4.2
   - alarmclock ==0.5.0.2
   - alerts ==0.1.0.0
@@ -731,8 +731,8 @@ default-package-overrides:
   - fileplow ==0.1.0.0
   - filter-logger ==0.6.0.0
   - filtrable ==0.1.1.0
-  - Fin ==0.2.6.0
   - fin ==0.0.1
+  - Fin ==0.2.6.0
   - FindBin ==0.0.5
   - find-clumpiness ==0.2.3.1
   - fingertree ==0.1.4.1
@@ -842,9 +842,9 @@ default-package-overrides:
   - gi-glib ==2.0.17
   - gi-gobject ==2.0.16
   - gi-gtk ==3.0.25
-  - gi-gtk-hs ==0.3.6.2
+  - gi-gtk-hs ==0.3.6.3
   - gi-gtksource ==3.0.16
-  - gi-javascriptcore ==4.0.15
+  - gi-javascriptcore ==4.0.16
   - gio ==0.13.5.0
   - gi-pango ==1.0.16
   - giphy-api ==0.6.0.1
@@ -1056,7 +1056,7 @@ default-package-overrides:
   - html-entity-map ==0.1.0.0
   - htoml ==1.0.0.3
   - HTTP ==4000.3.12
-  - http2 ==1.6.3
+  - http2 ==1.6.4
   - http-api-data ==0.3.8.1
   - http-client ==0.5.13.1
   - http-client-openssl ==0.2.2.0
@@ -1091,7 +1091,7 @@ default-package-overrides:
   - hw-mquery ==0.1.0.1
   - hworker ==0.1.0.1
   - hw-parser ==0.0.0.3
-  - hw-prim ==0.6.2.17
+  - hw-prim ==0.6.2.18
   - hw-rankselect ==0.10.0.3
   - hw-rankselect-base ==0.3.2.1
   - hw-string-parse ==0.0.0.4
@@ -1448,6 +1448,7 @@ default-package-overrides:
   - network-anonymous-i2p ==0.10.0
   - network-anonymous-tor ==0.11.0
   - network-attoparsec ==0.12.2
+  - network-byte-order ==0.0.0.0
   - network-conduit-tls ==1.3.2
   - network-house ==0.1.0.2
   - network-info ==0.2.0.10
@@ -1787,12 +1788,12 @@ default-package-overrides:
   - sample-frame ==0.0.3
   - sample-frame-np ==0.0.4.1
   - sampling ==0.3.3
-  - sandi ==0.4.2
+  - sandi ==0.4.3
   - sandman ==0.2.0.1
   - say ==0.1.0.1
   - sbp ==2.3.17
-  - scalendar ==1.2.0
   - SCalendar ==1.1.0
+  - scalendar ==1.2.0
   - scalpel ==0.5.1
   - scalpel-core ==0.5.1
   - scanner ==0.2
@@ -1877,11 +1878,11 @@ default-package-overrides:
   - siggy-chardust ==1.0.0
   - signal ==0.1.0.4
   - silently ==1.2.5
-  - simple-cmd ==0.1.1
+  - simple-cmd ==0.1.2
   - simple-reflect ==0.3.3
   - simple-sendfile ==0.2.27
   - simplest-sqlite ==0.1.0.0
-  - simple-vec3 ==0.4.0.8
+  - simple-vec3 ==0.4.0.9
   - since ==0.0.0
   - singleton-bool ==0.1.4
   - singleton-nats ==0.4.2
@@ -2212,7 +2213,7 @@ default-package-overrides:
   - vec ==0.1
   - vector ==0.12.0.1
   - vector-algorithms ==0.7.0.4
-  - vector-binary-instances ==0.2.5
+  - vector-binary-instances ==0.2.5.1
   - vector-buffer ==0.4.1
   - vector-builder ==0.3.6
   - vector-bytes-instances ==0.1.1
@@ -2307,10 +2308,10 @@ default-package-overrides:
   - X11 ==1.9
   - X11-xft ==0.3.1
   - x11-xim ==0.0.9.0
-  - x509 ==1.7.4
-  - x509-store ==1.6.6
+  - x509 ==1.7.5
+  - x509-store ==1.6.7
   - x509-system ==1.6.6
-  - x509-validation ==1.6.10
+  - x509-validation ==1.6.11
   - Xauth ==0.1
   - xdg-basedir ==0.2.2
   - xeno ==0.3.4
@@ -2886,6 +2887,7 @@ dont-distribute-packages:
   arpa:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   arpack:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   array-forth:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  arraylist:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   ArrayRef:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   arrow-improve:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   arrowapply-utils:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3032,6 +3034,7 @@ dont-distribute-packages:
   barrie:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   barrier-monad:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   barrier:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  base-compat-migrate:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   base-feature-macros:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   base-generics:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   base-io-access:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3055,6 +3058,7 @@ dont-distribute-packages:
   beam-th:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   beam:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   beamable:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  bearriver:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   beautifHOL:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   bed-and-breakfast:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   beeminder-api:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3361,6 +3365,7 @@ dont-distribute-packages:
   campfire:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   canon:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   canonical-filepath:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  canonical-json:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   canteven-http:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   canteven-listen-http:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   canteven-log:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3614,6 +3619,7 @@ dont-distribute-packages:
   combinatorial-problems:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   Combinatorrent:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   combobuffer:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  comfort-array:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   comic:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   Command:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   commander:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3680,6 +3686,7 @@ dont-distribute-packages:
   conduit-tokenize-attoparsec:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   conduit-zstd:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   conf:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  confcrypt:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   conffmt:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   confide:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   config-parser:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3838,6 +3845,7 @@ dont-distribute-packages:
   ctpl:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   cube:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   cubical:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  cuboid:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   cudd:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   currency-convert:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   curry-base:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4247,6 +4255,7 @@ dont-distribute-packages:
   ehaskell:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   ehs:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   eibd-client-simple:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  eigen:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   Eight-Ball-Pool-Hack-Cheats:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   either-list-functions:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   EitherT:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4297,6 +4306,7 @@ dont-distribute-packages:
   enummapmap:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   enummapset-th:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   env-parser:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  envstatus:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   epanet-haskell:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   epass:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   epic:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4368,6 +4378,7 @@ dont-distribute-packages:
   execs:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   executor:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   exference:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  exhaustive:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   exherbo-cabal:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   exif:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   exinst-aeson:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4897,6 +4908,7 @@ dont-distribute-packages:
   goatee-gtk:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   goatee:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   gochan:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  godot-haskell:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   gofer-prelude:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   gogol-adexchange-buyer:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   gogol-adexchange-seller:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5352,6 +5364,7 @@ dont-distribute-packages:
   haskell-course-preludes:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-dap:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-docs:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskell-eigen-util:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-formatter:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-ftp:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-generate:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5447,6 +5460,14 @@ dont-distribute-packages:
   haskore:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   HaskRel:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   hasktags:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-ffi-th:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-ffi-thc:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-indef:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-signatures-partial:                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-signatures-support:                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-signatures:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch-zoo:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hasktorch:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskus-binary:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskus-system-build:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskus-utils:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5480,6 +5501,7 @@ dont-distribute-packages:
   HaTeX-meta:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   HaTeX-qq:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hats:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hatt:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   haverer:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   HaVSA:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hawitter:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5591,6 +5613,7 @@ dont-distribute-packages:
   Hermes:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   hermit-syb:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   hermit:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  herms:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   herringbone-embed:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   herringbone-wai:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   herringbone:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5614,6 +5637,7 @@ dont-distribute-packages:
   hexquote:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hext:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   heyefi:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  heyting-algebras:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hF2:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   hfann:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hfd:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5923,6 +5947,7 @@ dont-distribute-packages:
   hsbencher-codespeed:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsbencher-fusion:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsbencher:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hsc2hs:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-auditor:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-cairo:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-data:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6501,6 +6526,8 @@ dont-distribute-packages:
   KiCS-prophecy:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   KiCS:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   kif-parser:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  kind-apply:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  kind-generics:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   kit:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   kmeans-par:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   kmeans-vector:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6652,6 +6679,7 @@ dont-distribute-packages:
   lens-time:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   lens-toml-parser:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   lens-tutorial:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  lens-typelevel:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   lensref:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   level-monad:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   Level0:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6694,6 +6722,7 @@ dont-distribute-packages:
   life-sync:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   lifted-base-tf:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   lifted-protolude:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  lifted-stm:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   lifter:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   ligature:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   lightning-haskell:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6995,6 +7024,8 @@ dont-distribute-packages:
   MetaHDBC:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   MetaObject:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   metaplug:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  metar-http:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  metar:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   metric:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Metrics:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   metricsd-client:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7134,6 +7165,7 @@ dont-distribute-packages:
   monoid-subclasses:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   monoidplus:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   monoids:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  monopati:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   monte-carlo:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   monzo:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   moo:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7153,6 +7185,7 @@ dont-distribute-packages:
   mp3decoder:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   mp:                                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   mpdmate:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mpi-hs:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   mpppc:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mpretty:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   mpris:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7672,6 +7705,7 @@ dont-distribute-packages:
   persistent-qq:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   persistent-ratelimit:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   persistent-relational-record:                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  persistent-template-classy:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   persistent-vector:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   persistent-zookeeper:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   persona-idp:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7755,6 +7789,7 @@ dont-distribute-packages:
   plan-b:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   planar-graph:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   planb-token-introspection:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  planet-mitchell-test:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   planet-mitchell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   plankton:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   plat:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8341,6 +8376,7 @@ dont-distribute-packages:
   rosmsg-bin:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   rosmsg:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   rosso:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  rounded:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   rounding:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   roundtrip-aeson:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   roundtrip-string:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8543,6 +8579,7 @@ dont-distribute-packages:
   servant-github:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-haxl-client:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-hmac-auth:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-http2-client:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-iCalendar:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-jquery:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-js:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8562,6 +8599,8 @@ dont-distribute-packages:
   servant-snap:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-streaming-client:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-subscriber:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-swagger-ui-jensoleg:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-swagger-ui-redoc:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-xml:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-zeppelin-client:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-zeppelin-server:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8610,6 +8649,7 @@ dont-distribute-packages:
   shaker:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   shakespeare-babel:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   shakespeare-sass:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  shannon-fano:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   shapely-data:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   shapes-demo:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   shared-buffer:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8628,6 +8668,7 @@ dont-distribute-packages:
   shellish:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   shellmate-extras:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   shellmate:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  shh:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   shikensu:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   shivers-cfg:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   shoap:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8648,6 +8689,7 @@ dont-distribute-packages:
   simd:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   simgi:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   simple-actors:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  simple-affine-space:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   simple-atom:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   simple-bluetooth:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   simple-c-value:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8884,6 +8926,7 @@ dont-distribute-packages:
   spoonutil:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   spoty:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   Sprig:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  sprinkles:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   spritz:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   spsa:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   spy:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8908,6 +8951,7 @@ dont-distribute-packages:
   sssp:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   sstable:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   SSTG:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  st2:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   stable-heap:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   stable-maps:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   stable-marriage:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8953,6 +8997,7 @@ dont-distribute-packages:
   stats:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   statsd-client:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   statsd:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  statsdi:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   stb-image-redux:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   stb-truetype:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   stdata:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9697,6 +9742,7 @@ dont-distribute-packages:
   visualize-cbn:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   vk-aws-route53:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   VKHS:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  voicebase:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   vorbiscomment:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   vowpal-utils:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   voyeur:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9708,6 +9754,7 @@ dont-distribute-packages:
   vty-menu:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   vty-ui-extras:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   vty-ui:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  waargonaut:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   wacom-daemon:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   waddle:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   wahsp:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9825,6 +9872,7 @@ dont-distribute-packages:
   winio:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   wire-streams:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   wiring:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  witty:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   wkt-geom:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   wkt:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   wl-pprint-ansiterm:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9884,6 +9932,7 @@ dont-distribute-packages:
   X11-rm:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   X11-xdamage:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   X11-xfixes:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  x509-util:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   x86-64bit:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   xcb-types:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   xcffib:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9975,10 +10024,15 @@ dont-distribute-packages:
   yaml-rpc:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   yaml2owl:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   yamlkeysdiff:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yampa-canvas:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa-glfw:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yampa-gloss:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa-glut:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa-sdl2:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yampa-test:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa2048:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Yampa:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  YampaSynth:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   yandex-translate:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   yaop:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   yap:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -10079,6 +10133,7 @@ dont-distribute-packages:
   yjftp:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   yjsvg:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   yoctoparsec:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yoda:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   yoga:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   Yogurt-Standalone:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   Yogurt:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 8f230c92aaa..a0bf655a67b 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -443,6 +443,7 @@ stdenv.mkDerivation ({
 
     env = shellFor {
       packages = p: [ drv ];
+      inherit shellHook;
     };
 
   };
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 34c63821756..e0324f973b7 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -725,49 +725,6 @@ self: {
 
   "Agda" = callPackage
     ({ mkDerivation, alex, array, async, base, binary, blaze-html
-     , boxes, bytestring, Cabal, containers, cpphs, data-hash, deepseq
-     , directory, EdisonCore, edit-distance, emacs, equivalence
-     , filemanip, filepath, geniplate-mirror, gitrev, happy, hashable
-     , hashtables, haskeline, ieee754, mtl, murmur-hash, pretty, process
-     , regex-tdfa, stm, strict, template-haskell, text, time
-     , transformers, unordered-containers, uri-encode, zlib
-     }:
-     mkDerivation {
-       pname = "Agda";
-       version = "2.5.4.1";
-       sha256 = "0bxpibsk98n9xp42d92ma5vj2fam8rsnl61fbhr3askfjdvalnbp";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       setupHaskellDepends = [ base Cabal filemanip filepath process ];
-       libraryHaskellDepends = [
-         array async base binary blaze-html boxes bytestring containers
-         data-hash deepseq directory EdisonCore edit-distance equivalence
-         filepath geniplate-mirror gitrev hashable hashtables haskeline
-         ieee754 mtl murmur-hash pretty process regex-tdfa stm strict
-         template-haskell text time transformers unordered-containers
-         uri-encode zlib
-       ];
-       libraryToolDepends = [ alex cpphs happy ];
-       executableHaskellDepends = [ base directory filepath process ];
-       executableToolDepends = [ emacs ];
-       postInstall = ''
-         files=("$data/share/ghc-"*"/"*"-ghc-"*"/Agda-"*"/lib/prim/Agda/"{Primitive.agda,Builtin"/"*.agda})
-         for f in "''${files[@]}" ; do
-           $out/bin/agda $f
-         done
-         for f in "''${files[@]}" ; do
-           $out/bin/agda -c --no-main $f
-         done
-         $out/bin/agda-mode compile
-       '';
-       description = "A dependently typed functional programming language and proof assistant";
-       license = "unknown";
-       maintainers = with stdenv.lib.maintainers; [ abbradar ];
-     }) {inherit (pkgs) emacs;};
-
-  "Agda_2_5_4_2" = callPackage
-    ({ mkDerivation, alex, array, async, base, binary, blaze-html
      , boxes, bytestring, Cabal, containers, data-hash, deepseq
      , directory, EdisonCore, edit-distance, emacs, equivalence
      , filemanip, filepath, geniplate-mirror, gitrev, happy, hashable
@@ -806,7 +763,6 @@ self: {
        '';
        description = "A dependently typed functional programming language and proof assistant";
        license = "unknown";
-       hydraPlatforms = stdenv.lib.platforms.none;
        maintainers = with stdenv.lib.maintainers; [ abbradar ];
      }) {inherit (pkgs) emacs;};
 
@@ -1229,8 +1185,8 @@ self: {
      }:
      mkDerivation {
        pname = "BNFC";
-       version = "2.8.1";
-       sha256 = "082r1arj76563q1grc9ivpzfip8ghdffm87fj4q830s40dffl6rc";
+       version = "2.8.2";
+       sha256 = "1n4zgm6gls6lpasn8y5hy0m75qkkbk6mj18g2yhjrw8514a5860h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base ];
@@ -8666,6 +8622,39 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {};
 
+  "HTF_0_13_2_5" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, base
+     , base64-bytestring, bytestring, containers, cpphs, Diff, directory
+     , filepath, haskell-src, HUnit, lifted-base, monad-control, mtl
+     , old-time, pretty, process, QuickCheck, random, regex-compat
+     , template-haskell, temporary, text, time, unix
+     , unordered-containers, vector, xmlgen
+     }:
+     mkDerivation {
+       pname = "HTF";
+       version = "0.13.2.5";
+       sha256 = "1kmf95y4vijdiih27xa35acl02dsxqnd9qa56z1waki5qqiz6nin";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson array base base64-bytestring bytestring containers cpphs Diff
+         directory haskell-src HUnit lifted-base monad-control mtl old-time
+         pretty process QuickCheck random regex-compat text time unix vector
+         xmlgen
+       ];
+       executableHaskellDepends = [
+         array base cpphs directory HUnit mtl old-time random text
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty base bytestring directory filepath HUnit mtl
+         process random regex-compat template-haskell temporary text
+         unordered-containers
+       ];
+       description = "The Haskell Test Framework";
+       license = stdenv.lib.licenses.lgpl21;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "HTTP" = callPackage
     ({ mkDerivation, array, base, bytestring, case-insensitive, conduit
      , conduit-extra, deepseq, http-types, httpd-shed, HUnit, mtl
@@ -12316,10 +12305,8 @@ self: {
      }:
      mkDerivation {
        pname = "MiniAgda";
-       version = "0.2017.2.18";
-       sha256 = "0s3xp18y4kcjd1qq87vbhijbbpi9d1p08dgxw7521xlr3gmxkqxw";
-       revision = "1";
-       editedCabalFile = "0n4sd1b0c9fmgn7xqbhbms6y3ffkdgpa4fw7xcx31vgql2adxb0n";
+       version = "0.2018.11.6";
+       sha256 = "0zv8n80qmdykj40nqbrxb29grmy4kzjfhjxbyy3d7ylb64rq514n";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -17302,6 +17289,8 @@ self: {
        pname = "Stack";
        version = "0.3.2";
        sha256 = "1rap4xyldzwj26r8mbvzkyy9021q8h06pz8cyd061vyslrl7p89b";
+       revision = "1";
+       editedCabalFile = "1ngyrylqmc2fc088d49pn41nlps3mqjimh0y8wc6nmpkay5pj0m8";
        libraryHaskellDepends = [ base nats stm ];
        description = "Stack data structure";
        license = stdenv.lib.licenses.bsd3;
@@ -18317,6 +18306,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "TypeCompose_0_9_14" = callPackage
+    ({ mkDerivation, base, base-orphans }:
+     mkDerivation {
+       pname = "TypeCompose";
+       version = "0.9.14";
+       sha256 = "0msss17lrya6y5xfvxl41xsqs6yr09iw6m1px4xlwin72xwly0sn";
+       libraryHaskellDepends = [ base base-orphans ];
+       description = "Type composition classes & instances";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "TypeIlluminator" = callPackage
     ({ mkDerivation, base, haskell98 }:
      mkDerivation {
@@ -19673,17 +19674,20 @@ self: {
      }) {};
 
   "Yampa" = callPackage
-    ({ mkDerivation, base, deepseq, random }:
+    ({ mkDerivation, base, deepseq, random, simple-affine-space }:
      mkDerivation {
        pname = "Yampa";
-       version = "0.12";
-       sha256 = "077fnazzcv7gckpklmdgk4hz6nnfnims11c1r4dwpnb0z6n31wcg";
+       version = "0.13";
+       sha256 = "1rxy8vky3wmqn4awr6v7r40ghk6nr27y11jnzbkj1bdp1948irc0";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base deepseq random ];
+       libraryHaskellDepends = [
+         base deepseq random simple-affine-space
+       ];
        testHaskellDepends = [ base ];
-       description = "Library for programming hybrid systems";
+       description = "Elegant Functional Reactive Programming Language for Hybrid Systems";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "Yampa-core" = callPackage
@@ -19715,6 +19719,7 @@ self: {
        ];
        description = "Software synthesizer";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "Yocto" = callPackage
@@ -20460,6 +20465,8 @@ self: {
        pname = "accelerate-llvm-ptx";
        version = "1.2.0.0";
        sha256 = "1rh0kq10mwn4zd8f5sp19pah2hmmcansaqqssz79183znzfiviz5";
+       revision = "1";
+       editedCabalFile = "1fcgs1wcknqnj7wr907ixwlrzwgfnl1bmyr5j4d58bm2xrspid7m";
        libraryHaskellDepends = [
          accelerate accelerate-llvm base bytestring containers cuda deepseq
          directory dlist file-embed filepath hashable llvm-hs llvm-hs-pure
@@ -27123,8 +27130,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-athena";
-       version = "6.1.1";
-       sha256 = "1scshv7whw3ylp9nq8zgz12rbkvwq6hmcwn04s8h7ygnb9k3zy21";
+       version = "6.1.2";
+       sha256 = "0af1sd3hhi2j2bsglqi5vqs7cjh719zbzkjcxi68sy4h3783vqc2";
        libraryHaskellDepends = [
          amazonka amazonka-athena amazonka-core base lens resourcet text
          unliftio-core
@@ -27140,8 +27147,8 @@ self: {
     ({ mkDerivation, aeson, antiope-s3, avro, base, bytestring, text }:
      mkDerivation {
        pname = "antiope-contract";
-       version = "6.1.1";
-       sha256 = "14nvb786w4cqam3nd3wjfr7m0ysbr07vjm0ivwsxyvda3mwkn7pz";
+       version = "6.1.2";
+       sha256 = "1s9xikffc3l6q7l2fmi5yz6shw90w8zgb8sc1s3d85z7kfsi87rp";
        libraryHaskellDepends = [
          aeson antiope-s3 avro base bytestring text
        ];
@@ -27156,8 +27163,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-core";
-       version = "6.1.1";
-       sha256 = "0vmqyhxwfs45x3cqrlm1nij0cfnw2bk6sq3ldq6vrfpzm892g6py";
+       version = "6.1.2";
+       sha256 = "0bn975bcr1fm8w63m641iip22hw5alam28z73p3cjcx9wkzkfca4";
        libraryHaskellDepends = [
          amazonka amazonka-core base bytestring generic-lens http-client
          lens monad-logger mtl resourcet transformers unliftio-core
@@ -27177,8 +27184,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-dynamodb";
-       version = "6.1.1";
-       sha256 = "1kjsqka70bnkjzgdi427jqihlnm997ii147nzj8w04w5d6ynm2ly";
+       version = "6.1.2";
+       sha256 = "04ik6ms66yiq934dqhadw4fhb5js08q6czpgb8vqsv8pvm3cj30f";
        libraryHaskellDepends = [
          amazonka amazonka-core amazonka-dynamodb antiope-core base
          generic-lens lens text unliftio-core unordered-containers
@@ -27198,8 +27205,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-messages";
-       version = "6.1.1";
-       sha256 = "0nklh0wi1y6drpm7i4ssjc8xx4b20knpnghn2yv839ph6w0f0r13";
+       version = "6.1.2";
+       sha256 = "1vkjflqi2k4d74hwagfaff4gyjx5809d2yjijhmgwk5aldyydw9m";
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-s3 amazonka-sqs antiope-s3
          base generic-lens lens lens-aeson monad-loops network-uri text
@@ -27223,8 +27230,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-s3";
-       version = "6.1.1";
-       sha256 = "0aq0qk377wvxm3kgy63zk382rnvjxx8csxj63vnmc5gikz5i2ya7";
+       version = "6.1.2";
+       sha256 = "1lrawihlnl1kmhqimcf59d7a2ad916ss83zjllx3x8cy6br68b4r";
        libraryHaskellDepends = [
          amazonka amazonka-core amazonka-s3 antiope-core base bytestring
          conduit conduit-extra exceptions generic-lens http-types lens
@@ -27246,8 +27253,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-sns";
-       version = "6.1.1";
-       sha256 = "0jdlm3sl7w5cq2hpikm73763np56g16z48b34wavg9yblrdfvvn7";
+       version = "6.1.2";
+       sha256 = "0b6blhcc1dplc16v9k12jn9s9ii5575sj9hm4kbla8483j24rd3k";
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-sns base generic-lens lens
          text unliftio-core
@@ -27267,8 +27274,8 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-sqs";
-       version = "6.1.1";
-       sha256 = "189wgl3qpmf4amgc571zv88zpdblaqcbcnw93a6lk6i7rzc6h40r";
+       version = "6.1.2";
+       sha256 = "1d508kcsm1bxz768fxin5jc6y7jqskdxxpgl1z5n1579aq7wb0ia";
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-s3 amazonka-sqs
          antiope-messages antiope-s3 base generic-lens lens lens-aeson
@@ -29044,6 +29051,7 @@ self: {
        ];
        description = "Memory-efficient ArrayList implementation";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "arrow-extras" = callPackage
@@ -30353,6 +30361,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "atomic-write_0_2_0_6" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hspec
+     , temporary, text, unix-compat
+     }:
+     mkDerivation {
+       pname = "atomic-write";
+       version = "0.2.0.6";
+       sha256 = "1xs3shwnlj8hmnm3q6jc8nv78z0481i5n4hrqqdmbpx8grvlnqyl";
+       libraryHaskellDepends = [
+         base bytestring directory filepath temporary text unix-compat
+       ];
+       testHaskellDepends = [
+         base bytestring filepath hspec temporary text unix-compat
+       ];
+       description = "Atomically write to a file";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "atomo" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , filepath, hashable, haskeline, hint, mtl, parsec, pretty
@@ -30867,15 +30894,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "attoparsec-uri_0_0_6" = callPackage
+  "attoparsec-uri_0_0_7" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-ip, base, bytedump, ip
      , QuickCheck, quickcheck-instances, strict, tasty, tasty-quickcheck
      , text, vector
      }:
      mkDerivation {
        pname = "attoparsec-uri";
-       version = "0.0.6";
-       sha256 = "046aq5c56p51nxyrazv3sv7m49c214gc673cwyic75vfykgbk20b";
+       version = "0.0.7";
+       sha256 = "0p3j4m5ps4j8phm2c00rk6m06vidckf14fy50xgcq2zr8b1lk79n";
        libraryHaskellDepends = [
          attoparsec attoparsec-ip base bytedump ip QuickCheck
          quickcheck-instances strict text vector
@@ -32475,17 +32502,16 @@ self: {
     ({ mkDerivation, base, binary, bytestring, containers, criterion
      , directory, errors, exceptions, filepath, lens, mmap, mtl, pipes
      , pipes-interleave, QuickCheck, tasty, tasty-quickcheck
-     , transformers, vector
+     , transformers, vector, vector-binary-instances
      }:
      mkDerivation {
        pname = "b-tree";
-       version = "0.1.3";
-       sha256 = "0r1bgcjsykd9qzzr6chxw8bfnmvk32p9663j6h11wmq6nq7nrlkb";
-       revision = "3";
-       editedCabalFile = "1i9qadxdq215j6dimyrmdkzl3d95l4gb65d2visf8rq1jfmdz62n";
+       version = "0.1.4";
+       sha256 = "17hcv85020dm5h3449bfa763bcbl723h17chah4418dby2ql5lxg";
        libraryHaskellDepends = [
          base binary bytestring containers directory errors exceptions
          filepath lens mmap mtl pipes pipes-interleave transformers vector
+         vector-binary-instances
        ];
        testHaskellDepends = [
          base binary containers pipes QuickCheck tasty tasty-quickcheck
@@ -33123,6 +33149,7 @@ self: {
        doHaddock = false;
        description = "Helps migrating projects to base-compat(-batteries)";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "base-encoding" = callPackage
@@ -34119,13 +34146,14 @@ self: {
     ({ mkDerivation, base, dunai, MonadRandom, mtl, transformers }:
      mkDerivation {
        pname = "bearriver";
-       version = "0.10.4.3";
-       sha256 = "0d8yhccsg66163cjkdccdjf26rkzv4i7fv454fj9vhylxcggzjin";
+       version = "0.10.4.4";
+       sha256 = "14aqp6jqca5b4z0bf5q18pq5l9q43bzz18zjwn3j0ns1fakrq5bb";
        libraryHaskellDepends = [
          base dunai MonadRandom mtl transformers
        ];
        description = "A replacement of Yampa based on Monadic Stream Functions";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "beautifHOL" = callPackage
@@ -34328,6 +34356,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "bencodex" = callPackage
+    ({ mkDerivation, attoparsec, base, base64-bytestring, bytestring
+     , containers, file-embed, filepath, hashable, hlint, hspec
+     , hspec-attoparsec, hspec-discover, HsYAML, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "bencodex";
+       version = "1.0.0";
+       sha256 = "1ny60qg63kyi12rlk8spc6db40zq3laqfw0k89s0jvnkjlksdyj8";
+       libraryHaskellDepends = [
+         attoparsec base bytestring hashable text unordered-containers
+       ];
+       testHaskellDepends = [
+         base base64-bytestring bytestring containers file-embed filepath
+         hlint hspec hspec-attoparsec hspec-discover HsYAML text
+         unordered-containers
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Bencodex reader/writer for Haskell";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "bencoding" = callPackage
     ({ mkDerivation, AttoBencode, attoparsec, base, bencode, bytestring
      , containers, criterion, deepseq, ghc-prim, hspec, integer-gmp, mtl
@@ -34590,6 +34641,8 @@ self: {
        pname = "bhoogle";
        version = "0.1.3.5";
        sha256 = "1gig9w1k1w2kw6y3wx6ckmc7kamwwzzq7mbaxil0rmb5ms0p1rf9";
+       revision = "1";
+       editedCabalFile = "006nqwl03lrs7nsly7l3kl9wfwabflkkxy4g34sbkik88ihipw56";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -40072,8 +40125,8 @@ self: {
      }:
      mkDerivation {
        pname = "bugsnag-haskell";
-       version = "0.0.2.1";
-       sha256 = "09vvckg6advf47ciq3cv2g06g13d2az1kinby5fpfz1wma7s1zjg";
+       version = "0.0.2.2";
+       sha256 = "1fx9f0ddx8il141rhqxb81vms0nxkyckwx72cmjq2j0nwjhhh89l";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -40478,19 +40531,18 @@ self: {
 
   "butterflies" = callPackage
     ({ mkDerivation, base, bytestring, gl-capture, GLUT, OpenGLRaw
-     , OpenGLRaw21, repa, repa-devil
+     , repa, repa-devil
      }:
      mkDerivation {
        pname = "butterflies";
-       version = "0.3.0.1";
-       sha256 = "0dgjjfd4lna6kvqbckx378ssxc5mm9xyvdkwd3r197199rmxq733";
+       version = "0.3.0.2";
+       sha256 = "0syykvrgq6i0zxy1pn934j1r9glv4yypva1mfkn0vc0nikh9fm31";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base ];
        executableHaskellDepends = [
-         base bytestring gl-capture GLUT OpenGLRaw OpenGLRaw21 repa
-         repa-devil
+         base bytestring gl-capture GLUT OpenGLRaw repa repa-devil
        ];
        description = "butterfly tilings";
        license = stdenv.lib.licenses.gpl3;
@@ -43095,6 +43147,7 @@ self: {
        ];
        description = "Canonical JSON for signing and hashing JSON values";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "canteven-config" = callPackage
@@ -45593,6 +45646,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "cheapskate_0_1_1_1" = callPackage
+    ({ mkDerivation, base, blaze-html, bytestring, containers
+     , data-default, deepseq, mtl, syb, text, uniplate, xss-sanitize
+     }:
+     mkDerivation {
+       pname = "cheapskate";
+       version = "0.1.1.1";
+       sha256 = "0qnyd8bni2rby6b02ff4bvfdhm1hwc8vzpmnms84jgrlg1lly3fm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base blaze-html containers data-default deepseq mtl syb text
+         uniplate xss-sanitize
+       ];
+       executableHaskellDepends = [ base blaze-html bytestring text ];
+       description = "Experimental markdown processor";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cheapskate-highlight" = callPackage
     ({ mkDerivation, base, blaze-html, cheapskate, highlighting-kate
      , text
@@ -49707,6 +49780,8 @@ self: {
        pname = "combinat";
        version = "0.2.9.0";
        sha256 = "1y617qyhqh2k6d51j94c0xnj54i7b86d87n0j12idxlkaiv4j5sw";
+       revision = "1";
+       editedCabalFile = "0yjvvxfmyzjhh0q050cc2wkhaahzixsw7hf27n8dky3n4cxd5bix";
        libraryHaskellDepends = [
          array base containers random transformers
        ];
@@ -49854,6 +49929,7 @@ self: {
        testHaskellDepends = [ base QuickCheck ];
        description = "Arrays where the index type is a function of the shape type";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "comfort-graph" = callPackage
@@ -51952,8 +52028,8 @@ self: {
      }:
      mkDerivation {
        pname = "confcrypt";
-       version = "0.1.0.3";
-       sha256 = "0fj40m3yncrwb3z2dznvls17v40xm1kh0i4ig16mpb9qj7ww8chl";
+       version = "0.1.0.4";
+       sha256 = "1c25xjpnw802pqfjksx5fxjq9ynwfjkkmyad169bvfasry98cdbb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -51976,6 +52052,7 @@ self: {
          text transformers
        ];
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "confetti" = callPackage
@@ -54125,6 +54202,8 @@ self: {
        pname = "country";
        version = "0.1.6";
        sha256 = "0a4r2jnp15xy18s6xpd4p10cgq3hd8qqzhy5lakmzymivwq6xcq9";
+       revision = "1";
+       editedCabalFile = "04a2s0zlm4garihnm3xl9avf88vjnbvpsyb2ckk3z7ydjq0y3938";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring deepseq ghc-prim hashable
          primitive scientific text unordered-containers
@@ -54425,7 +54504,7 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "Bindings for libpython";
        license = stdenv.lib.licenses.gpl3;
-     }) {inherit (pkgs) python34;};
+     }) {python34 = null;};
 
   "cql" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, Decimal
@@ -56631,6 +56710,7 @@ self: {
        executableHaskellDepends = [ base GLUT Yampa ];
        description = "3D Yampa/GLUT Puzzle Game";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "cuckoo-filter" = callPackage
@@ -61971,8 +62051,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "descrilo";
-       version = "0.1.0.6";
-       sha256 = "166x7j8q5wg8iq1bf2qz01ps0b1pbfgizsy1zfhjd98a3zl9fid2";
+       version = "0.1.0.7";
+       sha256 = "00rk7m54igmrsi8j2fmql7c5wgyg7x5ws8397753470x5k2qv2ap";
        libraryHaskellDepends = [ base ];
        description = "Loads a list of items with fields";
        license = stdenv.lib.licenses.gpl3;
@@ -63415,8 +63495,8 @@ self: {
        pname = "dictionary-sharing";
        version = "0.1.0.0";
        sha256 = "00aspv943qdqhlk39mbk00kb1dsa5r0caj8sslrn81fnsn252fwc";
-       revision = "2";
-       editedCabalFile = "0pxbqck3fkfqrg51fkkplcmqxn9vllkc5ff83l282gandqv4glvi";
+       revision = "3";
+       editedCabalFile = "1mn7jcc7h3b8f1pn9zigqp6mc2n0qb66lms5qnrx4zswdv5w9439";
        libraryHaskellDepends = [ base containers ];
        description = "Sharing/memoization of class members";
        license = stdenv.lib.licenses.bsd3;
@@ -63584,6 +63664,8 @@ self: {
        pname = "diffmap";
        version = "0.1.0.0";
        sha256 = "0i6dyvp8ds1wz9jm7nva076pc18mz24fiz50gqgq3xv76aghl0i0";
+       revision = "1";
+       editedCabalFile = "0gkcsdf9jrfs5lwhayl808flwlv446mixdn3n91v5gsxbcqqrsi7";
        libraryHaskellDepends = [ base containers ];
        description = "diff on maps";
        license = stdenv.lib.licenses.bsd3;
@@ -65584,8 +65666,8 @@ self: {
      }:
      mkDerivation {
        pname = "dmcc";
-       version = "1.0.0.1";
-       sha256 = "1qlw3jx9nn2by757kqask1ib2wi32zgdj53kinj2lnjn5f9qs466";
+       version = "1.1.0.0";
+       sha256 = "1lrscg4b13wd4gnkg3nsl2ala851lk03p9jxmlxmf2hbf4cl6cnc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -67290,8 +67372,8 @@ self: {
     ({ mkDerivation, base, text, xml-types }:
      mkDerivation {
        pname = "dtd-types";
-       version = "0.3.0.1";
-       sha256 = "1w2ni9b8kn242grdqb4wxvgxqpkpp9qy66d57n33l5jghlg8b0s7";
+       version = "0.4.0.0";
+       sha256 = "1h5ypjnpjim2lwlc6jfp8ixqg7zbkj7fg2kpnlwnyj29n9g58rka";
        libraryHaskellDepends = [ base text xml-types ];
        description = "Basic types for representing XML DTDs";
        license = stdenv.lib.licenses.bsd3;
@@ -67507,6 +67589,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dunai_0_5_1" = callPackage
+    ({ mkDerivation, base, MonadRandom, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "dunai";
+       version = "0.5.1";
+       sha256 = "07bkjp7z5lbm6466nc99p4ngiqkh5mgbczwl7rflxzis4w1vm997";
+       libraryHaskellDepends = [
+         base MonadRandom transformers transformers-base
+       ];
+       description = "Generalised reactive framework supporting classic, arrowized and monadic FRP";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dunai-core" = callPackage
     ({ mkDerivation, base, MonadRandom, transformers, transformers-base
      }:
@@ -68971,21 +69068,23 @@ self: {
      }) {eibclient = null;};
 
   "eigen" = callPackage
-    ({ mkDerivation, base, binary, bytestring, mtl, primitive
-     , transformers, vector
+    ({ mkDerivation, base, binary, bytestring, constraints, ghc-prim
+     , mtl, primitive, transformers, vector
      }:
      mkDerivation {
        pname = "eigen";
-       version = "3.3.4.1";
-       sha256 = "0kpbnl5yrsp9923al5g9x48yf88m4vsdryq69g8fmlh0wdqkdapa";
+       version = "3.3.4.2";
+       sha256 = "0l88bzp6f5bs5lpcav1c0lg2dc59rfdka2d6dx3c6gzbj1jmf5iz";
        libraryHaskellDepends = [
-         base binary bytestring primitive transformers vector
+         base binary bytestring constraints ghc-prim primitive transformers
+         vector
        ];
        testHaskellDepends = [
-         base binary bytestring mtl primitive transformers vector
+         base binary bytestring ghc-prim mtl primitive transformers vector
        ];
        description = "Eigen C++ library (linear algebra: matrices, sparse matrices, vectors, numerical solvers)";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "either" = callPackage
@@ -70745,6 +70844,7 @@ self: {
        ];
        description = "Display efficiently the state of the local environment";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "envy" = callPackage
@@ -72780,6 +72880,7 @@ self: {
        ];
        description = "Compile time checks that a computation considers producing data through all possible constructors";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "exherbo-cabal" = callPackage
@@ -73492,7 +73593,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "extensible_0_4_10" = callPackage
+  "extensible_0_4_10_1" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cassava, comonad
      , constraints, deepseq, exceptions, ghc-prim, hashable, lens
      , monad-skeleton, mtl, prettyprinter, primitive, profunctors
@@ -73502,8 +73603,8 @@ self: {
      }:
      mkDerivation {
        pname = "extensible";
-       version = "0.4.10";
-       sha256 = "012xryq2jz7k6dmrzjh8j3yn9ggyna63vppi6xwdqjxks9xms2zq";
+       version = "0.4.10.1";
+       sha256 = "009z0grpjnnmnsc887k6vgfz5w55mniax25dl4ispj1nq74djksb";
        libraryHaskellDepends = [
          aeson base bytestring cassava comonad constraints deepseq
          exceptions ghc-prim hashable monad-skeleton mtl prettyprinter
@@ -73556,26 +73657,29 @@ self: {
      }) {};
 
   "extensible-effects-concurrent" = callPackage
-    ({ mkDerivation, base, containers, data-default, deepseq, directory
-     , extensible-effects, filepath, HUnit, lens, logging-effect
-     , monad-control, mtl, parallel, process, QuickCheck, random, stm
-     , tagged, tasty, tasty-discover, tasty-hunit, time, transformers
+    ({ mkDerivation, async, base, containers, data-default, deepseq
+     , directory, enclosed-exceptions, extensible-effects, filepath
+     , HUnit, lens, monad-control, mtl, parallel, process, QuickCheck
+     , stm, tasty, tasty-discover, tasty-hunit, time, transformers-base
      }:
      mkDerivation {
        pname = "extensible-effects-concurrent";
-       version = "0.8";
-       sha256 = "17xag4qcdgv7fihyigmi48kf4mb9f3dbxqlh7a7s1xqdfh9l6mc2";
+       version = "0.11.1";
+       sha256 = "0jpf8rp2dfa6ggvv076fyipbyr97dq3lxwrxdbffsnjviz6232wd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers data-default deepseq directory extensible-effects
-         filepath lens logging-effect monad-control mtl parallel process
-         QuickCheck random stm tagged time transformers
+         async base containers data-default deepseq enclosed-exceptions
+         extensible-effects filepath lens monad-control mtl parallel process
+         QuickCheck stm time transformers-base
+       ];
+       executableHaskellDepends = [
+         base data-default deepseq directory extensible-effects filepath
+         lens
        ];
-       executableHaskellDepends = [ base extensible-effects ];
        testHaskellDepends = [
-         base containers deepseq extensible-effects HUnit lens QuickCheck
-         stm tasty tasty-discover tasty-hunit
+         base containers data-default deepseq extensible-effects HUnit lens
+         QuickCheck stm tasty tasty-discover tasty-hunit
        ];
        testToolDepends = [ tasty-discover ];
        description = "Message passing concurrency as extensible-effect";
@@ -74087,20 +74191,18 @@ self: {
      }) {};
 
   "fast-arithmetic" = callPackage
-    ({ mkDerivation, arithmoi, base, combinat-compat
-     , composition-prelude, criterion, gmpint, hspec, QuickCheck
+    ({ mkDerivation, arithmoi, base, combinat, criterion, hgmp, hspec
+     , QuickCheck
      }:
      mkDerivation {
        pname = "fast-arithmetic";
-       version = "0.6.3.0";
-       sha256 = "0f02fi63xq0x1r5qqagwzz6wbsxblz99jm2g994gs13ba11abix1";
-       libraryHaskellDepends = [ base composition-prelude gmpint ];
-       testHaskellDepends = [
-         arithmoi base combinat-compat hspec QuickCheck
-       ];
-       benchmarkHaskellDepends = [
-         arithmoi base combinat-compat criterion
-       ];
+       version = "0.6.4.1";
+       sha256 = "0rnbqj495lj2c5xmk35iwhlx6h4m14b35hqz73adspm4ryym00b3";
+       revision = "2";
+       editedCabalFile = "0hla00m1v9sk480yif3kgi2zzqq7snfz6san3yznigpxqzq5rczm";
+       libraryHaskellDepends = [ base hgmp ];
+       testHaskellDepends = [ arithmoi base combinat hspec QuickCheck ];
+       benchmarkHaskellDepends = [ arithmoi base combinat criterion ];
        description = "Fast functions on integers";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -76710,8 +76812,8 @@ self: {
     ({ mkDerivation, base, random }:
      mkDerivation {
        pname = "fixedprec";
-       version = "0.2.2.1";
-       sha256 = "0s921nhkmdglmcwzyr048r04dswc6hz7kvh9p4lvd8i2mxq0szgi";
+       version = "0.2.2.2";
+       sha256 = "01ss9rzg2r4gii6f7771n4vdyg022skyws6ncc3l62xycgz153a7";
        libraryHaskellDepends = [ base random ];
        description = "A fixed-precision real number type";
        license = stdenv.lib.licenses.bsd3;
@@ -77007,21 +77109,20 @@ self: {
 
   "flat" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, deepseq
-     , dlist, doctest, filemanip, ghc-prim, mono-traversable, pretty
-     , primitive, quickcheck-instances, tasty, tasty-hunit
-     , tasty-quickcheck, text, vector
+     , dlist, ghc-prim, mono-traversable, pretty, primitive, QuickCheck
+     , tasty, tasty-hunit, tasty-quickcheck, text, vector
      }:
      mkDerivation {
        pname = "flat";
-       version = "0.3.2";
-       sha256 = "0489w132m6j47m0jf1svwvql3fmw58iz9l2rqnhn4c5gg91wj53q";
+       version = "0.3.4";
+       sha256 = "1v7c5nrvhys4flq5xacws59w25qzbb6mvwhvk4f6jb6impmqnwyw";
        libraryHaskellDepends = [
          array base bytestring containers deepseq dlist ghc-prim
          mono-traversable pretty primitive text vector
        ];
        testHaskellDepends = [
-         base bytestring containers deepseq doctest filemanip ghc-prim
-         quickcheck-instances tasty tasty-hunit tasty-quickcheck text
+         array base bytestring containers deepseq ghc-prim QuickCheck tasty
+         tasty-hunit tasty-quickcheck text
        ];
        description = "Principled and efficient bit-oriented binary serialization";
        license = stdenv.lib.licenses.bsd3;
@@ -77901,6 +78002,30 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "focuslist" = callPackage
+    ({ mkDerivation, base, Cabal, cabal-doctest, containers, doctest
+     , genvalidity-containers, genvalidity-hspec, hedgehog, lens
+     , mono-traversable, QuickCheck, tasty, tasty-hedgehog, tasty-hspec
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "focuslist";
+       version = "0.1.0.0";
+       sha256 = "1przphis37yh06q2scqh2njcrvgynh0p9km52f4a5yvmnxvaqs8n";
+       isLibrary = true;
+       isExecutable = true;
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         base containers lens mono-traversable QuickCheck
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity-containers genvalidity-hspec hedgehog lens
+         QuickCheck tasty tasty-hedgehog tasty-hspec template-haskell
+       ];
+       description = "Lists with a focused element";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "fold-debounce" = callPackage
     ({ mkDerivation, base, data-default-class, hspec, stm, stm-delay
      , time
@@ -79142,8 +79267,8 @@ self: {
      }:
      mkDerivation {
        pname = "free-algebras";
-       version = "0.0.5.1";
-       sha256 = "1h8966am7j0xdqq2vmfj2cyrzmkd70bs1kx9fpx1bgn1acdpg1xa";
+       version = "0.0.6.0";
+       sha256 = "1332awl3aps1zw537ym18jp1d5igwsnpk3acmrznks7vfsdr27as";
        libraryHaskellDepends = [
          base constraints containers data-fix dlist free groups
          kan-extensions mtl natural-numbers transformers
@@ -79157,6 +79282,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "free-category" = callPackage
+    ({ mkDerivation, base, free-algebras }:
+     mkDerivation {
+       pname = "free-category";
+       version = "0.0.1.0";
+       sha256 = "0cpcn10kbsx1xvvxvvcx5hpa0p9vhkrjf7cmzva2zpmhdj4jp5rg";
+       libraryHaskellDepends = [ base free-algebras ];
+       description = "Free category";
+       license = stdenv.lib.licenses.mpl20;
+     }) {};
+
   "free-concurrent" = callPackage
     ({ mkDerivation, base, type-aligned }:
      mkDerivation {
@@ -81553,8 +81689,8 @@ self: {
     ({ mkDerivation, base, GLUT, OpenGLRaw, Vec }:
      mkDerivation {
        pname = "gearbox";
-       version = "1.0.0.5";
-       sha256 = "01mzvbmzq7bl665xy5znqcivxp0b6x6wcrzq8r6kzsym5izm9qz4";
+       version = "1.0.0.6";
+       sha256 = "0f8zljk145yq3lq3ngiana5g39ybqijsv7n3b11wdr7mzymdgyw2";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base GLUT OpenGLRaw Vec ];
@@ -82584,12 +82720,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "genvalidity_0_6_1_0" = callPackage
+  "genvalidity_0_7_0_0" = callPackage
     ({ mkDerivation, base, hspec, hspec-core, QuickCheck, validity }:
      mkDerivation {
        pname = "genvalidity";
-       version = "0.6.1.0";
-       sha256 = "0wjqwn040yn7wpmcmhfp5slvyspal104p5wgkwwi40ykaj2zhayg";
+       version = "0.7.0.0";
+       sha256 = "1bjsqqyr1n306icfdl8sh3amqq95zpr5hawwbv46nbf0rxci88w1";
        libraryHaskellDepends = [ base QuickCheck validity ];
        testHaskellDepends = [ base hspec hspec-core QuickCheck ];
        description = "Testing utilities for the validity library";
@@ -82637,21 +82773,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "genvalidity-bytestring_0_3_0_0" = callPackage
+  "genvalidity-bytestring_0_3_0_1" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, genvalidity
      , genvalidity-hspec, hspec, QuickCheck, validity
      , validity-bytestring
      }:
      mkDerivation {
        pname = "genvalidity-bytestring";
-       version = "0.3.0.0";
-       sha256 = "1jmy41mqjh3zj512fjikn6vqjvx81cdvi9llc9f0yp2h2rkmw4hf";
+       version = "0.3.0.1";
+       sha256 = "1jc3hd5aad5vblb1mmb1xzgfdcnk37w50vxyznr1m16rdfg1xrz8";
        libraryHaskellDepends = [
          base bytestring genvalidity QuickCheck validity validity-bytestring
        ];
        testHaskellDepends = [
          base bytestring deepseq genvalidity genvalidity-hspec hspec
-         QuickCheck
+         QuickCheck validity
        ];
        description = "GenValidity support for ByteString";
        license = stdenv.lib.licenses.mit;
@@ -82676,6 +82812,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-containers_0_5_1_1" = callPackage
+    ({ mkDerivation, base, containers, genvalidity, genvalidity-hspec
+     , hspec, QuickCheck, validity, validity-containers
+     }:
+     mkDerivation {
+       pname = "genvalidity-containers";
+       version = "0.5.1.1";
+       sha256 = "1z7bmbwi07nylkgm3dysmnv57z1iww2sjy2zv88jpg6nvq9r9ffg";
+       libraryHaskellDepends = [
+         base containers genvalidity QuickCheck validity validity-containers
+       ];
+       testHaskellDepends = [
+         base containers genvalidity genvalidity-hspec hspec validity
+       ];
+       description = "GenValidity support for containers";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec" = callPackage
     ({ mkDerivation, base, doctest, genvalidity, genvalidity-property
      , hspec, hspec-core, QuickCheck, transformers, validity
@@ -82695,6 +82850,27 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-hspec_0_6_2_1" = callPackage
+    ({ mkDerivation, base, doctest, genvalidity, genvalidity-property
+     , hspec, hspec-core, QuickCheck, transformers, validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec";
+       version = "0.6.2.1";
+       sha256 = "100mjmbjfzy431a52yqkq2rja0mb5zw8dbkpfbfy17rdkwwx2yn1";
+       libraryHaskellDepends = [
+         base genvalidity genvalidity-property hspec hspec-core QuickCheck
+         transformers validity
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity genvalidity-property hspec hspec-core
+         QuickCheck validity
+       ];
+       description = "Standard spec's for GenValidity instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec-aeson" = callPackage
     ({ mkDerivation, aeson, base, bytestring, deepseq, doctest
      , genvalidity, genvalidity-aeson, genvalidity-hspec
@@ -82716,6 +82892,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-hspec-aeson_0_3_0_1" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, deepseq, doctest
+     , genvalidity, genvalidity-aeson, genvalidity-hspec
+     , genvalidity-property, genvalidity-text, hspec, QuickCheck, text
+     , validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec-aeson";
+       version = "0.3.0.1";
+       sha256 = "0x5ja3d6vab2gmcqif3cvvbvmdpxp4hrc4ygzns5pw91nlrf5lm2";
+       libraryHaskellDepends = [
+         aeson base bytestring deepseq genvalidity genvalidity-hspec hspec
+         QuickCheck
+       ];
+       testHaskellDepends = [
+         aeson base doctest genvalidity genvalidity-aeson genvalidity-hspec
+         genvalidity-property genvalidity-text hspec text validity
+       ];
+       description = "Standard spec's for aeson-related instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec-binary" = callPackage
     ({ mkDerivation, base, binary, deepseq, doctest, genvalidity
      , genvalidity-hspec, hspec, QuickCheck
@@ -82732,6 +82931,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-hspec-binary_0_2_0_3" = callPackage
+    ({ mkDerivation, base, binary, deepseq, doctest, genvalidity
+     , genvalidity-hspec, genvalidity-property, hspec, QuickCheck
+     , validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec-binary";
+       version = "0.2.0.3";
+       sha256 = "1am9brcf3wh2fdrfwlkcqiamwc2zlcw3lihpcqgz0sm3jhka56xr";
+       libraryHaskellDepends = [
+         base binary deepseq genvalidity genvalidity-hspec hspec QuickCheck
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity genvalidity-property hspec validity
+       ];
+       description = "Standard spec's for binary-related Instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec-cereal" = callPackage
     ({ mkDerivation, base, cereal, deepseq, doctest, genvalidity
      , genvalidity-hspec, hspec, QuickCheck
@@ -82748,6 +82967,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-hspec-cereal_0_2_0_3" = callPackage
+    ({ mkDerivation, base, cereal, deepseq, doctest, genvalidity
+     , genvalidity-hspec, genvalidity-property, hspec, QuickCheck
+     , validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec-cereal";
+       version = "0.2.0.3";
+       sha256 = "11bii2nf52jfarfb5jzgj6pmsz59mcvivb8nxc90z97gdd5w6zll";
+       libraryHaskellDepends = [
+         base cereal deepseq genvalidity genvalidity-hspec hspec QuickCheck
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity genvalidity-property hspec validity
+       ];
+       description = "Standard spec's for cereal-related instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec-hashable" = callPackage
     ({ mkDerivation, base, doctest, genvalidity, genvalidity-hspec
      , genvalidity-property, hashable, hspec, hspec-core, QuickCheck
@@ -82769,19 +83008,42 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-hspec-hashable_0_2_0_3" = callPackage
+    ({ mkDerivation, base, doctest, genvalidity, genvalidity-hspec
+     , genvalidity-property, hashable, hspec, hspec-core, QuickCheck
+     , validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec-hashable";
+       version = "0.2.0.3";
+       sha256 = "0lb1aiv07fbbkyhh8ig2lhqgm9yibrny2bw9qwbdkwwsi6hk4566";
+       libraryHaskellDepends = [
+         base genvalidity genvalidity-hspec genvalidity-property hashable
+         hspec QuickCheck validity
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity genvalidity-hspec genvalidity-property
+         hashable hspec hspec-core QuickCheck validity
+       ];
+       description = "Standard spec's for Hashable instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-hspec-optics" = callPackage
     ({ mkDerivation, base, doctest, genvalidity, genvalidity-hspec
-     , hspec, microlens, QuickCheck
+     , genvalidity-property, hspec, microlens, QuickCheck, validity
      }:
      mkDerivation {
        pname = "genvalidity-hspec-optics";
-       version = "0.1.1.0";
-       sha256 = "13nspyfd8apvqf30dr8zz027d60qh2f25rc6gk8fliiq626ajz17";
+       version = "0.1.1.1";
+       sha256 = "121pjin5g1mgdqjydvj68639d5f17i3ibxrl8iiigp4q3xywp4ha";
        libraryHaskellDepends = [
          base genvalidity genvalidity-hspec hspec microlens QuickCheck
        ];
        testHaskellDepends = [
-         base doctest genvalidity genvalidity-hspec hspec microlens
+         base doctest genvalidity genvalidity-hspec genvalidity-property
+         hspec microlens validity
        ];
        description = "Standard spec's for optics";
        license = stdenv.lib.licenses.mit;
@@ -82846,6 +83108,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-property_0_3_0_0" = callPackage
+    ({ mkDerivation, base, directory, doctest, filepath, genvalidity
+     , hspec, QuickCheck, validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-property";
+       version = "0.3.0.0";
+       sha256 = "03cpmkqmfqypj9kydrdzs0pyix0ffwrlx8idzvgyrqiyhg03rsis";
+       libraryHaskellDepends = [
+         base genvalidity hspec QuickCheck validity
+       ];
+       testHaskellDepends = [ base directory doctest filepath ];
+       description = "Standard properties for functions on `Validity` types";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-scientific" = callPackage
     ({ mkDerivation, base, genvalidity, genvalidity-hspec, hspec
      , QuickCheck, scientific, validity, validity-scientific
@@ -82918,6 +83197,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-unordered-containers_0_2_0_4" = callPackage
+    ({ mkDerivation, base, genvalidity, genvalidity-hspec, hashable
+     , hspec, QuickCheck, unordered-containers, validity
+     , validity-unordered-containers
+     }:
+     mkDerivation {
+       pname = "genvalidity-unordered-containers";
+       version = "0.2.0.4";
+       sha256 = "0rkvwm5imbgl8cx5pdk16dc4wzhcndw6g3wwxs0blykiri32wl3q";
+       libraryHaskellDepends = [
+         base genvalidity hashable QuickCheck unordered-containers validity
+         validity-unordered-containers
+       ];
+       testHaskellDepends = [
+         base genvalidity genvalidity-hspec hspec unordered-containers
+         validity
+       ];
+       description = "GenValidity support for unordered-containers";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "genvalidity-uuid" = callPackage
     ({ mkDerivation, base, genvalidity, genvalidity-hspec, hspec
      , QuickCheck, uuid, validity, validity-uuid
@@ -82954,6 +83255,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "genvalidity-vector_0_2_0_3" = callPackage
+    ({ mkDerivation, base, genvalidity, genvalidity-hspec, hspec
+     , QuickCheck, validity, validity-vector, vector
+     }:
+     mkDerivation {
+       pname = "genvalidity-vector";
+       version = "0.2.0.3";
+       sha256 = "161w5shgj1k8691mmi9ddhxrnrqhsp502ywln2h0sk55zqcj1i5k";
+       libraryHaskellDepends = [
+         base genvalidity QuickCheck validity validity-vector vector
+       ];
+       testHaskellDepends = [
+         base genvalidity genvalidity-hspec hspec vector
+       ];
+       description = "GenValidity support for vector";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "geo-resolver" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, blaze-builder
      , bytestring, http-conduit, http-types, HUnit, QuickCheck
@@ -84160,6 +84480,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghc-syntax-highlighter_0_0_3_0" = callPackage
+    ({ mkDerivation, base, ghc, hspec, hspec-discover, text }:
+     mkDerivation {
+       pname = "ghc-syntax-highlighter";
+       version = "0.0.3.0";
+       sha256 = "077cvrx25qdl04qgp3wl7c3jxrakw1k873dwgybfwkhgfj2g8dx1";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [ base ghc text ];
+       testHaskellDepends = [ base hspec text ];
+       testToolDepends = [ hspec-discover ];
+       description = "Syntax highlighter for Haskell using lexer of GHC itself";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-tcplugins-extra" = callPackage
     ({ mkDerivation, base, ghc }:
      mkDerivation {
@@ -85253,23 +85588,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk-hs";
-       version = "0.3.6.2";
-       sha256 = "04gksr27nqzx77c8kv2c94ysf1pz3nwhvnxvbz8h7cn4hzvzhb8z";
-       libraryHaskellDepends = [
-         base base-compat containers gi-gdk gi-gdkpixbuf gi-glib gi-gobject
-         gi-gtk haskell-gi-base mtl text transformers
-       ];
-       description = "A wrapper for gi-gtk, adding a few more idiomatic API parts on top";
-       license = stdenv.lib.licenses.lgpl21;
-     }) {};
-
-  "gi-gtk-hs_0_3_6_3" = callPackage
-    ({ mkDerivation, base, base-compat, containers, gi-gdk
-     , gi-gdkpixbuf, gi-glib, gi-gobject, gi-gtk, haskell-gi-base, mtl
-     , text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-gtk-hs";
        version = "0.3.6.3";
        sha256 = "0xnrssnfaz57akrkgpf1cm3d4lg3cmlh0b8yp6w9pdsbp0lld2ay";
        libraryHaskellDepends = [
@@ -85278,7 +85596,6 @@ self: {
        ];
        description = "A wrapper for gi-gtk, adding a few more idiomatic API parts on top";
        license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gi-gtkosxapplication" = callPackage
@@ -85325,27 +85642,6 @@ self: {
      }) {gtksourceview3 = pkgs.gnome3.gtksourceview;};
 
   "gi-javascriptcore" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, haskell-gi
-     , haskell-gi-base, haskell-gi-overloading, text, transformers
-     , webkitgtk
-     }:
-     mkDerivation {
-       pname = "gi-javascriptcore";
-       version = "4.0.15";
-       sha256 = "07dz5kisis93x0ywb207w8nv54bfdgsahq325dyvbfvlgkqrxsh3";
-       setupHaskellDepends = [ base Cabal haskell-gi ];
-       libraryHaskellDepends = [
-         base bytestring containers haskell-gi haskell-gi-base
-         haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ webkitgtk ];
-       doHaddock = false;
-       description = "JavaScriptCore bindings";
-       license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs.gnome3) webkitgtk;};
-
-  "gi-javascriptcore_4_0_16" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib
      , gi-gobject, haskell-gi, haskell-gi-base, haskell-gi-overloading
      , text, transformers, webkitgtk
@@ -85904,8 +86200,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "7.20181031";
-       sha256 = "02h3c77mdlr4c6l7c14ai0i2kq8c7pawvsf33my449b1srviazlm";
+       version = "7.20181105";
+       sha256 = "0jh49bfgsccrvhdgyp1xp5rj0vp9iz8kkmh1x5cmrsjajs8qdpw3";
        configureFlags = [
          "-fassistant" "-fcryptonite" "-fdbus" "-fdesktopnotify" "-fdns"
          "-ffeed" "-finotify" "-fpairing" "-fproduction" "-fquvi" "-f-s3"
@@ -86474,6 +86770,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "github-release_1_2_3" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, http-client
+     , http-client-tls, http-types, mime-types, optparse-generic, text
+     , unordered-containers, uri-templater
+     }:
+     mkDerivation {
+       pname = "github-release";
+       version = "1.2.3";
+       sha256 = "14jb82gybm2zwri05bqxsibwr29lhghcaj3n0171nbndqs0dyl0y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring http-client http-client-tls http-types
+         mime-types optparse-generic text unordered-containers uri-templater
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring http-client http-client-tls http-types
+         mime-types optparse-generic text unordered-containers uri-templater
+       ];
+       description = "Upload files to GitHub releases";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github-tools" = callPackage
     ({ mkDerivation, base, bytestring, containers, exceptions, github
      , groom, html, http-client, http-client-tls, monad-parallel
@@ -88229,6 +88549,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "godot-haskell" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring, c2hs
+     , casing, colour, containers, lens, linear, mtl, parsec, parsers
+     , stm, template-haskell, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "godot-haskell";
+       version = "0.1.0.0";
+       sha256 = "02nvs84bq4nif235iycjwkxmabvs0avwm2xilpwv8kddv95z1f8i";
+       revision = "3";
+       editedCabalFile = "0dpvraw31gpzzlsy7j7mv99jvmwhldycll1hnbw2iscb5zs2g409";
+       libraryHaskellDepends = [
+         aeson ansi-wl-pprint base bytestring casing colour containers lens
+         linear mtl parsec parsers stm template-haskell text
+         unordered-containers vector
+       ];
+       libraryToolDepends = [ c2hs ];
+       doHaddock = false;
+       description = "Haskell bindings for the Godot game engine API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gofer-prelude" = callPackage
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
@@ -89684,6 +90027,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "google-isbn" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, conduit, conduit-extra
+     , http-conduit, text
+     }:
+     mkDerivation {
+       pname = "google-isbn";
+       version = "1.0.2";
+       sha256 = "1vba9czx73b9xqr3cp5gz9r7qp458wdzzb4sqds4hzridchjf3ry";
+       libraryHaskellDepends = [
+         aeson base bytestring conduit conduit-extra http-conduit text
+       ];
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "google-mail-filters" = callPackage
     ({ mkDerivation, base, containers, google-search, text, time
      , xml-conduit
@@ -89707,8 +90064,8 @@ self: {
      }:
      mkDerivation {
        pname = "google-maps-geocoding";
-       version = "0.4.0.1";
-       sha256 = "1icya5sh7psr2m12wdx6a5dq9897lp92gq1skxp6s55sksqvglw8";
+       version = "0.4.0.2";
+       sha256 = "0q5zack0lcmn8wsksdlmd0vch1lizia9h4sqax7ydx09is39jzxm";
        libraryHaskellDepends = [
          aeson base google-static-maps http-client servant servant-client
          text
@@ -89834,8 +90191,8 @@ self: {
      }:
      mkDerivation {
        pname = "google-static-maps";
-       version = "0.5.0.2";
-       sha256 = "05gxk4xnxlshcais8ljzp2wbr93kfi97bjbk2rasj5s2mbvw7rvi";
+       version = "0.5.0.3";
+       sha256 = "18c4s9nvpwv34djf7m2jq5mdpyjplp1hcxrfrp5cdyglk6j0j13b";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytedump bytestring cryptonite
          double-conversion http-client JuicyPixels memory network-uri
@@ -90970,8 +91327,8 @@ self: {
     ({ mkDerivation, base, containers, json, text }:
      mkDerivation {
        pname = "graphql-w-persistent";
-       version = "0.1.0.7";
-       sha256 = "13fbx5vzg2fq9883hdf8djbc47lyia6n4sshwz3dhg5bjpni7l1x";
+       version = "0.3.0.0";
+       sha256 = "11mf250vg2yvknnvbsc7h7m5xfxfsm4mia7by735ndhxzxb65jy9";
        libraryHaskellDepends = [ base containers json text ];
        description = "Haskell GraphQL query parser-interpreter-data processor";
        license = stdenv.lib.licenses.isc;
@@ -92445,8 +92802,8 @@ self: {
      }) {gtk-mac-integration-gtk3 = null;};
 
   "gtkglext" = callPackage
-    ({ mkDerivation, base, Cabal, glib, gtk, gtk2hs-buildtools
-     , gtkglext, pango
+    ({ mkDerivation, base, Cabal, glib, gtk, gtk2, gtk2hs-buildtools
+     , gtkglext, libGLU, libICE, libSM, libXmu, libXt, pango
      }:
      mkDerivation {
        pname = "gtkglext";
@@ -92455,12 +92812,16 @@ self: {
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal gtk2hs-buildtools ];
        libraryHaskellDepends = [ base glib gtk pango ];
+       librarySystemDepends = [ gtk2 libGLU libICE libSM libXmu libXt ];
        libraryPkgconfigDepends = [ gtkglext ];
        libraryToolDepends = [ gtk2hs-buildtools ];
        description = "Binding to the GTK+ OpenGL Extension";
        license = stdenv.lib.licenses.lgpl21;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs.gnome2) gtkglext;};
+     }) {inherit (pkgs) gtk2; inherit (pkgs.gnome2) gtkglext; 
+         inherit (pkgs) libGLU; inherit (pkgs.xorg) libICE; 
+         inherit (pkgs.xorg) libSM; inherit (pkgs.xorg) libXmu; 
+         inherit (pkgs.xorg) libXt;};
 
   "gtkimageview" = callPackage
     ({ mkDerivation, array, base, containers, glib, gtk
@@ -97998,6 +98359,7 @@ self: {
        testHaskellDepends = [ base eigen vector ];
        description = "Some utility functions for haskell-eigen library";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haskell-exp-parser" = callPackage
@@ -98508,8 +98870,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-names";
-       version = "0.9.3";
-       sha256 = "1gr5sxjjkf7faiyc4y1sbiv06c5fiz7w5s8sxz7hh5k54w8nhs4c";
+       version = "0.9.4";
+       sha256 = "0dbf5rxysm57jn018wd3dfz3m621n0347mbpgv7q2yb77cwrlg8y";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring containers data-lens-light filepath
@@ -100187,8 +100549,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-core";
-       version = "0.8.1";
-       sha256 = "0wlsxxrb4a7dn19412gxkwlayrjzpawkpxxy7mww279i159zl7k8";
+       version = "0.8.2";
+       sha256 = "1scd87ivzmrf8ar44wkijcgpr40c996dvq5rx1py2bxw0zdd1ibq";
        libraryHaskellDepends = [
          aeson array base base16-bytestring bytestring cereal conduit
          containers cryptonite entropy hashable memory mtl murmur3 network
@@ -100309,8 +100671,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "0.6.0";
-       sha256 = "1qzxx1rbwv792f96wcsqmbsshd6qf34fqj6byi17la51s900zr09";
+       version = "0.6.1";
+       sha256 = "0jgsf4f3qyq60dbyyni0d1cdphabf8ix4l0y1iiql5ii2fy50dw2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -100600,6 +100962,7 @@ self: {
        doHaddock = false;
        description = "Torch for tensors and neural networks in Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hasktorch-codegen" = callPackage
@@ -100611,6 +100974,8 @@ self: {
        pname = "hasktorch-codegen";
        version = "0.0.1.1";
        sha256 = "0yygx1w7i9mnyxrqzz94vrni5y7rkn92yycax7rqg2r5cds2xb6g";
+       revision = "1";
+       editedCabalFile = "07y9iwmxyvixbvy3mmyxrk95kh8nycazqzv5449pfx2rvry6m6ph";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -100636,6 +101001,8 @@ self: {
        pname = "hasktorch-ffi-tests";
        version = "0.0.1.0";
        sha256 = "0850v3wqf0x5hkk5py7k1glh591p59fs1y1kn2jf2giqmy05qzlc";
+       revision = "1";
+       editedCabalFile = "0jpymss55rj2kmfnp3gv5idlvsg0ckh7pfsm5rmfq9hvisivbv9q";
        libraryHaskellDepends = [
          base hasktorch-types-th hspec QuickCheck text
        ];
@@ -100659,6 +101026,7 @@ self: {
        ];
        description = "Bindings to Torch";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {ATen = null;};
 
   "hasktorch-ffi-thc" = callPackage
@@ -100681,6 +101049,7 @@ self: {
        ];
        description = "Bindings to Cutorch";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {ATen = null;};
 
   "hasktorch-indef" = callPackage
@@ -100709,6 +101078,7 @@ self: {
        doHaddock = false;
        description = "Core Hasktorch abstractions wrapping FFI bindings";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hasktorch-signatures" = callPackage
@@ -100734,6 +101104,7 @@ self: {
        doHaddock = false;
        description = "Backpack signatures for Tensor operations";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hasktorch-signatures-partial" = callPackage
@@ -100749,6 +101120,7 @@ self: {
        ];
        description = "Functions to partially satisfy tensor signatures";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hasktorch-signatures-support" = callPackage
@@ -100765,6 +101137,7 @@ self: {
        doHaddock = false;
        description = "Signatures for support tensors in hasktorch";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hasktorch-signatures-types" = callPackage
@@ -100773,6 +101146,8 @@ self: {
        pname = "hasktorch-signatures-types";
        version = "0.0.1.0";
        sha256 = "0zaa0ihgbsiwqla46dixmxki75miy5dz91agvvd147rmr2khx1j2";
+       revision = "1";
+       editedCabalFile = "0da2sv2cahv05cymh4285s35y4b6snrab62zaibnnqbd0nk55qka";
        libraryHaskellDepends = [ base deepseq ];
        doHaddock = false;
        description = "Core types for Hasktorch backpack signatures";
@@ -100785,6 +101160,8 @@ self: {
        pname = "hasktorch-types-th";
        version = "0.0.1.0";
        sha256 = "0irlf1lvadnr3j3zjakvkvrwdw8gpg5smk69w9l54idwsi6yvhdd";
+       revision = "1";
+       editedCabalFile = "0zgz7l8nawpjrc4p43xxfh9brl0mpszdxgahsn9977q5z08h4wnd";
        libraryHaskellDepends = [ base inline-c ];
        libraryToolDepends = [ c2hs ];
        description = "C-types for Torch";
@@ -100803,6 +101180,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hasktorch-zoo" = callPackage
+    ({ mkDerivation, backprop, base, deepseq, dimensions, directory
+     , filepath, generic-lens, ghc-typelits-natnormalise, hashable
+     , hasktorch, JuicyPixels, microlens, mtl, mwc-random, primitive
+     , safe-exceptions, singletons, transformers, vector
+     }:
+     mkDerivation {
+       pname = "hasktorch-zoo";
+       version = "0.0.1.0";
+       sha256 = "1cpk2q1m68y7wljaki1d4a4y45hqh34ia8r6zfw0b62f9b6zihjm";
+       libraryHaskellDepends = [
+         backprop base deepseq dimensions directory filepath generic-lens
+         ghc-typelits-natnormalise hashable hasktorch JuicyPixels microlens
+         mtl mwc-random primitive safe-exceptions singletons transformers
+         vector
+       ];
+       description = "Neural architectures in hasktorch";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskus-binary" = callPackage
     ({ mkDerivation, base, bytestring, cereal, criterion, haskus-utils
      , mtl, QuickCheck, tasty, tasty-quickcheck
@@ -100873,6 +101271,8 @@ self: {
        pname = "haskus-utils-data";
        version = "1.1";
        sha256 = "1001apph6i956rkb6dpfhg8cgk870s44jgaaiv8ccxivkv45y7di";
+       revision = "2";
+       editedCabalFile = "0ahwmqlbpvgsd6c5rzq97q00ygsw69k4hvs46f5v20100cdj3496";
        libraryHaskellDepends = [
          base containers extra haskus-utils-types mtl recursion-schemes
          transformers
@@ -100885,8 +101285,10 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "haskus-utils-types";
-       version = "1.1";
-       sha256 = "1fihf61z5078l73a08fvm5qb67dr3yc32nhgakkldd0fbh7clyrz";
+       version = "1.2";
+       sha256 = "0q7i2z1l55x9pgf9bd5xng0bdx4v74356gayhdxws1gfmghgf7f0";
+       revision = "1";
+       editedCabalFile = "07r524gxdr3alwyns96rv2rmha96s89l2216hzrbvw6c6pqg401a";
        libraryHaskellDepends = [ base ];
        description = "Haskus utility modules";
        license = stdenv.lib.licenses.bsd3;
@@ -100898,8 +101300,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskus-utils-variant";
-       version = "2.0.1";
-       sha256 = "1rg4m1iq2fnnjxd6vbxsqnv21h8rnqisvxxfhns7hc167aydfwwp";
+       version = "2.2";
+       sha256 = "1h3rpk04dkqppfbw7pilc4sw0pkdxxr70zggsfn63ay4zqk6s5r7";
        libraryHaskellDepends = [
          base haskus-utils-data haskus-utils-types template-haskell
        ];
@@ -101643,6 +102045,7 @@ self: {
        ];
        description = "A truth table generator for classical propositional logic";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haven" = callPackage
@@ -103973,6 +104376,7 @@ self: {
        ];
        description = "A command-line manager for delicious kitchen recipes";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hero-club-five-tenets" = callPackage
@@ -104653,6 +105057,7 @@ self: {
        ];
        description = "Heyting and Boolean algebras";
        license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hfann" = callPackage
@@ -104956,33 +105361,31 @@ self: {
   "hgeometry" = callPackage
     ({ mkDerivation, aeson, approximate-equality, array, base
      , bifunctors, bytestring, colour, containers, contravariant
-     , criterion, data-clist, deepseq, deepseq-generics, dlist, doctest
-     , fingertree, fixed-vector, hexpat, hspec, hspec-discover, lens
-     , linear, mtl, optparse-applicative, parsec, QuickCheck
-     , quickcheck-instances, random, reflection, semigroupoids
-     , semigroups, singletons, template-haskell, text, vector, vinyl
-     , yaml
+     , criterion, data-clist, deepseq, deepseq-generics, directory
+     , dlist, doctest, filepath, fingertree, fixed-vector, hexpat, hspec
+     , hspec-discover, lens, linear, mtl, optparse-applicative, parsec
+     , profunctors, QuickCheck, quickcheck-instances, random, reflection
+     , semigroupoids, semigroups, singletons, template-haskell, text
+     , vector, vinyl, yaml
      }:
      mkDerivation {
        pname = "hgeometry";
-       version = "0.7.0.0";
-       sha256 = "0c91n42l6pqkdw46snhplvzm8f05x0x5g3b7mgx13ndskcf9vmyz";
-       revision = "1";
-       editedCabalFile = "1wjwpfiic3jbhg77qm2nzgvybnpk0h3wwpywkpfxz8sv1yhb8pa2";
+       version = "0.8.0.0";
+       sha256 = "0hypd5936kssw435lcvqj9d7whdzfdfbhvi5hhbi90k5x89xfx6f";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bifunctors bytestring colour containers contravariant
          data-clist deepseq dlist fingertree fixed-vector hexpat lens linear
-         mtl parsec QuickCheck quickcheck-instances random reflection
-         semigroupoids semigroups singletons template-haskell text vector
-         vinyl yaml
+         mtl parsec profunctors QuickCheck quickcheck-instances random
+         reflection semigroupoids semigroups singletons template-haskell
+         text vector vinyl yaml
        ];
        testHaskellDepends = [
          approximate-equality array base bytestring colour containers
-         data-clist doctest hspec lens linear QuickCheck
-         quickcheck-instances random semigroups singletons vector vinyl
+         data-clist directory doctest filepath hspec lens linear QuickCheck
+         quickcheck-instances random semigroups singletons vector vinyl yaml
        ];
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
@@ -106091,20 +106494,20 @@ self: {
 
   "hinterface" = callPackage
     ({ mkDerivation, array, async, base, binary, bytestring, containers
-     , cryptonite, exceptions, hspec, lifted-async, lifted-base, memory
-     , monad-control, monad-logger, mtl, network, QuickCheck, random
-     , resourcet, safe-exceptions, stm, text, transformers
+     , cryptonite, deepseq, exceptions, hspec, lifted-async, lifted-base
+     , memory, monad-control, monad-logger, mtl, network, QuickCheck
+     , random, resourcet, safe-exceptions, stm, text, transformers
      , transformers-base, vector
      }:
      mkDerivation {
        pname = "hinterface";
-       version = "0.5.0.2";
-       sha256 = "1ib8wnpkd8ng6w0wb8hhn1122rqdq4q961b10rvw4jl6bfzkwasb";
+       version = "0.7.0";
+       sha256 = "1n4w8mwx09i8f1h96p7nqls7r22xscy4z9fviwgivp0y59qfbdsx";
        libraryHaskellDepends = [
-         array async base binary bytestring containers cryptonite exceptions
-         lifted-async lifted-base memory monad-control monad-logger mtl
-         network QuickCheck random resourcet safe-exceptions stm text
-         transformers transformers-base vector
+         array async base binary bytestring containers cryptonite deepseq
+         exceptions lifted-async lifted-base memory monad-control
+         monad-logger mtl network QuickCheck random resourcet
+         safe-exceptions stm text transformers transformers-base vector
        ];
        testHaskellDepends = [
          async base binary bytestring hspec monad-logger QuickCheck
@@ -106787,6 +107190,8 @@ self: {
        pname = "hledger";
        version = "1.11.1";
        sha256 = "0cy60ysmydg0ahx6gjmjm97skvjp5a3vgqxsn2l1dp7hk34ac5p9";
+       revision = "1";
+       editedCabalFile = "1g8jfjsfddpiifgv39gi985lsz8fsysf6qni34b0kb44wpd67pfn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -107229,8 +107634,8 @@ self: {
      }:
      mkDerivation {
        pname = "hlrdb-core";
-       version = "0.1.2.0";
-       sha256 = "1j3ds4kkr1ns7y46b3s29bhi63n31ggvcq4mlyp2xafw2z4nbyl3";
+       version = "0.1.2.2";
+       sha256 = "0qh4p354xzmcd6d6imv9qyflxj9g80rmbdyhf9bscjrqam0dy24b";
        libraryHaskellDepends = [
          base bytestring hashable hedis lens mtl profunctors random time
          unordered-containers
@@ -107513,17 +107918,17 @@ self: {
      }) {};
 
   "hmatrix-quadprogpp" = callPackage
-    ({ mkDerivation, base, hmatrix, quadprog, vector }:
+    ({ mkDerivation, base, hmatrix, QuadProgpp, vector }:
      mkDerivation {
        pname = "hmatrix-quadprogpp";
        version = "0.4.0.0";
        sha256 = "0bvgph7x5niryn4f1ah6726np2nv8xnrvqn3hbiw8f5m7314iv5l";
        libraryHaskellDepends = [ base hmatrix vector ];
-       librarySystemDepends = [ quadprog ];
+       librarySystemDepends = [ QuadProgpp ];
        description = "Bindings to the QuadProg++ quadratic programming library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {quadprog = null;};
+     }) {inherit (pkgs) QuadProgpp;};
 
   "hmatrix-repa" = callPackage
     ({ mkDerivation, base, hmatrix, repa, vector }:
@@ -109113,17 +109518,14 @@ self: {
      }) {};
 
   "hopenssl" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, cabal-doctest, doctest
-     , HUnit, openssl
-     }:
+    ({ mkDerivation, base, bytestring, HUnit, openssl }:
      mkDerivation {
        pname = "hopenssl";
-       version = "2.2.1";
-       sha256 = "1pxbs1k8sizvvz1nn1zv2i5grn0w11s9g09z07w5f80kbz0slcbh";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       version = "2.2.2";
+       sha256 = "0k589mi4sny88jaqxcqd0jgy6kmbzslxk6y1bk8xkvq73nvjxnjl";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ openssl ];
-       testHaskellDepends = [ base doctest HUnit ];
+       testHaskellDepends = [ base HUnit ];
        description = "FFI Bindings to OpenSSL's EVP Digest Interface";
        license = stdenv.lib.licenses.bsd3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
@@ -109715,7 +110117,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hpack_0_31_0" = callPackage
+  "hpack_0_31_1" = callPackage
     ({ mkDerivation, aeson, base, bifunctors, bytestring, Cabal
      , containers, cryptonite, deepseq, directory, filepath, Glob, hspec
      , hspec-discover, http-client, http-client-tls, http-types, HUnit
@@ -109725,8 +110127,8 @@ self: {
      }:
      mkDerivation {
        pname = "hpack";
-       version = "0.31.0";
-       sha256 = "0lh60zqjzbjq0hkdia97swz0g1r3ihj84fph9jq9936fpb7hm1n9";
+       version = "0.31.1";
+       sha256 = "0fipbmmj4x588z7vh635mizhym9krydfxr49bgaf7xir4fsb4fmc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -109788,14 +110190,14 @@ self: {
 
   "hpack-dhall" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, Cabal
-     , dhall, dhall-json, Diff, filepath, hpack, megaparsec, microlens
-     , optparse-applicative, prettyprinter, tasty, tasty-golden, text
-     , transformers, utf8-string, yaml
+     , dhall, dhall-json, Diff, directory, filepath, hpack, megaparsec
+     , microlens, optparse-applicative, prettyprinter, tasty
+     , tasty-golden, text, transformers, utf8-string, yaml
      }:
      mkDerivation {
        pname = "hpack-dhall";
-       version = "0.4.0";
-       sha256 = "04bjhfc5xqkvp58y28cifsq58l2rbc8xa7ywvzmk9hvw7acbixca";
+       version = "0.5.0";
+       sha256 = "0nqvcs9ch2knlllb0r0j0aqwab7h3yxh5iay377gyq8xc0m4l8w6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -109809,7 +110211,7 @@ self: {
        ];
        testHaskellDepends = [
          aeson aeson-pretty base bytestring Cabal dhall dhall-json Diff
-         filepath hpack megaparsec microlens prettyprinter tasty
+         directory filepath hpack megaparsec microlens prettyprinter tasty
          tasty-golden text transformers utf8-string yaml
        ];
        description = "hpack's dhalling";
@@ -111606,6 +112008,7 @@ self: {
        testHaskellDepends = [ base tasty tasty-hspec ];
        description = "A preprocessor that helps with writing Haskell bindings to C code";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hsc3" = callPackage
@@ -112163,8 +112566,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsdev";
-       version = "0.3.2.1";
-       sha256 = "01sfpd2dsqbbkxq5arb0gzllfyfcmjwcln91v02f5x1f6ksjlpzp";
+       version = "0.3.2.2";
+       sha256 = "0b4xjkj1qc6mbsp0sn7gqmhys3h39rbfam8qwvhjmgd7d1cbl69p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -112570,18 +112973,19 @@ self: {
        license = stdenv.lib.licenses.isc;
      }) {};
 
-  "hsinstall_2_1" = callPackage
+  "hsinstall_2_2" = callPackage
     ({ mkDerivation, base, Cabal, directory, filepath, heredoc, process
+     , safe-exceptions
      }:
      mkDerivation {
        pname = "hsinstall";
-       version = "2.1";
-       sha256 = "1azbzkslszq9pw4h91mp1zr6g6ad2haaf3g5146naf1f456z9zjg";
+       version = "2.2";
+       sha256 = "14c98wysvsq4k581s3f5zw44grm6f0wvbmgdda8sshhg7v2059r3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
        executableHaskellDepends = [
-         base Cabal directory filepath heredoc process
+         base Cabal directory filepath heredoc process safe-exceptions
        ];
        description = "Install Haskell software";
        license = stdenv.lib.licenses.isc;
@@ -113236,14 +113640,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec_2_5_8" = callPackage
+  "hspec_2_6_0" = callPackage
     ({ mkDerivation, base, hspec-core, hspec-discover
      , hspec-expectations, QuickCheck
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.5.8";
-       sha256 = "061k4r1jlzcnl0mzvk5nvamw1bx36rs2a38958m2hlh2mmfnfnsr";
+       version = "2.6.0";
+       sha256 = "0qwla0bff2q52v27rxjgcp8g3yw0r2iyggp8ggmmabxkk983db6i";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -113294,6 +113698,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec-contrib_0_5_1" = callPackage
+    ({ mkDerivation, base, hspec, hspec-core, HUnit, QuickCheck }:
+     mkDerivation {
+       pname = "hspec-contrib";
+       version = "0.5.1";
+       sha256 = "0hhzxaa3fxz5mk5qcsrnfr98a7bn3szx2ydgr0x9mbqmm1jg06rc";
+       revision = "1";
+       editedCabalFile = "0vjmyrsb878914b4khwdy3fcn9n217q8k5xnszlrp7dl1jnbqyi4";
+       libraryHaskellDepends = [ base hspec-core HUnit ];
+       testHaskellDepends = [ base hspec hspec-core HUnit QuickCheck ];
+       description = "Contributed functionality for Hspec";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hspec-core_2_4_8" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, deepseq
      , directory, filepath, hspec-expectations, hspec-meta, HUnit
@@ -113351,7 +113770,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-core_2_5_8" = callPackage
+  "hspec-core_2_6_0" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
      , deepseq, directory, filepath, hspec-expectations, hspec-meta
      , HUnit, process, QuickCheck, quickcheck-io, random, setenv
@@ -113359,8 +113778,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.5.8";
-       sha256 = "08y6rhzc2vwmrxzl3bc8iwklkhgzv7x90mf9fnjnddlyaj7wcjg5";
+       version = "2.6.0";
+       sha256 = "0f3fb6cgfp0yywxi9ii2vzmkrj669nprphcs1piad7bacsk12y6r";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -113435,13 +113854,13 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-discover_2_5_8" = callPackage
+  "hspec-discover_2_6_0" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.5.8";
-       sha256 = "001i0ldxi88qcww2hh3mkdr6svw4kj23lf65camk9bgn5zwvq5aj";
+       version = "2.6.0";
+       sha256 = "17q5g5z7pylw8ghx1jbwk5qrafcg2cblpckvkwla1y3dzry43nc2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -116461,36 +116880,6 @@ self: {
 
   "http2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, base, bytestring
-     , bytestring-builder, case-insensitive, containers, criterion
-     , directory, doctest, filepath, Glob, hashtables, heaps, hex, hspec
-     , mwc-random, psqueues, stm, text, unordered-containers, vector
-     , word8
-     }:
-     mkDerivation {
-       pname = "http2";
-       version = "1.6.3";
-       sha256 = "0hww0rfsv6lqx62qzycbcqy5q6rh9k09qkyjkdm5m1sp1z50wqk1";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         array base bytestring bytestring-builder case-insensitive
-         containers psqueues stm
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty array base bytestring bytestring-builder
-         case-insensitive containers directory doctest filepath Glob hex
-         hspec psqueues stm text unordered-containers vector word8
-       ];
-       benchmarkHaskellDepends = [
-         array base bytestring case-insensitive containers criterion
-         hashtables heaps mwc-random psqueues stm
-       ];
-       description = "HTTP/2 library including frames, priority queues and HPACK";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "http2_1_6_4" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, array, base, bytestring
      , case-insensitive, containers, criterion, directory, doctest
      , filepath, Glob, heaps, hex, hspec, mwc-random, network-byte-order
      , psqueues, stm, text, unordered-containers, vector, word8
@@ -116517,7 +116906,6 @@ self: {
        ];
        description = "HTTP/2 library including frames, priority queues and HPACK";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "http2-client" = callPackage
@@ -117811,8 +118199,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-prim";
-       version = "0.6.2.17";
-       sha256 = "184ymryvfj3s6bc3igahfyd8k9cqf59vmpb9g3afh8xpicpmmiv6";
+       version = "0.6.2.18";
+       sha256 = "1sm6rji0vv3ddi4sjp1q8nz271a084xpnv86n0adqzvd7b7sihip";
        libraryHaskellDepends = [
          base bytestring mmap semigroups transformers vector
        ];
@@ -117827,15 +118215,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-prim_0_6_2_18" = callPackage
+  "hw-prim_0_6_2_19" = callPackage
     ({ mkDerivation, base, bytestring, criterion, directory, exceptions
      , hedgehog, hspec, hw-hspec-hedgehog, mmap, QuickCheck, semigroups
      , transformers, vector
      }:
      mkDerivation {
        pname = "hw-prim";
-       version = "0.6.2.18";
-       sha256 = "1sm6rji0vv3ddi4sjp1q8nz271a084xpnv86n0adqzvd7b7sihip";
+       version = "0.6.2.19";
+       sha256 = "06d124i6y1kai14yfpwbys3fvpqxf7wrvyhhlihqdvpqfksll1dv";
        libraryHaskellDepends = [
          base bytestring mmap semigroups transformers vector
        ];
@@ -117999,8 +118387,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-streams";
-       version = "0.0.0.5";
-       sha256 = "0qhpkgxip9bnx6bcg1cnz9gbnwifkp9vinvp89152h720rsawh4i";
+       version = "0.0.0.8";
+       sha256 = "08pj20r1is6kyinj60xrl0wz7kcjlcc5xivzrhwmjws5qbscimgw";
        libraryHaskellDepends = [
          base bytestring ghc-prim hw-bits hw-prim mmap primitive semigroups
          transformers vector
@@ -124962,8 +125350,8 @@ self: {
     ({ mkDerivation, alex, array, base, happy, pretty }:
      mkDerivation {
        pname = "java-adt";
-       version = "0.2016.11.28";
-       sha256 = "1p4j42nzsbd2dsag2gfnngvbdn5vx9cp8lmli6x05sdywabyckc7";
+       version = "0.2018.11.4";
+       sha256 = "1pdp7yvq0gpbxw7gp61r5mkrhdiff0cvlxssxzvg770idp46j6p5";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -126123,6 +126511,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "json-feed_1_0_4" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, filepath, hspec
+     , mime-types, network-uri, tagsoup, text, time
+     }:
+     mkDerivation {
+       pname = "json-feed";
+       version = "1.0.4";
+       sha256 = "07xj9h2zdiyvrib93d99xi179nbzir96yylwkxajpfckfgyi4xmp";
+       libraryHaskellDepends = [
+         aeson base bytestring mime-types network-uri tagsoup text time
+       ];
+       testHaskellDepends = [
+         aeson base bytestring filepath hspec mime-types network-uri tagsoup
+         text time
+       ];
+       description = "JSON Feed";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "json-fu" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, containers
      , hashable, hspec, mtl, syb, text, time, unordered-containers
@@ -128627,6 +129035,7 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "Utilities to work with lists of types";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "kind-generics" = callPackage
@@ -128638,6 +129047,7 @@ self: {
        libraryHaskellDepends = [ base kind-apply ];
        description = "Generic programming in GHC style for arbitrary kinds and GADTs";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "kinds" = callPackage
@@ -129236,6 +129646,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "lackey_1_0_6" = callPackage
+    ({ mkDerivation, base, hspec, servant, servant-foreign, text }:
+     mkDerivation {
+       pname = "lackey";
+       version = "1.0.6";
+       sha256 = "1z8ipsf78l57jbkcyhjfwbgvj5gmna46x1jvcrin01rpg8xy97q4";
+       libraryHaskellDepends = [ base servant servant-foreign text ];
+       testHaskellDepends = [ base hspec servant servant-foreign text ];
+       description = "Generate Ruby clients from Servant APIs";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lacroix" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -130439,11 +130862,12 @@ self: {
      }:
      mkDerivation {
        pname = "language-elm";
-       version = "0.1.1.0";
-       sha256 = "0hg9b8cyw08gwbsdmqhadnx0clj3rvjavrd3hw597bh2iss3rafl";
+       version = "0.1.1.3";
+       sha256 = "11g8jf7pbkb6gjwxjrwnk6hx38hjfymm421qnqd41cm0w2xmxbhh";
+       enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base MissingH mtl pretty protolude ];
        libraryToolDepends = [ doctest ];
-       testHaskellDepends = [ base hspec mtl pretty protolude ];
+       testHaskellDepends = [ base doctest hspec mtl pretty protolude ];
        testToolDepends = [ doctest ];
        description = "Generate elm code";
        license = stdenv.lib.licenses.bsd3;
@@ -130946,45 +131370,44 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "language-puppet_1_4_0" = callPackage
-    ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
+  "language-puppet_1_4_1" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, async, attoparsec, base
      , base16-bytestring, bytestring, case-insensitive, containers
-     , cryptonite, directory, exceptions, filecache, filepath
-     , formatting, Glob, hashable, hruby, hslogger, hspec
-     , hspec-megaparsec, http-api-data, http-client, lens, lens-aeson
-     , megaparsec, memory, mtl, operational, optparse-applicative
-     , parallel-io, parsec, parser-combinators, pcre-utils, process
-     , protolude, random, regex-pcre-builtin, scientific, servant
-     , servant-client, split, stm, strict-base-types, temporary, text
-     , time, transformers, unix, unordered-containers, vector, yaml
+     , cryptonite, directory, filecache, filepath, formatting, Glob
+     , hashable, hruby, hslogger, hspec, hspec-megaparsec, http-api-data
+     , http-client, lens, lens-aeson, megaparsec, memory, mtl
+     , operational, optparse-applicative, parsec, parser-combinators
+     , pcre-utils, protolude, random, regex-pcre-builtin, scientific
+     , servant, servant-client, split, stm, strict-base-types, temporary
+     , text, time, transformers, unix, unordered-containers, vector
+     , yaml
      }:
      mkDerivation {
        pname = "language-puppet";
-       version = "1.4.0";
-       sha256 = "169kzd6csar170j0zqzisa82jxs5xfang17ys6aa4m1jx0nbh4mz";
+       version = "1.4.1";
+       sha256 = "1az4lalx2qb9wf0n99zjd9agy20x8369f80411mhj11rcnnl1a66";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson ansi-wl-pprint attoparsec base base16-bytestring bytestring
-         case-insensitive containers cryptonite directory exceptions
-         filecache filepath formatting hashable hruby hslogger hspec
-         http-api-data http-client lens lens-aeson megaparsec memory mtl
-         operational parsec parser-combinators pcre-utils process protolude
-         random regex-pcre-builtin scientific servant servant-client split
-         stm strict-base-types text time transformers unix
-         unordered-containers vector yaml
+         case-insensitive containers cryptonite directory filecache filepath
+         formatting hashable hruby hslogger http-api-data http-client lens
+         lens-aeson megaparsec memory mtl operational parsec
+         parser-combinators pcre-utils protolude random regex-pcre-builtin
+         scientific servant servant-client split stm strict-base-types text
+         time transformers unix unordered-containers vector yaml
        ];
        executableHaskellDepends = [
-         aeson ansi-wl-pprint base bytestring containers Glob hslogger
-         http-client lens megaparsec mtl optparse-applicative parallel-io
-         regex-pcre-builtin strict-base-types text transformers
-         unordered-containers vector yaml
+         aeson ansi-wl-pprint async base bytestring containers Glob hslogger
+         http-client lens mtl optparse-applicative regex-pcre-builtin
+         strict-base-types text transformers unordered-containers vector
+         yaml
        ];
        testHaskellDepends = [
          base Glob hslogger hspec hspec-megaparsec lens megaparsec mtl
-         pcre-utils protolude scientific strict-base-types temporary text
-         transformers unordered-containers vector
+         pcre-utils scientific strict-base-types temporary text transformers
+         unordered-containers vector
        ];
        description = "Tools to parse and evaluate the Puppet DSL";
        license = stdenv.lib.licenses.bsd3;
@@ -131723,6 +132146,8 @@ self: {
        pname = "lazy-hash";
        version = "0.1.0.0";
        sha256 = "1xa2c8gxk5l4njbs58zpq2ybdvjd4y214p71nfmfrzw0arwz49pa";
+       revision = "1";
+       editedCabalFile = "07sn3q7q29zkxpillprx2d05pybjpvpglz8s7jq07akdhwmwx9mk";
        libraryHaskellDepends = [
          base constrained-categories hashable haskell-src-meta tagged
          template-haskell vector-space
@@ -132739,6 +133164,7 @@ self: {
        libraryHaskellDepends = [ base singletons ];
        description = "Type-level lenses using singletons";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lens-utils" = callPackage
@@ -134061,6 +134487,7 @@ self: {
        ];
        description = "STM operations lifted through monad transformer stacks";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lifted-threads" = callPackage
@@ -137637,8 +138064,8 @@ self: {
        pname = "lrucaching";
        version = "0.3.3";
        sha256 = "192a2zap1bmxa2y48n48rmngf18fr8k0az4a230hziv3g795yzma";
-       revision = "4";
-       editedCabalFile = "11zfnngp3blx8c3sgy5cva1g9bp69wqz7ys23gdm905i7sjjs6a9";
+       revision = "5";
+       editedCabalFile = "0dfrgg60nd7l7pfjar1s1g380r4591y6ccv9fyh0n34ymhizk84y";
        libraryHaskellDepends = [
          base base-compat deepseq hashable psqueues vector
        ];
@@ -137758,8 +138185,8 @@ self: {
      }:
      mkDerivation {
        pname = "ltext";
-       version = "0.1.2.2";
-       sha256 = "12ql2p9zkib4m7hbfxzn8pxg0n9rgf35bhf1csrf48b6kzl9z28f";
+       version = "0.1.3";
+       sha256 = "1sd8iqcfm7qsp8rq1ckixi8lss8mwi4siqqgsybbxjg6ajs9m2x6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -137773,8 +138200,9 @@ self: {
          transformers unordered-containers
        ];
        testHaskellDepends = [
-         base QuickCheck quickcheck-combinators quickcheck-instances tasty
-         tasty-quickcheck text
+         attoparsec base directory exceptions extra mtl pretty QuickCheck
+         quickcheck-combinators quickcheck-instances tasty tasty-quickcheck
+         text transformers unordered-containers
        ];
        description = "Parameterized file evaluator";
        license = stdenv.lib.licenses.bsd3;
@@ -140741,8 +141169,8 @@ self: {
      }:
      mkDerivation {
        pname = "matterhorn";
-       version = "40901.0.0";
-       sha256 = "1ra1ikivf5y17mzwjvfsvg1kz4438wllv2qwxzaigb9cirrz0n4r";
+       version = "50200.0.0";
+       sha256 = "07zbkkbn5cn8rcbc0xznlldcflhfp4szx6phlh7xpgf2hrcyc3g6";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -140778,8 +141206,8 @@ self: {
      }:
      mkDerivation {
        pname = "mattermost-api";
-       version = "40900.1.0";
-       sha256 = "1ngpinpal50s8bizwvnpafx6zh8zqb7m0yc21lcp7ybh4yhwikad";
+       version = "50200.0.0";
+       sha256 = "09jpgkz2hcybrrpkdn2x5lf2wnjzlinzxxsfrqvh7hgkga4gb7q8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -140803,8 +141231,8 @@ self: {
      }:
      mkDerivation {
        pname = "mattermost-api-qc";
-       version = "40900.1.0";
-       sha256 = "0mdwi6130hz508bxbhriyg7fr6rqpbalmjwwizvj9nb7cz1dmrsl";
+       version = "50200.0.0";
+       sha256 = "12m7r98qpd2i5d5dv60ibd0v1pxwfnx58v77k8y55dyd1d0m96v0";
        libraryHaskellDepends = [
          base containers mattermost-api QuickCheck text time
        ];
@@ -141088,17 +141516,15 @@ self: {
      }:
      mkDerivation {
        pname = "mcm";
-       version = "0.6.5.0";
-       sha256 = "1vf54aziyybxyc9bwnn57pfcjmgli2hjjd2kzij8vy2g64ipip9m";
-       revision = "2";
-       editedCabalFile = "0xgnh356qwc1zdailqr3m6hbv7q5gc36ycqfz31z6l5kphmbblsc";
+       version = "0.6.8.1";
+       sha256 = "1nn6s15c6wwi7b0afzqfczdmc0ivrc8ncychmjym93lw967vjm67";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base blaze-html bytestring containers directory filepath hostname
          MissingH polyparse process text unix
        ];
-       description = "Manages the contents of files and directories";
+       description = "Machine Configuration Manager";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -141576,7 +142002,7 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
-  "megaparsec_7_0_3" = callPackage
+  "megaparsec_7_0_4" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , criterion, deepseq, hspec, hspec-expectations, mtl
      , parser-combinators, QuickCheck, scientific, text, transformers
@@ -141584,8 +142010,8 @@ self: {
      }:
      mkDerivation {
        pname = "megaparsec";
-       version = "7.0.3";
-       sha256 = "1zngs6x7d1yp192pg8b0j5banq4y1vr1fwh1mxrxx0834bmqrll0";
+       version = "7.0.4";
+       sha256 = "1hg83m85f4v78mqdkznd1ddk9y32hnrv0bgva7ir3vydx37aanrj";
        libraryHaskellDepends = [
          base bytestring case-insensitive containers deepseq mtl
          parser-combinators scientific text transformers
@@ -141996,8 +142422,8 @@ self: {
      }:
      mkDerivation {
        pname = "menoh";
-       version = "0.2.0";
-       sha256 = "0n6wl03d8gyvmdjmxz0hrbvwvbyzc4qyz7qr5ydgxyxj56pg2cb4";
+       version = "0.3.0";
+       sha256 = "0w2p2g5zk4n3k84yrk7hs7kgk82w6avd2i0zk6iczjhhkihh1c6m";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -142009,7 +142435,8 @@ self: {
          base filepath JuicyPixels optparse-applicative vector
        ];
        testHaskellDepends = [
-         async base filepath JuicyPixels tasty tasty-hunit tasty-th vector
+         async base bytestring filepath JuicyPixels tasty tasty-hunit
+         tasty-th vector
        ];
        description = "Haskell binding for Menoh DNN inference library";
        license = stdenv.lib.licenses.mit;
@@ -142306,6 +142733,7 @@ self: {
        ];
        description = "Australian METAR";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "metar-http" = callPackage
@@ -142330,6 +142758,7 @@ self: {
        ];
        description = "HTTP for METAR";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "metric" = callPackage
@@ -142634,6 +143063,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "microlens_0_4_10" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "microlens";
+       version = "0.4.10";
+       sha256 = "1v277yyy4p9q57xr2lfp6qs24agglfczmcabrapxrzci3jfshmcw";
+       libraryHaskellDepends = [ base ];
+       description = "A tiny lens library with no dependencies. If you're writing an app, you probably want microlens-platform, not this.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "microlens-aeson" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, criterion
      , deepseq, hashable, lens, lens-aeson, microlens, scientific, tasty
@@ -142699,6 +143140,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "microlens-ghc_0_4_10" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, microlens
+     , transformers
+     }:
+     mkDerivation {
+       pname = "microlens-ghc";
+       version = "0.4.10";
+       sha256 = "102dbrdsdadxbbhvx8avv1wbk84767a7lkb8ckp3zxk9g7qlly33";
+       libraryHaskellDepends = [
+         array base bytestring containers microlens transformers
+       ];
+       description = "microlens + array, bytestring, containers, transformers";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "microlens-mtl" = callPackage
     ({ mkDerivation, base, microlens, mtl, transformers
      , transformers-compat
@@ -142730,6 +143187,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "microlens-platform_0_3_11" = callPackage
+    ({ mkDerivation, base, hashable, microlens, microlens-ghc
+     , microlens-mtl, microlens-th, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "microlens-platform";
+       version = "0.3.11";
+       sha256 = "18950lxgmsg5ksvyyi3zs1smjmb1qf1q73a3p3g44bh21miz0xwb";
+       libraryHaskellDepends = [
+         base hashable microlens microlens-ghc microlens-mtl microlens-th
+         text unordered-containers vector
+       ];
+       description = "Feature-complete microlens";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "microlens-th" = callPackage
     ({ mkDerivation, base, containers, microlens, template-haskell
      , th-abstraction, transformers
@@ -144210,6 +144684,8 @@ self: {
        pname = "modern-uri";
        version = "0.3.0.1";
        sha256 = "01a5jnv8kbl2c9ka9dgqm4a8b7n6frmg7yi8f417qcnwgn1lbs78";
+       revision = "1";
+       editedCabalFile = "13q0lapxk1v3ci3bqv21942jf2fw87frbbam53apd3i2iv69bqyr";
        libraryHaskellDepends = [
          base bytestring containers contravariant deepseq exceptions
          megaparsec mtl profunctors QuickCheck reflection tagged
@@ -144272,6 +144748,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "modular" = callPackage
+    ({ mkDerivation, base, ghc-typelits-knownnat }:
+     mkDerivation {
+       pname = "modular";
+       version = "0.1.0.8";
+       sha256 = "1igg7am4z1kfvpyp5a53rsqan5i209rp1s0z9xamqydx60ilc2s3";
+       libraryHaskellDepends = [ base ghc-typelits-knownnat ];
+       description = "Type-safe modular arithmetic";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "modular-arithmetic" = callPackage
     ({ mkDerivation, base, doctest, Glob }:
      mkDerivation {
@@ -146275,6 +146762,7 @@ self: {
        ];
        description = "Well-typed paths";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "montage" = callPackage
@@ -146833,16 +147321,18 @@ self: {
      }) {inherit (pkgs) mpg123;};
 
   "mpi-hs" = callPackage
-    ({ mkDerivation, base, bytestring, c2hs, criterion, monad-loops
-     , openmpi, store
+    ({ mkDerivation, base, binary, bytestring, c2hs, criterion
+     , monad-loops, openmpi, packman, store
      }:
      mkDerivation {
        pname = "mpi-hs";
-       version = "0.3.1.0";
-       sha256 = "1ka212z51ga82fwjj6jz6aiidn4fyvf0b5p9xma67fnv9a7cs4v2";
+       version = "0.4.1.0";
+       sha256 = "0bf0ghzvakww5slvfd3fq0sa0972i6y60lg6ibby49nslfkl52wd";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base bytestring monad-loops store ];
+       libraryHaskellDepends = [
+         base binary bytestring monad-loops packman store
+       ];
        librarySystemDepends = [ openmpi ];
        libraryToolDepends = [ c2hs ];
        executableHaskellDepends = [ base ];
@@ -146850,6 +147340,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "MPI bindings for Haskell";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) openmpi;};
 
   "mpppc" = callPackage
@@ -147700,33 +148191,37 @@ self: {
      }:
      mkDerivation {
        pname = "multilinear";
-       version = "0.2.2.1";
-       sha256 = "0clqjf37gsgkc2lghrvdqjpzxxx1ly4zymkcflaph5x3klqlv4xy";
+       version = "0.2.3.0";
+       sha256 = "0kx9a7iysihkaapgz8hwa5sn0c1z69yiagxmw0n5i1bjmslzssvb";
        libraryHaskellDepends = [
          base containers deepseq mwc-random primitive statistics vector
        ];
-       testHaskellDepends = [ base criterion deepseq ];
-       benchmarkHaskellDepends = [ base criterion deepseq ];
+       testHaskellDepends = [ base criterion ];
+       benchmarkHaskellDepends = [ base criterion ];
        description = "Comprehensive and efficient (multi)linear algebra implementation";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "multilinear-io" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, cereal, cereal-vector
-     , criterion, csv-enumerator, deepseq, either, multilinear
-     , transformers, vector, zlib
+    ({ mkDerivation, aeson, base, bytestring, cassava, cereal
+     , cereal-vector, conduit, criterion, deepseq, directory, either
+     , multilinear, transformers, vector, zlib
      }:
      mkDerivation {
        pname = "multilinear-io";
-       version = "0.2.1.2";
-       sha256 = "12kydrh8rzvwlgd634x6swd1yv9pyxa23yh2yxj86mnisb467llj";
+       version = "0.2.3";
+       sha256 = "1ymlx7pg0w33a703mqdr4rd93f828xp6ygs4az1y9j0miwax9y97";
+       revision = "1";
+       editedCabalFile = "0xpf219r7n7hqh7b37mr9scy965mxfh9j871ayaab1mb0s7rglw9";
        libraryHaskellDepends = [
-         aeson base bytestring cereal cereal-vector csv-enumerator either
+         aeson base bytestring cassava cereal cereal-vector conduit either
          multilinear transformers vector zlib
        ];
-       testHaskellDepends = [ base either multilinear transformers ];
+       testHaskellDepends = [
+         base directory either multilinear transformers
+       ];
        benchmarkHaskellDepends = [
-         base criterion deepseq either multilinear transformers
+         base criterion deepseq directory either multilinear transformers
        ];
        description = "Input/output capability for multilinear package";
        license = stdenv.lib.licenses.bsd3;
@@ -152048,14 +152543,13 @@ self: {
      }:
      mkDerivation {
        pname = "newsynth";
-       version = "0.3.0.3";
-       sha256 = "1vbh9d17mibzjkakqwda2dcmqkamaq48zv0dcd104xmgkgmqzvw2";
+       version = "0.3.0.4";
+       sha256 = "0w31h7xqv9sk0jb1mdviv107w8y7v018bzdvdw8gcrjyvp47307q";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [
-         base containers fixedprec random superdoc
-       ];
-       executableHaskellDepends = [ base random superdoc time ];
+       setupHaskellDepends = [ base superdoc ];
+       libraryHaskellDepends = [ base containers fixedprec random ];
+       executableHaskellDepends = [ base random time ];
        description = "Exact and approximate synthesis of quantum circuits";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -152486,18 +152980,18 @@ self: {
      }) {};
 
   "nix-delegate" = callPackage
-    ({ mkDerivation, base, foldl, managed, neat-interpolation
-     , optparse-applicative, text, turtle
+    ({ mkDerivation, base, bytestring, foldl, managed
+     , neat-interpolation, optparse-applicative, text, turtle
      }:
      mkDerivation {
        pname = "nix-delegate";
-       version = "1.0.0";
-       sha256 = "1fzk6a2izs8sf2gq93m91m6l7h8i3374as8979h106588ww2ghhb";
+       version = "1.0.1";
+       sha256 = "00wyzj4xck0kjn3151q9crsycgh26nvg56567c0ifdr0s5h5f00w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base foldl managed neat-interpolation optparse-applicative text
-         turtle
+         base bytestring foldl managed neat-interpolation
+         optparse-applicative text turtle
        ];
        executableHaskellDepends = [ base ];
        description = "Convenient utility for distributed Nix builds";
@@ -152530,8 +153024,8 @@ self: {
      }:
      mkDerivation {
        pname = "nix-derivation";
-       version = "1.0.1";
-       sha256 = "1z36ihzcnll6vpvv8hr95j9vx0j69v7nir6bxgd6wmidpzigkdmc";
+       version = "1.0.2";
+       sha256 = "16xx4817ncgqvhmydbfr35lhgiw34js2n5liyfing3qvbfprmscw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -152548,18 +153042,18 @@ self: {
 
   "nix-diff" = callPackage
     ({ mkDerivation, attoparsec, base, containers, Diff, mtl
-     , nix-derivation, optparse-generic, system-filepath, text, unix
+     , nix-derivation, optparse-applicative, system-filepath, text, unix
      , vector
      }:
      mkDerivation {
        pname = "nix-diff";
-       version = "1.0.4";
-       sha256 = "1ggsqm8bcfvx3l2nji90gwllkq2v832wihf8msfi9br4mqwx234j";
+       version = "1.0.5";
+       sha256 = "1gs19y4k4aykm3hzpkygdx5wqblcnqxbh3jq3hl18sm8h4cf9871";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         attoparsec base containers Diff mtl nix-derivation optparse-generic
-         system-filepath text unix vector
+         attoparsec base containers Diff mtl nix-derivation
+         optparse-applicative system-filepath text unix vector
        ];
        description = "Explain why two Nix derivations differ";
        license = stdenv.lib.licenses.bsd3;
@@ -154338,6 +154832,31 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "oauth2-jwt-bearer" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, cryptonite
+     , hedgehog, http-client, http-client-tls, http-types, jose, lens
+     , mmorph, network, Spock-core, streaming-commons, text, time
+     , transformers, transformers-bifunctors, unordered-containers, warp
+     , x509, x509-store
+     }:
+     mkDerivation {
+       pname = "oauth2-jwt-bearer";
+       version = "0.0.1";
+       sha256 = "0fcq0ggzhjpr8v2s0k6izjs1pp0lcbf7kb12vmclyy5bzby8vkcn";
+       libraryHaskellDepends = [
+         aeson base bytestring http-client http-client-tls http-types jose
+         lens text time transformers transformers-bifunctors
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring cryptonite hedgehog http-client
+         http-client-tls http-types jose mmorph network Spock-core
+         streaming-commons text warp x509 x509-store
+       ];
+       description = "OAuth2 jwt-bearer client flow as per rfc7523";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "oauthenticated" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, blaze-builder
      , bytestring, case-insensitive, cryptonite, exceptions, hspec
@@ -157690,7 +158209,7 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
-  "pandoc_2_3_1" = callPackage
+  "pandoc_2_4" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, base64-bytestring
      , binary, blaze-html, blaze-markup, bytestring, Cabal
      , case-insensitive, cmark-gfm, containers, criterion, data-default
@@ -157700,13 +158219,14 @@ self: {
      , http-types, JuicyPixels, mtl, network, network-uri, pandoc-types
      , parsec, process, QuickCheck, random, safe, SHA, skylighting
      , split, syb, tagsoup, tasty, tasty-golden, tasty-hunit
-     , tasty-quickcheck, temporary, texmath, text, time, unix
-     , unordered-containers, vector, weigh, xml, zip-archive, zlib
+     , tasty-quickcheck, temporary, texmath, text, time
+     , unicode-transforms, unix, unordered-containers, vector, weigh
+     , xml, zip-archive, zlib
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.3.1";
-       sha256 = "1wf38mqny53ygpaii0vfjrk0889ya7mlsi7hvvqjakjndcyqflbl";
+       version = "2.4";
+       sha256 = "1kf1v7zfifh5i1hw5bwdbd78ncp946kx1s501c077vwzdzvcz2ck";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -157719,8 +158239,8 @@ self: {
          Glob haddock-library hslua hslua-module-text HsYAML HTTP
          http-client http-client-tls http-types JuicyPixels mtl network
          network-uri pandoc-types parsec process random safe SHA skylighting
-         split syb tagsoup temporary texmath text time unix
-         unordered-containers vector xml zip-archive zlib
+         split syb tagsoup temporary texmath text time unicode-transforms
+         unix unordered-containers vector xml zip-archive zlib
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
@@ -159725,8 +160245,8 @@ self: {
      }:
      mkDerivation {
        pname = "patat";
-       version = "0.8.1.1";
-       sha256 = "19nnf08szakwivm7zqv85hr0vwpflpk455373a3hwhcjgkzdfy19";
+       version = "0.8.1.2";
+       sha256 = "0lvgb0jl0bfzjqpap3gxlhn0mhbwbd15h33l1idpghxqpmzgvczy";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -160353,12 +160873,14 @@ self: {
        pname = "pcre-heavy";
        version = "1.0.0.2";
        sha256 = "1lfbjgvl55jh226n307c2w8mrb3l1myzbkjh4j0jfcb8nybzcp4a";
+       revision = "1";
+       editedCabalFile = "14pprgwxkiaji3rqhsm0fv454wic6qxm7vy4a475yigadb1vz1ls";
        libraryHaskellDepends = [
          base base-compat bytestring pcre-light semigroups
          string-conversions template-haskell
        ];
        testHaskellDepends = [ base doctest Glob ];
-       description = "A regexp library on top of pcre-light you can actually use";
+       description = "A regexp (regex) library on top of pcre-light you can actually use";
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
@@ -161249,16 +161771,14 @@ self: {
      }) {};
 
   "persist" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, ghc-prim
-     , QuickCheck, test-framework, test-framework-quickcheck2, text
+    ({ mkDerivation, base, bytestring, containers, QuickCheck
+     , test-framework, test-framework-quickcheck2, text
      }:
      mkDerivation {
        pname = "persist";
-       version = "0.1";
-       sha256 = "0akiy8qrx71nj8l80hc7llxy7vnpcvjg01dhk499pl5mjaiqz2sq";
-       libraryHaskellDepends = [
-         array base bytestring containers ghc-prim text
-       ];
+       version = "0.1.1.0";
+       sha256 = "1rk0pgy3dk9aq17p1kn2pzhppvpjzcs9righ3n7xchmsmiqqs2ji";
+       libraryHaskellDepends = [ base bytestring containers text ];
        testHaskellDepends = [
          base bytestring QuickCheck test-framework
          test-framework-quickcheck2 text
@@ -162001,6 +162521,7 @@ self: {
        ];
        description = "Generate classy lens field accessors for persistent models";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "persistent-test" = callPackage
@@ -164050,18 +164571,16 @@ self: {
   "pipes-s3" = callPackage
     ({ mkDerivation, aws, base, bytestring, exceptions, http-client
      , http-client-tls, http-types, pipes, pipes-bytestring, pipes-safe
-     , QuickCheck, resourcet, tasty, tasty-quickcheck, text
+     , QuickCheck, resourcet, semigroups, tasty, tasty-quickcheck, text
      , transformers
      }:
      mkDerivation {
        pname = "pipes-s3";
-       version = "0.3.0.3";
-       sha256 = "16gm7xjc8vbbajwmq91fj1l5cgd6difrz5g30b8czac4gdgqfppa";
-       revision = "3";
-       editedCabalFile = "14cz2sfyz0q0jrpjwj9a25flvcm7mhjhihg4pr356niyvnx1b01p";
+       version = "0.3.1";
+       sha256 = "1z32mgx3w5xiiaxcc22v492f03xlgkprn3pv1hqfqcfgsnxqbj5l";
        libraryHaskellDepends = [
          aws base bytestring http-client http-client-tls http-types pipes
-         pipes-bytestring pipes-safe resourcet text transformers
+         pipes-bytestring pipes-safe resourcet semigroups text transformers
        ];
        testHaskellDepends = [
          base bytestring exceptions pipes pipes-bytestring pipes-safe
@@ -164365,10 +164884,8 @@ self: {
      }:
      mkDerivation {
        pname = "pixela";
-       version = "0.1.0.0";
-       sha256 = "02ab3n56j3y93wrwdj8rd3ff9zw9kskily1s9j2yq49zwpjnilpj";
-       revision = "3";
-       editedCabalFile = "0kndzh00saxdinyz5hbqkir9n578fz8db291nqynqpymw6lwkyc3";
+       version = "0.2.1.0";
+       sha256 = "15bzvwd1dh27p1gs6kfilk34gfkbczz43w70xagk60hvf1mdlcxl";
        libraryHaskellDepends = [
          aeson base bytestring data-default http-client http-client-tls
          http-types split text unordered-containers uri-encode vector
@@ -164672,6 +165189,7 @@ self: {
        ];
        description = "Planet Mitchell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "plankton" = callPackage
@@ -166100,13 +166618,13 @@ self: {
      }) {};
 
   "port-utils" = callPackage
-    ({ mkDerivation, async, base, hspec, network, stm }:
+    ({ mkDerivation, async, base, hspec, network, stm, transformers }:
      mkDerivation {
        pname = "port-utils";
-       version = "0.1.0.2";
-       sha256 = "0a27xsz4agm4bf1i8nrsmlz509yv65fvf3a8pzaqm6qxj7ir7g8i";
+       version = "0.2.0.0";
+       sha256 = "1lvalwbizmvrrpbl2l1lblbv0c3qln1ln61x61zn26jxq2h8p7g1";
        libraryHaskellDepends = [ base network ];
-       testHaskellDepends = [ async base hspec network stm ];
+       testHaskellDepends = [ async base hspec network stm transformers ];
        description = "Utilities for creating and waiting on ports";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -168140,14 +168658,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "pretty-show_1_9_1" = callPackage
+  "pretty-show_1_9_2" = callPackage
     ({ mkDerivation, array, base, filepath, ghc-prim, happy
      , haskell-lexer, pretty, text
      }:
      mkDerivation {
        pname = "pretty-show";
-       version = "1.9.1";
-       sha256 = "0b5diwdkfb2wi6q872fjjnrvysgww7c8nhq55bvccp50n9vs4jhz";
+       version = "1.9.2";
+       sha256 = "01vqa5z364cgj73360rpb4rcysfgfyil9l7gxfp96vzcca3gi37a";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -171439,8 +171957,8 @@ self: {
      }:
      mkDerivation {
        pname = "purescript-iso";
-       version = "0.0.3";
-       sha256 = "15y761jk2r95gdkv85p7ij9npf3a6dlsyidf8y8djzk3m7j8ya2g";
+       version = "0.0.4";
+       sha256 = "1yqr8yfrc8vjn6h1wsfn0167ca6xj9wcl5a46zn9dklpkx995zyq";
        libraryHaskellDepends = [
          aeson aeson-attoparsec aeson-diff async attoparsec attoparsec-uri
          base bytestring containers deepseq emailaddress monad-control mtl
@@ -172768,10 +173286,9 @@ self: {
     ({ mkDerivation, base, QuickCheck, unfoldable-restricted }:
      mkDerivation {
        pname = "quickcheck-combinators";
-       version = "0.0.4";
-       sha256 = "0i5hv58b8vgqbmwb7j8c9xr6qv0v5n2zjh3a9rab8x6hsdlb0mvv";
+       version = "0.0.5";
+       sha256 = "0qdjls949kmcv8wj3a27p4dz8nb1dq4i99zizkw7qyqn47r9ccxd";
        libraryHaskellDepends = [ base QuickCheck unfoldable-restricted ];
-       description = "Simple type-level combinators for augmenting QuickCheck instances";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -174439,6 +174956,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "rank2classes_1_2" = callPackage
+    ({ mkDerivation, base, distributive, doctest, tasty, tasty-hunit
+     , template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "rank2classes";
+       version = "1.2";
+       sha256 = "1qaqsg4xfvhdvffr42y1r95lkvm2spj27pwxz4vrhkxq56fkbj2p";
+       libraryHaskellDepends = [
+         base distributive template-haskell transformers
+       ];
+       testHaskellDepends = [
+         base distributive doctest tasty tasty-hunit
+       ];
+       description = "standard type constructor class hierarchy, only with methods of rank 2 types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rapid" = callPackage
     ({ mkDerivation, async, base, containers, foreign-store, stm }:
      mkDerivation {
@@ -174755,6 +175291,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ratel_1_0_6" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , containers, filepath, hspec, http-client, http-client-tls
+     , http-types, text, uuid
+     }:
+     mkDerivation {
+       pname = "ratel";
+       version = "1.0.6";
+       sha256 = "0bqgkijadr3zhmnq787k6bkqg96di3fbrb3ywlypns624mhwcw37";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive containers http-client
+         http-client-tls http-types text uuid
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive containers filepath hspec
+         http-client http-client-tls http-types text uuid
+       ];
+       description = "Notify Honeybadger about exceptions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ratel-wai" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , http-client, ratel, wai
@@ -174770,6 +175328,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ratel-wai_1_0_4" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, containers
+     , http-client, ratel, wai
+     }:
+     mkDerivation {
+       pname = "ratel-wai";
+       version = "1.0.4";
+       sha256 = "1cri461f40xa43kwg3wq5k98irfqypsi97xdk9n60yqhc8msca4m";
+       libraryHaskellDepends = [
+         base bytestring case-insensitive containers http-client ratel wai
+       ];
+       description = "Notify Honeybadger about exceptions via a WAI middleware";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rating-systems" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -174822,15 +175396,16 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "rattletrap_6_0_1" = callPackage
+  "rattletrap_6_0_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
-     , bytestring, containers, filepath, http-client, http-client-tls
-     , HUnit, template-haskell, temporary, text, transformers
+     , bytestring, clock, containers, filepath, http-client
+     , http-client-tls, HUnit, template-haskell, temporary, text
+     , transformers
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "6.0.1";
-       sha256 = "1chpivz9iprnj5p3kbqsgpviqg5d3dx41596ki1dydm1wmpn3bcj";
+       version = "6.0.2";
+       sha256 = "1904g1s61zazhg6zn189m7y9v5aap39zd0gfypzd9jrk6489aqi1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -174844,9 +175419,9 @@ self: {
          transformers
        ];
        testHaskellDepends = [
-         aeson aeson-pretty base binary binary-bits bytestring containers
-         filepath http-client http-client-tls HUnit template-haskell
-         temporary text transformers
+         aeson aeson-pretty base binary binary-bits bytestring clock
+         containers filepath http-client http-client-tls HUnit
+         template-haskell temporary text transformers
        ];
        description = "Parse and generate Rocket League replays";
        license = stdenv.lib.licenses.mit;
@@ -178107,25 +178682,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "relude_0_3_0" = callPackage
+  "relude_0_4_0" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, doctest
      , gauge, ghc-prim, Glob, hashable, hedgehog, mtl, stm, tasty
      , tasty-hedgehog, text, transformers, unordered-containers
-     , utf8-string
      }:
      mkDerivation {
        pname = "relude";
-       version = "0.3.0";
-       sha256 = "10cbgz1xzw67q3y9fw8px7wwxblv5qym51qpdljmjz4ilpy0k35j";
-       revision = "1";
-       editedCabalFile = "04jfgc38pwrqir1j91l8jfzsp0hzggxr7kmbnfqcgrlpqidpj7mh";
+       version = "0.4.0";
+       sha256 = "03z8ji8hssb811d1xvmv2zlnq7h7dsr801x05xydhfl1srbg5i9f";
        libraryHaskellDepends = [
          base bytestring containers deepseq ghc-prim hashable mtl stm text
-         transformers unordered-containers utf8-string
+         transformers unordered-containers
        ];
        testHaskellDepends = [
          base bytestring doctest Glob hedgehog tasty tasty-hedgehog text
-         utf8-string
        ];
        benchmarkHaskellDepends = [
          base containers gauge unordered-containers
@@ -181192,6 +181763,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ron" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, binary, bytestring
+     , containers, criterion, data-default, deepseq, Diff, errors, extra
+     , hashable, mtl, safe, stringsearch, template-haskell, text, time
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "ron";
+       version = "0.1";
+       sha256 = "1dwi0yyqzrwsl3x359hdpa5x77jqmbdidy0lx2wx2xlg0yzf5cfv";
+       libraryHaskellDepends = [
+         aeson attoparsec base binary bytestring containers data-default
+         deepseq Diff errors extra hashable mtl safe stringsearch
+         template-haskell text time unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [ base criterion deepseq ];
+       description = "RON, RON-RDT, and RON-Schema";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "roots" = callPackage
     ({ mkDerivation, base, tagged }:
      mkDerivation {
@@ -181471,6 +182062,7 @@ self: {
        testHaskellDepends = [ base long-double ];
        description = "Correctly-rounded arbitrary-precision floating-point arithmetic";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) gmp; inherit (pkgs) mpfr;};
 
   "rounding" = callPackage
@@ -183271,26 +183863,6 @@ self: {
 
   "sandi" = callPackage
     ({ mkDerivation, base, bytestring, conduit, criterion, exceptions
-     , HUnit, stringsearch, tasty, tasty-hunit, tasty-quickcheck
-     , tasty-th
-     }:
-     mkDerivation {
-       pname = "sandi";
-       version = "0.4.2";
-       sha256 = "0dvkpk91n9kz2ha04rvp231ra9sgd1ilyc1qkzf9l03iir7zrh9b";
-       libraryHaskellDepends = [
-         base bytestring conduit exceptions stringsearch
-       ];
-       testHaskellDepends = [
-         base bytestring HUnit tasty tasty-hunit tasty-quickcheck tasty-th
-       ];
-       benchmarkHaskellDepends = [ base bytestring criterion ];
-       description = "Data encoding library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "sandi_0_4_3" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, criterion, exceptions
      , tasty, tasty-hunit, tasty-quickcheck, tasty-th
      }:
      mkDerivation {
@@ -183304,7 +183876,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion ];
        description = "Data encoding library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "sandlib" = callPackage
@@ -186131,8 +186702,8 @@ self: {
      }:
      mkDerivation {
        pname = "sensu-run";
-       version = "0.6.0.2";
-       sha256 = "1lxz3cr04f4bqlm4jph66ckab494vqlaf6jc67dbmmwia6if2fpw";
+       version = "0.6.0.3";
+       sha256 = "0zipxs3l99ppaxwsvidjycm7mfyvqll88vrn6ajdpdcbmv1c5vc4";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -186706,6 +187277,8 @@ self: {
        pname = "servant-auth";
        version = "0.3.2.0";
        sha256 = "12s1m7vqp0ka8nani4cnrb6fad2y5mxji95bba2b6b07ih8xbd3v";
+       revision = "1";
+       editedCabalFile = "10ss4v45lclf5n0k6rch22zzs59v7p5ppd04dbc97pqxiygpbnd9";
        libraryHaskellDepends = [ base ];
        description = "Authentication combinators for servant";
        license = stdenv.lib.licenses.bsd3;
@@ -186722,6 +187295,8 @@ self: {
        pname = "servant-auth-client";
        version = "0.3.3.0";
        sha256 = "1pxkwpg1in3anamfvrp8gd7iihng0ikhl4k7ymz5d75ma1qwa2j9";
+       revision = "1";
+       editedCabalFile = "0jd1frgvghd9zp0rzzar9xxvj6qwg1l7f0zv7977rf6v930fqhw9";
        libraryHaskellDepends = [
          base bytestring containers servant servant-auth servant-client-core
          text
@@ -186776,8 +187351,8 @@ self: {
        pname = "servant-auth-docs";
        version = "0.2.10.0";
        sha256 = "0j1ynnrb6plrhpb2vzs2p7a9jb41llp0j1jwgap7hjhkwhyc7wxd";
-       revision = "1";
-       editedCabalFile = "0rg38ibrw110c3dllqda7badbf6y89g2ilqybkzipyprwkg8s69x";
+       revision = "2";
+       editedCabalFile = "0309a6pc8jj24xwqmzj1yslgij9g212hnaqh2qkcvlm6k6riffil";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base lens servant servant-auth servant-docs text
@@ -186859,7 +187434,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "servant-auth-server_0_4_1_0" = callPackage
+  "servant-auth-server_0_4_2_0" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, blaze-builder
      , bytestring, bytestring-conversion, case-insensitive, cookie
      , crypto-api, data-default-class, entropy, hspec, hspec-discover
@@ -186870,8 +187445,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-server";
-       version = "0.4.1.0";
-       sha256 = "1fxh50fjrdi5j88qs2vsrflqdwq3pc8s5h424nhjrpc24w277bqi";
+       version = "0.4.2.0";
+       sha256 = "000szizds1c8amxm7gl75gpwrlj38gv665bhp59d35wcq03na4ap";
        libraryHaskellDepends = [
          aeson base base64-bytestring blaze-builder bytestring
          bytestring-conversion case-insensitive cookie crypto-api
@@ -186898,6 +187473,8 @@ self: {
        pname = "servant-auth-swagger";
        version = "0.2.10.0";
        sha256 = "04ndbbhdmpgb8yshki6q2j46a5q8fzvlb4nn8x8gv0mqkriq79sh";
+       revision = "1";
+       editedCabalFile = "105rniz4cmmwr0ynyv75s4ap1fgfwxy2k5mvvj66gwpvzmj55cnx";
        libraryHaskellDepends = [
          base lens servant servant-auth servant-swagger swagger2 text
        ];
@@ -187580,6 +188157,7 @@ self: {
        ];
        description = "Generate HTTP2 clients from Servant API descriptions";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-iCalendar" = callPackage
@@ -188474,6 +189052,7 @@ self: {
        ];
        description = "Servant swagger ui: Jens-Ole Graulund theme";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-swagger-ui-redoc" = callPackage
@@ -188490,6 +189069,7 @@ self: {
        ];
        description = "Servant swagger ui: ReDoc theme";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-tracing" = callPackage
@@ -190001,6 +190581,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "shannon-fano" = callPackage
+    ({ mkDerivation, base, bytestring, QuickCheck, split }:
+     mkDerivation {
+       pname = "shannon-fano";
+       version = "0.1.0.1";
+       sha256 = "11xpz5mi1yk9zcy22fhn6j4xnyifxgn07nd6nrx588h1g6w8r2df";
+       revision = "1";
+       editedCabalFile = "1da8hsqrv7nz9nlkdlqvjcssfzf4r6fxdhv8lryz92d7jjjxyjcc";
+       libraryHaskellDepends = [ base bytestring split ];
+       testHaskellDepends = [ base QuickCheck ];
+       description = "Shannon-fano compression algorithm implementation in Haskell";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "shapefile" = callPackage
     ({ mkDerivation, base, binary, bytestring, data-binary-ieee754, dbf
      , filepath, rwlock
@@ -190468,6 +191063,7 @@ self: {
        testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Simple shell scripting from Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "shift" = callPackage
@@ -190538,8 +191134,8 @@ self: {
      }:
      mkDerivation {
        pname = "shine";
-       version = "0.2.0.2";
-       sha256 = "0r0rl65rkcdg8c8lzli87nfad8bk4xypiqvb2qs68fhhzwx1zfg2";
+       version = "0.2.0.3";
+       sha256 = "16h5igycgas28qk22yg08qkfwsrar9g4bw7q8p94vmf993p4542k";
        libraryHaskellDepends = [
          base ghcjs-dom ghcjs-prim keycode mtl time transformers
        ];
@@ -191169,6 +191765,7 @@ self: {
        ];
        description = "A simple library for affine and vector spaces";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "simple-atom" = callPackage
@@ -191223,23 +191820,11 @@ self: {
     ({ mkDerivation, base, directory, filepath, process }:
      mkDerivation {
        pname = "simple-cmd";
-       version = "0.1.1";
-       sha256 = "0y9ga7m3zykrmgfzys6g7k1z79spp2319ln4sayw8i0abpwh63m9";
-       libraryHaskellDepends = [ base directory filepath process ];
-       description = "Simple String-based process commands";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "simple-cmd_0_1_2" = callPackage
-    ({ mkDerivation, base, directory, filepath, process }:
-     mkDerivation {
-       pname = "simple-cmd";
        version = "0.1.2";
        sha256 = "10jdyl1ghzczxw5bi8s1694fla42s1aknmj5grxndidwzf95b8g6";
        libraryHaskellDepends = [ base directory filepath process ];
        description = "Simple String-based process commands";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "simple-conduit" = callPackage
@@ -191457,8 +192042,8 @@ self: {
      }:
      mkDerivation {
        pname = "simple-log";
-       version = "0.9.8";
-       sha256 = "1yn2nnvmzfw4v7bi6jchsd8y27vpd8m4in0shydyyglpjmaq751k";
+       version = "0.9.9";
+       sha256 = "0pmamadkiyryl3mdvnq1gc7yx0bm4qspvj489ac27hrlr9d1d7j7";
        libraryHaskellDepends = [
          async base base-unicode-symbols containers data-default deepseq
          directory exceptions filepath hformat microlens microlens-platform
@@ -191866,24 +192451,6 @@ self: {
      }:
      mkDerivation {
        pname = "simple-vec3";
-       version = "0.4.0.8";
-       sha256 = "0jikq60ixk21gb7j3rayxqha73m9vn4n8kz4799rcw5qiii7rr4a";
-       libraryHaskellDepends = [ base QuickCheck vector ];
-       testHaskellDepends = [
-         base doctest doctest-driver-gen tasty tasty-quickcheck
-       ];
-       benchmarkHaskellDepends = [ base criterion vector ];
-       description = "Three-dimensional vectors of doubles with basic operations";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "simple-vec3_0_4_0_9" = callPackage
-    ({ mkDerivation, base, criterion, doctest, doctest-driver-gen
-     , QuickCheck, tasty, tasty-quickcheck, vector
-     }:
-     mkDerivation {
-       pname = "simple-vec3";
        version = "0.4.0.9";
        sha256 = "1rx4nifv75lpxrdgq6x3a61d56qp0ln9rhf2d10l2ds049dlq0pz";
        libraryHaskellDepends = [ base QuickCheck vector ];
@@ -192910,6 +193477,30 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "slack-web_0_2_0_8" = callPackage
+    ({ mkDerivation, aeson, base, containers, errors, hspec
+     , http-api-data, http-client, http-client-tls, megaparsec, mtl
+     , servant, servant-client, servant-client-core, text, time
+     , transformers
+     }:
+     mkDerivation {
+       pname = "slack-web";
+       version = "0.2.0.8";
+       sha256 = "00sm4sh8ik472l5hk1yifczppr6nxx9b68byilg0zwzy1c4mq9kg";
+       libraryHaskellDepends = [
+         aeson base containers errors http-api-data http-client
+         http-client-tls megaparsec mtl servant servant-client
+         servant-client-core text time transformers
+       ];
+       testHaskellDepends = [
+         aeson base containers errors hspec http-api-data megaparsec text
+         time
+       ];
+       description = "Bindings for the Slack web API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "slate" = callPackage
     ({ mkDerivation, base, directory, filepath, htoml
      , optparse-applicative, process, string-conversions
@@ -192958,21 +193549,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "slave-thread_1_0_2_2" = callPackage
-    ({ mkDerivation, base, deferred-folds, foldl, HTF, mmorph
-     , partial-handler, QuickCheck, quickcheck-instances, rerebase
-     , SafeSemaphore, stm-containers, transformers
+  "slave-thread_1_0_2_6" = callPackage
+    ({ mkDerivation, base, deferred-folds, foldl, QuickCheck
+     , quickcheck-instances, rerebase, SafeSemaphore, stm-containers
+     , tasty, tasty-hunit, tasty-quickcheck, transformers
      }:
      mkDerivation {
        pname = "slave-thread";
-       version = "1.0.2.2";
-       sha256 = "1jf8n989gsxbqkyxj8kd523dxp5bxs9cs4s6jd4j95mvij6pgpgl";
+       version = "1.0.2.6";
+       sha256 = "014j8rsbkrkabpvq5sxp6i2d3gpzn4ddnfwl1p5cg3xlmr950ksn";
        libraryHaskellDepends = [
-         base deferred-folds foldl mmorph partial-handler stm-containers
-         transformers
+         base deferred-folds foldl stm-containers transformers
        ];
        testHaskellDepends = [
-         HTF QuickCheck quickcheck-instances rerebase SafeSemaphore
+         QuickCheck quickcheck-instances rerebase SafeSemaphore tasty
+         tasty-hunit tasty-quickcheck
        ];
        description = "A fundamental solution to ghost threads and silent exceptions";
        license = stdenv.lib.licenses.mit;
@@ -196993,6 +197584,7 @@ self: {
        ];
        description = "JSON API to HTML website wrapper";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "spritz" = callPackage
@@ -197734,11 +198326,12 @@ self: {
     ({ mkDerivation, base, gdp, ghc-prim, primitive }:
      mkDerivation {
        pname = "st2";
-       version = "0.1.0.0";
-       sha256 = "0gly0l191cwnahdrmgi1i2rx4430b9d684kl9s5frxa3k1711agj";
+       version = "0.1.0.2";
+       sha256 = "0i7v9yacwgf6aj67c4r2n8zcm07jrcff9nl52sx7ylsjs65ym2qz";
        libraryHaskellDepends = [ base gdp ghc-prim primitive ];
        description = "shared heap regions between local mutable state threads";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "stable-heap" = callPackage
@@ -199217,6 +199810,7 @@ self: {
        ];
        description = "A lovely [Dog]StatsD implementation";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "status-notifier-item" = callPackage
@@ -199989,6 +200583,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "storable-complex_0_2_3_0" = callPackage
+    ({ mkDerivation, base, base-orphans }:
+     mkDerivation {
+       pname = "storable-complex";
+       version = "0.2.3.0";
+       sha256 = "0fnwbfmd5vsaaqvf9182qdcjrzcfjd1zhdyvjwzifbwvn6r9kx4s";
+       libraryHaskellDepends = [ base base-orphans ];
+       description = "Storable instance for Complex";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "storable-endian" = callPackage
     ({ mkDerivation, base, byteorder }:
      mkDerivation {
@@ -201139,6 +201745,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "strict-tuple" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "strict-tuple";
+       version = "0.1.1";
+       sha256 = "13r72i95d0aal7i6v1mrviin2i5c6j9zs0f3qvc66wyy7mkr1h5n";
+       libraryHaskellDepends = [ base ];
+       description = "Strict tuples";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "strict-types" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, deepseq
      , hashable, text, unordered-containers, vector
@@ -201636,6 +202253,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "strive_5_0_7" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, data-default, gpolyline
+     , http-client, http-client-tls, http-types, markdown-unlit
+     , template-haskell, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "strive";
+       version = "5.0.7";
+       sha256 = "0hxy5znrfcls6bd8hjil97mya3w8zkppfd4jrz0ayz7zidbws5kg";
+       libraryHaskellDepends = [
+         aeson base bytestring data-default gpolyline http-client
+         http-client-tls http-types template-haskell text time transformers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring data-default gpolyline http-client
+         http-client-tls http-types markdown-unlit template-haskell text
+         time transformers
+       ];
+       testToolDepends = [ markdown-unlit ];
+       description = "A client for the Strava V3 API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "strptime" = callPackage
     ({ mkDerivation, base, bytestring, text, time }:
      mkDerivation {
@@ -203187,15 +203828,15 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {};
 
-  "swish_0_10_0_0" = callPackage
+  "swish_0_10_0_1" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, hashable
      , HUnit, intern, mtl, network-uri, old-locale, polyparse
      , semigroups, test-framework, test-framework-hunit, text, time
      }:
      mkDerivation {
        pname = "swish";
-       version = "0.10.0.0";
-       sha256 = "1dm388lwfxrpdbqm3fdk9gjr8pp8y8s02wl9aan86av956g2kr4h";
+       version = "0.10.0.1";
+       sha256 = "1ikqqyra9r79vw2s969kyqh1vgijcr33y7irriylsp51n7pspagk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -205173,21 +205814,22 @@ self: {
 
   "tailfile-hinotify" = callPackage
     ({ mkDerivation, async, base, bytestring, conceit, directory
-     , filepath, foldl, hinotify, pipes, process-streaming, streaming
-     , streaming-eversion, tasty, tasty-hunit
+     , filepath, foldl, hinotify, pipes, pipes-transduce
+     , process-streaming, streaming, streaming-eversion, tasty
+     , tasty-hunit, text
      }:
      mkDerivation {
        pname = "tailfile-hinotify";
-       version = "1.0.0.3";
-       sha256 = "0czw1ahm4zcxhyhzg6by3rfbirkhv9jlcw9yzp7q1zrxb3schbyz";
+       version = "2.0.0.0";
+       sha256 = "0qnpikj8fbjnks95wwza8m773j0b9sg7fn16dvpfps189icm85gi";
        libraryHaskellDepends = [
          async base bytestring foldl hinotify pipes streaming
-         streaming-eversion
+         streaming-eversion text
        ];
        testHaskellDepends = [
          async base bytestring conceit directory filepath foldl hinotify
-         pipes process-streaming streaming streaming-eversion tasty
-         tasty-hunit
+         pipes pipes-transduce process-streaming streaming
+         streaming-eversion tasty tasty-hunit text
        ];
        description = "Tail files in Unix, using hinotify";
        license = stdenv.lib.licenses.mit;
@@ -212453,8 +213095,8 @@ self: {
      }:
      mkDerivation {
        pname = "toodles";
-       version = "0.1.1";
-       sha256 = "1g806bdm6l52yg6q3jni94iacp7sfdacfx6rddnsdzqb0cj6ym0w";
+       version = "0.1.3";
+       sha256 = "09ph9jmhma211r16fyvib8fwv3jm8v526swjgwrzsl9c97xfpzjg";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -219175,7 +219817,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "urlpath_9_0_0_1" = callPackage
+  "urlpath_9_0_1" = callPackage
     ({ mkDerivation, attoparsec-uri, base, exceptions, mmorph
      , monad-control, monad-control-aligned, monad-logger, mtl, path
      , path-extra, resourcet, split, strict, text, transformers
@@ -219183,8 +219825,8 @@ self: {
      }:
      mkDerivation {
        pname = "urlpath";
-       version = "9.0.0.1";
-       sha256 = "009836gw2gmmjb08nqqdklpr967gfnnnk1r5lpy3wjyspky03vgv";
+       version = "9.0.1";
+       sha256 = "0acflpvb0imf2qc2gqbqziv4lk6a5p9gxkvbm0mv3kszqslh7rrg";
        libraryHaskellDepends = [
          attoparsec-uri base exceptions mmorph monad-control
          monad-control-aligned monad-logger mtl path path-extra resourcet
@@ -220260,12 +220902,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "validity_0_8_0_0" = callPackage
+  "validity_0_9_0_0" = callPackage
     ({ mkDerivation, base, hspec }:
      mkDerivation {
        pname = "validity";
-       version = "0.8.0.0";
-       sha256 = "0yr342gd8ylji7nqa8w3ssik8qcgb4v3h3j30qf5nbzg900k5rsn";
+       version = "0.9.0.0";
+       sha256 = "1rm0gw049v7f9i5rqn8f8ps4ksawmmggmhw9yclgh4qhhql7gz3q";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        description = "Validity typeclass";
@@ -220976,17 +221618,17 @@ self: {
      }) {};
 
   "vector-binary-instances" = callPackage
-    ({ mkDerivation, base, binary, bytestring, criterion, deepseq
-     , tasty, tasty-quickcheck, vector
+    ({ mkDerivation, base, binary, bytestring, deepseq, gauge, tasty
+     , tasty-quickcheck, vector
      }:
      mkDerivation {
        pname = "vector-binary-instances";
-       version = "0.2.5";
-       sha256 = "0l9zj58a4sbpic1dc9if7iwv4rihya2bj4zb4qfna5fb3pf6plwc";
+       version = "0.2.5.1";
+       sha256 = "04n5cqm1v95pw1bp68l9drjkxqiy2vswxdq0fy1rqcgxisgvji9r";
        libraryHaskellDepends = [ base binary vector ];
        testHaskellDepends = [ base binary tasty tasty-quickcheck vector ];
        benchmarkHaskellDepends = [
-         base binary bytestring criterion deepseq vector
+         base binary bytestring deepseq gauge vector
        ];
        description = "Instances of Data.Binary for vector";
        license = stdenv.lib.licenses.bsd3;
@@ -221245,6 +221887,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "vector-sized_1_1_0_0" = callPackage
+    ({ mkDerivation, adjunctions, base, comonad, deepseq, distributive
+     , finite-typelits, indexed-list-literals, primitive, vector
+     }:
+     mkDerivation {
+       pname = "vector-sized";
+       version = "1.1.0.0";
+       sha256 = "0y11ggayk4l61i50m0gxv6qm7z1pscmagj5nyrz3q47j31pv5vkl";
+       libraryHaskellDepends = [
+         adjunctions base comonad deepseq distributive finite-typelits
+         indexed-list-literals primitive vector
+       ];
+       description = "Size tagged vectors";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "vector-space" = callPackage
     ({ mkDerivation, base, Boolean, MemoTrie, NumInstances }:
      mkDerivation {
@@ -221528,8 +222187,8 @@ self: {
     ({ mkDerivation, aeson, base, bytestring, hspec, semigroupoids }:
      mkDerivation {
        pname = "versioning";
-       version = "0.3.0.0";
-       sha256 = "12d5xxc8i0ldbsb6y22f9gvk0d61nrgjz3yf7ppvqrzhilgs6yyf";
+       version = "0.3.0.1";
+       sha256 = "08072xwz094qdawczggxx8gk734cas8767zcah84q30qdb5ywzwf";
        libraryHaskellDepends = [ aeson base bytestring semigroupoids ];
        testHaskellDepends = [ aeson base bytestring hspec ];
        description = "Type-safe data versioning";
@@ -221543,8 +222202,8 @@ self: {
      }:
      mkDerivation {
        pname = "versioning-servant";
-       version = "0.1.0.0";
-       sha256 = "14a1fk2mgcjjlb1z01xb5ngf496kpfr2y588265zn72q54a7l08k";
+       version = "0.1.0.1";
+       sha256 = "0hk30p8wjn00dzxyd45hf7r1qhn944j12km00birgqhf4vcmw7c4";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring http-media servant versioning
        ];
@@ -222250,6 +222909,7 @@ self: {
        testHaskellDepends = [ aeson base hspec roundtrip-aeson ];
        description = "Upload audio files to voicebase to get a transcription";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "void" = callPackage
@@ -222406,7 +223066,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "vty_5_25" = callPackage
+  "vty_5_25_1" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, Cabal, containers
      , deepseq, directory, filepath, hashable, HUnit, microlens
      , microlens-mtl, microlens-th, mtl, parallel, parsec, QuickCheck
@@ -222417,8 +223077,8 @@ self: {
      }:
      mkDerivation {
        pname = "vty";
-       version = "5.25";
-       sha256 = "1m37q8l4ynnhyln1hkwxrmgysslb5d6nvnvx667q4q004dhrcr91";
+       version = "5.25.1";
+       sha256 = "1x15jlf9x6c8nhdbp6alr17vigclkaf5qy5jpp14g5n568p7karw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -222545,8 +223205,8 @@ self: {
      }:
      mkDerivation {
        pname = "waargonaut";
-       version = "0.1.0.0";
-       sha256 = "0y3h1kgh7n639h714ji4fycj6b8vcsa79jfv36w995p9gbjxxdjc";
+       version = "0.2.0.0";
+       sha256 = "1qk4wg2jqzylaqq0yjq9byj3k5vj23jqvdshvyj7r9fl0f3hynni";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base bifunctors bytestring containers contravariant digit
@@ -222563,6 +223223,7 @@ self: {
        ];
        description = "JSON wrangling";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wacom-daemon" = callPackage
@@ -224610,8 +225271,8 @@ self: {
        pname = "wave";
        version = "0.1.5";
        sha256 = "03zycmwrchhqvi37fdvlzz2d1vl4hy0i8xyys1zznw38qfq0h2i5";
-       revision = "1";
-       editedCabalFile = "1wvgxay0r5rpcc7yxkznxxcp1za0ifxvk87w0xrilxgb35r3izz8";
+       revision = "2";
+       editedCabalFile = "0zs0mw42z9xzs1r935pd5dssf0x10qbkhxlpfknv0x75n2k0azzj";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base bytestring cereal containers data-default-class transformers
@@ -225785,6 +226446,8 @@ self: {
        pname = "wedged";
        version = "2";
        sha256 = "1aw29dk0h25zw60m288423bakz36k0jpmzdhy7kq2wns3l5k6jqs";
+       revision = "1";
+       editedCabalFile = "0b3wq7pcz0m5qz7d9np5lhi3yh76ksx1v14bvsd6krr49p742zg5";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -226512,6 +227175,7 @@ self: {
        executableHaskellDepends = [ base bytestring network unix ];
        description = "A network server to show bottlenecks of GHC";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wizard" = callPackage
@@ -227581,6 +228245,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ws_0_0_5" = callPackage
+    ({ mkDerivation, async, attoparsec, attoparsec-uri, base
+     , bytestring, exceptions, haskeline, mtl, network
+     , optparse-applicative, strict, text, vector, websockets, wuss
+     }:
+     mkDerivation {
+       pname = "ws";
+       version = "0.0.5";
+       sha256 = "1qj4yq2z7ml88jgcqfy8i1cn1cbmdv56vg7v6b2inh4b4h41yax6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         async attoparsec-uri base bytestring exceptions haskeline mtl
+         network text websockets wuss
+       ];
+       executableHaskellDepends = [
+         async attoparsec attoparsec-uri base bytestring exceptions
+         haskeline mtl network optparse-applicative strict text vector
+         websockets wuss
+       ];
+       description = "A simple CLI utility for interacting with a websocket";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ws-chans" = callPackage
     ({ mkDerivation, async, base, http-types, HUnit, network
      , QuickCheck, quickcheck-instances, test-framework
@@ -227802,6 +228491,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "wuss_1_1_11" = callPackage
+    ({ mkDerivation, base, bytestring, connection, network, websockets
+     }:
+     mkDerivation {
+       pname = "wuss";
+       version = "1.1.11";
+       sha256 = "1mlqgi80r5db0j58r0laiwp1044n4insq89bv1v3y26j726yjvp0";
+       libraryHaskellDepends = [
+         base bytestring connection network websockets
+       ];
+       description = "Secure WebSocket (WSS) clients";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wx" = callPackage
     ({ mkDerivation, base, stm, time, wxcore }:
      mkDerivation {
@@ -228041,10 +228745,8 @@ self: {
      }:
      mkDerivation {
        pname = "x509";
-       version = "1.7.4";
-       sha256 = "1vm1ir0q7nxcyq65bmw7hbwlmf3frya077v9jikcrh8igg18m717";
-       revision = "1";
-       editedCabalFile = "0p9zzzj118n8ymacj6yp7nkf22d09mj31wnzc1alq26w2ybcrifz";
+       version = "1.7.5";
+       sha256 = "1j67c35g8334jx7x32hh6awhr43dplp0qwal5gnlkmx09axzrc5i";
        libraryHaskellDepends = [
          asn1-encoding asn1-parse asn1-types base bytestring containers
          cryptonite hourglass memory mtl pem
@@ -228064,8 +228766,8 @@ self: {
      }:
      mkDerivation {
        pname = "x509-store";
-       version = "1.6.6";
-       sha256 = "0dbndqmnmyixxc7308nyq3zlkhz9dff4rbcw2a49c77rbicny9va";
+       version = "1.6.7";
+       sha256 = "1y8yyr1i95jkllg8k0z54k5v4vachp848clc07m33xpxidn3b1lp";
        libraryHaskellDepends = [
          asn1-encoding asn1-types base bytestring containers cryptonite
          directory filepath mtl pem x509
@@ -228093,21 +228795,22 @@ self: {
 
   "x509-util" = callPackage
     ({ mkDerivation, asn1-encoding, asn1-types, base, bytestring
-     , cryptonite, directory, hourglass, pem, x509, x509-store
+     , cryptonite, directory, hourglass, memory, pem, x509, x509-store
      , x509-system, x509-validation
      }:
      mkDerivation {
        pname = "x509-util";
-       version = "1.6.4";
-       sha256 = "0qv33r1p1mdl8yskl0hzy3s989y929lk2q23i9qb9fb6w63g6nfb";
+       version = "1.6.5";
+       sha256 = "1d8s1aaymc0bim871cblv1jpy6vnkadxz4spd7wpr90vswkd2hl7";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          asn1-encoding asn1-types base bytestring cryptonite directory
-         hourglass pem x509 x509-store x509-system x509-validation
+         hourglass memory pem x509 x509-store x509-system x509-validation
        ];
        description = "Utility for X509 certificate and chain";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "x509-validation" = callPackage
@@ -228117,17 +228820,16 @@ self: {
      }:
      mkDerivation {
        pname = "x509-validation";
-       version = "1.6.10";
-       sha256 = "1ms51scawldgyfcim5a2qlgyn3rnrclyh205d6djaa1569vrs73n";
-       revision = "1";
-       editedCabalFile = "1isap8v1gh31q4pj3gn155ya8nd1da0a5a3cryqh4yhf0ivbwl0w";
+       version = "1.6.11";
+       sha256 = "16yihzljql3z8w5rgdl95fv3hgk7yd86kbl9b3glllsark5j2hzr";
        libraryHaskellDepends = [
          asn1-encoding asn1-types base bytestring containers cryptonite
          data-default-class hourglass memory mtl pem x509 x509-store
        ];
        testHaskellDepends = [
          asn1-encoding asn1-types base bytestring cryptonite
-         data-default-class hourglass tasty tasty-hunit x509 x509-store
+         data-default-class hourglass memory tasty tasty-hunit x509
+         x509-store
        ];
        description = "X.509 Certificate and CRL validation";
        license = stdenv.lib.licenses.bsd3;
@@ -229798,6 +230500,8 @@ self: {
        pname = "xmonad-wallpaper";
        version = "0.0.1.4";
        sha256 = "0f6214kqp86xnk1zginjiprnqlj2fzcvh3w5sv3yvqg98mwdd0cg";
+       revision = "1";
+       editedCabalFile = "1vxgv702wgr0k0kzd602v8xv11q5dap4mfhqifnr928bwf9scp28";
        libraryHaskellDepends = [ base magic mtl random unix xmonad ];
        description = "xmonad wallpaper extension";
        license = stdenv.lib.licenses.lgpl3;
@@ -230738,15 +231442,14 @@ self: {
     ({ mkDerivation, base, blank-canvas, stm, time, Yampa }:
      mkDerivation {
        pname = "yampa-canvas";
-       version = "0.2.2";
-       sha256 = "0g1yvb6snnsbvy2f74lrlqff5zgnvfh2f6r8xdwxi61dk71qsz0n";
-       revision = "7";
-       editedCabalFile = "1bj5ncrkwjpvjvrx0s23ksvwwsrybj7zl3sghl1d034wd9r89mxx";
+       version = "0.2.3";
+       sha256 = "0a1pq1psmc4490isr19z4prnqq1w3374vkfmzpw9s20s2p6k5y7r";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base blank-canvas stm time Yampa ];
        description = "blank-canvas frontend for Yampa";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yampa-glfw" = callPackage
@@ -230778,6 +231481,7 @@ self: {
        libraryHaskellDepends = [ base gloss Yampa ];
        description = "A GLOSS backend for Yampa";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yampa-glut" = callPackage
@@ -230833,6 +231537,7 @@ self: {
        ];
        description = "Testing library for Yampa";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yampa2048" = callPackage
@@ -233908,11 +234613,12 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "yoda";
-       version = "0.1.0.0";
-       sha256 = "1p8zvxf63fbj2dpp3pa9awq1jc0makyka42j1aqsljfp08nx4pzn";
+       version = "0.1.3.0";
+       sha256 = "0qkg8aykr8whjrkwfnsds3bjbrb51r83rd60mpdwcs12zyqlpi0d";
        libraryHaskellDepends = [ base ];
        description = "Parser combinators for young padawans";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yoga" = callPackage
@@ -234344,8 +235050,8 @@ self: {
      }:
      mkDerivation {
        pname = "zephyr";
-       version = "0.2.0";
-       sha256 = "0n0z7s71gjlpra4ghfd51rcz5yqddzzwfdpjnhlxciakrabc5m3f";
+       version = "0.2.1";
+       sha256 = "0yhpy1dwh1axbh3xgxn97vnh616pywz56r7gy6sfvqaxj9bqviha";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix
index 942163ea209..3d67ac21399 100644
--- a/pkgs/development/haskell-modules/lib.nix
+++ b/pkgs/development/haskell-modules/lib.nix
@@ -355,10 +355,24 @@ rec {
       in
         builtins.listToAttrs (map toKeyVal haskellPaths);
 
-  # Modify a Haskell package to add completion scripts for the given executable
-  # produced by it. These completion scripts will be picked up automatically if
-  # the resulting derivation is installed, e.g. by `nix-env -i`.
-  addOptparseApplicativeCompletionScripts = exeName: pkg: overrideCabal pkg (drv: {
+  addOptparseApplicativeCompletionScripts = exeName: pkg:
+    builtins.trace "addOptparseApplicativeCompletionScripts is deprecated in favor of generateOptparseApplicativeCompletion. Please change ${pkg.name} to use the latter or its plural form."
+    (generateOptparseApplicativeCompletion exeName pkg);
+
+  /*
+    Modify a Haskell package to add shell completion scripts for the
+    given executable produced by it. These completion scripts will be
+    picked up automatically if the resulting derivation is installed,
+    e.g. by `nix-env -i`.
+
+    Invocation:
+      generateOptparseApplicativeCompletions command pkg
+
+
+      command: name of an executable
+          pkg: Haskell package that builds the executables
+  */
+  generateOptparseApplicativeCompletion = exeName: pkg: overrideCabal pkg (drv: {
     postInstall = (drv.postInstall or "") + ''
       bashCompDir="$out/share/bash-completion/completions"
       zshCompDir="$out/share/zsh/vendor-completions"
@@ -367,6 +381,28 @@ rec {
       "$out/bin/${exeName}" --bash-completion-script "$out/bin/${exeName}" >"$bashCompDir/${exeName}"
       "$out/bin/${exeName}" --zsh-completion-script "$out/bin/${exeName}" >"$zshCompDir/_${exeName}"
       "$out/bin/${exeName}" --fish-completion-script "$out/bin/${exeName}" >"$fishCompDir/${exeName}.fish"
+
+      # Sanity check
+      grep -F ${exeName} <$bashCompDir/${exeName} >/dev/null || {
+        echo 'Could not find ${exeName} in completion script.'
+        exit 1
+      }
     '';
   });
+
+  /*
+    Modify a Haskell package to add shell completion scripts for the
+    given executables produced by it. These completion scripts will be
+    picked up automatically if the resulting derivation is installed,
+    e.g. by `nix-env -i`.
+
+    Invocation:
+      generateOptparseApplicativeCompletions commands pkg
+
+
+     commands: name of an executable
+          pkg: Haskell package that builds the executables
+  */
+  generateOptparseApplicativeCompletions = commands: pkg:
+    pkgs.lib.foldr generateOptparseApplicativeCompletion pkg commands;
 }
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index 1342d6c34d2..21a7cfba406 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "joker-${version}";
-  version = "0.9.7";
+  version = "0.10.1";
 
   goPackagePath = "github.com/candid82/joker";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "0fl04xdpqmr5xpd4pvj72gdy3v1fr9z6h3ja7dmkama8fw2x4diz";
+    sha256 = "1c3p61jmlljljbiwsylmfa75pi00y7yj5wabx1rxmpswc41g5mab";
   };
 
   preBuild = "go generate ./...";
diff --git a/pkgs/development/interpreters/joker/deps.nix b/pkgs/development/interpreters/joker/deps.nix
index ee99aeab69f..4eff988796b 100644
--- a/pkgs/development/interpreters/joker/deps.nix
+++ b/pkgs/development/interpreters/joker/deps.nix
@@ -9,6 +9,15 @@
     };
   }
   {
+    goPackagePath = "github.com/pkg/profile";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/profile";
+      rev = "5b67d428864e92711fcbd2f8629456121a56d91f";
+      sha256 = "0blqmvgqvdbqmh3fp9pfdxc9w1qfshrr0zy9whj0sn372bw64qnr";
+    };
+  }
+  {
     goPackagePath = "gopkg.in/yaml.v2";
     fetch = {
       type = "git";
diff --git a/pkgs/development/interpreters/jruby/default.nix b/pkgs/development/interpreters/jruby/default.nix
index c67fae936ce..81b71d721b8 100644
--- a/pkgs/development/interpreters/jruby/default.nix
+++ b/pkgs/development/interpreters/jruby/default.nix
@@ -6,11 +6,11 @@ rubyVersion = callPackage ../ruby/ruby-version.nix {} "2" "3" "3" "";
 jruby = stdenv.mkDerivation rec {
   name = "jruby-${version}";
 
-  version = "9.2.0.0";
+  version = "9.2.1.0";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/jruby.org/downloads/${version}/jruby-bin-${version}.tar.gz";
-    sha256 = "1106s1vmcm36gm3vrl1sjrrr2wj6splgik1zrfb7c2y9bzm8swa2";
+    sha256 = "0d98ydiavdr811xsrz9zbw9yjpn0acc2ycakqpfg1vs4n5w7764c";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/interpreters/python/cpython/3.4/default.nix b/pkgs/development/interpreters/python/cpython/3.4/default.nix
deleted file mode 100644
index 18b90cd1da4..00000000000
--- a/pkgs/development/interpreters/python/cpython/3.4/default.nix
+++ /dev/null
@@ -1,214 +0,0 @@
-{ stdenv, fetchurl, fetchpatch
-, bzip2
-, expat
-, libffi
-, gdbm
-, lzma
-, ncurses
-, openssl
-, readline
-, sqlite
-, tcl ? null, tk ? null, tix ? null, libX11 ? null, xproto ? null, x11Support ? false
-, zlib
-, callPackage
-, self
-, CF, configd
-, python-setup-hook
-# For the Python package set
-, packageOverrides ? (self: super: {})
-}:
-
-assert x11Support -> tcl != null
-                  && tk != null
-                  && xproto != null
-                  && libX11 != null;
-
-with stdenv.lib;
-
-let
-  majorVersion = "3.4";
-  minorVersion = "9";
-  minorVersionSuffix = "";
-  version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
-  libPrefix = "python${majorVersion}";
-  sitePackages = "lib/${libPrefix}/site-packages";
-
-  buildInputs = filter (p: p != null) [
-    zlib bzip2 expat lzma libffi gdbm sqlite readline ncurses openssl ]
-    ++ optionals x11Support [ tcl tk libX11 xproto ]
-    ++ optionals stdenv.isDarwin [ CF configd ];
-
-  hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false);
-
-in stdenv.mkDerivation {
-  name = "python3-${version}";
-  pythonVersion = majorVersion;
-  inherit majorVersion version;
-
-  inherit buildInputs;
-
-  src = fetchurl {
-    url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.xz";
-    sha256 = "1n9b1kavmw8b7rc3gkrka4fjzrbfq9iqy791yncaf09bp9v9cqjr";
-  };
-
-  NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
-
-  # Determinism: The interpreter is patched to write null timestamps when compiling python files.
-  # This way python doesn't try to update them when we freeze timestamps in nix store.
-  DETERMINISTIC_BUILD=1;
-  # Determinism: We fix the hashes of str, bytes and datetime objects.
-  PYTHONHASHSEED=0;
-
-  prePatch = optionalString stdenv.isDarwin ''
-    substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"'
-    substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
-  '';
-
-  patches = [
-    ./no-ldconfig.patch
-    ./ld_library_path.patch
-  ] ++ optionals (x11Support && stdenv.isDarwin) [
-    ./use-correct-tcl-tk-on-darwin.patch
-  ] ++ optionals hasDistutilsCxxPatch [
-    # Fix for http://bugs.python.org/issue1222585
-    # Upstream distutils is calling C compiler to compile C++ code, which
-    # only works for GCC and Apple Clang. This makes distutils to call C++
-    # compiler when needed.
-    (fetchpatch {
-      url = "https://bugs.python.org/file47046/python-3.x-distutils-C++.patch";
-      sha256 = "0dgdn9k2kmw4wh90vdnjcrnn97ylxgx7mbn9l87fwz6j501jqvk8";
-      extraPrefix = "";
-    })
-  ];
-
-  postPatch = ''
-    # Determinism
-    substituteInPlace "Lib/py_compile.py" --replace "source_stats['mtime']" "(1 if 'DETERMINISTIC_BUILD' in os.environ else source_stats['mtime'])"
-    # Determinism. This is done unconditionally
-    substituteInPlace "Lib/importlib/_bootstrap.py" --replace "source_mtime = int(source_stats['mtime'])" "source_mtime = 1"
-  '' + optionalString (x11Support && (tix != null)) ''
-    substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
-  ''
-    # Avoid picking up getentropy() from glibc >= 2.25, as that would break
-    # on older kernels.  http://bugs.python.org/issue29157
-    + optionalString stdenv.isLinux ''
-        substituteInPlace Python/random.c --replace 'defined(HAVE_GETENTROPY)' '0'
-        cat Python/random.c
-  '';
-
-  CPPFLAGS="${concatStringsSep " " (map (p: "-I${getDev p}/include") buildInputs)}";
-  LDFLAGS="${concatStringsSep " " (map (p: "-L${getLib p}/lib") buildInputs)}";
-  LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}";
-
-  configureFlags = [
-    "--enable-shared"
-    "--with-threads"
-    "--without-ensurepip"
-    "--with-system-expat"
-    "--with-system-ffi"
-  ]
-    # Never even try to use lchmod on linux,
-    # don't rely on detecting glibc-isms.
-  ++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no";
-
-  preConfigure = ''
-    for i in /usr /sw /opt /pkg; do	# improve purity
-      substituteInPlace ./setup.py --replace $i /no-such-path
-    done
-    ${optionalString stdenv.isDarwin ''
-       export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -msse2"
-       export MACOSX_DEPLOYMENT_TARGET=10.6
-     ''
-     + optionalString stdenv.hostPlatform.isMusl ''
-      export NIX_CFLAGS_COMPILE+=" -DTHREAD_STACK_SIZE=0x100000"
-     ''}
-  '';
-
-  setupHook = python-setup-hook sitePackages;
-
-  postInstall = ''
-    # needed for some packages, especially packages that backport functionality
-    # to 2.x from 3.x
-    for item in $out/lib/python${majorVersion}/test/*; do
-      if [[ "$item" != */test_support.py*
-         && "$item" != */test/support
-         && "$item" != */test/libregrtest
-         && "$item" != */test/regrtest.py* ]]; then
-        rm -rf "$item"
-      else
-        echo $item
-      fi
-    done
-    touch $out/lib/python${majorVersion}/test/__init__.py
-
-    ln -s "$out/include/python${majorVersion}m" "$out/include/python${majorVersion}"
-    paxmark E $out/bin/python${majorVersion}
-
-    # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484
-    echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py
-
-    # Determinism: Windows installers were not deterministic.
-    # We're also not interested in building Windows installers.
-    find "$out" -name 'wininst*.exe' | xargs -r rm -f
-
-    # Use Python3 as default python
-    ln -s "$out/bin/idle3" "$out/bin/idle"
-    ln -s "$out/bin/pydoc3" "$out/bin/pydoc"
-    ln -s "$out/bin/python3" "$out/bin/python"
-    ln -s "$out/bin/python3-config" "$out/bin/python-config"
-    ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc"
-
-    # Get rid of retained dependencies on -dev packages, and remove
-    # some $TMPDIR references to improve binary reproducibility.
-    # Note that the .pyc file of _sysconfigdata.py should be regenerated!
-    for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do
-      sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g"
-    done
-
-    # Determinism: rebuild all bytecode
-    # We exclude lib2to3 because that's Python 2 code which fails
-    # We rebuild three times, once for each optimization level
-    find $out -name "*.py" | $out/bin/python -m compileall -q -f -x "lib2to3" -i -
-    find $out -name "*.py" | $out/bin/python -O -m compileall -q -f -x "lib2to3" -i -
-    find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i -
-  '';
-
-  passthru = let
-    pythonPackages = callPackage ../../../../../top-level/python-packages.nix {
-      python = self;
-      overrides = packageOverrides;
-    };
-  in rec {
-    inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch;
-    executable = "${libPrefix}m";
-    buildEnv = callPackage ../../wrapper.nix { python = self; inherit (pythonPackages) requiredPythonModules; };
-    withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
-    pkgs = pythonPackages;
-    isPy3 = true;
-    isPy34 = true;
-    is_py3k = true;  # deprecated
-    interpreter = "${self}/bin/${executable}";
-  };
-
-  enableParallelBuilding = true;
-
-  doCheck = false; # expensive, and fails
-
-  meta = {
-    homepage = http://python.org;
-    description = "A high-level dynamically-typed programming language";
-    longDescription = ''
-      Python is a remarkably powerful dynamic programming language that
-      is used in a wide variety of application domains. Some of its key
-      distinguishing features include: clear, readable syntax; strong
-      introspection capabilities; intuitive object orientation; natural
-      expression of procedural code; full modularity, supporting
-      hierarchical packages; exception-based error handling; and very
-      high level dynamic data types.
-    '';
-    license = licenses.psfl;
-    platforms = with platforms; linux ++ darwin;
-    maintainers = with maintainers; [ fridh ];
-  };
-}
diff --git a/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch b/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch
deleted file mode 100644
index 3172eb6d18e..00000000000
--- a/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 85991e0d7f0e631240f3f6233bd65d1128a66dec Mon Sep 17 00:00:00 2001
-From: Frederik Rietdijk <fridh@fridh.nl>
-Date: Thu, 14 Sep 2017 10:00:31 +0200
-Subject: [PATCH] ctypes.util: support LD_LIBRARY_PATH
-
-Backports support for LD_LIBRARY_PATH from 3.6
----
- Lib/ctypes/util.py | 26 +++++++++++++++++++++++++-
- 1 file changed, 25 insertions(+), 1 deletion(-)
-
-diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
-index 780cd5d21b..d7ac15070f 100644
---- a/Lib/ctypes/util.py
-+++ b/Lib/ctypes/util.py
-@@ -181,8 +181,32 @@ elif os.name == "posix":
-         def _findSoname_ldconfig(name):
-             return None
- 
-+        def _findLib_ld(name):
-+            # See issue #9998 for why this is needed
-+            expr = r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name)
-+            cmd = ['ld', '-t']
-+            libpath = os.environ.get('LD_LIBRARY_PATH')
-+            if libpath:
-+                for d in libpath.split(':'):
-+                    cmd.extend(['-L', d])
-+            cmd.extend(['-o', os.devnull, '-l%s' % name])
-+            result = None
-+            try:
-+                p = subprocess.Popen(cmd, stdout=subprocess.PIPE,
-+                                     stderr=subprocess.PIPE,
-+                                     universal_newlines=True)
-+                out, _ = p.communicate()
-+                res = re.search(expr, os.fsdecode(out))
-+                if res:
-+                    result = res.group(0)
-+            except Exception as e:
-+                pass  # result will be None
-+            return result
-+
-         def find_library(name):
--            return _findSoname_ldconfig(name) or _get_soname(_findLib_gcc(name))
-+            # See issue #9998
-+            return _findSoname_ldconfig(name) or \
-+                   _get_soname(_findLib_gcc(name) or _findLib_ld(name))
- 
- ################################################################
- # test code
--- 
-2.14.1
-
diff --git a/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch b/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch
deleted file mode 100644
index 3cb77a10725..00000000000
--- a/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-From 81bd99ad9058feb1d0361bc8862e8567c21a6142 Mon Sep 17 00:00:00 2001
-From: Frederik Rietdijk <fridh@fridh.nl>
-Date: Mon, 28 Aug 2017 09:24:06 +0200
-Subject: [PATCH] Don't use ldconfig and speed up uuid load
-
----
- Lib/ctypes/util.py | 52 ++--------------------------------------------------
- Lib/uuid.py        | 50 ++------------------------------------------------
- 2 files changed, 4 insertions(+), 98 deletions(-)
-
-diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
-index 595113bffd..780cd5d21b 100644
---- a/Lib/ctypes/util.py
-+++ b/Lib/ctypes/util.py
-@@ -88,28 +88,7 @@ elif os.name == "posix":
-     import re, tempfile
- 
-     def _findLib_gcc(name):
--        expr = r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name)
--        fdout, ccout = tempfile.mkstemp()
--        os.close(fdout)
--        cmd = 'if type gcc >/dev/null 2>&1; then CC=gcc; elif type cc >/dev/null 2>&1; then CC=cc;else exit 10; fi;' \
--              'LANG=C LC_ALL=C $CC -Wl,-t -o ' + ccout + ' 2>&1 -l' + name
--        try:
--            f = os.popen(cmd)
--            try:
--                trace = f.read()
--            finally:
--                rv = f.close()
--        finally:
--            try:
--                os.unlink(ccout)
--            except FileNotFoundError:
--                pass
--        if rv == 10:
--            raise OSError('gcc or cc command not found')
--        res = re.search(expr, trace)
--        if not res:
--            return None
--        return res.group(0)
-+        return None
- 
- 
-     if sys.platform == "sunos5":
-@@ -200,34 +179,7 @@ elif os.name == "posix":
-     else:
- 
-         def _findSoname_ldconfig(name):
--            import struct
--            if struct.calcsize('l') == 4:
--                machine = os.uname().machine + '-32'
--            else:
--                machine = os.uname().machine + '-64'
--            mach_map = {
--                'x86_64-64': 'libc6,x86-64',
--                'ppc64-64': 'libc6,64bit',
--                'sparc64-64': 'libc6,64bit',
--                's390x-64': 'libc6,64bit',
--                'ia64-64': 'libc6,IA-64',
--                }
--            abi_type = mach_map.get(machine, 'libc6')
--
--            # XXX assuming GLIBC's ldconfig (with option -p)
--            regex = os.fsencode(
--                '\s+(lib%s\.[^\s]+)\s+\(%s' % (re.escape(name), abi_type))
--            try:
--                with subprocess.Popen(['/sbin/ldconfig', '-p'],
--                                      stdin=subprocess.DEVNULL,
--                                      stderr=subprocess.DEVNULL,
--                                      stdout=subprocess.PIPE,
--                                      env={'LC_ALL': 'C', 'LANG': 'C'}) as p:
--                    res = re.search(regex, p.stdout.read())
--                    if res:
--                        return os.fsdecode(res.group(1))
--            except OSError:
--                pass
-+            return None
- 
-         def find_library(name):
-             return _findSoname_ldconfig(name) or _get_soname(_findLib_gcc(name))
-diff --git a/Lib/uuid.py b/Lib/uuid.py
-index 1061bffc43..846f5819f5 100644
---- a/Lib/uuid.py
-+++ b/Lib/uuid.py
-@@ -451,57 +451,11 @@ def _netbios_getnode():
-         return ((bytes[0]<<40) + (bytes[1]<<32) + (bytes[2]<<24) +
-                 (bytes[3]<<16) + (bytes[4]<<8) + bytes[5])
- 
--# Thanks to Thomas Heller for ctypes and for his help with its use here.
- 
--# If ctypes is available, use it to find system routines for UUID generation.
--# XXX This makes the module non-thread-safe!
- _uuid_generate_random = _uuid_generate_time = _UuidCreate = None
--try:
--    import ctypes, ctypes.util
- 
--    # The uuid_generate_* routines are provided by libuuid on at least
--    # Linux and FreeBSD, and provided by libc on Mac OS X.
--    for libname in ['uuid', 'c']:
--        try:
--            lib = ctypes.CDLL(ctypes.util.find_library(libname))
--        except:
--            continue
--        if hasattr(lib, 'uuid_generate_random'):
--            _uuid_generate_random = lib.uuid_generate_random
--        if hasattr(lib, 'uuid_generate_time'):
--            _uuid_generate_time = lib.uuid_generate_time
--            if _uuid_generate_random is not None:
--                break  # found everything we were looking for
--
--    # The uuid_generate_* functions are broken on MacOS X 10.5, as noted
--    # in issue #8621 the function generates the same sequence of values
--    # in the parent process and all children created using fork (unless
--    # those children use exec as well).
--    #
--    # Assume that the uuid_generate functions are broken from 10.5 onward,
--    # the test can be adjusted when a later version is fixed.
--    import sys
--    if sys.platform == 'darwin':
--        import os
--        if int(os.uname().release.split('.')[0]) >= 9:
--            _uuid_generate_random = _uuid_generate_time = None
--
--    # On Windows prior to 2000, UuidCreate gives a UUID containing the
--    # hardware address.  On Windows 2000 and later, UuidCreate makes a
--    # random UUID and UuidCreateSequential gives a UUID containing the
--    # hardware address.  These routines are provided by the RPC runtime.
--    # NOTE:  at least on Tim's WinXP Pro SP2 desktop box, while the last
--    # 6 bytes returned by UuidCreateSequential are fixed, they don't appear
--    # to bear any relationship to the MAC address of any network device
--    # on the box.
--    try:
--        lib = ctypes.windll.rpcrt4
--    except:
--        lib = None
--    _UuidCreate = getattr(lib, 'UuidCreateSequential',
--                          getattr(lib, 'UuidCreate', None))
--except:
--    pass
-+_uuid_generate_time = _UuidCreate = None
-+
- 
- def _unixdll_getnode():
-     """Get the hardware address on Unix using ctypes."""
--- 
-2.14.1
-
diff --git a/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch b/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch
deleted file mode 100644
index b73f62b97ec..00000000000
--- a/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 2779658..902d0eb 100644
---- a/setup.py
-+++ b/setup.py
-@@ -1699,9 +1699,6 @@ class PyBuildExt(build_ext):
-         # Rather than complicate the code below, detecting and building
-         # AquaTk is a separate method. Only one Tkinter will be built on
-         # Darwin - either AquaTk, if it is found, or X11 based Tk.
--        if (host_platform == 'darwin' and
--            self.detect_tkinter_darwin(inc_dirs, lib_dirs)):
--            return
-
-         # Assume we haven't found any of the libraries or include files
-         # The versions with dots are used on Unix, and the versions without
-@@ -1747,22 +1744,6 @@ class PyBuildExt(build_ext):
-             if dir not in include_dirs:
-                 include_dirs.append(dir)
-
--        # Check for various platform-specific directories
--        if host_platform == 'sunos5':
--            include_dirs.append('/usr/openwin/include')
--            added_lib_dirs.append('/usr/openwin/lib')
--        elif os.path.exists('/usr/X11R6/include'):
--            include_dirs.append('/usr/X11R6/include')
--            added_lib_dirs.append('/usr/X11R6/lib64')
--            added_lib_dirs.append('/usr/X11R6/lib')
--        elif os.path.exists('/usr/X11R5/include'):
--            include_dirs.append('/usr/X11R5/include')
--            added_lib_dirs.append('/usr/X11R5/lib')
--        else:
--            # Assume default location for X11
--            include_dirs.append('/usr/X11/include')
--            added_lib_dirs.append('/usr/X11/lib')
--
-         # If Cygwin, then verify that X is installed before proceeding
-         if host_platform == 'cygwin':
-             x11_inc = find_file('X11/Xlib.h', [], include_dirs)
-@@ -1786,10 +1767,6 @@ class PyBuildExt(build_ext):
-         if host_platform in ['aix3', 'aix4']:
-             libs.append('ld')
-
--        # Finally, link with the X11 libraries (not appropriate on cygwin)
--        if host_platform != "cygwin":
--            libs.append('X11')
--
-         ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'],
-                         define_macros=[('WITH_APPINIT', 1)] + defs,
-                         include_dirs = include_dirs,
diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix
index 7bbb1a5e1c9..7ef3c4c8968 100644
--- a/pkgs/development/libraries/SDL/default.nix
+++ b/pkgs/development/libraries/SDL/default.nix
@@ -1,15 +1,16 @@
-{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, audiofile, libcap, libiconv
-, openglSupport ? false, libGL, libGLU
-, alsaSupport ? true, alsaLib
-, x11Support ? stdenv.hostPlatform == stdenv.buildPlatform, libXext, libICE, libXrandr
-, pulseaudioSupport ? true, libpulseaudio
+{ stdenv, config, libGLSupported, fetchurl, fetchpatch, pkgconfig, audiofile, libcap, libiconv
+, openglSupport ? libGLSupported, libGL, libGLU
+, alsaSupport ? stdenv.isLinux, alsaLib
+, x11Support ? !stdenv.isCygwin, libXext, libICE, libXrandr
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio
 , OpenGL, CoreAudio, CoreServices, AudioUnit, Kernel, Cocoa
+, cf-private
 }:
 
 # NOTE: When editing this expression see if the same change applies to
 # SDL2 expression too
 
-with lib;
+with stdenv.lib;
 
 assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport;
 assert openglSupport -> (stdenv.isDarwin || x11Support && libGL != null && libGLU != null);
@@ -41,7 +42,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ]
     ++ optional (!stdenv.hostPlatform.isMinGW) audiofile
-    ++ optionals stdenv.isDarwin [ AudioUnit CoreAudio CoreServices Kernel OpenGL ];
+    ++ optionals stdenv.isDarwin [
+      AudioUnit CoreAudio CoreServices Kernel OpenGL
+      # Needed for NSDefaultRunLoopMode symbols.
+      cf-private
+    ];
 
   configureFlags = [
     "--disable-oss"
@@ -109,7 +114,7 @@ stdenv.mkDerivation rec {
   postFixup = ''
     for lib in $out/lib/*.so* ; do
       if [[ -L "$lib" ]]; then
-        patchelf --set-rpath "$(patchelf --print-rpath $lib):${lib.makeLibraryPath propagatedBuildInputs}" "$lib"
+        patchelf --set-rpath "$(patchelf --print-rpath $lib):${makeLibraryPath propagatedBuildInputs}" "$lib"
       fi
     done
   '';
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index 7d8f5b2caee..07a63a366f1 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -1,31 +1,31 @@
-{ stdenv, lib, fetchurl, pkgconfig, pruneLibtoolFiles
-, openglSupport ? false, libGL
-, alsaSupport ? true, alsaLib
-, x11Support ? true, libX11, xproto, libICE, libXi, libXScrnSaver, libXcursor, libXinerama, libXext, libXxf86vm, libXrandr
-, waylandSupport ? true, wayland, wayland-protocols, libxkbcommon
-, dbusSupport ? false, dbus
+{ stdenv, config, libGLSupported, fetchurl, pkgconfig, pruneLibtoolFiles
+, openglSupport ? libGLSupported, libGL
+, alsaSupport ? stdenv.isLinux, alsaLib
+, x11Support ? !stdenv.isCygwin, libX11, xproto, libICE, libXi, libXScrnSaver, libXcursor, libXinerama, libXext, libXxf86vm, libXrandr
+, waylandSupport ? stdenv.isLinux, wayland, wayland-protocols, libxkbcommon
+, dbusSupport ? stdenv.isLinux, dbus
 , udevSupport ? false, udev
 , ibusSupport ? false, ibus
-, pulseaudioSupport ? true, libpulseaudio
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio
 , AudioUnit, Cocoa, CoreAudio, CoreServices, ForceFeedback, OpenGL
-, audiofile, libiconv
+, audiofile, cf-private, libiconv
 }:
 
 # NOTE: When editing this expression see if the same change applies to
 # SDL expression too
 
-with lib;
+with stdenv.lib;
 
 assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport;
 assert openglSupport -> (stdenv.isDarwin || x11Support && libGL != null);
 
 stdenv.mkDerivation rec {
   name = "SDL2-${version}";
-  version = "2.0.8";
+  version = "2.0.9";
 
   src = fetchurl {
     url = "https://www.libsdl.org/release/${name}.tar.gz";
-    sha256 = "1v4js1gkr75hzbxzhwzzif0sf9g07234sd23x1vdaqc661bprizd";
+    sha256 = "1c94ndagzkdfqaa838yqg589p1nnqln8mv0hpwfhrkbfczf8cl95";
   };
 
   outputs = [ "out" "dev" ];
@@ -54,7 +54,11 @@ stdenv.mkDerivation rec {
   buildInputs = [ audiofile libiconv ]
     ++ dlopenBuildInputs
     ++ optional  ibusSupport ibus
-    ++ optionals stdenv.isDarwin [ AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL ];
+    ++ optionals stdenv.isDarwin [
+      AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL
+      # Needed for NSDefaultRunLoopMode symbols.
+      cf-private
+    ];
 
   # /build/SDL2-2.0.7/src/video/wayland/SDL_waylandevents.c:41:10: fatal error:
   #   pointer-constraints-unstable-v1-client-protocol.h: No such file or directory
diff --git a/pkgs/development/libraries/SDL2_image/default.nix b/pkgs/development/libraries/SDL2_image/default.nix
index 17a2dd14b27..5ab4a0dc6c7 100644
--- a/pkgs/development/libraries/SDL2_image/default.nix
+++ b/pkgs/development/libraries/SDL2_image/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "SDL2_image-${version}";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchurl {
     url = "https://www.libsdl.org/projects/SDL_image/release/${name}.tar.gz";
-    sha256 = "0s13dmakn21q6yw8avl67d4zkxzl1wap6l5nwf6cvzrmlxfw441m";
+    sha256 = "1b6f7002bm007y3zpyxb5r6ag0lml51jyvx1pwpj9sq24jfc8kp7";
   };
 
   buildInputs = [ SDL2 libpng libjpeg libtiff libungif libXpm zlib ]
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
index 3819aeb3c31..61e15d621bc 100644
--- a/pkgs/development/libraries/SDL2_mixer/default.nix
+++ b/pkgs/development/libraries/SDL2_mixer/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "SDL2_mixer-${version}";
-  version = "2.0.2";
+  version = "2.0.4";
 
   src = fetchurl {
     url = "https://www.libsdl.org/projects/SDL_mixer/release/${name}.tar.gz";
-    sha256 = "1fw3kkqi5346ai5if4pxrcbhs5c4vv3a4smgz6fl6kyaxwkmwqaf";
+    sha256 = "0694vsz5bjkcdgfdra6x9fq8vpzrl8m6q96gh58df7065hw5mkxl";
   };
 
   preAutoreconf = ''
diff --git a/pkgs/development/libraries/bamf/default.nix b/pkgs/development/libraries/bamf/default.nix
index 3fcdbca34f5..b2c7bf5d644 100644
--- a/pkgs/development/libraries/bamf/default.nix
+++ b/pkgs/development/libraries/bamf/default.nix
@@ -3,14 +3,15 @@
 , xorgserver, dbus, python2 }:
 
 stdenv.mkDerivation rec {
-  name = "bamf-2018-02-07";
+  name = "bamf-${version}";
+  version = "0.5.4";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchgit {
     url = https://git.launchpad.net/~unity-team/bamf;
-    rev = "0.5.3+18.04.20180207.2-0ubuntu1";
-    sha256 = "0hvbgzi0mzzzvcamd9mi1ykbk2l6zxffspyk5fpik8bij56nhzym";
+    rev = version;
+    sha256 = "1klvij1wyhdj5d8sr3b16pfixc1yk8ihglpjykg7zrr1f50jfgsz";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/clucene-core/2.x.nix b/pkgs/development/libraries/clucene-core/2.x.nix
index a14dec37047..004c01a5b69 100644
--- a/pkgs/development/libraries/clucene-core/2.x.nix
+++ b/pkgs/development/libraries/clucene-core/2.x.nix
@@ -12,7 +12,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ boost zlib ];
 
-  cmakeFlags = [ "-DBUILD_CONTRIBS=ON" "-DBUILD_CONTRIBS_LIB=ON" ];
+  cmakeFlags = [
+    "-DBUILD_CONTRIBS=ON"
+    "-DBUILD_CONTRIBS_LIB=ON"
+    "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON"
+  ];
 
   patches = # From debian
     [ ./Fix-pkgconfig-file-by-adding-clucene-shared-library.patch
@@ -20,13 +24,9 @@ stdenv.mkDerivation rec {
       ./Install-contribs-lib.patch
     ] ++ stdenv.lib.optionals stdenv.isDarwin [ ./fix-darwin.patch ];
 
-  postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
-    install_name_tool -change libclucene-shared.1.dylib \
-        $out/lib/libclucene-shared.1.dylib \
-        $out/lib/libclucene-core.1.dylib
-  '';
-
-  doCheck = false; # fails with "Unable to find executable: /build/clucene-core-2.3.3.4/build/bin/cl_test"
+  # fails with "Unable to find executable:
+  # /build/clucene-core-2.3.3.4/build/bin/cl_test"
+  doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Core library for full-featured text search engine";
diff --git a/pkgs/development/libraries/glbinding/default.nix b/pkgs/development/libraries/glbinding/default.nix
index 339e0d8d60b..60778df663a 100644
--- a/pkgs/development/libraries/glbinding/default.nix
+++ b/pkgs/development/libraries/glbinding/default.nix
@@ -2,13 +2,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "glbinding";
-  version = "2.1.4";
+  version = "3.0.2";
 
   src = fetchFromGitHub {
     owner = "cginternals";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1yic3p2iqzxc7wrjnqclx7vcaaqx5fiysq9rqbi6v390jqkg3zlz";
+    sha256 = "1lvcps0n0p8gg0p2bkm5aq4b4kv8bvxlaaf4fcham2pgbgzil9d4";
   };
 
   buildInputs = [ cmake libGLU xlibsWrapper ];
diff --git a/pkgs/development/libraries/http-parser/default.nix b/pkgs/development/libraries/http-parser/default.nix
index 5d4eae4e063..02d76700068 100644
--- a/pkgs/development/libraries/http-parser/default.nix
+++ b/pkgs/development/libraries/http-parser/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2Packages, utillinux, fixDarwinDylibNames }:
+{ stdenv, fetchurl }:
 
 let
   version = "2.8.1";
@@ -10,38 +10,18 @@ in stdenv.mkDerivation {
     sha256 = "15ids8k2f0xhnnxh4m85w2f78pg5ndiwrpl24kyssznnp1l5yqai";
   };
 
+  NIX_CFLAGS_COMPILE = "-Wno-error";
   patches = [ ./build-shared.patch ];
+  makeFlags = [ "DESTDIR=" "PREFIX=$(out)" ];
+  buildFlags = "library";
+  doCheck = true;
+  checkTarget = "test";
 
-  configurePhase = "gyp -f make --depth=`pwd` http_parser.gyp";
-
-  buildFlags = [ "BUILDTYPE=Release" ];
-
-  buildInputs =
-    [ python2Packages.gyp ]
-    ++ stdenv.lib.optional stdenv.isLinux utillinux
-    ++ stdenv.lib.optionals stdenv.isDarwin [ python2Packages.python fixDarwinDylibNames ];
-
-  doCheck = !stdenv.isDarwin;
-
-  checkPhase = ''
-    out/Release/test-nonstrict
-    out/Release/test-strict
-  '';
-
-  installPhase = ''
-    mkdir -p $out/lib
-    mv out/Release/${if stdenv.isDarwin then "*.dylib" else "lib.target/*"} $out/lib
-
-    mkdir -p $out/include
-    mv http_parser.h $out/include
-  '';
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "An HTTP message parser written in C";
-
     homepage = https://github.com/joyent/http-parser;
-
-    license = stdenv.lib.licenses.mit;
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = with maintainers; [ matthewbauer ];
+    license = licenses.mit;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/java/lombok/default.nix b/pkgs/development/libraries/java/lombok/default.nix
index 5ec4634d632..7f932d52dc4 100644
--- a/pkgs/development/libraries/java/lombok/default.nix
+++ b/pkgs/development/libraries/java/lombok/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "lombok-1.16.22";
+  name = "lombok-1.18.4";
 
   src = fetchurl {
     url = "https://projectlombok.org/downloads/${name}.jar";
-    sha256 = "1hr2jjlqdnxrw7ablqkf7ljc6n2q6a04ww14di06zs6i3l82zzpa";
+    sha256 = "0hlpycnmzd71ihn59hzf445dvwky2lkv57jimx91i6v7xcnr5wrr";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/libraries/libaccounts-glib/default.nix b/pkgs/development/libraries/libaccounts-glib/default.nix
index 16e9f213ed4..e8e23ed5ffb 100644
--- a/pkgs/development/libraries/libaccounts-glib/default.nix
+++ b/pkgs/development/libraries/libaccounts-glib/default.nix
@@ -1,29 +1,48 @@
-{ stdenv, fetchFromGitLab, autoconf, automake, glib
-, gtk-doc, libtool, libxml2, libxslt, pkgconfig, sqlite }:
+{ stdenv, fetchFromGitLab, meson, ninja, glib, check, python3, vala, gtk-doc, glibcLocales
+, libxml2, libxslt, pkgconfig, sqlite, docbook_xsl, docbook_xml_dtd_43, gobjectIntrospection }:
 
-let version = "1.23"; in
 stdenv.mkDerivation rec {
   name = "libaccounts-glib-${version}";
+  version = "1.24";
+
+  outputs = [ "out" "dev" "devdoc" "py" ];
 
   src = fetchFromGitLab {
-    sha256 = "11cvl3ch0y93756k90mw1swqv0ylr8qgalmvcn5yari8z4sg6cgg";
-    rev = "VERSION_${version}";
-    repo = "libaccounts-glib";
     owner = "accounts-sso";
+    repo = "libaccounts-glib";
+    rev = version;
+    sha256 = "0y8smg1rd279lrr9ad8b499i8pbkajmwd4xn41rdh9h93hs9apn7";
   };
 
-  buildInputs = [ glib libxml2 libxslt sqlite ];
-  nativeBuildInputs = [ autoconf automake gtk-doc libtool pkgconfig ];
+  # See: https://gitlab.com/accounts-sso/libaccounts-glib/merge_requests/22
+  patches = [ ./py-override.patch ];
+
+  nativeBuildInputs = [ 
+    check
+    docbook_xml_dtd_43
+    docbook_xsl
+    glibcLocales
+    gobjectIntrospection
+    gtk-doc
+    meson
+    ninja
+    pkgconfig
+    vala
+  ];
 
-  postPatch = ''
-    NOCONFIGURE=1 ./autogen.sh
-  '';
+  buildInputs = [
+    glib
+    libxml2
+    libxslt
+    python3.pkgs.pygobject3
+    sqlite
+  ];
 
-  configurePhase = ''
-    HAVE_GCOV_FALSE="#" ./configure $configureFlags --prefix=$out
-  '';
+  LC_ALL = "en_US.UTF-8";
 
-  NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; # since glib-2.46
+  mesonFlags = [
+    "-Dpy-overrides-dir=${placeholder ''py''}/${python3.sitePackages}/gi/overrides"
+  ];
 
   meta = with stdenv.lib; {
     description = "Library for managing accounts which can be used from GLib applications";
diff --git a/pkgs/development/libraries/libaccounts-glib/py-override.patch b/pkgs/development/libraries/libaccounts-glib/py-override.patch
new file mode 100644
index 00000000000..4179f4fa0af
--- /dev/null
+++ b/pkgs/development/libraries/libaccounts-glib/py-override.patch
@@ -0,0 +1,38 @@
+diff --git a/libaccounts-glib/pygobject/meson.build b/libaccounts-glib/pygobject/meson.build
+index fa1f4a0..588c4ce 100644
+--- a/libaccounts-glib/pygobject/meson.build
++++ b/libaccounts-glib/pygobject/meson.build
+@@ -1,11 +1,19 @@
+-python3 = import('python3')
+-python_exec = python3.find_python()
+-python_exec_result = run_command(python_exec, ['-c', 'import gi; from os.path import abspath; print(abspath(gi._overridesdir))'])
++py_override = get_option('py-overrides-dir')
+ 
+-if python_exec_result.returncode() != 0
+-    error('Failed to retreive the python GObject override directory')
++if py_override == ''
++    python3 = import('python3')
++    python_exec = python3.find_python()
++    
++    python_exec_result = run_command(python_exec, ['-c', 'import gi; from os.path import abspath; print(abspath(gi._overridesdir))'])
++
++    if python_exec_result.returncode() != 0
++        error('Failed to retreive the python GObject override directory')
++    endif
++
++    py_override = python_exec_result.stdout().strip()
+ endif
+ 
+-install_data('Accounts.py',
+-    install_dir: join_paths(python_exec_result.stdout().strip())
++install_data(
++    'Accounts.py',
++    install_dir: py_override
+ )
+diff --git a/meson_options.txt  b/meson_options.txt 
+new file mode 100644
+index 0000000..2c33804
+--- /dev/null
++++ b/meson_options.txt 	
+@@ -0,0 +1 @@
++option('py-overrides-dir', type : 'string', value : '', description: 'Path to pygobject overrides directory')
diff --git a/pkgs/development/libraries/libdigidocpp/default.nix b/pkgs/development/libraries/libdigidocpp/default.nix
index 3df820bc126..e3172c2fc1f 100644
--- a/pkgs/development/libraries/libdigidocpp/default.nix
+++ b/pkgs/development/libraries/libdigidocpp/default.nix
@@ -2,12 +2,12 @@
 , xercesc, xml-security-c, pkgconfig, xsd, zlib, xalanc, xxd }:
 
 stdenv.mkDerivation rec {
-  version = "3.13.6";
+  version = "3.13.7";
   name = "libdigidocpp-${version}";
 
   src = fetchurl {
      url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz";
-     sha256 = "1sdrj7664737k3kbnj2xrnilnx5ifj8hg42z8pxagb0j81x0pnqj";
+     sha256 = "1d8yx8avijp55p53fz4pd4ihjz6nyap0g8dq23bwg33411mdiqff";
   };
 
   nativeBuildInputs = [ cmake pkgconfig xxd ];
diff --git a/pkgs/development/libraries/libestr/default.nix b/pkgs/development/libraries/libestr/default.nix
index 96de7eb7b3c..df67b849cd3 100644
--- a/pkgs/development/libraries/libestr/default.nix
+++ b/pkgs/development/libraries/libestr/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libestr-0.1.10";
+  name = "libestr-0.1.11";
 
   src = fetchurl {
     url = "http://libestr.adiscon.com/files/download/${name}.tar.gz";
-    sha256 = "0g3hmh3wxgjbn5g6cgy2l0ja806jd0ayp22bahcds3kmdq95wrdx";
+    sha256 = "0910ifzcs8kpd3srrr4fvbacgh2zrc6yn7i4rwfj6jpzhlkjnqs6";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix
index 1d8dd7e20f1..e750c2c6c70 100644
--- a/pkgs/development/libraries/libmtp/default.nix
+++ b/pkgs/development/libraries/libmtp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libusb1, libiconv }:
 
 stdenv.mkDerivation rec {
-  name = "libmtp-1.1.15";
+  name = "libmtp-1.1.16";
 
   src = fetchurl {
     url = "mirror://sourceforge/libmtp/${name}.tar.gz";
-    sha256 = "089h79nkz7wcr3lbqi7025l8p75hbp0aigxk3wdk2zkm8q5r0h6h";
+    sha256 = "185vh9bds6dcy00ycggg69g4v7m3api40zv8vrcfb3fk3vfzjs2v";
   };
 
   outputs = [ "bin" "dev" "out" ];
diff --git a/pkgs/development/libraries/libosmium/default.nix b/pkgs/development/libraries/libosmium/default.nix
new file mode 100644
index 00000000000..e889a3cb275
--- /dev/null
+++ b/pkgs/development/libraries/libosmium/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, protozero, expat, zlib, bzip2, boost }:
+
+stdenv.mkDerivation rec {
+  name = "libosmium-${version}";
+  version = "2.14.2";
+
+  src = fetchFromGitHub {
+    owner = "osmcode";
+    repo = "libosmium";
+    rev = "v${version}";
+    sha256 = "123ri1l0a2b9fljgpwsl7z2w4i3kmgxz79d4ns9z4mwbp8sw0250";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ protozero zlib bzip2 expat boost ];
+
+
+  meta = with stdenv.lib; {
+    description = "Fast and flexible C++ library for working with OpenStreetMap data";
+    homepage = "https://osmcode.org/libosmium/";
+    license = licenses.boost;
+    maintainers = with maintainers; [ das-g ];
+  };
+}
diff --git a/pkgs/development/libraries/libui/default.nix b/pkgs/development/libraries/libui/default.nix
index 9eb2fe04fe6..150e299ac42 100644
--- a/pkgs/development/libraries/libui/default.nix
+++ b/pkgs/development/libraries/libui/default.nix
@@ -13,7 +13,7 @@ in
       sha256 = "1lpbfa298c61aarlzgp7vghrmxg1274pzxh1j9isv8x758gk6mfn";
     };
 
-  nativeBuildInputs = [ pkgconfig ];
+    nativeBuildInputs = [ pkgconfig ];
     buildInputs = [ cmake ] ++
       (if backend == "darwin" then [darwin.apple_sdk.frameworks.Cocoa]
        else if backend == "unix" then [gtk3]
@@ -22,10 +22,6 @@ in
     preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
       sed -i 's/set(CMAKE_OSX_DEPLOYMENT_TARGET "10.8")//' ./CMakeLists.txt
     '';
-    cmakeFlags = stdenv.lib.optionals stdenv.isDarwin [
-      "-DCMAKE_OSX_SYSROOT="
-      "-DCMAKE_OSX_DEPLOYMENT_TARGET="
-    ];
 
     installPhase = ''
       mkdir -p $out/{include,lib}
diff --git a/pkgs/development/libraries/libunarr/default.nix b/pkgs/development/libraries/libunarr/default.nix
new file mode 100644
index 00000000000..e21f9400848
--- /dev/null
+++ b/pkgs/development/libraries/libunarr/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, cmake }:
+
+stdenv.mkDerivation rec {
+  name = "libunarr-${version}";
+  version = "1.0.1";
+
+  src = fetchurl {
+    url = "https://github.com/selmf/unarr/releases/download/v${version}/unarr-${version}.tar.xz";
+    sha256 = "1db500k6w90qn6qb4j3zcczailmmv81q9lv4bwq516hbncg5p4sl";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/selmf/unarr;
+    description = "A lightweight decompression library with support for rar, tar and zip archives";
+    license = licenses.lgpl3;
+  };
+}
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 2af35444a27..91813b4180e 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -25,20 +25,20 @@
 
 with stdenv.lib;
 
-if ! lists.elem stdenv.hostPlatform.system platforms.mesaPlatforms then
+if ! elem stdenv.hostPlatform.system platforms.mesaPlatforms then
   throw "unsupported platform for Mesa"
 else
 
 let
   defaultGalliumDrivers =
-    optionals (builtins.elem "drm" eglPlatforms)
+    optionals (elem "drm" eglPlatforms)
     (if stdenv.isAarch32
     then ["virgl" "nouveau" "freedreno" "vc4" "etnaviv" "imx"]
     else if stdenv.isAarch64
     then ["virgl" "nouveau" "vc4" ]
     else ["virgl" "svga" "i915" "r300" "r600" "radeonsi" "nouveau"]);
   defaultDriDrivers =
-    optionals (builtins.elem "drm" eglPlatforms)
+    optionals (elem "drm" eglPlatforms)
     (if (stdenv.isAarch32 || stdenv.isAarch64)
     then ["nouveau"]
     else ["i915" "i965" "nouveau" "radeon" "r200"]);
diff --git a/pkgs/development/libraries/nss_wrapper/default.nix b/pkgs/development/libraries/nss_wrapper/default.nix
index 969e7534eac..5fc57a2ef67 100644
--- a/pkgs/development/libraries/nss_wrapper/default.nix
+++ b/pkgs/development/libraries/nss_wrapper/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "nss_wrapper-1.1.3";
+  name = "nss_wrapper-1.1.5";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/${name}.tar.gz";
-    sha256 = "18rsaw8r8xwn5003arc7xw8iliwbmzxfxgacmp6lhsdwqla4rf69";
+    sha256 = "0srk7hffhkwl811q4pjy0n0gm8rh26akb2bh6avcpbns0zzn9ldn";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/opencollada/default.nix b/pkgs/development/libraries/opencollada/default.nix
index b47c9a8e561..804271202d1 100644
--- a/pkgs/development/libraries/opencollada/default.nix
+++ b/pkgs/development/libraries/opencollada/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "opencollada-${version}";
 
-  version = "1.6.65";
+  version = "1.6.66";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCOLLADA";
     rev = "v${version}";
-    sha256 = "1vxb0b1dqcfwyhb36gjbn0fjdgn3hb03l68jbs0jzx6i2lh8bsh9";
+    sha256 = "0gplw4qa5faphl29ksj9lkzdsnkbgs018n8rz1khhwsqypchygyw";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/pcl/default.nix b/pkgs/development/libraries/pcl/default.nix
index 9fb2e0b7fed..14eff45e4a1 100644
--- a/pkgs/development/libraries/pcl/default.nix
+++ b/pkgs/development/libraries/pcl/default.nix
@@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
 
     ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa AGL cf-private ];
   cmakeFlags = stdenv.lib.optionals stdenv.isDarwin [
-    "-DCMAKE_OSX_SYSROOT=" "-DCMAKE_OSX_DEPLOYMENT_TARGET="
     "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks"
   ];
 
diff --git a/pkgs/development/libraries/podofo/default.nix b/pkgs/development/libraries/podofo/default.nix
index 1704703f801..ce3f5ab6b78 100644
--- a/pkgs/development/libraries/podofo/default.nix
+++ b/pkgs/development/libraries/podofo/default.nix
@@ -12,8 +12,6 @@ stdenv.mkDerivation rec {
     sha256 = "0wj0y4zcmj4q79wrn3vv3xq4bb0vhhxs8yifafwy9f2sjm83c5p9";
   };
 
-  propagatedBuildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng libidn expat ];
-
   patches = [
     # https://sourceforge.net/p/podofo/tickets/24/
     (fetchpatch {
@@ -23,18 +21,21 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  # TODO(@Dridus) remove the ++ ghc5 at next hash break
-  nativeBuildInputs = [ cmake pkgconfig ] ++ stdenv.lib.optional stdenv.isLinux gcc5;
+  outputs = [ "out" "dev" "lib" ];
+
+  nativeBuildInputs = [ cmake pkgconfig ];
 
-  # TODO(@Dridus) remove the ++ libc at next hash break
-  buildInputs = [ lua5 ] ++ stdenv.lib.optional stdenv.isLinux stdenv.cc.libc;
+  buildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng
+                  libidn expat lua5 ];
 
-  cmakeFlags = "-DPODOFO_BUILD_SHARED=ON -DPODOFO_BUILD_STATIC=OFF";
+  cmakeFlags = [
+    "-DPODOFO_BUILD_SHARED=ON"
+    "-DPODOFO_BUILD_STATIC=OFF"
+    "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON"
+  ];
 
-  postFixup = stdenv.lib.optionalString stdenv.isDarwin ''
-    for i in $out/bin/* ; do
-      install_name_tool -change libpodofo.${version}.dylib $out/lib/libpodofo.${version}.dylib "$i"
-    done
+  postInstall = ''
+    moveToOutput lib "$lib"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/protozero/default.nix b/pkgs/development/libraries/protozero/default.nix
new file mode 100644
index 00000000000..c2d8f5e74c9
--- /dev/null
+++ b/pkgs/development/libraries/protozero/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  name = "protozero-${version}";
+  version = "1.6.3";
+
+  src = fetchFromGitHub {
+    owner = "mapbox";
+    repo = "protozero";
+    rev = "v${version}";
+    sha256 = "0lalk6hp7hqfn4fhhl2zb214idwm4y8dj32vi383arckzmsryhiw";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "Minimalistic protocol buffer decoder and encoder in C++";
+    homepage = "https://github.com/mapbox/protozero";
+    license = with licenses; [ bsd2 asl20 ];
+    maintainers = with maintainers; [ das-g ];
+  };
+}
diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix
index d65fe9d219c..bc4b0a8f33b 100644
--- a/pkgs/development/libraries/qt-5/5.11/default.nix
+++ b/pkgs/development/libraries/qt-5/5.11/default.nix
@@ -33,7 +33,7 @@ let
 
   qtCompatVersion = "5.11";
 
-  mirror = "http://download.qt.io";
+  mirror = "https://download.qt.io";
   srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; } // {
     # Community port of the now unmaintained upstream qtwebkit.
     qtwebkit = {
diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
index 0d9cb81afda..f5f5c69455f 100644
--- a/pkgs/development/libraries/qt-5/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -18,7 +18,7 @@
   withGtk3 ? false, dconf ? null, gtk3 ? null,
 
   # options
-  libGLSupported ? (!stdenv.isDarwin),
+  libGLSupported ? !stdenv.isDarwin,
   libGL,
   buildExamples ? false,
   buildTests ? false,
@@ -53,6 +53,7 @@ stdenv.mkDerivation {
       if stdenv.isDarwin
       then with darwin.apple_sdk.frameworks;
         [
+          # TODO: move to buildInputs, this should not be propagated.
           AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth
           CoreLocation CoreServices DiskArbitration Foundation OpenGL
           darwin.libobjc libiconv
@@ -77,6 +78,9 @@ stdenv.mkDerivation {
       [ libinput ]
       ++ lib.optional withGtk3 gtk3
     )
+    ++ lib.optional stdenv.isDarwin
+      # Needed for OBJC_CLASS_$_NSDate symbols.
+      [ darwin.cf-private ]
     ++ lib.optional developerBuild gdb
     ++ lib.optional (cups != null) cups
     ++ lib.optional (mysql != null) mysql.connector-c
diff --git a/pkgs/development/libraries/science/math/scalapack/default.nix b/pkgs/development/libraries/science/math/scalapack/default.nix
index 83e177c66c1..3961374a9b1 100644
--- a/pkgs/development/libraries/science/math/scalapack/default.nix
+++ b/pkgs/development/libraries/science/math/scalapack/default.nix
@@ -1,11 +1,7 @@
-{ stdenv
-, fetchurl
-, gfortran
-, cmake
-, blas
-, liblapack
-, mpi
-}:
+{ stdenv, fetchurl, cmake, openssh
+, gfortran, mpi, openblasCompat
+} :
+
 
 stdenv.mkDerivation rec {
   name = "scalapack-${version}";
@@ -16,12 +12,38 @@ stdenv.mkDerivation rec {
     sha256 = "0p1r61ss1fq0bs8ynnx7xq4wwsdvs32ljvwjnx6yxr8gd6pawx0c";
   };
 
-  buildInputs = [ cmake mpi liblapack blas gfortran ];
+  nativeBuildInputs = [ cmake openssh ];
+  buildInputs = [ mpi gfortran openblasCompat ];
+
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
+  preConfigure = ''
+    cmakeFlagsArray+=(
+      -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF
+      -DLAPACK_LIBRARIES="-lopenblas"
+      -DBLAS_LIBRARIES="-lopenblas"
+      )
+  '';
+
+  checkPhase = ''
+    # make sure the test starts even if we have less than 4 cores
+    export OMPI_MCA_rmaps_base_oversubscribe=1
+
+    # Run single threaded
+    export OMP_NUM_THREADS=1
+
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/lib
+    export CTEST_OUTPUT_ON_FAILURE=1
+
+    make test
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.netlib.org/scalapack/;
     description = "Library of high-performance linear algebra routines for parallel distributed memory machines";
-    license = licenses.bsdOriginal;
+    license = licenses.bsd3;
     platforms = platforms.all;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index 77c3c6458ad..7c758d29835 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, python, pkgconfig, readline, libxslt
-, docbook_xsl, docbook_xml_dtd_42
+, docbook_xsl, docbook_xml_dtd_42, fixDarwinDylibNames
 }:
 
 stdenv.mkDerivation rec {
@@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
     sha256 = "1kk76dyav41ip7ddbbf04yfydb4jvywzi2ps0z2vla56aqkn11di";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig fixDarwinDylibNames ];
   buildInputs = [
     python readline libxslt docbook_xsl docbook_xml_dtd_42
   ];
 
-  preConfigure = ''
-    sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,g' buildtools/bin/waf
+  prePatch = ''
+    patchShebangs buildtools/bin/waf
   '';
 
   configureFlags = [
diff --git a/pkgs/development/libraries/theft/default.nix b/pkgs/development/libraries/theft/default.nix
index 2a1180533ce..881f9c033a3 100644
--- a/pkgs/development/libraries/theft/default.nix
+++ b/pkgs/development/libraries/theft/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
-  version = "0.4.3";
+  version = "0.4.4";
   name = "theft-${version}";
 
   src = fetchFromGitHub {
     owner = "silentbicycle";
     repo = "theft";
     rev = "v${version}";
-    sha256 = "1ibh8np12lafnrsrvjbbzlyq45zq654939x0y22vdnc6s8dpbhw4";
+    sha256 = "1csdhnb10k7vsyd44vjpg430nf6a909wj8af2zawdkbvnxn5wxc4";
   };
 
   preConfigure = "patchShebangs ./scripts/mk_bits_lut";
diff --git a/pkgs/development/libraries/v8/plv8_6_x.nix b/pkgs/development/libraries/v8/plv8_6_x.nix
new file mode 100644
index 00000000000..8d2276def70
--- /dev/null
+++ b/pkgs/development/libraries/v8/plv8_6_x.nix
@@ -0,0 +1,187 @@
+# NOTE: this expression is NOT exported from the top-level of all-packages.nix,
+# it is exclusively used by the 'plv8' PostgreSQL extension, which requires a
+# very exact version.
+
+{ stdenv, lib, fetchgit, fetchFromGitHub, gn, ninja, python, glib, pkgconfig
+, doCheck ? false
+, snapshot ? true
+}:
+
+let
+  arch = if stdenv.isAarch32
+         then if stdenv.is64bit
+              then"arm64"
+              else "arm"
+         else if stdenv.is64bit
+              then"x64"
+              else "ia32";
+  git_url = "https://chromium.googlesource.com";
+
+  # This data is from the DEPS file in the root of a V8 checkout
+  deps = {
+    "base/trace_event/common" = fetchgit {
+      url    = "${git_url}/chromium/src/base/trace_event/common.git";
+      rev    = "0e9a47d74970bee1bbfc063c47215406f8918699";
+      sha256 = "07rbzrlscp8adh4z86yl5jxdnvgkc3xs950xldpk318wf9i3bh6c";
+    };
+    "build" = fetchgit {
+      url    = "${git_url}/chromium/src/build.git";
+      rev    = "9338ce52d0b9bcef34c38285fbd5023b62739fac";
+      sha256 = "1s2sa8dy3waidsirjylc82ggb18l1108bczjc8z0v4ywyj4k0cvh";
+    };
+    "buildtools" = fetchgit {
+      url    = "${git_url}/chromium/buildtools.git";
+      rev    = "505de88083136eefd056e5ee4ca0f01fe9b33de8";
+      sha256 = "0vj216nhb803bggsl0hnyagj8njrm96pn8sim6xcnqb7nhz1vabw";
+    };
+    "test/benchmarks/data" = fetchgit {
+      url    = "${git_url}/v8/deps/third_party/benchmarks.git";
+      rev    = "05d7188267b4560491ff9155c5ee13e207ecd65f";
+      sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl";
+    };
+    "test/mozilla/data" = fetchgit {
+      url    = "${git_url}/v8/deps/third_party/mozilla-tests.git";
+      rev    = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be";
+      sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn";
+    };
+    "test/test262/data" = fetchgit {
+      url    = "${git_url}/external/github.com/tc39/test262.git";
+      rev    = "5d4c667b271a9b39d0de73aef5ffe6879c6f8811";
+      sha256 = "0q9iwb2nkybf9np95wgf5m372aw2lhx9wlsw41a2a80kbkvb2kqg";
+    };
+    "test/test262/harness" = fetchgit {
+      url    = "${git_url}/external/github.com/test262-utils/test262-harness-py.git";
+      rev    = "0f2acdd882c84cff43b9d60df7574a1901e2cdcd";
+      sha256 = "00brj5avp43yamc92kinba2mg3a2x1rcd7wnm7z093l73idprvkp";
+    };
+    "test/wasm-js" = fetchgit {
+      url    = "${git_url}/external/github.com/WebAssembly/spec.git";
+      rev    = "a7e226a92e660a3d5413cfea4269824f513259d2";
+      sha256 = "0z3aybj3ykajwh2bv5fwd6pwqjjsq8dnwrqc2wncb6r9xcjwbgxp";
+    };
+    "testing/gtest" = fetchgit {
+      url    = "${git_url}/external/github.com/google/googletest.git";
+      rev    = "6f8a66431cb592dad629028a50b3dd418a408c87";
+      sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw";
+    };
+    "third_party/icu" = fetchgit {
+      url    = "${git_url}/chromium/deps/icu.git";
+      rev    = "741688ebf328da9adc52505248bf4e2ef868722c";
+      sha256 = "02ifm18qjlrkn5nm2rxkf9yz9bdlyq7c65jfjndv63vi1drqh1r9";
+    };
+    "third_party/instrumented_libraries" = fetchgit {
+      url    = "${git_url}/chromium/src/third_party/instrumented_libraries.git";
+      rev    = "28417458ac4dc79f68915079d0f283f682504cc0";
+      sha256 = "1qf5c2946n37p843yriv7xawi6ss6samabghq43s49cgd4wq8dc3";
+    };
+    "third_party/jinja2" = fetchgit {
+      url    = "${git_url}/chromium/src/third_party/jinja2.git";
+      rev    = "d34383206fa42d52faa10bb9931d6d538f3a57e0";
+      sha256 = "0d9hyw0bvp3p0dbwy833cm9vdqxcam0qbm9jc561ynphddxlkmgd";
+    };
+    "third_party/markupsafe" = fetchgit {
+      url    = "${git_url}/chromium/src/third_party/markupsafe.git";
+      rev    = "8f45f5cfa0009d2a70589bcda0349b8cb2b72783";
+      sha256 = "168ppjmicfdh4i1l0l25s86mdbrz9fgxmiq1rx33x79mph41scfz";
+    };
+    "tools/clang" = fetchgit {
+      url    = "${git_url}/chromium/src/tools/clang.git";
+      rev    = "8688d267571de76a56746324dcc249bf4232b85a";
+      sha256 = "0krq4zz1vnwp064bm517gwr2napy18wyccdh8w5s4qgkjwwxd63s";
+    };
+    "tools/gyp" = fetchgit {
+      url    = "${git_url}/external/gyp.git";
+      rev    = "d61a9397e668fa9843c4aa7da9e79460fe590bfb";
+      sha256 = "1z081h72mjy285jb1kj5xd0pb4p12n9blvsimsavyn3ldmswv0r0";
+    };
+    "tools/luci-go" = fetchgit {
+      url    = "${git_url}/chromium/src/tools/luci-go.git";
+      rev    = "45a8a51fda92e123619a69e7644d9c64a320b0c1";
+      sha256 = "0r7736gqk7r0i7ig0b5ib10d9q8a8xzsmc0f0fbkm9k78v847vpj";
+    };
+    "tools/swarming_client" = fetchgit {
+      url    = "${git_url}/infra/luci/client-py.git";
+      rev    = "4bd9152f8a975d57c972c071dfb4ddf668e02200";
+      sha256 = "03zk91gzvqv01g1vbl8d7h8al7vs4ymrrdc8ipg9wpq52yh65smh";
+    };
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "v8-${version}";
+  version = "6.4.388.40";
+
+  inherit doCheck;
+
+  src = fetchFromGitHub {
+    owner = "v8";
+    repo = "v8";
+    rev = version;
+    sha256 = "1lq239cgqyidrynz8g3wbdv70ymzv6s0ppad8s219gb3jnizm16a";
+  };
+
+  postUnpack = ''
+    ${lib.concatStringsSep "\n" (
+      lib.mapAttrsToList (n: v: ''
+        mkdir -p $sourceRoot/${n}
+        cp -r ${v}/* $sourceRoot/${n}
+      '') deps)}
+  '';
+
+  prePatch = ''
+    # use our gn, not the bundled one
+    sed -i -e 's#gn_path = .*#gn_path = "${gn}/bin/gn"#' tools/mb/mb.py
+
+    # disable tests
+    if [ "$doCheck" = "" ]; then sed -i -e '/"test:gn_all",/d' BUILD.gn; fi
+
+    # disable sysroot usage
+    chmod u+w build/config build/config/sysroot.gni
+    sed -i build/config/sysroot.gni \
+        -e '/use_sysroot =/ { s#\(use_sysroot =\).*#\1 false#; :a  n; /current_cpu/ { s/^/#/; ba };  }'
+
+    # patch shebangs (/usr/bin/env)
+    patchShebangs tools/dev/v8gen.py
+  '';
+
+  configurePhase = ''
+    tools/dev/v8gen.py -vv ${arch}.release -- \
+        is_component_build=true               \
+        ${if snapshot then "v8_use_external_startup_data=false" else "v8_use_snapshot=false"} \
+        is_clang=false                        \
+        linux_use_bundled_binutils=false      \
+        treat_warnings_as_errors=false        \
+        use_custom_libcxx=false               \
+        use_custom_libcxx_for_host=false
+  '';
+
+  nativeBuildInputs = [ gn ninja pkgconfig ];
+  buildInputs = [ python glib ];
+
+  buildPhase = ''
+    ninja -C out.gn/${arch}.release/
+  '';
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    install -vD out.gn/${arch}.release/d8 "$out/bin/d8"
+    install -vD out.gn/${arch}.release/mksnapshot "$out/bin/mksnapshot"
+    mkdir -p "$out/lib"
+    for f in libicui18n.so libicuuc.so libv8_libbase.so libv8_libplatform.so libv8.so; do
+        install -vD out.gn/${arch}.release/$f "$out/lib/$f"
+    done
+    install -vD out.gn/${arch}.release/icudtl.dat "$out/lib/icudtl.dat"
+    mkdir -p "$out/include"
+    cp -vr include/*.h "$out/include"
+    cp -vr include/libplatform "$out/include"
+  '';
+
+  meta = with lib; {
+    description = "Google's open source JavaScript engine";
+    maintainers = with maintainers; [ cstrahan proglodyte ];
+    platforms = platforms.linux;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/libraries/vtk/default.nix b/pkgs/development/libraries/vtk/default.nix
index b85d76640cf..afd29aeb006 100644
--- a/pkgs/development/libraries/vtk/default.nix
+++ b/pkgs/development/libraries/vtk/default.nix
@@ -41,8 +41,6 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DCMAKE_C_FLAGS=-fPIC" "-DCMAKE_CXX_FLAGS=-fPIC" ]
     ++ optional (qtLib != null) [ "-DVTK_USE_QT:BOOL=ON" ]
     ++ optional stdenv.isDarwin [ "-DBUILD_TESTING:BOOL=OFF"
-                                  "-DCMAKE_OSX_SYSROOT="
-                                  "-DCMAKE_OSX_DEPLOYMENT_TARGET="
                                   "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" ];
 
   postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/development/libraries/wcslib/default.nix b/pkgs/development/libraries/wcslib/default.nix
index 636021f1368..187eed6ae83 100644
--- a/pkgs/development/libraries/wcslib/default.nix
+++ b/pkgs/development/libraries/wcslib/default.nix
@@ -1,14 +1,14 @@
 { fetchurl,  stdenv, flex }:
 
 stdenv.mkDerivation rec {
-  version = "5.20";
+  version = "6.2";
   name = "wcslib-${version}";
 
   buildInputs = [ flex ];
 
   src = fetchurl {
     url = "ftp://ftp.atnf.csiro.au/pub/software/wcslib/${name}.tar.bz2";
-    sha256 ="1c8g9kv4dxrnawnqi4spi2p10s2xs7x75pdfxhbqxgcc97dkgh0b";
+    sha256 ="01fqckazhbfqqhyr0wd9vcks1m2afmsh83l981alxg2r54jgwkdv";
   };
 
   prePatch = ''
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index 7b92c1c66cd..2d7289ca664 100644
--- a/pkgs/development/libraries/xapian/default.nix
+++ b/pkgs/development/libraries/xapian/default.nix
@@ -36,5 +36,5 @@ let
 in {
   # xapian-ruby needs 1.2.22 as of 2017-05-06
   xapian_1_2_22 = generic "1.2.22" "0zsji22n0s7cdnbgj0kpil05a6bgm5cfv0mvx12d8ydg7z58g6r6";
-  xapian_1_4 = generic "1.4.8" "0528841hn5lddaa317ax3i3d01zf1izpzh4njiz6s84mxpn06q6s";
+  xapian_1_4 = generic "1.4.9" "1k7m7m9jld96k16ansfw2w3c354pvd8ibhnrb6dw012g06fw7sfd";
 }
diff --git a/pkgs/development/mobile/xpwn/default.nix b/pkgs/development/mobile/xpwn/default.nix
index d5ffb7f6c01..d62902e4f6e 100644
--- a/pkgs/development/mobile/xpwn/default.nix
+++ b/pkgs/development/mobile/xpwn/default.nix
@@ -20,10 +20,6 @@ stdenv.mkDerivation {
 
   buildInputs = [ cmake zlib libpng bzip2 libusb openssl ];
 
-  cmakeFlags = [
-    "-DCMAKE_OSX_DEPLOYMENT_TARGET="
-  ];
-
   meta = with stdenv.lib; {
     homepage    = "http://planetbeing.lighthouseapp.com/projects/15246-xpwn";
     description = "Custom NOR firmware loader/IPSW generator for the iPhone";
diff --git a/pkgs/development/node-packages/node-packages-v10.nix b/pkgs/development/node-packages/node-packages-v10.nix
index e94e8bfff1e..d029fc74d69 100644
--- a/pkgs/development/node-packages/node-packages-v10.nix
+++ b/pkgs/development/node-packages/node-packages-v10.nix
@@ -283,15 +283,6 @@ let
         sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
       };
     };
-    "combined-stream-1.0.6" = {
-      name = "combined-stream";
-      packageName = "combined-stream";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
-        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
-      };
-    };
     "combined-stream-1.0.7" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -522,7 +513,7 @@ let
       packageName = "fast-deep-equal";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        url = "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
         sha1 = "c053477817c86b51daa853c81e059b733d023614";
       };
     };
@@ -598,13 +589,13 @@ let
         sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
       };
     };
-    "form-data-2.3.2" = {
+    "form-data-2.3.3" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.3.2";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
-        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
+        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
       };
     };
     "fragment-cache-0.2.1" = {
@@ -697,13 +688,13 @@ let
         sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
       };
     };
-    "graceful-fs-4.1.11" = {
+    "graceful-fs-4.1.15" = {
       name = "graceful-fs";
       packageName = "graceful-fs";
-      version = "4.1.11";
+      version = "4.1.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
-        sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz";
+        sha512 = "6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==";
       };
     };
     "grunt-known-options-1.1.1" = {
@@ -1192,22 +1183,22 @@ let
         sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
       };
     };
-    "mime-db-1.36.0" = {
+    "mime-db-1.37.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.36.0";
+      version = "1.37.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz";
-        sha512 = "L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
+        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
       };
     };
-    "mime-types-2.1.20" = {
+    "mime-types-2.1.21" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.20";
+      version = "2.1.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz";
-        sha512 = "HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
+        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
       };
     };
     "minimatch-3.0.4" = {
@@ -1237,13 +1228,13 @@ let
         sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
       };
     };
-    "minipass-2.3.4" = {
+    "minipass-2.3.5" = {
       name = "minipass";
       packageName = "minipass";
-      version = "2.3.4";
+      version = "2.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz";
-        sha512 = "mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==";
+        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz";
+        sha512 = "Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==";
       };
     };
     "minizlib-1.1.1" = {
@@ -1692,7 +1683,7 @@ let
       packageName = "safe-regex";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
+        url = "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
         sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
       };
     };
@@ -1831,13 +1822,13 @@ let
         sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==";
       };
     };
-    "sshpk-1.15.1" = {
+    "sshpk-1.15.2" = {
       name = "sshpk";
       packageName = "sshpk";
-      version = "1.15.1";
+      version = "1.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.1.tgz";
-        sha512 = "mSdgNUaidk+dRU5MhYtN9zebdzF2iG0cNPWy8HG+W8y+fT1JnSkh0fzzpjOa0L7P8i1Rscz38t0h4gPcKz43xA==";
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.2.tgz";
+        sha512 = "Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA==";
       };
     };
     "static-extend-0.1.2" = {
@@ -1890,17 +1881,17 @@ let
       packageName = "tar";
       version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
+        url = "http://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
         sha1 = "8e4d2a256c0e2185c6b18ad694aec968b83cb1d1";
       };
     };
-    "tar-4.4.6" = {
+    "tar-4.4.7" = {
       name = "tar";
       packageName = "tar";
-      version = "4.4.6";
+      version = "4.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz";
-        sha512 = "tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==";
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.7.tgz";
+        sha512 = "mR3MzsCdN0IEWjZRuF/J9gaWHnTwOvzjqPTcvi1xXgfKTDQRp39gRETPQEfPByAdEOGmZfx1HrRsn8estaEvtA==";
       };
     };
     "to-object-path-0.3.0" = {
@@ -2020,13 +2011,13 @@ let
         sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
       };
     };
-    "v8flags-3.0.2" = {
+    "v8flags-3.1.1" = {
       name = "v8flags";
       packageName = "v8flags";
-      version = "3.0.2";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/v8flags/-/v8flags-3.0.2.tgz";
-        sha512 = "6sgSKoFw1UpUPd3cFdF7QGnrH6tDeBgW1F3v9gy8gLY0mlbiBXq8soy8aQpY6xeeCjH5K+JvC62Acp7gtl7wWA==";
+        url = "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz";
+        sha512 = "iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==";
       };
     };
     "verror-1.10.0" = {
@@ -2114,10 +2105,10 @@ in
   grunt-cli = nodeEnv.buildNodePackage {
     name = "grunt-cli";
     packageName = "grunt-cli";
-    version = "1.3.1";
+    version = "1.3.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.1.tgz";
-      sha512 = "UwBRu/QpAjDc53DRLEkyilFdL0zenpxu+fddTIlsF/KJqdNcHaQmvyu1W3cDesZ9rqqZdKK5A8+QDIyLUEWoZQ==";
+      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz";
+      sha512 = "8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -2369,7 +2360,7 @@ in
       })
       sources."urix-0.1.0"
       sources."use-3.1.1"
-      sources."v8flags-3.0.2"
+      sources."v8flags-3.1.1"
       sources."which-1.3.1"
     ];
     buildInputs = globalBuildInputs;
@@ -2420,17 +2411,13 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.11"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-unicode-2.0.1"
@@ -2447,8 +2434,8 @@ in
       sources."json-schema-traverse-0.3.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -2475,7 +2462,7 @@ in
       sources."semver-5.3.0"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.2"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
@@ -2554,7 +2541,7 @@ in
       sources."isarray-1.0.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
-      sources."minipass-2.3.4"
+      sources."minipass-2.3.5"
       sources."minizlib-1.1.1"
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
@@ -2588,7 +2575,7 @@ in
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
-      sources."tar-4.4.6"
+      sources."tar-4.4.7"
       sources."util-deprecate-1.0.2"
       sources."wide-align-1.1.3"
       sources."wrappy-1.0.2"
@@ -2606,10 +2593,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "2.16.3";
+    version = "2.17.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.16.3.tgz";
-      sha512 = "W63qZOC9YGr+33JYvZjvhzvYL4YKT2gAywDJQrHvKTL6vmnnSh+GdM3ZdGIIZ6A57YB3NgvQaq/BJ2uYjwn3ZQ==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.17.7.tgz";
+      sha512 = "FwZFpKSL4BNu1IGIScveHqZALpm6jSF7QR90CZXW4RfKaLpNYcIkkFC9iPBT4AdpPSv1UR/gYUWyQdTZBx2a5g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
diff --git a/pkgs/development/node-packages/node-packages-v6.nix b/pkgs/development/node-packages/node-packages-v6.nix
index dc028435ad0..bdf4997c174 100644
--- a/pkgs/development/node-packages/node-packages-v6.nix
+++ b/pkgs/development/node-packages/node-packages-v6.nix
@@ -283,15 +283,6 @@ let
         sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
       };
     };
-    "combined-stream-1.0.6" = {
-      name = "combined-stream";
-      packageName = "combined-stream";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
-        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
-      };
-    };
     "combined-stream-1.0.7" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -522,7 +513,7 @@ let
       packageName = "fast-deep-equal";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        url = "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
         sha1 = "c053477817c86b51daa853c81e059b733d023614";
       };
     };
@@ -598,13 +589,13 @@ let
         sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
       };
     };
-    "form-data-2.3.2" = {
+    "form-data-2.3.3" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.3.2";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
-        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
+        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
       };
     };
     "fragment-cache-0.2.1" = {
@@ -697,13 +688,13 @@ let
         sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
       };
     };
-    "graceful-fs-4.1.11" = {
+    "graceful-fs-4.1.15" = {
       name = "graceful-fs";
       packageName = "graceful-fs";
-      version = "4.1.11";
+      version = "4.1.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
-        sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz";
+        sha512 = "6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==";
       };
     };
     "grunt-known-options-1.1.1" = {
@@ -1192,22 +1183,22 @@ let
         sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
       };
     };
-    "mime-db-1.36.0" = {
+    "mime-db-1.37.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.36.0";
+      version = "1.37.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz";
-        sha512 = "L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
+        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
       };
     };
-    "mime-types-2.1.20" = {
+    "mime-types-2.1.21" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.20";
+      version = "2.1.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz";
-        sha512 = "HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
+        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
       };
     };
     "minimatch-3.0.4" = {
@@ -1237,13 +1228,13 @@ let
         sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
       };
     };
-    "minipass-2.3.4" = {
+    "minipass-2.3.5" = {
       name = "minipass";
       packageName = "minipass";
-      version = "2.3.4";
+      version = "2.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz";
-        sha512 = "mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==";
+        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz";
+        sha512 = "Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==";
       };
     };
     "minizlib-1.1.1" = {
@@ -1692,7 +1683,7 @@ let
       packageName = "safe-regex";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
+        url = "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
         sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
       };
     };
@@ -1831,13 +1822,13 @@ let
         sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==";
       };
     };
-    "sshpk-1.15.1" = {
+    "sshpk-1.15.2" = {
       name = "sshpk";
       packageName = "sshpk";
-      version = "1.15.1";
+      version = "1.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.1.tgz";
-        sha512 = "mSdgNUaidk+dRU5MhYtN9zebdzF2iG0cNPWy8HG+W8y+fT1JnSkh0fzzpjOa0L7P8i1Rscz38t0h4gPcKz43xA==";
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.2.tgz";
+        sha512 = "Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA==";
       };
     };
     "static-extend-0.1.2" = {
@@ -1890,17 +1881,17 @@ let
       packageName = "tar";
       version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
+        url = "http://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
         sha1 = "8e4d2a256c0e2185c6b18ad694aec968b83cb1d1";
       };
     };
-    "tar-4.4.6" = {
+    "tar-4.4.7" = {
       name = "tar";
       packageName = "tar";
-      version = "4.4.6";
+      version = "4.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz";
-        sha512 = "tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==";
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.7.tgz";
+        sha512 = "mR3MzsCdN0IEWjZRuF/J9gaWHnTwOvzjqPTcvi1xXgfKTDQRp39gRETPQEfPByAdEOGmZfx1HrRsn8estaEvtA==";
       };
     };
     "to-object-path-0.3.0" = {
@@ -2020,13 +2011,13 @@ let
         sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
       };
     };
-    "v8flags-3.0.2" = {
+    "v8flags-3.1.1" = {
       name = "v8flags";
       packageName = "v8flags";
-      version = "3.0.2";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/v8flags/-/v8flags-3.0.2.tgz";
-        sha512 = "6sgSKoFw1UpUPd3cFdF7QGnrH6tDeBgW1F3v9gy8gLY0mlbiBXq8soy8aQpY6xeeCjH5K+JvC62Acp7gtl7wWA==";
+        url = "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz";
+        sha512 = "iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==";
       };
     };
     "verror-1.10.0" = {
@@ -2114,10 +2105,10 @@ in
   grunt-cli = nodeEnv.buildNodePackage {
     name = "grunt-cli";
     packageName = "grunt-cli";
-    version = "1.3.1";
+    version = "1.3.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.1.tgz";
-      sha512 = "UwBRu/QpAjDc53DRLEkyilFdL0zenpxu+fddTIlsF/KJqdNcHaQmvyu1W3cDesZ9rqqZdKK5A8+QDIyLUEWoZQ==";
+      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz";
+      sha512 = "8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -2369,7 +2360,7 @@ in
       })
       sources."urix-0.1.0"
       sources."use-3.1.1"
-      sources."v8flags-3.0.2"
+      sources."v8flags-3.1.1"
       sources."which-1.3.1"
     ];
     buildInputs = globalBuildInputs;
@@ -2420,17 +2411,13 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.11"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-unicode-2.0.1"
@@ -2447,8 +2434,8 @@ in
       sources."json-schema-traverse-0.3.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -2475,7 +2462,7 @@ in
       sources."semver-5.3.0"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.2"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
@@ -2554,7 +2541,7 @@ in
       sources."isarray-1.0.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
-      sources."minipass-2.3.4"
+      sources."minipass-2.3.5"
       sources."minizlib-1.1.1"
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
@@ -2588,7 +2575,7 @@ in
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
-      sources."tar-4.4.6"
+      sources."tar-4.4.7"
       sources."util-deprecate-1.0.2"
       sources."wide-align-1.1.3"
       sources."wrappy-1.0.2"
@@ -2606,10 +2593,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "2.16.3";
+    version = "2.17.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.16.3.tgz";
-      sha512 = "W63qZOC9YGr+33JYvZjvhzvYL4YKT2gAywDJQrHvKTL6vmnnSh+GdM3ZdGIIZ6A57YB3NgvQaq/BJ2uYjwn3ZQ==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.17.7.tgz";
+      sha512 = "FwZFpKSL4BNu1IGIScveHqZALpm6jSF7QR90CZXW4RfKaLpNYcIkkFC9iPBT4AdpPSv1UR/gYUWyQdTZBx2a5g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
diff --git a/pkgs/development/node-packages/node-packages-v8.json b/pkgs/development/node-packages/node-packages-v8.json
index f297614ec38..5e89c8e3e35 100644
--- a/pkgs/development/node-packages/node-packages-v8.json
+++ b/pkgs/development/node-packages/node-packages-v8.json
@@ -2,6 +2,7 @@
   "alloy"
 , "asar"
 , "azure-cli"
+, "azure-functions-core-tools"
 , "bower"
 , "bower2nix"
 , "browserify"
@@ -119,6 +120,7 @@
 , "tiddlywiki"
 , "titanium"
 , "triton"
+, "ttf2eot"
 , "typescript"
 , "typings"
 , "uglify-js"
diff --git a/pkgs/development/node-packages/node-packages-v8.nix b/pkgs/development/node-packages/node-packages-v8.nix
index 4a6c248e295..443c011c95d 100644
--- a/pkgs/development/node-packages/node-packages-v8.nix
+++ b/pkgs/development/node-packages/node-packages-v8.nix
@@ -22,13 +22,13 @@ let
         sha512 = "tGAp3ULNyoA8b5o9LsU2Lq6SwgVPUOKAqKywu2liEtTvrFSGPrObwanhYwArq3GPeOqp2bi+JknSJCIU3oQN1Q==";
       };
     };
-    "@apollographql/graphql-playground-html-1.6.0" = {
+    "@apollographql/graphql-playground-html-1.6.4" = {
       name = "_at_apollographql_slash_graphql-playground-html";
       packageName = "@apollographql/graphql-playground-html";
-      version = "1.6.0";
+      version = "1.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.0.tgz";
-        sha512 = "QAZIFrfVRkjvMkUHIQKZXZ3La0V5t12w5PWrhihYEabHwzIZV/txQd/kSYHgYPXC4s5OURxsXZop9f0BzI2QIQ==";
+        url = "https://registry.npmjs.org/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.4.tgz";
+        sha512 = "gwvaQO6/Hv4DEwhDLmmu2tzCU9oPjC5Xl9Kk8Yd0IxyKhYLlLalmkMMjsZLzU5H3fGaalLD96OYfxHL0ClVUDQ==";
       };
     };
     "@babel/code-frame-7.0.0" = {
@@ -76,15 +76,6 @@ let
         sha512 = "gqmspPZOMW3MIRb9HlrnbZHXI1/KHTOroBwN1NcLL6pWxzqzEKGvRTq0W/PxS45OtQGbaFikSQpkS5zbnsQm2w==";
       };
     };
-    "@babel/runtime-7.1.2" = {
-      name = "_at_babel_slash_runtime";
-      packageName = "@babel/runtime";
-      version = "7.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.1.2.tgz";
-        sha512 = "Y3SCjmhSupzFB6wcv1KmmFucH6gDVnI30WjOcicV10ju0cZjak3Jcs67YLIXBrmZYw1xCrVeJPbycFwrqNyxpg==";
-      };
-    };
     "@babel/runtime-corejs2-7.1.2" = {
       name = "_at_babel_slash_runtime-corejs2";
       packageName = "@babel/runtime-corejs2";
@@ -346,40 +337,40 @@ let
         sha1 = "890ae7c5d8c877f6d384860215ace9d7ec945bda";
       };
     };
-    "@ionic/cli-framework-1.1.1" = {
+    "@ionic/cli-framework-1.3.0" = {
       name = "_at_ionic_slash_cli-framework";
       packageName = "@ionic/cli-framework";
-      version = "1.1.1";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/cli-framework/-/cli-framework-1.1.1.tgz";
-        sha512 = "atY7TZO7Lh00iz9TIkEuzAg+h+onaf9tR5Xdq365grIDlOD6iRm1xAYKkLOzlObzNQ3WqDW5vqKmtiVrvg3Kfg==";
+        url = "https://registry.npmjs.org/@ionic/cli-framework/-/cli-framework-1.3.0.tgz";
+        sha512 = "hJVWOqZVJXD0pa1amVFPlX7emXdEM6YpbllXkMQwYSubt9TXPRgUboC3JYxvwEfTscnvWO5OnKGZ29f0/zpTQg==";
       };
     };
-    "@ionic/discover-1.0.6" = {
+    "@ionic/discover-1.0.7" = {
       name = "_at_ionic_slash_discover";
       packageName = "@ionic/discover";
-      version = "1.0.6";
+      version = "1.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/discover/-/discover-1.0.6.tgz";
-        sha512 = "7OsJ4Kr6G9PWVOFdlfXuM7Cz39qFff60dOOzPpIwDXInive+jk42pZ9aKPz/3NMrwWULUOY8pSZ4leiZJNPFpg==";
+        url = "https://registry.npmjs.org/@ionic/discover/-/discover-1.0.7.tgz";
+        sha512 = "HaG36P0dfxkBqkL9HJknd4bGXe+4QczhcCbpr0CzDBUzWbmoi0meyzRvqhVf9jd1WtnPYsfcJ6mAtaeu+NIRUw==";
       };
     };
-    "@ionic/utils-fs-0.0.3" = {
+    "@ionic/utils-fs-0.0.4" = {
       name = "_at_ionic_slash_utils-fs";
       packageName = "@ionic/utils-fs";
-      version = "0.0.3";
+      version = "0.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-0.0.3.tgz";
-        sha512 = "nj976Lms/0ocagWkfizM/zSWwfYRMOnT+wgNO3B9LMW8OjOH/llxTulBvTih0epqgLl9jjU7moW310BeECVC4g==";
+        url = "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-0.0.4.tgz";
+        sha512 = "eipaSkrX3ODCQzGKxFgruq2J28RoEm+JC0jJv5S64OXATxsnbwuReTmA2EMJyevLJrORWM0yvsgqmiLHH5VYJg==";
       };
     };
-    "@ionic/utils-network-0.0.3" = {
+    "@ionic/utils-network-0.0.4" = {
       name = "_at_ionic_slash_utils-network";
       packageName = "@ionic/utils-network";
-      version = "0.0.3";
+      version = "0.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/utils-network/-/utils-network-0.0.3.tgz";
-        sha512 = "jc71iYRTg+st9K39rHtT2FWcgtVP9QIWTaDt4o+WFDD1lUicscosFncx5DEzHsb3Shn24SgbiqhcfQ2F//nfyw==";
+        url = "https://registry.npmjs.org/@ionic/utils-network/-/utils-network-0.0.4.tgz";
+        sha512 = "xJrO+ZG8Gud6qcLy/nFtoaloZHUM94Xvt4boAyyzr+1IFlgPfstfpbjsOFgKu5yqhc1+JyqwNtdJ14jEC9F17A==";
       };
     };
     "@kbrandwijk/swagger-to-graphql-2.4.3" = {
@@ -841,13 +832,13 @@ let
         sha512 = "bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==";
       };
     };
-    "@nodelib/fs.stat-1.1.2" = {
+    "@nodelib/fs.stat-1.1.3" = {
       name = "_at_nodelib_slash_fs.stat";
       packageName = "@nodelib/fs.stat";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.2.tgz";
-        sha512 = "yprFYuno9FtNsSHVlSWd+nRlmGoAbqbeCwOryP6sC/zoCjhpArcRMYp19EvpSUSizJAlsXEwJv+wcWS9XaXdMw==";
+        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz";
+        sha512 = "shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==";
       };
     };
     "@protobufjs/aspromise-1.1.2" = {
@@ -958,13 +949,13 @@ let
         sha512 = "jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==";
       };
     };
-    "@types/async-2.0.49" = {
+    "@types/async-2.0.50" = {
       name = "_at_types_slash_async";
       packageName = "@types/async";
-      version = "2.0.49";
+      version = "2.0.50";
       src = fetchurl {
-        url = "http://registry.npmjs.org/@types/async/-/async-2.0.49.tgz";
-        sha512 = "Benr3i5odUkvpFkOpzGqrltGdbSs+EVCkEBGXbuR7uT0VzhXKIkhem6PDzHdx5EonA+rfbB3QvP6aDOw5+zp5Q==";
+        url = "https://registry.npmjs.org/@types/async/-/async-2.0.50.tgz";
+        sha512 = "VMhZMMQgV1zsR+lX/0IBfAk+8Eb7dPVMWiQGFAt3qjo5x7Ml6b77jUo0e1C3ToD+XRDXqtrfw+6AB0uUsPEr3Q==";
       };
     };
     "@types/babel-types-7.0.4" = {
@@ -976,13 +967,13 @@ let
         sha512 = "WiZhq3SVJHFRgRYLXvpf65XnV6ipVHhnNaNvE8yCimejrGglkg38kEj0JcizqwSHxmPSjcTlig/6JouxLGEhGw==";
       };
     };
-    "@types/babylon-6.16.3" = {
+    "@types/babylon-6.16.4" = {
       name = "_at_types_slash_babylon";
       packageName = "@types/babylon";
-      version = "6.16.3";
+      version = "6.16.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.3.tgz";
-        sha512 = "lyJ8sW1PbY3uwuvpOBZ9zMYKshMnQpXmeDHh8dj9j2nJm/xrW0FgB5gLSYOArj5X0IfaXnmhFoJnhS4KbqIMug==";
+        url = "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.4.tgz";
+        sha512 = "8dZMcGPno3g7pJ/d0AyJERo+lXh9i1JhDuCUs+4lNIN9eUe5Yh6UCLrpgSEi05Ve2JMLauL2aozdvKwNL0px1Q==";
       };
     };
     "@types/body-parser-1.17.0" = {
@@ -1066,22 +1057,22 @@ let
         sha512 = "A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA==";
       };
     };
-    "@types/node-10.11.7" = {
+    "@types/node-10.12.2" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "10.11.7";
+      version = "10.12.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-10.11.7.tgz";
-        sha512 = "yOxFfkN9xUFLyvWaeYj90mlqTJ41CsQzWKS3gXdOMOyPVacUsymejKxJ4/pMW7exouubuEeZLJawGgcNGYlTeg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-10.12.2.tgz";
+        sha512 = "53ElVDSnZeFUUFIYzI8WLQ25IhWzb6vbddNp8UHlXQyU0ET2RhV5zg0NfubzU7iNMh5bBXb0htCzfvrSVNgzaQ==";
       };
     };
-    "@types/node-8.10.36" = {
+    "@types/node-8.10.37" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "8.10.36";
+      version = "8.10.37";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-8.10.36.tgz";
-        sha512 = "SL6KhfM7PTqiFmbCW3eVNwVBZ+88Mrzbuvn9olPsfv43mbiWaFY+nRcz/TGGku0/lc2FepdMbImdMY1JrQ+zbw==";
+        url = "https://registry.npmjs.org/@types/node/-/node-8.10.37.tgz";
+        sha512 = "Jp39foY8Euv/PG4OGPyzxis82mnjcUtXLEMA8oFMCE4ilmuJgZPdV2nZNV1moz+99EJTtcpOSgDCgATUwABKig==";
       };
     };
     "@types/range-parser-1.2.2" = {
@@ -1138,211 +1129,220 @@ let
         sha512 = "te5lMAWii1uEJ4FwLjzdlbw3+n0FZNOvFXHxQDKeT0dilh7HOzdMzV2TrJVUzq8ep7J4Na8OUYPRLSQkJHAlrg==";
       };
     };
-    "@vue/cli-shared-utils-3.0.5" = {
+    "@vue/cli-shared-utils-3.1.1" = {
       name = "_at_vue_slash_cli-shared-utils";
       packageName = "@vue/cli-shared-utils";
-      version = "3.0.5";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-3.0.5.tgz";
-        sha512 = "z5vPzUQGZJnRkojqVbDYar8NvGSvB0kUcO0O+Y+xkxVbjZxrq78e9bJFB4PR4QsqQbuBS9v3zawLWY4MhKwKOA==";
+        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-3.1.1.tgz";
+        sha512 = "r+R+5LI6IHHPI5tbOSDy5DpiY5O9eTy8LPr/QCPb5RIOg+Pg03VlElW4BL69hePXEHCQZZDsOzgItSmat6mBhg==";
       };
     };
-    "@vue/cli-ui-3.0.5" = {
+    "@vue/cli-ui-3.1.1" = {
       name = "_at_vue_slash_cli-ui";
       packageName = "@vue/cli-ui";
-      version = "3.0.5";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-3.0.5.tgz";
-        sha512 = "lQ/xdtX/p+yER6tLxAt1oeudsQ4el/BWKqqGolKKydv78nk8AQlcVVH5AsojqqICuDpHO20XFKIp45lXhJ4YnA==";
+        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-3.1.1.tgz";
+        sha512 = "37L4nuV3dgsgI14Ry2EeSRlhLoY3WU1jQ0YcMpnk/uHpXA3hblWK7iixrQNkC0nftt2S8NTzOJFmCfRFisUgLQ==";
       };
     };
-    "@vue/cli-ui-addon-webpack-3.0.5" = {
+    "@vue/cli-ui-addon-webpack-3.1.1" = {
       name = "_at_vue_slash_cli-ui-addon-webpack";
       packageName = "@vue/cli-ui-addon-webpack";
-      version = "3.0.5";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-3.1.1.tgz";
+        sha512 = "ICIJKyML277EbOSPwjQGx1voKR4LTXOsM5oIqkjeH94ME6TEkVrzJwoFBMDnCRwUQ6cdDCn06D+FZY355jpVcg==";
+      };
+    };
+    "@vue/cli-ui-addon-widgets-3.1.1" = {
+      name = "_at_vue_slash_cli-ui-addon-widgets";
+      packageName = "@vue/cli-ui-addon-widgets";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-3.0.5.tgz";
-        sha512 = "DhZ+wIaJnLzcVmkZMWxy0If9Rh68YWhsxeXuxIbcL4tpGBbIdd+44A5CqHWFkTkVma5zWlqckhVuTXUYdstEZw==";
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-widgets/-/cli-ui-addon-widgets-3.1.1.tgz";
+        sha512 = "PJCAHYb0g1BBfmDk/DLpHJFOG5RpihbTa3DVAfW3U1adlrRLMKh21t/TelryFkjRTIDqglGDCMMa5ZT1JOW3tA==";
       };
     };
-    "@webassemblyjs/ast-1.7.8" = {
+    "@webassemblyjs/ast-1.7.11" = {
       name = "_at_webassemblyjs_slash_ast";
       packageName = "@webassemblyjs/ast";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.8.tgz";
-        sha512 = "dOrtdtEyB8sInpl75yLPNksY4sRl0j/+t6aHyB/YA+ab9hV3Fo7FmG12FHzP+2MvWVAJtDb+6eXR5EZbZJ+uVg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz";
+        sha512 = "ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==";
       };
     };
-    "@webassemblyjs/floating-point-hex-parser-1.7.8" = {
+    "@webassemblyjs/floating-point-hex-parser-1.7.11" = {
       name = "_at_webassemblyjs_slash_floating-point-hex-parser";
       packageName = "@webassemblyjs/floating-point-hex-parser";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.8.tgz";
-        sha512 = "kn2zNKGsbql5i56VAgRYkpG+VazqHhQQZQycT2uXAazrAEDs23gy+Odkh5VblybjnwX2/BITkDtNmSO76hdIvQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz";
+        sha512 = "zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg==";
       };
     };
-    "@webassemblyjs/helper-api-error-1.7.8" = {
+    "@webassemblyjs/helper-api-error-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-api-error";
       packageName = "@webassemblyjs/helper-api-error";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.8.tgz";
-        sha512 = "xUwxDXsd1dUKArJEP5wWM5zxgCSwZApSOJyP1XO7M8rNUChUDblcLQ4FpzTpWG2YeylMwMl1MlP5Ztryiz1x4g==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz";
+        sha512 = "7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==";
       };
     };
-    "@webassemblyjs/helper-buffer-1.7.8" = {
+    "@webassemblyjs/helper-buffer-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-buffer";
       packageName = "@webassemblyjs/helper-buffer";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.8.tgz";
-        sha512 = "WXiIMnuvuwlhWvVOm8xEXU9DnHaa3AgAU0ZPfvY8vO1cSsmYb2WbGbHnMLgs43vXnA7XAob9b56zuZaMkxpCBg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz";
+        sha512 = "MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==";
       };
     };
-    "@webassemblyjs/helper-code-frame-1.7.8" = {
+    "@webassemblyjs/helper-code-frame-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-code-frame";
       packageName = "@webassemblyjs/helper-code-frame";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.8.tgz";
-        sha512 = "TLQxyD9qGOIdX5LPQOPo0Ernd88U5rHkFb8WAjeMIeA0sPjCHeVPaGqUGGIXjUcblUkjuDAc07bruCcNHUrHDA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz";
+        sha512 = "T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==";
       };
     };
-    "@webassemblyjs/helper-flaten-ast-1.7.8" = {
+    "@webassemblyjs/helper-flaten-ast-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-flaten-ast";
       packageName = "@webassemblyjs/helper-flaten-ast";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-flaten-ast/-/helper-flaten-ast-1.7.8.tgz";
-        sha512 = "Z6U67Havfc1LsCysc2Wb7FKjSxBXgaEp39wfzjPA86mcctxYv6T+6udzmgD872/s24TZoV4cC65eC78JT0kaeg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-flaten-ast/-/helper-flaten-ast-1.7.11.tgz";
+        sha512 = "qjjxf3HGZUkD7ja9X0xRKWfLHzwfWzEOle5Ww1NIh6unH6szA7oNeZkhIiWmXz5KaALn0g1b35DQcoaq1IQcSQ==";
       };
     };
-    "@webassemblyjs/helper-fsm-1.7.8" = {
+    "@webassemblyjs/helper-fsm-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-fsm";
       packageName = "@webassemblyjs/helper-fsm";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.8.tgz";
-        sha512 = "TjK0CnD8hAPkV5mbSp5aWl6SO1+H3WFcjWtixWoy8EMA99YnNzYhpc/WSYWhf7yrhpzkq5tZB0tvLK3Svr3IXA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz";
+        sha512 = "nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==";
       };
     };
-    "@webassemblyjs/helper-module-context-1.7.8" = {
+    "@webassemblyjs/helper-module-context-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-module-context";
       packageName = "@webassemblyjs/helper-module-context";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.8.tgz";
-        sha512 = "uCutAKR7Nm0VsFixcvnB4HhAyHouNbj0Dx1p7eRjFjXGGZ+N7ftTaG1ZbWCasAEbtwGj54LP8+lkBZdTCPmLGg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz";
+        sha512 = "JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==";
       };
     };
-    "@webassemblyjs/helper-wasm-bytecode-1.7.8" = {
+    "@webassemblyjs/helper-wasm-bytecode-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
       packageName = "@webassemblyjs/helper-wasm-bytecode";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.8.tgz";
-        sha512 = "AdCCE3BMW6V34WYaKUmPgVHa88t2Z14P4/0LjLwuGkI0X6pf7nzp0CehzVVk51cKm2ymVXjl9dCG+gR1yhITIQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz";
+        sha512 = "cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==";
       };
     };
-    "@webassemblyjs/helper-wasm-section-1.7.8" = {
+    "@webassemblyjs/helper-wasm-section-1.7.11" = {
       name = "_at_webassemblyjs_slash_helper-wasm-section";
       packageName = "@webassemblyjs/helper-wasm-section";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.8.tgz";
-        sha512 = "BkBhYQuzyl4hgTGOKo87Vdw6f9nj8HhI7WYpI0MCC5qFa5ahrAPOGgyETVdnRbv+Rjukl9MxxfDmVcVC435lDg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz";
+        sha512 = "8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==";
       };
     };
-    "@webassemblyjs/ieee754-1.7.8" = {
+    "@webassemblyjs/ieee754-1.7.11" = {
       name = "_at_webassemblyjs_slash_ieee754";
       packageName = "@webassemblyjs/ieee754";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.8.tgz";
-        sha512 = "tOarWChdG1a3y1yqCX0JMDKzrat5tQe4pV6K/TX19BcXsBLYxFQOL1DEDa5KG9syeyvCrvZ+i1+Mv1ExngvktQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz";
+        sha512 = "Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==";
       };
     };
-    "@webassemblyjs/leb128-1.7.8" = {
+    "@webassemblyjs/leb128-1.7.11" = {
       name = "_at_webassemblyjs_slash_leb128";
       packageName = "@webassemblyjs/leb128";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.8.tgz";
-        sha512 = "GCYeGPgUFWJiZuP4NICbcyUQNxNLJIf476Ei+K+jVuuebtLpfvwkvYT6iTUE7oZYehhkor4Zz2g7SJ/iZaPudQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.11.tgz";
+        sha512 = "vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==";
       };
     };
-    "@webassemblyjs/utf8-1.7.8" = {
+    "@webassemblyjs/utf8-1.7.11" = {
       name = "_at_webassemblyjs_slash_utf8";
       packageName = "@webassemblyjs/utf8";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.8.tgz";
-        sha512 = "9X+f0VV+xNXW2ujfIRSXBJENGE6Qh7bNVKqu3yDjTFB3ar3nsThsGBBKdTG58aXOm2iUH6v28VIf88ymPXODHA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.11.tgz";
+        sha512 = "C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==";
       };
     };
-    "@webassemblyjs/validation-1.7.8" = {
+    "@webassemblyjs/validation-1.7.11" = {
       name = "_at_webassemblyjs_slash_validation";
       packageName = "@webassemblyjs/validation";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.7.8.tgz";
-        sha512 = "UmEQX0TMA+uCbaQYA+Z8YwwIr+Y5W5UMaROEh4V+7Ef6HpkFZBn8sHRo5xNQORy2rxkkOSR25tjUK62n6iQlDA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.7.11.tgz";
+        sha512 = "F+SNGDictbnqdcoaIUlhWvM11mupf8OLKaBKKFrUDENaVQI/LsdfMuXg3lglLfV5Rkp9isqda2SUMiJZXyYzHQ==";
       };
     };
-    "@webassemblyjs/wasm-edit-1.7.8" = {
+    "@webassemblyjs/wasm-edit-1.7.11" = {
       name = "_at_webassemblyjs_slash_wasm-edit";
       packageName = "@webassemblyjs/wasm-edit";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.8.tgz";
-        sha512 = "6D3Hm2gFixrfyx9XjSON4ml1FZTugqpkIz5Awvrou8fnpyprVzcm4X8pyGRtA2Piixjl3DqmX/HB1xdWyE097A==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz";
+        sha512 = "FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==";
       };
     };
-    "@webassemblyjs/wasm-gen-1.7.8" = {
+    "@webassemblyjs/wasm-gen-1.7.11" = {
       name = "_at_webassemblyjs_slash_wasm-gen";
       packageName = "@webassemblyjs/wasm-gen";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.8.tgz";
-        sha512 = "a7O/wE6eBeVKKUYgpMK7NOHmMADD85rSXLe3CqrWRDwWff5y3cSVbzpN6Qv3z6C4hdkpq9qyij1Ga1kemOZGvQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz";
+        sha512 = "U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==";
       };
     };
-    "@webassemblyjs/wasm-opt-1.7.8" = {
+    "@webassemblyjs/wasm-opt-1.7.11" = {
       name = "_at_webassemblyjs_slash_wasm-opt";
       packageName = "@webassemblyjs/wasm-opt";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.8.tgz";
-        sha512 = "3lbQ0PT81NHCdi1sR/7+SNpZadM4qYcTSr62nFFAA7e5lFwJr14M1Gi+A/Y3PgcDWOHYjsaNGPpPU0H03N6Blg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz";
+        sha512 = "XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==";
       };
     };
-    "@webassemblyjs/wasm-parser-1.7.8" = {
+    "@webassemblyjs/wasm-parser-1.7.11" = {
       name = "_at_webassemblyjs_slash_wasm-parser";
       packageName = "@webassemblyjs/wasm-parser";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.8.tgz";
-        sha512 = "rZ/zlhp9DHR/05zh1MbAjT2t624sjrPP/OkJCjXqzm7ynH+nIdNcn9Ixc+qzPMFXhIrk0rBoQ3to6sEIvHh9jQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz";
+        sha512 = "6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==";
       };
     };
-    "@webassemblyjs/wast-parser-1.7.8" = {
+    "@webassemblyjs/wast-parser-1.7.11" = {
       name = "_at_webassemblyjs_slash_wast-parser";
       packageName = "@webassemblyjs/wast-parser";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.8.tgz";
-        sha512 = "Q/zrvtUvzWuSiJMcSp90fi6gp2nraiHXjTV2VgAluVdVapM4gy1MQn7akja2p6eSBDQpKJPJ6P4TxRkghRS5dg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz";
+        sha512 = "lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==";
       };
     };
-    "@webassemblyjs/wast-printer-1.7.8" = {
+    "@webassemblyjs/wast-printer-1.7.11" = {
       name = "_at_webassemblyjs_slash_wast-printer";
       packageName = "@webassemblyjs/wast-printer";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.8.tgz";
-        sha512 = "GllIthRtwTxRDAURRNXscu7Napzmdf1jt1gpiZiK/QN4fH0lSGs3OTmvdfsMNP7tqI4B3ZtfaaWRlNIQug6Xyg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz";
+        sha512 = "m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==";
       };
     };
     "@xtuc/ieee754-1.2.0" = {
@@ -1494,7 +1494,7 @@ let
       packageName = "abstract-leveldown";
       version = "0.12.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz";
+        url = "http://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz";
         sha1 = "29e18e632e60e4e221d5810247852a63d7b2e410";
       };
     };
@@ -1503,10 +1503,19 @@ let
       packageName = "abstract-leveldown";
       version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-4.0.3.tgz";
+        url = "http://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-4.0.3.tgz";
         sha512 = "qsIHFQy0u17JqSY+3ZUT+ykqxYY17yOfvAsLkFkw8kSQqi05d1jyj0bCuSX6sjYlXuY9cKpgUt5EudQdP4aXyA==";
       };
     };
+    "abstract-leveldown-5.0.0" = {
+      name = "abstract-leveldown";
+      packageName = "abstract-leveldown";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-5.0.0.tgz";
+        sha512 = "5mU5P1gXtsMIXg65/rsYGsi93+MlogXZ9FA8JnwKurHQg64bfXwGYVdVdijNTVNOlAsuIiOwHdvFFD5JqCJQ7A==";
+      };
+    };
     "abstract-random-access-1.1.2" = {
       name = "abstract-random-access";
       packageName = "abstract-random-access";
@@ -1597,13 +1606,13 @@ let
         sha512 = "T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==";
       };
     };
-    "acorn-6.0.2" = {
+    "acorn-6.0.4" = {
       name = "acorn";
       packageName = "acorn";
-      version = "6.0.2";
+      version = "6.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-6.0.2.tgz";
-        sha512 = "GXmKIvbrN3TV7aVqAzVFaMW8F8wzVX7voEBRO3bDA64+EX37YSayggRJP5Xig6HYHBkWKpFg9W5gg6orklubhg==";
+        url = "https://registry.npmjs.org/acorn/-/acorn-6.0.4.tgz";
+        sha512 = "VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==";
       };
     };
     "acorn-dynamic-import-3.0.0" = {
@@ -1615,6 +1624,15 @@ let
         sha512 = "zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==";
       };
     };
+    "acorn-dynamic-import-4.0.0" = {
+      name = "acorn-dynamic-import";
+      packageName = "acorn-dynamic-import";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz";
+        sha512 = "d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==";
+      };
+    };
     "acorn-globals-1.0.9" = {
       name = "acorn-globals";
       packageName = "acorn-globals";
@@ -1651,13 +1669,22 @@ let
         sha512 = "JY+iV6r+cO21KtntVvFkD+iqjtdpRUpGqKWgfkCdZq1R+kbreEl8EcdcJR4SmiIgsIQT33s6QzheQ9a275Q8xw==";
       };
     };
-    "acorn-node-1.6.0" = {
+    "acorn-jsx-5.0.0" = {
+      name = "acorn-jsx";
+      packageName = "acorn-jsx";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.0.tgz";
+        sha512 = "XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg==";
+      };
+    };
+    "acorn-node-1.6.2" = {
       name = "acorn-node";
       packageName = "acorn-node";
-      version = "1.6.0";
+      version = "1.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn-node/-/acorn-node-1.6.0.tgz";
-        sha512 = "ZsysjEh+Y3i14f7YXCAKJy99RXbd56wHKYBzN4FlFtICIZyFpYwK6OwNJhcz8A/FMtxoUZkJofH1v9KIfNgWmw==";
+        url = "https://registry.npmjs.org/acorn-node/-/acorn-node-1.6.2.tgz";
+        sha512 = "rIhNEZuNI8ibQcL7ANm/mGyPukIaZsRNX9psFNQURyJW0nu6k8wjSDld20z6v2mDBWqX13pIEnk9gGZJHIlEXg==";
       };
     };
     "acorn-walk-6.1.0" = {
@@ -1804,13 +1831,13 @@ let
         sha512 = "JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==";
       };
     };
-    "agentkeepalive-3.5.1" = {
+    "agentkeepalive-3.5.2" = {
       name = "agentkeepalive";
       packageName = "agentkeepalive";
-      version = "3.5.1";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.1.tgz";
-        sha512 = "Cte/sTY9/XcygXjJ0q58v//SnEQ7ViWExKyJpLJlLqomDbQyMLh6Is4KuWJ/wmxzhiwkGRple7Gqv1zf6Syz5w==";
+        url = "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz";
+        sha512 = "e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==";
       };
     };
     "aggregate-error-1.0.0" = {
@@ -1903,6 +1930,15 @@ let
         sha512 = "4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==";
       };
     };
+    "ajv-6.5.5" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz";
+        sha512 = "7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==";
+      };
+    };
     "ajv-keywords-1.5.1" = {
       name = "ajv-keywords";
       packageName = "ajv-keywords";
@@ -1935,7 +1971,7 @@ let
       packageName = "aliasify";
       version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aliasify/-/aliasify-2.1.0.tgz";
+        url = "http://registry.npmjs.org/aliasify/-/aliasify-2.1.0.tgz";
         sha1 = "7c30825b9450b9e6185ba27533eaf6e2067d4b42";
       };
     };
@@ -2043,7 +2079,7 @@ let
       packageName = "ansi-escapes";
       version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz";
+        url = "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz";
         sha1 = "d3a8a83b319aa67793662b13e761c7911422306e";
       };
     };
@@ -2052,7 +2088,7 @@ let
       packageName = "ansi-escapes";
       version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz";
+        url = "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz";
         sha512 = "UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==";
       };
     };
@@ -2245,13 +2281,13 @@ let
         sha1 = "ee49736b639b4f108b6e9e626c6da99306b41692";
       };
     };
-    "apollo-cache-1.1.17" = {
+    "apollo-cache-1.1.20" = {
       name = "apollo-cache";
       packageName = "apollo-cache";
-      version = "1.1.17";
+      version = "1.1.20";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache/-/apollo-cache-1.1.17.tgz";
-        sha512 = "7sp24n2HZO4vXgTaKNomLyIfGxG4gDdDkBB0jkRzRi7HhnKmfwhiF/RCiKNbgLdrPX151INdls0KwIVliD0dHQ==";
+        url = "https://registry.npmjs.org/apollo-cache/-/apollo-cache-1.1.20.tgz";
+        sha512 = "+Du0/4kUSuf5PjPx0+pvgMGV12ezbHA8/hubYuqRQoy/4AWb4faa61CgJNI6cKz2mhDd9m94VTNKTX11NntwkQ==";
       };
     };
     "apollo-cache-control-0.2.5" = {
@@ -2263,22 +2299,22 @@ let
         sha512 = "xEDrUvo3U2mQKSzA8NzQmgeqK4ytwFnTGl2YKGKPfG0+r8fZdswKp6CDBue29KLO8KkSuqW/hntveWrAdK51FQ==";
       };
     };
-    "apollo-cache-inmemory-1.3.5" = {
+    "apollo-cache-inmemory-1.3.9" = {
       name = "apollo-cache-inmemory";
       packageName = "apollo-cache-inmemory";
-      version = "1.3.5";
+      version = "1.3.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache-inmemory/-/apollo-cache-inmemory-1.3.5.tgz";
-        sha512 = "CD4Dl9vcCp7N05KUqR3rNDj2WJ1DQNNfeyBUIo5T6XTiUhfBQp5x+CL7S+ezy5mPp+xo4TnwFzLFh/vy2LdDog==";
+        url = "https://registry.npmjs.org/apollo-cache-inmemory/-/apollo-cache-inmemory-1.3.9.tgz";
+        sha512 = "Q2k84p/OqIuMUyeWGc6XbVXXZu0erYOO+wTx9p+CnQUspnNvf7zmvFNgFnmudXzfuG1m1CSzePk6fC/M1ehOqQ==";
       };
     };
-    "apollo-client-2.4.2" = {
+    "apollo-client-2.4.5" = {
       name = "apollo-client";
       packageName = "apollo-client";
-      version = "2.4.2";
+      version = "2.4.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-client/-/apollo-client-2.4.2.tgz";
-        sha512 = "g1z23umaVSoKLj9xNl0aAnk2KBF4JeBi7MeKFc9CGTixH7TkqeQUQtxcjrC7j2h4KmDbuhOAHOFUGf8YshN+ag==";
+        url = "https://registry.npmjs.org/apollo-client/-/apollo-client-2.4.5.tgz";
+        sha512 = "nUm06EGa4TP/IY68OzmC3lTD32TqkjLOQdb69uYo+lHl8NnwebtrAw3qFtsQtTEz6ueBp/Z/HasNZng4jwafVQ==";
       };
     };
     "apollo-codegen-0.19.1" = {
@@ -2434,22 +2470,22 @@ let
         sha512 = "DZO7pfL5LATHeJdVFoTZ/N3HwA+IMf1YnIt5K+uMQW+/MrRgYOtTszUv5tYX2cUIqHYHcbdDaBQUuIXwSpaV2Q==";
       };
     };
-    "apollo-upload-client-8.1.0" = {
+    "apollo-upload-client-9.1.0" = {
       name = "apollo-upload-client";
       packageName = "apollo-upload-client";
-      version = "8.1.0";
+      version = "9.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-upload-client/-/apollo-upload-client-8.1.0.tgz";
-        sha512 = "JEgStzhnwybj1ifE2nViLEl7NTM5+zS++fKbDL95PIpodg2AdYeeN7eEa7RXpYD14iC3FVcsfqgGMREv2+cSxw==";
+        url = "https://registry.npmjs.org/apollo-upload-client/-/apollo-upload-client-9.1.0.tgz";
+        sha512 = "ZN5gsbBjImEZTWWTUHpCEGDasnoBGbaODpznQ5EawyNHceuFYSNJbbft+ZZ841vZAcj9XZdKUKoaLBlMZ/r7nw==";
       };
     };
-    "apollo-utilities-1.0.21" = {
+    "apollo-utilities-1.0.25" = {
       name = "apollo-utilities";
       packageName = "apollo-utilities";
-      version = "1.0.21";
+      version = "1.0.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.0.21.tgz";
-        sha512 = "ZcxELlEl+sDCYBgEMdNXJAsZtRVm8wk4HIA58bMsqYfd1DSAJQEtZ93F0GZgYNAGy3QyaoBeZtbb0/01++G8JQ==";
+        url = "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.0.25.tgz";
+        sha512 = "AXvqkhni3Ir1ffm4SA1QzXn8k8I5BBl4PVKEyak734i4jFdp+xgfUyi2VCqF64TJlFTA/B73TRDUvO2D+tKtZg==";
       };
     };
     "append-0.1.1" = {
@@ -2479,15 +2515,6 @@ let
         sha1 = "d8220cf466081525efea50614f3de6514dfa58f1";
       };
     };
-    "append-field-0.1.0" = {
-      name = "append-field";
-      packageName = "append-field";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/append-field/-/append-field-0.1.0.tgz";
-        sha1 = "6ddc58fa083c7bc545d3c5995b2830cc2366d44a";
-      };
-    };
     "append-field-1.0.0" = {
       name = "append-field";
       packageName = "append-field";
@@ -3271,15 +3298,6 @@ let
         sha1 = "d16901d10ccec59516c197b9ccd8930689b813b4";
       };
     };
-    "atomic-file-0.0.1" = {
-      name = "atomic-file";
-      packageName = "atomic-file";
-      version = "0.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/atomic-file/-/atomic-file-0.0.1.tgz";
-        sha1 = "6c36658f6c4ece33fba3877731e7c25fc82999bb";
-      };
-    };
     "atomic-file-1.1.5" = {
       name = "atomic-file";
       packageName = "atomic-file";
@@ -3316,13 +3334,13 @@ let
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.334.0" = {
+    "aws-sdk-2.349.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.334.0";
+      version = "2.349.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.334.0.tgz";
-        sha512 = "JiqtB2t/PklHCfo86HA6g6a8CXu5SDNa8XiaQ0rYyVBlzDR41p/s/yNlva3D1/QGiBTojl2fd9ZxBUxKa2Q9cg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.349.0.tgz";
+        sha512 = "yGYCvXOKpvLfbhh1Vo+/2q+Z5bRdPlFpXX3kHBGz4haI6ZoLfFGuztap4en83zim/wpG1ZrhVJjd9u+i9l1ZEA==";
       };
     };
     "aws-sign-0.2.1" = {
@@ -3438,7 +3456,7 @@ let
       packageName = "azure-arm-devtestlabs";
       version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-devtestlabs/-/azure-arm-devtestlabs-2.1.1.tgz";
+        url = "http://registry.npmjs.org/azure-arm-devtestlabs/-/azure-arm-devtestlabs-2.1.1.tgz";
         sha512 = "S5dCYTMrqL+BJc699fIQtXwLFuv5m8jTDqPdXTFpn/CSkyBcOyJwuZH2zPExQjGNZTyjIR6GWi8oeg/IpYLBWw==";
       };
     };
@@ -3523,13 +3541,13 @@ let
         sha1 = "aa9a49fb9081a210f2f4cc6596ca4653b68306e6";
       };
     };
-    "azure-arm-resource-7.0.0" = {
+    "azure-arm-resource-7.0.1" = {
       name = "azure-arm-resource";
       packageName = "azure-arm-resource";
-      version = "7.0.0";
+      version = "7.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-resource/-/azure-arm-resource-7.0.0.tgz";
-        sha512 = "LW1OmW49d5xQo/KDBK2BNfoFVOlP8Gq9yKqP2kz0e6RURl5UXhIfN65Y4GeJramuyGIOXeGPV+NrXrzl1k4d4g==";
+        url = "https://registry.npmjs.org/azure-arm-resource/-/azure-arm-resource-7.0.1.tgz";
+        sha512 = "vimPiR/xf6TFWNooIXZM6gRQV7Gdqs0y2wzNF+SNSMxPj3h8XEuSL/SyRZHNULY7sJseAx+0aGjWXbZxQo+kVw==";
       };
     };
     "azure-arm-servermanagement-1.1.0" = {
@@ -3559,13 +3577,13 @@ let
         sha1 = "b46cfcf7f1690e4739864dcdb5c8de322e82ec50";
       };
     };
-    "azure-arm-website-5.3.0" = {
+    "azure-arm-website-5.5.0" = {
       name = "azure-arm-website";
       packageName = "azure-arm-website";
-      version = "5.3.0";
+      version = "5.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-website/-/azure-arm-website-5.3.0.tgz";
-        sha512 = "R2x44/SIGCuTBkRvnZuEjagIMAqcec38HnCl1AEO9NwpEh0HiD9eIa1XEM7j6wa7vHqyQdL7hNwYnCS0QRDkNQ==";
+        url = "https://registry.npmjs.org/azure-arm-website/-/azure-arm-website-5.5.0.tgz";
+        sha512 = "fppYG7UtrFNtuMPlyIpWItC7D6pcU4Nhu0UAs9uew42jubQG+PTNRSCadGMuOlANCBEUVtAGMk4jfUU2UGhKTw==";
       };
     };
     "azure-asm-compute-0.18.0" = {
@@ -3721,13 +3739,13 @@ let
         sha512 = "SkMg4vVrQ7Vd7/h8h3qZzURQysV4KJqUIy4pjs/XRjVbCduSePlJ3EOgAl9ed739RWkT906xIAU3tu2Pf5RKFQ==";
       };
     };
-    "azure-storage-2.10.1" = {
+    "azure-storage-2.10.2" = {
       name = "azure-storage";
       packageName = "azure-storage";
-      version = "2.10.1";
+      version = "2.10.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.10.1.tgz";
-        sha512 = "rnFo1uMIPtilusRCpK91tfY3P4Q7qRsDNwriXdp+OeTIGkGt0cTxL4mhqYfNPYPK+WBQmBdGWhOk+iROM05dcw==";
+        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.10.2.tgz";
+        sha512 = "pOyGPya9+NDpAfm5YcFfklo57HfjDbYLXxs4lomPwvRxmb0Di/A+a+RkUmEFzaQ8S13CqxK40bRRB0sjj2ZQxA==";
       };
     };
     "babel-code-frame-6.26.0" = {
@@ -4108,15 +4126,6 @@ let
         sha1 = "45221ee429f7ee1e5035be3f51533f1cdfd29884";
       };
     };
-    "basic-auth-2.0.0" = {
-      name = "basic-auth";
-      packageName = "basic-auth";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz";
-        sha1 = "015db3f353e02e56377755f962742e8981e7bbba";
-      };
-    };
     "basic-auth-2.0.1" = {
       name = "basic-auth";
       packageName = "basic-auth";
@@ -4527,7 +4536,7 @@ let
       packageName = "blob";
       version = "0.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/blob/-/blob-0.0.2.tgz";
+        url = "http://registry.npmjs.org/blob/-/blob-0.0.2.tgz";
         sha1 = "b89562bd6994af95ba1e812155536333aa23cf24";
       };
     };
@@ -4536,10 +4545,19 @@ let
       packageName = "blob";
       version = "0.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz";
+        url = "http://registry.npmjs.org/blob/-/blob-0.0.4.tgz";
         sha1 = "bcf13052ca54463f30f9fc7e95b9a47630a94921";
       };
     };
+    "blob-0.0.5" = {
+      name = "blob";
+      packageName = "blob";
+      version = "0.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz";
+        sha512 = "gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==";
+      };
+    };
     "blob-to-buffer-1.2.8" = {
       name = "blob-to-buffer";
       packageName = "blob-to-buffer";
@@ -4585,6 +4603,15 @@ let
         sha1 = "61a26904d43d7f6b19dff7ed917dbc92452ad6d3";
       };
     };
+    "bluebird-3.4.7" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.4.7";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz";
+        sha1 = "f72d760be09b7f76d08ed8fae98b289a8d05fab3";
+      };
+    };
     "bluebird-3.5.2" = {
       name = "bluebird";
       packageName = "bluebird";
@@ -4644,7 +4671,7 @@ let
       packageName = "body-parser";
       version = "1.12.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.12.4.tgz";
+        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.12.4.tgz";
         sha1 = "090700c4ba28862a8520ef378395fdee5f61c229";
       };
     };
@@ -4653,19 +4680,10 @@ let
       packageName = "body-parser";
       version = "1.13.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.13.3.tgz";
+        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.13.3.tgz";
         sha1 = "c08cf330c3358e151016a05746f13f029c97fa97";
       };
     };
-    "body-parser-1.18.2" = {
-      name = "body-parser";
-      packageName = "body-parser";
-      version = "1.18.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz";
-        sha1 = "87678a19d84b47d859b83199bd59bce222b10454";
-      };
-    };
     "body-parser-1.18.3" = {
       name = "body-parser";
       packageName = "body-parser";
@@ -4698,7 +4716,7 @@ let
       packageName = "boom";
       version = "0.3.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/boom/-/boom-0.3.8.tgz";
+        url = "http://registry.npmjs.org/boom/-/boom-0.3.8.tgz";
         sha1 = "c8cdb041435912741628c044ecc732d1d17c09ea";
       };
     };
@@ -4707,7 +4725,7 @@ let
       packageName = "boom";
       version = "2.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz";
+        url = "http://registry.npmjs.org/boom/-/boom-2.10.1.tgz";
         sha1 = "39c8918ceff5799f83f9492a848f625add0c766f";
       };
     };
@@ -5013,7 +5031,7 @@ let
       packageName = "browserify-transform-tools";
       version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserify-transform-tools/-/browserify-transform-tools-1.7.0.tgz";
+        url = "http://registry.npmjs.org/browserify-transform-tools/-/browserify-transform-tools-1.7.0.tgz";
         sha1 = "83e277221f63259bed2e7eb2a283a970a501f4c4";
       };
     };
@@ -5188,6 +5206,15 @@ let
         sha512 = "4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==";
       };
     };
+    "buffer-indexof-polyfill-1.0.1" = {
+      name = "buffer-indexof-polyfill";
+      packageName = "buffer-indexof-polyfill";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.1.tgz";
+        sha1 = "a9fb806ce8145d5428510ce72f278bb363a638bf";
+      };
+    };
     "buffer-xor-1.0.3" = {
       name = "buffer-xor";
       packageName = "buffer-xor";
@@ -5350,13 +5377,13 @@ let
         sha1 = "741c5216468eadc457b03410118ad77de8c1ddb1";
       };
     };
-    "byte-size-4.0.3" = {
+    "byte-size-4.0.4" = {
       name = "byte-size";
       packageName = "byte-size";
-      version = "4.0.3";
+      version = "4.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/byte-size/-/byte-size-4.0.3.tgz";
-        sha512 = "JGC3EV2bCzJH/ENSh3afyJrH4vwxbHTuO5ljLoI5+2iJOcEpMgP8T782jH9b5qGxf2mSUIp1lfGnfKNrRHpvVg==";
+        url = "https://registry.npmjs.org/byte-size/-/byte-size-4.0.4.tgz";
+        sha512 = "82RPeneC6nqCdSwCX2hZUz3JPOvN5at/nTEw/CMf05Smu3Hrpo9Psb7LjN+k+XndNArG1EY8L4+BM3aTM4BCvw==";
       };
     };
     "bytebuffer-3.5.5" = {
@@ -5454,17 +5481,17 @@ let
       packageName = "cacache";
       version = "10.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz";
+        url = "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz";
         sha512 = "Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==";
       };
     };
-    "cacache-11.2.0" = {
+    "cacache-11.3.1" = {
       name = "cacache";
       packageName = "cacache";
-      version = "11.2.0";
+      version = "11.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cacache/-/cacache-11.2.0.tgz";
-        sha512 = "IFWl6lfK6wSeYCHUXh+N1lY72UDrpyrYQJNIVQf48paDuWbv5RbAtJYf/4gUQFObTCHZwdZ5sI8Iw7nqwP6nlQ==";
+        url = "https://registry.npmjs.org/cacache/-/cacache-11.3.1.tgz";
+        sha512 = "2PEw4cRRDu+iQvBTTuttQifacYjLPhET+SYO/gEFMy8uhi+jlJREDAjSF5FWSdV/Aw5h18caHA7vMTw2c+wDzA==";
       };
     };
     "cache-base-1.0.1" = {
@@ -5634,7 +5661,7 @@ let
       packageName = "camelcase-keys";
       version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz";
+        url = "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz";
         sha1 = "308beeaffdf28119051efa1d932213c91b8f92e7";
       };
     };
@@ -5940,7 +5967,7 @@ let
       packageName = "cheerio";
       version = "0.17.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cheerio/-/cheerio-0.17.0.tgz";
+        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.17.0.tgz";
         sha1 = "fa5ae42cc60121133d296d0b46d983215f7268ea";
       };
     };
@@ -5949,7 +5976,7 @@ let
       packageName = "cheerio";
       version = "0.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cheerio/-/cheerio-0.20.0.tgz";
+        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.20.0.tgz";
         sha1 = "5c710f2bab95653272842ba01c6ea61b3545ec35";
       };
     };
@@ -5958,7 +5985,7 @@ let
       packageName = "cheerio";
       version = "0.22.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz";
+        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz";
         sha1 = "a9baa860a3f9b595a6b81b1a86873121ed3a269e";
       };
     };
@@ -6133,13 +6160,13 @@ let
         sha512 = "UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==";
       };
     };
-    "circular-json-0.5.7" = {
+    "circular-json-0.5.9" = {
       name = "circular-json";
       packageName = "circular-json";
-      version = "0.5.7";
+      version = "0.5.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/circular-json/-/circular-json-0.5.7.tgz";
-        sha512 = "/pXoV1JA847qRKPrHbBK6YIBGFF8GOP4wzSgUOA7q0ew0vAv0iJswP+2/nZQ9uzA3Azi7eTrg9L2yzXc/7ZMIA==";
+        url = "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz";
+        sha512 = "4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==";
       };
     };
     "clarinet-0.11.0" = {
@@ -6210,7 +6237,7 @@ let
       packageName = "cli-color";
       version = "0.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cli-color/-/cli-color-0.1.7.tgz";
+        url = "http://registry.npmjs.org/cli-color/-/cli-color-0.1.7.tgz";
         sha1 = "adc3200fa471cc211b0da7f566b71e98b9d67347";
       };
     };
@@ -6826,15 +6853,6 @@ let
         sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
       };
     };
-    "combined-stream-1.0.6" = {
-      name = "combined-stream";
-      packageName = "combined-stream";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
-        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
-      };
-    };
     "combined-stream-1.0.7" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -7561,53 +7579,53 @@ let
       packageName = "conventional-changelog-angular";
       version = "1.6.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.6.6.tgz";
+        url = "http://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.6.6.tgz";
         sha512 = "suQnFSqCxRwyBxY68pYTsFkG0taIdinHLNEAX5ivtw8bCRnIgnpvcHmlR/yjUyZIrNPYAoXlY1WiEKWgSE4BNg==";
       };
     };
-    "conventional-changelog-angular-5.0.1" = {
+    "conventional-changelog-angular-5.0.2" = {
       name = "conventional-changelog-angular";
       packageName = "conventional-changelog-angular";
-      version = "5.0.1";
+      version = "5.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.1.tgz";
-        sha512 = "q4ylJ68fWZDdrFC9z4zKcf97HW6hp7Mo2YlqD4owfXhecFKy/PJCU/1oVFF4TqochchChqmZ0Vb0e0g8/MKNlA==";
+        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.2.tgz";
+        sha512 = "yx7m7lVrXmt4nKWQgWZqxSALEiAKZhOAcbxdUaU9575mB0CzXVbgrgpfSnSP7OqWDUTYGD0YVJ0MSRdyOPgAwA==";
       };
     };
-    "conventional-changelog-core-3.1.0" = {
+    "conventional-changelog-core-3.1.5" = {
       name = "conventional-changelog-core";
       packageName = "conventional-changelog-core";
-      version = "3.1.0";
+      version = "3.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.0.tgz";
-        sha512 = "bcZkcFXkqVgG2W8m/1wjlp2wn/BKDcrPgw3/mvSEQtzs8Pax8JbAPFpEQReHY92+EKNNXC67wLA8y2xcNx0rDA==";
+        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.5.tgz";
+        sha512 = "iwqAotS4zk0wA4S84YY1JCUG7X3LxaRjJxuUo6GI4dZuIy243j5nOg/Ora35ExT4DOiw5dQbMMQvw2SUjh6moQ==";
       };
     };
-    "conventional-changelog-preset-loader-2.0.1" = {
+    "conventional-changelog-preset-loader-2.0.2" = {
       name = "conventional-changelog-preset-loader";
       packageName = "conventional-changelog-preset-loader";
-      version = "2.0.1";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.0.1.tgz";
-        sha512 = "HiSfhXNzAzG9klIqJaA97MMiNBR4js+53g4Px0k7tgKeCNVXmrDrm+CY+nIqcmG5NVngEPf8rAr7iji1TWW7zg==";
+        url = "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.0.2.tgz";
+        sha512 = "pBY+qnUoJPXAXXqVGwQaVmcye05xi6z231QM98wHWamGAmu/ghkBprQAwmF5bdmyobdVxiLhPY3PrCfSeUNzRQ==";
       };
     };
-    "conventional-changelog-writer-4.0.0" = {
+    "conventional-changelog-writer-4.0.2" = {
       name = "conventional-changelog-writer";
       packageName = "conventional-changelog-writer";
-      version = "4.0.0";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.0.tgz";
-        sha512 = "hMZPe0AQ6Bi05epeK/7hz80xxk59nPA5z/b63TOHq2wigM0/akreOc8N4Jam5b9nFgKWX1e9PdPv2ewgW6bcfg==";
+        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.2.tgz";
+        sha512 = "d8/FQY/fix2xXEBUhOo8u3DCbyEw3UOQgYHxLsPDw+wHUDma/GQGAGsGtoH876WyNs32fViHmTOUrgRKVLvBug==";
       };
     };
-    "conventional-commits-filter-2.0.0" = {
+    "conventional-commits-filter-2.0.1" = {
       name = "conventional-commits-filter";
       packageName = "conventional-commits-filter";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.0.tgz";
-        sha512 = "Cfl0j1/NquB/TMVx7Wrmyq7uRM+/rPQbtVVGwzfkhZ6/yH6fcMmP0Q/9044TBZPTNdGzm46vXFXL14wbET0/Mg==";
+        url = "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.1.tgz";
+        sha512 = "92OU8pz/977udhBjgPEbg3sbYzIxMDFTlQT97w7KdhR9igNqdJvy8smmedAAgn4tPiqseFloKkrVfbXCVd+E7A==";
       };
     };
     "conventional-commits-parser-2.1.7" = {
@@ -7615,26 +7633,26 @@ let
       packageName = "conventional-commits-parser";
       version = "2.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.1.7.tgz";
+        url = "http://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.1.7.tgz";
         sha512 = "BoMaddIEJ6B4QVMSDu9IkVImlGOSGA1I2BQyOZHeLQ6qVOJLcLKn97+fL6dGbzWEiqDzfH4OkcveULmeq2MHFQ==";
       };
     };
-    "conventional-commits-parser-3.0.0" = {
+    "conventional-commits-parser-3.0.1" = {
       name = "conventional-commits-parser";
       packageName = "conventional-commits-parser";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.0.tgz";
-        sha512 = "GWh71U26BLWgMykCp+VghZ4s64wVbtseECcKQ/PvcPZR2cUnz+FUc2J9KjxNl7/ZbCxST8R03c9fc+Vi0umS9Q==";
+        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.1.tgz";
+        sha512 = "P6U5UOvDeidUJ8ebHVDIoXzI7gMlQ1OF/id6oUvp8cnZvOXMt1n8nYl74Ey9YMn0uVQtxmCtjPQawpsssBWtGg==";
       };
     };
-    "conventional-recommended-bump-4.0.1" = {
+    "conventional-recommended-bump-4.0.4" = {
       name = "conventional-recommended-bump";
       packageName = "conventional-recommended-bump";
-      version = "4.0.1";
+      version = "4.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-4.0.1.tgz";
-        sha512 = "9waJvW01TUs4HQJ3khwGSSlTlKsY+5u7OrxHL+oWEoGNvaNO/0qL6qqnhS3J0Fq9fNKA9bmlf5cOXjCQoW+I4Q==";
+        url = "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-4.0.4.tgz";
+        sha512 = "9mY5Yoblq+ZMqJpBzgS+RpSq+SUfP2miOR3H/NR9drGf08WCrY9B6HAGJZEm6+ThsVP917VHAahSOjM6k1vhPg==";
       };
     };
     "convert-source-map-1.1.3" = {
@@ -7799,13 +7817,13 @@ let
         sha512 = "Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==";
       };
     };
-    "cookies-0.7.2" = {
+    "cookies-0.7.3" = {
       name = "cookies";
       packageName = "cookies";
-      version = "0.7.2";
+      version = "0.7.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cookies/-/cookies-0.7.2.tgz";
-        sha512 = "J2JjH9T3PUNKPHknprxgCrCaZshIfxW2j49gq1E1CP5Micj1LppWAR2y9EHSQAzEiX84zOsScWNwUZ0b/ChlMw==";
+        url = "https://registry.npmjs.org/cookies/-/cookies-0.7.3.tgz";
+        sha512 = "+gixgxYSgQLTaTIilDHAdlNPZDENDQernEMiIcZpYYP14zgHsCt4Ce1FEjFtcp6GefhozebB6orvhAAWx/IS0A==";
       };
     };
     "copy-concurrently-1.0.5" = {
@@ -7912,7 +7930,7 @@ let
       packageName = "core-js";
       version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz";
+        url = "http://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz";
         sha1 = "fab83fbb0b2d8dc85fa636c4b9d34c75420c6d65";
       };
     };
@@ -7943,6 +7961,15 @@ let
         sha1 = "2bd381f2eb201020105cd50ea59da63090694686";
       };
     };
+    "cors-2.8.5" = {
+      name = "cors";
+      packageName = "cors";
+      version = "2.8.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz";
+        sha512 = "KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==";
+      };
+    };
     "corser-2.0.1" = {
       name = "corser";
       packageName = "corser";
@@ -8105,13 +8132,13 @@ let
         sha512 = "KMd0KuvwVUg1grlRd5skG9ZkSbBYDDkAjDUMLnvxdRn0rL7ph3IwoOk7I8u1yLX4HYjGiLVlWYO55YWNNPjJFA==";
       };
     };
-    "cron-1.4.1" = {
+    "cron-1.5.0" = {
       name = "cron";
       packageName = "cron";
-      version = "1.4.1";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cron/-/cron-1.4.1.tgz";
-        sha512 = "HlglwQUNh6bhgfoDR6aEzyHN2T4bc0XhxJxkNPp+Ry7lK7Noby94pHcngYf634+MtxplwZm8okFgNe+R9PGDjg==";
+        url = "https://registry.npmjs.org/cron/-/cron-1.5.0.tgz";
+        sha512 = "j7zMFLrcSta53xqOvETUt8ge+PM14GtF47gEGJJeVlM6qP24/eWHSgtiWiEiKBR2sHS8xZaBQZq4D7vFXg8dcQ==";
       };
     };
     "cross-fetch-2.2.2" = {
@@ -8164,7 +8191,7 @@ let
       packageName = "cross-spawn-async";
       version = "2.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz";
+        url = "http://registry.npmjs.org/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz";
         sha1 = "845ff0c0834a3ded9d160daca6d390906bb288cc";
       };
     };
@@ -8209,7 +8236,7 @@ let
       packageName = "cryptiles";
       version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cryptiles/-/cryptiles-0.1.3.tgz";
+        url = "http://registry.npmjs.org/cryptiles/-/cryptiles-0.1.3.tgz";
         sha1 = "1a556734f06d24ba34862ae9cb9e709a3afbff1c";
       };
     };
@@ -8218,17 +8245,17 @@ let
       packageName = "cryptiles";
       version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz";
+        url = "http://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz";
         sha1 = "3bdfecdc608147c1c67202fa291e7dca59eaa3b8";
       };
     };
-    "cryptiles-3.1.2" = {
+    "cryptiles-3.1.4" = {
       name = "cryptiles";
       packageName = "cryptiles";
-      version = "3.1.2";
+      version = "3.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz";
-        sha1 = "a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe";
+        url = "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.4.tgz";
+        sha512 = "8I1sgZHfVwcSOY6mSGpVU3lw/GSIZvusg8dD2+OGehCJpOhQRLNcH0qb9upQnOH4XhgxxFJSg6E2kx95deb1Tw==";
       };
     };
     "crypto-0.0.3" = {
@@ -8308,26 +8335,26 @@ let
       packageName = "css-select";
       version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz";
+        url = "http://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz";
         sha1 = "2b3a110539c5355f1cd8d314623e870b121ec858";
       };
     };
-    "css-select-2.0.0" = {
+    "css-select-2.0.2" = {
       name = "css-select";
       packageName = "css-select";
-      version = "2.0.0";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-select/-/css-select-2.0.0.tgz";
-        sha512 = "MGhoq1S9EyPgZIGnts8Yz5WwUOyHmPMdlqeifsYs/xFX7AAm3hY0RJe1dqVlXtYPI66Nsk39R/sa5/ree6L2qg==";
+        url = "https://registry.npmjs.org/css-select/-/css-select-2.0.2.tgz";
+        sha512 = "dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ==";
       };
     };
-    "css-select-base-adapter-0.1.0" = {
+    "css-select-base-adapter-0.1.1" = {
       name = "css-select-base-adapter";
       packageName = "css-select-base-adapter";
-      version = "0.1.0";
+      version = "0.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.0.tgz";
-        sha1 = "0102b3d14630df86c3eb9fa9f5456270106cf990";
+        url = "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz";
+        sha512 = "jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==";
       };
     };
     "css-stringify-1.0.5" = {
@@ -8366,13 +8393,13 @@ let
         sha1 = "83834230cc9f74c457de59eebd1543feeb83b7ec";
       };
     };
-    "css-what-2.1.0" = {
+    "css-what-2.1.2" = {
       name = "css-what";
       packageName = "css-what";
-      version = "2.1.0";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz";
-        sha1 = "9467d032c38cfaefb9f2d79501253062f87fa1bd";
+        url = "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz";
+        sha512 = "wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==";
       };
     };
     "cssauron-1.4.0" = {
@@ -8456,6 +8483,15 @@ let
         sha1 = "d1cfd8743c2f849a0abb2fd544db56695d19a490";
       };
     };
+    "csv-parser-1.12.1" = {
+      name = "csv-parser";
+      packageName = "csv-parser";
+      version = "1.12.1";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/csv-parser/-/csv-parser-1.12.1.tgz";
+        sha512 = "r45M92nLnGP246ot0Yo5RvbiiMF5Bw/OTIdWJ3OQ4Vbv4hpOeoXVIPxdSmUw+fPJlQOseY+iigJyLSfPMIrddQ==";
+      };
+    };
     "csv-stringify-0.0.8" = {
       name = "csv-stringify";
       packageName = "csv-stringify";
@@ -8470,7 +8506,7 @@ let
       packageName = "ctype";
       version = "0.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz";
+        url = "http://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz";
         sha1 = "fe8091d468a373a0b0c9ff8bbfb3425c00973a1d";
       };
     };
@@ -8479,7 +8515,7 @@ let
       packageName = "ctype";
       version = "0.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
+        url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
         sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
       };
     };
@@ -8578,7 +8614,7 @@ let
       packageName = "d";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/d/-/d-1.0.0.tgz";
+        url = "http://registry.npmjs.org/d/-/d-1.0.0.tgz";
         sha1 = "754bb5bfe55451da69a58b94d45f4c5b0462d58f";
       };
     };
@@ -9221,6 +9257,15 @@ let
         sha512 = "ajbXqRPMXRlcdyt0TuWqknOJkp1JgQjGB7xOl2V+ebol7/U11E9h3/nCZAtN1M7djmAJEIhypCUc1tIWxdQAuQ==";
       };
     };
+    "deferred-leveldown-4.0.2" = {
+      name = "deferred-leveldown";
+      packageName = "deferred-leveldown";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-4.0.2.tgz";
+        sha512 = "5fMC8ek8alH16QiV0lTCis610D1Zt1+LA4MS4d63JgS32lrCjTFDUFz2ao09/j2I4Bqb5jL4FZYwu7Jz0XO1ww==";
+      };
+    };
     "define-properties-1.1.3" = {
       name = "define-properties";
       packageName = "define-properties";
@@ -9352,19 +9397,10 @@ let
       packageName = "depd";
       version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
+        url = "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
         sha1 = "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa";
       };
     };
-    "depd-1.1.1" = {
-      name = "depd";
-      packageName = "depd";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz";
-        sha1 = "5783b4e1c459f06fa5ca27f991f3d06e7a310359";
-      };
-    };
     "depd-1.1.2" = {
       name = "depd";
       packageName = "depd";
@@ -9635,6 +9671,15 @@ let
         sha1 = "4d5afc5187edba67ec6ab0e55f6422a0e2cb7338";
       };
     };
+    "discontinuous-range-1.0.0" = {
+      name = "discontinuous-range";
+      packageName = "discontinuous-range";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz";
+        sha1 = "e38331f0844bba49b9a9cb71c771585aab1bc65a";
+      };
+    };
     "discovery-channel-5.5.1" = {
       name = "discovery-channel";
       packageName = "discovery-channel";
@@ -9874,7 +9919,7 @@ let
       packageName = "domelementtype";
       version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
+        url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
         sha1 = "bd28773e2642881aec51544924299c5cd822185b";
       };
     };
@@ -9883,7 +9928,7 @@ let
       packageName = "domelementtype";
       version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz";
+        url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz";
         sha1 = "b17aed82e8ab59e52dd9c19b1756e0fc187204c2";
       };
     };
@@ -10379,7 +10424,7 @@ let
       packageName = "enabled";
       version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz";
+        url = "http://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz";
         sha1 = "965f6513d2c2d1c5f4652b64a2e3396467fc2f93";
       };
     };
@@ -10410,6 +10455,15 @@ let
         sha512 = "AlSE+ugBIpLL0i9if2SlnOZ4oWj/XvBb8tw2Ie/pFB73vdYs5O/6plRyqIgjbZbz8onaL20AAuMP87LWbP56IQ==";
       };
     };
+    "encoding-down-5.0.4" = {
+      name = "encoding-down";
+      packageName = "encoding-down";
+      version = "5.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encoding-down/-/encoding-down-5.0.4.tgz";
+        sha512 = "8CIZLDcSKxgzT+zX8ZVfgNbu8Md2wq/iqa1Y7zyVR18QBEAc0Nmzuvj/N5ykSKpfGzjM8qxbaFntLPwnVoUhZw==";
+      };
+    };
     "end-of-stream-0.1.5" = {
       name = "end-of-stream";
       packageName = "end-of-stream";
@@ -10460,7 +10514,7 @@ let
       packageName = "engine.io";
       version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io/-/engine.io-1.3.1.tgz";
+        url = "http://registry.npmjs.org/engine.io/-/engine.io-1.3.1.tgz";
         sha1 = "2d968308fffae5d17f5209b6775246e90d8a705e";
       };
     };
@@ -10473,13 +10527,13 @@ let
         sha512 = "j1DWIcktw4hRwrv6nWx++5nFH2X64x16MAG2P0Lmi5Dvdfi3I+Jhc7JKJIdAmDJa+5aZ/imHV7dWRPy2Cqjh3A==";
       };
     };
-    "engine.io-3.2.0" = {
+    "engine.io-3.2.1" = {
       name = "engine.io";
       packageName = "engine.io";
-      version = "3.2.0";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz";
-        sha512 = "mRbgmAtQ4GAlKwuPnnAvXXwdPhEx+jkc0OBCLrXuD/CRvwNK3AxRSnqK4FSqmAMRRHryVJP8TopOvmEaA64fKw==";
+        url = "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz";
+        sha512 = "+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==";
       };
     };
     "engine.io-client-1.3.1" = {
@@ -10514,7 +10568,7 @@ let
       packageName = "engine.io-parser";
       version = "1.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.0.6.tgz";
+        url = "http://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.0.6.tgz";
         sha1 = "d38813143a411cb3b914132ab05bf99e6f7a248e";
       };
     };
@@ -10523,17 +10577,17 @@ let
       packageName = "engine.io-parser";
       version = "1.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz";
+        url = "http://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz";
         sha1 = "937b079f0007d0893ec56d46cb220b8cb435220a";
       };
     };
-    "engine.io-parser-2.1.2" = {
+    "engine.io-parser-2.1.3" = {
       name = "engine.io-parser";
       packageName = "engine.io-parser";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz";
-        sha512 = "dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==";
+        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz";
+        sha512 = "6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==";
       };
     };
     "enhanced-resolve-2.3.0" = {
@@ -10577,17 +10631,17 @@ let
       packageName = "entities";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz";
+        url = "http://registry.npmjs.org/entities/-/entities-1.0.0.tgz";
         sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26";
       };
     };
-    "entities-1.1.1" = {
+    "entities-1.1.2" = {
       name = "entities";
       packageName = "entities";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz";
-        sha1 = "6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0";
+        url = "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz";
+        sha512 = "f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==";
       };
     };
     "env-paths-1.0.0" = {
@@ -10626,13 +10680,13 @@ let
         sha512 = "rXbzXWvnQxy+TcqZlARbWVQwgGVVouVJgFZhLVN5htjLxl1thstrP2ZGi0pXC309AbK7gVOPU+ulz/tmpCI7iw==";
       };
     };
-    "epidemic-broadcast-trees-6.3.4" = {
+    "epidemic-broadcast-trees-6.3.5" = {
       name = "epidemic-broadcast-trees";
       packageName = "epidemic-broadcast-trees";
-      version = "6.3.4";
+      version = "6.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/epidemic-broadcast-trees/-/epidemic-broadcast-trees-6.3.4.tgz";
-        sha512 = "ucs3AI3ebPCDFGw8B0SUBwzcY2WqKrbJeqYeeX9KF+XvsO7GFEe0L+1hXPfJcEScfGPByXJNACkYwUFnNaOueQ==";
+        url = "https://registry.npmjs.org/epidemic-broadcast-trees/-/epidemic-broadcast-trees-6.3.5.tgz";
+        sha512 = "FYCOslXU7OBkz8A9FXsykcpgby3WKcRdLTCr1LivLLSU2nzaO/x86jBGNFEZkezZPx9/Z5fDVX8SGQyXLz8WZQ==";
       };
     };
     "err-code-1.1.2" = {
@@ -10820,7 +10874,7 @@ let
       packageName = "es6-promisify";
       version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz";
+        url = "http://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz";
         sha1 = "5109d62f3e56ea967c4b63505aef08291c8a5203";
       };
     };
@@ -10838,7 +10892,7 @@ let
       packageName = "es6-shim";
       version = "0.21.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es6-shim/-/es6-shim-0.21.1.tgz";
+        url = "http://registry.npmjs.org/es6-shim/-/es6-shim-0.21.1.tgz";
         sha1 = "6621bce72e1ac80a6e1f002abd4e789f12489fd2";
       };
     };
@@ -10959,13 +11013,13 @@ let
         sha512 = "D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==";
       };
     };
-    "eslint-5.7.0" = {
+    "eslint-5.8.0" = {
       name = "eslint";
       packageName = "eslint";
-      version = "5.7.0";
+      version = "5.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-5.7.0.tgz";
-        sha512 = "zYCeFQahsxffGl87U2aJ7DPyH8CbWgxBC213Y8+TCanhUTf2gEvfq3EKpHmEcozTLyPmGe9LZdMAwC/CpJBM5A==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-5.8.0.tgz";
+        sha512 = "Zok6Bru3y2JprqTNm14mgQ15YQu/SMDkWdnmHfFg770DIUlmMFd/gqqzCHekxzjHZJxXv3tmTpH0C1icaYJsRQ==";
       };
     };
     "eslint-plugin-no-unsafe-innerhtml-1.0.16" = {
@@ -11018,7 +11072,7 @@ let
       packageName = "espree";
       version = "3.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz";
+        url = "http://registry.npmjs.org/espree/-/espree-3.5.4.tgz";
         sha512 = "yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==";
       };
     };
@@ -11031,6 +11085,15 @@ let
         sha512 = "kapdTCt1bjmspxStVKX6huolXVV5ZfyZguY1lcfhVVZstce3bqxH9mcLzNn3/mlgW6wQ732+0fuG9v7h0ZQoKg==";
       };
     };
+    "espree-4.1.0" = {
+      name = "espree";
+      packageName = "espree";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz";
+        sha512 = "I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==";
+      };
+    };
     "esprima-1.0.4" = {
       name = "esprima";
       packageName = "esprima";
@@ -11373,6 +11436,15 @@ let
         sha1 = "d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da";
       };
     };
+    "execa-0.9.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.9.0.tgz";
+        sha512 = "BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA==";
+      };
+    };
     "execa-1.0.0" = {
       name = "execa";
       packageName = "execa";
@@ -11544,15 +11616,6 @@ let
         sha1 = "8df3d5a9ac848585f00a0777601823faecd3b148";
       };
     };
-    "express-4.16.3" = {
-      name = "express";
-      packageName = "express";
-      version = "4.16.3";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-4.16.3.tgz";
-        sha1 = "6af8a502350db3246ecc4becf6b5a34d22f7ed53";
-      };
-    };
     "express-4.16.4" = {
       name = "express";
       packageName = "express";
@@ -11562,13 +11625,13 @@ let
         sha512 = "j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==";
       };
     };
-    "express-5.0.0-alpha.6" = {
+    "express-5.0.0-alpha.7" = {
       name = "express";
       packageName = "express";
-      version = "5.0.0-alpha.6";
+      version = "5.0.0-alpha.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-5.0.0-alpha.6.tgz";
-        sha1 = "85dc44d7e90d4809041407f388f239b5bd2f681e";
+        url = "https://registry.npmjs.org/express/-/express-5.0.0-alpha.7.tgz";
+        sha512 = "3FW+yXzYCViXf6Ty9TN9IKLW+rC8qok3ktS4hS1FILAEnMnfnDpQ+23rZVvWC0Ul1alYpJXx7xSBSBp073970g==";
       };
     };
     "express-handlebars-3.0.0" = {
@@ -11769,13 +11832,13 @@ let
         sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==";
       };
     };
-    "extract-files-3.1.0" = {
+    "extract-files-4.1.0" = {
       name = "extract-files";
       packageName = "extract-files";
-      version = "3.1.0";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/extract-files/-/extract-files-3.1.0.tgz";
-        sha512 = "urkJPM4N88CMy1AfDw+Avudon6fToTsaG5j5VN0aybn88udv1yrERFCweV78NaZg7DOFsQULkFgvP64vNQFNMQ==";
+        url = "https://registry.npmjs.org/extract-files/-/extract-files-4.1.0.tgz";
+        sha512 = "2gjdb3dVzr1ie9+K8pupPTnsNkK4qmzbTFOIxghiWoh6nCTajGCGC72ZNYX0nBWy5IOq1FXfRVgvkkLqqE4sdw==";
       };
     };
     "extract-opts-3.3.1" = {
@@ -11891,7 +11954,7 @@ let
       packageName = "fast-deep-equal";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        url = "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
         sha1 = "c053477817c86b51daa853c81e059b733d023614";
       };
     };
@@ -12021,15 +12084,6 @@ let
         sha1 = "f0efe18c4f56e4f40afc7e06c719fd5ee6188f38";
       };
     };
-    "fclone-1.0.11" = {
-      name = "fclone";
-      packageName = "fclone";
-      version = "1.0.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz";
-        sha1 = "10e85da38bfea7fc599341c296ee1d77266ee640";
-      };
-    };
     "fd-read-stream-1.1.0" = {
       name = "fd-read-stream";
       packageName = "fd-read-stream";
@@ -12062,7 +12116,7 @@ let
       packageName = "fecha";
       version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz";
+        url = "http://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz";
         sha512 = "lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg==";
       };
     };
@@ -12080,7 +12134,7 @@ let
       packageName = "fibers";
       version = "1.0.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fibers/-/fibers-1.0.15.tgz";
+        url = "http://registry.npmjs.org/fibers/-/fibers-1.0.15.tgz";
         sha1 = "22f039c8f18b856190fbbe4decf056154c1eae9c";
       };
     };
@@ -12273,15 +12327,6 @@ let
         sha1 = "2c400d8d4530935bc232549c5fa385ec07de6fcd";
       };
     };
-    "finalhandler-1.0.6" = {
-      name = "finalhandler";
-      packageName = "finalhandler";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.0.6.tgz";
-        sha1 = "007aea33d1a4d3e42017f624848ad58d212f814f";
-      };
-    };
     "finalhandler-1.1.0" = {
       name = "finalhandler";
       packageName = "finalhandler";
@@ -12462,6 +12507,15 @@ let
         sha1 = "b88673c42009f8821fac2926e99720acee924fae";
       };
     };
+    "fkill-5.3.0" = {
+      name = "fkill";
+      packageName = "fkill";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fkill/-/fkill-5.3.0.tgz";
+        sha512 = "AHe4x/k9xHlSNPRya0FOCd42qa6ggmW4gtdy6mR0R1vdWtNq9zMd8nmMR5LB7fTNOA1f1nOU+uqaQHP7NMWmVA==";
+      };
+    };
     "flagged-respawn-1.0.0" = {
       name = "flagged-respawn";
       packageName = "flagged-respawn";
@@ -12561,22 +12615,13 @@ let
         sha1 = "36ce06abe2e0e01c44dd69f2a165305a2320649b";
       };
     };
-    "flumecodec-0.0.1" = {
-      name = "flumecodec";
-      packageName = "flumecodec";
-      version = "0.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/flumecodec/-/flumecodec-0.0.1.tgz";
-        sha1 = "ae049a714386bb83e342657a82924b70364a90d6";
-      };
-    };
-    "flumedb-0.5.1" = {
+    "flumedb-1.0.1" = {
       name = "flumedb";
       packageName = "flumedb";
-      version = "0.5.1";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flumedb/-/flumedb-0.5.1.tgz";
-        sha512 = "WB/q5YYEvVB2ozp7xhp3ur5NfX03HZywx6EEV6AlKjd1PodZdHVspz3NpakV++mVB89CRoH2nq+WdY33ntbfQw==";
+        url = "https://registry.npmjs.org/flumedb/-/flumedb-1.0.1.tgz";
+        sha512 = "mT0v0dY9EkWRGwDtTfavYNv2Z6nrMNlVZCNJD7qxjfPJymfv8kNYB4UvDdBHleHegvzjufjnE73IkRG5DgMjww==";
       };
     };
     "flumelog-offset-3.3.2" = {
@@ -12755,7 +12800,7 @@ let
       packageName = "form-data";
       version = "0.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-0.0.10.tgz";
+        url = "http://registry.npmjs.org/form-data/-/form-data-0.0.10.tgz";
         sha1 = "db345a5378d86aeeb1ed5d553b869ac192d2f5ed";
       };
     };
@@ -12764,7 +12809,7 @@ let
       packageName = "form-data";
       version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-0.1.3.tgz";
+        url = "http://registry.npmjs.org/form-data/-/form-data-0.1.3.tgz";
         sha1 = "4ee4346e6eb5362e8344a02075bd8dbd8c7373ea";
       };
     };
@@ -12773,7 +12818,7 @@ let
       packageName = "form-data";
       version = "1.0.0-rc3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz";
+        url = "http://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz";
         sha1 = "d35bc62e7fbc2937ae78f948aaa0d38d90607577";
       };
     };
@@ -12782,7 +12827,7 @@ let
       packageName = "form-data";
       version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-1.0.1.tgz";
+        url = "http://registry.npmjs.org/form-data/-/form-data-1.0.1.tgz";
         sha1 = "ae315db9a4907fa065502304a66d7733475ee37c";
       };
     };
@@ -12795,13 +12840,13 @@ let
         sha1 = "33c183acf193276ecaa98143a69e94bfee1750d1";
       };
     };
-    "form-data-2.3.2" = {
+    "form-data-2.3.3" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.3.2";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
-        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
+        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
       };
     };
     "format-util-1.0.3" = {
@@ -13290,6 +13335,15 @@ let
         sha1 = "336a98f81510f9ae0af2a494e17468a116a9dc04";
       };
     };
+    "generate-function-1.1.0" = {
+      name = "generate-function";
+      packageName = "generate-function";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/generate-function/-/generate-function-1.1.0.tgz";
+        sha1 = "54c21b080192b16d9877779c5bb81666e772365f";
+      };
+    };
     "generate-function-2.3.1" = {
       name = "generate-function";
       packageName = "generate-function";
@@ -13317,13 +13371,13 @@ let
         sha1 = "8b465c1a7588ea9dd2bb133bda0bb66bfef8a63e";
       };
     };
-    "genfun-4.0.1" = {
+    "genfun-5.0.0" = {
       name = "genfun";
       packageName = "genfun";
-      version = "4.0.1";
+      version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/genfun/-/genfun-4.0.1.tgz";
-        sha1 = "ed10041f2e4a7f1b0a38466d17a5c3e27df1dfc1";
+        url = "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz";
+        sha512 = "KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==";
       };
     };
     "get-assigned-identifiers-1.2.0" = {
@@ -13529,7 +13583,7 @@ let
       packageName = "git-raw-commits";
       version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.3.6.tgz";
+        url = "http://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.3.6.tgz";
         sha512 = "svsK26tQ8vEKnMshTDatSIQSMDdz8CxIIqKsvPqbtV23Etmw6VNaFAitu8zwZ0VrOne7FztwPyRLxK7/DIUTQg==";
       };
     };
@@ -13569,13 +13623,13 @@ let
         sha1 = "a0c2e3dd392abcf6b76962e27fc75fb3223449ce";
       };
     };
-    "git-semver-tags-2.0.0" = {
+    "git-semver-tags-2.0.2" = {
       name = "git-semver-tags";
       packageName = "git-semver-tags";
-      version = "2.0.0";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.0.tgz";
-        sha512 = "lSgFc3zQTul31nFje2Q8XdNcTOI6B4I3mJRPCgFzHQQLfxfqdWTYzdtCaynkK5Xmb2wQlSJoKolhXJ1VhKROnQ==";
+        url = "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.2.tgz";
+        sha512 = "34lMF7Yo1xEmsK2EkbArdoU79umpvm0MfzaDkSNYSJqtM5QLAVTPWgpiXSVI5o/O9EvZPSrP4Zvnec/CqhSd5w==";
       };
     };
     "git-ssb-web-2.8.0" = {
@@ -13971,7 +14025,7 @@ let
       packageName = "graceful-fs";
       version = "1.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
         sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
       };
     };
@@ -13980,7 +14034,7 @@ let
       packageName = "graceful-fs";
       version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz";
         sha1 = "7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0";
       };
     };
@@ -13989,7 +14043,7 @@ let
       packageName = "graceful-fs";
       version = "3.0.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz";
         sha1 = "7613c778a1afea62f25c630a086d7f3acbbdd818";
       };
     };
@@ -13998,10 +14052,19 @@ let
       packageName = "graceful-fs";
       version = "4.1.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
         sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
       };
     };
+    "graceful-fs-4.1.15" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.1.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz";
+        sha512 = "6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==";
+      };
+    };
     "graceful-readlink-1.0.1" = {
       name = "graceful-readlink";
       packageName = "graceful-readlink";
@@ -14056,13 +14119,22 @@ let
         sha512 = "QZ5BL8ZO/B20VA8APauGBg3GyEgZ19eduvpLWoq5x7gMmWnHoy8rlQWPLmWgFvo1yNgjSEFMesmS4R6pPr7xog==";
       };
     };
-    "graphql-anywhere-4.1.19" = {
+    "graphql-14.0.2" = {
+      name = "graphql";
+      packageName = "graphql";
+      version = "14.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graphql/-/graphql-14.0.2.tgz";
+        sha512 = "gUC4YYsaiSJT1h40krG3J+USGlwhzNTXSb4IOZljn9ag5Tj+RkoXrWp+Kh7WyE3t1NCfab5kzCuxBIvOMERMXw==";
+      };
+    };
+    "graphql-anywhere-4.1.22" = {
       name = "graphql-anywhere";
       packageName = "graphql-anywhere";
-      version = "4.1.19";
+      version = "4.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-anywhere/-/graphql-anywhere-4.1.19.tgz";
-        sha512 = "mQlvbECzYPBcgBC9JsdM4v+DSvNmcIP+8Vwr+ij3gktbaLSE0Iza30mztuz40Jlf7ooMs+0emBZucNjLzqz7tA==";
+        url = "https://registry.npmjs.org/graphql-anywhere/-/graphql-anywhere-4.1.22.tgz";
+        sha512 = "qm2/1cKM8nfotxDhm4J0r1znVlK0Yge/yEKt26EVVBgpIhvxjXYFALCGbr7cvfDlvzal1iSPpaYa+8YTtjsxQA==";
       };
     };
     "graphql-cli-prepare-1.4.19" = {
@@ -14083,49 +14155,31 @@ let
         sha512 = "BOtbEOn/fD13jT0peCy3Fzp1DSTsA/1AcZp266AQ5Sk3wFndKCEa/H7donbu5UriOw1V/N1WDirYPnr7rd8E7Q==";
       };
     };
-    "graphql-config-2.0.0" = {
+    "graphql-config-2.2.1" = {
       name = "graphql-config";
       packageName = "graphql-config";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/graphql-config/-/graphql-config-2.0.0.tgz";
-        sha512 = "//hZmROEk79zzPlH6SVTQeXd8NVV65rquz1zxZeO6oEuX5KNnii8+oznLu7d897EfJ+NShTZtsY9FMmxxkWmJw==";
-      };
-    };
-    "graphql-config-2.0.1" = {
-      name = "graphql-config";
-      packageName = "graphql-config";
-      version = "2.0.1";
+      version = "2.2.1";
       src = fetchurl {
-        url = "http://registry.npmjs.org/graphql-config/-/graphql-config-2.0.1.tgz";
-        sha512 = "eb4FzlODifHE/Q+91QptAmkGw39wL5ToinJ2556UUsGt2drPc4tzifL+HSnHSaxiIbH8EUhc/Fa6+neinF04qA==";
+        url = "https://registry.npmjs.org/graphql-config/-/graphql-config-2.2.1.tgz";
+        sha512 = "U8+1IAhw9m6WkZRRcyj8ZarK96R6lQBQ0an4lp76Ps9FyhOXENC5YQOxOFGm5CxPrX2rD0g3Je4zG5xdNJjwzQ==";
       };
     };
-    "graphql-config-extension-graphcool-1.0.8" = {
+    "graphql-config-extension-graphcool-1.0.11" = {
       name = "graphql-config-extension-graphcool";
       packageName = "graphql-config-extension-graphcool";
-      version = "1.0.8";
-      src = fetchurl {
-        url = "http://registry.npmjs.org/graphql-config-extension-graphcool/-/graphql-config-extension-graphcool-1.0.8.tgz";
-        sha512 = "eMvL/RAo88EHo8SmP40Zcsrx7nrLTE82G4ZochsHYoEvP+QMo0XA+Vq9lxYeRTJEtGMFD4imjHXGHWh4B0srQw==";
-      };
-    };
-    "graphql-config-extension-openapi-1.0.6" = {
-      name = "graphql-config-extension-openapi";
-      packageName = "graphql-config-extension-openapi";
-      version = "1.0.6";
+      version = "1.0.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-config-extension-openapi/-/graphql-config-extension-openapi-1.0.6.tgz";
-        sha512 = "Do6tHyQyxaPhaZdJ+ZCpYbVhczlqNqMVuO46aG/YkMuRQPoj/FRmeH9BFXniFkz60TZyRpLTQNel2sllMekRLQ==";
+        url = "https://registry.npmjs.org/graphql-config-extension-graphcool/-/graphql-config-extension-graphcool-1.0.11.tgz";
+        sha512 = "uNhyMqj30M4KLkD/gGEEr6cPuVX/jtm0C9O5Bj9V2jFhN5IdHXWJx+fC/p/xxh82iOuR8uibKNCXzwA7R6F6IA==";
       };
     };
-    "graphql-config-extension-prisma-0.2.1" = {
+    "graphql-config-extension-prisma-0.2.5" = {
       name = "graphql-config-extension-prisma";
       packageName = "graphql-config-extension-prisma";
-      version = "0.2.1";
+      version = "0.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-config-extension-prisma/-/graphql-config-extension-prisma-0.2.1.tgz";
-        sha512 = "OIqa5hjX3bqHR5x2uPE5ssdaI6DEr/P/+utAaqdM6ZEAi8vgupye4AT5AOyDzwK5iDmbJAkShgwQlHiAm4Srvg==";
+        url = "https://registry.npmjs.org/graphql-config-extension-prisma/-/graphql-config-extension-prisma-0.2.5.tgz";
+        sha512 = "7Qh3TzZS3hwZpJbTNfTHXBM6UbzV7DMik9Mc95Rz76yTAs7Wr83xBFsH4Ap1NWlqBgANfO3cLLI4YomDJmO5SA==";
       };
     };
     "graphql-extensions-0.2.1" = {
@@ -14146,22 +14200,31 @@ let
         sha512 = "G/+I08Qp6/QGTb9qapknCm3yPHV0ZL7wbaalWFpxsfR8ZhZoTBe//LsbsCKlbALQpcMegchpJhpTSKiJjhaVqQ==";
       };
     };
-    "graphql-playground-html-1.5.5" = {
+    "graphql-import-0.7.1" = {
+      name = "graphql-import";
+      packageName = "graphql-import";
+      version = "0.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graphql-import/-/graphql-import-0.7.1.tgz";
+        sha512 = "YpwpaPjRUVlw2SN3OPljpWbVRWAhMAyfSba5U47qGMOSsPLi2gYeJtngGpymjm9nk57RFWEpjqwh4+dpYuFAPw==";
+      };
+    };
+    "graphql-playground-html-1.6.4" = {
       name = "graphql-playground-html";
       packageName = "graphql-playground-html";
-      version = "1.5.5";
+      version = "1.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-playground-html/-/graphql-playground-html-1.5.5.tgz";
-        sha512 = "PzSywpEKcjbDUkV6e3ivEixvAuUJGyYmBUvuittzySe/RgwHRo0xKLD7HouUCTbpFfWMw8kRKhAUVtt7Ys97uw==";
+        url = "https://registry.npmjs.org/graphql-playground-html/-/graphql-playground-html-1.6.4.tgz";
+        sha512 = "mnpAVYSR3TesYsJ5OLJVJMA0muTCw4npsCI1cKMtW35lbA6KljZkLkz3ZWXhEIYPnHKIeUHEtbn1ZGkEXtAxLg==";
       };
     };
-    "graphql-playground-middleware-express-1.6.2" = {
+    "graphql-playground-middleware-express-1.7.6" = {
       name = "graphql-playground-middleware-express";
       packageName = "graphql-playground-middleware-express";
-      version = "1.6.2";
+      version = "1.7.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-playground-middleware-express/-/graphql-playground-middleware-express-1.6.2.tgz";
-        sha512 = "BHaEZe2J2lQ1TX2W73a6PI2zVjB9Nb0J9pFdbG1L7ugYdbait/elDrsNMxLCsDHVOGJF009VlYszrk7Cq7FiTg==";
+        url = "https://registry.npmjs.org/graphql-playground-middleware-express/-/graphql-playground-middleware-express-1.7.6.tgz";
+        sha512 = "fICPxYGIdhCxtFlwCnP3uZ2uRWeQ9wj7OkcWUiHNwaFma2TbRD5nNKaPA2u21YWha9xv26qIDxxcdW27F/lcbQ==";
       };
     };
     "graphql-request-1.8.2" = {
@@ -14236,15 +14299,6 @@ let
         sha1 = "d2c177e2f1b17d87f81072cd05311c0754baa420";
       };
     };
-    "graphreduce-3.0.4" = {
-      name = "graphreduce";
-      packageName = "graphreduce";
-      version = "3.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/graphreduce/-/graphreduce-3.0.4.tgz";
-        sha1 = "bf442d0a878e83901e5ef3e652d23ffb5b831ed7";
-      };
-    };
     "gray-matter-2.1.1" = {
       name = "gray-matter";
       packageName = "gray-matter";
@@ -14754,7 +14808,7 @@ let
       packageName = "hawk";
       version = "0.10.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hawk/-/hawk-0.10.2.tgz";
+        url = "http://registry.npmjs.org/hawk/-/hawk-0.10.2.tgz";
         sha1 = "9b361dee95a931640e6d504e05609a8fc3ac45d2";
       };
     };
@@ -14763,7 +14817,7 @@ let
       packageName = "hawk";
       version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz";
+        url = "http://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz";
         sha1 = "078444bd7c1640b0fe540d2c9b73d59678e8e1c4";
       };
     };
@@ -14848,13 +14902,13 @@ let
         sha1 = "b8a9c5493212a9392f0222b649c9611497ebfb88";
       };
     };
-    "highlight.js-9.13.0" = {
+    "highlight.js-9.13.1" = {
       name = "highlight.js";
       packageName = "highlight.js";
-      version = "9.13.0";
+      version = "9.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.13.0.tgz";
-        sha512 = "2B90kcNnErqRTmzdZw6IPLEC9CdsiIMhj+r8L3LJKRCgtEJ+LY5yzWuQCVnADTI0wwocQinFzaaL/JjTQNqI/g==";
+        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.13.1.tgz";
+        sha512 = "Sc28JNQNDzaH6PORtRLMvif9RSn1mYuOoX3omVjnb0+HbpPygU2ALBI0R/wsiqCb4/fcp07Gdo8g+fhtFrQl6A==";
       };
     };
     "hiredis-0.4.1" = {
@@ -14880,7 +14934,7 @@ let
       packageName = "hoek";
       version = "0.7.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hoek/-/hoek-0.7.6.tgz";
+        url = "http://registry.npmjs.org/hoek/-/hoek-0.7.6.tgz";
         sha1 = "60fbd904557541cd2b8795abf308a1b3770e155a";
       };
     };
@@ -14889,7 +14943,7 @@ let
       packageName = "hoek";
       version = "2.16.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz";
+        url = "http://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz";
         sha1 = "20bb7403d3cea398e91dc4710a8ff1b8274a25ed";
       };
     };
@@ -14898,7 +14952,7 @@ let
       packageName = "hoek";
       version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz";
+        url = "http://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz";
         sha512 = "QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==";
       };
     };
@@ -14911,6 +14965,15 @@ let
         sha512 = "Alr4ZQgoMlnere5FZJsIyfIjORBqZll5POhDsF4q64dPuJR6rNxXdDxtHSQq8OXRurhmx+PWYEE8bXRROY8h0w==";
       };
     };
+    "hoek-6.0.1" = {
+      name = "hoek";
+      packageName = "hoek";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hoek/-/hoek-6.0.1.tgz";
+        sha512 = "3PvUwBerLNVJiIVQdpkWF9F/M0ekgb2NPJWOhsE28RXSQPsY42YSnaJ8d1kZjcAz58TZ/Fk9Tw64xJsENFlJNw==";
+      };
+    };
     "hogan.js-3.0.2" = {
       name = "hogan.js";
       packageName = "hogan.js";
@@ -14988,16 +15051,25 @@ let
       packageName = "htmlescape";
       version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz";
+        url = "http://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz";
         sha1 = "3a03edc2214bca3b66424a3e7959349509cb0351";
       };
     };
+    "htmlparser2-3.10.0" = {
+      name = "htmlparser2";
+      packageName = "htmlparser2";
+      version = "3.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz";
+        sha512 = "J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==";
+      };
+    };
     "htmlparser2-3.7.3" = {
       name = "htmlparser2";
       packageName = "htmlparser2";
       version = "3.7.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz";
+        url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz";
         sha1 = "6a64c77637c08c6f30ec2a8157a53333be7cb05e";
       };
     };
@@ -15006,19 +15078,10 @@ let
       packageName = "htmlparser2";
       version = "3.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz";
+        url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz";
         sha1 = "996c28b191516a8be86501a7d79757e5c70c1068";
       };
     };
-    "htmlparser2-3.9.2" = {
-      name = "htmlparser2";
-      packageName = "htmlparser2";
-      version = "3.9.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz";
-        sha1 = "1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338";
-      };
-    };
     "http-auth-2.0.7" = {
       name = "http-auth";
       packageName = "http-auth";
@@ -15064,15 +15127,6 @@ let
         sha1 = "197e22cdebd4198585e8694ef6786197b91ed942";
       };
     };
-    "http-errors-1.6.2" = {
-      name = "http-errors";
-      packageName = "http-errors";
-      version = "1.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz";
-        sha1 = "0a002cc85707192a7e7946ceedc11155f60ec736";
-      };
-    };
     "http-errors-1.6.3" = {
       name = "http-errors";
       packageName = "http-errors";
@@ -15109,13 +15163,13 @@ let
         sha1 = "29691b6fc58f4f7e81a3605dca82682b068e4430";
       };
     };
-    "http-parser-js-0.4.13" = {
+    "http-parser-js-0.5.0" = {
       name = "http-parser-js";
       packageName = "http-parser-js";
-      version = "0.4.13";
+      version = "0.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz";
-        sha1 = "3bd6d6fde6e3172c9334c3b33b6c193d80fe1137";
+        url = "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz";
+        sha512 = "cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==";
       };
     };
     "http-proxy-1.0.2" = {
@@ -15123,7 +15177,7 @@ let
       packageName = "http-proxy";
       version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-proxy/-/http-proxy-1.0.2.tgz";
+        url = "http://registry.npmjs.org/http-proxy/-/http-proxy-1.0.2.tgz";
         sha1 = "08060ff2edb2189e57aa3a152d3ac63ed1af7254";
       };
     };
@@ -15258,7 +15312,7 @@ let
       packageName = "humanize-plus";
       version = "1.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/humanize-plus/-/humanize-plus-1.8.2.tgz";
+        url = "http://registry.npmjs.org/humanize-plus/-/humanize-plus-1.8.2.tgz";
         sha1 = "a65b34459ad6367adbb3707a82a3c9f916167030";
       };
     };
@@ -15379,15 +15433,6 @@ let
         sha1 = "fe265a218ac6a57cfe854927e9d04c19825eddeb";
       };
     };
-    "iconv-lite-0.4.19" = {
-      name = "iconv-lite";
-      packageName = "iconv-lite";
-      version = "0.4.19";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz";
-        sha512 = "oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==";
-      };
-    };
     "iconv-lite-0.4.23" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -15460,13 +15505,13 @@ let
         sha512 = "cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==";
       };
     };
-    "ignore-5.0.2" = {
+    "ignore-5.0.4" = {
       name = "ignore";
       packageName = "ignore";
-      version = "5.0.2";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-5.0.2.tgz";
-        sha512 = "ilxkgh36cTqJxlipxQdCOxkbQae5dIeCwo5fSw6pBDW8m8GiMTnadClKST2+aATqjs9BTHsi0IqOsTp0jiihAw==";
+        url = "https://registry.npmjs.org/ignore/-/ignore-5.0.4.tgz";
+        sha512 = "WLsTMEhsQuXpCiG173+f3aymI43SXa+fB1rSfbzyP4GkPP+ZFVuO0/3sFUGNBtifisPeDcl/uD/Y2NxZ7xFq4g==";
       };
     };
     "ignore-by-default-1.0.1" = {
@@ -15532,13 +15577,13 @@ let
         sha512 = "5s6NiCGbtWc+OQA60jrre54w12U7tynIyUNjO5LJjNA5lWwvCv6640roq8Wk/wIuaqnd4Pgtp453OyJ7hbONkQ==";
       };
     };
-    "immutable-tuple-0.4.8" = {
+    "immutable-tuple-0.4.9" = {
       name = "immutable-tuple";
       packageName = "immutable-tuple";
-      version = "0.4.8";
+      version = "0.4.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/immutable-tuple/-/immutable-tuple-0.4.8.tgz";
-        sha512 = "1m29EVSrF+LJJAyVo1v12NsIalVKjyi4HNQVQDBx+LNCIuRXnfeMCHuLao5CyN1m3Sn0T63U5JEkmPArPCipQA==";
+        url = "https://registry.npmjs.org/immutable-tuple/-/immutable-tuple-0.4.9.tgz";
+        sha512 = "LWbJPZnidF8eczu7XmcnLBsumuyRBkpwIRPCZxlojouhBo5jEBO4toj6n7hMy6IxHU/c+MqDSWkvaTpPlMQcyA==";
       };
     };
     "import-global-0.1.0" = {
@@ -15892,6 +15937,15 @@ let
         sha1 = "332650e10854d8c0ac58c192bdc27a8bf7e7a30c";
       };
     };
+    "into-stream-2.0.1" = {
+      name = "into-stream";
+      packageName = "into-stream";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/into-stream/-/into-stream-2.0.1.tgz";
+        sha1 = "db9b003694453eae091d8a5c84cc11507b781d31";
+      };
+    };
     "into-stream-3.1.0" = {
       name = "into-stream";
       packageName = "into-stream";
@@ -15928,15 +15982,6 @@ let
         sha512 = "wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==";
       };
     };
-    "ip-0.3.3" = {
-      name = "ip";
-      packageName = "ip";
-      version = "0.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ip/-/ip-0.3.3.tgz";
-        sha1 = "8ee8309e92f0b040d287f72efaca1a21702d3fb4";
-      };
-    };
     "ip-1.1.5" = {
       name = "ip";
       packageName = "ip";
@@ -15973,15 +16018,6 @@ let
         sha1 = "5fa78cf301b825c78abc3042d812723049ea23c7";
       };
     };
-    "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";
-      };
-    };
     "ipaddr.js-1.8.0" = {
       name = "ipaddr.js";
       packageName = "ipaddr.js";
@@ -16090,13 +16126,13 @@ let
         sha512 = "pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==";
       };
     };
-    "is-arguments-1.0.2" = {
+    "is-arguments-1.0.4" = {
       name = "is-arguments";
       packageName = "is-arguments";
-      version = "1.0.2";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.2.tgz";
-        sha1 = "07e30ad79531844179b642d2d8399435182c8727";
+        url = "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz";
+        sha512 = "xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==";
       };
     };
     "is-arrayish-0.2.1" = {
@@ -16162,6 +16198,15 @@ let
         sha512 = "r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==";
       };
     };
+    "is-canonical-base64-1.1.1" = {
+      name = "is-canonical-base64";
+      packageName = "is-canonical-base64";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-canonical-base64/-/is-canonical-base64-1.1.1.tgz";
+        sha512 = "o6t/DwgEapC0bsloqtegAQyZzQXaQ5+8fzsyf2KmLqupC2ifLFq/lMQiFCJeGpdSrK1o6GL+WW2lRU050lLlFg==";
+      };
+    };
     "is-ci-1.2.1" = {
       name = "is-ci";
       packageName = "is-ci";
@@ -16252,13 +16297,13 @@ let
         sha1 = "a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1";
       };
     };
-    "is-electron-2.1.0" = {
+    "is-electron-2.2.0" = {
       name = "is-electron";
       packageName = "is-electron";
-      version = "2.1.0";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-electron/-/is-electron-2.1.0.tgz";
-        sha512 = "dkg5xT383+M6zIbbXW/z7n2nz4SFUi2OSyhntnFYkRdtV+HVEfdjEK+5AWisfYgkpe3WYjTIuh7toaKmSfFVWw==";
+        url = "https://registry.npmjs.org/is-electron/-/is-electron-2.2.0.tgz";
+        sha512 = "SpMppC2XR3YdxSzczXReBjqs2zGscWQpBIKqwXYBFic0ERaxNVgwLCHwOLZeESfdJQjX0RDvrJ1lBXX2ij+G1Q==";
       };
     };
     "is-equal-shallow-0.1.3" = {
@@ -16945,13 +16990,13 @@ let
         sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
       };
     };
-    "isemail-3.1.3" = {
+    "isemail-3.2.0" = {
       name = "isemail";
       packageName = "isemail";
-      version = "3.1.3";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isemail/-/isemail-3.1.3.tgz";
-        sha512 = "5xbsG5wYADIcB+mfLsd+nst1V/D+I7EU7LEZPo2GOIMu4JzfcRs5yQoypP4avA7QtUqgxYLKBYNv4IdzBmbhdw==";
+        url = "https://registry.npmjs.org/isemail/-/isemail-3.2.0.tgz";
+        sha512 = "zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg==";
       };
     };
     "isexe-1.1.2" = {
@@ -17941,7 +17986,7 @@ let
       packageName = "kew";
       version = "0.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/kew/-/kew-0.1.7.tgz";
+        url = "http://registry.npmjs.org/kew/-/kew-0.1.7.tgz";
         sha1 = "0a32a817ff1a9b3b12b8c9bacf4bc4d679af8e72";
       };
     };
@@ -17950,7 +17995,7 @@ let
       packageName = "kew";
       version = "0.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz";
+        url = "http://registry.npmjs.org/kew/-/kew-0.7.0.tgz";
         sha1 = "79d93d2d33363d6fdd2970b335d9141ad591d79b";
       };
     };
@@ -18287,6 +18332,15 @@ let
         sha512 = "2qYbbiptPsPWGUI+AgB1gTNXqIjPpALRqrQyNx1zWYNZxhhuzEj/IE4Unu9weEBnsUEocfYe56xOGlAceb8/Fg==";
       };
     };
+    "level-4.0.0" = {
+      name = "level";
+      packageName = "level";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level/-/level-4.0.0.tgz";
+        sha512 = "4epzCOlEcJ529NOdlAYiuiakS/kZTDdiKSBNJmE1B8bsmA+zEVwcpxyH86qJSQTpOu7SODrlaD9WgPRHLkGutA==";
+      };
+    };
     "level-codec-6.2.0" = {
       name = "level-codec";
       packageName = "level-codec";
@@ -18305,6 +18359,15 @@ let
         sha512 = "gNZlo1HRHz0BWxzGCyNf7xntAs2HKOPvvRBWtXsoDvEX4vMYnSTBS6ZnxoaiX7nhxSBPpegRa8CQ/hnfGBKk3Q==";
       };
     };
+    "level-codec-9.0.0" = {
+      name = "level-codec";
+      packageName = "level-codec";
+      version = "9.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-codec/-/level-codec-9.0.0.tgz";
+        sha512 = "OIpVvjCcZNP5SdhcNupnsI1zo5Y9Vpm+k/F1gfG5kXrtctlrwanisakweJtE0uA0OpLukRfOQae+Fg0M5Debhg==";
+      };
+    };
     "level-errors-1.1.2" = {
       name = "level-errors";
       packageName = "level-errors";
@@ -18314,6 +18377,15 @@ let
         sha512 = "Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==";
       };
     };
+    "level-errors-2.0.0" = {
+      name = "level-errors";
+      packageName = "level-errors";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-errors/-/level-errors-2.0.0.tgz";
+        sha512 = "AmY4HCp9h3OiU19uG+3YWkdELgy05OTP/r23aNHaQKWv8DO787yZgsEuGVkoph40uwN+YdUKnANlrxSsoOaaxg==";
+      };
+    };
     "level-iterator-stream-2.0.3" = {
       name = "level-iterator-stream";
       packageName = "level-iterator-stream";
@@ -18323,6 +18395,15 @@ let
         sha512 = "I6Heg70nfF+e5Y3/qfthJFexhRw/Gi3bIymCoXAlijZdAcLaPuWSJs3KXyTYf23ID6g0o2QF62Yh+grOXY3Rig==";
       };
     };
+    "level-iterator-stream-3.0.1" = {
+      name = "level-iterator-stream";
+      packageName = "level-iterator-stream";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-3.0.1.tgz";
+        sha512 = "nEIQvxEED9yRThxvOrq8Aqziy4EGzrxSZK+QzEFAVuJvQ8glfyZ96GB6BoI4sBbLfjMXm2w4vu3Tkcm9obcY0g==";
+      };
+    };
     "level-packager-0.18.0" = {
       name = "level-packager";
       packageName = "level-packager";
@@ -18341,6 +18422,15 @@ let
         sha512 = "6l3G6dVkmdvHwOJrEA9d9hL6SSFrzwjQoLP8HsvohOgfY/8Z9LyTKNCM5Gc84wtsUWCuIHu6r+S6WrCtTWUJCw==";
       };
     };
+    "level-packager-3.1.0" = {
+      name = "level-packager";
+      packageName = "level-packager";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-packager/-/level-packager-3.1.0.tgz";
+        sha512 = "UxVEfK5WH0u0InR3WxTCSAroiorAGKzXWZT6i+nBjambmvINuXFUsFx2Ai3UIjUUtnyWhluv42jMlzUZCsAk9A==";
+      };
+    };
     "level-post-1.0.7" = {
       name = "level-post";
       packageName = "level-post";
@@ -18377,6 +18467,15 @@ let
         sha512 = "+ANRScj1npQQzv6e4DYAKRjVQZZ+ahMoubKrNP68nIq+l9bYgb+WiXF+14oTcQTg2f7qE9WHGW7rBG9nGSsA+A==";
       };
     };
+    "leveldown-4.0.1" = {
+      name = "leveldown";
+      packageName = "leveldown";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leveldown/-/leveldown-4.0.1.tgz";
+        sha512 = "ZlBKVSsglPIPJnz4ggB8o2R0bxDxbsMzuQohbfgoFMVApyTE118DK5LNRG0cRju6rt3OkGxe0V6UYACGlq/byg==";
+      };
+    };
     "levelup-0.18.6" = {
       name = "levelup";
       packageName = "levelup";
@@ -18404,6 +18503,15 @@ let
         sha512 = "us+nTLUyd/eLnclYYddOCdAVw1hnymGx/9p4Jr5ThohStsjLqMVmbYiz6/SYFZEPXNF+AKQSvh6fA2e2KZpC8w==";
       };
     };
+    "levelup-3.1.1" = {
+      name = "levelup";
+      packageName = "levelup";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levelup/-/levelup-3.1.1.tgz";
+        sha512 = "9N10xRkUU4dShSRRFTBdNaBxofz+PGaIZO962ckboJZiNmLuhVT6FZ6ZKAsICKfUBO76ySaYU6fJWX/jnj3Lcg==";
+      };
+    };
     "leven-1.0.2" = {
       name = "leven";
       packageName = "leven";
@@ -18566,6 +18674,15 @@ let
         sha1 = "d94a4648f9b1c179d64fa97291268bdb6ce9434f";
       };
     };
+    "listenercount-1.0.1" = {
+      name = "listenercount";
+      packageName = "listenercount";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz";
+        sha1 = "84c8a72ab59c4725321480c975e6508342e70937";
+      };
+    };
     "listify-1.0.0" = {
       name = "listify";
       packageName = "listify";
@@ -20258,13 +20375,13 @@ let
         sha1 = "632b127c3ae5d6ad9e21cfdd9691b63b8944fcd2";
       };
     };
-    "map-filter-reduce-3.2.1" = {
+    "map-filter-reduce-3.2.2" = {
       name = "map-filter-reduce";
       packageName = "map-filter-reduce";
-      version = "3.2.1";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/map-filter-reduce/-/map-filter-reduce-3.2.1.tgz";
-        sha512 = "0+0C/3IVCX8PLXRyBL0umF/YMy3/ch7Zgxu91ZUIXS6YHyv4UVMZlkclUk9rQI63FQ+uvBdHYzo8VPJbIxKTVw==";
+        url = "https://registry.npmjs.org/map-filter-reduce/-/map-filter-reduce-3.2.2.tgz";
+        sha512 = "p+NIGQbEBxlw/qWwG+NME98G/9kjOQI70hmaH8QEZtIWfTmfMYLKQW4PJChP4izPHNAxlOfv/qefP0+2ZXn84A==";
       };
     };
     "map-merge-1.1.0" = {
@@ -20497,7 +20614,7 @@ let
       packageName = "media-typer";
       version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+        url = "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
         sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
       };
     };
@@ -20641,7 +20758,7 @@ let
       packageName = "meow";
       version = "3.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz";
+        url = "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz";
         sha1 = "72cb668b425228290abbfa856892587308a801fb";
       };
     };
@@ -20663,13 +20780,13 @@ let
         sha512 = "CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==";
       };
     };
-    "merge-1.2.0" = {
+    "merge-1.2.1" = {
       name = "merge";
       packageName = "merge";
-      version = "1.2.0";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz";
-        sha1 = "7531e39d4949c281a66b8c5a6e0265e8b05894da";
+        url = "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz";
+        sha512 = "VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==";
       };
     };
     "merge-descriptors-0.0.2" = {
@@ -20780,6 +20897,15 @@ let
         sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
       };
     };
+    "microbuffer-1.0.0" = {
+      name = "microbuffer";
+      packageName = "microbuffer";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz";
+        sha1 = "8b3832ed40c87d51f47bb234913a698a756d19d2";
+      };
+    };
     "microee-0.0.6" = {
       name = "microee";
       packageName = "microee";
@@ -20884,7 +21010,7 @@ let
       packageName = "mime-db";
       version = "1.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz";
+        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz";
         sha1 = "3d0c63180f458eb10d325aaa37d7c58ae312e9d7";
       };
     };
@@ -20893,17 +21019,17 @@ let
       packageName = "mime-db";
       version = "1.33.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz";
+        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz";
         sha512 = "BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==";
       };
     };
-    "mime-db-1.36.0" = {
+    "mime-db-1.37.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.36.0";
+      version = "1.37.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz";
-        sha512 = "L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
+        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
       };
     };
     "mime-types-2.0.14" = {
@@ -20911,7 +21037,7 @@ let
       packageName = "mime-types";
       version = "2.0.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz";
+        url = "http://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz";
         sha1 = "310e159db23e077f8bb22b748dabfa4957140aa6";
       };
     };
@@ -20920,17 +21046,17 @@ let
       packageName = "mime-types";
       version = "2.1.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz";
+        url = "http://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz";
         sha512 = "lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==";
       };
     };
-    "mime-types-2.1.20" = {
+    "mime-types-2.1.21" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.20";
+      version = "2.1.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz";
-        sha512 = "HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
+        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
       };
     };
     "mimelib-0.3.1" = {
@@ -21086,13 +21212,13 @@ let
         sha512 = "FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==";
       };
     };
-    "minipass-2.3.4" = {
+    "minipass-2.3.5" = {
       name = "minipass";
       packageName = "minipass";
-      version = "2.3.4";
+      version = "2.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz";
-        sha512 = "mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==";
+        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz";
+        sha512 = "Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==";
       };
     };
     "minizlib-1.1.1" = {
@@ -21302,13 +21428,13 @@ let
         sha1 = "359a19ec634cda3c706c8709adda54c0329aaec4";
       };
     };
-    "moment-timezone-0.5.21" = {
+    "moment-timezone-0.5.23" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.21";
+      version = "0.5.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.21.tgz";
-        sha512 = "j96bAh4otsgj3lKydm3K7kdtA3iKf2m6MY2iSYCzCm5a1zmHo1g+aK3068dDEeocLZQIS9kU8bsdQHLqEvgW0A==";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.23.tgz";
+        sha512 = "WHFH85DkCfiNMDX5D3X7hpNH3/PUhjTGcD0U1SgfBGZxJ3qUmJh5FdvaFjcClxOvB3rzdfj4oRffbI38jEnC1w==";
       };
     };
     "mongodb-1.2.14" = {
@@ -21347,6 +21473,15 @@ let
         sha1 = "5ba5adc7aac85e1d7ce77be847161ed246b39603";
       };
     };
+    "moo-0.4.3" = {
+      name = "moo";
+      packageName = "moo";
+      version = "0.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/moo/-/moo-0.4.3.tgz";
+        sha512 = "gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw==";
+      };
+    };
     "mooremachine-2.2.1" = {
       name = "mooremachine";
       packageName = "mooremachine";
@@ -21572,15 +21707,6 @@ let
         sha512 = "6HuCZHA57WtNUzrKIvjJ8OMxigzveJ6D5i13y6TsgGu3X3zxABpuBvChpppOoGdB9SyWZcmqUs1fwUV/PpSQ7Q==";
       };
     };
-    "multer-1.3.1" = {
-      name = "multer";
-      packageName = "multer";
-      version = "1.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/multer/-/multer-1.3.1.tgz";
-        sha512 = "JHdEoxkA/5NgZRo91RNn4UT+HdcJV9XUo01DTkKC7vo1erNIngtuaw9Y0WI8RdTlyi+wMIbunflhghzVLuGJyw==";
-      };
-    };
     "multer-1.4.1" = {
       name = "multer";
       packageName = "multer";
@@ -21707,13 +21833,22 @@ let
         sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
       };
     };
-    "multiserver-1.13.5" = {
+    "multiserver-1.13.7" = {
       name = "multiserver";
       packageName = "multiserver";
-      version = "1.13.5";
+      version = "1.13.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/multiserver/-/multiserver-1.13.5.tgz";
-        sha512 = "1bxts3gFkHKJsGAaWR9D4nFLVH995eiEt38n/jPf1dni/FI0o6PH3hlar3ge/bMs58FX/T+DzrGNXZhEkMVFqA==";
+        url = "https://registry.npmjs.org/multiserver/-/multiserver-1.13.7.tgz";
+        sha512 = "nQKAe6+u7nWJY29pJjegltw0ROj2bDc2bCTm9Bnr4EQrp5H5Tav+ESUjgl3D4vuQgCeveb4h+CtLtjB8QnK1Dw==";
+      };
+    };
+    "multiserver-address-1.0.1" = {
+      name = "multiserver-address";
+      packageName = "multiserver-address";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multiserver-address/-/multiserver-address-1.0.1.tgz";
+        sha512 = "IfZMAGs9onCLkYNSnNBri3JxuvhQYllMyh3W9ry86iEDcfW9uPVsHTHDsjDxQtL+dPq3byshmA+Y4LN2wLHwNw==";
       };
     };
     "multistream-2.1.1" = {
@@ -21941,22 +22076,31 @@ let
         sha1 = "4f3152e09540fde28c76f44b19bbcd1d5a42478d";
       };
     };
-    "nanobus-4.3.4" = {
+    "nanobus-4.3.5" = {
       name = "nanobus";
       packageName = "nanobus";
-      version = "4.3.4";
+      version = "4.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanobus/-/nanobus-4.3.4.tgz";
-        sha512 = "N1IBreECNaxmsaOLMqqm01K7XIp+sMvoVX8mvmT/p1VjM2FLcBU0lj0FalKooi2/2i+ph9WsEoEogOJevqQ6LQ==";
+        url = "https://registry.npmjs.org/nanobus/-/nanobus-4.3.5.tgz";
+        sha512 = "6UlqagLV9/ADqcTU60mipAPEd16WDbO+a9WeeGVn9RucHKNDTcPt9MOf8ZmAvbA3V2CV+EJS28eupNalg4YF8Q==";
       };
     };
-    "nanoid-1.3.0" = {
+    "nanoid-1.3.4" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "1.3.0";
+      version = "1.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-1.3.0.tgz";
-        sha512 = "OP8SoC91Kyjl1sdSTEnM1xYh4gUEOSkUl6wRBUklWOPyfPRbeJbhvdhQYXEjVtZ1LI9amVMkIWQI2nO8O7DL9A==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-1.3.4.tgz";
+        sha512 = "4ug4BsuHxiVHoRUe1ud6rUFT3WUMmjXt1W0quL0CviZQANdan7D8kqN5/maw53hmAApY/jfzMRkC57BNNs60ZQ==";
+      };
+    };
+    "nanoid-2.0.0" = {
+      name = "nanoid";
+      packageName = "nanoid";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-2.0.0.tgz";
+        sha512 = "SG2qscLE3iM4C0CNzGrsAojJHSVHMS1J8NnvJ31P1lH8P0hGHOiafmniNJz6w6q7vuoDlV7RdySlJgtqkFEVtQ==";
       };
     };
     "nanolru-1.0.0" = {
@@ -22143,6 +22287,24 @@ let
         sha1 = "ae603b36b134bcec347b452422b0bf98d5832ec8";
       };
     };
+    "nearley-2.15.1" = {
+      name = "nearley";
+      packageName = "nearley";
+      version = "2.15.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nearley/-/nearley-2.15.1.tgz";
+        sha512 = "8IUY/rUrKz2mIynUGh8k+tul1awMKEjeHHC5G3FHvvyAW6oq4mQfNp2c0BMea+sYZJvYcrrM6GmZVIle/GRXGw==";
+      };
+    };
+    "neat-csv-2.1.0" = {
+      name = "neat-csv";
+      packageName = "neat-csv";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/neat-csv/-/neat-csv-2.1.0.tgz";
+        sha1 = "06f58360c4c3b955bd467ddc85ae4511a3907a4c";
+      };
+    };
     "neat-input-1.8.0" = {
       name = "neat-input";
       packageName = "neat-input";
@@ -22338,7 +22500,7 @@ let
       packageName = "next-tick";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz";
+        url = "http://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz";
         sha1 = "ca86d1fe8828169b0120208e3dc8424b9db8342c";
       };
     };
@@ -22369,13 +22531,13 @@ let
         sha512 = "rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==";
       };
     };
-    "node-abi-2.4.5" = {
+    "node-abi-2.5.0" = {
       name = "node-abi";
       packageName = "node-abi";
-      version = "2.4.5";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-2.4.5.tgz";
-        sha512 = "aa/UC6Nr3+tqhHGRsAuw/edz7/q9nnetBrKWxj6rpTtm+0X9T1qU7lIEHMS3yN9JwAbRiKUbRRFy1PLz/y3aaA==";
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-2.5.0.tgz";
+        sha512 = "9g2twBGSP6wIR5PW7tXvAWnEWKJDH/VskdXp168xsw9VVxpEGov8K4jsP4/VeoC7b2ZAyzckvMCuQuQlw44lXg==";
       };
     };
     "node-alias-1.0.4" = {
@@ -22387,13 +22549,13 @@ let
         sha1 = "1f1b916b56b9ea241c0135f97ced6940f556f292";
       };
     };
-    "node-appc-0.2.48" = {
+    "node-appc-0.2.49" = {
       name = "node-appc";
       packageName = "node-appc";
-      version = "0.2.48";
+      version = "0.2.49";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-appc/-/node-appc-0.2.48.tgz";
-        sha512 = "fKPynW61a+PmqssitvJXxN2FZAN/w4eBvmE5zqJXl+eDfOip/b26y7SIGGJOn23KjAYX2uyl2Oy/+qTaRz/gHQ==";
+        url = "https://registry.npmjs.org/node-appc/-/node-appc-0.2.49.tgz";
+        sha512 = "PldEN7CgEy7ekSZyomgpajLX7STCZPDJI6rGy7FCbWi7ZJgTt9/C3omCxPkIKVjtwcXzXoSA31zUWUnBzTkEUg==";
       };
     };
     "node-cache-4.2.0" = {
@@ -22432,13 +22594,13 @@ let
         sha1 = "ab884e8e7e57e38a944753cec706f788d1768bb5";
       };
     };
-    "node-fetch-2.2.0" = {
+    "node-fetch-2.2.1" = {
       name = "node-fetch";
       packageName = "node-fetch";
-      version = "2.2.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.2.0.tgz";
-        sha512 = "OayFWziIxiHY8bCUyLX6sTpDH8Jsbp4FfYd1j1f7vZyfgkcOnAyM4oQR16f8a0s7Gl/viMGRey8eScYk4V4EZA==";
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.2.1.tgz";
+        sha512 = "ObXBpNCD3A/vYQiQtEWl7DuqjAXjfptYFuGHLdPl5U19/6kJuZV+8uMHLrkj3wJrJoyfg4nhgyFixZdaZoAiEQ==";
       };
     };
     "node-fetch-npm-2.0.2" = {
@@ -22531,6 +22693,15 @@ let
         sha512 = "MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==";
       };
     };
+    "node-notifier-5.3.0" = {
+      name = "node-notifier";
+      packageName = "node-notifier";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-notifier/-/node-notifier-5.3.0.tgz";
+        sha512 = "AhENzCSGZnZJgBARsUjnQ7DnZbzyP+HxlVXuD0xqAnvL8q+OqtSX7lGg9e8nHzwXkMMXNdVeqq4E2M3EUAqX6Q==";
+      };
+    };
     "node-phantom-simple-2.2.4" = {
       name = "node-phantom-simple";
       packageName = "node-phantom-simple";
@@ -22576,31 +22747,31 @@ let
         sha512 = "Bb9M5bFrOqoFxBVxfstBM/g+VPaV4EPQptXQBMrlsCd3P40CXcGL0mDylXU+3cekWNd5hLHfqTHvXJdkowHGDw==";
       };
     };
-    "node-red-node-rbe-0.2.3" = {
+    "node-red-node-rbe-0.2.4" = {
       name = "node-red-node-rbe";
       packageName = "node-red-node-rbe";
-      version = "0.2.3";
+      version = "0.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.2.3.tgz";
-        sha512 = "5+MtH9t8tX6Aw6M+SeoyGR23XplNTOln3aTQ7El9tj/606bxea4GxYyvV4ymTmuoODz3GXQlLLQVdGkFLyIdDQ==";
+        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.2.4.tgz";
+        sha512 = "ft/8/dTRGzGQ9vCnAzuBxzR+aDv4Yun/vuSKi/eI5Qj2/ZBal28L9HpWziSTWlLrMhZns8CRz7s2p84P2ee/vA==";
       };
     };
-    "node-red-node-twitter-1.1.3" = {
+    "node-red-node-twitter-1.1.4" = {
       name = "node-red-node-twitter";
       packageName = "node-red-node-twitter";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-twitter/-/node-red-node-twitter-1.1.3.tgz";
-        sha512 = "H4q6wfIeDkDp7ykFh4nK7vrnJa9NI3FmC2rASabup/9LEJ5XD5KXH07eqo+B3Cf3jAzJDmL7RFEFucA8C1oqCw==";
+        url = "https://registry.npmjs.org/node-red-node-twitter/-/node-red-node-twitter-1.1.4.tgz";
+        sha512 = "mkw8HOosXHMBRdyJkio77vPx4Ls5IY26P5ZyoMWmKMkimXKTnX00DdpmNlkW+dHwMDYq1H66WzFtQhNOdEAbgA==";
       };
     };
-    "node-request-by-swagger-1.1.3" = {
+    "node-request-by-swagger-1.1.4" = {
       name = "node-request-by-swagger";
       packageName = "node-request-by-swagger";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-request-by-swagger/-/node-request-by-swagger-1.1.3.tgz";
-        sha512 = "granjsEA0c+1GnJaKnOjJy1E3wWLADUnAg+x1eopWOo+oMDfRYKJjCBaInUgrli/yEnvUAJoymGhExP/6tcOyQ==";
+        url = "https://registry.npmjs.org/node-request-by-swagger/-/node-request-by-swagger-1.1.4.tgz";
+        sha512 = "hwaTaFPUwNKns5qXwGJpLQM3Z5zRluYeAxpYy1L8fWmWdT/DjLmsnW8/oGlSN8Vo4R28c2znfUoBUiB/RlPptw==";
       };
     };
     "node-ssdp-2.9.1" = {
@@ -22662,7 +22833,7 @@ let
       packageName = "node.extend";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node.extend/-/node.extend-1.0.0.tgz";
+        url = "http://registry.npmjs.org/node.extend/-/node.extend-1.0.0.tgz";
         sha1 = "ab83960c477280d01ba5554a0d8fd3acfe39336e";
       };
     };
@@ -22675,6 +22846,15 @@ let
         sha1 = "7525a2875677ea534784a5e10ac78956139614df";
       };
     };
+    "node.extend-2.0.1" = {
+      name = "node.extend";
+      packageName = "node.extend";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node.extend/-/node.extend-2.0.1.tgz";
+        sha512 = "42zXr2Cy16E58KEHm8vz2LE3IJWW0xUrQw0L+R2sII7NIiqKMa9JlwX02YFHg5+IKDg+Es1ZE8nD7ucUWR16UA==";
+      };
+    };
     "nodebmc-0.0.7" = {
       name = "nodebmc";
       packageName = "nodebmc";
@@ -22747,13 +22927,13 @@ let
         sha1 = "586db8101db30cb4438eb546737a41aad0cf13d5";
       };
     };
-    "nodemon-1.18.4" = {
+    "nodemon-1.18.6" = {
       name = "nodemon";
       packageName = "nodemon";
-      version = "1.18.4";
+      version = "1.18.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.4.tgz";
-        sha512 = "hyK6vl65IPnky/ee+D3IWvVGgJa/m3No2/Xc/3wanS6Ce1MWjCzH6NnhPJ/vZM+6JFym16jtHx51lmCMB9HDtg==";
+        url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.6.tgz";
+        sha512 = "4pHQNYEZun+IkIC2jCaXEhkZnfA7rQe73i8RkdRyDJls/K+WxR7IpI5uNUsAvQ0zWvYcCDNGD+XVtw2ZG86/uQ==";
       };
     };
     "nodesecurity-npm-utils-6.0.0" = {
@@ -22765,6 +22945,15 @@ let
         sha512 = "NLRle1woNaT2orR6fue2jNqkhxDTktgJj3sZxvR/8kp21pvOY7Gwlx5wvo0H8ZVPqdgd2nE2ADB9wDu5Cl8zNg==";
       };
     };
+    "nomnom-1.6.2" = {
+      name = "nomnom";
+      packageName = "nomnom";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nomnom/-/nomnom-1.6.2.tgz";
+        sha1 = "84a66a260174408fc5b77a18f888eccc44fb6971";
+      };
+    };
     "nomnom-1.8.1" = {
       name = "nomnom";
       packageName = "nomnom";
@@ -22981,13 +23170,13 @@ let
         sha512 = "COlxSO5PK9UvZXIa7/sqJDZOlffWFx9+CKJJWkdbhUJMBwcf9sof2jxt4uiVsl+nY3sy0/XFGl4iGr8GoKfiXA==";
       };
     };
-    "npm-pick-manifest-2.1.0" = {
+    "npm-pick-manifest-2.2.3" = {
       name = "npm-pick-manifest";
       packageName = "npm-pick-manifest";
-      version = "2.1.0";
+      version = "2.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.1.0.tgz";
-        sha512 = "q9zLP8cTr8xKPmMZN3naxp1k/NxVFsjxN6uWuO1tiw9gxg7wZWQ/b5UTfzD0ANw2q1lQxdLKTeCCksq+bPSgbQ==";
+        url = "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz";
+        sha512 = "+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA==";
       };
     };
     "npm-prefix-1.2.0" = {
@@ -23112,7 +23301,7 @@ let
       packageName = "npmlog";
       version = "2.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz";
+        url = "http://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz";
         sha1 = "98b52530f2514ca90d09ec5b22c8846722375692";
       };
     };
@@ -23130,7 +23319,7 @@ let
       packageName = "nprogress";
       version = "0.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz";
+        url = "http://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz";
         sha1 = "cb8f34c53213d895723fcbab907e9422adbcafb1";
       };
     };
@@ -23143,13 +23332,13 @@ let
         sha1 = "883ca2ec605f5ed64a4d5190b2625401928f8f8d";
       };
     };
-    "nth-check-1.0.1" = {
+    "nth-check-1.0.2" = {
       name = "nth-check";
       packageName = "nth-check";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz";
-        sha1 = "9929acdf628fc2c41098deab82ac580cf149aae4";
+        url = "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz";
+        sha512 = "WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==";
       };
     };
     "number-is-nan-1.0.1" = {
@@ -23621,13 +23810,13 @@ let
         sha1 = "42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc";
       };
     };
-    "opencollective-postinstall-2.0.0" = {
+    "opencollective-postinstall-2.0.1" = {
       name = "opencollective-postinstall";
       packageName = "opencollective-postinstall";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.0.tgz";
-        sha512 = "XAe80GycLe2yRGnJsUtt+EO5lk06XYRQt4kJJe53O2kJHPZJOZ+XMF/b47HW96e6LhfKVpwnXVr/s56jhV98jg==";
+        url = "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.1.tgz";
+        sha512 = "saQQ9hjLwu/oS0492eyYotoh+bra1819cfAT5rjY/e4REWwuc8IgZ844Oo44SiftWcJuBiqp0SA0BFVbmLX0IQ==";
       };
     };
     "opener-1.4.3" = {
@@ -23702,13 +23891,13 @@ let
         sha512 = "YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==";
       };
     };
-    "optimism-0.6.6" = {
+    "optimism-0.6.8" = {
       name = "optimism";
       packageName = "optimism";
-      version = "0.6.6";
+      version = "0.6.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/optimism/-/optimism-0.6.6.tgz";
-        sha512 = "1Y6LY7pYbXP5y6yeXYfXhxJi9hsxYAZWpt7bBp4seAwfcYtaN7tq9wot/pdrhyI809/K4gDm3BcZcEkmwGevjg==";
+        url = "https://registry.npmjs.org/optimism/-/optimism-0.6.8.tgz";
+        sha512 = "bN5n1KCxSqwBDnmgDnzMtQTHdL+uea2HYFx1smvtE+w2AMl0Uy31g0aXnP/Nt85OINnMJPRpJyfRQLTCqn5Weg==";
       };
     };
     "optimist-0.2.8" = {
@@ -24206,13 +24395,13 @@ let
         sha1 = "79b302fc144cdfbb4ab6feba7040e6a5d99c79c7";
       };
     };
-    "pacote-9.1.0" = {
+    "pacote-9.2.3" = {
       name = "pacote";
       packageName = "pacote";
-      version = "9.1.0";
+      version = "9.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pacote/-/pacote-9.1.0.tgz";
-        sha512 = "AFXaSWhOtQf3jHqEvg+ZYH/dfT8TKq6TKspJ4qEFwVVuh5aGvMIk6SNF8vqfzz+cBceDIs9drOcpBbrPai7i+g==";
+        url = "https://registry.npmjs.org/pacote/-/pacote-9.2.3.tgz";
+        sha512 = "Y3+yY3nBRAxMlZWvr62XLJxOwCmG9UmkGZkFurWHoCjqF0cZL72cTOCRJTvWw8T4OhJS2RTg13x4oYYriauvEw==";
       };
     };
     "pad-0.0.5" = {
@@ -24986,7 +25175,7 @@ let
       packageName = "phantomjs";
       version = "1.9.20";
       src = fetchurl {
-        url = "https://registry.npmjs.org/phantomjs/-/phantomjs-1.9.20.tgz";
+        url = "http://registry.npmjs.org/phantomjs/-/phantomjs-1.9.20.tgz";
         sha1 = "4424aca20e14d255c0b0889af6f6b8973da10e0d";
       };
     };
@@ -24999,6 +25188,15 @@ let
         sha1 = "efd212a4a3966d3647684ea8ba788549be2aefef";
       };
     };
+    "pid-from-port-1.1.3" = {
+      name = "pid-from-port";
+      packageName = "pid-from-port";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pid-from-port/-/pid-from-port-1.1.3.tgz";
+        sha512 = "OlE82n3yMOE5dY9RMOwxhoWefeMlxwk5IVxoj0sSzSFIlmvhN4obzTvO3s/d/b5JhcgXikjaspsy/HuUDTqbBg==";
+      };
+    };
     "piece-length-1.0.0" = {
       name = "piece-length";
       packageName = "piece-length";
@@ -25013,7 +25211,7 @@ let
       packageName = "pify";
       version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz";
+        url = "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz";
         sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
       };
     };
@@ -25296,13 +25494,13 @@ let
         sha1 = "8dd70c4fe7c694109add784ffe80eacac1e7b28d";
       };
     };
-    "portfinder-1.0.17" = {
+    "portfinder-1.0.19" = {
       name = "portfinder";
       packageName = "portfinder";
-      version = "1.0.17";
+      version = "1.0.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/portfinder/-/portfinder-1.0.17.tgz";
-        sha512 = "syFcRIRzVI1BoEFOCaAiizwDolh1S1YXSodsVhncbhjzjZQulhczNRbqnUl9N31Q4dKGOXsNDqxC2BWBgSMqeQ==";
+        url = "https://registry.npmjs.org/portfinder/-/portfinder-1.0.19.tgz";
+        sha512 = "23aeQKW9KgHe6citUrG3r9HjeX6vls0h713TAa+CwTKZwNIr/pD2ApaxYF4Um3ZZyq4ar+Siv3+fhoHaIwSOSw==";
       };
     };
     "posix-character-classes-0.1.1" = {
@@ -25440,22 +25638,22 @@ let
         sha1 = "c438ca2ca33e3927671db4ab69c0e52f936a4f0f";
       };
     };
-    "prisma-json-schema-0.1.1" = {
+    "prisma-json-schema-0.1.3" = {
       name = "prisma-json-schema";
       packageName = "prisma-json-schema";
-      version = "0.1.1";
+      version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prisma-json-schema/-/prisma-json-schema-0.1.1.tgz";
-        sha512 = "epi2cDTQu/xk//H79dqRIzqk9ZEEqgcvHR7M/UhG/9UcSYY3OP/tJKDj5AYk86Xt2p5muDp3+y8ZGVNGZVQgNw==";
+        url = "https://registry.npmjs.org/prisma-json-schema/-/prisma-json-schema-0.1.3.tgz";
+        sha512 = "XZrf2080oR81mY8/OC8al68HiwBm0nXlFE727JIia0ZbNqwuV4MyRYk6E0+OIa6/9KEYxZrcAmoBs3EW1cCvnA==";
       };
     };
-    "prisma-yml-1.0.93" = {
+    "prisma-yml-1.20.0-beta.18" = {
       name = "prisma-yml";
       packageName = "prisma-yml";
-      version = "1.0.93";
+      version = "1.20.0-beta.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prisma-yml/-/prisma-yml-1.0.93.tgz";
-        sha512 = "np7VXqA4t+qhmn2GXGIOL19IMWSyrI1T8uJH8Lrla9uslvSxch6bzarYcQgKsc+sTL/g1zbvNgRl19cr/CUuNQ==";
+        url = "https://registry.npmjs.org/prisma-yml/-/prisma-yml-1.20.0-beta.18.tgz";
+        sha512 = "wI/lOQrD78de2+ZNzJlbEYcYiUANtpdyT0VzAS+YbF5+1/O+shOnpwYsBtjrVL5Er0RwMkwH7j+oZQM61ENBMQ==";
       };
     };
     "prismjs-1.15.0" = {
@@ -25512,6 +25710,15 @@ let
         sha1 = "1638d8a8e34c2f440a91db95ab9aeb677fc185cf";
       };
     };
+    "process-exists-3.1.0" = {
+      name = "process-exists";
+      packageName = "process-exists";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-exists/-/process-exists-3.1.0.tgz";
+        sha512 = "X11vso1oNLtyDa2j8fsMol2fph1+5PoQ4vpEc1it/rM8eLuRTmrmTg4jfn82WhNur241AYitgjKCgmlgMRZesw==";
+      };
+    };
     "process-nextick-args-1.0.7" = {
       name = "process-nextick-args";
       packageName = "process-nextick-args";
@@ -25535,17 +25742,17 @@ let
       packageName = "progress";
       version = "1.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz";
+        url = "http://registry.npmjs.org/progress/-/progress-1.1.8.tgz";
         sha1 = "e260c78f6161cdd9b0e56cc3e0a85de17c7a57be";
       };
     };
-    "progress-2.0.0" = {
+    "progress-2.0.1" = {
       name = "progress";
       packageName = "progress";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz";
-        sha1 = "8a1be366bf8fc23db2bd23f10c6fe920b4389d1f";
+        url = "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz";
+        sha512 = "OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==";
       };
     };
     "progress-string-1.2.2" = {
@@ -25746,13 +25953,13 @@ let
         sha512 = "SmjEuAf3hc3h3rWZ6V1YaaQw2MNJWK848gLJgzx/sefOJdNLujKinJVXIS0q2cBQpQn2Q32TinawZyDZPzm4kQ==";
       };
     };
-    "protoduck-5.0.0" = {
+    "protoduck-5.0.1" = {
       name = "protoduck";
       packageName = "protoduck";
-      version = "5.0.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/protoduck/-/protoduck-5.0.0.tgz";
-        sha512 = "agsGWD8/RZrS4ga6v82Fxb0RHIS2RZnbsSue6A9/MBRhB/jcqOANAMNrqM9900b8duj+Gx+T/JMy5IowDoO/hQ==";
+        url = "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz";
+        sha512 = "WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==";
       };
     };
     "proxy-addr-1.0.10" = {
@@ -25764,15 +25971,6 @@ let
         sha1 = "0d40a82f801fc355567d2ecb65efe3f077f121c5";
       };
     };
-    "proxy-addr-1.1.5" = {
-      name = "proxy-addr";
-      packageName = "proxy-addr";
-      version = "1.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.1.5.tgz";
-        sha1 = "71c0ee3b102de3f202f3b64f608d173fcba1a918";
-      };
-    };
     "proxy-addr-2.0.4" = {
       name = "proxy-addr";
       packageName = "proxy-addr";
@@ -25836,6 +26034,15 @@ let
         sha1 = "d3fc114ba06995a45ec6893f484ceb1d78f5f476";
       };
     };
+    "ps-list-4.1.0" = {
+      name = "ps-list";
+      packageName = "ps-list";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ps-list/-/ps-list-4.1.0.tgz";
+        sha512 = "DSpMj8PI5W7v2G4+rE+BymTKZPjlu6t/M1N6rPAa6Hwn+/e8jDmFJaq8/kpoGCvwd75g2h5DbjF2MduOMNyrsQ==";
+      };
+    };
     "ps-tree-0.0.3" = {
       name = "ps-tree";
       packageName = "ps-tree";
@@ -26007,15 +26214,6 @@ let
         sha1 = "7017a984c3b834de77bac38c10b776f22dfc1843";
       };
     };
-    "pull-abortable-4.1.1" = {
-      name = "pull-abortable";
-      packageName = "pull-abortable";
-      version = "4.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pull-abortable/-/pull-abortable-4.1.1.tgz";
-        sha1 = "b3ad5aefb4116b25916d26db89393ac98d0dcea1";
-      };
-    };
     "pull-block-filter-1.0.0" = {
       name = "pull-block-filter";
       packageName = "pull-block-filter";
@@ -26241,13 +26439,13 @@ let
         sha1 = "5f99af15e8846d48ecf625edc248ec2cf57f6b0d";
       };
     };
-    "pull-inactivity-2.1.2" = {
+    "pull-inactivity-2.1.3" = {
       name = "pull-inactivity";
       packageName = "pull-inactivity";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pull-inactivity/-/pull-inactivity-2.1.2.tgz";
-        sha1 = "37a3d6ebbfac292cd435f5e481e5074c8c1fad75";
+        url = "https://registry.npmjs.org/pull-inactivity/-/pull-inactivity-2.1.3.tgz";
+        sha512 = "swJ/jwkIN/O1bQCE3iY7Xy9r3gYuJ50MXaxZilw/HIduAy4tJu+vcz2/If0L+xNK7Ku/FfjtVbTpRTe7sf3hmA==";
       };
     };
     "pull-kvdiff-0.0.0" = {
@@ -26394,13 +26592,13 @@ let
         sha1 = "95d0c60ce6ea9c8bab8ca0b16e1f518352ed4e4f";
       };
     };
-    "pull-sort-1.0.1" = {
+    "pull-sort-1.0.2" = {
       name = "pull-sort";
       packageName = "pull-sort";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pull-sort/-/pull-sort-1.0.1.tgz";
-        sha1 = "a8ab0c70c86f45343c9accc939fc42769ad3dc6d";
+        url = "https://registry.npmjs.org/pull-sort/-/pull-sort-1.0.2.tgz";
+        sha512 = "jGcAHMP+0Le+bEIhSODlbNNd3jW+S6XrXOlhVzfcKU5HQZjP92OzQSgHHSlwvWRsiTWi+UGgbFpL/5gGgmFoVQ==";
       };
     };
     "pull-stream-2.27.0" = {
@@ -26439,22 +26637,13 @@ let
         sha512 = "hJn4POeBrkttshdNl0AoSCVjMVSuBwuHocMerUdoZ2+oIUzrWHFTwJMlbHND7OiKLVgvz6TFj8ZUVywUMXccbw==";
       };
     };
-    "pull-stream-to-stream-1.3.4" = {
-      name = "pull-stream-to-stream";
-      packageName = "pull-stream-to-stream";
-      version = "1.3.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pull-stream-to-stream/-/pull-stream-to-stream-1.3.4.tgz";
-        sha1 = "3f81d8216bd18d2bfd1a198190471180e2738399";
-      };
-    };
-    "pull-stringify-1.2.2" = {
+    "pull-stringify-2.0.0" = {
       name = "pull-stringify";
       packageName = "pull-stringify";
-      version = "1.2.2";
+      version = "2.0.0";
       src = fetchurl {
-        url = "http://registry.npmjs.org/pull-stringify/-/pull-stringify-1.2.2.tgz";
-        sha1 = "5a1c34e0075faf2f2f6d46004e36dccd33bd7c7c";
+        url = "http://registry.npmjs.org/pull-stringify/-/pull-stringify-2.0.0.tgz";
+        sha1 = "22ba31da95af0888e0fb559238b1fa915a6a5b64";
       };
     };
     "pull-through-1.0.18" = {
@@ -26772,24 +26961,6 @@ let
         sha1 = "13e26d28ad6b0ffaa91312cd3bf708ed351e7233";
       };
     };
-    "qs-6.5.0" = {
-      name = "qs";
-      packageName = "qs";
-      version = "6.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.5.0.tgz";
-        sha512 = "fjVFjW9yhqMhVGwRExCXLhJKrLlkYSaxNWdyc9rmHlrVZbk35YHH312dFd7191uQeXkI3mKLZTIbSvIeFwFemg==";
-      };
-    };
-    "qs-6.5.1" = {
-      name = "qs";
-      packageName = "qs";
-      version = "6.5.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz";
-        sha512 = "eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==";
-      };
-    };
     "qs-6.5.2" = {
       name = "qs";
       packageName = "qs";
@@ -26844,13 +27015,13 @@ let
         sha1 = "9ec61f79049875707d69414596fd907a4d711e73";
       };
     };
-    "quick-format-unescaped-3.0.0" = {
+    "quick-format-unescaped-3.0.1" = {
       name = "quick-format-unescaped";
       packageName = "quick-format-unescaped";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.0.tgz";
-        sha512 = "XmIOc07VM2kPm6m3j/U6jgxyUgDm2Rgh2c1PPy0JUHoQRdoh86hOym0bHyF6G1T6sn+N5lildhvl/T59H5KVyA==";
+        url = "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.1.tgz";
+        sha512 = "Tnk4iJQ8x3V8ml3x9sLIf4tSDaVB9OJY/5gOrnxgK63CXKphhn8oYOPI4tqnXPQcZ3tCv7GFjeoYY5h6UAvuzg==";
       };
     };
     "quick-lru-1.1.0" = {
@@ -26889,6 +27060,24 @@ let
         sha1 = "8ccfd014d0f9608630dd73c19b8e4b057754a6a6";
       };
     };
+    "railroad-diagrams-1.0.0" = {
+      name = "railroad-diagrams";
+      packageName = "railroad-diagrams";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz";
+        sha1 = "eb7e6267548ddedfb899c1b90e57374559cddb7e";
+      };
+    };
+    "randexp-0.4.6" = {
+      name = "randexp";
+      packageName = "randexp";
+      version = "0.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz";
+        sha512 = "80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==";
+      };
+    };
     "random-access-file-2.0.1" = {
       name = "random-access-file";
       packageName = "random-access-file";
@@ -26934,13 +27123,13 @@ let
         sha1 = "f7d97d92dee6665ec5f6da08c7f963cad4b2ac99";
       };
     };
-    "randomatic-3.1.0" = {
+    "randomatic-3.1.1" = {
       name = "randomatic";
       packageName = "randomatic";
-      version = "3.1.0";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz";
-        sha512 = "KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==";
+        url = "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz";
+        sha512 = "TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==";
       };
     };
     "randombytes-2.0.6" = {
@@ -27042,15 +27231,6 @@ let
         sha1 = "adfeace2e4fb3098058014d08c072dcc59758774";
       };
     };
-    "raw-body-2.3.2" = {
-      name = "raw-body";
-      packageName = "raw-body";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz";
-        sha1 = "bcd60c77d3eb93cde0050295c3f379389bc88f89";
-      };
-    };
     "raw-body-2.3.3" = {
       name = "raw-body";
       packageName = "raw-body";
@@ -27060,13 +27240,13 @@ let
         sha512 = "9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==";
       };
     };
-    "raw-socket-1.6.3" = {
+    "raw-socket-1.6.4" = {
       name = "raw-socket";
       packageName = "raw-socket";
-      version = "1.6.3";
+      version = "1.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/raw-socket/-/raw-socket-1.6.3.tgz";
-        sha512 = "OcplcSbIIyEZxW6YFsqbvyrUrqvwFNmA4jhA9ZmMhquLrd9VBzIrFRRZ2qaD98UpyVk/VYJLemO8haECHMmEgQ==";
+        url = "https://registry.npmjs.org/raw-socket/-/raw-socket-1.6.4.tgz";
+        sha512 = "ab/By3tp0gTDzwEJxgKUv+uIma0JFVnJElNMKNAqNiET+GQ2VAfR6eUVfnm0yRG/vxGu8gO2BYWhR30sQOTebg==";
       };
     };
     "rc-0.4.0" = {
@@ -27587,7 +27767,7 @@ let
       packageName = "remark";
       version = "3.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/remark/-/remark-3.2.3.tgz";
+        url = "http://registry.npmjs.org/remark/-/remark-3.2.3.tgz";
         sha1 = "802a38c3aa98c9e1e3ea015eeba211d27cb65e1f";
       };
     };
@@ -27843,13 +28023,13 @@ let
         sha1 = "5281770f68e0c9719e5163fd3fab482215f4fda5";
       };
     };
-    "requestretry-3.0.1" = {
+    "requestretry-3.0.2" = {
       name = "requestretry";
       packageName = "requestretry";
-      version = "3.0.1";
+      version = "3.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/requestretry/-/requestretry-3.0.1.tgz";
-        sha512 = "vJUdB4xucpx+Hc5N1hV44/fHmT4ovhrwGWfG9MtZR6AeO1G350IqPUXJL4gfZND6RtqoSqB+Zs9EeCsMizYf9A==";
+        url = "https://registry.npmjs.org/requestretry/-/requestretry-3.0.2.tgz";
+        sha512 = "3UXO4EOBwRFXm2AeAElyhM3bmMb57jZi5QC2httyXXSyT49O6o+AdzUZRA/vj5O2tE6xbdpDygRZb5Q19Q7lCA==";
       };
     };
     "require-directory-2.1.1" = {
@@ -28055,7 +28235,7 @@ let
       packageName = "restify";
       version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/restify/-/restify-4.0.3.tgz";
+        url = "http://registry.npmjs.org/restify/-/restify-4.0.3.tgz";
         sha1 = "e1e5b7ad9d4f6aeacd20e28f44a045f26c146dbc";
       };
     };
@@ -28284,13 +28464,22 @@ let
         sha1 = "6f04063a2d04eba3303a1bbc6765eef63037cf3d";
       };
     };
-    "router-1.3.3" = {
+    "router-2.0.0-alpha.1" = {
       name = "router";
       packageName = "router";
-      version = "1.3.3";
+      version = "2.0.0-alpha.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/router/-/router-2.0.0-alpha.1.tgz";
+        sha512 = "fz/T/qLkJM6RTtbqGqA1+uZ88ejqJoPyKeJAeXPYjebA7HzV/UyflH4gXWqW/Y6SERnp4kDwNARjqy6se3PcOw==";
+      };
+    };
+    "rss-parser-3.5.3" = {
+      name = "rss-parser";
+      packageName = "rss-parser";
+      version = "3.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/router/-/router-1.3.3.tgz";
-        sha1 = "c142f6b5ea4d6b3359022ca95b6580bd217f89cf";
+        url = "https://registry.npmjs.org/rss-parser/-/rss-parser-3.5.3.tgz";
+        sha512 = "oByqqKTuB6tCg/4UTPXUpJmG4Wr+H72qsBcSnBZM9nH1NhjV8lXzx8uKibN9Sq+mZwwZQyOitjoQvZ/ePsttKA==";
       };
     };
     "rsvp-3.6.2" = {
@@ -28469,7 +28658,7 @@ let
       packageName = "safe-regex";
       version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
+        url = "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
         sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
       };
     };
@@ -28590,6 +28779,15 @@ let
         sha512 = "MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg==";
       };
     };
+    "sec-1.0.0" = {
+      name = "sec";
+      packageName = "sec";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sec/-/sec-1.0.0.tgz";
+        sha1 = "033d60a3ad20ecf2e00940d14f97823465774335";
+      };
+    };
     "secret-handshake-1.1.14" = {
       name = "secret-handshake";
       packageName = "secret-handshake";
@@ -28617,13 +28815,13 @@ let
         sha1 = "f0c82d98a3b139a8776a8808050b824431087fca";
       };
     };
-    "secure-scuttlebutt-18.5.0" = {
+    "secure-scuttlebutt-18.6.0" = {
       name = "secure-scuttlebutt";
       packageName = "secure-scuttlebutt";
-      version = "18.5.0";
+      version = "18.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/secure-scuttlebutt/-/secure-scuttlebutt-18.5.0.tgz";
-        sha512 = "b50xp0XAWtd6y4ygw2RRgDxaFNgGqC7XahRt/mC4XhiCe6HoTjpt6j07HVnTDcRtLzNiCPKlFJnYySFTFay2lQ==";
+        url = "https://registry.npmjs.org/secure-scuttlebutt/-/secure-scuttlebutt-18.6.0.tgz";
+        sha512 = "gKQ8tJVnxd8WJEMusXyVkcHGZHoYB+F+TuQYisFYlhAntqlKBExdN+IT6DjVmHev7DvxE68PVtR8Ijqme93d2w==";
       };
     };
     "seek-bzip-1.0.5" = {
@@ -28860,15 +29058,6 @@ let
         sha1 = "765e7607c8055452bba6f0b052595350986036de";
       };
     };
-    "send-0.15.6" = {
-      name = "send";
-      packageName = "send";
-      version = "0.15.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/send/-/send-0.15.6.tgz";
-        sha1 = "20f23a9c925b762ab82705fe2f9db252ace47e34";
-      };
-    };
     "send-0.16.2" = {
       name = "send";
       packageName = "send";
@@ -28995,15 +29184,6 @@ let
         sha1 = "ce5a6ecd3101fed5ec09827dac22a9c29bfb0535";
       };
     };
-    "serve-static-1.12.6" = {
-      name = "serve-static";
-      packageName = "serve-static";
-      version = "1.12.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.12.6.tgz";
-        sha1 = "b973773f63449934da54e5beba5e31d9f4211577";
-      };
-    };
     "serve-static-1.13.2" = {
       name = "serve-static";
       packageName = "serve-static";
@@ -29085,15 +29265,6 @@ let
         sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
       };
     };
-    "setprototypeof-1.0.3" = {
-      name = "setprototypeof";
-      packageName = "setprototypeof";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz";
-        sha1 = "66567e37043eeb4f04d91bd658c0cbefb55b8e04";
-      };
-    };
     "setprototypeof-1.1.0" = {
       name = "setprototypeof";
       packageName = "setprototypeof";
@@ -29229,13 +29400,13 @@ let
         sha512 = "vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==";
       };
     };
-    "shortid-2.2.13" = {
+    "shortid-2.2.14" = {
       name = "shortid";
       packageName = "shortid";
-      version = "2.2.13";
+      version = "2.2.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/shortid/-/shortid-2.2.13.tgz";
-        sha512 = "dBuNnQGKrJNfjunmXI2X7bl1gnMO4PwbNxrTzO1JvilODmL7WyyCtA+DYxe9XunLXmxmgzFIvKPQ6XRAQrr46Q==";
+        url = "https://registry.npmjs.org/shortid/-/shortid-2.2.14.tgz";
+        sha512 = "4UnZgr9gDdA1kaKj/38IiudfC3KHKhDc1zi/HSxd9FQDR0VLwH3/y79tZJLsVYPsJgIjeHjqIWaWVRJUj9qZOQ==";
       };
     };
     "shush-1.0.0" = {
@@ -29337,13 +29508,13 @@ let
         sha512 = "Wvre/Jq5vgoz31Z9stYWPLn0PqRqmBDpFSdypAnHu5AvRVCYPRYGnvryNLiXu8GOBNDH82J2FRHUGMjjHUpXFw==";
       };
     };
-    "simple-git-1.105.0" = {
+    "simple-git-1.107.0" = {
       name = "simple-git";
       packageName = "simple-git";
-      version = "1.105.0";
+      version = "1.107.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.105.0.tgz";
-        sha512 = "ZrGcCPRIKCm6Q8gNJ+gx+leHqaokKpXae6K9lZpVD4sfeA2/rVvxcIR4KVVujNOmA6wHE2xaQ0GQWuIY88o6pA==";
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.107.0.tgz";
+        sha512 = "t4OK1JRlp4ayKRfcW6owrWcRVLyHRUlhGd0uN6ZZTqfDq8a5XpcUdOKiGRNobHEuMtNqzp0vcJNvhYWwh5PsQA==";
       };
     };
     "simple-lru-cache-0.0.2" = {
@@ -29531,7 +29702,7 @@ let
       packageName = "slice-ansi";
       version = "0.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz";
+        url = "http://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz";
         sha1 = "edbf8903f66f7ce2f8eafd6ceed65e264c831b35";
       };
     };
@@ -29544,6 +29715,15 @@ let
         sha512 = "POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==";
       };
     };
+    "slice-ansi-2.0.0" = {
+      name = "slice-ansi";
+      packageName = "slice-ansi";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.0.0.tgz";
+        sha512 = "4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==";
+      };
+    };
     "sliced-0.0.3" = {
       name = "sliced";
       packageName = "sliced";
@@ -29684,7 +29864,7 @@ let
       packageName = "sntp";
       version = "0.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sntp/-/sntp-0.1.4.tgz";
+        url = "http://registry.npmjs.org/sntp/-/sntp-0.1.4.tgz";
         sha1 = "5ef481b951a7b29affdf4afd7f26838fc1120f84";
       };
     };
@@ -29693,7 +29873,7 @@ let
       packageName = "sntp";
       version = "1.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz";
+        url = "http://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz";
         sha1 = "6541184cc90aeea6c6e7b35e2659082443c66198";
       };
     };
@@ -29706,13 +29886,13 @@ let
         sha512 = "FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==";
       };
     };
-    "snyk-1.103.4" = {
+    "snyk-1.108.0" = {
       name = "snyk";
       packageName = "snyk";
-      version = "1.103.4";
+      version = "1.108.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk/-/snyk-1.103.4.tgz";
-        sha512 = "ynLlsLDjAkzymd0qi1il6f34S4oNTfIgvFCFvkYxvqfBkedfOoDQT4TLU8gi+55MGM6iornf2iefC2FW92BwnQ==";
+        url = "https://registry.npmjs.org/snyk/-/snyk-1.108.0.tgz";
+        sha512 = "QKeERkklW4DFyd49sqbwZ4xNYXtHOPCcUjNUzDfcvXzNwyxfRKhTf43nmPw6lnIcgBesrY95hMozos4WmgYl3w==";
       };
     };
     "snyk-config-2.2.0" = {
@@ -29724,22 +29904,22 @@ let
         sha512 = "mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==";
       };
     };
-    "snyk-docker-plugin-1.12.0" = {
+    "snyk-docker-plugin-1.12.1" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
-      version = "1.12.0";
+      version = "1.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.0.tgz";
-        sha512 = "QqKq2bGdnf1L2PNGQrHoqcoaV/PIlJv1qjKIzwA93gfhToKGkgJ31oPXwfef/l9N+ui0Y44c4POBHFbFf8PlJw==";
+        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.1.tgz";
+        sha512 = "9/k+tZORb0CUoE+nFvG+ADc6vzHAkgiGR/7aZ35vxpuc9vW37LFWjmXZAfyoiGNOn1ICrPxSxarah8YsFEwE8Q==";
       };
     };
-    "snyk-go-plugin-1.5.2" = {
+    "snyk-go-plugin-1.6.0" = {
       name = "snyk-go-plugin";
       packageName = "snyk-go-plugin";
-      version = "1.5.2";
+      version = "1.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.5.2.tgz";
-        sha512 = "XWajcSh6Ld+I+WdcyU3DGDuE2ydThQd8ORkESy0nQ2LwekygLYVYN66OBy0uxpqYfd4qoqeg+J8lb4oGzCmyGA==";
+        url = "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz";
+        sha512 = "E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ==";
       };
     };
     "snyk-gradle-plugin-2.1.0" = {
@@ -29751,13 +29931,13 @@ let
         sha512 = "9gYJluomFZ5kaww5FoBvp4zUIsr27pEJ12jQJaVf0FJ0BmyYHmbCoxvHdqjCSYS2fVtF+fmPnvw0XKQOIwA1SA==";
       };
     };
-    "snyk-module-1.8.2" = {
+    "snyk-module-1.9.1" = {
       name = "snyk-module";
       packageName = "snyk-module";
-      version = "1.8.2";
+      version = "1.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.2.tgz";
-        sha512 = "XqhdbZ/CUuJ5gSaYdYfapLqx9qm2Mp6nyRMBCLXe9tJSiohOJsc9fQuUDbdOiRCqpA4BD6WLl+qlwOJmJoszBg==";
+        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz";
+        sha512 = "A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==";
       };
     };
     "snyk-mvn-plugin-2.0.0" = {
@@ -29769,13 +29949,13 @@ let
         sha512 = "9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg==";
       };
     };
-    "snyk-nodejs-lockfile-parser-1.5.3" = {
+    "snyk-nodejs-lockfile-parser-1.7.0" = {
       name = "snyk-nodejs-lockfile-parser";
       packageName = "snyk-nodejs-lockfile-parser";
-      version = "1.5.3";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.5.3.tgz";
-        sha512 = "hVUUxRm7f8mN3RdTbeZGJn+w4VMKb7ke4/OB8Qhr4O5S04AMb4YOcsZ80niur05VUykPT32IyFwyGRTBi99WUw==";
+        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.0.tgz";
+        sha512 = "57Gnw8o3HQbheb808GRsofnYPaJCbpt7n+zec+C7J/GZE6GJk+WA2u1EPsNQAsfTLQ3rxBwA1Sonhg498T4COA==";
       };
     };
     "snyk-nuget-plugin-1.6.5" = {
@@ -29796,22 +29976,22 @@ let
         sha512 = "g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==";
       };
     };
-    "snyk-policy-1.12.0" = {
+    "snyk-policy-1.13.1" = {
       name = "snyk-policy";
       packageName = "snyk-policy";
-      version = "1.12.0";
+      version = "1.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.12.0.tgz";
-        sha512 = "CEioNnDzccHyid7UIVl3bJ1dnG4co4ofI+KxuC1mo0IUXy64gxnBTeVoZF5gVLWbAyxGxSeW8f0+8GmWMHVb7w==";
+        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz";
+        sha512 = "l9evS3Yk70xyvajjg+I6Ij7fr7gxpVRMZl0J1xNpWps/IVu4DSGih3aMmXi47VJozr4A/eFyj7R1lIr2GhqJCA==";
       };
     };
-    "snyk-python-plugin-1.8.2" = {
+    "snyk-python-plugin-1.9.0" = {
       name = "snyk-python-plugin";
       packageName = "snyk-python-plugin";
-      version = "1.8.2";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.8.2.tgz";
-        sha512 = "LBvjztnXarSHKyhivzM567icOOLOB98I7S9EEnjepuG+EZ0jiZzqOEMVRmzuYi+hRq3Cwh0hhjkwgJAQpKDz+g==";
+        url = "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.9.0.tgz";
+        sha512 = "zlyOHoCpmyVym9AwkboeepzEGrY3gHsM7eWP/nJ85TgCnQO5H5orKm3RL57PNbWRY+BnDmoQQ+udQgjym2+3sg==";
       };
     };
     "snyk-resolve-1.0.1" = {
@@ -30390,13 +30570,13 @@ let
         sha512 = "Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==";
       };
     };
-    "spdx-license-ids-3.0.1" = {
+    "spdx-license-ids-3.0.2" = {
       name = "spdx-license-ids";
       packageName = "spdx-license-ids";
-      version = "3.0.1";
+      version = "3.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz";
-        sha512 = "TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==";
+        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz";
+        sha512 = "qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg==";
       };
     };
     "spdy-1.32.5" = {
@@ -30543,13 +30723,13 @@ let
         sha1 = "06cd70795ee58d1462d100a45c660df3179d3b39";
       };
     };
-    "ssb-blobs-1.1.5" = {
+    "ssb-blobs-1.1.6" = {
       name = "ssb-blobs";
       packageName = "ssb-blobs";
-      version = "1.1.5";
+      version = "1.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-blobs/-/ssb-blobs-1.1.5.tgz";
-        sha512 = "DeeInkFU8oN1mYlPVrqrm9tupf6wze4HuowK7N2vv/O+UeSLuYPU1p4HrxSqdAPvUabr0OtvbFA6z1T4nw+9fw==";
+        url = "https://registry.npmjs.org/ssb-blobs/-/ssb-blobs-1.1.6.tgz";
+        sha512 = "/dQIhg19Sk/cnRg25yUFFKhY67eB+Mlx00rK138dCVz3JhKLdmgDbK8kF5Ik/C/DdxDVya3xJZRW0fexwGOAkw==";
       };
     };
     "ssb-client-4.6.0" = {
@@ -30561,31 +30741,31 @@ let
         sha512 = "LyH5Y/U7xvafmAuG1puyhNv4G3Ew9xC67dYgRX0wwbUf5iT422WB1Cvat9qGFAu3/BQbdctXtdEQPxaAn0+hYA==";
       };
     };
-    "ssb-config-2.3.5" = {
+    "ssb-config-2.3.7" = {
       name = "ssb-config";
       packageName = "ssb-config";
-      version = "2.3.5";
+      version = "2.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-config/-/ssb-config-2.3.5.tgz";
-        sha512 = "lT30POSTXX6nsACYwMkNto0M74YMoEzLqpSpZqK+AwaRWlNvFqGmjEMwLb5G5jz7deCrXJFo87O3IubiQrwdGg==";
+        url = "https://registry.npmjs.org/ssb-config/-/ssb-config-2.3.7.tgz";
+        sha512 = "djjLoNpDlE0K/UfhU1mNuJqOy8oJsv/6Q8RLDTHdby2Z+r2MxKRaACH3R9DMZyzgnd3wLjXba5ntNvsuabjx5g==";
       };
     };
-    "ssb-ebt-5.2.3" = {
+    "ssb-ebt-5.2.7" = {
       name = "ssb-ebt";
       packageName = "ssb-ebt";
-      version = "5.2.3";
+      version = "5.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-5.2.3.tgz";
-        sha512 = "LTIry3qRZRLqv3l97tcd22dNiLjZHz7Ynot0OQFG10zL4jsECSkSxMUqSwrFUTfZEySUxhAx92TDcafDy+/J3A==";
+        url = "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-5.2.7.tgz";
+        sha512 = "dLiLRtGMagSKRuOIBQzPDfAQf7LNFR8+g91tKxMPbV6WMENF2bojz3POd75i6BhXJhJx1A6zpO6IrMz3StmtbA==";
       };
     };
-    "ssb-friends-3.1.3" = {
+    "ssb-friends-3.1.6" = {
       name = "ssb-friends";
       packageName = "ssb-friends";
-      version = "3.1.3";
+      version = "3.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-friends/-/ssb-friends-3.1.3.tgz";
-        sha512 = "bufgvAcqjAyjKfmh788dr3fV9YYrIgdkIhfETPHidbgIKgx15clNUzjP/s7FZk2PwwrjHyQ54kE0BR2em6u/nQ==";
+        url = "https://registry.npmjs.org/ssb-friends/-/ssb-friends-3.1.6.tgz";
+        sha512 = "0wKk/MpQ+Xdteso7Ipmgq1AO7m0sAyJjtbEpaAPLR8Mb5uPcK0n/rgGG6nnI6Vl8z1fuhkiqy4BtLQshaSBi/A==";
       };
     };
     "ssb-git-0.5.0" = {
@@ -30696,31 +30876,31 @@ let
         sha512 = "y4OA2MvGl1jU7bUTYsTmMNSqlPt4eh9401THUW1DO4aFyBFEWvpa3eKJHc8aTmaph2hutPPbdKgEFsWDzw26uw==";
       };
     };
-    "ssb-ref-2.12.0" = {
+    "ssb-ref-2.13.6" = {
       name = "ssb-ref";
       packageName = "ssb-ref";
-      version = "2.12.0";
+      version = "2.13.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-ref/-/ssb-ref-2.12.0.tgz";
-        sha512 = "xcVFLYgvWkxZoNDCOQHLqgHYsjmfunVkdby9OPEygjufXbiW6zpnFTBqlqEBojBetxxtVdwCgZreD9kYXED/ZA==";
+        url = "https://registry.npmjs.org/ssb-ref/-/ssb-ref-2.13.6.tgz";
+        sha512 = "l4mvU4PwXYTWJFhps4g9RkvPAEqJ5klR3oFBEaUqXTHfDzEq2pAn11Np2JqH0CM9JnW/AbK9H+Uzw4aofA9D8A==";
       };
     };
-    "ssb-validate-3.0.11" = {
+    "ssb-validate-4.0.3" = {
       name = "ssb-validate";
       packageName = "ssb-validate";
-      version = "3.0.11";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-validate/-/ssb-validate-3.0.11.tgz";
-        sha512 = "mZPI9HKZtqPP7Qi26B0GR7HqYmmcELEaoj5zr8TlUcULg9BOZy7f4VSzcKZ36LIkvpuK2sfA6znxIlBLq78fjg==";
+        url = "https://registry.npmjs.org/ssb-validate/-/ssb-validate-4.0.3.tgz";
+        sha512 = "ee0HgdtRef+dL98sbcEVB7+gnr8u5TqJcQqRdISWyfKcLKv1GXsmXb7VSYVRGveIkbnxHvOWps+XEJzmqqgxHQ==";
       };
     };
-    "ssb-ws-3.0.0" = {
+    "ssb-ws-3.0.2" = {
       name = "ssb-ws";
       packageName = "ssb-ws";
-      version = "3.0.0";
+      version = "3.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-ws/-/ssb-ws-3.0.0.tgz";
-        sha512 = "Qna9Oa9+MYhv+Xtqmidb6xww2JZAdO6ZzidJleWbOLJTSV2QkkB7aAFpWdYst/N78ZhThPqT/mdgEmWpaCqTbw==";
+        url = "https://registry.npmjs.org/ssb-ws/-/ssb-ws-3.0.2.tgz";
+        sha512 = "rQnbFIdzyQrB77y1UD0cWlW/TYO6rqCT1RO95p0ka6UQsEBtm/O7TN8h5AgroD9XqyxdusXhEbhobpUt41s1Cw==";
       };
     };
     "ssh-config-1.1.3" = {
@@ -30750,13 +30930,13 @@ let
         sha1 = "130f5975eddad963f1d56f92b9ac6c51fa9f83eb";
       };
     };
-    "sshpk-1.15.1" = {
+    "sshpk-1.15.2" = {
       name = "sshpk";
       packageName = "sshpk";
-      version = "1.15.1";
+      version = "1.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.1.tgz";
-        sha512 = "mSdgNUaidk+dRU5MhYtN9zebdzF2iG0cNPWy8HG+W8y+fT1JnSkh0fzzpjOa0L7P8i1Rscz38t0h4gPcKz43xA==";
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.15.2.tgz";
+        sha512 = "Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA==";
       };
     };
     "sshpk-1.7.1" = {
@@ -31484,7 +31664,7 @@ let
       packageName = "strip-eof";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz";
+        url = "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz";
         sha1 = "bb43ff5598a6eb05d89b59fcd129c983313606bf";
       };
     };
@@ -31962,7 +32142,7 @@ let
       packageName = "tar";
       version = "0.1.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-0.1.17.tgz";
+        url = "http://registry.npmjs.org/tar/-/tar-0.1.17.tgz";
         sha1 = "408c8a95deb8e78a65b59b1a51a333183a32badc";
       };
     };
@@ -31971,7 +32151,7 @@ let
       packageName = "tar";
       version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
+        url = "http://registry.npmjs.org/tar/-/tar-2.2.1.tgz";
         sha1 = "8e4d2a256c0e2185c6b18ad694aec968b83cb1d1";
       };
     };
@@ -31984,13 +32164,13 @@ let
         sha512 = "pQNFsg+Wb6VXsrIPUnuQwrHR4wD5ASBR0jRyiT4/AALFA2Nl+CjhkDX5fTmIwCuULRtyQR3Dae2BBnP2EFHscw==";
       };
     };
-    "tar-4.4.6" = {
+    "tar-4.4.7" = {
       name = "tar";
       packageName = "tar";
-      version = "4.4.6";
+      version = "4.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz";
-        sha512 = "tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==";
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.7.tgz";
+        sha512 = "mR3MzsCdN0IEWjZRuF/J9gaWHnTwOvzjqPTcvi1xXgfKTDQRp39gRETPQEfPByAdEOGmZfx1HrRsn8estaEvtA==";
       };
     };
     "tar-fs-1.16.3" = {
@@ -32020,6 +32200,24 @@ let
         sha512 = "rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==";
       };
     };
+    "taskkill-2.0.0" = {
+      name = "taskkill";
+      packageName = "taskkill";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/taskkill/-/taskkill-2.0.0.tgz";
+        sha1 = "a354305702a964357033027aa949eaed5331b784";
+      };
+    };
+    "tasklist-3.1.1" = {
+      name = "tasklist";
+      packageName = "tasklist";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tasklist/-/tasklist-3.1.1.tgz";
+        sha512 = "G3I7QWUBSNWaekrJcDabydF6dcvy+vZ2PrX04JYq1p914TOLgpN+ryMtheGavs1LYVevTbTmwjQY8aeX8yLsyA==";
+      };
+    };
     "temp-0.6.0" = {
       name = "temp";
       packageName = "temp";
@@ -32277,17 +32475,17 @@ let
       packageName = "thunky";
       version = "0.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/thunky/-/thunky-0.1.0.tgz";
+        url = "http://registry.npmjs.org/thunky/-/thunky-0.1.0.tgz";
         sha1 = "bf30146824e2b6e67b0f2d7a4ac8beb26908684e";
       };
     };
-    "thunky-1.0.2" = {
+    "thunky-1.0.3" = {
       name = "thunky";
       packageName = "thunky";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz";
-        sha1 = "a862e018e3fb1ea2ec3fce5d55605cf57f247371";
+        url = "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz";
+        sha512 = "YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==";
       };
     };
     "tildify-1.2.0" = {
@@ -32434,6 +32632,15 @@ let
         sha512 = "jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==";
       };
     };
+    "tmp-graphql-config-extension-openapi-1.0.7" = {
+      name = "tmp-graphql-config-extension-openapi";
+      packageName = "tmp-graphql-config-extension-openapi";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp-graphql-config-extension-openapi/-/tmp-graphql-config-extension-openapi-1.0.7.tgz";
+        sha512 = "NQPUaywaVC2hzWkBBsTX3sV2XfxU0mc409rJyrA7iCu5DSTjMLUqI+U4KJVSy/Ltp0zgbWMWua471R7zMql9Pw==";
+      };
+    };
     "to-absolute-glob-2.0.2" = {
       name = "to-absolute-glob";
       packageName = "to-absolute-glob";
@@ -32547,7 +32754,7 @@ let
       packageName = "to-vfile";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/to-vfile/-/to-vfile-1.0.0.tgz";
+        url = "http://registry.npmjs.org/to-vfile/-/to-vfile-1.0.0.tgz";
         sha1 = "88defecd43adb2ef598625f0e3d59f7f342941ba";
       };
     };
@@ -32587,13 +32794,13 @@ let
         sha512 = "O7L5hhSQHxuufWUdcTRPfuTh3phKfAZ/dqfxZFoxPCj2RYmpaSGLEIs016FCXItQwNr08yefUB5TSjzRYnajTA==";
       };
     };
-    "topo-3.0.0" = {
+    "topo-3.0.3" = {
       name = "topo";
       packageName = "topo";
-      version = "3.0.0";
+      version = "3.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/topo/-/topo-3.0.0.tgz";
-        sha512 = "Tlu1fGlR90iCdIPURqPiufqAlCZYzLjHYVVbcFWDMcX7+tK8hdZWAfsMrD/pBul9jqHHwFjNdf1WaxA9vTRRhw==";
+        url = "https://registry.npmjs.org/topo/-/topo-3.0.3.tgz";
+        sha512 = "IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ==";
       };
     };
     "torrent-discovery-5.4.0" = {
@@ -32785,6 +32992,15 @@ let
         sha512 = "DlX6dR0lOIRDFxI0mjL9IYg6OTncLm/Zt+JiBhE5OlFcAR8yc9S7FFXU9so0oda47frdM/JFsk7UjNt9vscKcg==";
       };
     };
+    "tree-kill-1.2.1" = {
+      name = "tree-kill";
+      packageName = "tree-kill";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz";
+        sha512 = "4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q==";
+      };
+    };
     "trim-0.0.1" = {
       name = "trim";
       packageName = "trim";
@@ -33100,13 +33316,13 @@ let
         sha512 = "kk80vLW9iGtjMnIv11qyxLqZm20UklzuR2tL0QAnDIygIUIemcZMxlMWudl9OOt76H3ntVzcTiddQ1/pAAJMYg==";
       };
     };
-    "typescript-3.1.3" = {
+    "typescript-3.1.6" = {
       name = "typescript";
       packageName = "typescript";
-      version = "3.1.3";
+      version = "3.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-3.1.3.tgz";
-        sha512 = "+81MUSyX+BaSo+u2RbozuQk/UWx6hfG0a5gHu4ANEM4sU96XbuIyAB+rWBW1u70c6a5QuZfuYICn3s2UjuHUpA==";
+        url = "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz";
+        sha512 = "tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==";
       };
     };
     "typewise-1.0.3" = {
@@ -33501,7 +33717,7 @@ let
       packageName = "unified";
       version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unified/-/unified-2.1.4.tgz";
+        url = "http://registry.npmjs.org/unified/-/unified-2.1.4.tgz";
         sha1 = "14bc6cd40d98ffff75b405506bad873ecbbac3ba";
       };
     };
@@ -33739,6 +33955,15 @@ let
         sha1 = "d2f0f737d16b0615e72a6935ed04214572d56f97";
       };
     };
+    "unzipper-0.9.4" = {
+      name = "unzipper";
+      packageName = "unzipper";
+      version = "0.9.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unzipper/-/unzipper-0.9.4.tgz";
+        sha512 = "kGrkTaphmXE+0/A5Q7rwcm/xHlDkXDOGEh6wuiN3SUQsyVWd7V51rwqttlNTT91JrLkfn34MoBNf38unF0vhRw==";
+      };
+    };
     "upath-1.1.0" = {
       name = "upath";
       packageName = "upath";
@@ -33987,7 +34212,7 @@ let
       packageName = "utf8";
       version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/utf8/-/utf8-2.0.0.tgz";
+        url = "http://registry.npmjs.org/utf8/-/utf8-2.0.0.tgz";
         sha1 = "79ce59eced874809cab9a71fc7102c7d45d4118d";
       };
     };
@@ -34014,7 +34239,7 @@ let
       packageName = "util";
       version = "0.10.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/util/-/util-0.10.3.tgz";
+        url = "http://registry.npmjs.org/util/-/util-0.10.3.tgz";
         sha1 = "7afb1afe50805246489e3db7fe0ed379336ac0f9";
       };
     };
@@ -34032,7 +34257,7 @@ let
       packageName = "util";
       version = "0.4.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/util/-/util-0.4.9.tgz";
+        url = "http://registry.npmjs.org/util/-/util-0.4.9.tgz";
         sha1 = "d95d5830d2328ec17dee3c80bfc50c33562b75a3";
       };
     };
@@ -34198,15 +34423,6 @@ let
         sha1 = "aab1a1fa30d45f88dd321148875ac02c0b55e5b4";
       };
     };
-    "v8flags-3.0.2" = {
-      name = "v8flags";
-      packageName = "v8flags";
-      version = "3.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/v8flags/-/v8flags-3.0.2.tgz";
-        sha512 = "6sgSKoFw1UpUPd3cFdF7QGnrH6tDeBgW1F3v9gy8gLY0mlbiBXq8soy8aQpY6xeeCjH5K+JvC62Acp7gtl7wWA==";
-      };
-    };
     "v8flags-3.1.1" = {
       name = "v8flags";
       packageName = "v8flags";
@@ -34419,7 +34635,7 @@ let
       packageName = "vfile";
       version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile/-/vfile-1.4.0.tgz";
+        url = "http://registry.npmjs.org/vfile/-/vfile-1.4.0.tgz";
         sha1 = "c0fd6fa484f8debdb771f68c31ed75d88da97fe7";
       };
     };
@@ -34428,7 +34644,7 @@ let
       packageName = "vfile-find-down";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-find-down/-/vfile-find-down-1.0.0.tgz";
+        url = "http://registry.npmjs.org/vfile-find-down/-/vfile-find-down-1.0.0.tgz";
         sha1 = "84a4d66d03513f6140a84e0776ef0848d4f0ad95";
       };
     };
@@ -34437,7 +34653,7 @@ let
       packageName = "vfile-find-up";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-find-up/-/vfile-find-up-1.0.0.tgz";
+        url = "http://registry.npmjs.org/vfile-find-up/-/vfile-find-up-1.0.0.tgz";
         sha1 = "5604da6fe453b34350637984eb5fe4909e280390";
       };
     };
@@ -34446,7 +34662,7 @@ let
       packageName = "vfile-reporter";
       version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-reporter/-/vfile-reporter-1.5.0.tgz";
+        url = "http://registry.npmjs.org/vfile-reporter/-/vfile-reporter-1.5.0.tgz";
         sha1 = "21a7009bfe55e24df8ff432aa5bf6f6efa74e418";
       };
     };
@@ -34455,7 +34671,7 @@ let
       packageName = "vfile-sort";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-sort/-/vfile-sort-1.0.0.tgz";
+        url = "http://registry.npmjs.org/vfile-sort/-/vfile-sort-1.0.0.tgz";
         sha1 = "17ee491ba43e8951bb22913fcff32a7dc4d234d4";
       };
     };
@@ -34720,13 +34936,13 @@ let
         sha1 = "13587190f34e72ba7a07ebbaa7e70ac147b1fb7d";
       };
     };
-    "vue-cli-plugin-apollo-0.16.6" = {
+    "vue-cli-plugin-apollo-0.17.3" = {
       name = "vue-cli-plugin-apollo";
       packageName = "vue-cli-plugin-apollo";
-      version = "0.16.6";
+      version = "0.17.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vue-cli-plugin-apollo/-/vue-cli-plugin-apollo-0.16.6.tgz";
-        sha512 = "2GFJQg84BrdgLZXkvwxndlAljOvPOhoNVXrVChSTpiOgEu5JqPkVn71fAeVZ/OYzlcs+48trQQ32SXoHrJyQ0A==";
+        url = "https://registry.npmjs.org/vue-cli-plugin-apollo/-/vue-cli-plugin-apollo-0.17.3.tgz";
+        sha512 = "IMKGkmwVAF8uAy5ngbE0XYze6i9PGSAnByqvVgLgT4YsjUHMwfyUoyVJuAtfJPZG2G+fVpcwArhBhucAWXbSXw==";
       };
     };
     "walk-2.3.14" = {
@@ -34801,13 +35017,13 @@ let
         sha1 = "79691584d98607f5070bd3b70a40e6bb22e401eb";
       };
     };
-    "webassemblyjs-1.7.8" = {
+    "webassemblyjs-1.7.11" = {
       name = "webassemblyjs";
       packageName = "webassemblyjs";
-      version = "1.7.8";
+      version = "1.7.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.7.8.tgz";
-        sha512 = "7J64n2yTf2apgtRJypiHUFNRc2twQrMAFIWsm8u4qih7nG+sry2Bna1zq3qFI35fazIF1m42VGHHvdp9bBXmBA==";
+        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.7.11.tgz";
+        sha512 = "vTwNncSEfuE51O1yHdcsino4LN1SYCiI4ws9OU1cImsqJ3vsydceDtzPcYXPFHm6Tie1ZH0HobXpYFExjronYw==";
       };
     };
     "webidl-conversions-2.0.1" = {
@@ -34999,13 +35215,13 @@ let
         sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
       };
     };
-    "widest-line-2.0.0" = {
+    "widest-line-2.0.1" = {
       name = "widest-line";
       packageName = "widest-line";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz";
-        sha1 = "0142a4e8a243f8882c0233aa0e0281aa76152273";
+        url = "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz";
+        sha512 = "Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==";
       };
     };
     "win-detect-browsers-1.0.2" = {
@@ -35990,13 +36206,13 @@ let
         sha512 = "/KbouQdKgnqxG6K3Tc8VBPAQLPbruQ7KkbinwR+ah507oOFobHnGs8kqj8oMfafY6rXInHdh7nC5YzicCR4Z0g==";
       };
     };
-    "yeoman-environment-2.3.3" = {
+    "yeoman-environment-2.3.4" = {
       name = "yeoman-environment";
       packageName = "yeoman-environment";
-      version = "2.3.3";
+      version = "2.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.3.3.tgz";
-        sha512 = "HBpXdNw8V66EwqIFt01rNhSgX33BOzgVb9CxpIvESvCI4ELeOSniB6gV6RXwrBur8kmHZCIAkYQYpib7Qxx8FQ==";
+        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.3.4.tgz";
+        sha512 = "KLxE5ft/74Qj7h3AsQZv8G6MEEHYJwmD5F99nfOVaep3rBzCtbrJKkdqWc7bDV141Nr8UZZsIXmzc3IcCm6E2w==";
       };
     };
     "yn-2.0.0" = {
@@ -36035,13 +36251,13 @@ let
         sha512 = "Dhp/R0pqSHj3vPs5O1gVd9kZx5Iew2lqVcfJQOBHx3llM/dLea8vl9wSa9FK8wLdSBQJ6mmgKi9+Rk2DRH3i9Q==";
       };
     };
-    "zen-observable-0.8.9" = {
+    "zen-observable-0.8.11" = {
       name = "zen-observable";
       packageName = "zen-observable";
-      version = "0.8.9";
+      version = "0.8.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/zen-observable/-/zen-observable-0.8.9.tgz";
-        sha512 = "Y9kPzjGvIZ5jchSlqlCpBW3I82zBBL4z+ulXDRVA1NwsKzjt5kwAi+gOYIy0htNkfuehGZZtP5mRXHRV6TjDWw==";
+        url = "https://registry.npmjs.org/zen-observable/-/zen-observable-0.8.11.tgz";
+        sha512 = "N3xXQVr4L61rZvGMpWe8XoCGX8vhU35dPyQ4fm5CY/KDlG0F75un14hjbckPXTDuKUY6V0dqR2giT6xN8Y4GEQ==";
       };
     };
     "zen-observable-ts-0.8.10" = {
@@ -36113,10 +36329,10 @@ in
   alloy = nodeEnv.buildNodePackage {
     name = "alloy";
     packageName = "alloy";
-    version = "1.13.3";
+    version = "1.13.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/alloy/-/alloy-1.13.3.tgz";
-      sha512 = "IU15/1dufp+iI9FmXshIo9z9x4HmDk5Wslo2VkHlA1k8pYzHQ3XapRflDkEdV1tZ9LXTEMJW40t8mnWLjZjDqg==";
+      url = "https://registry.npmjs.org/alloy/-/alloy-1.13.4.tgz";
+      sha512 = "EjH9edCzDZzUFj5Cko6Za/nd9pQsxwL/kza+EI8sfH0UFA8YYuFBriOITnE/T9E4bJC3kEJEakGKaag0CcGWbw==";
     };
     dependencies = [
       sources."JSV-4.0.2"
@@ -36171,7 +36387,7 @@ in
         ];
       })
       sources."globals-9.18.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-2.0.0"
       sources."has-color-0.1.7"
       sources."home-or-tmp-2.0.0"
@@ -36283,16 +36499,12 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-extra-0.26.7"
       sources."fs.realpath-1.0.0"
       sources."getpass-0.1.7"
       sources."glob-6.0.4"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."http-signature-1.2.0"
@@ -36308,8 +36520,8 @@ in
       sources."jsonfile-2.4.0"
       sources."jsprim-1.4.1"
       sources."klaw-1.3.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -36334,7 +36546,7 @@ in
       })
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."string_decoder-0.10.31"
       sources."tmp-0.0.28"
       (sources."touch-0.0.3" // {
@@ -36368,7 +36580,7 @@ in
       sha512 = "MMiK5sFfIocNMWCc5PshUCAe6aY4P13/GCmSwudOziA/pFdQMHU8jhu+jU2SSWFug4K1ugeuCwtMXe43oL0PhQ==";
     };
     dependencies = [
-      sources."@types/node-8.10.36"
+      sources."@types/node-8.10.37"
       sources."JSV-4.0.2"
       sources."adal-node-0.1.28"
       sources."ajv-5.5.2"
@@ -36431,11 +36643,11 @@ in
           sources."request-2.74.0"
         ];
       })
-      sources."azure-arm-resource-7.0.0"
+      sources."azure-arm-resource-7.0.1"
       sources."azure-arm-servermanagement-1.1.0"
       sources."azure-arm-storage-5.2.0"
       sources."azure-arm-trafficmanager-1.1.0-preview"
-      sources."azure-arm-website-5.3.0"
+      sources."azure-arm-website-5.5.0"
       sources."azure-asm-compute-0.18.0"
       sources."azure-asm-hdinsight-0.10.2"
       sources."azure-asm-mgmt-0.10.1"
@@ -36470,13 +36682,13 @@ in
         ];
       })
       sources."azure-servicefabric-2.0.0"
-      (sources."azure-storage-2.10.1" // {
+      (sources."azure-storage-2.10.2" // {
         dependencies = [
-          sources."extend-1.2.1"
           sources."readable-stream-2.0.6"
           sources."underscore-1.8.3"
           sources."validator-9.4.1"
           sources."xml2js-0.2.8"
+          sources."xmlbuilder-9.0.7"
         ];
       })
       sources."balanced-match-1.0.0"
@@ -36607,8 +36819,8 @@ in
       sources."lodash-4.17.11"
       sources."map-stream-0.1.0"
       sources."md5.js-1.3.4"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -36675,11 +36887,7 @@ in
           sources."assert-plus-1.0.0"
           sources."aws-sign2-0.7.0"
           sources."caseless-0.12.0"
-          (sources."form-data-2.3.2" // {
-            dependencies = [
-              sources."combined-stream-1.0.6"
-            ];
-          })
+          sources."form-data-2.3.3"
           sources."har-validator-5.1.0"
           sources."http-signature-1.2.0"
           sources."oauth-sign-0.9.0"
@@ -36701,7 +36909,7 @@ in
           sources."asn1-0.1.11"
         ];
       })
-      (sources."sshpk-1.15.1" // {
+      (sources."sshpk-1.15.2" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -36762,6 +36970,76 @@ in
     production = true;
     bypassCache = true;
   };
+  azure-functions-core-tools = nodeEnv.buildNodePackage {
+    name = "azure-functions-core-tools";
+    packageName = "azure-functions-core-tools";
+    version = "2.1.748";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/azure-functions-core-tools/-/azure-functions-core-tools-2.1.748.tgz";
+      sha512 = "Zi4/o7479cSZ0Ln5Ygf2FPdN5G2uXOOnoPG/8GGBQkdCkOtYECiOy5Py4A21MHJ/XvfIY4cRH7EVkbzZN5Cwwg==";
+    };
+    dependencies = [
+      sources."agent-base-4.2.1"
+      sources."ansi-styles-3.2.1"
+      sources."balanced-match-1.0.0"
+      sources."big-integer-1.6.36"
+      sources."binary-0.3.0"
+      sources."bluebird-3.4.7"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-indexof-polyfill-1.0.1"
+      sources."buffers-0.1.1"
+      sources."chainsaw-0.1.0"
+      sources."chalk-2.4.1"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."command-exists-1.2.8"
+      sources."concat-map-0.0.1"
+      sources."core-util-is-1.0.2"
+      sources."debug-3.2.6"
+      sources."duplexer2-0.1.4"
+      sources."es6-promise-4.2.5"
+      sources."es6-promisify-5.0.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."fs.realpath-1.0.0"
+      sources."fstream-1.0.11"
+      sources."glob-7.1.3"
+      sources."graceful-fs-4.1.15"
+      sources."has-flag-3.0.0"
+      sources."https-proxy-agent-2.2.1"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."listenercount-1.0.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.1.1"
+      sources."once-1.4.0"
+      sources."os-tmpdir-1.0.2"
+      sources."path-is-absolute-1.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-2.0.1"
+      sources."readable-stream-2.3.6"
+      sources."rimraf-2.6.2"
+      sources."safe-buffer-5.1.2"
+      sources."setimmediate-1.0.5"
+      sources."string_decoder-1.1.1"
+      sources."supports-color-5.5.0"
+      sources."tmp-0.0.33"
+      sources."traverse-0.3.9"
+      sources."unzipper-0.9.4"
+      sources."util-deprecate-1.0.2"
+      sources."wrappy-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Azure Functions Core Tools";
+      homepage = "https://github.com/Azure/azure-functions-core-tools#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+  };
   bower = nodeEnv.buildNodePackage {
     name = "bower";
     packageName = "bower";
@@ -36811,7 +37089,7 @@ in
       sources."find-up-1.1.2"
       (sources."fs-extra-0.26.7" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
         ];
       })
       sources."fs.realpath-1.0.0"
@@ -36830,24 +37108,24 @@ in
       sources."is-utf8-0.2.1"
       (sources."jsonfile-2.4.0" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
         ];
       })
       (sources."klaw-1.3.1" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
         ];
       })
       (sources."load-json-file-1.1.0" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
         ];
       })
       sources."lodash-4.2.1"
       sources."loud-rejection-1.6.0"
       sources."map-obj-1.0.1"
       sources."meow-3.7.0"
-      sources."mime-db-1.36.0"
+      sources."mime-db-1.37.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -36867,7 +37145,7 @@ in
       sources."path-is-absolute-1.0.1"
       (sources."path-type-1.1.0" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
         ];
       })
       sources."pify-2.3.0"
@@ -36891,7 +37169,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."sprintf-js-1.0.3"
       sources."strip-bom-2.0.0"
       sources."strip-indent-1.0.1"
@@ -36923,8 +37201,9 @@ in
     };
     dependencies = [
       sources."JSONStream-1.3.5"
-      sources."acorn-6.0.2"
-      sources."acorn-node-1.6.0"
+      sources."acorn-6.0.4"
+      sources."acorn-dynamic-import-4.0.0"
+      sources."acorn-node-1.6.2"
       sources."acorn-walk-6.1.0"
       sources."array-filter-0.0.1"
       sources."array-map-0.0.0"
@@ -37197,7 +37476,7 @@ in
         dependencies = [
           sources."minimist-0.0.8"
           sources."mkdirp-0.5.1"
-          sources."thunky-1.0.2"
+          sources."thunky-1.0.3"
         ];
       })
       sources."fs.realpath-1.0.0"
@@ -37205,7 +37484,7 @@ in
       sources."get-stdin-4.0.1"
       sources."glob-7.1.3"
       sources."got-1.2.2"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-1.0.3"
       sources."hat-0.0.3"
       sources."hawk-0.10.2"
@@ -37397,7 +37676,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."speedometer-0.1.4"
       sources."srt2vtt-1.3.1"
       sources."stream-transcoder-0.0.5"
@@ -37626,9 +37905,10 @@ in
       sources."abbrev-1.1.1"
       sources."accepts-1.3.5"
       sources."acorn-5.7.3"
-      (sources."acorn-node-1.6.0" // {
+      sources."acorn-dynamic-import-4.0.0"
+      (sources."acorn-node-1.6.2" // {
         dependencies = [
-          sources."acorn-6.0.2"
+          sources."acorn-6.0.4"
         ];
       })
       sources."acorn-walk-6.1.0"
@@ -37820,11 +38100,7 @@ in
       sources."finalhandler-1.1.1"
       sources."foreach-2.0.5"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
@@ -37836,7 +38112,7 @@ in
       sources."glob-5.0.15"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-1.0.3"
@@ -37930,8 +38206,8 @@ in
       sources."methods-1.1.2"
       sources."miller-rabin-4.0.1"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.0.4"
@@ -38064,8 +38340,8 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
-      sources."sshpk-1.15.1"
+      sources."spdx-license-ids-3.0.2"
+      sources."sshpk-1.15.2"
       sources."statuses-1.4.0"
       sources."stream-browserify-2.0.1"
       sources."stream-buffers-2.2.0"
@@ -38131,7 +38407,7 @@ in
       sources."verror-1.10.0"
       sources."vm-browserify-0.0.4"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."win-release-1.1.1"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.3.0"
@@ -38174,7 +38450,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.0"
-      sources."@types/node-10.11.7"
+      sources."@types/node-10.12.2"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-2.1.1"
@@ -38192,7 +38468,7 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."combine-errors-3.0.3"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."component-emitter-1.2.1"
       sources."cookiejar-2.1.2"
       sources."core-util-is-1.0.2"
@@ -38213,7 +38489,7 @@ in
       sources."extend-3.0.2"
       sources."external-editor-2.2.0"
       sources."figures-2.0.0"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."formidable-1.2.1"
       sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
@@ -38240,8 +38516,8 @@ in
       sources."lru-cache-4.1.3"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       sources."ms-2.1.1"
@@ -38305,10 +38581,10 @@ in
   create-react-app = nodeEnv.buildNodePackage {
     name = "create-react-app";
     packageName = "create-react-app";
-    version = "2.0.4";
+    version = "2.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/create-react-app/-/create-react-app-2.0.4.tgz";
-      sha512 = "8FP0i8GNAVADIH6zc1INmpkxDZADi+wWNOveq/ja/vjpkfgXcHd0bglNC5mg03cVmJUZWm/Am9qNY1IsUW+PGQ==";
+      url = "https://registry.npmjs.org/create-react-app/-/create-react-app-2.1.1.tgz";
+      sha512 = "ZCDwk0joko6JqKscWEaNPs32GyxVQZOIXxa7KmzZwnxiUyWfsWoiXfbivK5KyPnUT8AYztexCH9VI0tBTiqlsg==";
     };
     dependencies = [
       sources."ansi-regex-2.1.1"
@@ -38332,7 +38608,7 @@ in
       sources."fstream-1.0.11"
       sources."fstream-ignore-1.0.5"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-2.0.0"
       sources."hyperquest-2.1.3"
       sources."inflight-1.0.6"
@@ -38407,7 +38683,7 @@ in
       sources."cross-spawn-5.1.0"
       sources."escape-string-regexp-1.0.5"
       sources."fs-extra-4.0.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."isexe-2.0.0"
       sources."jsonfile-4.0.0"
@@ -38618,11 +38894,7 @@ in
       sources."for-in-1.0.2"
       sources."for-own-0.1.5"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."from2-2.3.0"
       sources."fs.realpath-1.0.0"
       sources."get-stream-3.0.0"
@@ -38633,7 +38905,7 @@ in
       sources."global-4.3.2"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-flag-3.0.0"
@@ -38722,8 +38994,8 @@ in
       sources."merkle-tree-stream-3.0.3"
       sources."micromatch-2.3.11"
       sources."mime-2.3.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."min-document-2.19.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -38742,7 +39014,7 @@ in
       sources."mutexify-1.2.0"
       sources."nan-2.11.1"
       sources."nanoassert-1.1.0"
-      sources."nanobus-4.3.4"
+      sources."nanobus-4.3.5"
       sources."nanoscheduler-1.0.3"
       sources."nanotiming-7.3.1"
       sources."ncp-1.0.1"
@@ -38790,7 +39062,7 @@ in
       sources."random-access-file-2.0.1"
       sources."random-access-memory-3.0.0"
       sources."random-access-storage-1.3.0"
-      (sources."randomatic-3.1.0" // {
+      (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
           sources."kind-of-6.0.2"
@@ -38835,7 +39107,7 @@ in
       sources."sorted-indexof-1.0.0"
       sources."sparse-bitfield-3.0.3"
       sources."speedometer-1.1.0"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stack-trace-0.0.10"
       sources."stream-collector-1.0.1"
       sources."stream-each-1.2.3"
@@ -38858,7 +39130,7 @@ in
       sources."supports-color-5.5.0"
       sources."term-size-1.2.0"
       sources."throttle-1.0.3"
-      sources."thunky-1.0.2"
+      sources."thunky-1.0.3"
       sources."timed-out-4.0.1"
       sources."to-buffer-1.1.1"
       (sources."toiletdb-1.4.1" // {
@@ -38889,7 +39161,7 @@ in
       sources."varint-3.0.1"
       sources."verror-1.10.0"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       (sources."winston-2.1.1" // {
         dependencies = [
           sources."async-1.0.0"
@@ -38985,7 +39257,7 @@ in
       sources."fresh-0.2.4"
       sources."from-0.1.7"
       sources."hiredis-0.4.1"
-      sources."http-parser-js-0.4.13"
+      sources."http-parser-js-0.5.0"
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."ipaddr.js-1.0.5"
@@ -39004,8 +39276,8 @@ in
       sources."merge-descriptors-0.0.2"
       sources."methods-1.1.2"
       sources."mime-1.2.11"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.10"
       sources."ms-0.7.0"
       sources."nan-2.11.1"
@@ -39105,7 +39377,7 @@ in
       sources."bytewise-core-1.2.3"
       sources."cookie-signature-1.1.0"
       sources."core-util-is-1.0.2"
-      sources."cors-2.8.4"
+      sources."cors-2.8.5"
       sources."deferred-leveldown-0.2.0"
       sources."docker-parse-image-3.0.1"
       (sources."duplexify-3.6.1" // {
@@ -39258,7 +39530,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.1"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.334.0"
+      sources."aws-sdk-2.349.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.8.0"
       sources."base64-js-1.3.0"
@@ -39279,11 +39551,7 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."getpass-0.1.7"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
@@ -39302,8 +39570,8 @@ in
       sources."jsprim-1.4.1"
       sources."lodash-4.17.11"
       sources."lossless-json-1.0.3"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.10"
       sources."oauth-sign-0.9.0"
       sources."optimist-0.6.1"
@@ -39317,11 +39585,11 @@ in
           sources."uuid-3.3.2"
         ];
       })
-      sources."requestretry-3.0.1"
+      sources."requestretry-3.0.2"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.1"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."through-2.3.8"
       (sources."tough-cookie-2.4.3" // {
         dependencies = [
@@ -39494,11 +39762,7 @@ in
       sources."firstline-1.2.1"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       sources."fs-extra-0.30.0"
       sources."fs.realpath-1.0.0"
@@ -39512,7 +39776,7 @@ in
           sources."is-glob-3.1.0"
         ];
       })
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-flag-2.0.0"
@@ -39559,8 +39823,8 @@ in
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       sources."mixin-deep-1.3.1"
@@ -39660,7 +39924,7 @@ in
       sources."source-map-url-0.4.0"
       sources."split-1.0.1"
       sources."split-string-3.1.0"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -39807,7 +40071,7 @@ in
       sources."get-stream-3.0.0"
       sources."globals-9.18.0"
       sources."got-7.1.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-3.0.0"
       sources."has-flag-3.0.0"
       sources."has-symbol-support-x-1.4.2"
@@ -39929,7 +40193,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       (sources."string-width-2.1.1" // {
         dependencies = [
           sources."strip-ansi-4.0.0"
@@ -39973,17 +40237,17 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "5.7.0";
+    version = "5.8.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-5.7.0.tgz";
-      sha512 = "zYCeFQahsxffGl87U2aJ7DPyH8CbWgxBC213Y8+TCanhUTf2gEvfq3EKpHmEcozTLyPmGe9LZdMAwC/CpJBM5A==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-5.8.0.tgz";
+      sha512 = "Zok6Bru3y2JprqTNm14mgQ15YQu/SMDkWdnmHfFg770DIUlmMFd/gqqzCHekxzjHZJxXv3tmTpH0C1icaYJsRQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.0.0"
       sources."@babel/highlight-7.0.0"
-      sources."acorn-5.7.3"
-      sources."acorn-jsx-4.1.1"
-      sources."ajv-6.5.4"
+      sources."acorn-6.0.4"
+      sources."acorn-jsx-5.0.0"
+      sources."ajv-6.5.5"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
@@ -40012,7 +40276,7 @@ in
       sources."eslint-scope-4.0.0"
       sources."eslint-utils-1.3.1"
       sources."eslint-visitor-keys-1.0.0"
-      sources."espree-4.0.0"
+      sources."espree-4.1.0"
       sources."esprima-4.0.1"
       sources."esquery-1.0.1"
       sources."esrecurse-4.2.1"
@@ -40030,7 +40294,7 @@ in
       sources."glob-7.1.3"
       sources."globals-11.8.0"
       sources."globby-5.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
@@ -40072,7 +40336,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pluralize-7.0.0"
       sources."prelude-ls-1.1.2"
-      sources."progress-2.0.0"
+      sources."progress-2.0.1"
       sources."punycode-2.1.1"
       sources."regexpp-2.0.1"
       sources."require-uncached-1.0.3"
@@ -40124,9 +40388,9 @@ in
     dependencies = [
       sources."@babel/code-frame-7.0.0"
       sources."@babel/highlight-7.0.0"
-      sources."acorn-5.7.3"
-      sources."acorn-jsx-4.1.1"
-      sources."ajv-6.5.4"
+      sources."acorn-6.0.4"
+      sources."acorn-jsx-5.0.0"
+      sources."ajv-6.5.5"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
@@ -40152,11 +40416,11 @@ in
       sources."del-2.2.2"
       sources."doctrine-2.1.0"
       sources."escape-string-regexp-1.0.5"
-      sources."eslint-5.7.0"
+      sources."eslint-5.8.0"
       sources."eslint-scope-4.0.0"
       sources."eslint-utils-1.3.1"
       sources."eslint-visitor-keys-1.0.0"
-      sources."espree-4.0.0"
+      sources."espree-4.1.0"
       sources."esprima-4.0.1"
       sources."esquery-1.0.1"
       sources."esrecurse-4.2.1"
@@ -40174,7 +40438,7 @@ in
       sources."glob-7.1.3"
       sources."globals-11.8.0"
       sources."globby-5.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
@@ -40218,7 +40482,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pluralize-7.0.0"
       sources."prelude-ls-1.1.2"
-      sources."progress-2.0.0"
+      sources."progress-2.0.1"
       sources."punycode-2.1.1"
       sources."regexpp-2.0.1"
       sources."require-uncached-1.0.3"
@@ -40328,15 +40592,11 @@ in
       sources."fd-slicer-1.0.1"
       sources."find-up-1.1.2"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-extra-1.0.0"
       sources."get-stdin-4.0.1"
       sources."getpass-0.1.7"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-ansi-2.0.0"
@@ -40375,8 +40635,8 @@ in
       sources."loud-rejection-1.6.0"
       sources."map-obj-1.0.1"
       sources."meow-3.7.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -40433,8 +40693,8 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
-      sources."sshpk-1.15.1"
+      sources."spdx-license-ids-3.0.2"
+      sources."sshpk-1.15.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
       sources."strip-bom-2.0.0"
@@ -40604,7 +40864,7 @@ in
       sources."glob-7.1.3"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."has-value-1.0.0" // {
         dependencies = [
           sources."isobject-3.0.1"
@@ -40737,7 +40997,7 @@ in
       sources."process-nextick-args-2.0.0"
       sources."prompt-0.2.14"
       sources."ps-tree-0.0.3"
-      (sources."randomatic-3.1.0" // {
+      (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
           sources."kind-of-6.0.2"
@@ -40923,7 +41183,7 @@ in
       sources."microee-0.0.6"
       sources."minilog-3.1.0"
       sources."ms-2.1.1"
-      sources."simple-git-1.105.0"
+      sources."simple-git-1.107.0"
       sources."tabtab-git+https://github.com/mixu/node-tabtab.git"
     ];
     buildInputs = globalBuildInputs;
@@ -40947,9 +41207,11 @@ in
       sources."asyncmemo-1.0.0"
       sources."chloride-2.2.10"
       sources."chloride-test-1.2.2"
+      sources."colors-0.5.1"
       sources."deep-equal-1.0.1"
       sources."deep-extend-0.6.0"
       sources."diff-3.5.0"
+      sources."discontinuous-range-1.0.0"
       sources."ed2curve-0.1.4"
       sources."emoji-named-characters-1.0.2"
       sources."explain-error-1.0.4"
@@ -40959,12 +41221,13 @@ in
       sources."git-remote-ssb-2.0.4"
       sources."git-ssb-web-2.8.0"
       sources."hashlru-2.2.1"
-      sources."highlight.js-9.13.0"
+      sources."highlight.js-9.13.1"
       sources."increment-buffer-1.0.1"
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."ip-1.1.5"
-      sources."is-electron-2.1.0"
+      sources."is-canonical-base64-1.1.1"
+      sources."is-electron-2.2.0"
       sources."is-my-ip-valid-1.0.0"
       sources."is-my-json-valid-2.19.0"
       sources."is-property-1.0.2"
@@ -40977,8 +41240,8 @@ in
       sources."libsodium-wrappers-0.7.3"
       sources."looper-4.0.0"
       sources."lrucache-1.0.3"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
         dependencies = [
@@ -40986,12 +41249,16 @@ in
         ];
       })
       sources."moment-2.22.2"
+      sources."moo-0.4.3"
       sources."multicb-1.2.2"
-      sources."multiserver-1.13.5"
+      sources."multiserver-1.13.7"
+      sources."multiserver-address-1.0.1"
       sources."muxrpc-6.4.1"
       sources."nan-2.11.1"
+      sources."nearley-2.15.1"
       sources."node-gyp-build-3.5.0"
       sources."node-polyglot-1.0.0"
+      sources."nomnom-1.6.2"
       sources."non-private-ip-1.4.4"
       sources."options-0.0.6"
       sources."os-homedir-1.0.2"
@@ -41044,9 +41311,12 @@ in
         ];
       })
       sources."pull-ws-3.3.1"
+      sources."railroad-diagrams-1.0.0"
+      sources."randexp-0.4.6"
       sources."rc-1.2.8"
       sources."relative-url-1.0.2"
       sources."remove-markdown-0.1.0"
+      sources."ret-0.1.15"
       sources."safe-buffer-5.1.2"
       sources."secret-handshake-1.1.14"
       sources."semver-5.6.0"
@@ -41065,7 +41335,7 @@ in
       sources."split-buffer-1.0.0"
       sources."ssb-avatar-0.2.0"
       sources."ssb-client-4.6.0"
-      sources."ssb-config-2.3.5"
+      sources."ssb-config-2.3.7"
       sources."ssb-git-0.5.0"
       sources."ssb-git-repo-2.8.3"
       sources."ssb-issues-1.0.0"
@@ -41083,7 +41353,7 @@ in
       })
       sources."ssb-msgs-5.2.0"
       sources."ssb-pull-requests-1.0.0"
-      sources."ssb-ref-2.12.0"
+      sources."ssb-ref-2.13.6"
       (sources."stream-to-pull-stream-1.7.2" // {
         dependencies = [
           sources."looper-3.0.0"
@@ -41094,6 +41364,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."tweetnacl-auth-0.3.1"
       sources."ultron-1.0.2"
+      sources."underscore-1.4.4"
       sources."ws-1.1.5"
       sources."xtend-4.0.1"
     ];
@@ -41126,10 +41397,10 @@ in
   graphql-cli = nodeEnv.buildNodePackage {
     name = "graphql-cli";
     packageName = "graphql-cli";
-    version = "2.16.7";
+    version = "2.17.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/graphql-cli/-/graphql-cli-2.16.7.tgz";
-      sha512 = "I1kkJ9mqgctjOHDTo3bg7CLpZDeuLrOhKeNmohWhka2bWb0jf5T9IspHLDDTIEsOB56KEnvW2fUwRsTFHJK2HQ==";
+      url = "https://registry.npmjs.org/graphql-cli/-/graphql-cli-2.17.0.tgz";
+      sha512 = "K82gG79pA3G8GzMeqFq5+kkdZi7K6UWlvmrWLuGaIvo8F1wdHAKDvfexjRGb5CPisqAJqQqbsGsfrg7If488kA==";
     };
     dependencies = [
       sources."@babel/generator-7.0.0-beta.38"
@@ -41224,11 +41495,7 @@ in
       sources."cookie-signature-1.0.6"
       sources."core-js-2.5.7"
       sources."core-util-is-1.0.2"
-      (sources."cosmiconfig-3.1.0" // {
-        dependencies = [
-          sources."parse-json-3.0.0"
-        ];
-      })
+      sources."cosmiconfig-3.1.0"
       sources."create-error-class-3.0.2"
       (sources."cross-fetch-2.2.2" // {
         dependencies = [
@@ -41299,11 +41566,7 @@ in
       sources."find-0.2.9"
       sources."find-up-2.1.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."format-util-1.0.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
@@ -41317,7 +41580,7 @@ in
       sources."global-modules-1.0.0"
       sources."global-prefix-1.0.2"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graphcool-json-schema-1.2.1"
       (sources."graphcool-yml-0.4.15" // {
         dependencies = [
@@ -41338,17 +41601,16 @@ in
           sources."lodash-4.17.5"
         ];
       })
-      sources."graphql-config-2.0.1"
-      sources."graphql-config-extension-graphcool-1.0.8"
-      sources."graphql-config-extension-openapi-1.0.6"
-      sources."graphql-config-extension-prisma-0.2.1"
-      sources."graphql-import-0.4.5"
-      (sources."graphql-playground-html-1.5.5" // {
+      (sources."graphql-config-2.2.1" // {
         dependencies = [
-          sources."graphql-config-2.0.0"
+          sources."graphql-import-0.7.1"
         ];
       })
-      sources."graphql-playground-middleware-express-1.6.2"
+      sources."graphql-config-extension-graphcool-1.0.11"
+      sources."graphql-config-extension-prisma-0.2.5"
+      sources."graphql-import-0.4.5"
+      sources."graphql-playground-html-1.6.4"
+      sources."graphql-playground-middleware-express-1.7.6"
       sources."graphql-request-1.8.2"
       sources."graphql-schema-linter-0.1.1"
       sources."graphql-static-binding-0.9.3"
@@ -41436,7 +41698,11 @@ in
       sources."jws-3.1.5"
       sources."latest-version-3.1.0"
       sources."lcid-1.0.0"
-      sources."load-json-file-2.0.0"
+      (sources."load-json-file-2.0.0" // {
+        dependencies = [
+          sources."parse-json-2.2.0"
+        ];
+      })
       sources."locate-path-2.0.0"
       sources."lodash-4.17.11"
       sources."lodash.get-4.4.2"
@@ -41463,8 +41729,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -41474,8 +41740,8 @@ in
       sources."negotiator-0.6.1"
       sources."nice-try-1.0.5"
       sources."no-case-2.3.2"
-      sources."node-fetch-2.2.0"
-      sources."node-request-by-swagger-1.1.3"
+      sources."node-fetch-2.2.1"
+      sources."node-request-by-swagger-1.1.4"
       sources."normalize-package-data-2.4.0"
       sources."npm-path-2.0.4"
       sources."npm-paths-1.0.0"
@@ -41505,7 +41771,7 @@ in
       sources."package-json-4.0.1"
       sources."param-case-2.1.1"
       sources."parse-github-url-1.0.2"
-      sources."parse-json-2.2.0"
+      sources."parse-json-3.0.0"
       sources."parse-passwd-1.0.0"
       sources."parseurl-1.3.2"
       sources."pascal-case-2.0.1"
@@ -41519,11 +41785,12 @@ in
       sources."performance-now-2.1.0"
       sources."pify-2.3.0"
       sources."prepend-http-1.0.4"
-      sources."prisma-json-schema-0.1.1"
-      (sources."prisma-yml-1.0.93" // {
+      sources."prisma-json-schema-0.1.3"
+      (sources."prisma-yml-1.20.0-beta.18" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."dotenv-4.0.0"
+          sources."fs-extra-7.0.0"
           sources."ms-2.1.1"
         ];
       })
@@ -41564,6 +41831,7 @@ in
       sources."require-from-string-2.0.2"
       sources."require-main-filename-1.0.1"
       sources."resolve-dir-1.0.1"
+      sources."resolve-from-4.0.0"
       sources."restore-cursor-2.0.0"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
@@ -41593,9 +41861,9 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."statuses-1.4.0"
       sources."stealthy-require-1.1.1"
       (sources."string-width-2.1.1" // {
@@ -41618,6 +41886,7 @@ in
       sources."timed-out-4.0.1"
       sources."title-case-2.1.1"
       sources."tmp-0.0.33"
+      sources."tmp-graphql-config-extension-openapi-1.0.7"
       sources."to-fast-properties-2.0.0"
       sources."tough-cookie-2.4.3"
       sources."traverse-chain-0.1.0"
@@ -41646,7 +41915,7 @@ in
       sources."whatwg-fetch-2.0.4"
       sources."which-1.3.1"
       sources."which-module-2.0.0"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
@@ -41681,10 +41950,10 @@ in
   grunt-cli = nodeEnv.buildNodePackage {
     name = "grunt-cli";
     packageName = "grunt-cli";
-    version = "1.3.1";
+    version = "1.3.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.1.tgz";
-      sha512 = "UwBRu/QpAjDc53DRLEkyilFdL0zenpxu+fddTIlsF/KJqdNcHaQmvyu1W3cDesZ9rqqZdKK5A8+QDIyLUEWoZQ==";
+      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz";
+      sha512 = "8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -41936,7 +42205,7 @@ in
       })
       sources."urix-0.1.0"
       sources."use-3.1.1"
-      sources."v8flags-3.0.2"
+      sources."v8flags-3.1.1"
       sources."which-1.3.1"
     ];
     buildInputs = globalBuildInputs;
@@ -42536,7 +42805,7 @@ in
       sources."global-modules-1.0.0"
       sources."global-prefix-1.0.2"
       sources."glogg-1.0.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."gulplog-1.0.0"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
@@ -42703,7 +42972,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."split-string-3.1.0"
       sources."stack-trace-0.0.10"
       (sources."static-extend-0.1.2" // {
@@ -42868,7 +43137,7 @@ in
       (sources."dom-serializer-0.1.0" // {
         dependencies = [
           sources."domelementtype-1.1.3"
-          sources."entities-1.1.1"
+          sources."entities-1.1.2"
         ];
       })
       sources."domelementtype-1.3.0"
@@ -42905,11 +43174,7 @@ in
       sources."for-in-1.0.2"
       sources."for-own-1.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-extra-1.0.0"
       sources."fs.realpath-1.0.0"
       (sources."ftp-0.3.10" // {
@@ -42927,7 +43192,7 @@ in
       sources."glob-7.1.3"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graphlib-2.1.5"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
@@ -43020,8 +43285,8 @@ in
       sources."lru-cache-4.1.3"
       sources."macos-release-1.1.0"
       sources."make-dir-1.3.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -43112,22 +43377,22 @@ in
       sources."shelljs-0.3.0"
       sources."signal-exit-3.0.2"
       sources."smart-buffer-1.1.15"
-      sources."snyk-1.103.4"
+      sources."snyk-1.108.0"
       sources."snyk-config-2.2.0"
-      sources."snyk-docker-plugin-1.12.0"
-      sources."snyk-go-plugin-1.5.2"
+      sources."snyk-docker-plugin-1.12.1"
+      sources."snyk-go-plugin-1.6.0"
       sources."snyk-gradle-plugin-2.1.0"
-      sources."snyk-module-1.8.2"
+      sources."snyk-module-1.9.1"
       sources."snyk-mvn-plugin-2.0.0"
-      (sources."snyk-nodejs-lockfile-parser-1.5.3" // {
+      (sources."snyk-nodejs-lockfile-parser-1.7.0" // {
         dependencies = [
           sources."lodash-4.17.10"
         ];
       })
       sources."snyk-nuget-plugin-1.6.5"
       sources."snyk-php-plugin-1.5.1"
-      sources."snyk-policy-1.12.0"
-      sources."snyk-python-plugin-1.8.2"
+      sources."snyk-policy-1.13.1"
+      sources."snyk-python-plugin-1.9.0"
       sources."snyk-resolve-1.0.1"
       sources."snyk-resolve-deps-4.0.2"
       sources."snyk-sbt-plugin-2.0.0"
@@ -43139,7 +43404,7 @@ in
       sources."source-map-support-0.5.9"
       sources."split-1.0.1"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stack-trace-0.0.10"
       sources."statuses-1.5.0"
       sources."string-width-2.1.1"
@@ -43223,16 +43488,16 @@ in
   html-minifier = nodeEnv.buildNodePackage {
     name = "html-minifier";
     packageName = "html-minifier";
-    version = "3.5.20";
+    version = "3.5.21";
     src = fetchurl {
-      url = "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.20.tgz";
-      sha512 = "ZmgNLaTp54+HFKkONyLFEfs5dd/ZOtlquKaTnqIWFmx3Av5zG6ZPcV2d0o9XM2fXOTxxIf6eDcwzFFotke/5zA==";
+      url = "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz";
+      sha512 = "LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==";
     };
     dependencies = [
       sources."camel-case-3.0.0"
       sources."clean-css-4.2.1"
       sources."commander-2.17.1"
-      sources."he-1.1.1"
+      sources."he-1.2.0"
       sources."lower-case-1.1.4"
       sources."no-case-2.3.2"
       sources."param-case-2.1.1"
@@ -43282,7 +43547,7 @@ in
           sources."minimist-0.0.10"
         ];
       })
-      (sources."portfinder-1.0.17" // {
+      (sources."portfinder-1.0.19" // {
         dependencies = [
           sources."debug-2.6.9"
         ];
@@ -43305,22 +43570,23 @@ in
   ionic = nodeEnv.buildNodePackage {
     name = "ionic";
     packageName = "ionic";
-    version = "4.2.1";
+    version = "4.3.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ionic/-/ionic-4.2.1.tgz";
-      sha512 = "4QwbtBxHYTaa/wxlYx+iXdSALs8aoEAw8poR24tTUtJRd0aKoAJM4K815DuNKLUFdgn3v0pTixdTTPLH8CADxw==";
+      url = "https://registry.npmjs.org/ionic/-/ionic-4.3.1.tgz";
+      sha512 = "zPMaUqiQTrDtZRjwaes0EUbqge+3CaUZRPPbusp7xCRCaT9H81ybhgVKNDzhWUvtWYPurarm4kIRPptoTv3LFA==";
     };
     dependencies = [
-      sources."@ionic/cli-framework-1.1.1"
-      sources."@ionic/discover-1.0.6"
-      sources."@ionic/utils-fs-0.0.3"
-      sources."@ionic/utils-network-0.0.3"
+      sources."@ionic/cli-framework-1.3.0"
+      sources."@ionic/discover-1.0.7"
+      sources."@ionic/utils-fs-0.0.4"
+      sources."@ionic/utils-network-0.0.4"
       sources."agent-base-4.2.1"
       sources."ansi-align-2.0.0"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
       sources."ast-types-0.11.6"
+      sources."astral-regex-1.0.0"
       sources."async-limiter-1.0.0"
       sources."asynckit-0.4.0"
       sources."balanced-match-1.0.0"
@@ -43339,7 +43605,7 @@ in
       sources."co-4.6.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."component-emitter-1.2.1"
       sources."concat-map-0.0.1"
       sources."configstore-3.1.2"
@@ -43373,7 +43639,7 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."figures-2.0.0"
       sources."file-uri-to-path-1.0.0"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."formidable-1.2.1"
       sources."fs-minipass-1.2.5"
       sources."fs.realpath-1.0.0"
@@ -43394,7 +43660,7 @@ in
       sources."glob-7.1.3"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."http-errors-1.6.3"
       (sources."http-proxy-agent-2.1.0" // {
@@ -43453,18 +43719,24 @@ in
       sources."lodash.isarray-3.0.4"
       sources."lodash.keys-3.1.2"
       sources."lodash.restparam-3.6.1"
+      (sources."log-update-2.3.0" // {
+        dependencies = [
+          sources."strip-ansi-4.0.0"
+          sources."wrap-ansi-3.0.1"
+        ];
+      })
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-4.1.3"
       sources."macos-release-1.1.0"
       sources."make-dir-1.3.0"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
-      (sources."minipass-2.3.4" // {
+      (sources."minipass-2.3.5" // {
         dependencies = [
           sources."yallist-3.0.2"
         ];
@@ -43532,7 +43804,7 @@ in
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."signal-exit-3.0.2"
-      sources."slice-ansi-1.0.0"
+      sources."slice-ansi-2.0.0"
       sources."smart-buffer-4.0.1"
       sources."socks-2.2.1"
       sources."socks-proxy-agent-4.0.1"
@@ -43565,7 +43837,7 @@ in
         ];
       })
       sources."supports-color-5.5.0"
-      (sources."tar-4.4.6" // {
+      (sources."tar-4.4.7" // {
         dependencies = [
           sources."yallist-3.0.2"
         ];
@@ -43588,7 +43860,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."uuid-3.3.2"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."win-release-1.1.1"
       sources."wordwrap-1.0.0"
       (sources."wrap-ansi-4.0.0" // {
@@ -43616,10 +43888,10 @@ in
   ios-deploy = nodeEnv.buildNodePackage {
     name = "ios-deploy";
     packageName = "ios-deploy";
-    version = "1.9.3";
+    version = "1.9.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ios-deploy/-/ios-deploy-1.9.3.tgz";
-      sha512 = "i/8DxXzcL2feqqL6DjUfjqUHyWVmHYNkzZFTyf6yoC4glrI3jQ+8Hhg63vzw/5OoFXN7OyXqjkshAj9c1EsVSw==";
+      url = "https://registry.npmjs.org/ios-deploy/-/ios-deploy-1.9.4.tgz";
+      sha512 = "pgyc19zgtwGrfx3GL8yV0c0dAPucTpJ0VZkuS3DcqxIZYC48+UW+tBTxI43u1ZDk17mop0ABLs1SkAy5SUQ6pQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -43776,10 +44048,10 @@ in
   jake = nodeEnv.buildNodePackage {
     name = "jake";
     packageName = "jake";
-    version = "8.0.18";
+    version = "8.0.19";
     src = fetchurl {
-      url = "https://registry.npmjs.org/jake/-/jake-8.0.18.tgz";
-      sha512 = "KSF3QH/uNR7pKcWgBuS7U1nYoYdcqitLEB86nvIcYztiiDsePkn2/JoSutiKP77O1MTNlbhTiNHorIrlpyy4sA==";
+      url = "https://registry.npmjs.org/jake/-/jake-8.0.19.tgz";
+      sha512 = "iilJduYCUwxRqH3fJ3b4cP5rqeh43pGM8OS62LDwoKCRoeYAj4t/KJAtBJ4jcsVKEOPJ1jNg4o1sKibk3ZnVUw==";
     };
     dependencies = [
       sources."ansi-styles-1.0.0"
@@ -43904,7 +44176,7 @@ in
       })
       sources."glob-7.1.3"
       sources."global-dirs-0.1.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."hosted-git-info-2.7.1"
       sources."indent-string-3.2.0"
@@ -44002,7 +44274,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."split2-2.2.0"
       sources."sprintf-js-1.0.3"
       sources."string-similarity-1.2.2"
@@ -44081,7 +44353,7 @@ in
       sources."bluebird-3.5.2"
       sources."catharsis-0.8.9"
       sources."escape-string-regexp-1.0.5"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."js2xmlparser-3.0.0"
       sources."klaw-2.0.0"
       sources."marked-0.3.19"
@@ -44154,7 +44426,7 @@ in
       (sources."dom-serializer-0.1.0" // {
         dependencies = [
           sources."domelementtype-1.1.3"
-          sources."entities-1.1.1"
+          sources."entities-1.1.2"
         ];
       })
       sources."domelementtype-1.3.0"
@@ -44172,16 +44444,12 @@ in
       sources."fast-json-stable-stringify-2.0.0"
       sources."fd-slicer-1.0.1"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-extra-1.0.0"
       sources."fs.realpath-1.0.0"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."hasha-2.2.0"
@@ -44203,8 +44471,8 @@ in
       sources."kew-0.7.0"
       sources."klaw-1.3.1"
       sources."lodash-4.17.11"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -44230,7 +44498,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."shelljs-0.3.0"
       sources."split-1.0.1"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stack-trace-0.0.10"
       sources."string_decoder-0.10.31"
       sources."strip-json-comments-1.0.4"
@@ -44277,13 +44545,13 @@ in
   js-beautify = nodeEnv.buildNodePackage {
     name = "js-beautify";
     packageName = "js-beautify";
-    version = "1.8.7";
+    version = "1.8.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.8.7.tgz";
-      sha512 = "yhAMCTv0L9GNg6Gql7i+g4C1z9rQhfHXy4J0TGYFoBzzHR4reWYS573gkRrPuE58dYOH451LmBeAb8L1pLEfdA==";
+      url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.8.8.tgz";
+      sha512 = "qVNq7ZZ7ZbLdzorvSlRDadS0Rh5oyItaE95v6I4wbbuSiijxn7SnnsV6dvKlcXuO2jX7lK8tn9fBulx34K/Ejg==";
     };
     dependencies = [
-      sources."@types/node-10.11.7"
+      sources."@types/node-10.12.2"
       sources."@types/semver-5.5.0"
       sources."abbrev-1.1.1"
       sources."commander-2.19.0"
@@ -44388,7 +44656,7 @@ in
     dependencies = [
       sources."argparse-1.0.10"
       sources."asynckit-0.4.0"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."commander-2.11.0"
       sources."component-emitter-1.2.1"
       sources."cookiejar-2.1.2"
@@ -44397,7 +44665,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."esprima-4.0.1"
       sources."extend-3.0.2"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."formidable-1.2.1"
       sources."graphlib-2.1.5"
       sources."inherits-2.0.3"
@@ -44406,8 +44674,8 @@ in
       sources."lodash-4.17.11"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."ms-2.1.1"
       sources."native-promise-only-0.8.1"
       sources."path-loader-1.0.9"
@@ -44478,7 +44746,7 @@ in
       sources."cookie-0.3.1"
       sources."cookie-signature-1.0.6"
       sources."core-util-is-1.0.2"
-      sources."cors-2.8.4"
+      sources."cors-2.8.5"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-5.1.0"
       sources."crypto-random-string-1.0.0"
@@ -44520,11 +44788,7 @@ in
       })
       sources."find-up-2.1.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."get-caller-file-1.0.3"
@@ -44532,7 +44796,7 @@ in
       sources."getpass-0.1.7"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-flag-3.0.0"
@@ -44581,13 +44845,13 @@ in
       sources."method-override-2.3.10"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       sources."morgan-1.9.1"
       sources."ms-2.0.0"
-      sources."nanoid-1.3.0"
+      sources."nanoid-1.3.4"
       sources."negotiator-0.6.1"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
@@ -44641,7 +44905,7 @@ in
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."signal-exit-3.0.2"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."statuses-1.5.0"
       sources."steno-0.4.4"
       sources."string-width-2.1.1"
@@ -44666,7 +44930,7 @@ in
       sources."verror-1.10.0"
       sources."which-1.3.1"
       sources."which-module-2.0.0"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
@@ -44716,10 +44980,10 @@ in
   karma = nodeEnv.buildNodePackage {
     name = "karma";
     packageName = "karma";
-    version = "3.0.0";
+    version = "3.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/karma/-/karma-3.0.0.tgz";
-      sha512 = "ZTjyuDXVXhXsvJ1E4CnZzbCjSxD6sEdzEsFYogLuZM0yqvg/mgz+O+R1jb0J7uAQeuzdY8kJgx6hSNXLwFuHIQ==";
+      url = "https://registry.npmjs.org/karma/-/karma-3.1.1.tgz";
+      sha512 = "NetT3wPCQMNB36uiL9LLyhrOt8SQwrEKt0xD3+KpTCfm0VxVyUJdPL5oTq2Ic5ouemgL/Iz4wqXEbF3zea9kQQ==";
     };
     dependencies = [
       sources."accepts-1.3.5"
@@ -44746,7 +45010,7 @@ in
       sources."base64id-1.0.0"
       sources."better-assert-1.0.2"
       sources."binary-extensions-1.12.0"
-      sources."blob-0.0.4"
+      sources."blob-0.0.5"
       sources."bluebird-3.5.2"
       sources."body-parser-1.18.3"
       sources."brace-expansion-1.1.11"
@@ -44763,7 +45027,7 @@ in
       sources."cache-base-1.0.1"
       sources."callsite-1.0.0"
       sources."chokidar-2.0.4"
-      sources."circular-json-0.5.7"
+      sources."circular-json-0.5.9"
       (sources."class-utils-0.3.6" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -44804,7 +45068,7 @@ in
       sources."dom-serialize-2.2.1"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
-      (sources."engine.io-3.2.0" // {
+      (sources."engine.io-3.2.1" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -44814,7 +45078,7 @@ in
           sources."debug-3.1.0"
         ];
       })
-      sources."engine.io-parser-2.1.2"
+      sources."engine.io-parser-2.1.3"
       sources."ent-2.2.0"
       sources."escape-html-1.0.3"
       sources."eventemitter3-3.1.0"
@@ -44885,7 +45149,7 @@ in
           sources."is-glob-3.1.0"
         ];
       })
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."has-binary2-1.0.3" // {
         dependencies = [
           sources."isarray-2.0.1"
@@ -44937,8 +45201,8 @@ in
       sources."media-typer-0.3.0"
       sources."micromatch-3.1.10"
       sources."mime-2.3.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mixin-deep-1.3.1"
@@ -45198,8 +45462,8 @@ in
       })
       sources."methods-1.1.2"
       sources."mime-1.3.4"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."morgan-1.6.1"
@@ -45317,7 +45581,7 @@ in
       sources."glob-7.1.3"
       sources."glob-parent-3.1.0"
       sources."glob-stream-6.1.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-symbols-1.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
@@ -45383,10 +45647,10 @@ in
   leetcode-cli = nodeEnv.buildNodePackage {
     name = "leetcode-cli";
     packageName = "leetcode-cli";
-    version = "2.5.2";
+    version = "2.5.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/leetcode-cli/-/leetcode-cli-2.5.2.tgz";
-      sha512 = "KneaqL2/SAfJQpxR1yheLrnB10f8vwJJbVBA4vxtRl6aENbO+JKsJSgE1cZvO/4isD+MPI7C5HPjJbL5+MOmnw==";
+      url = "https://registry.npmjs.org/leetcode-cli/-/leetcode-cli-2.5.3.tgz";
+      sha512 = "FlV2bYtdELx6NPSyd+ZfiQ9LKpjNr/UZ3orAhwx2Llg361QvS03XIxFFAi/RuvMKDi01zvHfRzsONPJt4hRXlQ==";
     };
     dependencies = [
       sources."abab-1.0.4"
@@ -45427,13 +45691,13 @@ in
       sources."concat-map-0.0.1"
       sources."core-util-is-1.0.2"
       sources."cross-spawn-5.1.0"
-      (sources."cryptiles-3.1.2" // {
+      (sources."cryptiles-3.1.4" // {
         dependencies = [
           sources."boom-5.2.0"
         ];
       })
       sources."css-select-1.2.0"
-      sources."css-what-2.1.0"
+      sources."css-what-2.1.2"
       sources."cssom-0.3.4"
       sources."cssstyle-0.2.37"
       sources."cycle-1.0.3"
@@ -45451,7 +45715,7 @@ in
       sources."domhandler-2.3.0"
       sources."domutils-1.5.1"
       sources."ecc-jsbn-0.1.2"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.11.0"
       sources."esprima-3.1.3"
@@ -45466,11 +45730,7 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."find-up-2.1.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
@@ -45512,8 +45772,8 @@ in
       sources."log-symbols-2.2.0"
       sources."lru-cache-4.1.3"
       sources."mem-1.1.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -45527,7 +45787,7 @@ in
       })
       sources."ncp-1.0.1"
       sources."npm-run-path-2.0.2"
-      sources."nth-check-1.0.1"
+      sources."nth-check-1.0.2"
       sources."number-is-nan-1.0.1"
       sources."nwmatcher-1.4.4"
       sources."oauth-sign-0.8.2"
@@ -45575,7 +45835,7 @@ in
       sources."sntp-2.1.0"
       sources."source-map-0.6.1"
       sources."sprintf-js-1.1.1"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stack-trace-0.0.10"
       sources."string-width-1.0.2"
       sources."string_decoder-0.10.31"
@@ -45701,11 +45961,11 @@ in
       sources."@lerna/version-3.4.1"
       sources."@lerna/write-log-file-3.0.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
-      sources."@nodelib/fs.stat-1.1.2"
+      sources."@nodelib/fs.stat-1.1.3"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."agent-base-4.2.1"
-      sources."agentkeepalive-3.5.1"
+      sources."agentkeepalive-3.5.2"
       sources."ajv-5.5.2"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-2.1.1"
@@ -45751,8 +46011,8 @@ in
       sources."builtin-modules-1.1.1"
       sources."builtins-1.0.3"
       sources."byline-5.0.0"
-      sources."byte-size-4.0.3"
-      sources."cacache-11.2.0"
+      sources."byte-size-4.0.4"
+      sources."cacache-11.3.1"
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
@@ -45807,22 +46067,13 @@ in
       sources."concat-stream-1.6.2"
       sources."config-chain-1.1.12"
       sources."console-control-strings-1.1.0"
-      sources."conventional-changelog-angular-5.0.1"
-      (sources."conventional-changelog-core-3.1.0" // {
-        dependencies = [
-          sources."load-json-file-1.1.0"
-          sources."parse-json-2.2.0"
-          sources."path-type-1.1.0"
-          sources."pify-2.3.0"
-          sources."read-pkg-1.1.0"
-          sources."strip-bom-2.0.0"
-        ];
-      })
-      sources."conventional-changelog-preset-loader-2.0.1"
-      sources."conventional-changelog-writer-4.0.0"
-      sources."conventional-commits-filter-2.0.0"
-      sources."conventional-commits-parser-3.0.0"
-      sources."conventional-recommended-bump-4.0.1"
+      sources."conventional-changelog-angular-5.0.2"
+      sources."conventional-changelog-core-3.1.5"
+      sources."conventional-changelog-preset-loader-2.0.2"
+      sources."conventional-changelog-writer-4.0.2"
+      sources."conventional-commits-filter-2.0.1"
+      sources."conventional-commits-parser-3.0.1"
+      sources."conventional-recommended-bump-4.0.4"
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
@@ -45914,11 +46165,7 @@ in
       sources."flush-write-stream-1.0.3"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       sources."from2-2.3.0"
       sources."fs-extra-7.0.0"
@@ -45932,17 +46179,26 @@ in
           sources."string-width-1.0.2"
         ];
       })
-      sources."genfun-4.0.1"
+      sources."genfun-5.0.0"
       sources."get-caller-file-1.0.3"
       (sources."get-pkg-repo-1.4.0" // {
         dependencies = [
           sources."camelcase-2.1.1"
           sources."camelcase-keys-2.1.0"
           sources."decamelize-1.2.0"
+          sources."find-up-1.1.2"
           sources."indent-string-2.1.0"
+          sources."load-json-file-1.1.0"
           sources."map-obj-1.0.1"
           sources."meow-3.7.0"
+          sources."parse-json-2.2.0"
+          sources."path-exists-2.1.0"
+          sources."path-type-1.1.0"
+          sources."pify-2.3.0"
+          sources."read-pkg-1.1.0"
+          sources."read-pkg-up-1.0.1"
           sources."redent-1.0.0"
+          sources."strip-bom-2.0.0"
           sources."strip-indent-1.0.1"
           sources."trim-newlines-1.0.0"
         ];
@@ -45958,13 +46214,13 @@ in
           sources."pify-2.3.0"
         ];
       })
-      sources."git-semver-tags-2.0.0"
+      sources."git-semver-tags-2.0.2"
       sources."gitconfiglocal-1.0.0"
       sources."glob-7.1.3"
       sources."glob-parent-3.1.0"
       sources."glob-to-regexp-0.3.0"
       sources."globby-8.0.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."handlebars-4.0.12" // {
         dependencies = [
           sources."source-map-0.6.1"
@@ -46078,25 +46334,16 @@ in
       sources."map-obj-2.0.0"
       sources."map-visit-1.0.0"
       sources."mem-4.0.0"
-      (sources."meow-4.0.1" // {
-        dependencies = [
-          sources."find-up-2.1.0"
-          sources."locate-path-2.0.0"
-          sources."p-limit-1.3.0"
-          sources."p-locate-2.0.0"
-          sources."p-try-1.0.0"
-          sources."read-pkg-up-3.0.0"
-        ];
-      })
+      sources."meow-4.0.1"
       sources."merge2-1.2.3"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       sources."minimist-options-3.0.2"
-      (sources."minipass-2.3.4" // {
+      (sources."minipass-2.3.5" // {
         dependencies = [
           sources."yallist-3.0.2"
         ];
@@ -46133,7 +46380,7 @@ in
       sources."npm-lifecycle-2.1.0"
       sources."npm-package-arg-6.1.0"
       sources."npm-packlist-1.1.12"
-      sources."npm-pick-manifest-2.1.0"
+      sources."npm-pick-manifest-2.2.3"
       sources."npm-registry-fetch-3.8.0"
       sources."npm-run-path-2.0.2"
       sources."npmlog-4.1.2"
@@ -46182,11 +46429,7 @@ in
       sources."p-reduce-1.0.0"
       sources."p-try-2.0.0"
       sources."p-waterfall-1.0.0"
-      (sources."pacote-9.1.0" // {
-        dependencies = [
-          sources."get-stream-3.0.0"
-        ];
-      })
+      sources."pacote-9.2.3"
       sources."parallel-transform-1.1.0"
       sources."parse-github-repo-url-1.4.1"
       sources."parse-json-4.0.0"
@@ -46215,7 +46458,7 @@ in
       sources."promise-retry-1.1.1"
       sources."promzard-0.3.0"
       sources."proto-list-1.2.4"
-      sources."protoduck-5.0.0"
+      sources."protoduck-5.0.1"
       sources."pseudomap-1.0.2"
       sources."psl-1.1.29"
       sources."pump-3.0.0"
@@ -46233,16 +46476,13 @@ in
       sources."read-package-json-2.0.13"
       sources."read-package-tree-5.2.1"
       sources."read-pkg-3.0.0"
-      (sources."read-pkg-up-1.0.1" // {
+      (sources."read-pkg-up-3.0.0" // {
         dependencies = [
-          sources."find-up-1.1.2"
-          sources."load-json-file-1.1.0"
-          sources."parse-json-2.2.0"
-          sources."path-exists-2.1.0"
-          sources."path-type-1.1.0"
-          sources."pify-2.3.0"
-          sources."read-pkg-1.1.0"
-          sources."strip-bom-2.0.0"
+          sources."find-up-2.1.0"
+          sources."locate-path-2.0.0"
+          sources."p-limit-1.3.0"
+          sources."p-locate-2.0.0"
+          sources."p-try-1.0.0"
         ];
       })
       sources."readable-stream-2.3.6"
@@ -46322,12 +46562,12 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."split-1.0.1"
       sources."split-string-3.1.0"
       sources."split2-2.2.0"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."ssri-6.0.1"
       (sources."static-extend-0.1.2" // {
         dependencies = [
@@ -46361,7 +46601,7 @@ in
       sources."strip-indent-2.0.0"
       sources."strong-log-transformer-2.0.0"
       sources."supports-color-5.5.0"
-      (sources."tar-4.4.6" // {
+      (sources."tar-4.4.7" // {
         dependencies = [
           sources."yallist-3.0.2"
         ];
@@ -46488,13 +46728,9 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."getpass-0.1.7"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."http-signature-1.2.0"
@@ -46507,8 +46743,8 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."oauth-sign-0.9.0"
@@ -46522,7 +46758,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."source-map-0.6.1"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."tough-cookie-2.4.3"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
@@ -46627,7 +46863,7 @@ in
       })
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
-      sources."cors-2.8.4"
+      sources."cors-2.8.5"
       sources."debug-2.6.9"
       sources."decode-uri-component-0.2.0"
       (sources."define-property-2.0.2" // {
@@ -46669,7 +46905,7 @@ in
       sources."get-value-2.0.6"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."has-value-1.0.0" // {
         dependencies = [
           sources."isobject-3.0.1"
@@ -46691,7 +46927,7 @@ in
           sources."statuses-1.5.0"
         ];
       })
-      sources."http-parser-js-0.4.13"
+      sources."http-parser-js-0.5.0"
       sources."inherits-2.0.3"
       (sources."is-accessor-descriptor-1.0.0" // {
         dependencies = [
@@ -46734,8 +46970,8 @@ in
       sources."math-random-1.0.1"
       sources."micromatch-2.3.11"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       (sources."mixin-deep-1.3.1" // {
         dependencies = [
           sources."is-extendable-1.0.1"
@@ -46789,7 +47025,7 @@ in
       sources."preserve-0.2.0"
       sources."process-nextick-args-2.0.0"
       sources."proxy-middleware-0.15.0"
-      (sources."randomatic-3.1.0" // {
+      (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
           sources."kind-of-6.0.2"
@@ -47005,7 +47241,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."better-assert-1.0.2"
       sources."binary-extensions-1.12.0"
-      sources."blob-0.0.4"
+      sources."blob-0.0.5"
       sources."body-parser-1.18.3"
       sources."braces-1.8.5"
       sources."bytes-3.0.0"
@@ -47062,7 +47298,7 @@ in
       sources."ee-first-1.1.1"
       sources."emoji-regex-6.1.1"
       sources."encodeurl-1.0.2"
-      (sources."engine.io-3.2.0" // {
+      (sources."engine.io-3.2.1" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -47072,8 +47308,8 @@ in
           sources."debug-3.1.0"
         ];
       })
-      sources."engine.io-parser-2.1.2"
-      sources."entities-1.1.1"
+      sources."engine.io-parser-2.1.3"
+      sources."entities-1.1.2"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
       sources."expand-brackets-0.1.5"
@@ -47103,11 +47339,7 @@ in
       sources."for-in-1.0.2"
       sources."for-own-0.1.5"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
@@ -47117,7 +47349,7 @@ in
       sources."github-slugger-1.2.0"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       (sources."has-binary2-1.0.3" // {
@@ -47205,8 +47437,8 @@ in
       sources."methods-1.1.2"
       sources."micromatch-2.3.11"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-1.2.0"
       (sources."mixin-deep-1.3.1" // {
         dependencies = [
@@ -47266,7 +47498,7 @@ in
       sources."psl-1.1.29"
       sources."punycode-1.4.1"
       sources."qs-6.5.2"
-      (sources."randomatic-3.1.0" // {
+      (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
           sources."kind-of-6.0.2"
@@ -47396,7 +47628,7 @@ in
       sources."source-map-url-0.4.0"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -47773,15 +48005,11 @@ in
       sources."for-in-1.0.2"
       sources."for-own-1.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       (sources."fs-mkdirp-stream-1.0.0" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
           sources."readable-stream-2.3.6"
           sources."string_decoder-1.1.1"
           sources."through2-2.0.3"
@@ -47832,7 +48060,7 @@ in
       })
       (sources."gulp-sourcemaps-2.6.4" // {
         dependencies = [
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
           sources."readable-stream-2.3.6"
           sources."source-map-0.6.1"
           sources."string_decoder-1.1.1"
@@ -47846,7 +48074,7 @@ in
           sources."clone-stats-1.0.0"
           sources."glob-7.1.3"
           sources."glob-stream-6.1.0"
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
           sources."minimatch-3.0.4"
           sources."ordered-read-streams-1.0.1"
           sources."readable-stream-2.3.6"
@@ -47941,7 +48169,7 @@ in
       (sources."less-3.8.1" // {
         dependencies = [
           sources."clone-2.1.2"
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
           sources."source-map-0.6.1"
         ];
       })
@@ -47981,8 +48209,8 @@ in
       sources."memoizee-0.4.14"
       sources."micromatch-3.1.10"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-2.0.10"
       sources."minimist-1.2.0"
       (sources."mixin-deep-1.3.1" // {
@@ -48125,7 +48353,7 @@ in
       sources."source-map-url-0.4.0"
       sources."sparkles-1.0.1"
       sources."split-string-3.1.0"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -48179,7 +48407,7 @@ in
       sources."tough-cookie-2.4.3"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
-      sources."typescript-3.1.3"
+      sources."typescript-3.1.6"
       (sources."uglify-js-3.4.9" // {
         dependencies = [
           sources."source-map-0.6.1"
@@ -48222,7 +48450,7 @@ in
         dependencies = [
           sources."clone-2.1.2"
           sources."clone-stats-1.0.0"
-          sources."graceful-fs-4.1.11"
+          sources."graceful-fs-4.1.15"
           sources."vinyl-2.2.0"
         ];
       })
@@ -48297,7 +48525,7 @@ in
     dependencies = [
       sources."argparse-1.0.10"
       sources."asynckit-0.4.0"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."commander-2.19.0"
       sources."component-emitter-1.2.1"
       sources."cookiejar-2.1.2"
@@ -48306,7 +48534,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."esprima-4.0.1"
       sources."extend-3.0.2"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."formidable-1.2.1"
       sources."graphlib-2.1.5"
       sources."inherits-2.0.3"
@@ -48316,8 +48544,8 @@ in
       sources."lodash-4.17.11"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."ms-2.1.1"
       sources."native-promise-only-0.8.1"
       sources."path-loader-1.0.9"
@@ -48405,11 +48633,7 @@ in
       sources."findit-2.0.0"
       sources."foreachasync-3.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       (sources."fs-extra-0.6.4" // {
         dependencies = [
           sources."mkdirp-0.3.5"
@@ -48422,7 +48646,7 @@ in
       })
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-unicode-2.0.1"
@@ -48441,10 +48665,10 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.8"
-      sources."minipass-2.3.4"
+      sources."minipass-2.3.5"
       sources."minizlib-1.1.1"
       sources."mkdirp-0.5.1"
       sources."ncp-0.4.2"
@@ -48488,8 +48712,8 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
-      sources."sshpk-1.15.1"
+      sources."spdx-license-ids-3.0.2"
+      sources."sshpk-1.15.2"
       sources."ssri-5.3.0"
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
@@ -48559,17 +48783,13 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.11"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       sources."has-unicode-2.0.1"
@@ -48586,8 +48806,8 @@ in
       sources."json-schema-traverse-0.3.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -48614,7 +48834,7 @@ in
       sources."semver-5.3.0"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.2"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
@@ -48748,7 +48968,7 @@ in
         ];
       })
       sources."glob-5.0.15"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-1.0.5"
       sources."har-validator-4.2.1"
       sources."has-unicode-2.0.1"
@@ -48794,8 +49014,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -48873,8 +49093,8 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
-      (sources."sshpk-1.15.1" // {
+      sources."spdx-license-ids-3.0.2"
+      (sources."sshpk-1.15.2" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -48986,7 +49206,7 @@ in
       sources."isarray-1.0.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
-      sources."minipass-2.3.4"
+      sources."minipass-2.3.5"
       sources."minizlib-1.1.1"
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
@@ -49020,7 +49240,7 @@ in
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
-      sources."tar-4.4.6"
+      sources."tar-4.4.7"
       sources."util-deprecate-1.0.2"
       sources."wide-align-1.1.3"
       sources."wrappy-1.0.2"
@@ -49038,10 +49258,10 @@ in
   nodemon = nodeEnv.buildNodePackage {
     name = "nodemon";
     packageName = "nodemon";
-    version = "1.18.4";
+    version = "1.18.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.4.tgz";
-      sha512 = "hyK6vl65IPnky/ee+D3IWvVGgJa/m3No2/Xc/3wanS6Ce1MWjCzH6NnhPJ/vZM+6JFym16jtHx51lmCMB9HDtg==";
+      url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.6.tgz";
+      sha512 = "4pHQNYEZun+IkIC2jCaXEhkZnfA7rQe73i8RkdRyDJls/K+WxR7IpI5uNUsAvQ0zWvYcCDNGD+XVtw2ZG86/uQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -49168,7 +49388,7 @@ in
       })
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
@@ -49382,7 +49602,7 @@ in
       sources."use-3.1.1"
       sources."util-deprecate-1.0.2"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."write-file-atomic-2.3.0"
       sources."xdg-basedir-3.0.0"
       sources."yallist-2.1.2"
@@ -49399,18 +49619,18 @@ in
   node-red = nodeEnv.buildNodePackage {
     name = "node-red";
     packageName = "node-red";
-    version = "0.19.4";
+    version = "0.19.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-red/-/node-red-0.19.4.tgz";
-      sha512 = "BcFaU1bCAl0fsu6t3sSPXXPuvUiIKcHj3jrpV3zvVols+dp0zgM9xPX9N8D7978h402H8h2A+0DDQA1vENQIEA==";
+      url = "https://registry.npmjs.org/node-red/-/node-red-0.19.5.tgz";
+      sha512 = "Bwt5RYc77MqQjw9tSGFQHgfn6/3PTy0f9v4I4Nw4waJutGdxuAhdQJuPy6ouJpFt6CRI1ChmfJvC2ZBUMnaUCQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
       sources."accepts-1.3.5"
       sources."addressparser-0.3.2"
       sources."agent-base-4.2.1"
-      sources."ajv-6.5.3"
-      sources."append-field-0.1.0"
+      sources."ajv-6.5.4"
+      sources."append-field-1.0.0"
       sources."argparse-1.0.10"
       sources."array-flatten-1.1.1"
       sources."array-indexofobject-0.0.1"
@@ -49422,11 +49642,15 @@ in
       sources."aws-sign2-0.7.0"
       sources."aws4-1.8.0"
       sources."balanced-match-1.0.0"
-      sources."basic-auth-2.0.0"
+      sources."basic-auth-2.0.1"
       sources."bcrypt-2.0.1"
       sources."bcrypt-pbkdf-1.0.2"
       sources."bcryptjs-2.4.3"
-      sources."bl-1.2.2"
+      (sources."bl-1.2.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."body-parser-1.18.3"
       sources."boolbase-1.0.0"
       sources."brace-expansion-1.1.11"
@@ -49444,7 +49668,11 @@ in
         ];
       })
       sources."bytes-3.0.0"
-      sources."callback-stream-1.1.0"
+      (sources."callback-stream-1.1.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."caseless-0.12.0"
       sources."cheerio-0.22.0"
       sources."clone-2.1.2"
@@ -49453,7 +49681,11 @@ in
       sources."commander-2.17.1"
       sources."commist-1.0.0"
       sources."concat-map-0.0.1"
-      sources."concat-stream-1.6.2"
+      (sources."concat-stream-1.6.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."content-disposition-0.5.2"
       sources."content-type-1.0.4"
       sources."cookie-0.3.1"
@@ -49462,9 +49694,9 @@ in
       sources."core-util-is-1.0.2"
       sources."cors-2.8.4"
       sources."crc-3.4.4"
-      sources."cron-1.4.1"
+      sources."cron-1.5.0"
       sources."css-select-1.2.0"
-      sources."css-what-2.1.0"
+      sources."css-what-2.1.2"
       sources."d-1.0.0"
       sources."dashdash-1.14.1"
       sources."debug-2.6.9"
@@ -49487,13 +49719,17 @@ in
       sources."domelementtype-1.3.0"
       sources."domhandler-2.4.2"
       sources."domutils-1.5.1"
-      sources."duplexify-3.6.1"
+      (sources."duplexify-3.6.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
       sources."encoding-0.1.12"
       sources."end-of-stream-1.4.1"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."es5-ext-0.10.46"
       sources."es6-iterator-2.0.3"
       sources."es6-map-0.1.5"
@@ -49506,18 +49742,8 @@ in
       sources."esprima-4.0.1"
       sources."etag-1.8.1"
       sources."event-emitter-0.3.5"
-      (sources."express-4.16.3" // {
+      (sources."express-4.16.4" // {
         dependencies = [
-          sources."body-parser-1.18.2"
-          (sources."http-errors-1.6.2" // {
-            dependencies = [
-              sources."depd-1.1.1"
-              sources."setprototypeof-1.0.3"
-            ];
-          })
-          sources."iconv-lite-0.4.19"
-          sources."qs-6.5.1"
-          sources."raw-body-2.3.2"
           sources."statuses-1.4.0"
         ];
       })
@@ -49529,6 +49755,7 @@ in
       (sources."feedparser-2.2.9" // {
         dependencies = [
           sources."addressparser-1.0.1"
+          sources."readable-stream-2.3.6"
         ];
       })
       (sources."finalhandler-1.1.1" // {
@@ -49537,11 +49764,7 @@ in
         ];
       })
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."fs-extra-5.0.0"
@@ -49550,8 +49773,12 @@ in
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
       sources."glob-parent-3.1.0"
-      sources."glob-stream-6.1.0"
-      sources."graceful-fs-4.1.11"
+      (sources."glob-stream-6.1.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       (sources."har-validator-5.1.0" // {
         dependencies = [
@@ -49562,7 +49789,7 @@ in
       })
       sources."hash-sum-1.0.2"
       sources."help-me-1.1.0"
-      sources."htmlparser2-3.9.2"
+      sources."htmlparser2-3.10.0"
       sources."http-errors-1.6.3"
       sources."http-signature-1.2.0"
       (sources."https-proxy-agent-2.2.1" // {
@@ -49636,8 +49863,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       (sources."mimelib-0.3.1" // {
         dependencies = [
           sources."addressparser-1.0.1"
@@ -49651,16 +49878,16 @@ in
         ];
       })
       sources."moment-2.22.2"
-      sources."moment-timezone-0.5.21"
-      sources."mqtt-2.18.8"
-      sources."mqtt-packet-5.6.0"
-      sources."mri-1.1.1"
-      sources."ms-2.0.0"
-      (sources."multer-1.3.1" // {
+      sources."moment-timezone-0.5.23"
+      (sources."mqtt-2.18.8" // {
         dependencies = [
-          sources."object-assign-3.0.0"
+          sources."readable-stream-2.3.6"
         ];
       })
+      sources."mqtt-packet-5.6.0"
+      sources."mri-1.1.1"
+      sources."ms-2.0.0"
+      sources."multer-1.4.1"
       sources."mustache-2.3.2"
       sources."nan-2.10.0"
       sources."needle-0.11.0"
@@ -49668,8 +49895,8 @@ in
       sources."next-tick-1.0.0"
       sources."node-red-node-email-0.1.29"
       sources."node-red-node-feedparser-0.1.14"
-      sources."node-red-node-rbe-0.2.3"
-      sources."node-red-node-twitter-1.1.3"
+      sources."node-red-node-rbe-0.2.4"
+      sources."node-red-node-twitter-1.1.4"
       sources."nodemailer-1.11.0"
       sources."nodemailer-direct-transport-1.1.0"
       (sources."nodemailer-smtp-transport-1.1.0" // {
@@ -49679,7 +49906,7 @@ in
       })
       sources."nodemailer-wellknown-0.1.10"
       sources."nopt-4.0.1"
-      sources."nth-check-1.0.1"
+      sources."nth-check-1.0.2"
       sources."oauth-0.9.15"
       sources."oauth-sign-0.9.0"
       sources."oauth2orize-1.11.0"
@@ -49693,7 +49920,11 @@ in
         ];
       })
       sources."options-0.0.6"
-      sources."ordered-read-streams-1.0.1"
+      (sources."ordered-read-streams-1.0.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
@@ -49723,19 +49954,15 @@ in
       sources."random-bytes-1.0.0"
       sources."range-parser-1.2.0"
       sources."raw-body-2.3.3"
-      sources."readable-stream-2.3.6"
+      sources."readable-stream-3.0.6"
       sources."reinterval-1.1.0"
       sources."remove-trailing-separator-1.1.0"
-      (sources."request-2.88.0" // {
-        dependencies = [
-          sources."safe-buffer-5.1.2"
-        ];
-      })
+      sources."request-2.88.0"
       sources."retry-0.6.1"
-      sources."safe-buffer-5.1.1"
+      sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
-      sources."semver-5.5.1"
+      sources."semver-5.6.0"
       (sources."send-0.16.2" // {
         dependencies = [
           sources."statuses-1.4.0"
@@ -49748,12 +49975,16 @@ in
       sources."source-map-0.6.1"
       sources."split2-2.2.0"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."statuses-1.5.0"
       sources."stream-shift-1.0.0"
       sources."streamsearch-0.1.2"
       sources."string_decoder-1.1.1"
-      sources."through2-2.0.3"
+      (sources."through2-2.0.3" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."through2-filter-2.0.0"
       sources."to-absolute-glob-2.0.2"
       (sources."tough-cookie-2.4.3" // {
@@ -49788,6 +50019,7 @@ in
       sources."verror-1.10.0"
       (sources."websocket-stream-5.1.2" // {
         dependencies = [
+          sources."readable-stream-2.3.6"
           sources."ws-3.3.3"
         ];
       })
@@ -49906,7 +50138,7 @@ in
       sources."qs-0.5.1"
       sources."rai-0.1.12"
       sources."range-parser-0.0.4"
-      (sources."raw-socket-1.6.3" // {
+      (sources."raw-socket-1.6.4" // {
         dependencies = [
           sources."nan-2.10.0"
         ];
@@ -50010,11 +50242,7 @@ in
       sources."findit-1.2.0"
       sources."foreachasync-3.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       (sources."fs-extra-0.6.4" // {
         dependencies = [
           sources."rimraf-2.2.8"
@@ -50049,8 +50277,8 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.3.5"
@@ -50092,7 +50320,7 @@ in
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.2"
       sources."slide-1.1.6"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
@@ -50176,7 +50404,7 @@ in
       sources."get-stream-3.0.0"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
       sources."import-lazy-2.1.0"
@@ -50264,7 +50492,7 @@ in
       })
       sources."url-parse-lax-1.0.0"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."write-file-atomic-2.3.0"
       sources."xdg-basedir-3.0.0"
       sources."yallist-2.1.2"
@@ -50318,7 +50546,7 @@ in
       sources."find-up-2.1.0"
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."hoek-4.2.1"
       sources."hosted-git-info-2.7.1"
@@ -50383,7 +50611,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."string-width-1.0.2"
       sources."strip-ansi-3.0.1"
       sources."strip-bom-3.0.0"
@@ -50537,7 +50765,7 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."error-ex-1.3.2"
       sources."escape-html-1.0.3"
       sources."esprima-4.0.1"
@@ -50560,11 +50788,7 @@ in
       })
       sources."find-up-1.1.2"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."function-bind-1.1.1"
@@ -50573,7 +50797,7 @@ in
       sources."get-caller-file-1.0.3"
       sources."getpass-0.1.7"
       sources."glob-6.0.4"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."handlebars-4.0.12" // {
         dependencies = [
           sources."async-2.6.1"
@@ -50592,7 +50816,7 @@ in
       sources."inherits-2.0.3"
       sources."invert-kv-1.0.0"
       sources."ipaddr.js-1.8.0"
-      sources."is-arguments-1.0.2"
+      sources."is-arguments-1.0.4"
       sources."is-arrayish-0.2.1"
       sources."is-builtin-module-1.0.0"
       sources."is-fullwidth-code-point-1.0.0"
@@ -50641,12 +50865,12 @@ in
       sources."lodash.clone-4.3.2"
       sources."media-typer-0.3.0"
       sources."mediawiki-title-0.6.5"
-      sources."merge-1.2.0"
+      sources."merge-1.2.1"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.10"
       (sources."mkdirp-0.5.1" // {
@@ -50728,9 +50952,9 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."statuses-1.5.0"
       sources."streamsearch-0.1.2"
       sources."string-width-1.0.2"
@@ -50861,7 +51085,7 @@ in
       sources."get-browser-rtc-1.0.2"
       sources."get-stdin-4.0.1"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
       sources."hat-0.0.3"
@@ -51010,7 +51234,7 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."speedometer-0.1.4"
       sources."stream-buffers-2.2.0"
       sources."string-width-1.0.2"
@@ -51024,7 +51248,7 @@ in
       sources."symbol-observable-1.0.1"
       sources."thirty-two-1.0.2"
       sources."through-2.3.8"
-      sources."thunky-1.0.2"
+      sources."thunky-1.0.3"
       sources."tmp-0.0.33"
       sources."torrent-discovery-5.4.0"
       sources."torrent-piece-1.1.2"
@@ -51240,7 +51464,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."get-browser-rtc-1.0.2"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."has-binary-0.1.7" // {
         dependencies = [
           sources."isarray-0.0.1"
@@ -51297,8 +51521,8 @@ in
       })
       sources."methods-1.1.2"
       sources."mime-1.3.4"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -51454,7 +51678,7 @@ in
       sources."string_decoder-1.1.1"
       sources."tar-stream-1.6.2"
       sources."thirty-two-0.0.2"
-      sources."thunky-1.0.2"
+      sources."thunky-1.0.3"
       sources."to-array-0.1.4"
       sources."to-buffer-1.1.1"
       sources."toidentifier-1.0.0"
@@ -51502,7 +51726,7 @@ in
     packageName = "phantomjs";
     version = "2.1.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/phantomjs/-/phantomjs-2.1.7.tgz";
+      url = "http://registry.npmjs.org/phantomjs/-/phantomjs-2.1.7.tgz";
       sha1 = "c6910f67935c37285b6114329fc2f27d5f3e3134";
     };
     dependencies = [
@@ -51550,7 +51774,7 @@ in
         ];
       })
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-validator-2.0.6"
       sources."has-ansi-2.0.0"
       sources."hasha-2.2.0"
@@ -51580,8 +51804,8 @@ in
       sources."kew-0.7.0"
       sources."klaw-1.3.1"
       sources."lodash-4.17.11"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.0"
@@ -51601,7 +51825,7 @@ in
       sources."rimraf-2.6.2"
       sources."safer-buffer-2.1.2"
       sources."sntp-1.0.9"
-      (sources."sshpk-1.15.1" // {
+      (sources."sshpk-1.15.2" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -51638,10 +51862,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "2.16.3";
+    version = "2.17.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.16.3.tgz";
-      sha512 = "W63qZOC9YGr+33JYvZjvhzvYL4YKT2gAywDJQrHvKTL6vmnnSh+GdM3ZdGIIZ6A57YB3NgvQaq/BJ2uYjwn3ZQ==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.17.7.tgz";
+      sha512 = "FwZFpKSL4BNu1IGIScveHqZALpm6jSF7QR90CZXW4RfKaLpNYcIkkFC9iPBT4AdpPSv1UR/gYUWyQdTZBx2a5g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -51679,8 +51903,9 @@ in
     };
     dependencies = [
       sources."JSONStream-1.3.5"
-      sources."acorn-6.0.2"
-      sources."acorn-node-1.6.0"
+      sources."acorn-6.0.4"
+      sources."acorn-dynamic-import-4.0.0"
+      sources."acorn-node-1.6.2"
       sources."acorn-walk-6.1.0"
       sources."anymatch-2.0.0"
       sources."arr-diff-4.0.0"
@@ -51852,7 +52077,7 @@ in
           sources."is-glob-3.1.0"
         ];
       })
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-1.0.3"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
@@ -52087,7 +52312,7 @@ in
       })
       sources."to-regex-3.0.2"
       sources."to-regex-range-2.1.1"
-      sources."tree-kill-1.2.0"
+      sources."tree-kill-1.2.1"
       sources."tty-browserify-0.0.1"
       sources."typedarray-0.0.6"
       sources."umd-3.0.3"
@@ -52145,7 +52370,7 @@ in
     };
     dependencies = [
       sources."@types/babel-types-7.0.4"
-      sources."@types/babylon-6.16.3"
+      sources."@types/babylon-6.16.4"
       sources."accepts-1.3.5"
       sources."acorn-3.3.0"
       (sources."acorn-globals-3.1.0" // {
@@ -52252,7 +52477,7 @@ in
         ];
       })
       sources."github-from-package-0.0.0"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-1.0.5"
       sources."har-validator-4.2.1"
       sources."has-1.0.3"
@@ -52304,8 +52529,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."morgan-1.9.1"
@@ -52313,8 +52538,8 @@ in
       sources."nan-2.5.1"
       sources."negotiator-0.6.1"
       sources."net-browserify-alt-1.1.0"
-      sources."node-abi-2.4.5"
-      sources."node.extend-2.0.0"
+      sources."node-abi-2.5.0"
+      sources."node.extend-2.0.1"
       sources."noop-logger-0.1.1"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
@@ -52393,7 +52618,7 @@ in
       sources."simple-get-1.4.3"
       sources."sntp-1.0.9"
       sources."source-map-0.5.7"
-      (sources."sshpk-1.15.1" // {
+      (sources."sshpk-1.15.2" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -52473,7 +52698,7 @@ in
       sources."esprima-3.1.3"
       sources."esprima-fb-13001.1001.0-dev-harmony-fb"
       sources."glob-5.0.15"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."iconv-lite-0.4.24"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
@@ -52629,11 +52854,7 @@ in
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."formidable-1.0.11"
       sources."fresh-0.2.0"
       sources."getpass-0.1.7"
@@ -52653,8 +52874,8 @@ in
       sources."keypress-0.1.0"
       sources."methods-0.1.0"
       sources."mime-1.2.11"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mkdirp-0.3.5"
       sources."ms-2.1.1"
       sources."multiparty-2.2.0"
@@ -52683,7 +52904,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
       sources."send-0.1.4"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stream-counter-0.2.0"
       sources."string-1.6.1"
       sources."string_decoder-0.10.31"
@@ -52706,10 +52927,10 @@ in
   scuttlebot = nodeEnv.buildNodePackage {
     name = "scuttlebot";
     packageName = "scuttlebot";
-    version = "13.0.0";
+    version = "13.0.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/scuttlebot/-/scuttlebot-13.0.0.tgz";
-      sha512 = "niRO3ySzMcXXIrx88zBMdLZ53zvC3DALiFZL42hELL0nE3ohGlhSYQNYefgPB1KiVyMomuNvlhusw9yQsYs/dQ==";
+      url = "https://registry.npmjs.org/scuttlebot/-/scuttlebot-13.0.3.tgz";
+      sha512 = "/Axzh0wWOSb8n9i/7t+HaN+71rj+Q7oCnObpph7WAoroHKb2GtgZALLW2ioJ10PXbRrEPHFTkHhmvBKUKRYu4w==";
     };
     dependencies = [
       sources."abstract-leveldown-4.0.3"
@@ -52737,7 +52958,7 @@ in
       sources."async-single-1.0.5"
       sources."async-write-2.1.0"
       sources."atob-2.1.2"
-      sources."atomic-file-0.0.1"
+      sources."atomic-file-1.1.5"
       sources."attach-ware-1.1.1"
       sources."bail-1.0.3"
       sources."balanced-match-1.0.0"
@@ -52803,6 +53024,7 @@ in
       sources."code-point-at-1.1.0"
       sources."collapse-white-space-1.0.4"
       sources."collection-visit-1.0.0"
+      sources."colors-0.5.1"
       sources."commander-2.19.0"
       sources."compare-at-paths-1.0.0"
       sources."component-emitter-1.2.1"
@@ -52825,7 +53047,7 @@ in
       sources."continuable-series-1.2.0"
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
-      sources."cross-spawn-5.1.0"
+      sources."cross-spawn-6.0.5"
       sources."debug-2.6.9"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-3.3.0"
@@ -52842,18 +53064,15 @@ in
       sources."delegates-1.0.0"
       sources."detab-1.0.2"
       sources."detect-libc-1.0.3"
+      sources."discontinuous-range-1.0.0"
       sources."dynamic-dijkstra-1.0.0"
       sources."ed2curve-0.1.4"
       sources."elegant-spinner-1.0.1"
       sources."emoji-named-characters-1.0.2"
       sources."emoji-server-1.0.0"
-      (sources."encoding-down-4.0.1" // {
-        dependencies = [
-          sources."level-codec-8.0.0"
-        ];
-      })
+      sources."encoding-down-4.0.1"
       sources."end-of-stream-1.4.1"
-      sources."epidemic-broadcast-trees-6.3.4"
+      sources."epidemic-broadcast-trees-6.3.5"
       sources."errno-0.1.7"
       sources."es-abstract-1.12.0"
       sources."es-to-primitive-1.2.0"
@@ -52874,32 +53093,35 @@ in
       sources."fast-future-1.0.2"
       sources."filename-regex-2.0.1"
       sources."fill-range-2.2.4"
-      sources."flumecodec-0.0.1"
-      sources."flumedb-0.5.1"
-      (sources."flumelog-offset-3.3.2" // {
+      (sources."flumecodec-0.0.0" // {
         dependencies = [
-          sources."looper-4.0.0"
+          sources."level-codec-6.2.0"
         ];
       })
-      (sources."flumeview-hashtable-1.0.4" // {
+      (sources."flumedb-1.0.1" // {
         dependencies = [
-          sources."atomic-file-1.1.5"
+          sources."pull-cont-0.0.0"
+        ];
+      })
+      (sources."flumelog-offset-3.3.2" // {
+        dependencies = [
+          sources."looper-4.0.0"
         ];
       })
+      sources."flumeview-hashtable-1.0.4"
       (sources."flumeview-level-3.0.6" // {
         dependencies = [
+          sources."level-3.0.2"
           sources."obv-0.0.0"
         ];
       })
       (sources."flumeview-query-6.3.0" // {
         dependencies = [
-          sources."map-filter-reduce-3.2.1"
+          sources."map-filter-reduce-3.2.2"
         ];
       })
       (sources."flumeview-reduce-1.3.14" // {
         dependencies = [
-          sources."atomic-file-1.1.5"
-          sources."flumecodec-0.0.0"
           sources."obv-0.0.0"
         ];
       })
@@ -52918,8 +53140,7 @@ in
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
       sources."globby-4.1.0"
-      sources."graceful-fs-4.1.11"
-      sources."graphreduce-3.0.4"
+      sources."graceful-fs-4.1.15"
       sources."has-1.0.3"
       sources."has-ansi-2.0.0"
       sources."has-network-0.0.1"
@@ -52949,7 +53170,7 @@ in
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."int53-0.2.4"
-      sources."ip-0.3.3"
+      sources."ip-1.1.5"
       sources."irregular-plurals-1.4.0"
       (sources."is-accessor-descriptor-1.0.0" // {
         dependencies = [
@@ -52961,6 +53182,7 @@ in
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.1.4"
+      sources."is-canonical-base64-1.1.1"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.2"
@@ -52974,7 +53196,7 @@ in
         ];
       })
       sources."is-dotfile-1.0.3"
-      sources."is-electron-2.1.0"
+      sources."is-electron-2.2.0"
       sources."is-equal-shallow-0.1.3"
       sources."is-extendable-0.1.1"
       sources."is-extglob-1.0.0"
@@ -52998,13 +53220,22 @@ in
       sources."isobject-2.1.0"
       sources."json-buffer-2.0.11"
       sources."kind-of-3.2.2"
-      (sources."layered-graph-1.1.1" // {
-        dependencies = [
-          sources."pull-cont-0.1.1"
+      sources."layered-graph-1.1.1"
+      (sources."level-4.0.0" // {
+        dependencies = [
+          sources."abstract-leveldown-5.0.0"
+          sources."deferred-leveldown-4.0.2"
+          sources."encoding-down-5.0.4"
+          sources."level-codec-9.0.0"
+          sources."level-errors-2.0.0"
+          sources."level-iterator-stream-3.0.1"
+          sources."level-packager-3.1.0"
+          sources."leveldown-4.0.1"
+          sources."levelup-3.1.1"
+          sources."nan-2.10.0"
         ];
       })
-      sources."level-3.0.2"
-      sources."level-codec-6.2.0"
+      sources."level-codec-8.0.0"
       sources."level-errors-1.1.2"
       sources."level-iterator-stream-2.0.3"
       sources."level-packager-2.1.1"
@@ -53045,7 +53276,6 @@ in
       sources."longest-streak-1.0.0"
       sources."looper-3.0.0"
       sources."lossy-store-1.2.3"
-      sources."lru-cache-4.1.3"
       sources."ltgt-2.2.1"
       sources."map-cache-0.2.2"
       sources."map-filter-reduce-2.2.1"
@@ -53069,6 +53299,7 @@ in
         ];
       })
       sources."monotonic-timestamp-0.0.9"
+      sources."moo-0.4.3"
       sources."ms-2.0.0"
       (sources."multiblob-1.13.1" // {
         dependencies = [
@@ -53078,7 +53309,8 @@ in
       })
       sources."multiblob-http-0.4.2"
       sources."multicb-1.2.2"
-      sources."multiserver-1.13.5"
+      sources."multiserver-1.13.7"
+      sources."multiserver-address-1.0.1"
       sources."muxrpc-6.4.1"
       (sources."muxrpc-validation-2.0.1" // {
         dependencies = [
@@ -53104,13 +53336,12 @@ in
         ];
       })
       sources."ncp-2.0.0"
-      sources."node-abi-2.4.5"
+      sources."nearley-2.15.1"
+      sources."nice-try-1.0.5"
+      sources."node-abi-2.5.0"
       sources."node-gyp-build-3.5.0"
-      (sources."non-private-ip-1.4.4" // {
-        dependencies = [
-          sources."ip-1.1.5"
-        ];
-      })
+      sources."nomnom-1.6.2"
+      sources."non-private-ip-1.4.4"
       sources."noop-logger-0.1.1"
       sources."normalize-path-2.1.1"
       sources."normalize-uri-1.1.1"
@@ -53150,7 +53381,7 @@ in
       sources."on-wakeup-1.0.1"
       sources."once-1.4.0"
       sources."onetime-1.1.0"
-      sources."opencollective-postinstall-2.0.0"
+      sources."opencollective-postinstall-2.0.1"
       sources."options-0.0.6"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
@@ -53161,6 +53392,7 @@ in
       sources."parse-glob-3.0.4"
       sources."pascalcase-0.1.1"
       sources."path-is-absolute-1.0.1"
+      sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
@@ -53172,11 +53404,10 @@ in
       sources."private-box-0.3.0"
       sources."process-nextick-args-2.0.0"
       sources."prr-1.0.1"
-      sources."pseudomap-1.0.2"
-      sources."pull-abortable-4.1.1"
+      sources."pull-abortable-4.0.0"
       sources."pull-box-stream-1.0.13"
       sources."pull-cat-1.1.11"
-      sources."pull-cont-0.0.0"
+      sources."pull-cont-0.1.1"
       sources."pull-core-1.1.0"
       (sources."pull-cursor-3.0.0" // {
         dependencies = [
@@ -53199,11 +53430,7 @@ in
       })
       sources."pull-handshake-1.1.4"
       sources."pull-hash-1.0.0"
-      (sources."pull-inactivity-2.1.2" // {
-        dependencies = [
-          sources."pull-abortable-4.0.0"
-        ];
-      })
+      sources."pull-inactivity-2.1.3"
       sources."pull-level-2.0.4"
       sources."pull-live-1.0.1"
       (sources."pull-looper-1.0.0" // {
@@ -53225,10 +53452,9 @@ in
       sources."pull-rate-1.0.2"
       sources."pull-reader-1.3.1"
       sources."pull-sink-through-0.0.0"
-      sources."pull-sort-1.0.1"
+      sources."pull-sort-1.0.2"
       sources."pull-stream-3.6.9"
-      sources."pull-stream-to-stream-1.3.4"
-      sources."pull-stringify-1.2.2"
+      sources."pull-stringify-2.0.0"
       sources."pull-through-1.0.18"
       sources."pull-traverse-1.0.3"
       sources."pull-utf8-decoder-1.0.2"
@@ -53247,7 +53473,9 @@ in
       sources."pump-2.0.1"
       sources."push-stream-10.0.4"
       sources."push-stream-to-pull-stream-1.0.3"
-      (sources."randomatic-3.1.0" // {
+      sources."railroad-diagrams-1.0.0"
+      sources."randexp-0.4.6"
+      (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
           sources."kind-of-6.0.2"
@@ -53327,16 +53555,8 @@ in
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."secret-handshake-1.1.14"
-      (sources."secret-stack-4.2.4" // {
-        dependencies = [
-          sources."ip-1.1.5"
-        ];
-      })
-      (sources."secure-scuttlebutt-18.5.0" // {
-        dependencies = [
-          sources."deep-equal-0.2.2"
-        ];
-      })
+      sources."secret-stack-4.2.4"
+      sources."secure-scuttlebutt-18.6.0"
       sources."semver-5.6.0"
       sources."separator-escape-0.0.0"
       sources."set-blocking-2.0.0"
@@ -53378,11 +53598,7 @@ in
         ];
       })
       sources."snapdragon-util-3.0.1"
-      (sources."socks-2.2.1" // {
-        dependencies = [
-          sources."ip-1.1.5"
-        ];
-      })
+      sources."socks-2.2.1"
       sources."sodium-browserify-1.2.4"
       (sources."sodium-browserify-tweetnacl-0.2.3" // {
         dependencies = [
@@ -53396,31 +53612,23 @@ in
       sources."source-map-url-0.4.0"
       sources."split-buffer-1.0.0"
       sources."split-string-3.1.0"
-      sources."ssb-blobs-1.1.5"
+      sources."ssb-blobs-1.1.6"
       sources."ssb-client-4.6.0"
-      sources."ssb-config-2.3.5"
-      sources."ssb-ebt-5.2.3"
-      (sources."ssb-friends-3.1.3" // {
-        dependencies = [
-          sources."pull-cont-0.1.1"
-        ];
-      })
+      sources."ssb-config-2.3.7"
+      sources."ssb-ebt-5.2.7"
+      sources."ssb-friends-3.1.6"
       sources."ssb-keys-7.1.3"
       sources."ssb-links-3.0.3"
       sources."ssb-msgs-5.2.0"
       (sources."ssb-query-2.3.0" // {
         dependencies = [
           sources."flumeview-query-7.1.0"
-          sources."map-filter-reduce-3.2.1"
+          sources."map-filter-reduce-3.2.2"
         ];
       })
-      (sources."ssb-ref-2.12.0" // {
-        dependencies = [
-          sources."ip-1.1.5"
-        ];
-      })
-      sources."ssb-validate-3.0.11"
-      sources."ssb-ws-3.0.0"
+      sources."ssb-ref-2.13.6"
+      sources."ssb-validate-4.0.3"
+      sources."ssb-ws-3.0.2"
       sources."stack-0.1.0"
       (sources."static-extend-0.1.2" // {
         dependencies = [
@@ -53482,6 +53690,7 @@ in
       sources."typewiselite-1.0.0"
       sources."uint48be-1.0.2"
       sources."ultron-1.0.2"
+      sources."underscore-1.4.4"
       sources."unherit-1.1.1"
       sources."unified-2.1.4"
       (sources."union-value-1.0.0" // {
@@ -53523,7 +53732,6 @@ in
       sources."wrappy-1.0.2"
       sources."ws-1.1.5"
       sources."xtend-4.0.1"
-      sources."yallist-2.1.2"
       sources."zerr-1.0.4"
     ];
     buildInputs = globalBuildInputs;
@@ -53633,7 +53841,7 @@ in
       sources."update-check-1.5.2"
       sources."uri-js-4.2.2"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."yallist-2.1.2"
     ];
     buildInputs = globalBuildInputs;
@@ -53717,7 +53925,7 @@ in
         ];
       })
       sources."engine.io-parser-1.0.6"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
       sources."event-stream-3.3.6"
@@ -53729,11 +53937,7 @@ in
       sources."finalhandler-1.1.1"
       sources."flatmap-stream-0.1.1"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."from-0.1.7"
@@ -53772,8 +53976,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."moment-2.7.0"
@@ -53835,7 +54039,7 @@ in
         ];
       })
       sources."split-1.0.1"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."statuses-1.4.0"
       sources."stream-combiner-0.2.2"
       sources."string_decoder-0.10.31"
@@ -53896,12 +54100,10 @@ in
       (sources."body-parser-1.18.3" // {
         dependencies = [
           sources."bytes-3.0.0"
+          sources."debug-2.6.9"
           sources."http-errors-1.6.3"
           sources."iconv-lite-0.4.23"
-          sources."qs-6.5.2"
           sources."raw-body-2.3.3"
-          sources."setprototypeof-1.1.0"
-          sources."statuses-1.5.0"
         ];
       })
       sources."brace-expansion-1.1.11"
@@ -53918,6 +54120,7 @@ in
       (sources."compression-1.7.3" // {
         dependencies = [
           sources."bytes-3.0.0"
+          sources."debug-2.6.9"
         ];
       })
       sources."concat-map-0.0.1"
@@ -53925,11 +54128,11 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.3.1"
       sources."cookie-signature-1.0.6"
-      sources."cookies-0.7.2"
+      sources."cookies-0.7.3"
       sources."core-util-is-1.0.2"
       sources."crypt3-0.2.0"
       sources."dashdash-1.14.1"
-      sources."debug-2.6.9"
+      sources."debug-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
@@ -53945,25 +54148,25 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."es6-shim-0.21.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
       sources."etag-1.8.1"
-      sources."express-5.0.0-alpha.6"
+      sources."express-5.0.0-alpha.7"
       sources."express-json5-0.1.0"
       sources."extend-3.0.2"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
-      sources."finalhandler-1.0.6"
-      sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
+      (sources."finalhandler-1.1.1" // {
         dependencies = [
-          sources."combined-stream-1.0.6"
+          sources."debug-2.6.9"
         ];
       })
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
       sources."fs-ext-0.6.0"
@@ -53978,14 +54181,13 @@ in
       sources."har-validator-5.1.0"
       sources."has-flag-3.0.0"
       sources."highlight.js-8.9.1"
-      (sources."htmlparser2-3.9.2" // {
+      (sources."htmlparser2-3.10.0" // {
         dependencies = [
-          sources."readable-stream-2.3.6"
+          sources."readable-stream-3.0.6"
         ];
       })
       (sources."http-errors-1.7.1" // {
         dependencies = [
-          sources."setprototypeof-1.1.0"
           sources."statuses-1.5.0"
         ];
       })
@@ -53993,9 +54195,9 @@ in
       sources."iconv-lite-0.4.8"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
-      sources."ipaddr.js-1.4.0"
+      sources."ipaddr.js-1.8.0"
       sources."is-typedarray-1.0.0"
-      sources."isarray-1.0.0"
+      sources."isarray-0.0.1"
       sources."isstream-0.1.2"
       sources."jju-1.4.0"
       sources."js-yaml-3.12.0"
@@ -54019,9 +54221,9 @@ in
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
-      sources."mime-1.3.4"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-1.4.1"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-1.0.0"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -54046,56 +54248,41 @@ in
           sources."source-map-0.6.1"
         ];
       })
-      sources."process-nextick-args-2.0.0"
-      sources."proxy-addr-1.1.5"
+      sources."proxy-addr-2.0.4"
       sources."psl-1.1.29"
       sources."punycode-1.4.1"
-      sources."qs-6.5.0"
+      sources."qs-6.5.2"
       sources."range-parser-1.2.0"
       sources."raw-body-1.3.4"
       (sources."readable-stream-1.1.14" // {
         dependencies = [
-          sources."isarray-0.0.1"
           sources."string_decoder-0.10.31"
         ];
       })
       sources."render-readme-1.3.1"
-      (sources."request-2.88.0" // {
-        dependencies = [
-          sources."qs-6.5.2"
-        ];
-      })
+      sources."request-2.88.0"
       sources."rimraf-2.4.5"
-      (sources."router-1.3.3" // {
-        dependencies = [
-          sources."setprototypeof-1.1.0"
-          sources."utils-merge-1.0.1"
-        ];
-      })
+      sources."router-2.0.0-alpha.1"
       sources."safe-buffer-5.1.2"
       sources."safe-json-stringify-1.2.0"
       sources."safer-buffer-2.1.2"
       sources."sanitize-html-1.19.1"
       sources."semver-4.3.6"
-      (sources."send-0.15.6" // {
+      (sources."send-0.16.2" // {
         dependencies = [
-          (sources."http-errors-1.6.3" // {
-            dependencies = [
-              sources."statuses-1.5.0"
-            ];
-          })
-          sources."setprototypeof-1.1.0"
+          sources."debug-2.6.9"
+          sources."http-errors-1.6.3"
         ];
       })
-      sources."serve-static-1.12.6"
-      sources."setprototypeof-1.0.3"
+      sources."serve-static-1.13.2"
+      sources."setprototypeof-1.1.0"
       sources."sigmund-1.0.1"
       sources."sinopia-htpasswd-0.4.5"
       sources."source-map-0.1.43"
       sources."sprintf-js-1.0.3"
       sources."srcset-1.0.0"
-      sources."sshpk-1.15.1"
-      sources."statuses-1.3.1"
+      sources."sshpk-1.15.2"
+      sources."statuses-1.4.0"
       sources."string_decoder-1.1.1"
       sources."supports-color-5.5.0"
       sources."through-2.3.8"
@@ -54112,7 +54299,7 @@ in
       })
       sources."unpipe-1.0.0"
       sources."util-deprecate-1.0.2"
-      sources."utils-merge-1.0.0"
+      sources."utils-merge-1.0.1"
       sources."uuid-3.3.2"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
@@ -54223,7 +54410,7 @@ in
       sources."for-in-1.0.2"
       sources."fragment-cache-0.2.1"
       sources."get-value-2.0.6"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
@@ -54521,10 +54708,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.103.4";
+    version = "1.108.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.103.4.tgz";
-      sha512 = "ynLlsLDjAkzymd0qi1il6f34S4oNTfIgvFCFvkYxvqfBkedfOoDQT4TLU8gi+55MGM6iornf2iefC2FW92BwnQ==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.108.0.tgz";
+      sha512 = "QKeERkklW4DFyd49sqbwZ4xNYXtHOPCcUjNUzDfcvXzNwyxfRKhTf43nmPw6lnIcgBesrY95hMozos4WmgYl3w==";
     };
     dependencies = [
       sources."@yarnpkg/lockfile-1.1.0"
@@ -54599,7 +54786,7 @@ in
           sources."ms-2.0.0"
         ];
       })
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graphlib-2.1.5"
       sources."has-flag-3.0.0"
       sources."hasbin-1.2.3"
@@ -54724,20 +54911,20 @@ in
       sources."signal-exit-3.0.2"
       sources."smart-buffer-1.1.15"
       sources."snyk-config-2.2.0"
-      sources."snyk-docker-plugin-1.12.0"
-      sources."snyk-go-plugin-1.5.2"
+      sources."snyk-docker-plugin-1.12.1"
+      sources."snyk-go-plugin-1.6.0"
       sources."snyk-gradle-plugin-2.1.0"
-      sources."snyk-module-1.8.2"
+      sources."snyk-module-1.9.1"
       sources."snyk-mvn-plugin-2.0.0"
-      (sources."snyk-nodejs-lockfile-parser-1.5.3" // {
+      (sources."snyk-nodejs-lockfile-parser-1.7.0" // {
         dependencies = [
           sources."lodash-4.17.10"
         ];
       })
       sources."snyk-nuget-plugin-1.6.5"
       sources."snyk-php-plugin-1.5.1"
-      sources."snyk-policy-1.12.0"
-      sources."snyk-python-plugin-1.8.2"
+      sources."snyk-policy-1.13.1"
+      sources."snyk-python-plugin-1.9.0"
       sources."snyk-resolve-1.0.1"
       sources."snyk-resolve-deps-4.0.2"
       sources."snyk-sbt-plugin-2.0.0"
@@ -54826,22 +55013,22 @@ in
       sources."base64-arraybuffer-0.1.5"
       sources."base64id-1.0.0"
       sources."better-assert-1.0.2"
-      sources."blob-0.0.4"
+      sources."blob-0.0.5"
       sources."callsite-1.0.0"
       sources."component-bind-1.0.0"
       sources."component-emitter-1.2.1"
       sources."component-inherit-0.0.3"
       sources."cookie-0.3.1"
       sources."debug-3.1.0"
-      sources."engine.io-3.2.0"
+      sources."engine.io-3.2.1"
       sources."engine.io-client-3.2.1"
-      sources."engine.io-parser-2.1.2"
+      sources."engine.io-parser-2.1.3"
       sources."has-binary2-1.0.3"
       sources."has-cors-1.1.0"
       sources."indexof-0.0.1"
       sources."isarray-2.0.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."ms-2.0.0"
       sources."negotiator-0.6.1"
       sources."object-component-0.0.3"
@@ -55000,11 +55187,11 @@ in
       sources."boolbase-1.0.0"
       sources."coa-2.0.1"
       sources."colors-1.1.2"
-      sources."css-select-2.0.0"
-      sources."css-select-base-adapter-0.1.0"
+      sources."css-select-2.0.2"
+      sources."css-select-base-adapter-0.1.1"
       sources."css-tree-1.0.0-alpha.28"
       sources."css-url-regex-1.1.0"
-      sources."css-what-2.1.0"
+      sources."css-what-2.1.2"
       (sources."csso-3.5.1" // {
         dependencies = [
           sources."css-tree-1.0.0-alpha.29"
@@ -55018,7 +55205,7 @@ in
       })
       sources."domelementtype-1.3.0"
       sources."domutils-1.7.0"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."es-abstract-1.12.0"
       sources."es-to-primitive-1.2.0"
       sources."esprima-4.0.1"
@@ -55033,7 +55220,7 @@ in
       sources."mdn-data-1.1.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
-      sources."nth-check-1.0.1"
+      sources."nth-check-1.0.2"
       sources."object-keys-1.0.12"
       sources."object.getownpropertydescriptors-2.0.3"
       sources."object.values-1.0.4"
@@ -55153,7 +55340,7 @@ in
       sources."collection-visit-1.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."commander-2.19.0"
       sources."component-emitter-1.2.1"
       sources."concat-map-0.0.1"
@@ -55239,7 +55426,7 @@ in
       sources."finalhandler-1.1.0"
       sources."flatmap-stream-0.1.1"
       sources."for-in-1.0.2"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."formidable-1.2.1"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
@@ -55257,7 +55444,7 @@ in
       })
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       (sources."graphlib-2.1.5" // {
         dependencies = [
           sources."lodash-4.17.11"
@@ -55386,8 +55573,8 @@ in
       sources."methods-1.1.2"
       sources."micromatch-3.1.10"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mixin-deep-1.3.1"
@@ -55410,7 +55597,7 @@ in
       sources."nan-2.11.1"
       sources."nanomatch-1.2.13"
       sources."native-promise-only-0.8.1"
-      (sources."nodemon-1.18.4" // {
+      (sources."nodemon-1.18.6" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.1"
@@ -55673,7 +55860,7 @@ in
       sources."valid-url-1.0.9"
       sources."validator-10.8.0"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."wordwrap-0.0.3"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.3.0"
@@ -55709,7 +55896,7 @@ in
       sources."errno-0.1.7"
       sources."fs.realpath-1.0.0"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."isarray-1.0.0"
@@ -55740,10 +55927,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.97.0";
+    version = "0.98.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.97.0.tgz";
-      sha512 = "ctZF79O1R2aMIDnz9cV5GUIONyFnYvfQKg4+EAwEVaEr1mgy99rglstH6hhRdIThu3SOa4Ns5da/Ee5fTbWc9A==";
+      url = "https://registry.npmjs.org/three/-/three-0.98.0.tgz";
+      sha512 = "fihjYVjCmQbI03zt1+YCl/m+UrZCcDHFNLexgqBOIdPwnO6PYkQaYUsIbqtvNNse+BiMeu+pQWzZn9/NSnIv6A==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -55812,16 +55999,12 @@ in
         ];
       })
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-extra-7.0.0"
       sources."getpass-0.1.7"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
-      sources."har-validator-5.0.3"
+      sources."har-validator-5.1.0"
       sources."http-signature-1.2.0"
       sources."humanize-0.0.9"
       sources."is-typedarray-1.0.0"
@@ -55835,23 +56018,30 @@ in
       sources."keypress-0.2.1"
       sources."lodash-4.17.11"
       sources."longjohn-0.2.12"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimist-0.0.10"
       sources."moment-2.22.2"
-      (sources."node-appc-0.2.48" // {
+      (sources."node-appc-0.2.49" // {
         dependencies = [
-          sources."fs-extra-6.0.1"
+          sources."request-2.88.0"
         ];
       })
-      sources."oauth-sign-0.8.2"
+      sources."oauth-sign-0.9.0"
       sources."optimist-0.6.1"
       sources."os-tmpdir-1.0.2"
       sources."performance-now-2.1.0"
       sources."pkginfo-0.3.1"
+      sources."psl-1.1.29"
       sources."punycode-1.4.1"
       sources."qs-6.5.2"
-      sources."request-2.87.0"
+      (sources."request-2.87.0" // {
+        dependencies = [
+          sources."har-validator-5.0.3"
+          sources."oauth-sign-0.8.2"
+          sources."tough-cookie-2.3.4"
+        ];
+      })
       sources."rimraf-2.2.8"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
@@ -55859,10 +56049,10 @@ in
       sources."source-map-0.6.1"
       sources."source-map-support-0.5.9"
       sources."sprintf-0.1.5"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stack-trace-0.0.10"
       sources."temp-0.8.3"
-      sources."tough-cookie-2.3.4"
+      sources."tough-cookie-2.4.3"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."uglify-js-3.4.9"
@@ -56070,13 +56260,35 @@ in
     production = true;
     bypassCache = true;
   };
+  ttf2eot = nodeEnv.buildNodePackage {
+    name = "ttf2eot";
+    packageName = "ttf2eot";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/ttf2eot/-/ttf2eot-2.0.0.tgz";
+      sha1 = "8e6337a585abd1608a0c84958ab483ce69f6654b";
+    };
+    dependencies = [
+      sources."argparse-1.0.10"
+      sources."microbuffer-1.0.0"
+      sources."sprintf-js-1.0.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Convert TTF font to EOT";
+      homepage = "https://github.com/fontello/ttf2eot#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+  };
   typescript = nodeEnv.buildNodePackage {
     name = "typescript";
     packageName = "typescript";
-    version = "3.1.3";
+    version = "3.1.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/typescript/-/typescript-3.1.3.tgz";
-      sha512 = "+81MUSyX+BaSo+u2RbozuQk/UWx6hfG0a5gHu4ANEM4sU96XbuIyAB+rWBW1u70c6a5QuZfuYICn3s2UjuHUpA==";
+      url = "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz";
+      sha512 = "tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -56128,7 +56340,7 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."columnify-1.5.4"
-      sources."combined-stream-1.0.6"
+      sources."combined-stream-1.0.7"
       sources."concat-map-0.0.1"
       sources."concat-stream-1.6.2"
       sources."configstore-3.1.2"
@@ -56149,14 +56361,14 @@ in
       sources."execa-0.7.0"
       sources."exit-hook-1.1.1"
       sources."extend-3.0.2"
-      sources."form-data-2.3.2"
+      sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."get-stream-3.0.0"
       sources."glob-7.1.3"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-1.0.3"
       sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
@@ -56199,8 +56411,8 @@ in
       sources."make-dir-1.3.0"
       sources."make-error-1.3.5"
       sources."make-error-cause-1.2.2"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -56286,7 +56498,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."wordwrap-1.0.0"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.3.0"
@@ -56328,10 +56540,10 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.4.34";
+    version = "1.4.36";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.4.34.tgz";
-      sha512 = "7sgDDNaWakL7tzp5NwENWHV0SekB6LzcW99nVv0CLthggQnw7wWDnSFAz9iHbBINNj14Sh3gscO7nd73qBtlgA==";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.4.36.tgz";
+      sha512 = "Tpr9qHQZX/e4Qhz4dg1c5Y/jOs911E2MengusvNxO9+kxaw3ua/j+U0FCcPdg4vTDFtEydCGli3kJCoiEbK48w==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -56362,7 +56574,7 @@ in
       sources."base64id-1.0.0"
       sources."bcrypt-pbkdf-1.0.2"
       sources."better-assert-1.0.2"
-      sources."blob-0.0.4"
+      sources."blob-0.0.5"
       sources."bluebird-3.5.2"
       sources."blueimp-md5-2.10.0"
       sources."body-parser-1.18.3"
@@ -56434,7 +56646,7 @@ in
       sources."editions-2.0.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
-      (sources."engine.io-3.2.0" // {
+      (sources."engine.io-3.2.1" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -56445,7 +56657,7 @@ in
           sources."debug-3.1.0"
         ];
       })
-      sources."engine.io-parser-2.1.2"
+      sources."engine.io-parser-2.1.3"
       (sources."errlop-1.0.3" // {
         dependencies = [
           sources."editions-1.3.4"
@@ -56493,7 +56705,7 @@ in
       sources."getmac-1.4.6"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
       (sources."has-binary2-1.0.3" // {
@@ -56513,7 +56725,7 @@ in
       sources."http-errors-1.6.3"
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.23"
-      sources."ignore-5.0.2"
+      sources."ignore-5.0.4"
       sources."indexof-0.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
@@ -56562,8 +56774,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -56634,11 +56846,7 @@ in
           sources."combined-stream-1.0.7"
           sources."delayed-stream-1.0.0"
           sources."extend-3.0.2"
-          (sources."form-data-2.3.2" // {
-            dependencies = [
-              sources."combined-stream-1.0.6"
-            ];
-          })
+          sources."form-data-2.3.3"
         ];
       })
       sources."require-directory-2.1.1"
@@ -56685,8 +56893,8 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
-      sources."sshpk-1.15.1"
+      sources."spdx-license-ids-3.0.2"
+      sources."sshpk-1.15.2"
       sources."ssri-5.3.0"
       sources."stack-trace-0.0.10"
       sources."statuses-1.5.0"
@@ -56697,12 +56905,12 @@ in
       sources."strip-json-comments-2.0.1"
       (sources."superagent-4.0.0-beta.5" // {
         dependencies = [
-          sources."combined-stream-1.0.6"
+          sources."combined-stream-1.0.7"
           sources."component-emitter-1.2.1"
           sources."cookiejar-2.1.2"
           sources."debug-4.1.0"
           sources."delayed-stream-1.0.0"
-          sources."form-data-2.3.2"
+          sources."form-data-2.3.3"
           sources."formidable-1.2.1"
           sources."mime-2.3.1"
           sources."ms-2.1.1"
@@ -56871,11 +57079,7 @@ in
       sources."filename-reserved-regex-2.0.0"
       sources."filenamify-2.1.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fs-constants-1.0.0"
       sources."fs-extra-0.26.7"
       sources."fs.realpath-1.0.0"
@@ -56885,7 +57089,7 @@ in
       sources."git-clone-0.1.0"
       sources."glob-7.1.3"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
       sources."gray-matter-2.1.1"
       sources."handlebars-4.0.12"
@@ -56946,8 +57150,8 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -56998,7 +57202,7 @@ in
       sources."signal-exit-3.0.2"
       sources."source-map-0.6.1"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       sources."stat-mode-0.2.2"
       sources."string-width-2.1.1"
       sources."string_decoder-1.1.1"
@@ -57057,19 +57261,18 @@ in
   "@vue/cli" = nodeEnv.buildNodePackage {
     name = "_at_vue_slash_cli";
     packageName = "@vue/cli";
-    version = "3.0.5";
+    version = "3.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@vue/cli/-/cli-3.0.5.tgz";
-      sha512 = "wNwK6oosaMY5gCmzONatVAVLf8dMmpGqxoT1Z6ne0aBRg6gOUZ+XrLN6MiF34tlETvQ/XhHUC5d+YVWoBVlllQ==";
+      url = "https://registry.npmjs.org/@vue/cli/-/cli-3.1.1.tgz";
+      sha512 = "FUL6sBmg50/1Y5GtOxMeFniqkpDCXBm2rlVgL+64eN+N9qIOKMZDAtfTy/F/d3TUn9Bc1lvPO6/6Xm9m68TnEg==";
     };
     dependencies = [
       sources."@akryum/winattr-3.0.0"
       sources."@apollographql/apollo-upload-server-5.0.3"
-      sources."@apollographql/graphql-playground-html-1.6.0"
-      sources."@babel/runtime-7.1.2"
+      sources."@apollographql/graphql-playground-html-1.6.4"
       sources."@babel/runtime-corejs2-7.1.2"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
-      sources."@nodelib/fs.stat-1.1.2"
+      sources."@nodelib/fs.stat-1.1.3"
       sources."@protobufjs/aspromise-1.1.2"
       sources."@protobufjs/base64-1.1.2"
       sources."@protobufjs/codegen-2.0.4"
@@ -57081,7 +57284,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/accepts-1.3.5"
-      sources."@types/async-2.0.49"
+      sources."@types/async-2.0.50"
       sources."@types/body-parser-1.17.0"
       sources."@types/connect-3.4.32"
       sources."@types/cors-2.8.4"
@@ -57090,30 +57293,32 @@ in
       sources."@types/express-serve-static-core-4.16.0"
       sources."@types/long-4.0.0"
       sources."@types/mime-2.0.0"
-      sources."@types/node-10.11.7"
+      sources."@types/node-10.12.2"
       sources."@types/range-parser-1.2.2"
       sources."@types/serve-static-1.13.2"
       sources."@types/ws-5.1.2"
       sources."@types/zen-observable-0.8.0"
-      sources."@vue/cli-shared-utils-3.0.5"
-      (sources."@vue/cli-ui-3.0.5" // {
+      sources."@vue/cli-shared-utils-3.1.1"
+      (sources."@vue/cli-ui-3.1.1" // {
         dependencies = [
           sources."clone-2.1.2"
         ];
       })
-      sources."@vue/cli-ui-addon-webpack-3.0.5"
+      sources."@vue/cli-ui-addon-webpack-3.1.1"
+      sources."@vue/cli-ui-addon-widgets-3.1.1"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.5"
+      sources."aggregate-error-1.0.0"
       sources."ajv-5.5.2"
       sources."ansi-align-2.0.0"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
       sources."anymatch-2.0.0"
-      sources."apollo-cache-1.1.17"
+      sources."apollo-cache-1.1.20"
       sources."apollo-cache-control-0.2.5"
-      sources."apollo-cache-inmemory-1.3.5"
-      sources."apollo-client-2.4.2"
+      sources."apollo-cache-inmemory-1.3.9"
+      sources."apollo-client-2.4.5"
       sources."apollo-datasource-0.1.3"
       sources."apollo-engine-reporting-0.0.6"
       sources."apollo-engine-reporting-protobuf-0.0.1"
@@ -57138,8 +57343,8 @@ in
         ];
       })
       sources."apollo-tracing-0.2.5"
-      sources."apollo-upload-client-8.1.0"
-      sources."apollo-utilities-1.0.21"
+      sources."apollo-upload-client-9.1.0"
+      sources."apollo-utilities-1.0.25"
       sources."argparse-1.0.10"
       sources."arr-diff-4.0.0"
       sources."arr-flatten-1.1.0"
@@ -57174,13 +57379,7 @@ in
       sources."base64-js-0.0.8"
       sources."bcrypt-pbkdf-1.0.2"
       sources."binary-extensions-1.12.0"
-      (sources."bl-1.2.2" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.6"
-          sources."string_decoder-1.1.1"
-        ];
-      })
+      sources."bl-1.2.2"
       (sources."body-parser-1.18.3" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -57189,18 +57388,20 @@ in
       sources."boxen-1.3.0"
       sources."brace-expansion-1.1.11"
       sources."braces-2.3.2"
-      (sources."buffer-3.6.0" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-        ];
-      })
+      sources."buffer-3.6.0"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
       sources."buffer-crc32-0.2.13"
       sources."buffer-fill-1.0.0"
       sources."buffer-from-1.1.1"
       sources."builtins-1.0.3"
-      sources."busboy-0.2.14"
+      (sources."busboy-0.2.14" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."bytes-3.0.0"
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
@@ -57229,6 +57430,7 @@ in
           sources."kind-of-5.1.0"
         ];
       })
+      sources."clean-stack-1.3.0"
       sources."cli-boxes-1.0.0"
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-1.3.1"
@@ -57253,10 +57455,12 @@ in
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.5.7"
       sources."core-util-is-1.0.2"
-      sources."cors-2.8.4"
+      sources."cors-2.8.5"
       sources."create-error-class-3.0.2"
-      sources."cross-spawn-5.1.0"
+      sources."cross-spawn-6.0.5"
+      sources."cross-spawn-async-2.2.5"
       sources."crypto-random-string-1.0.0"
+      sources."csv-parser-1.12.1"
       sources."dashdash-1.14.1"
       (sources."debug-3.2.6" // {
         dependencies = [
@@ -57293,7 +57497,13 @@ in
       sources."depd-1.1.2"
       sources."deprecated-decorator-0.1.6"
       sources."destroy-1.0.4"
-      sources."dicer-0.2.5"
+      (sources."dicer-0.2.5" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."diff-3.5.0"
       sources."dir-glob-2.0.0"
       sources."dot-prop-4.2.0"
@@ -57311,6 +57521,7 @@ in
       sources."ejs-2.6.1"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.1"
+      sources."entities-1.1.2"
       sources."es-abstract-1.12.0"
       sources."es-to-primitive-1.2.0"
       sources."escape-html-1.0.3"
@@ -57322,9 +57533,9 @@ in
       sources."event-stream-3.3.6"
       sources."eventemitter3-3.1.0"
       sources."exec-sh-0.2.2"
-      (sources."execa-0.10.0" // {
+      (sources."execa-1.0.0" // {
         dependencies = [
-          sources."cross-spawn-6.0.5"
+          sources."get-stream-4.1.0"
         ];
       })
       (sources."expand-brackets-2.1.4" // {
@@ -57365,12 +57576,11 @@ in
           sources."define-property-1.0.0"
         ];
       })
-      sources."extract-files-3.1.0"
+      sources."extract-files-4.1.0"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-1.1.0"
       sources."fast-glob-2.2.3"
       sources."fast-json-stable-stringify-2.0.0"
-      sources."fclone-1.0.11"
       sources."fd-slicer-1.1.0"
       sources."figures-2.0.0"
       sources."file-type-5.2.0"
@@ -57383,18 +57593,20 @@ in
           sources."statuses-1.4.0"
         ];
       })
-      sources."flatmap-stream-0.1.1"
-      sources."for-in-1.0.2"
-      sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
+      (sources."fkill-5.3.0" // {
         dependencies = [
-          sources."combined-stream-1.0.6"
+          sources."execa-0.10.0"
         ];
       })
+      sources."flatmap-stream-0.1.1"
+      sources."for-in-1.0.2"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.3"
       sources."forwarded-0.1.2"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."from-0.1.7"
+      sources."from2-2.3.0"
       sources."fs-constants-1.0.0"
       sources."fs-exists-sync-0.1.0"
       sources."fs-extra-6.0.1"
@@ -57402,6 +57614,8 @@ in
       sources."fsevents-1.2.4"
       sources."fswin-2.17.1227"
       sources."function-bind-1.1.1"
+      sources."generate-function-1.1.0"
+      sources."generate-object-property-1.2.0"
       sources."get-proxy-2.1.0"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
@@ -57423,10 +57637,10 @@ in
       })
       sources."good-listener-1.2.2"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
-      sources."graphql-0.13.2"
-      sources."graphql-anywhere-4.1.19"
+      sources."graphql-14.0.2"
+      sources."graphql-anywhere-4.1.22"
       sources."graphql-extensions-0.2.1"
       sources."graphql-subscriptions-1.0.0"
       sources."graphql-tag-2.10.0"
@@ -57455,14 +57669,16 @@ in
       sources."ieee754-1.1.12"
       sources."ignore-3.3.10"
       sources."ignore-by-default-1.0.1"
-      sources."immutable-tuple-0.4.8"
+      sources."immutable-tuple-0.4.9"
       sources."import-global-0.1.0"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
+      sources."indent-string-3.2.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."inquirer-6.2.0"
+      sources."into-stream-2.0.1"
       sources."ipaddr.js-1.8.0"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-binary-path-1.0.1"
@@ -57489,6 +57705,7 @@ in
       sources."is-path-inside-1.0.1"
       sources."is-plain-object-2.0.4"
       sources."is-promise-2.1.0"
+      sources."is-property-1.0.2"
       sources."is-redirect-1.0.0"
       sources."is-regex-1.0.4"
       sources."is-retry-allowed-1.1.0"
@@ -57497,9 +57714,9 @@ in
       sources."is-typedarray-1.0.0"
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
-      sources."isarray-0.0.1"
+      sources."isarray-1.0.0"
       sources."isbinaryfile-3.0.3"
-      sources."isemail-3.1.3"
+      sources."isemail-3.2.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
@@ -57536,7 +57753,7 @@ in
       sources."map-stream-0.0.7"
       sources."map-visit-1.0.0"
       sources."media-typer-0.3.0"
-      sources."merge-1.2.0"
+      sources."merge-1.2.1"
       sources."merge-descriptors-1.0.1"
       sources."merge2-1.2.3"
       sources."methods-1.1.2"
@@ -57547,8 +57764,8 @@ in
         ];
       })
       sources."mime-1.4.1"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.0.4"
@@ -57566,19 +57783,25 @@ in
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
       sources."nan-2.11.1"
-      sources."nanoid-1.3.0"
+      sources."nanoid-2.0.0"
       (sources."nanomatch-1.2.13" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
           sources."is-extendable-1.0.1"
         ];
       })
+      sources."ndjson-1.5.0"
+      (sources."neat-csv-2.1.0" // {
+        dependencies = [
+          sources."get-stream-2.3.1"
+        ];
+      })
       sources."negotiator-0.6.1"
       sources."nice-try-1.0.5"
-      sources."node-fetch-2.2.0"
+      sources."node-fetch-2.2.1"
       sources."node-ipc-9.1.1"
-      sources."node-notifier-5.2.1"
-      sources."nodemon-1.18.4"
+      sources."node-notifier-5.3.0"
+      sources."nodemon-1.18.6"
       sources."nopt-1.0.10"
       sources."normalize-path-2.1.1"
       sources."npm-conf-1.1.3"
@@ -57607,7 +57830,7 @@ in
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."opn-5.4.0"
-      sources."optimism-0.6.6"
+      sources."optimism-0.6.8"
       sources."ora-2.1.0"
       sources."os-tmpdir-1.0.2"
       sources."p-finally-1.0.0"
@@ -57626,10 +57849,16 @@ in
       sources."pause-stream-0.0.11"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
+      (sources."pid-from-port-1.1.3" // {
+        dependencies = [
+          sources."cross-spawn-5.1.0"
+          sources."execa-0.9.0"
+        ];
+      })
       sources."pify-3.0.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      (sources."portfinder-1.0.17" // {
+      (sources."portfinder-1.0.19" // {
         dependencies = [
           sources."debug-2.6.9"
         ];
@@ -57638,27 +57867,24 @@ in
       sources."prepend-http-1.0.4"
       sources."prismjs-1.15.0"
       sources."private-0.1.8"
+      sources."process-exists-3.1.0"
       sources."process-nextick-args-2.0.0"
       sources."proto-list-1.2.4"
       sources."protobufjs-6.8.8"
       sources."proxy-addr-2.0.4"
+      sources."ps-list-4.1.0"
       sources."ps-tree-1.1.0"
       sources."pseudomap-1.0.2"
       sources."psl-1.1.29"
       sources."pstree.remy-1.1.0"
+      sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."range-parser-1.2.0"
       sources."raw-body-2.3.3"
       sources."rc-1.2.8"
-      sources."readable-stream-1.1.14"
-      (sources."readdirp-2.2.1" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.6"
-          sources."string_decoder-1.1.1"
-        ];
-      })
+      sources."readable-stream-2.3.6"
+      sources."readdirp-2.2.1"
       (sources."recast-0.15.5" // {
         dependencies = [
           sources."source-map-0.6.1"
@@ -57685,11 +57911,14 @@ in
       sources."ret-0.1.15"
       sources."retry-0.12.0"
       sources."rimraf-2.6.2"
+      sources."rss-parser-3.5.3"
       sources."run-async-2.3.0"
       sources."rxjs-6.3.3"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."sec-1.0.0"
       (sources."seek-bzip-1.0.5" // {
         dependencies = [
           sources."commander-2.8.1"
@@ -57711,7 +57940,7 @@ in
       sources."shebang-regex-1.0.0"
       sources."shell-quote-1.6.1"
       sources."shellwords-0.1.1"
-      sources."shortid-2.2.13"
+      sources."shortid-2.2.14"
       sources."signal-exit-3.0.2"
       sources."slash-2.0.0"
       (sources."snapdragon-0.8.2" // {
@@ -57757,8 +57986,9 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
+      sources."split2-2.2.0"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -57783,7 +58013,7 @@ in
       sources."streamsearch-0.1.2"
       sources."string-width-2.1.1"
       sources."string.prototype.padstart-3.0.0"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.1.1"
       sources."strip-ansi-4.0.0"
       sources."strip-dirs-2.1.0"
       sources."strip-eof-1.0.0"
@@ -57792,20 +58022,26 @@ in
       sources."subscriptions-transport-ws-0.9.15"
       sources."supports-color-5.5.0"
       sources."symbol-observable-1.2.0"
-      (sources."tar-stream-1.6.2" // {
+      sources."tar-stream-1.6.2"
+      (sources."taskkill-2.0.0" // {
         dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.6"
-          sources."string_decoder-1.1.1"
+          sources."execa-0.1.1"
+        ];
+      })
+      (sources."tasklist-3.1.1" // {
+        dependencies = [
+          sources."pify-2.3.0"
         ];
       })
       (sources."term-size-1.2.0" // {
         dependencies = [
+          sources."cross-spawn-5.1.0"
           sources."execa-0.7.0"
         ];
       })
       sources."terminate-2.1.0"
       sources."through-2.3.8"
+      sources."through2-2.0.3"
       sources."timed-out-4.0.1"
       sources."tiny-emitter-2.0.2"
       sources."tmp-0.0.33"
@@ -57822,7 +58058,11 @@ in
         ];
       })
       sources."to-regex-range-2.1.1"
-      sources."topo-3.0.0"
+      (sources."topo-3.0.3" // {
+        dependencies = [
+          sources."hoek-6.0.1"
+        ];
+      })
       sources."touch-3.1.0"
       (sources."tough-cookie-2.4.3" // {
         dependencies = [
@@ -57857,7 +58097,6 @@ in
             ];
           })
           sources."has-values-0.1.4"
-          sources."isarray-1.0.0"
         ];
       })
       sources."unzip-response-2.0.1"
@@ -57874,15 +58113,17 @@ in
       sources."validate-npm-package-name-3.0.0"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
-      sources."vue-cli-plugin-apollo-0.16.6"
+      sources."vue-cli-plugin-apollo-0.17.3"
       sources."watch-1.0.2"
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.3.0"
       sources."ws-5.2.2"
       sources."xdg-basedir-3.0.0"
+      sources."xml2js-0.4.19"
+      sources."xmlbuilder-9.0.7"
       sources."xtend-4.0.1"
       sources."yallist-2.1.2"
       (sources."yaml-front-matter-3.4.1" // {
@@ -57892,7 +58133,7 @@ in
       })
       sources."yauzl-2.10.0"
       sources."yn-2.0.0"
-      sources."zen-observable-0.8.9"
+      sources."zen-observable-0.8.11"
       sources."zen-observable-ts-0.8.10"
     ];
     buildInputs = globalBuildInputs;
@@ -57907,30 +58148,30 @@ in
   "@webassemblyjs/cli" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_cli";
     packageName = "@webassemblyjs/cli";
-    version = "1.7.8";
+    version = "1.7.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.7.8.tgz";
-      sha512 = "/zEE5vL2lVlZVv3XYLo6+yeEU5pqi8AByBWBVYSuPSRBu0bY9cTCRU4exS/Jd7bdbF9I3s1Moa1FRG1wCQErfA==";
+      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.7.11.tgz";
+      sha512 = "j2KPAIyvXa6fuOr5bQEEb8UHF7WCbEguia5BMJotgxNo37LA/1c4Do/rxFornYKkcmf5IOLjDr197SMUlys3+g==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-flaten-ast-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/ieee754-1.7.8"
-      sources."@webassemblyjs/leb128-1.7.8"
-      sources."@webassemblyjs/utf8-1.7.8"
-      sources."@webassemblyjs/validation-1.7.8"
-      sources."@webassemblyjs/wasm-parser-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-flaten-ast-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/ieee754-1.7.11"
+      sources."@webassemblyjs/leb128-1.7.11"
+      sources."@webassemblyjs/utf8-1.7.11"
+      sources."@webassemblyjs/validation-1.7.11"
+      sources."@webassemblyjs/wasm-parser-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.1"
-      sources."webassemblyjs-1.7.8"
+      sources."webassemblyjs-1.7.11"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -57943,30 +58184,30 @@ in
   "@webassemblyjs/repl" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_repl";
     packageName = "@webassemblyjs/repl";
-    version = "1.7.8";
+    version = "1.7.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.7.8.tgz";
-      sha512 = "IClmDKT+XgTiJ3lNaaXbHBAt2LqabugJmsabtF8TIlulG5Y5NEOOeJGjm56/rmwuW3/ul/zvaLQ1pFpU3WEIXg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.7.11.tgz";
+      sha512 = "rU4ikGGLw6rXQtYLzAvy3GDGpf/0FhKLmVUc3uQJbMQwDvW6FT8kp7sUiZYCwr/UECUurjj2fnGu4FDuIi2Iqg==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-flaten-ast-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/ieee754-1.7.8"
-      sources."@webassemblyjs/leb128-1.7.8"
-      sources."@webassemblyjs/utf8-1.7.8"
-      sources."@webassemblyjs/validation-1.7.8"
-      sources."@webassemblyjs/wasm-parser-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-flaten-ast-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/ieee754-1.7.11"
+      sources."@webassemblyjs/leb128-1.7.11"
+      sources."@webassemblyjs/utf8-1.7.11"
+      sources."@webassemblyjs/validation-1.7.11"
+      sources."@webassemblyjs/wasm-parser-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.1"
-      sources."webassemblyjs-1.7.8"
+      sources."webassemblyjs-1.7.11"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -57979,28 +58220,28 @@ in
   "@webassemblyjs/wasm-strip" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wasm-strip";
     packageName = "@webassemblyjs/wasm-strip";
-    version = "1.7.8";
+    version = "1.7.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wasm-strip/-/wasm-strip-1.7.8.tgz";
-      sha512 = "ZhPzbEX3UKaLjJ7hjPVjNG3tNjiD7B8eriTR11yrctdyD5vAOVoyrUEsBPX0WadxDOzOsGZmSbFD1SHBjJT8jQ==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wasm-strip/-/wasm-strip-1.7.11.tgz";
+      sha512 = "mHlWMZuNz/Or8GHH38HhMQ7O4m9N4XpVjL3I+oQ6emVyJqHvvgybn76lTaI8mKaEh3e4EmaUeIC9gknEhdaJVA==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-buffer-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/helper-wasm-section-1.7.8"
-      sources."@webassemblyjs/ieee754-1.7.8"
-      sources."@webassemblyjs/leb128-1.7.8"
-      sources."@webassemblyjs/utf8-1.7.8"
-      sources."@webassemblyjs/wasm-gen-1.7.8"
-      sources."@webassemblyjs/wasm-parser-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-buffer-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/helper-wasm-section-1.7.11"
+      sources."@webassemblyjs/ieee754-1.7.11"
+      sources."@webassemblyjs/leb128-1.7.11"
+      sources."@webassemblyjs/utf8-1.7.11"
+      sources."@webassemblyjs/wasm-gen-1.7.11"
+      sources."@webassemblyjs/wasm-parser-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.1"
     ];
@@ -58015,10 +58256,10 @@ in
   "@webassemblyjs/wasm-text-gen" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wasm-text-gen";
     packageName = "@webassemblyjs/wasm-text-gen";
-    version = "1.7.8";
+    version = "1.7.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.7.8.tgz";
-      sha512 = "cDzQh/rniwchQfzGQriAg7Io2xqEu5s1Po29jMkRfJse4OFbh54aWcbKk2DO0ph+9lbNQZ0VYTPBP5NGIKqNmw==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.7.11.tgz";
+      sha512 = "hU3q8os4NyVxC0QpDcaPyUqsfL3aMw4vjIxhw83QbBUo/nJxqn7hQ5tcB/YiHpUxASrlEAt5dcuIupdto84DZA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.0.0"
@@ -58027,19 +58268,19 @@ in
       sources."@babel/parser-7.1.3"
       sources."@babel/template-7.1.2"
       sources."@babel/types-7.1.3"
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/ieee754-1.7.8"
-      sources."@webassemblyjs/leb128-1.7.8"
-      sources."@webassemblyjs/utf8-1.7.8"
-      sources."@webassemblyjs/wasm-parser-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/ieee754-1.7.11"
+      sources."@webassemblyjs/leb128-1.7.11"
+      sources."@webassemblyjs/utf8-1.7.11"
+      sources."@webassemblyjs/wasm-parser-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.1"
       sources."ansi-styles-3.2.1"
@@ -58069,21 +58310,21 @@ in
   "@webassemblyjs/wast-refmt" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wast-refmt";
     packageName = "@webassemblyjs/wast-refmt";
-    version = "1.7.8";
+    version = "1.7.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.7.8.tgz";
-      sha512 = "eSkc1/NnfbMYQP/DQaC2W0/DEY/TO4reAS/F/v2cnafFMBrwJ8xQCQwr9IAMiez1aKKYZmL4kyRRbU/0Q9Qbtg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.7.11.tgz";
+      sha512 = "o5PX9iAsVyEjt5HptTCyHPctSs3J17l33bGSSOejqEZpdRbKqPF3+5AXbBflU4eDOEU1daKqbVq4bRAYcH6dfg==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/long-4.2.1"
     ];
     buildInputs = globalBuildInputs;
@@ -58159,7 +58400,7 @@ in
         ];
       })
       sources."glob-7.1.3"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."har-validator-2.0.6"
       sources."has-ansi-2.0.0"
       sources."hasha-2.2.0"
@@ -58190,8 +58431,8 @@ in
       sources."kew-0.1.7"
       sources."klaw-1.3.1"
       sources."lodash-4.17.11"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.3.5"
@@ -58222,7 +58463,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."semver-2.3.2"
       sources."sntp-1.0.9"
-      (sources."sshpk-1.15.1" // {
+      (sources."sshpk-1.15.2" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -58261,35 +58502,35 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "4.20.2";
+    version = "4.25.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-4.20.2.tgz";
-      sha512 = "75WFUMblcWYcocjSLlXCb71QuGyH7egdBZu50FtBGl2Nso8CK3Ej+J7bTZz2FPFq5l6fzCisD9modB7t30ikuA==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-4.25.1.tgz";
+      sha512 = "T0GU/3NRtO4tMfNzsvpdhUr8HnzA4LTdP2zd+e5zd6CdOH5vNKHnAlO+DvzccfhPdzqRrALOFcjYxx7K5DWmvA==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.7.8"
-      sources."@webassemblyjs/floating-point-hex-parser-1.7.8"
-      sources."@webassemblyjs/helper-api-error-1.7.8"
-      sources."@webassemblyjs/helper-buffer-1.7.8"
-      sources."@webassemblyjs/helper-code-frame-1.7.8"
-      sources."@webassemblyjs/helper-fsm-1.7.8"
-      sources."@webassemblyjs/helper-module-context-1.7.8"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.7.8"
-      sources."@webassemblyjs/helper-wasm-section-1.7.8"
-      sources."@webassemblyjs/ieee754-1.7.8"
-      sources."@webassemblyjs/leb128-1.7.8"
-      sources."@webassemblyjs/utf8-1.7.8"
-      sources."@webassemblyjs/wasm-edit-1.7.8"
-      sources."@webassemblyjs/wasm-gen-1.7.8"
-      sources."@webassemblyjs/wasm-opt-1.7.8"
-      sources."@webassemblyjs/wasm-parser-1.7.8"
-      sources."@webassemblyjs/wast-parser-1.7.8"
-      sources."@webassemblyjs/wast-printer-1.7.8"
+      sources."@webassemblyjs/ast-1.7.11"
+      sources."@webassemblyjs/floating-point-hex-parser-1.7.11"
+      sources."@webassemblyjs/helper-api-error-1.7.11"
+      sources."@webassemblyjs/helper-buffer-1.7.11"
+      sources."@webassemblyjs/helper-code-frame-1.7.11"
+      sources."@webassemblyjs/helper-fsm-1.7.11"
+      sources."@webassemblyjs/helper-module-context-1.7.11"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.7.11"
+      sources."@webassemblyjs/helper-wasm-section-1.7.11"
+      sources."@webassemblyjs/ieee754-1.7.11"
+      sources."@webassemblyjs/leb128-1.7.11"
+      sources."@webassemblyjs/utf8-1.7.11"
+      sources."@webassemblyjs/wasm-edit-1.7.11"
+      sources."@webassemblyjs/wasm-gen-1.7.11"
+      sources."@webassemblyjs/wasm-opt-1.7.11"
+      sources."@webassemblyjs/wasm-parser-1.7.11"
+      sources."@webassemblyjs/wast-parser-1.7.11"
+      sources."@webassemblyjs/wast-printer-1.7.11"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.1"
       sources."acorn-5.7.3"
       sources."acorn-dynamic-import-3.0.0"
-      sources."ajv-6.5.4"
+      sources."ajv-6.5.5"
       sources."ajv-keywords-3.2.0"
       sources."anymatch-2.0.0"
       sources."aproba-1.2.0"
@@ -58444,7 +58685,7 @@ in
           sources."is-glob-3.1.0"
         ];
       })
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
         dependencies = [
@@ -58820,7 +59061,7 @@ in
       sources."flatten-1.0.2"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
-          sources."thunky-1.0.2"
+          sources."thunky-1.0.3"
         ];
       })
       sources."fs.realpath-1.0.0"
@@ -58882,7 +59123,7 @@ in
       sources."ms-2.0.0"
       (sources."multicast-dns-6.2.3" // {
         dependencies = [
-          sources."thunky-1.0.2"
+          sources."thunky-1.0.3"
         ];
       })
       (sources."multistream-2.1.1" // {
@@ -59030,7 +59271,7 @@ in
     dependencies = [
       sources."@cliqz-oss/firefox-client-0.3.1"
       sources."@cliqz-oss/node-firefox-connect-1.2.1"
-      sources."@types/node-10.11.7"
+      sources."@types/node-10.12.2"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."JSONSelect-0.2.1"
       sources."abbrev-1.1.1"
@@ -59074,9 +59315,14 @@ in
       (sources."archiver-2.1.1" // {
         dependencies = [
           sources."async-2.6.1"
+          sources."readable-stream-2.3.6"
+        ];
+      })
+      (sources."archiver-utils-1.3.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
         ];
       })
-      sources."archiver-utils-1.3.0"
       sources."archy-1.0.0"
       sources."argparse-1.0.10"
       sources."arr-diff-4.0.0"
@@ -59135,7 +59381,11 @@ in
       sources."base64-js-1.3.0"
       sources."bcrypt-pbkdf-1.0.2"
       sources."binary-extensions-1.12.0"
-      sources."bl-1.2.2"
+      (sources."bl-1.2.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."bluebird-2.9.34"
       sources."boolbase-1.0.0"
       sources."boxen-1.3.0"
@@ -59210,22 +59460,34 @@ in
       sources."commander-2.19.0"
       sources."common-tags-1.8.0"
       sources."component-emitter-1.2.1"
-      sources."compress-commons-1.2.2"
+      (sources."compress-commons-1.2.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."concat-map-0.0.1"
-      sources."concat-stream-1.6.2"
+      (sources."concat-stream-1.6.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."configstore-3.1.2"
       sources."convert-source-map-1.6.0"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.5.7"
       sources."core-util-is-1.0.2"
       sources."crc-3.8.0"
-      sources."crc32-stream-2.0.0"
+      (sources."crc32-stream-2.0.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."create-error-class-3.0.2"
       sources."cross-spawn-6.0.5"
       sources."crx-parser-0.1.2"
       sources."crypto-random-string-1.0.0"
       sources."css-select-1.2.0"
-      sources."css-what-2.1.0"
+      sources."css-what-2.1.2"
       sources."d-1.0.0"
       sources."dashdash-1.14.1"
       sources."data-uri-to-buffer-1.2.0"
@@ -59275,7 +59537,7 @@ in
       sources."email-validator-2.0.4"
       sources."encoding-0.1.12"
       sources."end-of-stream-1.4.1"
-      sources."entities-1.1.1"
+      sources."entities-1.1.2"
       sources."error-ex-1.3.2"
       sources."es-abstract-1.12.0"
       sources."es-to-primitive-1.2.0"
@@ -59407,18 +59669,18 @@ in
           sources."async-2.5.0"
         ];
       })
-      sources."first-chunk-stream-2.0.0"
+      (sources."first-chunk-stream-2.0.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."flat-cache-1.3.0"
       sources."flatstr-1.0.8"
       sources."fluent-syntax-0.7.0"
       sources."for-in-1.0.2"
       sources."for-own-1.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       sources."fs-constants-1.0.0"
       sources."fs-extra-4.0.3"
@@ -59445,12 +59707,17 @@ in
       sources."generate-object-property-1.2.0"
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
-      sources."get-uri-2.0.2"
+      (sources."get-uri-2.0.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
       sources."gettext-parser-1.1.0"
       (sources."git-rev-sync-1.9.1" // {
         dependencies = [
+          sources."graceful-fs-4.1.11"
           sources."shelljs-0.7.7"
         ];
       })
@@ -59464,7 +59731,7 @@ in
       sources."globals-9.18.0"
       sources."globby-5.0.0"
       sources."got-6.7.1"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
       sources."graphlib-2.1.5"
       sources."growly-1.3.0"
@@ -59494,7 +59761,7 @@ in
       })
       sources."home-or-tmp-2.0.0"
       sources."hosted-git-info-2.7.1"
-      sources."htmlparser2-3.9.2"
+      sources."htmlparser2-3.10.0"
       sources."http-errors-1.6.3"
       (sources."http-proxy-agent-2.1.0" // {
         dependencies = [
@@ -59624,7 +59891,11 @@ in
       sources."kind-of-3.2.2"
       sources."latest-version-3.1.0"
       sources."lazy-cache-0.2.7"
-      sources."lazystream-1.0.0"
+      (sources."lazystream-1.0.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."lcid-2.0.0"
       sources."levn-0.3.0"
       sources."lie-3.1.1"
@@ -59669,8 +59940,8 @@ in
           sources."kind-of-6.0.2"
         ];
       })
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -59740,7 +60011,7 @@ in
       sources."normalize-package-data-2.4.0"
       sources."normalize-path-2.1.1"
       sources."npm-run-path-2.0.2"
-      sources."nth-check-1.0.1"
+      sources."nth-check-1.0.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
@@ -59817,7 +60088,7 @@ in
       sources."probe-image-size-4.0.0"
       sources."process-0.11.10"
       sources."process-nextick-args-2.0.0"
-      sources."progress-2.0.0"
+      sources."progress-2.0.1"
       sources."promise-7.3.1"
       (sources."proxy-agent-2.3.1" // {
         dependencies = [
@@ -59831,7 +60102,7 @@ in
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      sources."quick-format-unescaped-3.0.0"
+      sources."quick-format-unescaped-3.0.1"
       (sources."raw-body-2.3.3" // {
         dependencies = [
           sources."iconv-lite-0.4.23"
@@ -59845,8 +60116,12 @@ in
           sources."path-exists-2.1.0"
         ];
       })
-      sources."readable-stream-2.3.6"
-      sources."readdirp-2.2.1"
+      sources."readable-stream-3.0.6"
+      (sources."readdirp-2.2.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       (sources."readline2-1.0.1" // {
         dependencies = [
           sources."mute-stream-0.0.5"
@@ -59958,7 +60233,7 @@ in
         ];
       })
       sources."snapdragon-util-3.0.1"
-      (sources."snyk-1.103.4" // {
+      (sources."snyk-1.108.0" // {
         dependencies = [
           sources."ansi-regex-3.0.0"
           sources."ansi-styles-3.2.1"
@@ -59979,22 +60254,22 @@ in
           sources."ms-2.1.1"
         ];
       })
-      (sources."snyk-docker-plugin-1.12.0" // {
+      (sources."snyk-docker-plugin-1.12.1" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.1"
         ];
       })
-      sources."snyk-go-plugin-1.5.2"
+      sources."snyk-go-plugin-1.6.0"
       sources."snyk-gradle-plugin-2.1.0"
-      (sources."snyk-module-1.8.2" // {
+      (sources."snyk-module-1.9.1" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.1"
         ];
       })
       sources."snyk-mvn-plugin-2.0.0"
-      (sources."snyk-nodejs-lockfile-parser-1.5.3" // {
+      (sources."snyk-nodejs-lockfile-parser-1.7.0" // {
         dependencies = [
           sources."lodash-4.17.10"
           sources."source-map-0.6.1"
@@ -60013,13 +60288,14 @@ in
           sources."ms-2.1.1"
         ];
       })
-      (sources."snyk-policy-1.12.0" // {
+      (sources."snyk-policy-1.13.1" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.1"
+          sources."semver-5.6.0"
         ];
       })
-      sources."snyk-python-plugin-1.8.2"
+      sources."snyk-python-plugin-1.9.0"
       (sources."snyk-resolve-1.0.1" // {
         dependencies = [
           sources."debug-3.2.6"
@@ -60056,11 +60332,11 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."split-0.3.3"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -60105,7 +60381,11 @@ in
       sources."supports-color-2.0.0"
       sources."symbol-observable-1.0.1"
       sources."table-4.0.3"
-      sources."tar-stream-1.6.2"
+      (sources."tar-stream-1.6.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."temp-dir-1.0.0"
       sources."tempfile-2.0.0"
       (sources."term-size-1.2.0" // {
@@ -60183,7 +60463,7 @@ in
       sources."when-3.7.7"
       sources."which-1.3.1"
       sources."which-module-2.0.0"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."win-release-1.1.1"
       sources."window-size-0.1.4"
       sources."winreg-0.0.12"
@@ -60226,7 +60506,11 @@ in
           sources."jszip-2.6.1"
         ];
       })
-      sources."zip-stream-1.2.0"
+      (sources."zip-stream-1.2.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -60257,10 +60541,10 @@ in
   yarn = nodeEnv.buildNodePackage {
     name = "yarn";
     packageName = "yarn";
-    version = "1.10.1";
+    version = "1.12.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yarn/-/yarn-1.10.1.tgz";
-      sha512 = "EH0H1fyfFxkE4UpG4b+VCaVY4I488I2EyQNmGjGGKmvsSIb0G3b+1IcfGYPI2gqa1du43g4ZA3jH8fXlq6oVxg==";
+      url = "https://registry.npmjs.org/yarn/-/yarn-1.12.1.tgz";
+      sha512 = "vdVLrYWx73k4QR8ZpQQ3HJg/X8aAunjUHuPlADR/ogmZOhnqgAdETPz0e/Df+MW8Dno7F1dOxS5e3G6niobumw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -60281,7 +60565,7 @@ in
     };
     dependencies = [
       sources."@mrmlnc/readdir-enhanced-2.2.1"
-      sources."@nodelib/fs.stat-1.1.2"
+      sources."@nodelib/fs.stat-1.1.3"
       sources."@sindresorhus/is-0.7.0"
       sources."aggregate-error-1.0.0"
       sources."ajv-5.5.2"
@@ -60477,11 +60761,7 @@ in
       sources."for-in-1.0.2"
       sources."foreachasync-3.0.0"
       sources."forever-agent-0.6.1"
-      (sources."form-data-2.3.2" // {
-        dependencies = [
-          sources."combined-stream-1.0.6"
-        ];
-      })
+      sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       sources."from2-2.3.0"
       sources."fs.realpath-1.0.0"
@@ -60502,7 +60782,7 @@ in
       sources."global-tunnel-ng-2.6.0"
       sources."globby-8.0.1"
       sources."got-8.3.2"
-      sources."graceful-fs-4.1.11"
+      sources."graceful-fs-4.1.15"
       sources."grouped-queue-0.3.3"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.0"
@@ -60634,8 +60914,8 @@ in
       })
       sources."merge2-1.2.3"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.36.0"
-      sources."mime-types-2.1.20"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
@@ -60833,9 +61113,9 @@ in
       sources."spdx-correct-3.0.2"
       sources."spdx-exceptions-2.2.0"
       sources."spdx-expression-parse-3.0.0"
-      sources."spdx-license-ids-3.0.1"
+      sources."spdx-license-ids-3.0.2"
       sources."split-string-3.1.0"
-      sources."sshpk-1.15.1"
+      sources."sshpk-1.15.2"
       (sources."static-extend-0.1.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -60959,7 +61239,7 @@ in
       })
       sources."walk-2.3.14"
       sources."which-1.3.1"
-      sources."widest-line-2.0.0"
+      sources."widest-line-2.0.1"
       sources."win-release-1.1.1"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
@@ -60981,7 +61261,7 @@ in
         ];
       })
       sources."yeoman-doctor-3.0.2"
-      (sources."yeoman-environment-2.3.3" // {
+      (sources."yeoman-environment-2.3.4" // {
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.1"
diff --git a/pkgs/development/ocaml-modules/angstrom/default.nix b/pkgs/development/ocaml-modules/angstrom/default.nix
index 0c00dc2ff24..2bb717168ad 100644
--- a/pkgs/development/ocaml-modules/angstrom/default.nix
+++ b/pkgs/development/ocaml-modules/angstrom/default.nix
@@ -1,37 +1,26 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest, result
-, bigstringaf
-}:
+{ stdenv, fetchFromGitHub, buildDunePackage, alcotest, result, bigstringaf }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "angstrom is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "angstrom";
   version = "0.10.0";
-  name = "ocaml${ocaml.version}-angstrom-${version}";
+
+  minimumOCamlVersion = "4.03";
 
   src = fetchFromGitHub {
     owner  = "inhabitedtype";
-    repo   = "angstrom";
-    rev    = "${version}";
+    repo   = pname;
+    rev    = version;
     sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
   };
 
-  buildInputs = [ ocaml findlib dune alcotest ];
+  buildInputs = [ alcotest ];
   propagatedBuildInputs = [ bigstringaf result ];
-
-  buildPhase = "dune build -p angstrom";
-
   doCheck = true;
-  checkPhase = "dune runtest -p angstrom";
-
-  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/inhabitedtype/angstrom;
     description = "OCaml parser combinators built for speed and memory efficiency";
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/atd/default.nix b/pkgs/development/ocaml-modules/atd/default.nix
index d5cd38bba72..e3e056f5442 100644
--- a/pkgs/development/ocaml-modules/atd/default.nix
+++ b/pkgs/development/ocaml-modules/atd/default.nix
@@ -1,25 +1,21 @@
-{ stdenv, menhir, easy-format, ocaml, findlib, fetchFromGitHub, dune, which, biniou, yojson }:
+{ stdenv, menhir, easy-format, fetchFromGitHub, buildDunePackage, which, biniou, yojson }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "atd";
   version = "2.0.0";
 
-  name = "ocaml${ocaml.version}-atd-${version}";
-
   src = fetchFromGitHub {
     owner = "mjambon";
-    repo = "atd";
+    repo = pname;
     rev = version;
     sha256 = "0alzmk97rxg7s6irs9lvf89dy9n3r769my5n4j9p9qyigcdgjaia";
   };
 
   createFindlibDestdir = true;
 
-  buildInputs = [ which dune ocaml findlib menhir ];
+  buildInputs = [ which menhir ];
   propagatedBuildInputs = [ easy-format biniou yojson ];
 
-  buildPhase = "jbuilder build";
-  inherit (dune) installPhase;
-
   meta = with stdenv.lib; {
     homepage = https://github.com/mjambon/atd;
     description = "Syntax for cross-language type definitions";
diff --git a/pkgs/development/ocaml-modules/bigstringaf/default.nix b/pkgs/development/ocaml-modules/bigstringaf/default.nix
index fc9a5379b17..762e675d51c 100644
--- a/pkgs/development/ocaml-modules/bigstringaf/default.nix
+++ b/pkgs/development/ocaml-modules/bigstringaf/default.nix
@@ -1,32 +1,25 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest }:
+{ stdenv, fetchFromGitHub, buildDunePackage, alcotest }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "bigstringaf is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "bigstringaf";
   version = "0.3.0";
-  name = "ocaml${ocaml.version}-bigstringaf-${version}";
+
+  minimumOCamlVersion = "4.03";
 
   src = fetchFromGitHub {
     owner = "inhabitedtype";
-    repo = "bigstringaf";
+    repo = pname;
     rev = version;
     sha256 = "1yx6hv8rk0ldz1h6kk00rwg8abpfc376z00aifl9f5rn7xavpscs";
   };
 
-  buildInputs = [ ocaml findlib dune alcotest ];
-
+  buildInputs = [ alcotest ];
   doCheck = true;
-  checkPhase = "dune runtest";
-
-  inherit (dune) installPhase;
 
   meta = {
     description = "Bigstring intrinsics and fast blits based on memcpy/memmove";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/biniou/default.nix b/pkgs/development/ocaml-modules/biniou/default.nix
index 439fce3bfd5..8f1917d6873 100644
--- a/pkgs/development/ocaml-modules/biniou/default.nix
+++ b/pkgs/development/ocaml-modules/biniou/default.nix
@@ -1,28 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, easy-format }:
+{ stdenv, fetchFromGitHub, buildDunePackage, easy-format }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "biniou";
   version = "1.2.0";
-  name = "ocaml${ocaml.version}-biniou-${version}";
+
   src = fetchFromGitHub {
     owner = "mjambon";
-    repo = "biniou";
+    repo = pname;
     rev = "v${version}";
     sha256 = "0mjpgwyfq2b2izjw0flmlpvdjgqpq8shs89hxj1np2r50csr8dcb";
   };
 
-  buildInputs = [ ocaml findlib dune ];
-
   propagatedBuildInputs = [ easy-format ];
 
   postPatch = ''
    patchShebangs .
   '';
 
-  inherit (dune) installPhase;
-
   meta = {
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
     description = "Binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve";
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/ocaml-modules/bitstring/default.nix b/pkgs/development/ocaml-modules/bitstring/default.nix
index 93bcb3cb1e9..3d1a554b330 100644
--- a/pkgs/development/ocaml-modules/bitstring/default.nix
+++ b/pkgs/development/ocaml-modules/bitstring/default.nix
@@ -1,31 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
-, ppx_tools_versioned
-, ounit
-}:
+{ stdenv, fetchFromGitHub, buildDunePackage, ppx_tools_versioned, ounit }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-bitstring-${version}";
+buildDunePackage rec {
+  pname = "bitstring";
   version = "3.0.0";
+
   src = fetchFromGitHub {
     owner = "xguerin";
-    repo = "bitstring";
+    repo = pname;
     rev = "v${version}";
     sha256 = "0r49qax7as48jgknzaq6p9rbpmrvnmlic713wzz5bj60j5h0396f";
   };
 
-  buildInputs = [ ocaml findlib dune ppx_tools_versioned ounit ];
-
-  buildPhase = "jbuilder build";
-
+  buildInputs = [ ppx_tools_versioned ounit ];
   doCheck = true;
-  checkPhase = "jbuilder runtest";
-
-  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     description = "This library adds Erlang-style bitstrings and matching over bitstrings as a syntax extension and library for OCaml";
     homepage = https://github.com/xguerin/bitstring;
-    inherit (ocaml.meta) platforms;
     license = licenses.lgpl21Plus;
     maintainers = [ maintainers.maurer ];
   };
diff --git a/pkgs/development/ocaml-modules/camlimages/default.nix b/pkgs/development/ocaml-modules/camlimages/default.nix
index b5ef173c9ff..065c5a650b8 100644
--- a/pkgs/development/ocaml-modules/camlimages/default.nix
+++ b/pkgs/development/ocaml-modules/camlimages/default.nix
@@ -1,15 +1,16 @@
-{ stdenv, fetchzip, findlib, dune, ocaml, configurator, cppo, lablgtk }:
-stdenv.mkDerivation rec {
-  name = "camlimages-${version}";
+{ stdenv, fetchzip, buildDunePackage, configurator, cppo, lablgtk }:
+
+buildDunePackage rec {
+  pname = "camlimages";
   version = "5.0.0";
+
   src = fetchzip {
-    url = "https://bitbucket.org/camlspotter/camlimages/get/${version}.tar.gz";
+    url = "https://bitbucket.org/camlspotter/${pname}/get/${version}.tar.gz";
     sha256 = "00qvwxkfnhv93yi1iq7vy3p5lxyi9xigxcq464s4ii6bmp32d998";
   };
-  buildInputs = [ findlib dune ocaml configurator cppo lablgtk ];
-  buildPhase = "dune build -p camlimages";
-  inherit (dune) installPhase;
-  
+
+  buildInputs = [ configurator cppo lablgtk ];
+
   meta = with stdenv.lib; {
     branch = "5.0";
     homepage = https://bitbucket.org/camlspotter/camlimages;
diff --git a/pkgs/development/ocaml-modules/camomile/default.nix b/pkgs/development/ocaml-modules/camomile/default.nix
index 5e156776f86..f21e7643afe 100644
--- a/pkgs/development/ocaml-modules/camomile/default.nix
+++ b/pkgs/development/ocaml-modules/camomile/default.nix
@@ -1,24 +1,21 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, cppo }:
+{ stdenv, fetchFromGitHub, buildDunePackage, cppo }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "camomile";
 	version = "1.0.1";
-	name = "ocaml${ocaml.version}-camomile-${version}";
 
 	src = fetchFromGitHub {
 		owner = "yoriyuki";
-		repo = "camomile";
-		rev = "${version}";
+		repo = pname;
+		rev = version;
 		sha256 = "1pfxr9kzkpd5bsdqrpxasfxkawwkg4cpx3m1h6203sxi7qv1z3fn";
 	};
 
-	buildInputs = [ ocaml findlib dune cppo ];
+	buildInputs = [ cppo ];
 
 	configurePhase = "ocaml configure.ml --share $out/share/camomile";
 
-	inherit (dune) installPhase;
-
 	meta = {
-		inherit (ocaml.meta) platforms;
 		inherit (src.meta) homepage;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		license = stdenv.lib.licenses.lgpl21;
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 0508f2b74f7..0110ea0223c 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
+{ stdenv, fetchFromGitHub, buildDunePackage
 , ppx_fields_conv, ppx_sexp_conv, ppx_deriving
 , base64, fieldslib, jsonm, re, stringext, uri
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "cohttp";
 	version = "1.1.1";
-	name = "ocaml${ocaml.version}-cohttp-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
@@ -14,19 +14,14 @@ stdenv.mkDerivation rec {
 		sha256 = "1dzd6vy43b7p9xplzg2whylz5br59zxaqywa14b4l377f31gnwq1";
 	};
 
-	buildInputs = [ ocaml findlib dune jsonm ppx_fields_conv ppx_sexp_conv ];
+	buildInputs = [ jsonm ppx_fields_conv ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ ppx_deriving base64 fieldslib re stringext uri ];
 
-	buildPhase = "dune build -p cohttp";
-
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "HTTP(S) library for Lwt, Async and Mirage";
 		license = stdenv.lib.licenses.isc;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		inherit (src.meta) homepage;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
index 6489a583198..64a8f2416ad 100644
--- a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
+++ b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, dune, cohttp-lwt
+{ stdenv, buildDunePackage, cohttp-lwt
 , conduit-lwt-unix, ppx_sexp_conv
 , cmdliner, fmt, magic-mime
 }:
@@ -7,13 +7,11 @@ 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;
+buildDunePackage rec {
+	pname = "cohttp-lwt-unix";
+	inherit (cohttp-lwt) version src meta;
 
-	buildInputs = [ ocaml findlib dune cmdliner ppx_sexp_conv ];
+	buildInputs = [ cmdliner ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ];
-
-	buildPhase = "dune build -p cohttp-lwt-unix";
 }
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix
index 741df5b0614..37348c55262 100644
--- a/pkgs/development/ocaml-modules/cohttp/lwt.nix
+++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -1,16 +1,14 @@
-{ stdenv, ocaml, findlib, dune, cohttp, ocaml_lwt, uri, ppx_sexp_conv }:
+{ stdenv, buildDunePackage, cohttp, ocaml_lwt, 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;
+buildDunePackage rec {
+	pname = "cohttp-lwt";
+	inherit (cohttp) version src meta;
 
-	buildInputs = [ ocaml findlib dune uri ppx_sexp_conv ];
+	buildInputs = [ uri ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ cohttp ocaml_lwt ];
-
-	buildPhase = "dune build -p cohttp-lwt";
 }
diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix
index fdfd2bed1f1..39234e86ef1 100644
--- a/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/pkgs/development/ocaml-modules/conduit/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
+{ stdenv, fetchFromGitHub, buildDunePackage
 , ppx_sexp_conv
 , astring, ipaddr, uri
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "conduit";
 	version = "1.0.0";
-	name = "ocaml${ocaml.version}-conduit-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
@@ -14,18 +14,13 @@ stdenv.mkDerivation rec {
 		sha256 = "1ryigzh7sfif1mly624fpm87aw5h60n5wzdlrvqsf71qcpxc6iiz";
 	};
 
-	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
+	buildInputs = [ ppx_sexp_conv ];
 	propagatedBuildInputs = [ astring ipaddr uri ];
 
-	buildPhase = "dune build -p conduit";
-
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "Network connection library for TCP and SSL";
 		license = stdenv.lib.licenses.isc;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		inherit (src.meta) homepage;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
index b4357979de7..b6d2e24ec55 100644
--- a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
+++ b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, dune, conduit-lwt
+{ stdenv, buildDunePackage, conduit-lwt
 , logs, ppx_sexp_conv, lwt_ssl
 }:
 
@@ -6,13 +6,11 @@ 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;
+buildDunePackage rec {
+	pname = "conduit-lwt-unix";
+	inherit (conduit-lwt) version src meta;
 
-	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
+	buildInputs = [ ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ conduit-lwt logs lwt_ssl ];
-
-	buildPhase = "dune build -p conduit-lwt-unix";
 }
diff --git a/pkgs/development/ocaml-modules/conduit/lwt.nix b/pkgs/development/ocaml-modules/conduit/lwt.nix
index 69d7132a83a..560600e2fee 100644
--- a/pkgs/development/ocaml-modules/conduit/lwt.nix
+++ b/pkgs/development/ocaml-modules/conduit/lwt.nix
@@ -1,16 +1,14 @@
-{ stdenv, ocaml, findlib, dune, ppx_sexp_conv, conduit, ocaml_lwt }:
+{ stdenv, buildDunePackage, ppx_sexp_conv, conduit, ocaml_lwt }:
 
 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;
+buildDunePackage rec {
+	pname = "conduit-lwt";
+	inherit (conduit) version src meta;
 
-	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
+	buildInputs = [ ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ conduit ocaml_lwt ];
-
-	buildPhase = "dune build -p conduit-lwt";
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/default.nix b/pkgs/development/ocaml-modules/cstruct/default.nix
index 1a5a992f2be..c3941173bff 100644
--- a/pkgs/development/ocaml-modules/cstruct/default.nix
+++ b/pkgs/development/ocaml-modules/cstruct/default.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, ocaml, dune, findlib, sexplib, ocplib-endian }:
+{ stdenv, fetchurl, buildDunePackage, sexplib, ocplib-endian }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-cstruct-${version}";
+buildDunePackage rec {
+  pname = "cstruct";
   version = "3.1.1";
+
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-cstruct/releases/download/v${version}/cstruct-${version}.tbz";
     sha256 = "1x4jxsvd1lrfibnjdjrkfl7hqsc48rljnwbap6faanj9qhwwa6v2";
@@ -10,19 +11,12 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml dune findlib ];
-
   propagatedBuildInputs = [ sexplib ocplib-endian ];
 
-  buildPhase = "dune build -p cstruct";
-
-  inherit (dune) installPhase;
-
   meta = {
     description = "Access C-like structures directly from OCaml";
     license = stdenv.lib.licenses.isc;
     homepage = "https://github.com/mirage/ocaml-cstruct";
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/lwt.nix b/pkgs/development/ocaml-modules/cstruct/lwt.nix
index 065716e6852..367a7fa2a44 100644
--- a/pkgs/development/ocaml-modules/cstruct/lwt.nix
+++ b/pkgs/development/ocaml-modules/cstruct/lwt.nix
@@ -1,12 +1,10 @@
-{ stdenv, ocaml, cstruct, lwt }:
+{ buildDunePackage, cstruct, lwt }:
 
-assert stdenv.lib.versionAtLeast ocaml.version "4.02";
+buildDunePackage {
+	pname = "cstruct-lwt";
+	inherit (cstruct) version src unpackCmd meta;
 
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-cstruct-lwt-${version}";
-	inherit (cstruct) version src unpackCmd buildInputs installPhase meta;
+  minimumOCamlVersion = "4.02";
 
 	propagatedBuildInputs = [ cstruct lwt ];
-
-	buildPhase = "${cstruct.buildPhase}-lwt";
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/ppx.nix b/pkgs/development/ocaml-modules/cstruct/ppx.nix
index 1696e200750..837bca370cf 100644
--- a/pkgs/development/ocaml-modules/cstruct/ppx.nix
+++ b/pkgs/development/ocaml-modules/cstruct/ppx.nix
@@ -1,13 +1,11 @@
-{ stdenv, ocaml, cstruct, ppx_tools_versioned }:
+{ buildDunePackage, cstruct, ppx_tools_versioned }:
 
-assert stdenv.lib.versionAtLeast ocaml.version "4.02";
+buildDunePackage {
+	pname = "ppx_cstruct";
+	inherit (cstruct) version src unpackCmd meta;
 
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-ppx_cstruct-${version}";
-	inherit (cstruct) version src unpackCmd installPhase meta;
+  minimumOCamlVersion = "4.02";
 
-	buildInputs = cstruct.buildInputs ++ [ ppx_tools_versioned ];
+	buildInputs = [ ppx_tools_versioned ];
 	propagatedBuildInputs = [ cstruct ];
-
-	buildPhase = "dune build -p ppx_cstruct";
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/unix.nix b/pkgs/development/ocaml-modules/cstruct/unix.nix
index 2a614579fcc..6fb34ba7821 100644
--- a/pkgs/development/ocaml-modules/cstruct/unix.nix
+++ b/pkgs/development/ocaml-modules/cstruct/unix.nix
@@ -1,12 +1,10 @@
-{ stdenv, ocaml, cstruct }:
+{ buildDunePackage, cstruct }:
 
-assert stdenv.lib.versionAtLeast ocaml.version "4.02";
+buildDunePackage {
+	pname = "cstruct-unix";
+	inherit (cstruct) version src unpackCmd meta;
 
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-cstruct-unix-${version}";
-	inherit (cstruct) version src unpackCmd buildInputs installPhase meta;
+  minimumOCamlVersion = "4.02";
 
 	propagatedBuildInputs = [ cstruct ];
-
-	buildPhase = "${cstruct.buildPhase}-unix";
 }
diff --git a/pkgs/development/ocaml-modules/csv/default.nix b/pkgs/development/ocaml-modules/csv/default.nix
index 6c6f8a68f81..8b67200f32f 100644
--- a/pkgs/development/ocaml-modules/csv/default.nix
+++ b/pkgs/development/ocaml-modules/csv/default.nix
@@ -1,26 +1,20 @@
-{ stdenv, fetchurl, ocaml, findlib, dune }:
+{ stdenv, fetchurl, buildDunePackage }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "csv";
 	version = "2.1";
-	name = "ocaml${ocaml.version}-csv-${version}";
+
 	src = fetchurl {
-		url = "https://github.com/Chris00/ocaml-csv/releases/download/2.1/csv-2.1.tbz";
+		url = "https://github.com/Chris00/ocaml-${pname}/releases/download/${version}/csv-${version}.tbz";
 		sha256 = "0cgfb6cwhwy7ypc1i3jyfz6sdnykp75aqi6kk0g1a2d81yjwzbcg";
 	};
 
 	unpackCmd = "tar -xjf $src";
 
-	buildInputs = [ ocaml findlib dune ];
-
-	buildPhase = "dune build -p csv";
-
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "A pure OCaml library to read and write CSV files";
 		license = stdenv.lib.licenses.lgpl21;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		homepage = https://github.com/Chris00/ocaml-csv;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/doc-ock-html/default.nix b/pkgs/development/ocaml-modules/doc-ock-html/default.nix
index cb2756b0977..cd2e2761b50 100644
--- a/pkgs/development/ocaml-modules/doc-ock-html/default.nix
+++ b/pkgs/development/ocaml-modules/doc-ock-html/default.nix
@@ -1,27 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, doc-ock, tyxml, xmlm }:
+{ stdenv, fetchFromGitHub, buildDunePackage, doc-ock, tyxml, xmlm }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-doc-ock-html-${version}";
+buildDunePackage rec {
+  pname = "doc-ock-html";
   version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "ocaml-doc";
-    repo = "doc-ock-html";
+    repo = pname;
     rev = "v${version}";
     sha256 = "1y620h48qrplmcm78g7c78zibpkai4j3icwmnx95zb3r8xq8554y";
   };
 
-  buildInputs = [ ocaml findlib dune ];
-
   propagatedBuildInputs = [ doc-ock tyxml xmlm ];
 
-  inherit (dune) installPhase;
-
   meta = {
     description = "From doc-ock to HTML";
     license = stdenv.lib.licenses.isc;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
     inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/development/ocaml-modules/doc-ock-xml/default.nix b/pkgs/development/ocaml-modules/doc-ock-xml/default.nix
index 72e562cb5f3..cebf7707788 100644
--- a/pkgs/development/ocaml-modules/doc-ock-xml/default.nix
+++ b/pkgs/development/ocaml-modules/doc-ock-xml/default.nix
@@ -1,27 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, doc-ock, menhir, xmlm }:
+{ stdenv, fetchFromGitHub, buildDunePackage, doc-ock, menhir, xmlm }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-doc-ock-xml-${version}";
+buildDunePackage rec {
+  pname = "doc-ock-xml";
   version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "ocaml-doc";
-    repo = "doc-ock-xml";
+    repo = pname;
     rev = "v${version}";
     sha256 = "1s27ri7vj9ixi5p5ixg6g6invk96807bvxbqjrr1dm8sxgl1nd20";
   };
 
-  buildInputs = [ ocaml findlib dune ];
-
   propagatedBuildInputs = [ doc-ock menhir xmlm ];
 
-  inherit (dune) installPhase;
-
   meta = {
     description = "XML printer and parser for Doc-Ock";
     license = stdenv.lib.licenses.isc;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
     inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/development/ocaml-modules/doc-ock/default.nix b/pkgs/development/ocaml-modules/doc-ock/default.nix
index c158f08b068..ff42c93e5c1 100644
--- a/pkgs/development/ocaml-modules/doc-ock/default.nix
+++ b/pkgs/development/ocaml-modules/doc-ock/default.nix
@@ -1,27 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, octavius, cppo }:
+{ stdenv, fetchFromGitHub, buildDunePackage, octavius, cppo }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-doc-ock-${version}";
+buildDunePackage rec {
+  pname = "doc-ock";
   version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "ocaml-doc";
-    repo = "doc-ock";
+    repo = pname;
     rev = "v${version}";
     sha256 = "090vprm12jrl55yllk1hdzbsqyr107yjs2qnc49yahdhvnr4h5b7";
   };
 
-  buildInputs = [ ocaml findlib dune cppo ];
+  buildInputs = [ cppo ];
 
   propagatedBuildInputs = [ octavius ];
 
-  inherit (dune) installPhase;
-
   meta = {
     description = "Extract documentation from OCaml files";
     license = stdenv.lib.licenses.isc;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
     inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/development/ocaml-modules/dtoa/default.nix b/pkgs/development/ocaml-modules/dtoa/default.nix
index a76e0c61450..0e776f8e0c7 100644
--- a/pkgs/development/ocaml-modules/dtoa/default.nix
+++ b/pkgs/development/ocaml-modules/dtoa/default.nix
@@ -1,12 +1,11 @@
-{ stdenv, fetchurl, ocaml, findlib, dune }:
+{ stdenv, fetchurl, buildDunePackage }:
 
-assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
   pname = "dtoa";
-  name = "ocaml-${pname}-${version}";
   version = "0.3.1";
 
+  minimumOCamlVersion = "4.01";
+
   src = fetchurl {
     url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
     sha256 = "0rzysj07z2q6gk0yhjxnjnba01vmdb9x32wwna10qk3rrb8r2pnn";
@@ -14,19 +13,12 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib dune ];
-
-  buildPhase = "dune build -p dtoa";
-
-  inherit (dune) installPhase;
-
   hardeningDisable = stdenv.lib.optional stdenv.isDarwin "strictoverflow";
 
   meta = with stdenv.lib; {
     homepage = https://github.com/flowtype/ocaml-dtoa;
     description = "Converts OCaml floats into strings (doubles to ascii, \"d to a\"), using the efficient Grisu3 algorithm.";
     license = licenses.mit;
-    platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.eqyiel ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix
index d38cf51c153..fc1936c2b47 100644
--- a/pkgs/development/ocaml-modules/ezjsonm/default.nix
+++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix
@@ -1,27 +1,20 @@
-{ stdenv, fetchzip, ocaml, findlib, dune, jsonm, hex, sexplib }:
+{ stdenv, fetchzip, buildDunePackage, jsonm, hex, sexplib }:
 
-let version = "0.6.0"; in
-
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-ezjsonm-${version}";
+buildDunePackage rec {
+  pname = "ezjsonm";
+  version = "0.6.0";
 
   src = fetchzip {
-    url = "https://github.com/mirage/ezjsonm/archive/${version}.tar.gz";
+    url = "https://github.com/mirage/${pname}/archive/${version}.tar.gz";
     sha256 = "18g64lhai0bz65b9fil12vlgfpwa9b5apj7x6d7n4zzm18qfazvj";
   };
 
-  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ jsonm hex sexplib ];
 
-  buildPhase = "dune build -p ezjsonm";
-
-  inherit (dune) installPhase;
-
   meta = {
     description = "An easy interface on top of the Jsonm library";
     homepage = https://github.com/mirage/ezjsonm;
     license = stdenv.lib.licenses.isc;
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
-    platforms = ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ezxmlm/default.nix b/pkgs/development/ocaml-modules/ezxmlm/default.nix
index d40c47dd7a4..1740bd77fdb 100644
--- a/pkgs/development/ocaml-modules/ezxmlm/default.nix
+++ b/pkgs/development/ocaml-modules/ezxmlm/default.nix
@@ -1,24 +1,18 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, xmlm }:
+{ stdenv, fetchFromGitHub, buildDunePackage, xmlm }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "ezxmlm";
   version = "1.0.2";
-  name = "ocaml${ocaml.version}-ezxmlm-${version}";
 
   src = fetchFromGitHub {
     owner = "avsm";
-    repo = "ezxmlm";
+    repo = pname;
     rev = "v${version}";
     sha256 = "1dgr61f0hymywikn67inq908x5adrzl3fjx3v14l9k46x7kkacl9";
   };
 
   propagatedBuildInputs = [ xmlm ];
 
-  buildInputs = [ ocaml findlib dune ];
-
-  buildFlags = "build";
-
-  inherit (dune) installPhase;
-
   meta = with stdenv.lib; {
     description = "Combinators to use with xmlm for parsing and selection";
     longDescription = ''
@@ -34,7 +28,6 @@ stdenv.mkDerivation rec {
     '';
     maintainers = [ maintainers.carlosdagos ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
     license = licenses.isc;
   };
 }
diff --git a/pkgs/development/ocaml-modules/faraday/default.nix b/pkgs/development/ocaml-modules/faraday/default.nix
index 6af808654f5..34c8fcbfcbc 100644
--- a/pkgs/development/ocaml-modules/faraday/default.nix
+++ b/pkgs/development/ocaml-modules/faraday/default.nix
@@ -1,34 +1,25 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest }:
+{ stdenv, fetchFromGitHub, buildDunePackage, alcotest }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "faraday is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-faraday-${version}";
+buildDunePackage rec {
+  pname = "faraday";
   version = "0.5.0";
 
+  minimumOCamlVersion = "4.02";
+
   src = fetchFromGitHub {
     owner = "inhabitedtype";
-    repo = "faraday";
+    repo = pname;
     rev = version;
     sha256 = "1kql0il1frsbx6rvwqd7ahi4m14ik6la5an6c2w4x7k00ndm4d7n";
   };
 
-  buildInputs = [ ocaml findlib dune alcotest ];
-
-  buildPhase = "dune build -p faraday";
-
+  buildInputs = [ alcotest ];
   doCheck = true;
-  checkPhase = "jbuilder runtest";
-
-  inherit (dune) installPhase;
 
   meta = {
     description = "Serialization library built for speed and memory efficiency";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/gapi-ocaml/default.nix b/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
index bf7418ab27e..25f5e35492b 100644
--- a/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
+++ b/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
@@ -1,28 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, ocurl, cryptokit, ocaml_extlib, yojson, ocamlnet, xmlm }:
+{ stdenv, fetchFromGitHub, buildDunePackage, ocurl, cryptokit, ocaml_extlib, yojson, ocamlnet, xmlm }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "gapi-ocaml is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  name = "gapi-ocaml-${version}";
+buildDunePackage rec {
+  pname = "gapi-ocaml";
   version = "0.3.6";
+
+  minimumOCamlVersion = "4.02";
+
   src = fetchFromGitHub {
     owner = "astrada";
-    repo = "gapi-ocaml";
+    repo = pname;
     rev = "v${version}";
     sha256 = "0qgsy51bhkpfgl5rdnjw4bqs5fbh2w4vwrfbl8y3lh1wrqmnwci4";
   };
-  buildInputs = [ ocaml dune findlib ];
-  propagatedBuildInputs = [ ocurl cryptokit ocaml_extlib yojson ocamlnet xmlm ];
 
-  inherit (dune) installPhase;
+  propagatedBuildInputs = [ ocurl cryptokit ocaml_extlib yojson ocamlnet xmlm ];
 
   meta = {
     description = "OCaml client for google services";
     homepage = http://gapi-ocaml.forge.ocamlcore.org;
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ bennofs ];
-    platforms = ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/development/ocaml-modules/git-http/default.nix b/pkgs/development/ocaml-modules/git-http/default.nix
index c6abb0171b0..0869ae659cc 100644
--- a/pkgs/development/ocaml-modules/git-http/default.nix
+++ b/pkgs/development/ocaml-modules/git-http/default.nix
@@ -1,24 +1,15 @@
-{ stdenv, ocaml, findlib, dune, git, cohttp-lwt
-, alcotest, mtime, nocrypto
-}:
+{ buildDunePackage, git, cohttp-lwt, alcotest, mtime, nocrypto }:
 
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-git-http-${version}";
+buildDunePackage rec {
+	pname = "git-http";
 	inherit (git) version src;
 
-	buildInputs = [ ocaml findlib dune alcotest mtime nocrypto ];
-
+	buildInputs = [ alcotest mtime nocrypto ];
 	propagatedBuildInputs = [ git cohttp-lwt ];
-
-	buildPhase = "dune build -p git-http";
-
-	inherit (dune) installPhase;
-
 	doCheck = true;
-	checkPhase = "dune runtest -p git-http";
 
 	meta = {
 		description = "Client implementation of the “Smart” HTTP Git protocol in pure OCaml";
-		inherit (git.meta) homepage license maintainers platforms;
+		inherit (git.meta) homepage license maintainers;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/git-unix/default.nix b/pkgs/development/ocaml-modules/git-unix/default.nix
index 7a796ca089d..9c8a7c48255 100644
--- a/pkgs/development/ocaml-modules/git-unix/default.nix
+++ b/pkgs/development/ocaml-modules/git-unix/default.nix
@@ -1,22 +1,14 @@
-{ stdenv, ocaml, findlib, dune, git-http
-, cohttp-lwt-unix
-, tls, cmdliner, mtime
-}:
+{ buildDunePackage, git-http, cohttp-lwt-unix, tls, cmdliner, mtime }:
 
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-git-unix-${version}";
+buildDunePackage rec {
+	pname = "git-unix";
 	inherit (git-http) version src;
 
-	buildInputs = [ ocaml findlib dune cmdliner mtime ];
-
+	buildInputs = [ cmdliner mtime ];
 	propagatedBuildInputs = [ cohttp-lwt-unix git-http tls ];
 
-	buildPhase = "dune build -p git-unix";
-
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "Unix backend for the Git protocol(s)";
-		inherit (git-http.meta) homepage license maintainers platforms;
+		inherit (git-http.meta) homepage license maintainers;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/git/default.nix b/pkgs/development/ocaml-modules/git/default.nix
index 777184ed2e9..944195fd0a3 100644
--- a/pkgs/development/ocaml-modules/git/default.nix
+++ b/pkgs/development/ocaml-modules/git/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
+{ stdenv, fetchFromGitHub, buildDunePackage
 , astring, decompress, fmt, hex, logs, mstruct, ocaml_lwt, ocamlgraph, uri
 , alcotest, mtime, nocrypto
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "git";
 	version = "1.11.5";
-	name = "ocaml${ocaml.version}-git-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
@@ -14,22 +14,14 @@ stdenv.mkDerivation rec {
 		sha256 = "0r1bxpxjjnl9hh8xbabsxl7svzvd19hfy73a2y1m4kljmw64dpfh";
 	};
 
-	buildInputs = [ ocaml findlib dune alcotest mtime nocrypto ];
-
+	buildInputs = [ alcotest mtime nocrypto ];
 	propagatedBuildInputs = [ astring decompress fmt hex logs mstruct ocaml_lwt ocamlgraph uri ];
-
-	buildPhase = "dune build -p git";
-
-	inherit (dune) installPhase;
-
 	doCheck = true;
-	checkPhase = "dune runtest -p git";
 
 	meta = {
 		description = "Git format and protocol in pure OCaml";
 		license = stdenv.lib.licenses.isc;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		inherit (src.meta) homepage;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/hex/default.nix b/pkgs/development/ocaml-modules/hex/default.nix
index 71a9ebf9ad5..0131b035970 100644
--- a/pkgs/development/ocaml-modules/hex/default.nix
+++ b/pkgs/development/ocaml-modules/hex/default.nix
@@ -1,34 +1,25 @@
-{ stdenv, fetchurl, ocaml, findlib, dune, cstruct }:
+{ stdenv, fetchurl, buildDunePackage, cstruct }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "hex is not available for OCaml ${ocaml.version}"
-else
+buildDunePackage rec {
+  pname = "hex";
+  version = "1.2.0";
 
-let version = "1.2.0"; in
-
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-hex-${version}";
+  minimumOCamlVersion = "4.02";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-hex/releases/download/v1.2.0/hex-1.2.0.tbz";
+    url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-${version}.tbz";
     sha256 = "17hqf7z5afp2z2c55fk5myxkm7cm74259rqm94hcxkqlpdaqhm8h";
   };
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ cstruct ];
-
-  buildPhase = "dune build -p hex";
   doCheck = true;
-  checkPhase = "jbuilder runtest";
-  inherit (dune) installPhase;
 
   meta = {
     description = "Mininal OCaml library providing hexadecimal converters";
     homepage = https://github.com/mirage/ocaml-hex;
     license = stdenv.lib.licenses.isc;
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
-    platforms = ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/development/ocaml-modules/httpaf/default.nix b/pkgs/development/ocaml-modules/httpaf/default.nix
index e8638e4cf18..bec4f947ce3 100644
--- a/pkgs/development/ocaml-modules/httpaf/default.nix
+++ b/pkgs/development/ocaml-modules/httpaf/default.nix
@@ -1,33 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
-, angstrom, faraday, alcotest
-}:
+{ stdenv, fetchFromGitHub, buildDunePackage, angstrom, faraday, alcotest }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "httpaf";
   version = "0.4.1";
-  name = "ocaml${ocaml.version}-httpaf-${version}";
 
   src = fetchFromGitHub {
     owner = "inhabitedtype";
-    repo = "httpaf";
+    repo = pname;
     rev = version;
     sha256 = "0i2r004ihj00hd97475y8nhjqjln58xx087zcjl0dfp0n7q80517";
   };
 
-  buildInputs = [ ocaml findlib dune alcotest ];
+  buildInputs = [ alcotest ];
   propagatedBuildInputs = [ angstrom faraday ];
-
-  buildPhase = "dune build -p httpaf";
-
   doCheck = true;
-  checkPhase = "dune runtest -p httpaf";
-
-  inherit (dune) installPhase;
 
   meta = {
     description = "A high-performance, memory-efficient, and scalable web server for OCaml";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/io-page/default.nix b/pkgs/development/ocaml-modules/io-page/default.nix
index 7c3d3a20c4d..e0f02456962 100644
--- a/pkgs/development/ocaml-modules/io-page/default.nix
+++ b/pkgs/development/ocaml-modules/io-page/default.nix
@@ -1,23 +1,19 @@
-{ stdenv, fetchzip, ocaml, findlib, dune, configurator, cstruct }:
+{ stdenv, fetchzip, buildDunePackage, configurator, cstruct }:
 
-let version = "2.0.1"; in
-
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-io-page-${version}";
+buildDunePackage rec {
+  pname = "io-page";
+  version = "2.0.1";
 
   src = fetchzip {
-    url = "https://github.com/mirage/io-page/archive/${version}.tar.gz";
+    url = "https://github.com/mirage/${pname}/archive/${version}.tar.gz";
     sha256 = "1rw04dwrlx5hah5dkjf7d63iff82j9cifr8ifjis5pdwhgwcff8i";
   };
 
-  buildInputs = [ ocaml findlib dune configurator ];
+  buildInputs = [ configurator ];
   propagatedBuildInputs = [ cstruct ];
 
-  inherit (dune) installPhase;
-
   meta = {
     homepage = https://github.com/mirage/io-page;
-    inherit (ocaml.meta) platforms;
     license = stdenv.lib.licenses.isc;
     description = "IO memory page library for Mirage backends";
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
diff --git a/pkgs/development/ocaml-modules/ipaddr/default.nix b/pkgs/development/ocaml-modules/ipaddr/default.nix
index 9a12fb44fff..3d5959fe64e 100644
--- a/pkgs/development/ocaml-modules/ipaddr/default.nix
+++ b/pkgs/development/ocaml-modules/ipaddr/default.nix
@@ -1,21 +1,16 @@
-{ stdenv, fetchurl, ocaml, ocamlbuild, findlib
-, dune, sexplib, ppx_sexp_conv
-}:
+{ stdenv, fetchurl, buildDunePackage, sexplib, ppx_sexp_conv }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-ipaddr-${version}";
+buildDunePackage rec {
+  pname = "ipaddr";
   version = "2.8.0";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-ipaddr/archive/${version}.tar.gz";
+    url = "https://github.com/mirage/ocaml-${pname}/archive/${version}.tar.gz";
     sha256 = "1amb1pbm9ybpxy6190qygpj6nmbzzs2r6vx4xh5r6v89szx9rfxw";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild dune ];
   propagatedBuildInputs = [ ppx_sexp_conv sexplib ];
 
-  inherit (dune) installPhase;
-
   meta = with stdenv.lib; {
     homepage = https://github.com/mirage/ocaml-ipaddr;
     description = "A library for manipulation of IP (and MAC) address representations ";
diff --git a/pkgs/development/ocaml-modules/janestreet/default.nix b/pkgs/development/ocaml-modules/janestreet/default.nix
index 040a4ca618b..504e83734d8 100644
--- a/pkgs/development/ocaml-modules/janestreet/default.nix
+++ b/pkgs/development/ocaml-modules/janestreet/default.nix
@@ -7,26 +7,26 @@
 rec {
 
   ocaml-compiler-libs = janePackage {
-    name = "ocaml-compiler-libs";
+    pname = "ocaml-compiler-libs";
     hash = "03jds7bszh8wwpfwxb3dg0gyr1j1872wxwx1xqhry5ir0i84bg0s";
     meta.description = "OCaml compiler libraries repackaged";
   };
 
   sexplib0 = janePackage {
-    name = "sexplib0";
+    pname = "sexplib0";
     meta.description = "Library containing the definition of S-expressions and some base converters";
     hash = "07v3ggyss7xhfv14bjk1n87sr42iqwj4cgjiv2lcdfkqk49i2bmi";
   };
 
   parsexp = janePackage {
-    name = "parsexp";
+    pname = "parsexp";
     hash = "1nyq23s5igd8cf3n4qxprjvhbmb6ighb3fy5mw7hxl0mdgsw5fvz";
     propagatedBuildInputs = [ sexplib0 ];
     meta.description = "S-expression parsing library";
   };
 
   sexplib = janePackage {
-    name = "sexplib";
+    pname = "sexplib";
     meta.description = "Library for serializing OCaml values to and from S-expressions";
     hash = "1qfl0m04rpcjvc4yw1hzh6r16jpwmap0sa9ax6zjji67dz4szpyb";
     propagatedBuildInputs = [ num parsexp ];
@@ -34,28 +34,28 @@ rec {
 
   base = janePackage {
     version = "0.11.1";
-    name = "base";
+    pname = "base";
     hash = "0j6xb4265jr41vw4fjzak6yr8s30qrnzapnc6rl1dxy8bjai0nir";
     propagatedBuildInputs = [ sexplib0 ];
     meta.description = "Full standard library replacement for OCaml";
   };
 
   stdio = janePackage {
-    name = "stdio";
+    pname = "stdio";
     hash = "1facajqhvq34g2wrg368y0ajxd6lrj5b3lyzyj0jhdmraxajjcwn";
     propagatedBuildInputs = [ base ];
     meta.description = "Standard IO library for OCaml";
   };
 
   configurator = janePackage {
-    name = "configurator";
+    pname = "configurator";
     hash = "0h686630cscav7pil8c3w0gbh6rj4b41dvbnwmicmlkc746q5bfk";
     propagatedBuildInputs = [ stdio ];
     meta.description = "Helper library for gathering system configuration";
   };
 
   ppx_compare = janePackage {
-    name = "ppx_compare";
+    pname = "ppx_compare";
     version = "0.11.1";
     hash = "06bq4m1bsm4jlx4g7wh5m99qky7xm4c2g52kaz6pv25hdn5agi2m";
     buildInputs = [ ppxlib ];
@@ -64,7 +64,7 @@ rec {
   };
 
   ppx_sexp_conv = janePackage {
-    name = "ppx_sexp_conv";
+    pname = "ppx_sexp_conv";
     version = "0.11.2";
     hash = "0pqwnqy1xp309wvdcaax4lg02yk64lq2w03mbgfvf6ps5ry4gis9";
     propagatedBuildInputs = [ sexplib0 ppxlib ppx_deriving ];
@@ -72,7 +72,7 @@ rec {
   };
 
   variantslib = janePackage {
-    name = "variantslib";
+    pname = "variantslib";
     hash = "0hbsk34ghc28h8pzbma923ma2bgnz8lzrgcqqx9bzg161jl4s4r3";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ base ];
@@ -80,7 +80,7 @@ rec {
   };
 
   ppx_variants_conv = janePackage {
-    name = "ppx_variants_conv";
+    pname = "ppx_variants_conv";
     version = "0.11.1";
     hash = "1yc0gsds5m2nv39zga8nnrca2n75rkqy5dz4xj1635ybz20hhbjd";
     buildInputs = [ ppxlib ];
@@ -89,48 +89,48 @@ rec {
   };
 
   fieldslib = janePackage {
-    name = "fieldslib";
+    pname = "fieldslib";
     hash = "1yvjvfax56lmn2lxbykcmhgmxypws1vp9lhnyb8bhbavsv8yc6da";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "OCaml record fields as first class values";
   };
 
   ppx_fields_conv = janePackage {
-    name = "ppx_fields_conv";
+    pname = "ppx_fields_conv";
     hash = "1bb9cmn4js7p3qh8skzyik1pcz6sj1k4xkhf12fg1bjmb5fd0jx1";
     propagatedBuildInputs = [ fieldslib ];
     meta.description = "Generation of accessor and iteration functions for OCaml records";
   };
 
   ppx_custom_printf = janePackage {
-    name = "ppx_custom_printf";
+    pname = "ppx_custom_printf";
     hash = "1dvjzvaxhx53jqwrrlxdckwl1azrhs9kvwb48mhgd0jnz65ny726";
     propagatedBuildInputs = [ ppx_sexp_conv ];
     meta.description = "Printf-style format-strings for user-defined string conversion";
   };
 
   bin_prot = janePackage {
-    name = "bin_prot";
+    pname = "bin_prot";
     hash = "1mgbyzsr8h0y4s4j9dv7hsdrxyzhhjww5khwg2spi2my7ia95m0l";
     propagatedBuildInputs = [ ppx_compare ppx_custom_printf ppx_fields_conv ppx_variants_conv ];
     meta.description = "Binary protocol generator";
   };
 
   jane-street-headers = janePackage {
-    name = "jane-street-headers";
+    pname = "jane-street-headers";
     hash = "0kij4c7qxrja787f3sm3z6mzr322486h2djrlyhnl66vp8hrv8si";
     meta.description = "Jane Street header files";
   };
 
   ppx_here = janePackage {
-    name = "ppx_here";
+    pname = "ppx_here";
     hash = "04njv8s4n54x9rg0012ymd6y6lrnqprnh0f0f6s0jcp79q7mv43i";
     buildInputs = [ ppxlib ];
     meta.description = "Expands [%here] into its location";
   };
 
   ppx_assert = janePackage {
-    name = "ppx_assert";
+    pname = "ppx_assert";
     hash = "0qbdrl0rj0midnb6sdyaz00s0d4nb8zrrdf565lcdsi1rbnyrzan";
     buildInputs = [ ppx_here ];
     propagatedBuildInputs = [ ppx_compare ppx_sexp_conv ];
@@ -139,14 +139,14 @@ rec {
 
   ppx_hash = janePackage {
     version = "0.11.1";
-    name = "ppx_hash";
+    pname = "ppx_hash";
     hash = "1p0ic6aijxlrdggpmycj12q3cy9xksbq2vq727215maz4snvlf5p";
     propagatedBuildInputs = [ ppx_compare ppx_sexp_conv ];
     meta.description = "A ppx rewriter that generates hash functions from type expressions and definitions";
   };
 
   ppx_inline_test = janePackage {
-    name = "ppx_inline_test";
+    pname = "ppx_inline_test";
     hash = "11n94fz1asjf5vqdgriv0pvsa5lbfpqcyk525c7816w23vskcvq6";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ base ];
@@ -154,7 +154,7 @@ rec {
   };
 
   ppx_sexp_message = janePackage {
-    name = "ppx_sexp_message";
+    pname = "ppx_sexp_message";
     hash = "0d94pf0mrmyp905ncgj4w6cc6zpm4nlib6nclslhgs89pxpzg6a0";
     buildInputs = [ ppx_here ];
     propagatedBuildInputs = [ ppx_sexp_conv ];
@@ -162,7 +162,7 @@ rec {
   };
 
   typerep = janePackage {
-    name = "typerep";
+    pname = "typerep";
     hash = "00j4by75fl9niqvlpiyw6ymlmlmgfzysm8w25cj5wsfsh4yrgr74";
     propagatedBuildInputs = [ base ];
     meta.description = "Runtime types for OCaml";
@@ -170,7 +170,7 @@ rec {
 
   ppx_typerep_conv = janePackage {
     version = "0.11.1";
-    name = "ppx_typerep_conv";
+    pname = "ppx_typerep_conv";
     hash = "0a13dpfrrg0rsm8qni1bh7pqcda30l70z8r6yzi5a64bmwk7g5ah";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ ppx_deriving typerep ];
@@ -178,7 +178,7 @@ rec {
   };
 
   ppx_js_style = janePackage {
-    name = "ppx_js_style";
+    pname = "ppx_js_style";
     hash = "1cwqyrkykc8wi60grbid1w072fcvf7k0hd387jz7mxfw44qyb85g";
     propagatedBuildInputs = [ ppxlib octavius ];
     meta.description = "Code style checker for Jane Street Packages";
@@ -186,7 +186,7 @@ rec {
 
   ppx_enumerate = janePackage {
     version = "0.11.1";
-    name = "ppx_enumerate";
+    pname = "ppx_enumerate";
     hash = "0spx9k1v7vjjb6sigbfs69yndgq76v114jhxvzjmffw7q989cyhr";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ ppx_deriving ];
@@ -194,14 +194,14 @@ rec {
   };
 
   ppx_base = janePackage {
-    name = "ppx_base";
+    pname = "ppx_base";
     hash = "079caqjbxk1d33hy69017n3dwslqy52alvzjddwpdjb04vjadlk6";
     propagatedBuildInputs = [ ppx_compare ppx_enumerate ppx_hash ppx_js_style ];
     meta.description = "Base set of ppx rewriters";
   };
 
   ppx_bench = janePackage {
-    name = "ppx_bench";
+    pname = "ppx_bench";
     hash = "0z98r6y4lpj6dy265m771ylx126hq3v1zjsk74yqvpwwd63gx3jz";
     buildInputs = [ ppxlib ppx_inline_test ];
     meta.description = "Syntax extension for writing in-line benchmarks in OCaml code";
@@ -209,7 +209,7 @@ rec {
 
   ppx_bin_prot = janePackage {
     version = "0.11.1";
-    name = "ppx_bin_prot";
+    pname = "ppx_bin_prot";
     hash = "1h60i75bzvhna1axyn662gyrzhh441l79vl142d235i5x31dmnkz";
     buildInputs = [ ppxlib ppx_here ];
     propagatedBuildInputs = [ bin_prot ];
@@ -217,7 +217,7 @@ rec {
   };
 
   ppx_expect = janePackage {
-    name = "ppx_expect";
+    pname = "ppx_expect";
     hash = "1g0r67vfw9jr75pybiw4ysfiswlzyfpbj0gl91rx62gqdhjh1pga";
     buildInputs = [ ppx_assert ppx_custom_printf ppx_fields_conv ppx_here ppx_variants_conv re ];
     propagatedBuildInputs = [ fieldslib ppx_compare ppx_inline_test ppx_sexp_conv ];
@@ -225,21 +225,21 @@ rec {
   };
 
   ppx_fail = janePackage {
-    name = "ppx_fail";
+    pname = "ppx_fail";
     hash = "0d0xadcl7mhp81kspcd2b0nh75h34w5a6s6j9qskjjbjif87wiix";
     buildInputs = [ ppxlib ppx_here ];
     meta.description = "Add location to calls to failwiths";
   };
 
   ppx_let = janePackage {
-    name = "ppx_let";
+    pname = "ppx_let";
     hash = "1ckzwljlb78cdf6xxd24nddnmsihvjrnq75r1b255aj3xgkzsygx";
     buildInputs = [ ppxlib ];
     meta.description = "Monadic let-bindings";
   };
 
   ppx_optcomp = janePackage {
-    name = "ppx_optcomp";
+    pname = "ppx_optcomp";
     hash = "1rahkjq6vpffs7wdz1crgbxkdnlfkj1i3j12c2andy4fhj49glcm";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ ppx_deriving ];
@@ -247,21 +247,21 @@ rec {
   };
 
   ppx_optional = janePackage {
-    name = "ppx_optional";
+    pname = "ppx_optional";
     hash = "0aw3hvrsdjpw4ik7rf15ghak31vhdr1lgpphr18mj76rnlrhirmx";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Pattern matching on flat options";
   };
 
   ppx_pipebang = janePackage {
-    name = "ppx_pipebang";
+    pname = "ppx_pipebang";
     hash = "0smgq587amlr3hivbbg153p83dj37w30cssp9cffc0v8kg84lfhr";
     buildInputs = [ ppxlib ];
     meta.description = "A ppx rewriter that inlines reverse application operators |> and |!";
   };
 
   ppx_sexp_value = janePackage {
-    name = "ppx_sexp_value";
+    pname = "ppx_sexp_value";
     hash = "107zwb580nrmc0l03dl3y3hf12s3c1vv8b8mz6sa4k5afp3s9nkl";
     buildInputs = [ ppx_here ];
     propagatedBuildInputs = [ ppx_sexp_conv ];
@@ -269,7 +269,7 @@ rec {
   };
 
   ppx_jane = janePackage {
-    name = "ppx_jane";
+    pname = "ppx_jane";
     hash = "0l1p6llaa60mrc5p9400cqv9yy6h76x5wfq3z1cx5xawy0yz4vlb";
     buildInputs = [ ppxlib ];
     propagatedBuildInputs = [ ppx_assert ppx_base ppx_bench ppx_bin_prot ppx_expect ppx_fail ppx_here ppx_let ppx_optcomp ppx_optional ppx_pipebang ppx_sexp_message ppx_sexp_value ppx_typerep_conv ];
@@ -277,7 +277,7 @@ rec {
   };
 
   splittable_random = janePackage {
-    name = "splittable_random";
+    pname = "splittable_random";
     hash = "1yrvpm6g62f8k6ihccxhfxpvmxbqxhi7p790a8jkdmyfdd1l6z73";
     propagatedBuildInputs = [ ppx_jane ];
     meta.description = "PRNG that can be split into independent streams";
@@ -285,7 +285,7 @@ rec {
 
   core_kernel = janePackage {
     version = "0.11.1";
-    name = "core_kernel";
+    pname = "core_kernel";
     hash = "1dg7ygy7i64c5gaakb1cp1b26p9ks81vbxmb8fd7jff2q60j2z2g";
     propagatedBuildInputs = [ configurator jane-street-headers sexplib splittable_random ];
     meta.description = "Jane Street's standard library overlay (kernel)";
@@ -293,35 +293,35 @@ rec {
 
   spawn = janePackage {
     version = "0.12.0";
-    name = "spawn";
+    pname = "spawn";
     hash = "0amgj7g9sjlbjivn1mg7yjdmxd21hgp4a0ak2zrm95dmm4gi846i";
     meta.description = "Spawning sub-processes";
   };
 
   core = janePackage {
     version = "0.11.2";
-    name = "core";
+    pname = "core";
     hash = "0vpsvd75lxb09il2rnzyib9mlr51v1hzqdc9fdxgx353pb5agh8a";
     propagatedBuildInputs = [ core_kernel spawn ];
     meta.description = "Jane Street's standard library overlay";
   };
 
   textutils_kernel = janePackage {
-    name = "textutils_kernel";
+    pname = "textutils_kernel";
     hash = "0s1ps7h54vgl76pll3y5qa1bw8f4h8wxc8mg8jq6bz8vxvl0dfv4";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "The subset of textutils using only core_kernel and working in javascript";
   };
 
   textutils = janePackage {
-    name = "textutils";
+    pname = "textutils";
     hash = "1jmhpaihnndf4pr8xsk7ws70n4mvv34ry0ggqqpfs3wb2vkcdg6j";
     propagatedBuildInputs = [ core textutils_kernel ];
     meta.description = "Text output utilities";
   };
 
   re2 = janePackage {
-    name = "re2";
+    pname = "re2";
     hash = "0bl65d0nmvr7k1mkkcc4aai86l5qzgn1xxwmszshpwhaz87cqghd";
     propagatedBuildInputs = [ core_kernel ];
     meta = {
@@ -331,7 +331,7 @@ rec {
   };
 
   core_extended = janePackage {
-    name = "core_extended";
+    pname = "core_extended";
     hash = "1fvnr6zkpbl48dl7nn3j1dpsrr6bi00iqh282wg5lgdhcsjbc0dy";
     propagatedBuildInputs = [ core re re2 textutils ];
     postPatch = ''
@@ -342,28 +342,28 @@ rec {
 
   async_kernel = janePackage {
     version = "0.11.1";
-    name = "async_kernel";
+    pname = "async_kernel";
     hash = "1ssv0gqbdns6by1wdjrrs35cj1c1n1qcfkxs8hj04b7x89wzvf1q";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Jane Street Capital's asynchronous execution library (core)";
   };
 
   protocol_version_header = janePackage {
-    name = "protocol_version_header";
+    pname = "protocol_version_header";
     hash = "159qmkb0dsfmr1lv2ly50aqszpm24bvrm3sw07n2zhkxgy6q613z";
     propagatedBuildInputs = [ core_kernel ocaml-migrate-parsetree ];
     meta.description = "Protocol aware version negotiation";
   };
 
   async_rpc_kernel = janePackage {
-    name = "async_rpc_kernel";
+    pname = "async_rpc_kernel";
     hash = "0wl7kp30qxkalk91q5pja9agsvvmdjvb2q7s3m79dlvwwi11l33y";
     propagatedBuildInputs = [ core_kernel async_kernel protocol_version_header ];
     meta.description = "Platform-independent core of Async RPC library";
   };
 
   async_unix = janePackage {
-    name = "async_unix";
+    pname = "async_unix";
     hash = "1y5za5fdh0x82zdjigxci9zm9jnpfd2lfgpjcq4rih3s28f16sf7";
     propagatedBuildInputs = [ core async_kernel ];
     meta.description = "Jane Street Capital's asynchronous execution library (unix)";
@@ -371,91 +371,91 @@ rec {
 
   async_extra = janePackage {
     version = "0.11.1";
-    name = "async_extra";
+    pname = "async_extra";
     hash = "0dmplvqf41820rm5i0l9bx1xmmdlq8zsszi36y2rkjna8991f7s2";
     propagatedBuildInputs = [ async_rpc_kernel async_unix ];
     meta.description = "Jane Street's asynchronous execution library (extra)";
   };
 
   async = janePackage {
-    name = "async";
+    pname = "async";
     hash = "1i05hzk4mhzj1mw98b2bdbxhnq03jvhkkkw4d948i6265jzrrbv5";
     propagatedBuildInputs = [ async_extra ];
     meta.description = "Jane Street Capital's asynchronous execution library";
   };
 
   async_find = janePackage {
-    name = "async_find";
+    pname = "async_find";
     hash = "0s0qafx74ri1vr2vv3iy1j7s3p6gp7vyg0mw5g17iafk0w6lv2iq";
     propagatedBuildInputs = [ async ];
     meta.description = "Directory traversal with Async";
   };
 
   async_interactive = janePackage {
-    name = "async_interactive";
+    pname = "async_interactive";
     hash = "01rlfcylpiak6a2n6q3chp73cvkhvb65n906dj0flmxmagn7dxd1";
     propagatedBuildInputs = [ async ];
     meta.description = "Utilities for building simple command-line based user interfaces";
   };
 
   async_parallel = janePackage {
-    name = "async_parallel";
+    pname = "async_parallel";
     hash = "0hak8ba3rfzqhz5hz2annqmsv5bkqzdihhafp0f58ryrlskafwag";
     propagatedBuildInputs = [ async ];
     meta.description = "Distributed computing library";
   };
 
   async_shell = janePackage {
-    name = "async_shell";
+    pname = "async_shell";
     hash = "1jb01ygfnhabsy72xlcg11vp7rr37sg555sm0k3yxl4r5az3y2ay";
     propagatedBuildInputs = [ core_extended async ];
     meta.description = "Shell helpers for Async";
   };
 
   async_ssl = janePackage {
-    name = "async_ssl";
+    pname = "async_ssl";
     hash = "1p83fzfla4rb820irdrz3f2hp8kq5zrhw47rqmfv6qydlca1bq64";
     propagatedBuildInputs = [ async ctypes openssl ];
     meta.description = "Async wrappers for SSL";
   };
 
   sexp_pretty = janePackage {
-    name = "sexp_pretty";
+    pname = "sexp_pretty";
     hash = "0xskahjggbwvvb82fn0jp1didxbgpmgks76xhwp9s3vqkhgz6918";
     propagatedBuildInputs = [ ppx_base re sexplib ];
     meta.description = "S-expression pretty-printer";
   };
 
   expect_test_helpers_kernel = janePackage {
-    name = "expect_test_helpers_kernel";
+    pname = "expect_test_helpers_kernel";
     hash = "0m113vq4m1xm3wmwa08r6qjc7p5f0y3ss8s4i2z591ycgs2fxzlj";
     propagatedBuildInputs = [ core_kernel sexp_pretty ];
     meta.description = "Helpers for writing expectation tests";
   };
 
   expect_test_helpers = janePackage {
-    name = "expect_test_helpers";
+    pname = "expect_test_helpers";
     hash = "13n6h7mimwkbsjdix96ghfrmxjd036m4h4zgl8qag00aacqclvpi";
     propagatedBuildInputs = [ async expect_test_helpers_kernel ];
     meta.description = "Async helpers for writing expectation tests";
   };
 
   bignum = janePackage {
-    name = "bignum";
+    pname = "bignum";
     hash = "0hqd88fb90rsj1wjj4k79gigcf31c6a45msasw99zzifzppr3w3f";
     propagatedBuildInputs = [ core_kernel zarith num ];
     meta.description = "Core-flavoured wrapper around zarith's arbitrary-precision rationals";
   };
 
   cinaps = janePackage {
-    name = "cinaps";
+    pname = "cinaps";
     hash = "0f8cx4xkkk4wqpcbvva8kxdndbgawljp17dwppc6zpjpkjl8s84j";
     propagatedBuildInputs = [ re ];
     meta.description = "Trivial Metaprogramming tool using the OCaml toplevel";
   };
 
   command_rpc = janePackage {
-    name = "command_rpc";
+    pname = "command_rpc";
     hash = "111v4km0ds8ixmpmwg9ck36ap97400mqzhijf57kj6wfwgzcmr2g";
     propagatedBuildInputs = [ async ];
     meta.description = "Utilities for Versioned RPC communication with a child process over stdin and stdout";
@@ -464,49 +464,49 @@ rec {
   # Deprecated libraries
 
   ppx_ast = janePackage {
-    name = "ppx_ast";
+    pname = "ppx_ast";
     hash = "125bzswcwr3nb26ss8ydh8z4218c8fi3s2kvgqp1j1fhc5wwzqgj";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_core = janePackage {
-    name = "ppx_core";
+    pname = "ppx_core";
     hash = "11hgm9mxig4cm3c827f6dns9mjv3pf8g6skf10x0gw9xnp1dmzmx";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_driver = janePackage {
-    name = "ppx_driver";
+    pname = "ppx_driver";
     hash = "00kfx6js2kxk57k4v7hiqvwk7h35whgjihnxf75m82rnaf4yzvfi";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_metaquot = janePackage {
-    name = "ppx_metaquot";
+    pname = "ppx_metaquot";
     hash = "1vz8bi56jsz8w0894vgbfsfvmdyh5k1dgv45l8vhkks0s7d3ldji";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_traverse = janePackage {
-    name = "ppx_traverse";
+    pname = "ppx_traverse";
     hash = "1p2n5da4mxh9fk4gvxlibc706bs5xwkbppxd1x0ip1vln5pabbq5";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_traverse_builtins = janePackage {
-    name = "ppx_traverse_builtins";
+    pname = "ppx_traverse_builtins";
     hash = "0qlf7i8h8k3a9h8nhb0ki3y1knr6wgbm24f1qaqni53fpvzv0pfb";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
   };
 
   ppx_type_conv = janePackage {
-    name = "ppx_type_conv";
+    pname = "ppx_type_conv";
     hash = "04dbrglqqhkas25cpjz8xhjcbpk141c35qggzw66bn69izczfmaf";
     propagatedBuildInputs = [ ppxlib ];
     meta.description = "Deprecated (see ppxlib)";
@@ -515,35 +515,35 @@ rec {
   # Miscellaneous Jane Street packages
 
   core_bench = janePackage {
-    name = "core_bench";
+    pname = "core_bench";
     hash = "10i28ssfdqxxhq0rvnlp581lr1cq2apkhmm8j83fksjkmbxcrasc";
     propagatedBuildInputs = [ core_extended ];
     meta.description = "Micro-benchmarking library for OCaml";
   };
 
   core_profiler = janePackage {
-    name = "core_profiler";
+    pname = "core_profiler";
     hash = "1kaaw3jp3qarbd9rgpjfb9md0dqblf2bxiqb245sqmx4c1346v1c";
     propagatedBuildInputs = [ core_extended ];
     meta.description = "Profiling library";
   };
 
   csvfields = janePackage {
-    name = "csvfields";
+    pname = "csvfields";
     hash = "10zw4fjlniivfdzzz79lnbvcjnhk5y16m1p8mn4xbs23n6mbix0f";
     propagatedBuildInputs = [ core expect_test_helpers ];
     meta.description = "Runtime support for ppx_xml_conv and ppx_csv_conv";
   };
 
   ecaml = janePackage {
-    name = "ecaml";
+    pname = "ecaml";
     hash = "1is5156q59s427x3q5nh9wsi8h1x77670bmyilqxasy39yway7g8";
     propagatedBuildInputs = [ async expect_test_helpers_kernel ];
     meta.description = "Writing Emacs plugin in OCaml";
   };
 
   email_message = janePackage {
-    name = "email_message";
+    pname = "email_message";
     hash = "131jd72k4s8cdbgg6gyg7w5v8mphdlvdx4fgvh8d9a1m7kkvbxfg";
     propagatedBuildInputs = [ async angstrom core_extended cryptokit magic-mime ounit ];
     meta.description = "E-mail message parser";
@@ -551,28 +551,28 @@ rec {
 
   incremental_kernel = janePackage {
     version = "0.11.1";
-    name = "incremental_kernel";
+    pname = "incremental_kernel";
     hash = "1qp9dqncx2h0np0rndqaic4dna8f1dlkqnbjfcdhcim5dp2vg4x6";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Library for incremental computations depending only on core_kernel";
   };
 
   incremental = janePackage {
-    name = "incremental";
+    pname = "incremental";
     hash = "1xchd3v4kj56wixjrsnj7m7l0374cgkzybihs2b62mn65xf6n7ki";
     propagatedBuildInputs = [ core incremental_kernel ];
     meta.description = "Library for incremental computations";
   };
 
   incr_map = janePackage {
-    name = "incr_map";
+    pname = "incr_map";
     hash = "01vx9aldxpigz5ah9h337xcw73a7r8449v8l2xbralljhs0zglx9";
     propagatedBuildInputs = [ incremental_kernel ];
     meta.description = "Helpers for incremental operations on map like data structures";
   };
 
   ocaml_plugin = janePackage {
-    name = "ocaml_plugin";
+    pname = "ocaml_plugin";
     hash = "0fal5j59qkbksg6ak1ngn92pcgg3f9gwfaglpxb7l6bck20kaigp";
     buildInputs = [ ocamlbuild ];
     propagatedBuildInputs = [ async ];
@@ -580,28 +580,28 @@ rec {
   };
 
   parsexp_io = janePackage {
-    name = "parsexp_io";
+    pname = "parsexp_io";
     hash = "0rhdl40jiirvv6fhgjk50n8wzs3jly5d8dyyyfgpjgl39mwkjjnb";
     propagatedBuildInputs = [ parsexp ppx_js_style ];
     meta.description = "S-expression parsing library (IO functions)";
   };
 
   patience_diff = janePackage {
-    name = "patience_diff";
+    pname = "patience_diff";
     hash = "0q7a64fgg97qcd6d8c45gyz63x5vq004axxqvvfg92b8f3x2plx4";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Tool and library implementing patience diff";
   };
 
   posixat = janePackage {
-    name = "posixat";
+    pname = "posixat";
     hash = "04rs4sl0r4rg9m6l9kkqkmc4n87sv4a4w9ibq4zsjk9j4n6r2df8";
     propagatedBuildInputs = [ ppx_optcomp ppx_sexp_conv sexplib ];
     meta.description = "Binding to the posix *at functions";
   };
 
   rpc_parallel = janePackage {
-    name = "rpc_parallel";
+    pname = "rpc_parallel";
     hash = "13dx59x73i8mkwv2qkh8gx6kk8arlvghj57k1jdscdmzmyqc9gvn";
     propagatedBuildInputs = [ async ];
     meta.description = "Type-safe library for building parallel applications";
@@ -609,14 +609,14 @@ rec {
 
   shexp = janePackage {
     version = "0.11.1";
-    name = "shexp";
+    pname = "shexp";
     hash = "06yssp7bsmabaxvw9bqxyrsji1gkvl7if5adba3v6h4kilqy7rqg";
     propagatedBuildInputs = [ posixat spawn ];
     meta.description = "Process library and s-expression based shell";
   };
 
   topological_sort = janePackage {
-    name = "topological_sort";
+    pname = "topological_sort";
     hash = "1qnz5b1rs45lsl1ycxd1lglpmh8444gy5khhdp5fvxy987zkzklz";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Topological sort algorithm";
diff --git a/pkgs/development/ocaml-modules/janestreet/janePackage.nix b/pkgs/development/ocaml-modules/janestreet/janePackage.nix
index 439c6f500bc..b3ffecb38ce 100644
--- a/pkgs/development/ocaml-modules/janestreet/janePackage.nix
+++ b/pkgs/development/ocaml-modules/janestreet/janePackage.nix
@@ -1,28 +1,19 @@
-{ stdenv, fetchFromGitHub, ocaml, dune, findlib, defaultVersion ? "0.11.0" }:
+{ stdenv, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.11.0" }:
 
-{ name, version ? defaultVersion, buildInputs ? [], hash, meta, ...}@args:
+{ pname, version ? defaultVersion, hash, ...}@args:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.04"
-then throw "${name}-${version} is not available for OCaml ${ocaml.version}" else
-
-stdenv.mkDerivation (args // {
-  name = "ocaml${ocaml.version}-${name}-${version}";
+buildDunePackage (args // {
   inherit version;
 
+  minimumOCamlVersion = "4.04";
+
   src = fetchFromGitHub {
     owner = "janestreet";
-    repo = name;
+    repo = pname;
     rev = "v${version}";
     sha256 = hash;
   };
 
-  buildInputs = [ ocaml dune findlib ] ++ buildInputs;
-
-  inherit (dune) installPhase;
-
-  meta = {
-    license = stdenv.lib.licenses.asl20;
-    inherit (ocaml.meta) platforms;
-    homepage = "https://github.com/janestreet/${name}";
-  } // meta;
+  meta.license = stdenv.lib.licenses.asl20;
+  meta.homepage = "https://github.com/janestreet/${pname}";
 })
diff --git a/pkgs/development/ocaml-modules/janestreet/old.nix b/pkgs/development/ocaml-modules/janestreet/old.nix
index 27a65c50275..447a9cdf71f 100644
--- a/pkgs/development/ocaml-modules/janestreet/old.nix
+++ b/pkgs/development/ocaml-modules/janestreet/old.nix
@@ -7,7 +7,7 @@ rec {
   # Jane Street packages, up to ppx_core
 
   sexplib = janePackage {
-    name = "sexplib";
+    pname = "sexplib";
     meta.description = "Automated S-expression conversion";
     version = "0.10.0";
     hash = "1agw649n0rnf6h4y2dr1zs1970nncxgjmf90848vbxv8y9im4yy2";
@@ -15,7 +15,7 @@ rec {
   };
 
   base = janePackage {
-    name = "base";
+    pname = "base";
     version = "0.9.4";
     hash = "0x85xi66b4zwlbdwmyc99zcmawgpp75gxqbl55rr67awavw162rw";
     propagatedBuildInputs = [ sexplib ];
@@ -23,13 +23,13 @@ rec {
   };
 
   ocaml-compiler-libs = janePackage {
-    name = "ocaml-compiler-libs";
+    pname = "ocaml-compiler-libs";
     hash = "1jz3nfrb6295sj4xj1j0zld8mhfj0xy2k4vlp9yf9sh3748n090l";
     meta.description = "OCaml compiler libraries repackaged";
   };
 
   ppx_ast = janePackage ({
-    name = "ppx_ast";
+    pname = "ppx_ast";
     propagatedBuildInputs = [ ocaml-compiler-libs ocaml-migrate-parsetree ];
     meta.description = "OCaml AST used by Jane Street ppx rewriters";
   } // (if lib.versionAtLeast ocaml.version "4.06"
@@ -43,13 +43,13 @@ rec {
   ));
 
   ppx_traverse_builtins = janePackage {
-    name = "ppx_traverse_builtins";
+    pname = "ppx_traverse_builtins";
     hash = "10ajvz02ka6qimlfrq7py4ljhk8awqkga6240kn8j046b4xfyxzi";
     meta.description = "Builtins for Ppx_traverse";
   };
 
   stdio = janePackage {
-    name = "stdio";
+    pname = "stdio";
     version = "0.9.1";
     hash = "13rj3ii0rvmklfim9ild0ib44ssdadig7a9ccjbz22m0pw84a1sx";
     propagatedBuildInputs = [ base ];
@@ -57,7 +57,7 @@ rec {
   };
 
   ppx_core = janePackage {
-    name = "ppx_core";
+    pname = "ppx_core";
     hash = "15400zxxkqdimmjpdjcs36gcbxbrhylmaczlzwd6x65v1h9aydz3";
     propagatedBuildInputs = [ ppx_ast ppx_traverse_builtins stdio ];
     meta.description = "Jane Street's standard library for ppx rewriters";
@@ -66,14 +66,14 @@ rec {
   # Jane Street packages, up to ppx_base
 
   ppx_optcomp = janePackage {
-    name = "ppx_optcomp";
+    pname = "ppx_optcomp";
     hash = "1wfj6fnh92s81yncq7yyhmax7j6zpjj1sg1f3qa1f9c5kf4kkzrd";
     propagatedBuildInputs = [ ppx_core ];
     meta.description = "Optional compilation for OCaml";
   };
 
   ppx_driver = janePackage {
-    name = "ppx_driver";
+    pname = "ppx_driver";
     version = "0.9.1";
     hash = "1amz49x6v4sh1v2my6618cah0zv5i7jmsapbk9ydps6419g5asay";
     buildInputs = [ ocamlbuild ];
@@ -82,56 +82,56 @@ rec {
   };
 
   ppx_metaquot = janePackage {
-    name = "ppx_metaquot";
+    pname = "ppx_metaquot";
     hash = "15qfd3s4x2pz006nx5316laxd3gqqi472x432qg4rfx4yh3vn31k";
     propagatedBuildInputs = [ ppx_driver ];
     meta.description = "Metaquotations for ppx_ast";
   };
 
   ppx_type_conv = janePackage {
-    name = "ppx_type_conv";
+    pname = "ppx_type_conv";
     hash = "0a0gxjvjiql9vg37k0akn8xr5724nv3xb7v37xpidv7ld927ks7p";
     propagatedBuildInputs = [ ppx_metaquot ppx_deriving ];
     meta.description = "Support Library for type-driven code generators";
   };
 
   ppx_sexp_conv = janePackage {
-    name = "ppx_sexp_conv";
+    pname = "ppx_sexp_conv";
     hash = "03cg2sym0wvpd5l7q4w9bclp589z5byygwsmnnq9h1ih56cmd55l";
     propagatedBuildInputs = [ ppx_type_conv sexplib ];
     meta.description = "Generation of S-expression conversion functions from type definitions";
   };
 
   ppx_compare = janePackage {
-    name = "ppx_compare";
+    pname = "ppx_compare";
     hash = "0wrszpvn1nms5sb5rb29p7z1wmqyd15gfzdj4ax8f843p5ywx3w9";
     propagatedBuildInputs = [ ppx_type_conv ];
     meta.description = "Generation of comparison functions from types";
   };
 
   ppx_enumerate = janePackage {
-    name = "ppx_enumerate";
+    pname = "ppx_enumerate";
     hash = "1dfy86j2z12p5n9yrwaakx1ngphs5246vxy279kz6i6j34cwxm46";
     propagatedBuildInputs = [ ppx_type_conv ];
     meta.description = "Generate a list containing all values of a finite type";
   };
 
   ppx_hash = janePackage {
-    name = "ppx_hash";
+    pname = "ppx_hash";
     hash = "1w1riy2sqd9i611sc5f5z2rqqgjl2gvvkzi5xibpv309nacnl01d";
     propagatedBuildInputs = [ ppx_compare ppx_sexp_conv ];
     meta.description = "A ppx rewriter that generates hash functions from type expressions and definitions";
   };
 
   ppx_js_style = janePackage {
-    name = "ppx_js_style";
+    pname = "ppx_js_style";
     hash = "09k02b1l2r7svf9l3ls69h8xydsyiang2ziigxnny2i7gy7b0w59";
     propagatedBuildInputs = [ ppx_metaquot octavius ];
     meta.description = "Code style checker for Jane Street Packages";
   };
 
   ppx_base = janePackage {
-    name = "ppx_base";
+    pname = "ppx_base";
     hash = "0qikfzbkd2wyxfrvizz6rgi6vg4ykvxkivacj4gr178dbgfl5if3";
     propagatedBuildInputs = [ ppx_enumerate ppx_hash ppx_js_style ];
     meta.description = "Base set of ppx rewriters";
@@ -140,49 +140,49 @@ rec {
   # Jane Street packages, up to ppx_bin_prot
 
   fieldslib = janePackage {
-    name = "fieldslib";
+    pname = "fieldslib";
     hash = "1wxh59888l1bfz9ipnbcas58gwg744icaixzdbsg4v8f7wymc501";
     propagatedBuildInputs = [ ppx_driver ];
     meta.description = "OCaml record fields as first class values";
   };
 
   variantslib = janePackage {
-    name = "variantslib";
+    pname = "variantslib";
     hash = "0kj53n62193j58q9vip8lfhhyf6w9d25wyvxzc163hx5m68yw0fz";
     propagatedBuildInputs = [ ppx_driver ];
     meta.description = "OCaml variants as first class values";
   };
 
   ppx_traverse = janePackage {
-    name = "ppx_traverse";
+    pname = "ppx_traverse";
     hash = "1sdqgwyq0w71i03vhc5jq4jk6rsbgwhvain48fnrllpkb5kj2la2";
     propagatedBuildInputs = [ ppx_type_conv ];
     meta.description = "Automatic generation of open recursion classes";
   };
 
   ppx_custom_printf = janePackage {
-    name = "ppx_custom_printf";
+    pname = "ppx_custom_printf";
     hash = "0cjy2c2c5g3qxqvwx1yb6p7kbmmpnpb1hll55f7a44x215lg8x19";
     propagatedBuildInputs = [ ppx_sexp_conv ppx_traverse ];
     meta.description = "Printf-style format-strings for user-defined string conversion";
   };
 
   ppx_fields_conv = janePackage {
-    name = "ppx_fields_conv";
+    pname = "ppx_fields_conv";
     hash = "0qp8zgmk58iskzrkf4g06i471kg6lrh3wqpy9klrb8pp9mg0xr9z";
     propagatedBuildInputs = [ fieldslib ppx_type_conv ];
     meta.description = "Generation of accessor and iteration functions for OCaml records";
   };
 
   ppx_variants_conv = janePackage {
-    name = "ppx_variants_conv";
+    pname = "ppx_variants_conv";
     hash = "1xayhyglgbdjqvb9123kjbwjcv0a3n3302nb0j7g8gmja8w5y834";
     propagatedBuildInputs = [ ppx_type_conv variantslib ];
     meta.description = "Generation of accessor and iteration functions for OCaml variant types";
   };
 
   bin_prot = janePackage {
-    name = "bin_prot";
+    pname = "bin_prot";
     version = "0.9.1";
     hash = "1bgcmkgz6b5i522996x589zsaiy5b3h37887lwbqvpps8by2ayvk";
     propagatedBuildInputs = [ ppx_compare ppx_custom_printf ppx_fields_conv ppx_variants_conv ];
@@ -190,14 +190,14 @@ rec {
   };
 
   ppx_here = janePackage {
-    name = "ppx_here";
+    pname = "ppx_here";
     hash = "0pjscw5ydxgy4fcxakgsazpp09ka057w5n2fp2dpkv2k5gil6rzh";
     propagatedBuildInputs = [ ppx_driver ];
     meta.description = "Expands [%here] into its location";
   };
 
   ppx_bin_prot = janePackage {
-    name = "ppx_bin_prot";
+    pname = "ppx_bin_prot";
     hash = "0qw9zqrc5yngzrzpk9awnlnd68xrb7wz5lq807c80ibxk0xvnqn3";
     propagatedBuildInputs = [ ppx_here bin_prot ];
     meta.description = "Generation of bin_prot readers and writers from types";
@@ -206,14 +206,14 @@ rec {
   # Jane Street packages, up to ppx_jane
 
   ppx_assert = janePackage {
-    name = "ppx_assert";
+    pname = "ppx_assert";
     hash = "1s5c75wkc46nlcwmgic5h7f439s26ssrzrcil501c5kpib2hlv6z";
     propagatedBuildInputs = [ ppx_sexp_conv ppx_here ppx_compare ];
     meta.description = "Assert-like extension nodes that raise useful errors on failure";
   };
 
   ppx_inline_test = janePackage {
-    name = "ppx_inline_test";
+    pname = "ppx_inline_test";
     version = "0.9.2";
     hash = "17j36ihiqprbpa2bk02449k93vaidid2sly5djrk848ccjq8n5aa";
     propagatedBuildInputs = [ ppx_metaquot ];
@@ -221,77 +221,77 @@ rec {
   };
 
   typerep = janePackage {
-    name = "typerep";
+    pname = "typerep";
     hash = "0hlc0xiznli1k6azv2mhm1s4xghhxqqd957np7828bfp7r8n2jy3";
     propagatedBuildInputs = [ base ];
     meta.description = "Runtime types for OCaml";
   };
 
   ppx_bench = janePackage {
-    name = "ppx_bench";
+    pname = "ppx_bench";
     hash = "1qk4y6c2mpw7bqjppi2nam74vs2sc89wzq162j92wsqxyqsv4p93";
     propagatedBuildInputs = [ ppx_inline_test ];
     meta.description = "Syntax extension for writing in-line benchmarks in OCaml code";
   };
 
   ppx_expect = janePackage {
-    name = "ppx_expect";
+    pname = "ppx_expect";
     hash = "1bik53k51wcqv088f0h10n3ms9h51yvg6ha3g1s903i2bxr3xs6b";
     propagatedBuildInputs = [ ppx_inline_test ppx_fields_conv ppx_custom_printf ppx_assert ppx_variants_conv re ];
     meta.description = "Cram like framework for OCaml";
   };
 
   ppx_fail = janePackage {
-    name = "ppx_fail";
+    pname = "ppx_fail";
     hash = "0qz0vlazasjyg7cv3iwpzxlvsah3zmn9dzd029xxqr1bji067s32";
     propagatedBuildInputs = [ ppx_here ppx_metaquot ];
     meta.description = "Add location to calls to failwiths";
   };
 
   ppx_let = janePackage {
-    name = "ppx_let";
+    pname = "ppx_let";
     hash = "1b914a5nynwxjvfx42v61yigvjhnd548m4yqjfchf38dmqi1f4nr";
     propagatedBuildInputs = [ ppx_driver ];
     meta.description = "Monadic let-bindings";
   };
 
   ppx_optional = janePackage {
-    name = "ppx_optional";
+    pname = "ppx_optional";
     hash = "1vknsarxba0zcp5k2jb31wfpvqrv3bpanxbahfl5s2fwspsfdc82";
     propagatedBuildInputs = [ ppx_metaquot ];
     meta.description = "Pattern matching on flat options";
   };
 
   ppx_pipebang = janePackage {
-    name = "ppx_pipebang";
+    pname = "ppx_pipebang";
     hash = "1wyfyyjvyi94ds1p90l60wdr85q2v3fq1qdf3gnv9zjfy6sb0g9h";
     propagatedBuildInputs = [ ppx_metaquot ];
     meta.description = "A ppx rewriter that inlines reverse application operators |> and |!";
   };
 
   ppx_sexp_message = janePackage {
-    name = "ppx_sexp_message";
+    pname = "ppx_sexp_message";
     hash = "0r0skyr1zf2jh48xrxbs45gzywynhlivkq24xwc0qq435fmc2jqv";
     propagatedBuildInputs = [ ppx_sexp_conv ppx_here ];
     meta.description = "A ppx rewriter for easy construction of s-expressions";
   };
 
   ppx_sexp_value = janePackage {
-    name = "ppx_sexp_value";
+    pname = "ppx_sexp_value";
     hash = "0hha5mmx700m8fy9g4znb8278l09chgwlpshny83vsmmzgq2jhah";
     propagatedBuildInputs = [ ppx_sexp_conv ppx_here ];
     meta.description = "A ppx rewriter that simplifies building s-expressions from OCaml values";
   };
 
   ppx_typerep_conv = janePackage {
-    name = "ppx_typerep_conv";
+    pname = "ppx_typerep_conv";
     hash = "0bzgfpbqijwxm8x9jq1zb4xi5sbzymk17lw5rylri3hf84p60aq1";
     propagatedBuildInputs = [ ppx_type_conv typerep ];
     meta.description = "Generation of runtime types from type declarations";
   };
 
   ppx_jane = janePackage {
-    name = "ppx_jane";
+    pname = "ppx_jane";
     hash = "16m5iw0qyp452nqj83kd0g0x3rw40lrz7392hwpd4di1wi6v2qzc";
     propagatedBuildInputs = [ ppx_base ppx_bench ppx_bin_prot ppx_expect ppx_fail ppx_let ppx_optional ppx_pipebang ppx_sexp_message ppx_sexp_value ppx_typerep_conv ];
     meta.description = "Standard Jane Street ppx rewriters";
@@ -300,7 +300,7 @@ rec {
   # Jane Street packages, up to core
 
   configurator = janePackage {
-    name = "configurator";
+    pname = "configurator";
     version = "0.9.1";
     hash = "1q0s0ghcrcrxdj6zr9zr27g7sr4qr9l14kizjphwqwwvgbzawdix";
     propagatedBuildInputs = [ ppx_base ];
@@ -308,26 +308,26 @@ rec {
   };
 
   jane-street-headers = janePackage {
-    name = "jane-street-headers";
+    pname = "jane-street-headers";
     hash = "0cdab6sblsidjbwvyvmspykyhqh44rpsjzi2djbfd5m4vh2h14gy";
     meta.description = "Jane Street header files";
   };
 
   core_kernel = janePackage {
-    name = "core_kernel";
+    pname = "core_kernel";
     hash = "05iwvggx9m81x7ijgv9gcv5znf5rmsmb76dg909bm9gkr3hbh7wh";
     propagatedBuildInputs = [ configurator jane-street-headers ppx_jane ];
     meta.description = "Jane Street's standard library overlay (kernel)";
   };
 
   spawn = janePackage {
-    name = "spawn";
+    pname = "spawn";
     hash = "1w53b8ni06ajj62yaqjy0pkbm952l0m5fzr088yk15078qaxsnb5";
     meta.description = "Spawning sub-processes";
   };
 
   core = janePackage {
-    name = "core";
+    pname = "core";
     version = "0.9.1";
     hash = "1643r0namsgj8xwfr9niimcdwyyq4ddiwd02d73ipb4a8710aqi8";
     propagatedBuildInputs = [ core_kernel spawn ];
@@ -337,7 +337,7 @@ rec {
   # Jane Street packages, up to core_extended
 
   re2 = janePackage {
-    name = "re2";
+    pname = "re2";
     hash = "1qmhl3yd6y0lq401rz72b1bsbpglb0wighpxn3x8y1ixq415p4xi";
     propagatedBuildInputs = [ core_kernel ];
     meta = {
@@ -347,14 +347,14 @@ rec {
   };
 
   textutils = janePackage {
-    name = "textutils";
+    pname = "textutils";
     hash = "1y6j2qw7rc8d80343lfv1dygnfrhn2qllz57mx28pl5kan743f6d";
     propagatedBuildInputs = [ core ];
     meta.description = "Text output utilities";
   };
 
   core_extended = janePackage {
-    name = "core_extended";
+    pname = "core_extended";
     hash = "05cnzzj0kigz9c9gsmd6mfar82wmkbqm9qzrydb80sy2fz5b30rk";
     propagatedBuildInputs = [ core re2 textutils ];
     postPatch = ''
@@ -368,63 +368,63 @@ rec {
   # Jane Street async packages
 
   async_kernel = janePackage {
-    name = "async_kernel";
+    pname = "async_kernel";
     hash = "1zwxhzy7f9900rcjls2fql9cpfmwrcah3fazzdz4h2i51f41w62x";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Jane Street Capital's asynchronous execution library (core)";
   };
 
   async_rpc_kernel = janePackage {
-    name = "async_rpc_kernel";
+    pname = "async_rpc_kernel";
     hash = "1xk3s6s3xkj182p10kig2cqy8md6znif3v661h9cd02n8s57c40b";
     propagatedBuildInputs = [ core_kernel async_kernel ];
     meta.description = "Platform-independent core of Async RPC library";
   };
 
   async_unix = janePackage {
-    name = "async_unix";
+    pname = "async_unix";
     hash = "0yd4z28j5vdj2zxqi0fkgh2ic1s9h740is2dk0raga0zr5a1z03d";
     propagatedBuildInputs = [ core async_kernel ];
     meta.description = "Jane Street Capital's asynchronous execution library (unix)";
   };
 
   async_extra = janePackage {
-    name = "async_extra";
+    pname = "async_extra";
     hash = "0rpy5lc5dh5mir7flq1jrppd8imby8wyw191yg4nmklg28xp5sx0";
     propagatedBuildInputs = [ async_rpc_kernel async_unix ];
     meta.description = "Jane Street's asynchronous execution library (extra)";
   };
 
   async = janePackage {
-    name = "async";
+    pname = "async";
     hash = "10ykzym19srgdiikj0s74dndx5nk15hjq1r2hc61iz48f6caxkb1";
     propagatedBuildInputs = [ async_extra ];
     meta.description = "Jane Street Capital's asynchronous execution library";
   };
 
   async_find = janePackage {
-    name = "async_find";
+    pname = "async_find";
     hash = "11dmhdzgf5kn4m0cm6zr28wpwhi2kr4lak9nmgxbrxsq28bcncxq";
     propagatedBuildInputs = [ async ];
     meta.description = "Directory traversal with Async";
   };
 
   async_interactive = janePackage {
-    name = "async_interactive";
+    pname = "async_interactive";
     hash = "1mmqqp6bi2wg7bmgf0sw34jn3iyl5kbm200dax8yqq6rfprcs49j";
     propagatedBuildInputs = [ async ];
     meta.description = "Utilities for building simple command-line based user interfaces";
   };
 
   async_parallel = janePackage {
-    name = "async_parallel";
+    pname = "async_parallel";
     hash = "0mdprhr1pv4g65g10gr3gaifrzknsdgarwfdbjlvhzfs86075kyn";
     propagatedBuildInputs = [ async ];
     meta.description = "Distributed computing library";
   };
 
   async_shell = janePackage {
-    name = "async_shell";
+    pname = "async_shell";
     hash = "02clpz3xv3i5avzifwalylb9gfxzpgnr8bnlfsjixxfk2m7kvsj2";
     propagatedBuildInputs = [ core_extended async ];
     meta = {
@@ -433,7 +433,7 @@ rec {
   };
 
   async_ssl = janePackage {
-    name = "async_ssl";
+    pname = "async_ssl";
     hash = "01w3bg38q61lc3hfh8jsr0sy1ylyv0m6g6h9yvsk8ngj6qk70nss";
     propagatedBuildInputs = [ async ctypes openssl ];
     meta.description = "Async wrappers for SSL";
@@ -442,21 +442,21 @@ rec {
   # Jane Street packages, up to expect_test_helpers
 
   sexp_pretty = janePackage {
-    name = "sexp_pretty";
+    pname = "sexp_pretty";
     hash = "1bx8va468j5b813m0vsh1jzgb6h2qnnjfmjlf2hb82sarv8lllfx";
     propagatedBuildInputs = [ ppx_base re ];
     meta.description = "S-expression pretty-printer";
   };
 
   expect_test_helpers_kernel = janePackage {
-    name = "expect_test_helpers_kernel";
+    pname = "expect_test_helpers_kernel";
     hash = "1ycqir8sqgq5nialnrfg29nqn0cqg6jjpgv24drdycdhqf5r2zg6";
     propagatedBuildInputs = [ core_kernel sexp_pretty ];
     meta.description = "Helpers for writing expectation tests";
   };
 
   expect_test_helpers = janePackage {
-    name = "expect_test_helpers";
+    pname = "expect_test_helpers";
     hash = "0rsh6rwbqfcrqisk8jp7srlnicsadbzrs02ri6zyx0p3lmznw5r2";
     propagatedBuildInputs = [ async expect_test_helpers_kernel ];
     meta.description = "Async helpers for writing expectation tests";
@@ -465,28 +465,28 @@ rec {
   # Miscellaneous Jane Street packages
 
   bignum = janePackage {
-    name = "bignum";
+    pname = "bignum";
     hash = "0g80mzsi7vc1kq4mzha8y9nl95h6cd041vix3wjrqgkdvb1qd4f3";
     propagatedBuildInputs = [ core_kernel zarith ];
     meta.description = "Core-flavoured wrapper around zarith's arbitrary-precision rationals";
   };
 
   cinaps = janePackage {
-    name = "cinaps";
+    pname = "cinaps";
     hash = "02fpjiwrygkpx2q4jfldhbqh0mqxmf955wizr8k4vmsq4wsis0p5";
     propagatedBuildInputs = [ re ];
     meta.description = "Trivial Metaprogramming tool using the OCaml toplevel";
   };
 
   command_rpc = janePackage {
-    name = "command_rpc";
+    pname = "command_rpc";
     hash = "0w58z9jkz5qzbvf33wrzhfshzdvnrphj6dq8dmi52ykhfvxm7824";
     propagatedBuildInputs = [ async ];
     meta.description = "Utilities for Versioned RPC communication with a child process over stdin and stdout";
   };
 
   core_bench = janePackage {
-    name = "core_bench";
+    pname = "core_bench";
     hash = "1m2q7217nmcsck29i59djkm0h6z3aj0i01niijzr5f6ilbnmyd3h";
     propagatedBuildInputs = [ core_extended ];
     meta = {
@@ -495,7 +495,7 @@ rec {
   };
 
   core_profiler = janePackage {
-    name = "core_profiler";
+    pname = "core_profiler";
     hash = "1ir2v3wdfbf5xzqcma16asc73mkx2q6dzq5y1bx6q1rpa7iznx44";
     propagatedBuildInputs = [ core_extended ];
     meta = {
@@ -504,21 +504,21 @@ rec {
   };
 
   csvfields = janePackage {
-    name = "csvfields";
+    pname = "csvfields";
     hash = "0lbvs1kwl22ryxhw6s089f6683hj2920bn518mvr22rnv7qijy0v";
     propagatedBuildInputs = [ core ];
     meta.description = "Runtime support for ppx_xml_conv and ppx_csv_conv";
   };
 
   ecaml = janePackage {
-    name = "ecaml";
+    pname = "ecaml";
     hash = "1a2534bzbwgpm71aj3sm71sm0lkcjdfjj1mk91p1pg9kxn8c5x4i";
     propagatedBuildInputs = [ async ];
     meta.description = "Writing Emacs plugin in OCaml";
   };
 
   email_message = janePackage {
-    name = "email_message";
+    pname = "email_message";
     hash = "0cpaf6wn5g883bxdz029bksvrfzih99m7hzbb30fhqglmpmmkniz";
     propagatedBuildInputs = [ async core_extended cryptokit magic-mime ounit ];
     meta = {
@@ -527,28 +527,28 @@ rec {
   };
 
   incremental_kernel = janePackage {
-    name = "incremental_kernel";
+    pname = "incremental_kernel";
     hash = "0zq48wbgqcflh84n10iygi8aa3f0zzmgc7r0jwvsyg7i8zccgvf5";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Library for incremental computations depending only on core_kernel";
   };
 
   incremental = janePackage {
-    name = "incremental";
+    pname = "incremental";
     hash = "05sx8ia46v4dlvzcn7xgjcwxvbd0wmvv9r2bpvniapjnwr1nvcfh";
     propagatedBuildInputs = [ core incremental_kernel ];
     meta.description = "Library for incremental computations";
   };
 
   incr_map = janePackage {
-    name = "incr_map";
+    pname = "incr_map";
     hash = "0358qg9irxbbhn18laqww3mn43mdwvlbr0h2mvg3vdbb2c5jp4fv";
     propagatedBuildInputs = [ incremental_kernel ];
     meta.description = "Helpers for incremental operations on map like data structures";
   };
 
   ocaml_plugin = janePackage {
-    name = "ocaml_plugin";
+    pname = "ocaml_plugin";
     hash = "0q33swnlx9p1gcn1aj95501kapb7cnbzbsavid69csczwmzcxr14";
     buildInputs = [ ocamlbuild ];
     propagatedBuildInputs = [ async ];
@@ -556,28 +556,28 @@ rec {
   };
 
   parsexp = janePackage {
-    name = "parsexp";
+    pname = "parsexp";
     hash = "0brrifvnfqbfk873v6y5b2jixs2d73hpispj9r440kca5cfsv23b";
     propagatedBuildInputs = [ ppx_compare ppx_fields_conv ppx_js_style ppx_sexp_value ];
     meta.description = "S-expression parsing library";
   };
 
   parsexp_io = janePackage {
-    name = "parsexp_io";
+    pname = "parsexp_io";
     hash = "0gcmh4dg48xgszladq92yhk1hf492zf0smz462xrwknzlfdkz6a5";
     propagatedBuildInputs = [ parsexp ];
     meta.description = "S-expression parsing library (IO functions)";
   };
 
   patience_diff = janePackage {
-    name = "patience_diff";
+    pname = "patience_diff";
     hash = "0vpx9xj1ich5qmj3m26vlmix3nsdj7pd1xzhqwbc7ad2kqwy3grg";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Tool and library implementing patience diff";
   };
 
   posixat = janePackage {
-    name = "posixat";
+    pname = "posixat";
     hash = "0ak93dyzi6sc6gb0j07fj85b24d8bv6g2hm7jj5xwb39kjwh51jl";
     propagatedBuildInputs = [ ppx_sexp_conv ];
     meta.description = "Binding to the posix *at functions";
@@ -585,28 +585,28 @@ rec {
   };
 
   rpc_parallel = janePackage {
-    name = "rpc_parallel";
+    pname = "rpc_parallel";
     hash = "0s72msl2p27bz0knjlpgy5qwp0w4z76cq801ps0sab35f8jjfs38";
     propagatedBuildInputs = [ async ];
     meta.description = "Type-safe library for building parallel applications";
   };
 
   shexp = janePackage {
-    name = "shexp";
+    pname = "shexp";
     hash = "1fkz4l9z4i0fz2kccd5blm2j9x2x4z6y1cn29wjmc3spqfxbq37y";
     propagatedBuildInputs = [ posixat spawn ];
     meta.description = "Process library and s-expression based shell";
   };
 
   topological_sort = janePackage {
-    name = "topological_sort";
+    pname = "topological_sort";
     hash = "1d64fyq0clsgham9p1f5rk01z8pxalglp92xmqw2iznyw0vxhvsy";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Topological sort algorithm";
   };
 
   typerep_extended = janePackage {
-    name = "typerep_extended";
+    pname = "typerep_extended";
     hash = "15gq8mrvlipd616rffr3f0wqw5d0ijnnizix610g2d5viirh0j9p";
     propagatedBuildInputs = [ core_kernel ];
     meta.description = "Runtime types for OCaml (Extended)";
diff --git a/pkgs/development/ocaml-modules/lambda-term/default.nix b/pkgs/development/ocaml-modules/lambda-term/default.nix
index ba68c0463f8..18fe235710f 100644
--- a/pkgs/development/ocaml-modules/lambda-term/default.nix
+++ b/pkgs/development/ocaml-modules/lambda-term/default.nix
@@ -1,26 +1,19 @@
-{ stdenv, fetchurl, libev, ocaml, findlib, dune
-, zed, lwt_log, lwt_react
-}:
+{ stdenv, fetchurl, libev, buildDunePackage, zed, lwt_log, lwt_react }:
 
-assert stdenv.lib.versionAtLeast ocaml.version "4.02";
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "lambda-term";
   version = "1.13";
-  name = "ocaml${ocaml.version}-lambda-term-${version}";
+
+  minimumOCamlVersion = "4.02";
 
   src = fetchurl {
-    url = "https://github.com/diml/lambda-term/archive/${version}.tar.gz";
+    url = "https://github.com/diml/${pname}/archive/${version}.tar.gz";
     sha256 = "1hy5ryagqclgdm9lzh1qil5mrynlypv7mn6qm858hdcnmz9zzn0l";
   };
 
-  buildInputs = [ libev ocaml findlib dune ];
-
+  buildInputs = [ libev ];
   propagatedBuildInputs = [ zed lwt_log lwt_react ];
 
-  buildPhase = "dune build -p lambda-term";
-
-  inherit (dune) installPhase;
-
   hasSharedObjects = true;
 
   meta = { description = "Terminal manipulation library for OCaml";
@@ -41,7 +34,6 @@ stdenv.mkDerivation rec {
 
     homepage = https://github.com/diml/lambda-term;
     license = stdenv.lib.licenses.bsd3;
-    platforms = ocaml.meta.platforms or [];
     maintainers = [
       stdenv.lib.maintainers.gal_bolle
     ];
diff --git a/pkgs/development/ocaml-modules/linenoise/default.nix b/pkgs/development/ocaml-modules/linenoise/default.nix
index e7120ad3857..b6b9b4163ff 100644
--- a/pkgs/development/ocaml-modules/linenoise/default.nix
+++ b/pkgs/development/ocaml-modules/linenoise/default.nix
@@ -1,29 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, dune, findlib, result }:
+{ stdenv, fetchFromGitHub, buildDunePackage, result }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "linenoise is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-linenoise-${version}";
+buildDunePackage rec {
+  pname = "linenoise";
   version = "1.1.0";
+
+  minimumOCamlVersion = "4.02";
+
   src = fetchFromGitHub {
     owner = "fxfactorial";
-    repo = "ocaml-linenoise";
+    repo = "ocaml-${pname}";
     rev = "v${version}";
     sha256 = "1h6rqfgmhmd7p5z8yhk6zkbrk4yzw1v2fgwas2b7g3hqs6y0xj0q";
   };
 
-  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ result ];
 
-  inherit (dune) installPhase;
-
   meta = {
     description = "OCaml bindings to linenoise";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
     inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/development/ocaml-modules/lwt/4.x.nix b/pkgs/development/ocaml-modules/lwt/4.x.nix
index f43a65065b9..105104bc308 100644
--- a/pkgs/development/ocaml-modules/lwt/4.x.nix
+++ b/pkgs/development/ocaml-modules/lwt/4.x.nix
@@ -1,35 +1,29 @@
-{ stdenv, fetchzip, pkgconfig, ncurses, libev, dune
-, ocaml, findlib, cppo
-, ocaml-migrate-parsetree, ppx_tools_versioned, result
+{ stdenv, fetchzip, pkgconfig, ncurses, libev, buildDunePackage, ocaml
+, cppo, ocaml-migrate-parsetree, ppx_tools_versioned, result
 }:
 
 let inherit (stdenv.lib) optional versionAtLeast; in
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "lwt";
   version = "4.1.0";
-  name = "ocaml${ocaml.version}-lwt-${version}";
 
   src = fetchzip {
-    url = "https://github.com/ocsigen/lwt/archive/${version}.tar.gz";
+    url = "https://github.com/ocsigen/${pname}/archive/${version}.tar.gz";
     sha256 = "16wnc61kfj54z4q8sn9f5iik37pswz328hcz3z6rkza3kh3s6wmm";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ocaml findlib dune cppo
-    ocaml-migrate-parsetree ppx_tools_versioned
-  ] ++ optional (!versionAtLeast ocaml.version "4.07") ncurses;
+  buildInputs = [ cppo ocaml-migrate-parsetree ppx_tools_versioned ]
+   ++ optional (!versionAtLeast ocaml.version "4.07") ncurses;
   propagatedBuildInputs = [ libev result ];
 
   configurePhase = "ocaml src/util/configure.ml -use-libev true";
-  buildPhase = "jbuilder build -p lwt";
-  inherit (dune) installPhase;
 
   meta = {
     homepage = "https://ocsigen.org/lwt/";
     description = "A cooperative threads library for OCaml";
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     license = stdenv.lib.licenses.lgpl21;
-    inherit (ocaml.meta) platforms;
   };
 }
-
diff --git a/pkgs/development/ocaml-modules/lwt/ppx.nix b/pkgs/development/ocaml-modules/lwt/ppx.nix
index 89e326557b5..7ba22a025f4 100644
--- a/pkgs/development/ocaml-modules/lwt/ppx.nix
+++ b/pkgs/development/ocaml-modules/lwt/ppx.nix
@@ -1,19 +1,15 @@
-{ stdenv, dune, ocaml, findlib, lwt, ppx_tools_versioned }:
+{ stdenv, buildDunePackage, lwt, ppx_tools_versioned }:
 
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-lwt_ppx-${lwt.version}";
+buildDunePackage {
+  pname = "lwt_ppx";
 
-  inherit (lwt) src;
-
-  buildInputs = [ dune ocaml findlib ppx_tools_versioned ];
+  inherit (lwt) src version;
 
+  buildInputs = [ ppx_tools_versioned ];
   propagatedBuildInputs = [ lwt ];
 
-  buildPhase = "dune build -p lwt_ppx";
-  installPhase = "${dune.installPhase} lwt_ppx.install";
-
   meta = {
     description = "Ppx syntax extension for Lwt";
-    inherit (lwt.meta) license platforms homepage maintainers;
+    inherit (lwt.meta) license homepage maintainers;
   };
 }
diff --git a/pkgs/development/ocaml-modules/lwt_log/default.nix b/pkgs/development/ocaml-modules/lwt_log/default.nix
index a3d34b190b8..7eea297e3ee 100644
--- a/pkgs/development/ocaml-modules/lwt_log/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_log/default.nix
@@ -1,33 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, lwt }:
+{ stdenv, fetchFromGitHub, buildDunePackage, lwt }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "lwt_log is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "lwt_log";
   version = "1.1.0";
-  name = "ocaml${ocaml.version}-lwt_log-${version}";
+
+  minimumOCamlVersion = "4.02";
 
   src = fetchFromGitHub {
     owner = "aantron";
-    repo = "lwt_log";
+    repo = pname;
     rev = version;
     sha256 = "1c58gkqfvyf2j11jwj2nh4iq999wj9xpnmr80hz9d0nk9fv333pi";
   };
 
-  buildInputs = [ ocaml findlib dune ];
-
   propagatedBuildInputs = [ lwt ];
 
-  buildPhase = "dune build -p lwt_log";
-
-  inherit (dune) installPhase;
-
   meta = {
     description = "Lwt logging library (deprecated)";
     homepage = "https://github.com/aantron/lwt_log";
     license = stdenv.lib.licenses.lgpl21;
-    inherit (ocaml.meta) platforms;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/lwt_react/default.nix b/pkgs/development/ocaml-modules/lwt_react/default.nix
index 4d505b23ae0..41276668ecc 100644
--- a/pkgs/development/ocaml-modules/lwt_react/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_react/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
 
 	meta = {
 		description = "Helpers for using React with Lwt";
-		inherit (lwt.meta) homepage license maintainers platforms;
+		inherit (lwt.meta) homepage license maintainers;
+    inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/lwt_ssl/default.nix b/pkgs/development/ocaml-modules/lwt_ssl/default.nix
index a06e7252986..49c2b7de398 100644
--- a/pkgs/development/ocaml-modules/lwt_ssl/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_ssl/default.nix
@@ -1,28 +1,22 @@
-{ stdenv, fetchzip, ocaml, findlib, dune, ssl, lwt }:
+{ stdenv, fetchzip, buildDunePackage, ssl, lwt }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "lwt_ssl is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "lwt_ssl";
   version = "1.1.2";
-  name = "ocaml${ocaml.version}-lwt_ssl-${version}";
+
+  minimumOCamlVersion = "4.02";
 
   src = fetchzip {
-    url = "https://github.com/aantron/lwt_ssl/archive/${version}.tar.gz";
+    url = "https://github.com/aantron/${pname}/archive/${version}.tar.gz";
     sha256 = "1q0an3djqjxv83v3iswi7m81braqx93kcrcwrxwmf6jzhdm4pn15";
   };
 
-  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ ssl lwt ];
 
-  inherit (dune) installPhase;
-
   meta = {
     homepage = "https://github.com/aantron/lwt_ssl";
     description = "OpenSSL binding with concurrent I/O";
     license = stdenv.lib.licenses.lgpl21;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/mstruct/default.nix b/pkgs/development/ocaml-modules/mstruct/default.nix
index 9184975f069..ae26f879ef8 100644
--- a/pkgs/development/ocaml-modules/mstruct/default.nix
+++ b/pkgs/development/ocaml-modules/mstruct/default.nix
@@ -1,33 +1,24 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
-, cstruct
-}:
+{ stdenv, fetchFromGitHub, buildDunePackage, cstruct }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "mstruct is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+	pname = "mstruct";
 	version = "1.4.0";
-	name = "ocaml${ocaml.version}-mstruct-${version}";
+
+  minimumOCamlVersion = "4.02";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
-		repo = "ocaml-mstruct";
+		repo = "ocaml-${pname}";
 		rev = "v${version}";
 		sha256 = "1p4ygwzs3n1fj4apfib0z0sabpph21bkq1dgjk4bsa59pq4prncm";
 	};
 
-	buildInputs = [ ocaml findlib dune ];
-
 	propagatedBuildInputs = [ cstruct ];
 
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "A thin mutable layer on top of cstruct";
 		license = stdenv.lib.licenses.isc;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		inherit (src.meta) homepage;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
index e8074a51e52..a9496576875 100644
--- a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
@@ -1,30 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, dune, result }:
+{ stdenv, fetchFromGitHub, buildDunePackage, result }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "ocaml-migrate-parsetree is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-   name = "ocaml${ocaml.version}-ocaml-migrate-parsetree-${version}";
+buildDunePackage rec {
+   pname = "ocaml-migrate-parsetree";
    version = "1.1.0";
 
    src = fetchFromGitHub {
      owner = "ocaml-ppx";
-     repo = "ocaml-migrate-parsetree";
+     repo = pname;
      rev = "v${version}";
      sha256 = "1d2n349d1cqm3dr09mwy5m9rfd4bkkqvri5i94wknpsrr35vnrr1";
    };
 
-   buildInputs = [ ocaml findlib ocamlbuild dune ];
    propagatedBuildInputs = [ result ];
 
-   inherit (dune) installPhase;
-
    meta = {
      description = "Convert OCaml parsetrees between different major versions";
      license = stdenv.lib.licenses.lgpl21;
      maintainers = [ stdenv.lib.maintainers.vbgl ];
      inherit (src.meta) homepage;
-     inherit (ocaml.meta) platforms;
    };
 }
diff --git a/pkgs/development/ocaml-modules/odoc/default.nix b/pkgs/development/ocaml-modules/odoc/default.nix
index 3b100510627..0b342a654e6 100644
--- a/pkgs/development/ocaml-modules/odoc/default.nix
+++ b/pkgs/development/ocaml-modules/odoc/default.nix
@@ -1,30 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
-, bos, cmdliner, doc-ock-html, doc-ock-xml
-}:
+{ stdenv, fetchFromGitHub, buildDunePackage, cppo, bos, cmdliner, tyxml }:
+
+buildDunePackage rec {
+  pname = "odoc";
+  version = "1.3.0";
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-odoc-${version}";
-  version = "1.2.0";
   src = fetchFromGitHub {
     owner = "ocaml";
-    repo = "odoc";
-    rev = "v${version}";
-    sha256 = "0ixnhfpm1nw4bvjj8qhcyy283pdr5acqpg5wxwq3n1l4mad79cgh";
+    repo = pname;
+    rev = version;
+    sha256 = "0hjan5aj5zk8j8qyagv9r4hqm469mh207cv2m6kxwgnw0c3cz7sy";
   };
 
-  buildInputs = [ ocaml findlib dune cmdliner ];
-
-  propagatedBuildInputs = [ bos doc-ock-html doc-ock-xml ];
-
-  configurePhase = "ocaml bin/set-etc bin/odoc_etc.ml $out/etc/odoc";
-
-  inherit (dune) installPhase;
+  buildInputs = [ cppo bos cmdliner tyxml ];
 
   meta = {
     description = "A documentation generator for OCaml";
     license = stdenv.lib.licenses.isc;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
     inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/development/ocaml-modules/ppx_blob/default.nix b/pkgs/development/ocaml-modules/ppx_blob/default.nix
index 72e0e5e121a..b36eaed500f 100644
--- a/pkgs/development/ocaml-modules/ppx_blob/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_blob/default.nix
@@ -1,26 +1,18 @@
-{ stdenv, fetchurl, ocaml, findlib, dune, alcotest
-, ocaml-migrate-parsetree
-}:
+{ stdenv, fetchurl, buildDunePackage, alcotest, ocaml-migrate-parsetree }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-ppx_blob-${version}";
+buildDunePackage rec {
+  pname = "ppx_blob";
   version = "0.4.0";
 
   src = fetchurl {
-    url = "https://github.com/johnwhitington/ppx_blob/releases/download/${version}/ppx_blob-${version}.tbz";
+    url = "https://github.com/johnwhitington/${pname}/releases/download/${version}/ppx_blob-${version}.tbz";
     sha256 = "1xmslk1mwdzhy1bydgsjlcb7h544c39hvxa8lywp8w72gaggjl16";
   };
 
   unpackCmd = "tar xjf $curSrc";
 
-  buildInputs = [ ocaml findlib dune alcotest ocaml-migrate-parsetree ];
-
-  buildPhase = "dune build -p ppx_blob";
-
+  buildInputs = [ alcotest ocaml-migrate-parsetree ];
   doCheck = true;
-  checkPhase = "dune runtest -p ppx_blob";
-
-  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/johnwhitington/ppx_blob;
diff --git a/pkgs/development/ocaml-modules/ppx_derivers/default.nix b/pkgs/development/ocaml-modules/ppx_derivers/default.nix
index edd08606761..0482e04b1c4 100644
--- a/pkgs/development/ocaml-modules/ppx_derivers/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_derivers/default.nix
@@ -1,29 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune }:
+{ stdenv, fetchFromGitHub, buildDunePackage }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "ppx_derivers is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-	name = "ocaml${ocaml.version}-ppx_derivers-${version}";
+buildDunePackage rec {
+	pname = "ppx_derivers";
 	version = "1.2";
 
+  minimumOCamlVersion = "4.02";
+
 	src = fetchFromGitHub {
 		owner = "diml";
-		repo = "ppx_derivers";
+		repo = pname;
 		rev = version;
 		sha256 = "0bnhihl1w31as5w2czly1v3d6pbir9inmgsjg2cj6aaj9v1dzd85";
 	};
 
-	buildInputs = [ ocaml findlib dune ];
-
-	inherit (dune) installPhase;
-
 	meta = {
 		description = "Shared [@@deriving] plugin registry";
 		license = stdenv.lib.licenses.bsd3;
 		maintainers = [ stdenv.lib.maintainers.vbgl ];
 		inherit (src.meta) homepage;
-		inherit (ocaml.meta) platforms;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
index 4c458b983d3..270afae754b 100644
--- a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
@@ -1,12 +1,11 @@
-{ stdenv, fetchurl, ocaml, findlib, dune, ocaml-migrate-parsetree }:
+{ stdenv, fetchurl, buildDunePackage, ocaml-migrate-parsetree }:
 
-assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
   pname = "ppx_gen_rec";
-  name = "ocaml${ocaml.version}-${pname}-${version}";
   version = "1.0.0";
 
+  minimumOCamlVersion = "4.01";
+
   src = fetchurl {
     url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
     sha256 = "0qy0wa3rd5yh1612jijadi1yddfslpsmmmf69phi2dhr3vmkhza7";
@@ -14,17 +13,12 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ];
-
-  buildPhase = "dune build -p ppx_gen_rec";
-
-  inherit (dune) installPhase;
+  buildInputs = [ ocaml-migrate-parsetree ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/flowtype/ocaml-ppx_gen_rec;
     description = "ocaml preprocessor that generates a recursive module";
     license = licenses.mit;
-    platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.frontsideair ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ppxlib/default.nix b/pkgs/development/ocaml-modules/ppxlib/default.nix
index 589eb913337..a1e43d6d13d 100644
--- a/pkgs/development/ocaml-modules/ppxlib/default.nix
+++ b/pkgs/development/ocaml-modules/ppxlib/default.nix
@@ -1,34 +1,26 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune
+{ stdenv, fetchFromGitHub, buildDunePackage
 , ocaml-compiler-libs, ocaml-migrate-parsetree, ppx_derivers, stdio
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "ppxlib";
   version = "0.3.1";
-  name = "ocaml${ocaml.version}-ppxlib-${version}";
 
   src = fetchFromGitHub {
     owner = "ocaml-ppx";
-    repo = "ppxlib";
+    repo = pname;
     rev = version;
     sha256 = "0qpjl84x8abq9zivifb0k8ld7fa1lrhkbajmmccvfv06ja3as1v4";
   };
 
-  buildInputs = [ ocaml findlib dune ];
-
   propagatedBuildInputs = [
     ocaml-compiler-libs ocaml-migrate-parsetree ppx_derivers stdio
   ];
 
-  buildPhase = "dune build";
-
-  inherit (dune) installPhase;
-
   meta = {
     description = "Comprehensive ppx tool set";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
-
 }
diff --git a/pkgs/development/ocaml-modules/re/default.nix b/pkgs/development/ocaml-modules/re/default.nix
index c4215b98a50..b2413b7dddd 100644
--- a/pkgs/development/ocaml-modules/re/default.nix
+++ b/pkgs/development/ocaml-modules/re/default.nix
@@ -1,29 +1,22 @@
-{ stdenv, fetchzip, ocaml, findlib, dune, ounit, seq }:
+{ stdenv, fetchzip, buildDunePackage, ounit, seq }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "re is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-re-${version}";
+buildDunePackage rec {
+  pname = "re";
   version = "1.8.0";
 
+  minimumOCamlVersion = "4.02";
+
   src = fetchzip {
     url = "https://github.com/ocaml/ocaml-re/archive/${version}.tar.gz";
     sha256 = "0ch6hvmm4ym3w2vghjxf3ka5j1023a37980fqi4zcb7sx756z20i";
   };
 
-  buildInputs = [ ocaml findlib dune ounit ];
+  buildInputs = [ ounit ];
   propagatedBuildInputs = [ seq ];
-
   doCheck = true;
-  checkPhase = "jbuilder runtest";
-
-  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/ocaml/ocaml-re;
-    platforms = ocaml.meta.platforms or [];
     description = "Pure OCaml regular expressions, with support for Perl and POSIX-style strings";
     license = stdenv.lib.licenses.lgpl2;
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
diff --git a/pkgs/development/ocaml-modules/rresult/default.nix b/pkgs/development/ocaml-modules/rresult/default.nix
index d1a796a58e5..2cb602973f5 100644
--- a/pkgs/development/ocaml-modules/rresult/default.nix
+++ b/pkgs/development/ocaml-modules/rresult/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-rresult-${version}";
-	version = "0.5.0";
+	version = "0.6.0";
 	src = fetchurl {
 		url = "http://erratique.ch/software/rresult/releases/rresult-${version}.tbz";
-		sha256 = "1xxycxhdhaq8p9vhwi93s2mlxjwgm44fcxybx5vghzgbankz9yhm";
+		sha256 = "1k69a3gvrk7f2cshwjzvk7818f0bwxhacgd14wxy6d4gmrggci86";
 	};
 
 	unpackCmd = "tar xjf $src";
diff --git a/pkgs/development/ocaml-modules/sequence/default.nix b/pkgs/development/ocaml-modules/sequence/default.nix
index 59641458338..e5ead36d1c1 100644
--- a/pkgs/development/ocaml-modules/sequence/default.nix
+++ b/pkgs/development/ocaml-modules/sequence/default.nix
@@ -1,28 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, qtest, result }:
+{ stdenv, fetchFromGitHub, buildDunePackage, qtest, result }:
 
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-then throw "sequence is not available for OCaml ${ocaml.version}"
-else
+buildDunePackage rec {
+  pname = "sequence";
+  version = "1.1";
 
-let version = "1.1"; in
-
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-sequence-${version}";
+  minimumOCamlVersion = "4.02";
 
   src = fetchFromGitHub {
     owner = "c-cube";
-    repo = "sequence";
+    repo = pname;
     rev = version;
     sha256 = "08j37nldw47syq3yw4mzhhvya43knl0d7biddp0q9hwbaxhzgi44";
   };
 
-  buildInputs = [ ocaml findlib dune qtest ];
+  buildInputs = [ qtest ];
   propagatedBuildInputs = [ result ];
 
   doCheck = true;
-  checkPhase = "dune runtest";
-
-  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/c-cube/sequence;
@@ -34,6 +28,5 @@ stdenv.mkDerivation {
       sequence is iterated/folded on.
     '';
     license = stdenv.lib.licenses.bsd2;
-    platforms = ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/development/ocaml-modules/sqlexpr/default.nix b/pkgs/development/ocaml-modules/sqlexpr/default.nix
index cad4dcafb64..7d988e27ff0 100644
--- a/pkgs/development/ocaml-modules/sqlexpr/default.nix
+++ b/pkgs/development/ocaml-modules/sqlexpr/default.nix
@@ -1,32 +1,24 @@
-{ stdenv, fetchurl, ocaml, findlib, dune, ocaml_lwt
+{ stdenv, fetchurl, buildDunePackage, ocaml_lwt
 , lwt_ppx, ocaml-migrate-parsetree, ppx_tools_versioned, csv, ocaml_sqlite3
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "sqlexpr";
   version = "0.9.0";
-  name = "ocaml${ocaml.version}-sqlexpr-${version}";
 
   src = fetchurl {
   url = "https://github.com/mfp/ocaml-sqlexpr/releases/download/${version}/ocaml-sqlexpr-${version}.tar.gz";
   sha256 = "0z0bkzi1mh0m39alzr2ds7hjpfxffx6azpfsj2wpaxrg64ks8ypd";
   };
 
-  buildInputs = [ ocaml findlib dune lwt_ppx ocaml-migrate-parsetree ppx_tools_versioned ];
-
+  buildInputs = [ lwt_ppx ocaml-migrate-parsetree ppx_tools_versioned ];
   propagatedBuildInputs = [ ocaml_lwt csv ocaml_sqlite3 ];
-
-  buildPhase = "dune build -p sqlexpr";
-
   doCheck = true;
-  checkPhase = "dune runtest -p sqlexpr";
-
-  inherit (dune) installPhase;
 
   meta = {
     description = "Type-safe, convenient SQLite database access";
     homepage = "https://github.com/mfp/ocaml-sqlexpr";
     license = stdenv.lib.licenses.lgpl21;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/sqlexpr/ppx.nix b/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
index b908e173257..5ab6ff226f2 100644
--- a/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
+++ b/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
@@ -1,15 +1,11 @@
-{ stdenv, ocaml, findlib, dune, sqlexpr, ounit
+{ stdenv, buildDunePackage, sqlexpr, ounit
 , ppx_core, ppx_tools_versioned, re, lwt_ppx
 }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-ppx_sqlexpr-${version}";
-  inherit (sqlexpr) version src installPhase meta;
-
-  buildInputs = [ ocaml findlib dune sqlexpr ounit ppx_core ppx_tools_versioned re lwt_ppx ];
-
-  buildPhase = "dune build -p ppx_sqlexpr";
+buildDunePackage {
+  pname = "ppx_sqlexpr";
+  inherit (sqlexpr) version src meta;
 
+  buildInputs = [ sqlexpr ounit ppx_core ppx_tools_versioned re lwt_ppx ];
   doCheck = true;
-  checkPhase = "dune runtest -p ppx_sqlexpr";
 }
diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix
index 4959ef7b34a..a8b664b0720 100644
--- a/pkgs/development/ocaml-modules/uri/default.nix
+++ b/pkgs/development/ocaml-modules/uri/default.nix
@@ -1,33 +1,26 @@
-{ stdenv, fetchurl, ocaml, findlib, dune, ppx_sexp_conv, ounit
+{ stdenv, fetchurl, buildDunePackage, ppx_sexp_conv, ounit
 , re, sexplib, stringext
 }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "uri";
   version = "1.9.6";
-  name = "ocaml${ocaml.version}-uri-${version}";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-uri/releases/download/v${version}/uri-${version}.tbz";
+    url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
     sha256 = "1m845rwd70wi4iijkrigyz939m1x84ba70hvv0d9sgk6971w4kz0";
   };
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml findlib dune ounit ];
+  buildInputs = [ ounit ];
   propagatedBuildInputs = [ ppx_sexp_conv re sexplib stringext ];
-
-  buildPhase = "jbuilder build";
-
   doCheck = true;
-  checkPhase = "jbuilder runtest";
-
-  inherit (dune) installPhase;
 
   meta = {
     homepage = "https://github.com/mirage/ocaml-uri";
     description = "RFC3986 URI parsing library for OCaml";
     license = stdenv.lib.licenses.isc;
     maintainers = [ stdenv.lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/visitors/default.nix b/pkgs/development/ocaml-modules/visitors/default.nix
new file mode 100644
index 00000000000..506721f7bf5
--- /dev/null
+++ b/pkgs/development/ocaml-modules/visitors/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, cppo, ppx_tools, ppx_deriving, result }:
+
+stdenv.mkDerivation {
+  name = "ocaml${ocaml.version}-visitors-20171124";
+
+  src = fetchurl {
+    url = http://gallium.inria.fr/~fpottier/visitors/visitors-20171124.tar.gz;
+    sha256 = "04047k2v0pgwcdkgw7jk4955pgil0nj2ji0zfhmlqrdbinyfqzac";
+  };
+
+  buildInputs = [ ocaml findlib ocamlbuild cppo ];
+  propagatedBuildInputs = [ ppx_tools ppx_deriving result ];
+
+  createFindlibDestdir = true;
+
+  meta = with stdenv.lib; {
+    homepage = https://gitlab.inria.fr/fpottier/visitors;
+    license = licenses.lgpl21;
+    description = "An OCaml syntax extension (technically, a ppx_deriving plugin) which generates object-oriented visitors for traversing and transforming data structures";
+    inherit (ocaml.meta) platforms;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/wtf8/default.nix b/pkgs/development/ocaml-modules/wtf8/default.nix
index 58ce7778c41..1c105fbc025 100644
--- a/pkgs/development/ocaml-modules/wtf8/default.nix
+++ b/pkgs/development/ocaml-modules/wtf8/default.nix
@@ -1,12 +1,11 @@
-{ stdenv, fetchurl, ocaml, findlib, dune }:
+{ stdenv, fetchurl, buildDunePackage }:
 
-assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
-
-stdenv.mkDerivation rec {
+buildDunePackage rec {
   pname = "wtf8";
-  name = "ocaml-${pname}-${version}";
   version = "1.0.1";
 
+  minimumOCamlVersion = "4.01";
+
   src = fetchurl {
     url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
     sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
@@ -14,17 +13,10 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib dune ];
-
-  buildPhase = "dune build -p wtf8";
-
-  inherit (dune) installPhase;
-
   meta = with stdenv.lib; {
     homepage = https://github.com/flowtype/ocaml-wtf8;
     description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
     license = licenses.mit;
-    platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.eqyiel ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/zmq/default.nix b/pkgs/development/ocaml-modules/zmq/default.nix
index a792877e059..fe6a17e876b 100644
--- a/pkgs/development/ocaml-modules/zmq/default.nix
+++ b/pkgs/development/ocaml-modules/zmq/default.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, dune, czmq, stdint }:
+{ stdenv, fetchFromGitHub, buildDunePackage, czmq, stdint }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-zmq-${version}";
+buildDunePackage rec {
+  pname = "zmq";
   version = "20180726";
+
   src = fetchFromGitHub {
     owner = "issuu";
     repo = "ocaml-zmq";
@@ -14,19 +15,13 @@ stdenv.mkDerivation rec {
     ./ocaml-zmq-issue43.patch
   ];
 
-  buildInputs = [ ocaml findlib dune czmq ];
-
+  buildInputs = [ czmq ];
   propagatedBuildInputs = [ stdint ];
 
-  buildPhase = "dune build -p zmq";
-
-  inherit (dune) installPhase;
-
   meta = with stdenv.lib; {
     description = "ZeroMQ bindings for OCaml";
     license     = licenses.mit;
     maintainers = with maintainers; [ akavel ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/zmq/lwt.nix b/pkgs/development/ocaml-modules/zmq/lwt.nix
index 80c934b44d6..65595992e2c 100644
--- a/pkgs/development/ocaml-modules/zmq/lwt.nix
+++ b/pkgs/development/ocaml-modules/zmq/lwt.nix
@@ -1,12 +1,8 @@
-{ stdenv, ocaml, findlib, dune, zmq, ocaml_lwt }:
+{ stdenv, buildDunePackage, zmq, ocaml_lwt }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-zmq-lwt-${version}";
-  inherit (zmq) version src installPhase meta;
-
-  buildInputs = [ ocaml findlib dune ];
+buildDunePackage rec {
+  pname = "zmq-lwt";
+  inherit (zmq) version src meta;
 
   propagatedBuildInputs = [ zmq ocaml_lwt ];
-
-  buildPhase = "dune build -p zmq-lwt";
 }
diff --git a/pkgs/development/python-modules/Flask-PyMongo/default.nix b/pkgs/development/python-modules/Flask-PyMongo/default.nix
index 7c37bdaddd5..f32f402a325 100644
--- a/pkgs/development/python-modules/Flask-PyMongo/default.nix
+++ b/pkgs/development/python-modules/Flask-PyMongo/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "Flask-PyMongo";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0b99dd99985660ebbc4b34bb44550f88a527cbc573faa01febccce3c4ab28347";
+    sha256 = "0yi1r13p3l1d5dpdfnyp239l6l17nwvyky8y62nmmqxlsp2ja9hi";
   };
 
   checkInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/Logbook/default.nix b/pkgs/development/python-modules/Logbook/default.nix
index 711f0f5457b..5b0e10340bd 100644
--- a/pkgs/development/python-modules/Logbook/default.nix
+++ b/pkgs/development/python-modules/Logbook/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "Logbook";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1n8wzm2nc99gbvb44y2fbb59sy3c4awkwfgy4pbwv7z892ykw2iw";
+    sha256 = "1nsnz9qdcba85q57qbam6skfvq2k7savn64qdy44cjnh0vkmqdrj";
   };
 
   checkInputs = [ pytest ] ++ lib.optionals (!isPy3k) [ mock ];
diff --git a/pkgs/development/python-modules/alerta-server/default.nix b/pkgs/development/python-modules/alerta-server/default.nix
new file mode 100644
index 00000000000..a16d54af260
--- /dev/null
+++ b/pkgs/development/python-modules/alerta-server/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPythonPackage, fetchPypi, makeWrapper
+, python-dateutil, requests, pymongo, raven, bcrypt, flask, pyjwt, flask-cors, psycopg2, pytz, flask-compress, jinja2
+}:
+
+buildPythonPackage rec {
+  pname = "alerta-server";
+  version = "6.3.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0mp97scdz2scdzi9va99hghmjz25zssgwg07i6cldzkc8j71kax5";
+  };
+
+  buildInputs = [ python-dateutil requests pymongo raven bcrypt flask pyjwt flask-cors psycopg2 pytz flask-compress jinja2 ];
+
+  doCheck = false; # We can't run the tests from Nix, because they rely on the presence of a working MongoDB server
+
+  postInstall = ''
+    wrapProgram $out/bin/alertad --prefix PYTHONPATH : "$PYTHONPATH"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://alerta.io;
+    description = "Alerta Monitoring System server";
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/alerta/default.nix b/pkgs/development/python-modules/alerta/default.nix
new file mode 100644
index 00000000000..47125894e5b
--- /dev/null
+++ b/pkgs/development/python-modules/alerta/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPythonPackage, fetchPypi, makeWrapper
+, six, click, requests, pytz, tabulate
+}:
+
+buildPythonPackage rec {
+  pname = "alerta";
+  version = "6.3.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "08l366g0arpd23bm7bzk0hpmfd3z6brb8p24rjwkb3gvafhk7cz9";
+  };
+
+  buildInputs = [ six click requests pytz tabulate ];
+
+  doCheck = false;
+
+  postInstall = ''
+    wrapProgram $out/bin/alerta --prefix PYTHONPATH : "$PYTHONPATH"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://alerta.io;
+    description = "Alerta Monitoring System command-line interface";
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/astral/default.nix b/pkgs/development/python-modules/astral/default.nix
index 1be99b5d4dd..577a92eb891 100644
--- a/pkgs/development/python-modules/astral/default.nix
+++ b/pkgs/development/python-modules/astral/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "astral";
-  version = "1.6.1";
+  version = "1.7.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ab0c08f2467d35fcaeb7bad15274743d3ac1ad18b5391f64a0058a9cd192d37d";
+    sha256 = "01raz1c29v08f05l395v1hxllad35m5ld1jj51knb53c0396y248";
   };
 
   propagatedBuildInputs = [ pytz requests ];
diff --git a/pkgs/development/python-modules/authres/default.nix b/pkgs/development/python-modules/authres/default.nix
index a0ec276f22d..8fe664f4231 100644
--- a/pkgs/development/python-modules/authres/default.nix
+++ b/pkgs/development/python-modules/authres/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "authres";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1mcllhrwr23hwa2jn3m15k29ks1205ymwafjzchh8ma664hnzv6v";
+    sha256 = "0bxclx021zn4hhrpaw5fl61bhnf17yqjd0pvwxqfqwdkxdjpx37b";
   };
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/autologging/default.nix b/pkgs/development/python-modules/autologging/default.nix
new file mode 100644
index 00000000000..090eb68675b
--- /dev/null
+++ b/pkgs/development/python-modules/autologging/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "Autologging";
+  version = "1.2.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "16v2k16m433fxlvl7f0081n67rpxhs2hyn1ivkx1xs5qjxpv5n3k";
+    extension = "zip";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = http://ninthtest.info/python-autologging/;
+    description = "Easier logging and tracing for Python classes";
+    license = licenses.mit;
+    maintainers = with maintainers; [ twey ];
+  };
+}
diff --git a/pkgs/development/python-modules/click-completion/default.nix b/pkgs/development/python-modules/click-completion/default.nix
index a6b36232531..0dd5e22abf5 100644
--- a/pkgs/development/python-modules/click-completion/default.nix
+++ b/pkgs/development/python-modules/click-completion/default.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "click-completion";
-  version = "0.4.1";
+  version = "0.5.0";
   disabled = (!isPy3k);
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1fjm22dyma26jrx4ki2z4dwbhcah4r848fz381x64sz5xxq3xdrk";
+    sha256 = "0k3chs301cnyq2jfl12lih5fa6r06nmxmbyp9dwvjm09v8f2c03n";
   };
 
   propagatedBuildInputs = [ click jinja2 shellingham six ];
diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix
index 65d0b1ab77f..e1c61ac7c16 100644
--- a/pkgs/development/python-modules/distributed/default.nix
+++ b/pkgs/development/python-modules/distributed/default.nix
@@ -26,12 +26,12 @@
 
 buildPythonPackage rec {
   pname = "distributed";
-  version = "1.23.3";
+  version = "1.24.0";
 
   # get full repository need conftest.py to run tests
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2d48a4de280fd7243ca76f9b12db5fe2486fc89dcdb510c77fa51f51733a04cc";
+    sha256 = "1a1wynxzs9i2mdz50fs23r9223fmkpwwr0kprqjyb31ladkk07c4";
   };
 
   checkInputs = [ pytest pytest-repeat pytest-faulthandler pytest-timeout mock joblib ];
diff --git a/pkgs/development/python-modules/django/2_1.nix b/pkgs/development/python-modules/django/2_1.nix
index f79a7c49ca9..adda83ce715 100644
--- a/pkgs/development/python-modules/django/2_1.nix
+++ b/pkgs/development/python-modules/django/2_1.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "Django";
-  version = "2.1.2";
+  version = "2.1.3";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ibbs76pzy8zd47yviljrp1s66fmbf5b62fixayaznj7pdzavg7g";
+    sha256 = "05k990b9zbj0nfkdcn13f5hg7ppfx9vffz5s0m66imd3mmlb5yhz";
   };
 
   patches = stdenv.lib.optionals withGdal [
diff --git a/pkgs/development/python-modules/dkimpy/default.nix b/pkgs/development/python-modules/dkimpy/default.nix
index 7ce8877bbce..fbd94900212 100644
--- a/pkgs/development/python-modules/dkimpy/default.nix
+++ b/pkgs/development/python-modules/dkimpy/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "dkimpy";
-  version = "0.8.1";
+  version = "0.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "125xakqg2j5jp4k5kafpnpazh9d97ysgayrsgpvm3nkdj4g8hw1j";
+    sha256 = "1cfj2jsfqbwkrg9y5inz61wxf8z4rrs5js6dizjgsd4lyb3b5inj";
 };
 
   checkInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/dropbox/default.nix b/pkgs/development/python-modules/dropbox/default.nix
index 5d344f18059..7693f7f0568 100644
--- a/pkgs/development/python-modules/dropbox/default.nix
+++ b/pkgs/development/python-modules/dropbox/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "dropbox";
-  version = "9.0.0";
+  version = "9.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "385c62c2983c3804ba0064762f9e5f4753ea20a132c727b4961d3b68e1372ac8";
+    sha256 = "0j6p5hgbglpwqd4jl53iqs83537464lybzc0aszi3w6wm6i0dlyq";
   };
 
   # Set DROPBOX_TOKEN environment variable to a valid token.
diff --git a/pkgs/development/python-modules/exchangelib/default.nix b/pkgs/development/python-modules/exchangelib/default.nix
index b4c2767f9dd..64686d94813 100644
--- a/pkgs/development/python-modules/exchangelib/default.nix
+++ b/pkgs/development/python-modules/exchangelib/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "exchangelib";
-  version = "1.11.4";
+  version = "1.12.0";
 
   # tests are not present in the PyPI version
   src = fetchFromGitHub {
     owner = "ecederstrand";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1fpbnjnmqm62vll3m2ys1naikch70kqm26hz86f1cl0r2l2afbab";
+    sha256 = "003c4flgsz6my64qm3mf9cb3wfxw0480aj9glf9wdz7xkwaq2l43";
   };
 
   # one test is failing due to it trying to send a request to example.com
diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix
index ed0b508a8ac..0cab6fc18a5 100644
--- a/pkgs/development/python-modules/fonttools/default.nix
+++ b/pkgs/development/python-modules/fonttools/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "fonttools";
-  version = "3.29.1";
+  version = "3.32.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a687ca070daddb7ee25e3472b631acd0e53dbf11ecdf8e76248ee556472ede9d";
+    sha256 = "16cg5v50x905c0dr34wqk70b0n3mqzp41iir2rd73f31d1z9jndq";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/gphoto2/default.nix b/pkgs/development/python-modules/gphoto2/default.nix
index 9757cb950dc..e49012d4502 100644
--- a/pkgs/development/python-modules/gphoto2/default.nix
+++ b/pkgs/development/python-modules/gphoto2/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "gphoto2";
-  version = "1.8.3";
+  version = "1.8.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0257f90f0d8342b8bc996ff1b45b2cd3219a29f8123aa21a6da159ee3566e49f";
+    sha256 = "1jvwq7qjr2iazmwdzkmr82iza7snylpm6x0kr9p0z5mkicg1l38l";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/httmock/default.nix b/pkgs/development/python-modules/httmock/default.nix
new file mode 100644
index 00000000000..b50753c5586
--- /dev/null
+++ b/pkgs/development/python-modules/httmock/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, requests }:
+
+buildPythonPackage rec {
+  pname   = "httmock";
+  version = "1.2.6";
+
+  src = fetchFromGitHub {
+    owner = "patrys";
+    repo = "httmock";
+    rev = version;
+    sha256 = "0iya8qsb2jm03s9p6sf1yzgm1irxl3dcq0k0a9ygl0skzjz5pvab";
+  };
+
+  checkInputs = [ requests ];
+
+  meta = with stdenv.lib; {
+    description = "A mocking library for requests";
+    homepage    = https://github.com/patrys/httmock;
+    license     = licenses.asl20;
+    maintainers = with maintainers; [ nyanloutre ];
+  };
+}
diff --git a/pkgs/development/python-modules/humanize/default.nix b/pkgs/development/python-modules/humanize/default.nix
index 25c335c0016..f1fac28dd93 100644
--- a/pkgs/development/python-modules/humanize/default.nix
+++ b/pkgs/development/python-modules/humanize/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     homepage = https://github.com/jmoiron/humanize;
     license = licenses.mit;
     maintainers = with maintainers; [ ];
-    platforms = platforms.linux; # can only test on linux
+    platforms = platforms.unix;
   };
 
 }
diff --git a/pkgs/development/python-modules/imageio/default.nix b/pkgs/development/python-modules/imageio/default.nix
index cdbcfee7180..de838028067 100644
--- a/pkgs/development/python-modules/imageio/default.nix
+++ b/pkgs/development/python-modules/imageio/default.nix
@@ -1,28 +1,42 @@
 { stdenv
 , buildPythonPackage
-, fetchurl
+, fetchPypi
+, pillow
+, psutil
 , pytest
 , numpy
+, isPy3k
+, futures
+, enum34
 }:
 
 buildPythonPackage rec {
   pname = "imageio";
-  version = "1.6";
+  version = "2.4.1";
 
-  src = fetchurl {
-    url = "https://github.com/imageio/imageio/archive/v${version}.tar.gz";
-    sha256 = "195snkk3fsbjqd5g1cfsd9alzs5q45gdbi2ka9ph4yxqb31ijrbv";
+  src = fetchPypi {
+    sha256 = "0jjiwf6wjipmykh33prjh448qv8mpgngfi77ndc7mym5r1xhgf0n";
+    inherit pname version;
   };
 
-  buildInputs = [ pytest ];
-  propagatedBuildInputs = [ numpy ];
+  checkInputs = [ pytest psutil ];
+  propagatedBuildInputs = [ numpy pillow ] ++ stdenv.lib.optionals (!isPy3k) [
+    futures
+    enum34
+  ];
 
   checkPhase = ''
+    export IMAGEIO_USERDIR="$TMP"
+    export IMAGEIO_NO_INTERNET="true"
+    export HOME="$(mktemp -d)"
     py.test
   '';
 
-  # Tries to write in /var/tmp/.imageio
-  doCheck = false;
+  # For some reason, importing imageio also imports xml on Nix, see
+  # https://github.com/imageio/imageio/issues/395
+  postPatch = ''
+    substituteInPlace tests/test_meta.py --replace '"urllib",' "\"urllib\",\"xml\""
+  '';
 
   meta = with stdenv.lib; {
     description = "Library for reading and writing a wide range of image, video, scientific, and volumetric data formats";
diff --git a/pkgs/development/python-modules/lark-parser/default.nix b/pkgs/development/python-modules/lark-parser/default.nix
index a1b58a4eb05..6858a6bcf94 100644
--- a/pkgs/development/python-modules/lark-parser/default.nix
+++ b/pkgs/development/python-modules/lark-parser/default.nix
@@ -5,14 +5,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "lark-parser"; # PyPI name
-  version = "2017-12-18";
+  pname = "lark-parser";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
-    owner = "erezsh";
+    owner = "lark-parser";
     repo = "lark";
-    rev = "9d6cde9b1ba971f02ea8106fa3b71a934e83d6fa";
-    sha256 = "0nv6nxd8wx9dwhn37m94fkc10gknckrjs1hzajxygla3dpql455j";
+    rev = version;
+    sha256 = "0mf10xm9blqik8mwrpw0r07vqlk2y4r98yqvk1sq849zqlxmqpsr";
   };
 
   checkPhase = ''
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface";
-    homepage = https://github.com/erezsh/lark;
+    homepage = https://github.com/lark-parser/lark;
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ fridh ];
   };
diff --git a/pkgs/development/python-modules/libversion/default.nix b/pkgs/development/python-modules/libversion/default.nix
index 75e55944e98..82d8b8b9c5e 100644
--- a/pkgs/development/python-modules/libversion/default.nix
+++ b/pkgs/development/python-modules/libversion/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "libversion";
-  version = "1.0.0";
+  version = "1.1.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "18hhn7b7458lybs8z8ckh0idm7a2g4c4b5v2p9rr0lb618rchvds";
+    sha256 = "040adjp5xjr4vwz3x2mspkymlcmljvqvacr88aw0jijq1h6fm59c";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/moviepy/default.nix b/pkgs/development/python-modules/moviepy/default.nix
index 63613b51686..960fb604ec9 100644
--- a/pkgs/development/python-modules/moviepy/default.nix
+++ b/pkgs/development/python-modules/moviepy/default.nix
@@ -4,16 +4,17 @@
 , numpy
 , decorator
 , imageio
+, isPy3k
 , tqdm
 }:
 
 buildPythonPackage rec {
   pname = "moviepy";
-  version = "0.2.2.11";
+  version = "0.2.3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d937d817e534efc54eaee2fc4c0e70b48fcd81e1528cd6425f22178704681dc3";
+    sha256 = "1jrdpnzyk373zlh8lvjdabyvljz3sahshbdgbpk6w9vx5hfacvjk";
   };
 
   # No tests
diff --git a/pkgs/development/python-modules/mwclient/default.nix b/pkgs/development/python-modules/mwclient/default.nix
index 3544bd631a5..37785730252 100644
--- a/pkgs/development/python-modules/mwclient/default.nix
+++ b/pkgs/development/python-modules/mwclient/default.nix
@@ -2,7 +2,7 @@
 , responses, mock, pytestcov, pytest, pytestcache, pytestpep8, coverage, six }:
 
 buildPythonPackage rec {
-  version = "0.9.1";
+  version = "0.9.2";
   pname = "mwclient";
   name = "${pname}-${version}";
 
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     owner = "mwclient";
     repo = "mwclient";
     rev = "v${version}";
-    sha256 = "0l7l5j7znlyn2yqvdfxr4dq23wyp6d8z49pnkjqy2kan11nrjzym";
+    sha256 = "0553pa5gm74k0lsrbcw5ic8jypnh5c3p58i50kzjvgcqz4frsafi";
   };
 
   buildInputs = [ mock responses pytestcov pytest pytestcache pytestpep8 coverage ];
diff --git a/pkgs/development/python-modules/neovim/default.nix b/pkgs/development/python-modules/neovim/default.nix
index 6d96732cbb0..20479093a47 100644
--- a/pkgs/development/python-modules/neovim/default.nix
+++ b/pkgs/development/python-modules/neovim/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "neovim";
-  version = "0.2.6";
+  version = "0.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xlj54w9bnmq4vidk6r08hwa6az7drahi08w1qf4j9q45rs8mrbc";
+    sha256 = "18x7gi1idsch11hijvy0mm2mk4f42rapz9niax4rnak14x2klqq2";
   };
 
   checkInputs = [ nose ];
diff --git a/pkgs/development/python-modules/networkx/default.nix b/pkgs/development/python-modules/networkx/default.nix
index 3388aef9cef..85b53bd9df6 100644
--- a/pkgs/development/python-modules/networkx/default.nix
+++ b/pkgs/development/python-modules/networkx/default.nix
@@ -7,12 +7,13 @@
 
 buildPythonPackage rec {
   pname = "networkx";
-  version = "2.1";
+  # upgrade may break sage, please test the sage build or ping @timokau on upgrade
+  version = "2.2";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "64272ca418972b70a196cb15d9c85a5a6041f09a2f32e0d30c0255f25d458bb1";
+    sha256 = "12swxb15299v9vqjsq4z8rgh5sdhvpx497xwnhpnb0gynrx6zra5";
   };
 
   checkInputs = [ nose ];
diff --git a/pkgs/development/python-modules/nibabel/default.nix b/pkgs/development/python-modules/nibabel/default.nix
index 11770fa8461..7491865057b 100644
--- a/pkgs/development/python-modules/nibabel/default.nix
+++ b/pkgs/development/python-modules/nibabel/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "nibabel";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "bf34aeb0f7ca52dc528ae4f842607cea307b334163857ff1d64d43068f637ada";
+    sha256 = "1xb6wgc67c0l7csjdd0k5r2p783rlahknrhqqa13qwgxbybadr53";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/owslib/default.nix b/pkgs/development/python-modules/owslib/default.nix
new file mode 100644
index 00000000000..7331511568f
--- /dev/null
+++ b/pkgs/development/python-modules/owslib/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, fetchPypi, dateutil, requests, pytz, pyproj , pytest } :
+buildPythonPackage rec {
+  pname = "OWSLib";
+  version = "0.17.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1px2nmbpbpp556kjq0ym0a7j24nbvs4w829727b2gr4a4ff86hxc";
+  };
+
+  buildInputs = [ pytest ];
+  propagatedBuildInputs = [ dateutil pyproj pytz requests ];
+
+  # 'tests' dir not included in pypy distribution archive.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "client for Open Geospatial Consortium web service interface standards";
+    license = licenses.bsd3;
+    homepage = https://www.osgeo.org/projects/owslib/;
+  };
+}
diff --git a/pkgs/development/python-modules/peppercorn/default.nix b/pkgs/development/python-modules/peppercorn/default.nix
index 5a07fc217a9..f62ff669c86 100644
--- a/pkgs/development/python-modules/peppercorn/default.nix
+++ b/pkgs/development/python-modules/peppercorn/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "peppercorn";
-  version = "0.5";
+  version = "0.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "921cba5d51fa211e6da0fbd2120b9a98d663422a80f5bb669ad81ffb0909774b";
+    sha256 = "1ip4bfwcpwkq9hz2dai14k2cyabvwrnvcvrcmzxmqm04g8fnimwn";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/plyvel/default.nix b/pkgs/development/python-modules/plyvel/default.nix
index 21561fab035..bb0b56b1e9c 100644
--- a/pkgs/development/python-modules/plyvel/default.nix
+++ b/pkgs/development/python-modules/plyvel/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "plyvel";
-  version = "0.9";
+  version = "1.0.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1scq75qyks9vmjd19bx57f2y60mkdr44ajvb12p3cjg439l96zaq";
+    sha256 = "14cbdyq1s8xmvha3lj942gw478cd6jyhkw8n0mhxpgbz8px9jkfn";
   };
 
   buildInputs = [ pkgs.leveldb ] ++ stdenv.lib.optional isPy3k pytest;
@@ -22,8 +22,8 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Fast and feature-rich Python interface to LevelDB";
+    platforms = platforms.linux;
     homepage = https://github.com/wbolster/plyvel;
     license = licenses.bsd3;
   };
-
 }
diff --git a/pkgs/development/python-modules/py3status/default.nix b/pkgs/development/python-modules/py3status/default.nix
index fd42faaad21..b580ae89850 100644
--- a/pkgs/development/python-modules/py3status/default.nix
+++ b/pkgs/development/python-modules/py3status/default.nix
@@ -19,17 +19,11 @@
 
 buildPythonPackage rec {
   pname = "py3status";
-  version = "3.12";
+  version = "3.13";
   
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c9ef49f72c2d83976d2841ab7e70faee3c77f4d7dbb2d3390ef0f0509473ea9a";
-  };
-
-  # ImportError: cannot import name '_to_ascii'
-  patches = fetchpatch {
-    url = "${meta.homepage}/commit/8a48e01cb68b514b532f56037e4f5a6c19662de5.patch";
-    sha256 = "0v1yja5lvdjk6vh13lvh07n7aw5hjcy7v9lrs2dfb0y0cjw4kx9n";
+    sha256 = "b4262db0b3b181fbf1a44679cd817c1cf0126ec34b3537550e294208f413daac";
   };
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/pyaxmlparser/default.nix b/pkgs/development/python-modules/pyaxmlparser/default.nix
index 9f4f6627e2c..9ea3a3eda07 100644
--- a/pkgs/development/python-modules/pyaxmlparser/default.nix
+++ b/pkgs/development/python-modules/pyaxmlparser/default.nix
@@ -1,12 +1,12 @@
 { buildPythonPackage, stdenv, lxml, click, fetchPypi }:
 
 buildPythonPackage rec {
-  version = "0.3.11";
+  version = "0.3.13";
   pname = "pyaxmlparser";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "dbe5ca9ddcf2f5041f6e5e3acc81d2940c696db89de4f840535a256e78f5e489";
+    sha256 = "1mzdrifnaky57vkmdvg0rgjss55xkxaramci3wpv4h65lmk95988";
   };
 
   propagatedBuildInputs = [ lxml click ];
diff --git a/pkgs/development/python-modules/pyfiglet/default.nix b/pkgs/development/python-modules/pyfiglet/default.nix
index ede8e965db9..f03bd266621 100644
--- a/pkgs/development/python-modules/pyfiglet/default.nix
+++ b/pkgs/development/python-modules/pyfiglet/default.nix
@@ -1,12 +1,12 @@
 { stdenv, buildPythonPackage, fetchPypi }:
 
 buildPythonPackage rec {
-  version = "0.7.5";
+  version = "0.7.6";
   pname = "pyfiglet";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "04jy4182hn5xfs6jf432gxclfj1rhssd7bsf0b4gymrjzkhr8qa4";
+    sha256 = "08npllxf85ccvhd27iyq2j1b813s1947q5b1x7vxv9hdni8rdmcp";
   };
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/pyotp/default.nix b/pkgs/development/python-modules/pyotp/default.nix
index 504d12d612e..05ba24eac39 100644
--- a/pkgs/development/python-modules/pyotp/default.nix
+++ b/pkgs/development/python-modules/pyotp/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pyotp";
-  version = "2.2.6";
+  version = "2.2.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "dd9130dd91a0340d89a0f06f887dbd76dd07fb95a8886dc4bc401239f2eebd69";
+    sha256 = "00p69nw431f0s2ilg0hnd77p1l22m06p9rq4f8zfapmavnmzw3xy";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pytest-datafiles/default.nix b/pkgs/development/python-modules/pytest-datafiles/default.nix
index 70a6546189b..1c323929a8e 100644
--- a/pkgs/development/python-modules/pytest-datafiles/default.nix
+++ b/pkgs/development/python-modules/pytest-datafiles/default.nix
@@ -2,10 +2,10 @@
 
 buildPythonPackage rec {
   pname = "pytest-datafiles";
-  version = "1.0";
+  version = "2.0";
   src = fetchPypi {
     inherit version pname;
-    sha256 = "1w5435b5pimk6479ml53lmld3qbag7awcg4gl3ljdywc1v096r5v";
+    sha256 = "1yfvaqbqvjfikz215kwn6qiwwn9girka93zq4jphgfyvn75jjcql";
   };
 
   buildInputs = [ py pytest ];
diff --git a/pkgs/development/python-modules/pytest-repeat/default.nix b/pkgs/development/python-modules/pytest-repeat/default.nix
index eca14c8289a..1b30611eb9d 100644
--- a/pkgs/development/python-modules/pytest-repeat/default.nix
+++ b/pkgs/development/python-modules/pytest-repeat/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "pytest-repeat";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "84aba2fcca5dc2f32ae626a01708f469f17b3384ec3d1f507698077f274909d6";
+    sha256 = "0axbrpqal3cqw9zq6dakdbg49pnf5gvyvq6yn93hp1ayc7fnhzk3";
   };
 
   buildInputs = [ setuptools_scm pytest ];
diff --git a/pkgs/development/python-modules/python-gitlab/default.nix b/pkgs/development/python-modules/python-gitlab/default.nix
new file mode 100644
index 00000000000..24ab69f1a0b
--- /dev/null
+++ b/pkgs/development/python-modules/python-gitlab/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, fetchPypi, requests, six, mock, httmock }:
+
+buildPythonPackage rec {
+  pname   = "python-gitlab";
+  version = "1.6.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "20ceb9232f9a412ce6554056a6b5039013d0755261d57b5c8ada7035773de795";
+  };
+
+  propagatedBuildInputs = [ requests six ];
+
+  checkInputs = [ mock httmock ];
+
+  meta = with stdenv.lib; {
+    description = "Interact with GitLab API";
+    homepage    = https://github.com/python-gitlab/python-gitlab;
+    license     = licenses.lgpl3;
+    maintainers = with maintainers; [ nyanloutre ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-stdnum/default.nix b/pkgs/development/python-modules/python-stdnum/default.nix
index 381ecec996d..58219211324 100644
--- a/pkgs/development/python-modules/python-stdnum/default.nix
+++ b/pkgs/development/python-modules/python-stdnum/default.nix
@@ -1,13 +1,13 @@
 { lib, fetchPypi, buildPythonPackage, isPy3k }:
 
 buildPythonPackage rec {
-  version = "1.9";
+  version = "1.10";
   pname = "python-stdnum";
   # Failing tests and dependency issue on Py3k
   disabled = isPy3k;
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d587a520182f9d8aef7659cca429f4382881589c8883a0a55322b2f94970bdb3";
+    sha256 = "0prs63q8zdgwr5cxc5a43zvsm66l0gf9jk19qdf85m6isnp5186a";
   };
   meta = {
     homepage = https://arthurdejong.org/python-stdnum/;
diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix
index 7d56f1990a5..b0ae9ef0cf5 100644
--- a/pkgs/development/python-modules/pytorch/default.nix
+++ b/pkgs/development/python-modules/pytorch/default.nix
@@ -72,7 +72,7 @@ in buildPythonPackage rec {
   ] ++ lib.optional (pythonOlder "3.5") typing;
 
   checkPhase = ''
-    ${cudaStubEnv}python test/run_test.py --exclude dataloader sparse torch utils
+    ${cudaStubEnv}python test/run_test.py --exclude dataloader sparse torch utils distributed
   '';
 
   meta = {
diff --git a/pkgs/development/python-modules/qtconsole/default.nix b/pkgs/development/python-modules/qtconsole/default.nix
index 67b9a07a36d..8c0be1f0a54 100644
--- a/pkgs/development/python-modules/qtconsole/default.nix
+++ b/pkgs/development/python-modules/qtconsole/default.nix
@@ -14,11 +14,11 @@
 
 buildPythonPackage rec {
   pname = "qtconsole";
-  version = "4.4.1";
+  version = "4.4.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "7870b19e6a6b0ab3acc09ee65463c0ca7568b3a01a6902d7c4e1ed2c4fc4e176";
+    sha256 = "1yihnxya9kll24fp4a929mria930i9r20kx43sjjwh92gcb2k9gs";
   };
 
   buildInputs = [ nose ] ++ lib.optionals isPy27 [mock];
diff --git a/pkgs/development/python-modules/snapcast/default.nix b/pkgs/development/python-modules/snapcast/default.nix
new file mode 100644
index 00000000000..bb137541791
--- /dev/null
+++ b/pkgs/development/python-modules/snapcast/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k, pytest
+, construct }:
+
+buildPythonPackage rec {
+  pname = "snapcast";
+  version = "2.0.9";
+
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0hlfcg0qdfavjzhxz4v2spjkj6440a1254wrncfkfkyff6rv9x3s";
+  };
+
+  checkInputs = [ pytest ];
+
+  propagatedBuildInputs = [ construct ];
+
+  # no checks from Pypi - https://github.com/happyleavesaoc/python-snapcast/issues/23
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Control Snapcast, a multi-room synchronous audio solution";
+    homepage = https://github.com/happyleavesaoc/python-snapcast/;
+    license = licenses.mit;
+    maintainers = with maintainers; [ peterhoeg ];
+  };
+}
diff --git a/pkgs/development/python-modules/splinter/default.nix b/pkgs/development/python-modules/splinter/default.nix
index 91a94a6e841..5a2ee5877c9 100644
--- a/pkgs/development/python-modules/splinter/default.nix
+++ b/pkgs/development/python-modules/splinter/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "splinter";
-  version = "0.8.0";
+  version = "0.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "463e98135a85ff98f6c0084cb34cea1fe07827444958d224c087a84093a65281";
+    sha256 = "0il187zajpiw4p011nkb4bcjxxd85f131bcqz31201ff14ifvih8";
   };
 
   propagatedBuildInputs = [ selenium ];
diff --git a/pkgs/development/python-modules/sslib/default.nix b/pkgs/development/python-modules/sslib/default.nix
new file mode 100644
index 00000000000..3e5be211d42
--- /dev/null
+++ b/pkgs/development/python-modules/sslib/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchPypi, buildPythonPackage, isPy3k }:
+
+buildPythonPackage rec {
+  pname = "sslib";
+  version = "0.2.0";
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0b5zrjkvx4klmv57pzhcmvbkdlyn745mn02k7hp811hvjrhbz417";
+  };
+
+  # No tests available
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/jqueiroz/python-sslib;
+    description = "A Python3 library for sharing secrets";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jqueiroz ];
+  };
+}
diff --git a/pkgs/development/python-modules/stevedore/default.nix b/pkgs/development/python-modules/stevedore/default.nix
index 6d088d52d7e..8027688c9ea 100644
--- a/pkgs/development/python-modules/stevedore/default.nix
+++ b/pkgs/development/python-modules/stevedore/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "stevedore";
-  version = "1.29.0";
+  version = "1.30.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1e153545aca7a6a49d8337acca4f41c212fbfa60bf864ecd056df0cafb9627e8";
+    sha256 = "0161pwgv6514ks6lky8642phlcqks5w8j5sacdnbfgx5s6nwfaxr";
   };
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/toml/default.nix b/pkgs/development/python-modules/toml/default.nix
index 9e408f2cb16..29d0a4c692f 100644
--- a/pkgs/development/python-modules/toml/default.nix
+++ b/pkgs/development/python-modules/toml/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "toml";
-  version = "0.9.6";
+  version = "0.10.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "380178cde50a6a79f9d2cf6f42a62a5174febe5eea4126fe4038785f1d888d42";
+    sha256 = "0p1xww2mzkhqvxkfvmfzm58bbfj812zhdz4rwdjiv94ifz2q37r2";
   };
 
   # This package has a test script (built for Travis) that involves a)
diff --git a/pkgs/development/python-modules/uncertainties/default.nix b/pkgs/development/python-modules/uncertainties/default.nix
index 38c46bd11fa..2d7fdaa7eca 100644
--- a/pkgs/development/python-modules/uncertainties/default.nix
+++ b/pkgs/development/python-modules/uncertainties/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "uncertainties";
-  version = "3.0.2";
+  version = "3.0.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "91db922d54dff6094b4ea0d6e058f713a992cdf42e3ebaf73278e1893bfa2942";
+    sha256 = "1hp00k10d5n69s446flss8b4rd02wq8dscvakv7ylfyf2p8y564s";
   };
 
   buildInputs = [ nose numpy ];
diff --git a/pkgs/development/python-modules/uncompyle6/default.nix b/pkgs/development/python-modules/uncompyle6/default.nix
index f0428f17603..ed177be1c19 100644
--- a/pkgs/development/python-modules/uncompyle6/default.nix
+++ b/pkgs/development/python-modules/uncompyle6/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "uncompyle6";
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "bd882f3c979b49d28ba7accc5ce7380ced8cab12e782e9170769ca15f0b81f8a";
+    sha256 = "0lv0ks7w5bsl8bndm6ikl4yprkq2ps23y409ldlycrvlggjg44y5";
   };
 
   checkInputs = [ nose pytest hypothesis six ];
diff --git a/pkgs/development/python-modules/uproot-methods/default.nix b/pkgs/development/python-modules/uproot-methods/default.nix
index b3c2ce714ce..3c859ea2d30 100644
--- a/pkgs/development/python-modules/uproot-methods/default.nix
+++ b/pkgs/development/python-modules/uproot-methods/default.nix
@@ -6,12 +6,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.2.5";
+  version = "0.2.6";
   pname = "uproot-methods";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "7d5563b3335af414a12caf5b350c952fdc7576abb17630382de5564a7c254ae6";
+    sha256 = "1z8gganf8p68z586zzx440dpkar3djdbc4f7670bkriyix0z6lxn";
   };
 
   propagatedBuildInputs = [ numpy awkward ];
diff --git a/pkgs/development/python-modules/websockets/default.nix b/pkgs/development/python-modules/websockets/default.nix
index 0628b3c869a..2e0caae4b46 100644
--- a/pkgs/development/python-modules/websockets/default.nix
+++ b/pkgs/development/python-modules/websockets/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "websockets";
-  version = "6.0";
+  version = "7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8f3b956d11c5b301206382726210dc1d3bee1a9ccf7aadf895aaf31f71c3716c";
+    sha256 = "17vwr6sa1y3lb24wzfyyc98c5v03di4j8f24qkqa9vsvaghc7qq8";
   };
 
   disabled = pythonOlder "3.3";
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index b5aa0933c2e..c199e6f087b 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -191,6 +191,10 @@ in
         [ darwin.apple_sdk.frameworks.CoreServices ];
   };
 
+  iconv = attrs: {
+    buildFlags = lib.optional stdenv.isDarwin "--with-iconv-dir=${libiconv}";
+  };
+
   # disable bundle install as it can't install anything in addition to what is
   # specified in pkgs/applications/misc/jekyll/Gemfile anyway. Also do chmod_R
   # to compensate for read-only files in site_template in nix store.
@@ -226,6 +230,12 @@ in
     '';
   };
 
+  metasploit-framework = attrs: {
+    preInstall = ''
+      export HOME=$TMPDIR
+    '';
+  };
+
   msgpack = attrs: {
     buildInputs = [ msgpack ];
   };
diff --git a/pkgs/development/tools/ammonite/default.nix b/pkgs/development/tools/ammonite/default.nix
index 7544958cb31..ab1f6c7706f 100644
--- a/pkgs/development/tools/ammonite/default.nix
+++ b/pkgs/development/tools/ammonite/default.nix
@@ -5,12 +5,12 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "ammonite-${version}";
-  version = "1.2.1";
+  version = "1.4.2";
   scalaVersion = "2.12";
 
   src = fetchurl {
     url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
-    sha256 = "096xychdq1pmyjfv4cv4pvm29dk539rxpq3iaz9rpznp01af4mjf";
+    sha256 = "10m6nnvrwzkbyhiq77wlqgzvqfqmn16y4sp983dyihjljxalygax";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 00b12970628..3d7a8abf4fe 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -1,33 +1,28 @@
-{ stdenv, fetchFromGitHub, lib, ocamlPackages, libelf, cf-private, CoreServices }:
-
-with lib;
+{ stdenv, fetchFromGitHub, ocamlPackages, cf-private, CoreServices }:
 
 stdenv.mkDerivation rec {
-  version = "0.80.0";
+  version = "0.85.0";
   name = "flow-${version}";
 
   src = fetchFromGitHub {
-    owner = "facebook";
-    repo = "flow";
-    rev = "v${version}";
-    sha256 = "0jixisimqwbr46gh9357ya0rscv46svm6kqnawkq1shlf9nwa3lx";
+    owner  = "facebook";
+    repo   = "flow";
+    rev    = "refs/tags/v${version}";
+    sha256 = "0kci017bl4ihq89zpwlgdlwzv7kili8146940kyar5v66kgf7xsh";
   };
 
   installPhase = ''
-    mkdir -p $out/bin
-    cp bin/flow $out/bin/
+    install -Dm755 -t $out/bin bin/flow
   '';
 
-  buildInputs = [ libelf
-  ] ++ (with ocamlPackages; [
-    ocaml findlib camlp4 sedlex ocamlbuild lwt_ppx ppx_deriving ppx_gen_rec lwt_log wtf8 dtoa
-  ]) ++ optionals stdenv.isDarwin [ cf-private CoreServices ];
+  buildInputs = (with ocamlPackages; [ ocaml findlib ocamlbuild dtoa core_kernel sedlex ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec ppx_tools_versioned visitors wtf8 ])
+    ++ stdenv.lib.optionals stdenv.isDarwin [ cf-private CoreServices ];
 
   meta = with stdenv.lib; {
     description = "A static type checker for JavaScript";
-    homepage = http://flowtype.org;
-    license = licenses.bsd3;
-    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    homepage = https://flow.org/;
+    license = licenses.mit;
+    platforms = ocamlPackages.ocaml.meta.platforms;
     maintainers = with maintainers; [ puffnfresh globin ];
   };
 }
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index 89b0a33c068..3724494da11 100644
--- a/pkgs/development/tools/analysis/pmd/default.nix
+++ b/pkgs/development/tools/analysis/pmd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "pmd-${version}";
-  version = "6.8.0";
+  version = "6.9.0";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
-    sha256 = "1vfkg2l3sl5ahhs89nvkg0z1ah1k67c44nwpvaymq73rb2bb8ibr";
+    sha256 = "13w07f68gfcjy3a2zk4z4b0f95qscbkjlylckphmyxhw7vmgzlmn";
   };
 
   installPhase = ''
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "An extensible cross-language static code analyzer.";
+    description = "An extensible cross-language static code analyzer";
     homepage = https://pmd.github.io/;
     platforms = platforms.unix;
     license = with licenses; [ bsdOriginal asl20 ];
diff --git a/pkgs/development/tools/asmfmt/default.nix b/pkgs/development/tools/asmfmt/default.nix
new file mode 100644
index 00000000000..d2cb7e807b5
--- /dev/null
+++ b/pkgs/development/tools/asmfmt/default.nix
@@ -0,0 +1,37 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+, fetchpatch
+}:
+
+buildGoPackage rec {
+  name = "asmfmt-${version}";
+  version = "1.1";
+
+  goPackagePath = "github.com/klauspost/asmfmt";
+
+  src = fetchFromGitHub {
+    owner = "klauspost";
+    repo = "asmfmt";
+    rev = "v${version}";
+    sha256 = "08mybfizcvck460axakycz9ndzcgwqilp5mmgm4bl8hfrn36mskw";
+  };
+
+  patches = [
+    (fetchpatch {
+      excludes = ["README.md"];
+      url = "https://github.com/klauspost/asmfmt/commit/39a37c8aed8095e0fdfb07f78fc8acbd465d9627.patch";
+      sha256 = "18bc77l87mf0yvqc3adlakxz6wflyqfsc2wrmh9q0nlqghlmnw5k";
+    })
+  ];
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Go Assembler Formatter";
+    homepage = https://github.com/klauspost/asmfmt;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/asmfmt/deps.nix b/pkgs/development/tools/asmfmt/deps.nix
new file mode 100644
index 00000000000..0288fc206d4
--- /dev/null
+++ b/pkgs/development/tools/asmfmt/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "3a10b9bf0a52df7e992a8c3eb712a86d3c896c75";
+      sha256 = "19f3dijcc54jnd7458jab2dgpd0gzccmv2qympd9wi8cc8jpnhws";
+    };
+  }
+  {
+    goPackagePath = "sourcegraph.com/sqs/goreturns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sqs/goreturns";
+      rev = "538ac601451833c7c4449f8431d65d53c1c60e41";
+      sha256 = "0gcplch8zmcgwl6xvcffxg50g3xnf60n7dlqxgn51179qcjr354p";
+    };
+  }
+]
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix
index af8cd5faacd..142f729517d 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix
@@ -2,7 +2,7 @@
 
 buildBazelPackage rec {
   name = "bazel-deps-${version}";
-  version = "2018-08-16";
+  version = "2018-11-01";
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/johnynek/bazel-deps";
@@ -15,8 +15,8 @@ buildBazelPackage rec {
   src = fetchFromGitHub {
     owner = "johnynek";
     repo = "bazel-deps";
-    rev = "942a0b03cbf159dd6e0f0f40787d6d8e4e832d81";
-    sha256 = "0ls2jvz9cxa169a8pbbykv2d4dik4ipf7dj1lkqx5g0ss7lgs6q5";
+    rev = "1af8921d52f053fad575f26762533a3823b4a847";
+    sha256 = "0srz0sbz4bq9n7cp4g1n3kd3j6rcjqfi25sq8aa64l27yqzbk53x";
   };
 
   bazelTarget = "//src/scala/com/github/johnynek/bazel_deps:parseproject_deploy.jar";
@@ -66,12 +66,13 @@ buildBazelPackage rec {
       find . -type d -empty -delete
     '';
 
-    sha256 = "0jkzf1hay0h8ksk9lhfvdliac6c5d7nih934i1xjbrn6zqlivy19";
+    sha256 = "1gvl4a9z8p4ch2gmcj3lpp0imrkrvy8wng949p3wlkibi14hc6ww";
   };
 
   buildAttrs = {
     installPhase = ''
       mkdir -p $out/bin/bazel-bin/src/scala/com/github/johnynek/bazel_deps
+
       cp gen_maven_deps.sh $out/bin
       wrapProgram "$out/bin/gen_maven_deps.sh" --set JAVA_HOME "${jre}" --prefix PATH : ${lib.makeBinPath [ jre ]}
       cp bazel-bin/src/scala/com/github/johnynek/bazel_deps/parseproject_deploy.jar $out/bin/bazel-bin/src/scala/com/github/johnynek/bazel_deps
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index 19836b412c0..966c91028de 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -192,13 +192,51 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     mkdir -p $out/bin
-    mv output/bazel $out/bin
+
+    # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
+    # if it can’t find something in tools, it calls $out/bin/bazel-real
+    cp scripts/packages/bazel.sh $out/bin/bazel
+    mv output/bazel $out/bin/bazel-real
+
     wrapProgram "$out/bin/bazel" --set JAVA_HOME "${runJdk}"
+
+    # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
     mv output/bazel-complete.bash $out/share/bash-completion/completions/bazel
     cp scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
   '';
 
+  doInstallCheck = true;
+  installCheckPhase = ''
+    export TEST_TMPDIR=$(pwd)
+
+    hello_test () {
+      $out/bin/bazel test --test_output=errors \
+        examples/cpp:hello-success_test \
+        examples/java-native/src/test/java/com/example/myproject:hello
+    }
+
+    # test whether $WORKSPACE_ROOT/tools/bazel works
+
+    mkdir -p tools
+    cat > tools/bazel <<"EOF"
+    #!${stdenv.shell} -e
+    exit 1
+    EOF
+    chmod +x tools/bazel
+
+    # first call should fail if tools/bazel is used
+    ! hello_test
+
+    cat > tools/bazel <<"EOF"
+    #!${stdenv.shell} -e
+    exec "$BAZEL_REAL" "$@"
+    EOF
+
+    # second call succeeds because it defers to $out/bin/bazel-real
+    hello_test
+  '';
+
   # Save paths to hardcoded dependencies so Nix can detect them.
   postFixup = ''
     mkdir -p $out/nix-support
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index 566694e06b0..a369df68f05 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -52,12 +52,12 @@ rec {
   };
 
   gradle_latest = gradleGen rec {
-    name = "gradle-4.10";
+    name = "gradle-4.10.2";
     nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "064zyli00cj3clbn631kivg5izhkyyf31f6x65a2rqac229gv314";
+      sha256 = "0a9s2iisivgaapsz4vq1l8fa2w0wnlq0cj67yv5a0rybnahnv75l";
     };
   };
 
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index ffbcc46bd1a..7eff35e224c 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -1,4 +1,4 @@
-{ lib, python3Packages, stdenv, writeTextDir, substituteAll, fetchpatch }:
+{ lib, python3Packages, stdenv, writeTextDir, substituteAll, targetPackages, fetchpatch }:
 
 python3Packages.buildPythonApplication rec {
   version = "0.46.1";
@@ -53,20 +53,20 @@ python3Packages.buildPythonApplication rec {
 
   crossFile = writeTextDir "cross-file.conf" ''
     [binaries]
-    c = '${stdenv.cc.targetPrefix}cc'
-    cpp = '${stdenv.cc.targetPrefix}c++'
-    ar = '${stdenv.cc.bintools.targetPrefix}ar'
-    strip = '${stdenv.cc.bintools.targetPrefix}strip'
+    c = '${targetPackages.stdenv.cc.targetPrefix}cc'
+    cpp = '${targetPackages.stdenv.cc.targetPrefix}c++'
+    ar = '${targetPackages.stdenv.cc.bintools.targetPrefix}ar'
+    strip = '${targetPackages.stdenv.cc.bintools.targetPrefix}strip'
     pkgconfig = 'pkg-config'
 
     [properties]
     needs_exe_wrapper = true
 
     [host_machine]
-    system = '${stdenv.targetPlatform.parsed.kernel.name}'
-    cpu_family = '${stdenv.targetPlatform.parsed.cpu.family}'
-    cpu = '${stdenv.targetPlatform.parsed.cpu.name}'
-    endian = ${if stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"}
+    system = '${targetPackages.stdenv.targetPlatform.parsed.kernel.name}'
+    cpu_family = '${targetPackages.stdenv.targetPlatform.parsed.cpu.family}'
+    cpu = '${targetPackages.stdenv.targetPlatform.parsed.cpu.name}'
+    endian = ${if targetPackages.stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"}
   '';
 
   # 0.45 update enabled tests but they are failing
@@ -76,7 +76,7 @@ python3Packages.buildPythonApplication rec {
 
   inherit (stdenv) cc;
 
-  isCross = stdenv.buildPlatform != stdenv.hostPlatform;
+  isCross = stdenv.targetPlatform != stdenv.hostPlatform;
 
   meta = with lib; {
     homepage = http://mesonbuild.com;
diff --git a/pkgs/development/tools/build-managers/qbs/default.nix b/pkgs/development/tools/build-managers/qbs/default.nix
index dc2d545a765..99fb9090c0d 100644
--- a/pkgs/development/tools/build-managers/qbs/default.nix
+++ b/pkgs/development/tools/build-managers/qbs/default.nix
@@ -1,41 +1,29 @@
-{ stdenv, qt5, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, qmake, qtbase, qtscript }:
 
 stdenv.mkDerivation rec {
   name = "qbs-${version}";
 
-  version = "1.8";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
-    owner = "qt-labs";
+    owner = "qbs";
     repo = "qbs";
-    rev = "fa9c21d6908e0dad805113f570ac883c1dc5067a";
-    sha256 = "1manriz75rav1vldkk829yk1la9md4m872l5ykl9m982i9801d9g";
+    rev = "v${version}";
+    sha256 = "14b7bz07yfrmbry57n3xh8w4nbapm6aknk45fgi7ljvsfzp85fzl";
   };
 
-  enableParallelBuilding = true;
-
-  buildInputs = with qt5; [
-    qtbase
-    qtscript
-  ];
+  nativeBuildInputs = [ qmake ];
 
-  installFlags = [ "INSTALL_ROOT=$(out)" ];
+  qmakeFlags = [ "QBS_INSTALL_PREFIX=$(out)" "qbs.pro" ];
 
-  buildPhase = ''
-    # From http://doc.qt.io/qbs/building.html
-    qmake -r qbs.pro
-    make
-  '';
+  buildInputs = [ qtbase qtscript ];
 
-  postInstall = ''
-    mv $out/usr/local/* "$out"
-  '';
+  enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "A tool that helps simplify the build process for developing projects across multiple platforms";
-    license = licenses.lgpl21;
+    license = licenses.lgpl3;
     maintainers = with maintainers; [ expipiplus1 ];
-    inherit version;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/tools/check/default.nix b/pkgs/development/tools/check/default.nix
new file mode 100644
index 00000000000..dfa164e6755
--- /dev/null
+++ b/pkgs/development/tools/check/default.nix
@@ -0,0 +1,30 @@
+{ buildGoPackage
+, lib
+, fetchFromGitLab
+}:
+
+buildGoPackage rec {
+  name = "check-unstable-${version}";
+  version = "2018-09-12";
+  rev = "88db195993f8e991ad402754accd0635490769f9";
+
+  goPackagePath = "gitlab.com/opennota/check";
+
+  src = fetchFromGitLab {
+    inherit rev;
+
+    owner = "opennota";
+    repo = "check";
+    sha256 = "1983xmdkgpqda4qz8ashc6xv1zg5jl4zly3w566grxc5sfxpgf0i";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "A set of utilities for checking Go sources.";
+    homepage = https://gitlab.com/opennota/check;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/check/deps.nix b/pkgs/development/tools/check/deps.nix
new file mode 100644
index 00000000000..b9c50d95d11
--- /dev/null
+++ b/pkgs/development/tools/check/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "677d2ff680c1";
+      sha256 = "0vp1w1haqcjd82dxd6x9xrllbfwvm957rxwkpji96cgvhsli2bq5";
+    };
+  }
+]
diff --git a/pkgs/development/tools/chefdk/Gemfile.lock b/pkgs/development/tools/chefdk/Gemfile.lock
index 139649b78f1..545375d8780 100644
--- a/pkgs/development/tools/chefdk/Gemfile.lock
+++ b/pkgs/development/tools/chefdk/Gemfile.lock
@@ -252,7 +252,7 @@ GEM
       coderay (~> 1.1.0)
       method_source (~> 0.9.0)
     public_suffix (3.0.1)
-    rack (2.0.3)
+    rack (2.0.6)
     rainbow (2.2.2)
       rake
     rake (12.3.0)
@@ -397,4 +397,4 @@ DEPENDENCIES
   test-kitchen
 
 BUNDLED WITH
-   1.14.6
+   1.16.4
diff --git a/pkgs/development/tools/chefdk/gemset.nix b/pkgs/development/tools/chefdk/gemset.nix
index d4e97deea8d..228b3cd8513 100644
--- a/pkgs/development/tools/chefdk/gemset.nix
+++ b/pkgs/development/tools/chefdk/gemset.nix
@@ -791,10 +791,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1kczgp2zwcrvp257dl8j4y3mnyqflxr7rn4vl9w1rwblznx9n74c";
+      sha256 = "1pcgv8dv4vkaczzlix8q3j68capwhk420cddzijwqgi2qb4lm1zm";
       type = "gem";
     };
-    version = "2.0.3";
+    version = "2.0.6";
   };
   rainbow = {
     dependencies = ["rake"];
diff --git a/pkgs/development/tools/deadcode/default.nix b/pkgs/development/tools/deadcode/default.nix
new file mode 100644
index 00000000000..fbed4e905cf
--- /dev/null
+++ b/pkgs/development/tools/deadcode/default.nix
@@ -0,0 +1,31 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+# TODO(yl): should we package https://github.com/remyoudompheng/go-misc instead of
+# the standalone extract of deadcode from it?
+buildGoPackage rec {
+  name = "deadcode-unstable-${version}";
+  version = "2016-07-24";
+  rev = "210d2dc333e90c7e3eedf4f2242507a8e83ed4ab";
+
+  goPackagePath = "github.com/tsenart/deadcode";
+  excludedPackages = "\\(cmd/fillswitch/test-fixtures\\)";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "tsenart";
+    repo = "deadcode";
+    sha256 = "05kif593f4wygnrq2fdjhn7kkcpdmgjnykcila85d0gqlb1f36g0";
+  };
+
+  meta = with lib; {
+    description = "deadcode is a very simple utility which detects unused declarations in a Go package.";
+    homepage = https://github.com/remyoudompheng/go-misc/tree/master/deadcode;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/errcheck/default.nix b/pkgs/development/tools/errcheck/default.nix
new file mode 100644
index 00000000000..1ce49a4cbb9
--- /dev/null
+++ b/pkgs/development/tools/errcheck/default.nix
@@ -0,0 +1,29 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "errcheck-${version}";
+  version = "1.1.0";
+
+  goPackagePath = "github.com/kisielk/errcheck";
+  excludedPackages = "\\(testdata\\)";
+
+  src = fetchFromGitHub {
+    owner = "kisielk";
+    repo = "errcheck";
+    rev = "v${version}";
+    sha256 = "19vd4rxmqbk5lpiav3pf7df3yjlz0l0dwx9mn0gjq5f998iyhy6y";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "errcheck is a program for checking for unchecked errors in go programs.";
+    homepage = https://github.com/kisielk/errcheck;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/errcheck/deps.nix b/pkgs/development/tools/errcheck/deps.nix
new file mode 100644
index 00000000000..8470c9e12aa
--- /dev/null
+++ b/pkgs/development/tools/errcheck/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "80517062f582ea3340cd4baf70e86d539ae7d84d";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "3a10b9bf0a52df7e992a8c3eb712a86d3c896c75";
+      sha256 = "19f3dijcc54jnd7458jab2dgpd0gzccmv2qympd9wi8cc8jpnhws";
+    };
+  }
+]
diff --git a/pkgs/development/tools/flyway/default.nix b/pkgs/development/tools/flyway/default.nix
index 70f6d8021ff..7386dc0eeeb 100644
--- a/pkgs/development/tools/flyway/default.nix
+++ b/pkgs/development/tools/flyway/default.nix
@@ -1,22 +1,23 @@
 { stdenv, fetchurl, jre_headless, makeWrapper }:
   let
-    version = "5.1.4";
+    version = "5.2.1";
   in
     stdenv.mkDerivation {
       name = "flyway-${version}";
       src = fetchurl {
-        url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/5.1.4/flyway-commandline-${version}.tar.gz";
-        sha256 = "1raz125k55v6xa8gp6ylcjxz77r5364xqp9di46rayx3z2282f7q";
+        url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
+        sha256 = "0lm536qc8pqj4s21dd47gi99nwwflk17gqzfwaflghw3fnhn7i1s";
       };
       buildInputs = [ makeWrapper ];
       dontBuild = true;
       dontStrip = true;
       installPhase = ''
         mkdir -p $out/bin $out/share/flyway
-        cp -r sql jars lib drivers $out/share/flyway
+        cp -r sql jars drivers conf $out/share/flyway
+        cp -r lib/community $out/share/flyway/lib
         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 "-classpath '$out/share/flyway/lib/*:$out/share/flyway/drivers/*'" \
           --add-flags "org.flywaydb.commandline.Main"
       '';
       meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/go-tools/default.nix b/pkgs/development/tools/go-tools/default.nix
new file mode 100644
index 00000000000..7e599ed8de7
--- /dev/null
+++ b/pkgs/development/tools/go-tools/default.nix
@@ -0,0 +1,29 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "go-tools-${version}";
+  version = "2017.2.2";
+
+  goPackagePath = "honnef.co/go/tools";
+  excludedPackages = ''\(simple\|ssa\|ssa/ssautil\|lint\|staticcheck\|unused\)/testdata'';
+
+  src = fetchFromGitHub {
+    owner = "dominikh";
+    repo = "go-tools";
+    rev = "${version}";
+    sha256 = "1khl6szjj0skkfqp234p9rf3icik7fw2pk2x0wbj3wa9q3f84hb7";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "A collection of tools and libraries for working with Go code, including linters and static analysis.";
+    homepage = https://staticcheck.io;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/go-tools/deps.nix b/pkgs/development/tools/go-tools/deps.nix
new file mode 100644
index 00000000000..afe5e50e47b
--- /dev/null
+++ b/pkgs/development/tools/go-tools/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "80517062f582ea3340cd4baf70e86d539ae7d84d";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "96e9e165b75e735822645eff82850b08c377be36";
+      sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
+    };
+  }
+]
diff --git a/pkgs/development/tools/gocode-gomod/default.nix b/pkgs/development/tools/gocode-gomod/default.nix
new file mode 100644
index 00000000000..b0069d3488e
--- /dev/null
+++ b/pkgs/development/tools/gocode-gomod/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "gocode-gomod-unstable-${version}";
+  version = "2018-10-16";
+  rev = "12640289f65065d652cc942ffa01a52bece1dd53";
+
+  goPackagePath = "github.com/stamblerre/gocode";
+
+  # we must allow references to the original `go` package,
+  # because `gocode` needs to dig into $GOROOT to provide completions for the
+  # standard packages.
+  allowGoReference = true;
+
+  excludedPackages = ''internal/suggest/testdata'';
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "stamblerre";
+    repo = "gocode";
+    sha256 = "1avv0b5p2l8pv38m5gg97k57ndr5k9yy0rfkmmwjq96pa221hs1q";
+  };
+
+  goDeps = ./deps.nix;
+
+  postInstall = ''
+    mv $bin/bin/gocode $bin/bin/gocode-gomod
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An autocompletion daemon for the Go programming language";
+    longDescription = ''
+      Gocode is a helper tool which is intended to be integrated with your
+      source code editor, like vim, neovim and emacs. It provides several
+      advanced capabilities, which currently includes:
+
+        - Context-sensitive autocompletion
+
+      It is called daemon, because it uses client/server architecture for
+      caching purposes. In particular, it makes autocompletions very fast.
+      Typical autocompletion time with warm cache is 30ms, which is barely
+      noticeable.
+    '';
+    homepage = https://github.com/stamblerre/gocode;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ kalbasit ];
+  };
+}
diff --git a/pkgs/development/tools/gocode-gomod/deps.nix b/pkgs/development/tools/gocode-gomod/deps.nix
new file mode 100644
index 00000000000..ac966269706
--- /dev/null
+++ b/pkgs/development/tools/gocode-gomod/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "78dc5bac0cacea7969e98b79c3b86597e0aa4e25";
+      sha256 = "16jg2x1sfm39kz4rchn0gxyq99fnkxw6v51wxriqbs76a2wrznp9";
+    };
+  }
+]
diff --git a/pkgs/development/tools/gocode/default.nix b/pkgs/development/tools/gocode/default.nix
index bb44074dfc7..3351c0e986b 100644
--- a/pkgs/development/tools/gocode/default.nix
+++ b/pkgs/development/tools/gocode/default.nix
@@ -2,10 +2,11 @@
 
 buildGoPackage rec {
   name = "gocode-unstable-${version}";
-  version = "2018-10-22";
-  rev = "e893215113e5f7594faa3a8eb176c2700c921276";
+  version = "2018-11-05";
+  rev = "0af7a86943a6e0237c90f8aeb74a882e1862c898";
 
   goPackagePath = "github.com/mdempsky/gocode";
+  excludedPackages = ''internal/suggest/testdata'';
 
   # we must allow references to the original `go` package,
   # because `gocode` needs to dig into $GOROOT to provide completions for the
@@ -17,17 +18,11 @@ buildGoPackage rec {
 
     owner = "mdempsky";
     repo = "gocode";
-    sha256 = "1zsll7yghv64890k7skl0g2lg9rsaiisgrfnb8kshsxrcxi1kc2l";
+    sha256 = "0fxqn0v6dbwarn444lc1xrx5vfkcidi73f4ba7l4clsb9qdqgyam";
   };
 
   goDeps = ./deps.nix;
 
-  preBuild = ''
-    # getting an error building the testdata because they contain invalid files
-    # on purpose as part of the testing.
-    rm -r go/src/$goPackagePath/internal/suggest/testdata
-  '';
-
   meta = with stdenv.lib; {
     description = "An autocompletion daemon for the Go programming language";
     longDescription = ''
diff --git a/pkgs/development/tools/gocode/deps.nix b/pkgs/development/tools/gocode/deps.nix
index 4eefdd9c6d0..ac966269706 100644
--- a/pkgs/development/tools/gocode/deps.nix
+++ b/pkgs/development/tools/gocode/deps.nix
@@ -4,8 +4,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/tools";
-      rev = "6fe81c087942f588f40c3f67b41ce284f2f70eee";
-      sha256 = "04yl7rk2lf94bxz74ja5snh7ava9gcnf2yx6y002pfkk538r6w5d";
+      rev = "78dc5bac0cacea7969e98b79c3b86597e0aa4e25";
+      sha256 = "16jg2x1sfm39kz4rchn0gxyq99fnkxw6v51wxriqbs76a2wrznp9";
     };
   }
 ]
diff --git a/pkgs/development/tools/goconst/default.nix b/pkgs/development/tools/goconst/default.nix
new file mode 100644
index 00000000000..9ef94ffdc7f
--- /dev/null
+++ b/pkgs/development/tools/goconst/default.nix
@@ -0,0 +1,27 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "goconst-${version}";
+  version = "1.1.0";
+
+  goPackagePath = "github.com/jgautheron/goconst";
+  excludedPackages = ''testdata'';
+
+  src = fetchFromGitHub {
+    owner = "jgautheron";
+    repo = "goconst";
+    rev = version;
+    sha256 = "0zhscvv9w54q1h2vs8xx3qkz98cf36qhxjvdq0xyz3qvn4vhnyw6";
+  };
+
+  meta = with lib; {
+    description = "Find in Go repeated strings that could be replaced by a constant";
+    homepage = https://github.com/jgautheron/goconst;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/gocyclo/default.nix b/pkgs/development/tools/gocyclo/default.nix
new file mode 100644
index 00000000000..91ebaff803e
--- /dev/null
+++ b/pkgs/development/tools/gocyclo/default.nix
@@ -0,0 +1,28 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "gocyclo-unstable-${version}";
+  version = "2015-02-08";
+  rev = "aa8f8b160214d8dfccfe3e17e578dd0fcc6fede7";
+
+  goPackagePath = "github.com/alecthomas/gocyclo";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "alecthomas";
+    repo = "gocyclo";
+    sha256 = "094rj97q38j53lmn2scshrg8kws8c542yq5apih1ahm9wdkv8pxr";
+  };
+
+  meta = with lib; {
+    description = "Calculate cyclomatic complexities of functions in Go source code.";
+    homepage = https://github.com/alecthomas/gocyclo;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/gogetdoc/default.nix b/pkgs/development/tools/gogetdoc/default.nix
new file mode 100644
index 00000000000..7724ee49465
--- /dev/null
+++ b/pkgs/development/tools/gogetdoc/default.nix
@@ -0,0 +1,31 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "gogetdoc-unstable-${version}";
+  version = "2018-10-25";
+  rev = "9098cf5fc236a5e25060730544af2ba6d65cd968";
+
+  goPackagePath = "github.com/zmb3/gogetdoc";
+  excludedPackages = "\\(testdata\\)";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "zmb3";
+    repo = "gogetdoc";
+    sha256 = "159dgkd2lz07kimbpzminli5p539l4ry0dr93r46iz3lk5q76znl";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Gets documentation for items in Go source code";
+    homepage = https://github.com/zmb3/gogetdoc;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/gogetdoc/deps.nix b/pkgs/development/tools/gogetdoc/deps.nix
new file mode 100644
index 00000000000..d770057d1d7
--- /dev/null
+++ b/pkgs/development/tools/gogetdoc/deps.nix
@@ -0,0 +1,13 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "6adeb8aab2de";
+      sha256 = "0kylkki0ksdm12ppl37fghzbma9hmgqwph0nwngv08v4blk6li6k";
+    };
+  }
+]
diff --git a/pkgs/development/tools/gometalinter/default.nix b/pkgs/development/tools/gometalinter/default.nix
new file mode 100644
index 00000000000..cce678e9d07
--- /dev/null
+++ b/pkgs/development/tools/gometalinter/default.nix
@@ -0,0 +1,70 @@
+{ buildGoPackage
+, deadcode
+, errcheck
+, fetchFromGitHub
+, go
+, go-check
+, go-tools
+, goconst
+, gocyclo
+, golint
+, gosec
+, gotools
+, ineffassign
+, maligned
+, interfacer
+, lib
+, makeWrapper
+, unconvert
+}:
+
+with lib;
+
+let
+  runtimeDeps = [
+    deadcode
+    errcheck
+    go
+    go-check
+    go-tools
+    goconst
+    gocyclo
+    golint
+    gosec
+    gotools
+    ineffassign
+    interfacer
+    maligned
+    unconvert
+  ];
+
+in buildGoPackage rec {
+  name = "gometalinter-${version}";
+  version = "2.0.11";
+
+  goPackagePath = "github.com/alecthomas/gometalinter";
+  excludedPackages = "\\(regressiontests\\)";
+
+  src = fetchFromGitHub {
+    owner = "alecthomas";
+    repo = "gometalinter";
+    rev = "v${version}";
+    sha256 = "08p7bwvhpgizif8qi59m8mm3mcny70x9msbk8m8vjpphsq55wha4";
+  };
+
+  postInstall = ''
+    wrapProgram $bin/bin/gometalinter --prefix PATH : "${makeBinPath runtimeDeps}"
+  '';
+
+  buildInputs = [ makeWrapper ];
+
+  allowGoReference = true;
+
+  meta = with lib; {
+    description = "Concurrently run Go lint tools and normalise their output";
+    homepage = https://github.com/alecthomas/gometalinter;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/gosec/default.nix b/pkgs/development/tools/gosec/default.nix
new file mode 100644
index 00000000000..2cffd86f396
--- /dev/null
+++ b/pkgs/development/tools/gosec/default.nix
@@ -0,0 +1,29 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "gosec-${version}";
+  version = "1.1.0";
+
+  goPackagePath = "github.com/securego/gosec";
+  excludedPackages = ''cmd/tlsconfig'';
+
+  src = fetchFromGitHub {
+    owner = "securego";
+    repo = "gosec";
+    rev = "${version}";
+    sha256 = "0vjn3g6w4y4ayx0g766jp31vb78cipl90fcg0mccjr0a539qrpy6";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Golang security checker";
+    homepage = https://github.com/securego/gosec;
+    license = licenses.asl20 ;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/gosec/deps.nix b/pkgs/development/tools/gosec/deps.nix
new file mode 100644
index 00000000000..80a77e7fb80
--- /dev/null
+++ b/pkgs/development/tools/gosec/deps.nix
@@ -0,0 +1,193 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.2.0";
+      sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "0de1eaf82fa3";
+      sha256 = "177af7bjq6clmkqshnmnwlpwvx80kpi2277q275iwq59lp48viq1";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/nbutton23/zxcvbn-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nbutton23/zxcvbn-go";
+      rev = "a22cb81b2ecd";
+      sha256 = "0hm16vc7xrw0cqla6xcn59bb7n2sa0j8rkniywn5dqnbrpza12cd";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/onsi/ginkgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/ginkgo";
+      rev = "11459a886d9c";
+      sha256 = "1nswc1fnrrs792qbix05h91bilj8rr3wxmxgwi97p2gjk0r292zh";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/onsi/gomega";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/gomega";
+      rev = "dcabb60a477c";
+      sha256 = "1775lv5jbsgv3ghq5v2827slqlhqdadrzc1nkpq4y0hdv2qzrgkm";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/ryanuber/go-glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/go-glob";
+      rev = "256dc444b735";
+      sha256 = "07rsd7hranghwc68ib0r2zxd9d5djanzjvd84j9dgj3wqsyg5mi2";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.2.2";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "8351a756f30f";
+      sha256 = "0b6m579i3wrx1m69mqkdng5gjfssprxx0pg45kzrdi68sh0zr5d1";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "1d60e4601c6f";
+      sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "164713f0dfce";
+      sha256 = "1qn9vvyqsaaj0az0rbilzc4pfv9sl4vh78c2g37yya5gcdnarh3w";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "1cbadb444a80";
+      sha256 = "0ih9ysagh4ylj08393497sscf3yziybc6acg4mrh0wa7mld75j56";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "e531a2a1c15f";
+      sha256 = "0740w56nmjqdj7ld1h3gpcpi3x8n81bdx0pp267rz9hmwkrb2s1c";
+    };
+  }
+
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "eb3733d160e7";
+      sha256 = "1srhvcaa9db3a6xj29mkjr5kg33y71pclrlx4vcwz5m1lgb5c7q6";
+    };
+  }
+]
diff --git a/pkgs/development/tools/iferr/default.nix b/pkgs/development/tools/iferr/default.nix
new file mode 100644
index 00000000000..e2aebe9b2dc
--- /dev/null
+++ b/pkgs/development/tools/iferr/default.nix
@@ -0,0 +1,28 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "iferr-unstable-${version}";
+  version = "2018-06-15";
+  rev = "bb332a3b1d9129b6486c7ddcb7030c11b05cfc88";
+
+  goPackagePath = "github.com/koron/iferr";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "koron";
+    repo = "iferr";
+    sha256 = "1nyqy1sgq2afiama4wy7wap8s03c0hiwwa0f6kwq3y59097rfc0c";
+  };
+
+  meta = with lib; {
+    description = ''Generate "if err != nil {" block'';
+    homepage = https://github.com/koron/iferr;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/impl/default.nix b/pkgs/development/tools/impl/default.nix
new file mode 100644
index 00000000000..69bbf8afe5a
--- /dev/null
+++ b/pkgs/development/tools/impl/default.nix
@@ -0,0 +1,30 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "impl-unstable-${version}";
+  version = "2018-02-27";
+  rev = "3d0f908298c49598b6aa84f101c69670e15d1d03";
+
+  goPackagePath = "github.com/josharian/impl";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "josharian";
+    repo = "impl";
+    sha256 = "0xpip20x5vclrl0by1760lg73v6lj6nmkbiazlskyvpkw44h8a7c";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "impl generates method stubs for implementing an interface.";
+    homepage = https://github.com/josharian/impl;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/impl/deps.nix b/pkgs/development/tools/impl/deps.nix
new file mode 100644
index 00000000000..3477aaed607
--- /dev/null
+++ b/pkgs/development/tools/impl/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "96e9e165b75e735822645eff82850b08c377be36";
+      sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
+    };
+  }
+]
diff --git a/pkgs/development/tools/ineffassign/default.nix b/pkgs/development/tools/ineffassign/default.nix
new file mode 100644
index 00000000000..10e5c61025a
--- /dev/null
+++ b/pkgs/development/tools/ineffassign/default.nix
@@ -0,0 +1,29 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "ineffassign-unstable-${version}";
+  version = "2018-09-09";
+	rev = "1003c8bd00dc2869cb5ca5282e6ce33834fed514";
+
+  goPackagePath = "github.com/gordonklaus/ineffassign";
+  excludedPackages = ''testdata'';
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "gordonklaus";
+    repo = "ineffassign";
+    sha256 = "1rkzqvd3z03vq8q8qi9cghvgggsf02ammj9wq8jvpnx6b2sd16nd";
+  };
+
+  meta = with lib; {
+    description = "Detect ineffectual assignments in Go code.";
+    homepage = https://github.com/gordonklaus/ineffassign;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/interfacer/default.nix b/pkgs/development/tools/interfacer/default.nix
new file mode 100644
index 00000000000..274ced0b37c
--- /dev/null
+++ b/pkgs/development/tools/interfacer/default.nix
@@ -0,0 +1,31 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "interfacer-unstable-${version}";
+  version = "2018-08-31";
+  rev = "c20040233aedb03da82d460eca6130fcd91c629a";
+
+  goPackagePath = "mvdan.cc/interfacer";
+  excludedPackages = ''check/testdata'';
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "mvdan";
+    repo = "interfacer";
+    sha256 = "0cx4m74mvn200360pmsqxx4z0apk9fcknwwqh8r94zd3jfv4akq2";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "A linter that suggests interface types.";
+    homepage = https://github.com/mvdan/interfacer;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/interfacer/deps.nix b/pkgs/development/tools/interfacer/deps.nix
new file mode 100644
index 00000000000..6810950878b
--- /dev/null
+++ b/pkgs/development/tools/interfacer/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "80517062f582ea3340cd4baf70e86d539ae7d84d";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "96e9e165b75e735822645eff82850b08c377be36";
+      sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
+    };
+  }
+  {
+    goPackagePath = "mvdan.cc/lint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mvdan/lint";
+      rev = "adc824a0674b99099789b6188a058d485eaf61c0";
+      sha256 = "17mi2rvkg9kzv1shxcyawzcj4jj3v738d1j82fp4yygx859yvr8r";
+    };
+  }
+]
diff --git a/pkgs/development/tools/kexpand/default.nix b/pkgs/development/tools/kexpand/default.nix
new file mode 100644
index 00000000000..a82c21b72e9
--- /dev/null
+++ b/pkgs/development/tools/kexpand/default.nix
@@ -0,0 +1,18 @@
+{ buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "kexpand-unstable-2017-05-12";
+
+  goPackagePath = "github.com/kopeio/kexpand";
+
+  subPackages = [ "." ];
+
+  src = fetchFromGitHub {
+    owner = "kopeio";
+    repo = "kexpand";
+    rev = "c508a43a4e84410dfd30827603e902148c5c1f3c";
+    sha256 = "0946h74lsqnr1106j7i2w2a5jg2bbk831d7prlws4bb2kigfm38p";
+  };
+
+  goDeps = ./deps.nix;
+}
diff --git a/pkgs/development/tools/kexpand/deps.nix b/pkgs/development/tools/kexpand/deps.nix
new file mode 100644
index 00000000000..c049d9683cc
--- /dev/null
+++ b/pkgs/development/tools/kexpand/deps.nix
@@ -0,0 +1,63 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+
+  {
+    goPackagePath = "github.com/ghodss/yaml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ghodss/yaml";
+      rev = "v1.0.0";
+      sha256 = "0skwmimpy7hlh7pva2slpcplnm912rp3igs98xnqmn859kwa5v8g";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "v0.0.3";
+      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.3";
+      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+    };
+  }
+
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.1";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+]
diff --git a/pkgs/development/tools/maligned/default.nix b/pkgs/development/tools/maligned/default.nix
new file mode 100644
index 00000000000..7e5cbaddd8b
--- /dev/null
+++ b/pkgs/development/tools/maligned/default.nix
@@ -0,0 +1,30 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "maligned-unstable-${version}";
+  version = "2018-07-07";
+  rev = "6e39bd26a8c8b58c5a22129593044655a9e25959";
+
+  goPackagePath = "github.com/mdempsky/maligned";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "mdempsky";
+    repo = "maligned";
+    sha256 = "08inr5xjqv9flrlyhqd8ck1q26y5xb6iilz0xkb6bqa4dl5ialhi";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Tool to detect Go structs that would take less memory if their fields were sorted.";
+    homepage = https://github.com/mdempsky/maligned;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/maligned/deps.nix b/pkgs/development/tools/maligned/deps.nix
new file mode 100644
index 00000000000..afe5e50e47b
--- /dev/null
+++ b/pkgs/development/tools/maligned/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "80517062f582ea3340cd4baf70e86d539ae7d84d";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "96e9e165b75e735822645eff82850b08c377be36";
+      sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
+    };
+  }
+]
diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix
index 3205366f80e..54f9b5e4031 100644
--- a/pkgs/development/tools/misc/binutils/default.nix
+++ b/pkgs/development/tools/misc/binutils/default.nix
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
     then "-Wno-string-plus-int -Wno-deprecated-declarations"
     else "-static-libgcc";
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
 
   # TODO(@Ericson2314): Always pass "--target" and always targetPrefix.
   configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target";
diff --git a/pkgs/development/tools/misc/cwebbin/default.nix b/pkgs/development/tools/misc/cwebbin/default.nix
index a952475b967..d8deb75d2d4 100644
--- a/pkgs/development/tools/misc/cwebbin/default.nix
+++ b/pkgs/development/tools/misc/cwebbin/default.nix
@@ -46,5 +46,6 @@ stdenv.mkDerivation rec {
     description = "Literate Programming in C/C++";
     platforms = with platforms; unix;
     maintainers = with maintainers; [ vrthra ];
+    license = licenses.abstyles;
   };
 }
diff --git a/pkgs/development/tools/misc/eggdbus/default.nix b/pkgs/development/tools/misc/eggdbus/default.nix
index 3b1c70b4ac3..7c7e5340434 100644
--- a/pkgs/development/tools/misc/eggdbus/default.nix
+++ b/pkgs/development/tools/misc/eggdbus/default.nix
@@ -2,18 +2,19 @@
 
 stdenv.mkDerivation rec {
   name = "eggdbus-0.6";
-  
+
   src = fetchurl {
     url = "https://hal.freedesktop.org/releases/${name}.tar.gz";
     sha256 = "118hj63ac65zlg71kydv4607qcg1qpdlql4kvhnwnnhar421jnq4";
   };
-  
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ glib dbus dbus-glib ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://hal.freedesktop.org/releases/;
     description = "D-Bus bindings for GObject";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.lgpl2;
   };
 }
diff --git a/pkgs/development/tools/misc/icon-naming-utils/default.nix b/pkgs/development/tools/misc/icon-naming-utils/default.nix
index 37bc73172da..5fd0fe8be2f 100644
--- a/pkgs/development/tools/misc/icon-naming-utils/default.nix
+++ b/pkgs/development/tools/misc/icon-naming-utils/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
     url = "http://tango.freedesktop.org/releases/${name}.tar.gz";
     sha256 = "071fj2jm5kydlz02ic5sylhmw6h2p3cgrm3gwdfabinqkqcv4jh4";
   };
-  
+
   buildInputs = [perl XMLSimple librsvg];
 
   postInstall =
@@ -20,5 +20,6 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = http://tango.freedesktop.org/Standard_Icon_Naming_Specification;
     platforms = with platforms; linux ++ darwin;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/development/tools/misc/ltrace/default.nix b/pkgs/development/tools/misc/ltrace/default.nix
index 15eac37a53a..77d4c5771f9 100644
--- a/pkgs/development/tools/misc/ltrace/default.nix
+++ b/pkgs/development/tools/misc/ltrace/default.nix
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Library call tracer";
     homepage = https://www.ltrace.org/;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix
index 1ae8a32b640..81fb7f8b13f 100644
--- a/pkgs/development/tools/misc/pkgconfig/default.nix
+++ b/pkgs/development/tools/misc/pkgconfig/default.nix
@@ -39,6 +39,7 @@ stdenv.mkDerivation rec {
     description = "A tool that allows packages to find out information about other packages";
     homepage = http://pkg-config.freedesktop.org/wiki/;
     platforms = platforms.all;
+    license = licenses.gpl2Plus;
   };
 
 }
diff --git a/pkgs/development/tools/misc/sqitch/default.nix b/pkgs/development/tools/misc/sqitch/default.nix
index 8328433a823..a077367622e 100644
--- a/pkgs/development/tools/misc/sqitch/default.nix
+++ b/pkgs/development/tools/misc/sqitch/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation {
 
   meta = {
     platforms = stdenv.lib.platforms.unix;
+    inherit (sqitchModule.meta) license;
   };
 }
diff --git a/pkgs/development/tools/misc/tie/default.nix b/pkgs/development/tools/misc/tie/default.nix
index c73dbfce8f8..c380243a898 100644
--- a/pkgs/development/tools/misc/tie/default.nix
+++ b/pkgs/development/tools/misc/tie/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     description = "Allow multiple web change files";
     platforms = with platforms; unix;
     maintainers = with maintainers; [ vrthra ];
+    license = licenses.abstyles;
   };
 }
diff --git a/pkgs/development/tools/ocaml/dune/default.nix b/pkgs/development/tools/ocaml/dune/default.nix
index 6d0754da04d..62493ee83a6 100644
--- a/pkgs/development/tools/ocaml/dune/default.nix
+++ b/pkgs/development/tools/ocaml/dune/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "dune-${version}";
-  version = "1.4.0";
+  version = "1.5.1";
   src = fetchurl {
     url = "https://github.com/ocaml/dune/releases/download/${version}/dune-${version}.tbz";
-    sha256 = "1fz1jx1d48yb40qan4hw25h8ia55vs7mp94a3rr7cf5gb5ap2zkj";
+    sha256 = "1dbf7wwhr7b41g3p24qb9v5r1vvgrk6i9w8f7y7k5k527xy9jk5w";
   };
 
   buildInputs = with ocamlPackages; [ ocaml findlib ];
@@ -14,10 +14,14 @@ stdenv.mkDerivation rec {
 
   dontAddPrefix = true;
 
-  installPhase = "${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR";
+  installPhase = ''
+    runHook preInstall
+    ${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR
+    runHook postInstall
+  '';
 
   meta = {
-    homepage = "https://github.com/ocaml/dune";
+    homepage = https://github.com/ocaml/dune;
     description = "A composable build system";
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     license = stdenv.lib.licenses.mit;
diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix
index c15970d3f3e..e059a5d6a76 100644
--- a/pkgs/development/tools/ocaml/merlin/default.nix
+++ b/pkgs/development/tools/ocaml/merlin/default.nix
@@ -1,23 +1,17 @@
-{ stdenv, fetchzip, ocaml, findlib, dune, yojson }:
+{ stdenv, fetchzip, buildDunePackage, yojson }:
 
-assert stdenv.lib.versionAtLeast ocaml.version "4.02";
-
-let
+buildDunePackage rec {
+  pname = "merlin";
   version = "3.2.2";
-in
-
-stdenv.mkDerivation {
 
-  name = "merlin-${version}";
+  minimumOCamlVersion = "4.02";
 
   src = fetchzip {
     url = "https://github.com/ocaml/merlin/archive/v${version}.tar.gz";
     sha256 = "15ssgmwdxylbwhld9p1cq8x6kadxyhll5bfyf11dddj6cldna3hb";
   };
 
-  buildInputs = [ ocaml findlib dune yojson ];
-
-  inherit (dune) installPhase;
+  buildInputs = [ yojson ];
 
   meta = with stdenv.lib; {
     description = "An editor-independent tool to ease the development of programs in OCaml";
diff --git a/pkgs/development/tools/ocaml/ocaml-top/default.nix b/pkgs/development/tools/ocaml/ocaml-top/default.nix
index ddea2aa9784..7336439240d 100644
--- a/pkgs/development/tools/ocaml/ocaml-top/default.nix
+++ b/pkgs/development/tools/ocaml/ocaml-top/default.nix
@@ -1,33 +1,25 @@
-{ stdenv, fetchzip, ncurses
-, ocamlPackages
-, dune
-}:
+{ stdenv, fetchzip, ncurses, ocamlPackages }:
 
-stdenv.mkDerivation rec {
+with ocamlPackages; buildDunePackage rec {
+  pname = "ocaml-top";
   version = "1.1.5";
-  name = "ocaml-top-${version}";
+
   src = fetchzip {
     url = "https://github.com/OCamlPro/ocaml-top/archive/${version}.tar.gz";
     sha256 = "1d4i6aanrafgrgk4mh154k6lkwk0b6mh66rykz33awlf5pfqd8yv";
   };
 
-  buildInputs = [ ncurses dune ]
-  ++ (with ocamlPackages; [ ocaml ocp-build findlib lablgtk ocp-index ]);
+  buildInputs = [ ncurses ocp-build lablgtk ocp-index ];
 
   configurePhase = ''
     export TERM=xterm
     ocp-build -init
   '';
 
-  buildPhase = "jbuilder build";
-
-  inherit (dune) installPhase;
-
   meta = {
     homepage = https://www.typerex.org/ocaml-top.html;
     license = stdenv.lib.licenses.gpl3;
     description = "A simple cross-platform OCaml code editor built for top-level evaluation";
-    platforms = ocamlPackages.ocaml.meta.platforms or [];
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
   };
 }
diff --git a/pkgs/development/tools/ocaml/ocamlformat/default.nix b/pkgs/development/tools/ocaml/ocamlformat/default.nix
index e0b744c8359..694f4b6e89a 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/default.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/default.nix
@@ -1,15 +1,10 @@
-{ stdenv, fetchFromGitHub, ocamlPackages, dune }:
+{ stdenv, fetchFromGitHub, ocamlPackages }:
 
-with ocamlPackages;
-
-if !stdenv.lib.versionAtLeast ocaml.version "4.05"
-then throw "ocamlformat is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  version = "0.8";
+with ocamlPackages; buildDunePackage rec {
   pname = "ocamlformat";
-  name = "${pname}-${version}";
+  version = "0.8";
+
+  minimumOCamlVersion = "4.05";
 
   src = fetchFromGitHub {
     owner = "ocaml-ppx";
@@ -19,9 +14,6 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    ocaml
-    dune
-    findlib
     base
     cmdliner
     fpath
@@ -34,17 +26,10 @@ stdenv.mkDerivation rec {
     tools/gen_version.sh src/Version.ml version
   '';
 
-  buildPhase = ''
-    dune build -p ocamlformat
-  '';
-
-  inherit (dune) installPhase;
-
   meta = {
-    homepage = "https://github.com/ocaml-ppx/ocamlformat";
+    inherit (src.meta) homepage;
     description = "Auto-formatter for OCaml code";
     maintainers = [ stdenv.lib.maintainers.Zimmi48 ];
     license = stdenv.lib.licenses.mit;
-    inherit (ocamlPackages.ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/tools/parse-cli-bin/default.nix b/pkgs/development/tools/parse-cli-bin/default.nix
index 9424196cf46..616a2049c77 100644
--- a/pkgs/development/tools/parse-cli-bin/default.nix
+++ b/pkgs/development/tools/parse-cli-bin/default.nix
@@ -13,6 +13,7 @@ stdenv.mkDerivation rec {
     description = "Parse Command Line Interface";
     homepage    = "https://parse.com";
     platforms   = platforms.linux;
+    license     = licenses.bsd3;
   };
 
   phases = "installPhase";
@@ -22,4 +23,4 @@ stdenv.mkDerivation rec {
     cp "$src" "$out/bin/parse"
     chmod +x "$out/bin/parse"
   '';
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/tools/parsing/peg/default.nix b/pkgs/development/tools/parsing/peg/default.nix
index 3a273e1ddbf..5b8b16ef192 100644
--- a/pkgs/development/tools/parsing/peg/default.nix
+++ b/pkgs/development/tools/parsing/peg/default.nix
@@ -10,9 +10,9 @@ stdenv.mkDerivation rec {
 
   preBuild="makeFlagsArray+=( PREFIX=$out )";
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://piumarta.com/software/peg/;
-    platforms = stdenv.lib.platforms.all;
-    maintainers = [ ];
+    platforms = platforms.all;
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/development/tools/reftools/default.nix b/pkgs/development/tools/reftools/default.nix
new file mode 100644
index 00000000000..6ef724022e8
--- /dev/null
+++ b/pkgs/development/tools/reftools/default.nix
@@ -0,0 +1,29 @@
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "reftools-unstable-${version}";
+  version = "2018-09-14";
+  rev = "654d0ba4f96d62286ca33cd46f7674b84f76d399";
+
+  goPackagePath = "github.com/davidrjenni/reftools";
+  excludedPackages = "\\(cmd/fillswitch/test-fixtures\\)";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "davidrjenni";
+    repo = "reftools";
+    sha256 = "12y2h1h15xadc8pa3xsj11hpdxz5dss6k7xaa4h1ifkvnasjp5w2";
+  };
+
+  meta = with lib; {
+    description = "reftools - refactoring tools for Go";
+    homepage = https://github.com/davidrjenni/reftools;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/sigrok-cli/default.nix b/pkgs/development/tools/sigrok-cli/default.nix
index 3d8027a1299..dd0fa2461d8 100644
--- a/pkgs/development/tools/sigrok-cli/default.nix
+++ b/pkgs/development/tools/sigrok-cli/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, glib, libsigrok, libsigrokdecode }:
 
 stdenv.mkDerivation rec {
-  name = "sigrok-cli-0.7.0";
+  name = "sigrok-cli-0.7.1";
 
   src = fetchurl {
     url = "https://sigrok.org/download/source/sigrok-cli/${name}.tar.gz";
-    sha256 = "072ylscp0ppgii1k5j07hhv7dfmni4vyhxnsvxmgqgfyq9ldjsan";
+    sha256 = "15vpn1psriadcbl6v9swwgws7dva85ld03yv6g1mgm27kx11697m";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index 0e3a9706d24..7f39376dc06 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -5,18 +5,18 @@
 with stdenv.lib;
 
 let
-  version = "0.1.31";
+  version = "0.1.32";
 
   src = fetchFromGitHub {
     rev = "v${version}";
-    owner = "projectatomic";
+    owner = "containers";
     repo = "skopeo";
-    sha256 = "02z46wxhms8yph03ksl7i4hbqy15v3y1r43js9dxn0a45vxkm7lb";
+    sha256 = "0pyii4z9xf23lsdx4d3m5pkdyrsi4v1pbjj8l7fjgyfv8ncrjyn8";
   };
 
   defaultPolicyFile = runCommand "skopeo-default-policy.json" {} "cp ${src}/default-policy.json $out";
 
-  goPackagePath = "github.com/projectatomic/skopeo";
+  goPackagePath = "github.com/containers/skopeo";
 
 in
 buildGoPackage rec {
@@ -32,8 +32,8 @@ buildGoPackage rec {
 
   buildFlagsArray = ''
     -ldflags=
-    -X github.com/projectatomic/skopeo/vendor/github.com/containers/image/signature.systemDefaultPolicyPath=${defaultPolicyFile}
-    -X github.com/projectatomic/skopeo/vendor/github.com/containers/image/internal/tmpdir.unixTempDirForBigFiles=/tmp
+    -X github.com/containers/skopeo/vendor/github.com/containers/image/signature.systemDefaultPolicyPath=${defaultPolicyFile}
+    -X github.com/containers/skopeo/vendor/github.com/containers/image/internal/tmpdir.unixTempDirForBigFiles=/tmp
   '';
 
   preBuild = ''
diff --git a/pkgs/development/tools/tradcpp/default.nix b/pkgs/development/tools/tradcpp/default.nix
index 8cde662b14c..64a97ad0087 100644
--- a/pkgs/development/tools/tradcpp/default.nix
+++ b/pkgs/development/tools/tradcpp/default.nix
@@ -13,9 +13,10 @@ stdenv.mkDerivation {
   preConfigure = "autoconf";
   patches = [ ./tradcpp-configure.patch ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A traditional (K&R-style) C macro preprocessor";
-    platforms = stdenv.lib.platforms.all;
+    platforms = platforms.all;
+    license = licenses.bsd2;
   };
 
 }
diff --git a/pkgs/development/tools/unconvert/default.nix b/pkgs/development/tools/unconvert/default.nix
new file mode 100644
index 00000000000..1e81c5b9f86
--- /dev/null
+++ b/pkgs/development/tools/unconvert/default.nix
@@ -0,0 +1,31 @@
+
+{ buildGoPackage
+, lib
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  name = "unconvert-unstable-${version}";
+  version = "2018-07-03";
+  rev = "1a9a0a0a3594e9363e49545fb6a4e24ac4c68b7b";
+
+  goPackagePath = "github.com/mdempsky/unconvert";
+
+  src = fetchFromGitHub {
+    inherit rev;
+
+    owner = "mdempsky";
+    repo = "unconvert";
+    sha256 = "1ww5qk1cmdis4ig5mb0b0w7nzrf3734s51plmgdxqsr35y88q4p9";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Remove unnecessary type conversions from Go source";
+    homepage = https://github.com/mdempsky/unconvert;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/unconvert/deps.nix b/pkgs/development/tools/unconvert/deps.nix
new file mode 100644
index 00000000000..333ec7ca3b1
--- /dev/null
+++ b/pkgs/development/tools/unconvert/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "80517062f582ea3340cd4baf70e86d539ae7d84d";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "6f44c5a2ea40ee3593d98cdcc905cc1fdaa660e2";
+      sha256 = "00mwzxly5isgf0glz7k3k2dkyqkjfc4z55qxajx4lgcp3h8xn9xj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "96e9e165b75e735822645eff82850b08c377be36";
+      sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
+    };
+  }
+]
diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix
index ecc1a2d0094..74992560f3f 100644
--- a/pkgs/development/tools/vagrant/default.nix
+++ b/pkgs/development/tools/vagrant/default.nix
@@ -1,11 +1,11 @@
-{ lib, fetchurl, buildRubyGem, bundlerEnv, ruby, libarchive, writeText }:
+{ lib, fetchurl, buildRubyGem, bundlerEnv, ruby, libarchive, writeText, withLibvirt ? true, libvirt, pkgconfig }:
 
 let
   # NOTE: bumping the version and updating the hash is insufficient;
   # you must use bundix to generate a new gemset.nix in the Vagrant source.
-  version = "2.1.2";
+  version = "2.2.0";
   url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
-  sha256 = "0fb90v43d30whhyjlgb9mmy93ccbpr01pz97kp5hrg3wfd7703b1";
+  sha256 = "1wa8l3j6hpy0m0snz7wvfcf0wsjikp22c2z29crpk10f7xl7c56b";
 
   deps = bundlerEnv rec {
     name = "${pname}-${version}";
@@ -15,7 +15,7 @@ let
     inherit ruby;
     gemfile = writeText "Gemfile" "";
     lockfile = writeText "Gemfile.lock" "";
-    gemset = lib.recursiveUpdate (import ./gemset.nix) {
+    gemset = lib.recursiveUpdate (import ./gemset.nix) ({
       vagrant = {
         source = {
           type = "url";
@@ -23,7 +23,7 @@ let
         };
         inherit version;
       };
-    };
+    } // lib.optionalAttrs withLibvirt (import ./gemset_libvirt.nix));
   };
 
 in buildRubyGem rec {
@@ -35,6 +35,8 @@ in buildRubyGem rec {
   dontBuild = false;
   src = fetchurl { inherit url sha256; };
 
+  buildInputs = lib.optional withLibvirt [ libvirt pkgconfig ];
+
   patches = [
     ./unofficial-installation-nowarn.patch
     ./use-system-bundler-version.patch
@@ -45,7 +47,12 @@ in buildRubyGem rec {
   postInstall = ''
     wrapProgram "$out/bin/vagrant" \
       --set GEM_PATH "${deps}/lib/ruby/gems/${ruby.version.libDir}" \
-      --prefix PATH ':' "${lib.getBin libarchive}/bin"
+      --prefix PATH ':' "${lib.getBin libarchive}/bin" \
+      ${lib.optionalString withLibvirt ''
+        --prefix PATH ':' "${pkgconfig}/bin" \
+        --prefix PKG_CONFIG_PATH ':' \
+          "${lib.makeSearchPath "lib/pkgconfig" [ libvirt ]}"
+      ''}
   '';
 
   installCheckPhase = ''
diff --git a/pkgs/development/tools/vagrant/gemset.nix b/pkgs/development/tools/vagrant/gemset.nix
index 598f5cc6723..39eeb02ce55 100644
--- a/pkgs/development/tools/vagrant/gemset.nix
+++ b/pkgs/development/tools/vagrant/gemset.nix
@@ -70,10 +70,10 @@
   ffi = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zw6pbyvmj8wafdc7l5h7w20zkp1vbr2805ql5d941g2b20pk4zr";
+      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
       type = "gem";
     };
-    version = "1.9.23";
+    version = "1.9.25";
   };
   gssapi = {
     dependencies = ["ffi"];
@@ -172,18 +172,18 @@
     dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
       type = "gem";
     };
-    version = "3.1";
+    version = "3.2.2";
   };
   mime-types-data = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
       type = "gem";
     };
-    version = "3.2016.0521";
+    version = "3.2018.0812";
   };
   multi_json = {
     source = {
@@ -214,10 +214,10 @@
   net-ssh = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07c4v97zl1daabmri9zlbzs6yvkl56z1q14bw74d53jdj0c17nhx";
+      sha256 = "0qfanf71yv8w7yl9l9wqcy68i2x1ghvnf8m581yy4pl0anfdhqw8";
       type = "gem";
     };
-    version = "4.2.0";
+    version = "5.0.2";
   };
   netrc = {
     source = {
@@ -238,10 +238,10 @@
   public_suffix = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mvzd9ycjw8ydb9qy3daq3kdzqs2vpqvac4dqss6ckk4rfcjc637";
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
       type = "gem";
     };
-    version = "3.0.1";
+    version = "3.0.3";
   };
   rake = {
     source = {
@@ -358,10 +358,10 @@
   rubyzip = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
+      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.2.2";
   };
   safe_yaml = {
     source = {
@@ -397,19 +397,28 @@
     version = "0.0.7.5";
   };
   vagrant = {
-    dependencies = ["childprocess" "erubis" "hashicorp-checkpoint" "i18n" "listen" "log4r" "net-scp" "net-sftp" "net-ssh" "rb-kqueue" "rest-client" "ruby_dep" "wdm" "winrm" "winrm-elevated" "winrm-fs"];
+    dependencies = ["childprocess" "erubis" "hashicorp-checkpoint" "i18n" "listen" "log4r" "net-scp" "net-sftp" "net-ssh" "rb-kqueue" "rest-client" "ruby_dep" "rubyzip" "vagrant_cloud" "wdm" "winrm" "winrm-elevated" "winrm-fs"];
   };
   vagrant-spec = {
     dependencies = ["childprocess" "log4r" "rspec" "thor"];
     source = {
       fetchSubmodules = false;
-      rev = "9413ab298407114528766efefd1fb1ff24589636";
-      sha256 = "1z77m3p6x82hipa7y4i71zafy0rdfajw2vhqdxczjmrlwp0pvisl";
+      rev = "abfc34474d122235d56e4c6b6fb5d3e35bedfa90";
+      sha256 = "08xy2c82lrxkwjlvrbx1v32968a6psni3952y3knriqgygv2kzbn";
       type = "git";
       url = "https://github.com/hashicorp/vagrant-spec.git";
     };
     version = "0.0.1";
   };
+  vagrant_cloud = {
+    dependencies = ["rest-client"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k325a1cblj3jd2av8a6j3xsjjm36g578gpbmxw7h5dbffp49il1";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
   wdm = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -431,10 +440,10 @@
     dependencies = ["builder" "erubis" "gssapi" "gyoku" "httpclient" "logging" "nori" "rubyntlm"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02lzbixdbjvhmb0byqx9rl9x4xx9pqc8jwm7y6mmp7w7mri72zh6";
+      sha256 = "05c1xji4afwxx4vgim5n4nj62zbyppmm67ci3kwi0jjrqaj9y11q";
       type = "gem";
     };
-    version = "2.2.3";
+    version = "2.3.0";
   };
   winrm-elevated = {
     dependencies = ["winrm" "winrm-fs"];
@@ -449,9 +458,9 @@
     dependencies = ["erubis" "logging" "rubyzip" "winrm"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i3w2j2rmhjqj8lynca2m1dm1m5fv1x35xwhk3vyr15dn260z56g";
+      sha256 = "12g9grzp03knh1nxcicnm93pmlf4r264lhvl5yviyri8swmqlbz5";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.3.1";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/tools/vagrant/gemset_libvirt.nix b/pkgs/development/tools/vagrant/gemset_libvirt.nix
new file mode 100644
index 00000000000..aeaf42341a8
--- /dev/null
+++ b/pkgs/development/tools/vagrant/gemset_libvirt.nix
@@ -0,0 +1,19 @@
+{
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+      source = {
+        remotes = ["https://rubygems.org"];
+        sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz";
+        type = "gem";
+      };
+    version = "1.8.5";
+  };
+}
diff --git a/pkgs/development/tools/xcbuild/default.nix b/pkgs/development/tools/xcbuild/default.nix
index 3f7b21be005..e71375402c7 100644
--- a/pkgs/development/tools/xcbuild/default.nix
+++ b/pkgs/development/tools/xcbuild/default.nix
@@ -62,5 +62,6 @@ in stdenv.mkDerivation rec {
     homepage = https://github.com/facebook/xcbuild;
     platforms = platforms.unix;
     maintainers = with maintainers; [ copumpkin matthewbauer ];
+    license = with licenses; [ bsd2 bsd3 ];
   };
 }
diff --git a/pkgs/development/tools/yarn/default.nix b/pkgs/development/tools/yarn/default.nix
index be2b0689f92..e2e115992bc 100644
--- a/pkgs/development/tools/yarn/default.nix
+++ b/pkgs/development/tools/yarn/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "yarn-${version}";
-  version = "1.12.1";
+  version = "1.12.3";
 
   src = fetchzip {
     url = "https://github.com/yarnpkg/yarn/releases/download/v${version}/yarn-v${version}.tar.gz";
-    sha256 = "084xci8y5na2765sh8flc8c5z7fik62filf1p58aqrb2000vna1j";
+    sha256 = "0izn7lfvfw046qlxdgiiiyqj24sl2yclm6v8bzy8ilsr00csbrm2";
   };
 
   buildInputs = [ nodejs ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     homepage = https://yarnpkg.com/;
     description = "Fast, reliable, and secure dependency management for javascript";
     license = licenses.bsd2;
-    maintainers = [ maintainers.offline ];
+    maintainers = [ maintainers.offline maintainers.screendriver ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/web/mailcatcher/Gemfile.lock b/pkgs/development/web/mailcatcher/Gemfile.lock
index 9a4969c1167..c953a311077 100644
--- a/pkgs/development/web/mailcatcher/Gemfile.lock
+++ b/pkgs/development/web/mailcatcher/Gemfile.lock
@@ -16,7 +16,7 @@ GEM
     mime-types (3.1)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2016.0521)
-    rack (1.6.8)
+    rack (1.6.11)
     rack-protection (1.5.3)
       rack
     sinatra (1.4.8)
@@ -40,4 +40,4 @@ DEPENDENCIES
   mailcatcher
 
 BUNDLED WITH
-   1.14.4
+   1.16.4
diff --git a/pkgs/development/web/mailcatcher/default.nix b/pkgs/development/web/mailcatcher/default.nix
index 49c5c4d81af..a2fa509232d 100644
--- a/pkgs/development/web/mailcatcher/default.nix
+++ b/pkgs/development/web/mailcatcher/default.nix
@@ -1,29 +1,11 @@
-{ stdenv, bundlerEnv, ruby, makeWrapper }:
+{ lib, bundlerApp }:
 
-stdenv.mkDerivation rec {
-  name = "mailcatcher-${version}";
+bundlerApp {
+  pname = "mailcatcher";
+  gemdir = ./.;
+  exes = [ "mailcatcher" "catchmail" ];
 
-  version = (import ./gemset.nix).mailcatcher.version;
-
-  env = bundlerEnv {
-    name = "${name}-gems";
-
-    inherit ruby;
-
-    gemdir = ./.;
-  };
-
-  buildInputs = [ makeWrapper ];
-
-  unpackPhase = ":";
-
-  installPhase = ''
-    mkdir -p $out/bin
-    makeWrapper ${env}/bin/mailcatcher $out/bin/mailcatcher
-    makeWrapper ${env}/bin/catchmail $out/bin/catchmail
-  '';
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "SMTP server and web interface to locally test outbound emails";
     homepage    = https://mailcatcher.me/;
     license     = licenses.mit;
diff --git a/pkgs/development/web/mailcatcher/gemset.nix b/pkgs/development/web/mailcatcher/gemset.nix
index d9e95454a50..75e1336b1c3 100644
--- a/pkgs/development/web/mailcatcher/gemset.nix
+++ b/pkgs/development/web/mailcatcher/gemset.nix
@@ -16,6 +16,7 @@
     version = "1.0.9.1";
   };
   mail = {
+    dependencies = ["mime-types"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9";
@@ -24,6 +25,7 @@
     version = "2.6.6";
   };
   mailcatcher = {
+    dependencies = ["eventmachine" "mail" "rack" "sinatra" "skinny" "sqlite3" "thin"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h6gk8n18i5f651f244al1hscjzl27fpma4vqw0qhszqqpd5p3bx";
@@ -32,6 +34,7 @@
     version = "0.6.5";
   };
   mime-types = {
+    dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
@@ -50,12 +53,13 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.8";
+    version = "1.6.11";
   };
   rack-protection = {
+    dependencies = ["rack"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
@@ -64,6 +68,7 @@
     version = "1.5.3";
   };
   sinatra = {
+    dependencies = ["rack" "rack-protection" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
@@ -72,6 +77,7 @@
     version = "1.4.8";
   };
   skinny = {
+    dependencies = ["eventmachine" "thin"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1y3yvx88ylgz4d2s1wskjk5rkmrcr15q3ibzp1q88qwzr5y493a9";
@@ -88,6 +94,7 @@
     version = "1.3.13";
   };
   thin = {
+    dependencies = ["daemons" "eventmachine" "rack"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0hrq9m3hb6pm8yrqshhg0gafkphdpvwcqmr7k722kgdisp3w91ga";
diff --git a/pkgs/development/web/now-cli/default.nix b/pkgs/development/web/now-cli/default.nix
index 911e03daa37..0af669ff069 100644
--- a/pkgs/development/web/now-cli/default.nix
+++ b/pkgs/development/web/now-cli/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, fetchurl }:
 stdenv.mkDerivation rec {
   name = "now-cli-${version}";
-  version = "11.4.6";
+  version = "11.5.2";
 
   # TODO: switch to building from source, if possible
   src = fetchurl {
     url = "https://github.com/zeit/now-cli/releases/download/${version}/now-linux.gz";
-    sha256 = "1bl0yrzxdfy6sks674qlfch8mg3b0x1wj488v83glags8ibsg3cl";
+    sha256 = "1aavhslff2v5ap11s3xxrmdgs4n9yyp74sj3kbw6kwxd4cq1cfxz";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/games/blackshades/default.nix b/pkgs/games/blackshades/default.nix
index 4b874c954b0..bf58b523e76 100644
--- a/pkgs/games/blackshades/default.nix
+++ b/pkgs/games/blackshades/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "blackshades-svn-110";
   src = fetchsvn {
     url = svn://svn.icculus.org/blackshades/trunk;
-    rev = 110;
+    rev = "110";
     sha256 = "0kbrh1dympk8scjxr6av24qs2bffz44l8qmw2m5gyqf4g3rxf6ra";
   };
 
diff --git a/pkgs/games/blackshadeselite/default.nix b/pkgs/games/blackshadeselite/default.nix
index 2f503e02ec2..25b9321bec3 100644
--- a/pkgs/games/blackshadeselite/default.nix
+++ b/pkgs/games/blackshadeselite/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "blackshades-elite-svn-29";
   src = fetchsvn {
     url = svn://svn.gna.org/svn/blackshadeselite/trunk;
-    rev = 29;
+    rev = "29";
     sha256 = "1lkws5pqpgcgdlar11waikp6y41z678457n9jcik7nhn53cjjr1s";
   };
 
diff --git a/pkgs/games/dwarf-fortress/wrapper/default.nix b/pkgs/games/dwarf-fortress/wrapper/default.nix
index 058bb5f72ae..8672de3af84 100644
--- a/pkgs/games/dwarf-fortress/wrapper/default.nix
+++ b/pkgs/games/dwarf-fortress/wrapper/default.nix
@@ -33,10 +33,13 @@ let
          ++ lib.optional enableTWBT twbt.art
          ++ [ dwarf-fortress ];
 
-  fixup = lib.singleton (runCommand "fixup" {} ''
+  fixup = lib.singleton (runCommand "fixup" {} (''
     mkdir -p $out/data/init
+  '' + (if (theme != null) then ''
+    cp ${lib.head themePkg}/data/init/init.txt $out/data/init/init.txt
+  '' else ''
     cp ${dwarf-fortress}/data/init/init.txt $out/data/init/init.txt
-  '' + lib.optionalString enableDFHack ''
+  '') + lib.optionalString enableDFHack ''
     mkdir -p $out/hack
 
     # Patch the MD5
@@ -60,7 +63,7 @@ let
       --replace '[INTRO:YES]' '[INTRO:${unBool enableIntro}]' \
       --replace '[TRUETYPE:YES]' '[TRUETYPE:${unBool enableTruetype}]' \
       --replace '[FPS:NO]' '[FPS:${unBool enableFPS}]'
-  '');
+  ''));
 
   env = buildEnv {
     name = "dwarf-fortress-env-${dwarf-fortress.dfVersion}";
diff --git a/pkgs/games/privateer/default.nix b/pkgs/games/privateer/default.nix
index f6f3e600182..301249789da 100644
--- a/pkgs/games/privateer/default.nix
+++ b/pkgs/games/privateer/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
   src = fetchsvn {
     #url = "mirror://sourceforge/project/privateer/Wing%20Commander%20Privateer/Privateer%20Gemini%20Gold%201.03/PrivateerGold1.03.bz2.bin";
     url = "https://privateer.svn.sourceforge.net/svnroot/privateer/privgold/trunk/engine";
-    rev = 294;
+    rev = "294";
     sha256 = "e1759087d4565d3fc95e5c87d0f6ddf36b2cd5befec5695ec56ed5f3cd144c63";
   };
 
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index 2762155d63c..c31b8b22216 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -180,6 +180,15 @@ in buildFHSUserEnv rec {
   '';
 
   profile = ''
+    # Workaround for issue #44254 (Steam cannot connect to friends network)
+    # https://github.com/NixOS/nixpkgs/issues/44254
+    if [ -z ''${TZ+x} ]; then
+      new_TZ="$(readlink -f /etc/localtime | grep -P -o '(?<=/zoneinfo/).*$')"
+      if [ $? -eq 0 ]; then
+        export TZ="$new_TZ"
+      fi
+    fi
+
     export STEAM_RUNTIME=${if nativeOnly then "0" else "/steamrt"}
   '' + extraProfile;
 
diff --git a/pkgs/games/vdrift/default.nix b/pkgs/games/vdrift/default.nix
index 7e43fbf2c88..6c571da561c 100644
--- a/pkgs/games/vdrift/default.nix
+++ b/pkgs/games/vdrift/default.nix
@@ -3,7 +3,7 @@
 
 , data ? fetchsvn {
     url = "svn://svn.code.sf.net/p/vdrift/code/vdrift-data";
-    rev = 1386;
+    rev = "1386";
     sha256 = "0ka6zir9hg0md5p03dl461jkvbk05ywyw233hnc3ka6shz3vazi1";
   }
 }:
diff --git a/pkgs/misc/brightnessctl/default.nix b/pkgs/misc/brightnessctl/default.nix
index f90baee91fc..6292b8183b2 100644
--- a/pkgs/misc/brightnessctl/default.nix
+++ b/pkgs/misc/brightnessctl/default.nix
@@ -11,20 +11,18 @@ stdenv.mkDerivation rec {
     sha256 = "1n1gb8ldgqv3vs565yhk1w4jfvrviczp94r8wqlkv5q6ab43c8w9";
   };
 
-  makeFlags = [ "MODE=0755" "PREFIX=" "DESTDIR=$(out)" ];
-  installTargets = [ "install" "install_udev_rules" ];
+  makeFlags = [ "PREFIX=" "DESTDIR=$(out)" ];
 
   postPatch = ''
     substituteInPlace 90-brightnessctl.rules --replace /bin/ ${coreutils}/bin/
-    substituteInPlace 90-brightnessctl.rules --replace %k '*'
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "https://github.com/Hummer12007/brightnessctl";
-    maintainers = [ stdenv.lib.maintainers.Dje4321 ];
-    license = stdenv.lib.licenses.mit;
     description = "This program allows you read and control device brightness";
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ megheaiulian ];
+    platforms = platforms.linux;
   };
 
 }
diff --git a/pkgs/misc/cups/drivers/splix/default.nix b/pkgs/misc/cups/drivers/splix/default.nix
index 012b37959d8..e227de086de 100644
--- a/pkgs/misc/cups/drivers/splix/default.nix
+++ b/pkgs/misc/cups/drivers/splix/default.nix
@@ -1,7 +1,6 @@
 { stdenv, fetchsvn, fetchurl, cups, cups-filters, jbigkit, zlib }:
 
 let
-  rev = "315";
 
   color-profiles = stdenv.mkDerivation {
     name = "splix-color-profiles-20070625";
@@ -19,14 +18,15 @@ let
     '';
   };
 
-in stdenv.mkDerivation {
+in stdenv.mkDerivation rec {
   name = "splix-svn-${rev}";
+  rev = "315";
 
   src = fetchsvn {
     # We build this from svn, because splix hasn't been in released in several years
     # although the community has been adding some new printer models.
     url = "svn://svn.code.sf.net/p/splix/code/splix";
-    rev = "r${rev}";
+    inherit rev;
     sha256 = "16wbm4xnz35ca3mw2iggf5f4jaxpyna718ia190ka6y4ah932jxl";
   };
 
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index a37d299fbf7..24b46c8f9ca 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, which, pkgconfig, makeWrapper
-, ffmpeg, libGLU_combined, freetype, libxml2, python34
+, ffmpeg, libGLU_combined, freetype, libxml2, python3
 , libobjc, AppKit, Foundation
 , alsaLib ? null
 , libpulseaudio ? null
@@ -39,7 +39,7 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ]
                       ++ optional withVulkan [ makeWrapper ];
 
-  buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python34 SDL2 which ]
+  buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python3 SDL2 which ]
                 ++ optional enableNvidiaCgToolkit nvidia_cg_toolkit
                 ++ optional withVulkan [ vulkan-loader ]
                 ++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ]
diff --git a/pkgs/misc/lollypop-portal/default.nix b/pkgs/misc/lollypop-portal/default.nix
deleted file mode 100644
index dfcdebace3b..00000000000
--- a/pkgs/misc/lollypop-portal/default.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ stdenv, fetchFromGitLab, meson, ninja, pkgconfig
-, python3, gnome3, gst_all_1, gtk3, libnotify
-, kid3, easytag, gobjectIntrospection, wrapGAppsHook }:
-
-python3.pkgs.buildPythonApplication rec {
-  name = "lollypop-portal-${version}";
-  version = "0.9.7";
-
-  format = "other";
-  doCheck = false;
-
-  src = fetchFromGitLab {
-     domain = "gitlab.gnome.org";
-     owner = "gnumdk";
-     repo = name;
-     rev = version;
-     sha256 = "0rn5xmh6391i9l69y613pjad3pzdilskr2xjfcir4vpk8wprvph3";
-  };
-
-  nativeBuildInputs = [
-    gobjectIntrospection
-    meson
-    ninja
-    pkgconfig
-    wrapGAppsHook
-  ];
-
-  buildInputs = [
-    gnome3.gnome-settings-daemon
-    gnome3.libsecret
-    gnome3.totem-pl-parser
-    gst_all_1.gst-plugins-base
-    gst_all_1.gstreamer
-    gtk3
-    libnotify
-    python3
-  ];
-
-  pythonPath = with python3.pkgs; [
-    pycairo
-    pydbus
-    pygobject3
-  ];
-
-  preFixup = ''
-    buildPythonPath "$out/libexec/lollypop-portal $pythonPath"
-    patchPythonScript "$out/libexec/lollypop-portal"
-
-    gappsWrapperArgs+=(
-      --prefix PATH : "${stdenv.lib.makeBinPath [ easytag kid3 ]}"
-    )
-  '';
-
-  meta = with stdenv.lib; {
-    description = "DBus Service for Lollypop";
-    homepage = https://gitlab.gnome.org/gnumdk/lollypop-portal;
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ worldofpeace ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index bd3458b98c8..0c30c92722c 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -53,12 +53,12 @@
   };
 
   ale = buildVimPluginFrom2Nix {
-    name = "ale-2018-10-29";
+    name = "ale-2018-10-31";
     src = fetchFromGitHub {
       owner = "w0rp";
       repo = "ale";
-      rev = "cae40e1c347064bd3ab5eb4c04e9e357d3d82105";
-      sha256 = "0f7qsp0gpafk7fimcbivx2cm53hpjz6hr6lzdg8wnxcm0gdw7827";
+      rev = "4b841b55869e3ec5b02806f9b2fe962ffdca2750";
+      sha256 = "0wa8phv4b6n1akaii8qy9c0lr17vm4bqgz5chjx28zs73jfxsf2i";
     };
   };
 
@@ -92,13 +92,23 @@
     };
   };
 
+  autoload_cscope-vim = buildVimPluginFrom2Nix {
+    name = "autoload_cscope-vim-2011-01-28";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "autoload_cscope.vim";
+      rev = "26f428f400d96d25a9d633e6314f6e1760923db1";
+      sha256 = "150h6k4nd1msa21c0zxl68nwwq3qdmqi0d8h4as98rrz0b0lghn7";
+    };
+  };
+
   awesome-vim-colorschemes = buildVimPluginFrom2Nix {
-    name = "awesome-vim-colorschemes-2018-01-20";
+    name = "awesome-vim-colorschemes-2018-10-30";
     src = fetchFromGitHub {
       owner = "rafi";
       repo = "awesome-vim-colorschemes";
-      rev = "8d2b6657bdbe4f7253e320c741bc4c1fc2f2f41d";
-      sha256 = "1wfm6rsmyqldxwcz0ic4rq7kf00fgsx00rg42cl9yya35nqiri2z";
+      rev = "21d1c93da95d58bead99f3226f9447f5b035afe1";
+      sha256 = "1niwwyxgq7k7mbi05lnpz12lbmn9mam9x4qvzxcbvxsqqp2zzsj8";
     };
   };
 
@@ -436,6 +446,16 @@
     };
   };
 
+  direnv-vim = buildVimPluginFrom2Nix {
+    name = "direnv-vim-2017-12-29";
+    src = fetchFromGitHub {
+      owner = "direnv";
+      repo = "direnv.vim";
+      rev = "4d6271f0facd57a478c0d02895775dc01f577c5c";
+      sha256 = "1vfg4hrxbqc96w694cn9gzjvwkscd111fp6dqlh7wpd2z3ciw07h";
+    };
+  };
+
   echodoc-vim = buildVimPluginFrom2Nix {
     name = "echodoc-vim-2018-10-20";
     src = fetchFromGitHub {
@@ -467,6 +487,17 @@
     };
   };
 
+  emmet-vim = buildVimPluginFrom2Nix {
+    name = "emmet-vim-2018-10-06";
+    src = fetchFromGitHub {
+      owner = "mattn";
+      repo = "emmet-vim";
+      rev = "7a4bf3463ef1e2c08393218fc67a8729c00948a5";
+      sha256 = "15y5h7b6ll7nngaq9i44xb88rw2jg5ahbvybdn7kdf0nq1m3z409";
+      fetchSubmodules = true;
+    };
+  };
+
   ensime-vim = buildVimPluginFrom2Nix {
     name = "ensime-vim-2018-10-10";
     src = fetchFromGitHub {
@@ -718,6 +749,17 @@
     };
   };
 
+  jedi-vim = buildVimPluginFrom2Nix {
+    name = "jedi-vim-2018-10-14";
+    src = fetchFromGitHub {
+      owner = "davidhalter";
+      repo = "jedi-vim";
+      rev = "b6dfc5fd49c26d4dbe9f54c814956567a7a9b3a8";
+      sha256 = "11wvynjl1m23vdp4wvirhmm7vnpji5affbyhwz67yjkvh6c42xqa";
+      fetchSubmodules = true;
+    };
+  };
+
   Jenkinsfile-vim-syntax = buildVimPluginFrom2Nix {
     name = "Jenkinsfile-vim-syntax-2018-09-25";
     src = fetchFromGitHub {
@@ -899,12 +941,12 @@
   };
 
   neco-vim = buildVimPluginFrom2Nix {
-    name = "neco-vim-2017-10-01";
+    name = "neco-vim-2018-10-30";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neco-vim";
-      rev = "f5397c5e800d65a58c56d8f1b1b92686b05f4ca9";
-      sha256 = "0yb7ja6qgrazszk4i01cwjj00j9vd43zs2r11b08iy8n10jnzr73";
+      rev = "4c0203b44f8daa7e2f72e2514488d637e8a766a4";
+      sha256 = "03v3h2ks6y9pl960lnvzxlfhnn6l2pcn6d6012znw2wqpralrjq2";
     };
   };
 
@@ -949,12 +991,12 @@
   };
 
   neomake = buildVimPluginFrom2Nix {
-    name = "neomake-2018-10-28";
+    name = "neomake-2018-10-29";
     src = fetchFromGitHub {
       owner = "benekastah";
       repo = "neomake";
-      rev = "35f4c002d55d5f722a08eb9acf126f7717072812";
-      sha256 = "0ad5dqyjpwn78nadg90jd03n0mkllm0r4jxq72h77dwxsd1prgl9";
+      rev = "c15d51ea9f622b8bce469a18833a6ac64f6a1193";
+      sha256 = "1l15y0di6k4v0vrwpd86lp2n5ljfjnzncgpxwmbhqb2xznr7caq7";
     };
   };
 
@@ -1009,12 +1051,12 @@
   };
 
   nerdtree = buildVimPluginFrom2Nix {
-    name = "nerdtree-2018-10-25";
+    name = "nerdtree-2018-10-31";
     src = fetchFromGitHub {
       owner = "scrooloose";
       repo = "nerdtree";
-      rev = "91e0f2253fbecefa7e14f095950341584877ef19";
-      sha256 = "1lkmxplrv211drzmwi93v1fmicdjm146vl471s3h21y77k0hd2f5";
+      rev = "8d005db94f8d1a214d172aeb1008d016c3d201e2";
+      sha256 = "0f8dljl45ph668kwjf0py0891i3aqfdijplarxnblbkp2zn5ij7g";
     };
   };
 
@@ -1118,6 +1160,16 @@
     };
   };
 
+  pig-vim = buildVimPluginFrom2Nix {
+    name = "pig-vim-2017-06-08";
+    src = fetchFromGitHub {
+      owner = "motus";
+      repo = "pig.vim";
+      rev = "60d8a0883d3e474e61af46b581a5ce3af65e9bb5";
+      sha256 = "0az48a3slpzljb69d60cpahkshmdbss0snc8lmvf4yrc1gx8yncv";
+    };
+  };
+
   pony-vim-syntax = buildVimPluginFrom2Nix {
     name = "pony-vim-syntax-2017-09-26";
     src = fetchFromGitHub {
@@ -1128,6 +1180,16 @@
     };
   };
 
+  PreserveNoEOL = buildVimPluginFrom2Nix {
+    name = "PreserveNoEOL-2013-06-14";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "PreserveNoEOL";
+      rev = "940e3ce90e54d8680bec1135a21dcfbd6c9bfb62";
+      sha256 = "1726jpr2zf6jrb00pp082ikbx4mll3a877pnzs6i18f9fgpaqqgd";
+    };
+  };
+
   psc-ide-vim = buildVimPluginFrom2Nix {
     name = "psc-ide-vim-2018-03-11";
     src = fetchFromGitHub {
@@ -1468,6 +1530,16 @@
     };
   };
 
+  traces-vim = buildVimPluginFrom2Nix {
+    name = "traces-vim-2018-10-14";
+    src = fetchFromGitHub {
+      owner = "markonm";
+      repo = "traces.vim";
+      rev = "9520ed3837340028b871a9e497dd0d0b07cb4953";
+      sha256 = "0dfm04c4v0qk2f7fycpkwhbws0m5q383bizyaslflb1mmx3jnc48";
+    };
+  };
+
   tslime-vim = buildVimPluginFrom2Nix {
     name = "tslime-vim-2018-07-23";
     src = fetchFromGitHub {
@@ -1479,12 +1551,12 @@
   };
 
   tsuquyomi = buildVimPluginFrom2Nix {
-    name = "tsuquyomi-2018-08-03";
+    name = "tsuquyomi-2018-10-31";
     src = fetchFromGitHub {
       owner = "Quramy";
       repo = "tsuquyomi";
-      rev = "05e6515f6d21545959ac4eb570c917e1d225b1f1";
-      sha256 = "0hbd2d8zb86c8ncrrm4zyj92j523xay2lwk2k9arwacn8fj42hir";
+      rev = "bdd034d06ed47176ec1ee0bd3dae5bc0aeb053e3";
+      sha256 = "119dxmkarbh0b0k4l59mxr19shks4mv96j3mbz02q0kdq18bgrdq";
     };
   };
 
@@ -1539,12 +1611,12 @@
   };
 
   vim = buildVimPluginFrom2Nix {
-    name = "vim-2018-10-27";
+    name = "vim-2018-10-30";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "854886980635eb70e119d2bd3bb94a0ce46fc71d";
-      sha256 = "1ff88clly227cj83ng6bwc8jn3zp20614agg94izqhsxr5bpdp5z";
+      rev = "66755a9cb9bdea62720812a1165132de6ff62468";
+      sha256 = "0zca3spgnf00rxa0h5x79ydycz41b0xli7bgwpnbxannzxqswhiy";
     };
   };
 
@@ -1749,12 +1821,12 @@
   };
 
   vim-airline = buildVimPluginFrom2Nix {
-    name = "vim-airline-2018-10-22";
+    name = "vim-airline-2018-11-01";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "08e9aa5386eecfd6a6cbde1eff240619cd81beed";
-      sha256 = "0g9rlr6067sqyp0l4yacnr14phx1wn2jvjcq2x2zwkc0b28hxyrs";
+      rev = "6516b1b4dccef543d489177431050fe8a5c5c99c";
+      sha256 = "0x4vdxz31vqyd3qy8vr4gcdc649nz72axris5fxj8ln5zphlr6ll";
     };
   };
 
@@ -1818,6 +1890,16 @@
     };
   };
 
+  vim-better-whitespace = buildVimPluginFrom2Nix {
+    name = "vim-better-whitespace-2018-06-11";
+    src = fetchFromGitHub {
+      owner = "ntpeters";
+      repo = "vim-better-whitespace";
+      rev = "70a38fa9683e8cd0635264dd1b69c6ccbee4e3e7";
+      sha256 = "1w16mrvydbvj9msi8p4ym1vasjx6kr4yd8jdhndz0pr3qasn2ix9";
+    };
+  };
+
   vim-buffergator = buildVimPluginFrom2Nix {
     name = "vim-buffergator-2018-05-02";
     src = fetchFromGitHub {
@@ -1868,6 +1950,16 @@
     };
   };
 
+  vim-colemak = buildVimPluginFrom2Nix {
+    name = "vim-colemak-2016-10-16";
+    src = fetchFromGitHub {
+      owner = "kalbasit";
+      repo = "vim-colemak";
+      rev = "6ac1c0bf362845355c65dfeab9a9987c1b4dc7ec";
+      sha256 = "1li7yc5vglrhf7w7i7gs2i7ihdb1bhx85basmpgqlf7790lv1599";
+    };
+  };
+
   vim-colors-solarized = buildVimPluginFrom2Nix {
     name = "vim-colors-solarized-2011-05-09";
     src = fetchFromGitHub {
@@ -1969,12 +2061,12 @@
   };
 
   vim-dispatch = buildVimPluginFrom2Nix {
-    name = "vim-dispatch-2018-10-02";
+    name = "vim-dispatch-2018-10-31";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-dispatch";
-      rev = "ab7470d4b03bae9880bf2b5cef60fc0fb51b1101";
-      sha256 = "01slb3lcbdba0a4xky6i5xflh1cjm0aq6g8yyfzrgn4w8pq50h9p";
+      rev = "d4b8940fd1cd77fc6d300f003b18745a584295b2";
+      sha256 = "06g0xc55z9jpa5rl8c5af5apb8b2agahsxxzayl2vn763v9p1n6b";
     };
   };
 
@@ -2199,12 +2291,12 @@
   };
 
   vim-grepper = buildVimPluginFrom2Nix {
-    name = "vim-grepper-2018-10-29";
+    name = "vim-grepper-2018-10-30";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-grepper";
-      rev = "54cb4c55bd8d80fc046f62b8f6486db2de424399";
-      sha256 = "1bzzyh2yav9f54gn17ny8gpi5h70yvjqdyg9lg0b1rglvirjpb1r";
+      rev = "a55a14b97dc8ac848eeb95e71d095b75197ba665";
+      sha256 = "08p5dp43z9bxllr5fvl3hgnyqyxlvpbfczw1ydncmzvrqqccrx08";
     };
   };
 
@@ -2630,12 +2722,12 @@
   };
 
   vim-operator-surround = buildVimPluginFrom2Nix {
-    name = "vim-operator-surround-2017-12-22";
+    name = "vim-operator-surround-2018-11-01";
     src = fetchFromGitHub {
       owner = "rhysd";
       repo = "vim-operator-surround";
-      rev = "001c0da077b5b38a723151b19760d220e02363db";
-      sha256 = "0c6w6id57faw6sjf5wvw9qp2a4i7xj65q0c4hjs0spgzycv2wpkh";
+      rev = "80337a40a829cfc77b065a71d8a609e2ad7d2c8b";
+      sha256 = "0f9shg81bl39hz67ahbi6k6gbhky7gzp8by16fhiz75hbjgp9lq2";
     };
   };
 
@@ -2830,12 +2922,12 @@
   };
 
   vim-rhubarb = buildVimPluginFrom2Nix {
-    name = "vim-rhubarb-2018-09-20";
+    name = "vim-rhubarb-2018-10-31";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-rhubarb";
-      rev = "3a9ddb8ffa46b9fa49f3d9372bbb5d64bdc5fd23";
-      sha256 = "1swybc30vyf309w1a34jf94xja1kikvrr3xpixfban50s6aiyips";
+      rev = "42072cc349c46db79c0a4411d399a2fe31cfda7e";
+      sha256 = "020fshfrwbycs4saci58k625330i2ndfh6lqnxz5h0pp2m5y6jp8";
     };
   };
 
@@ -2910,12 +3002,12 @@
   };
 
   vim-signify = buildVimPluginFrom2Nix {
-    name = "vim-signify-2018-10-01";
+    name = "vim-signify-2018-10-31";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-signify";
-      rev = "ce2dd937bf3a394ef2fbeda8ab56d2b4437be3c3";
-      sha256 = "08ah81bn0cmqphi2lw2y7pjdg8sw2wjwc3p3j6pj0gyqx2bsf408";
+      rev = "4e7faba8d32d56d80090dedc5328849a7128b73a";
+      sha256 = "0wm1kgklvd4b52lrqb9l7n511p8kaw8y9707962l4nrp8cbrbs31";
     };
   };
 
@@ -2980,22 +3072,22 @@
   };
 
   vim-speeddating = buildVimPluginFrom2Nix {
-    name = "vim-speeddating-2017-05-24";
+    name = "vim-speeddating-2018-10-31";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-speeddating";
-      rev = "a418667791f03694065948342f2d6c5cca8d0f32";
-      sha256 = "1wm33izawazh0dy70zjk6rkg30yrlldba5r1gypnr4barps702gw";
+      rev = "799cd3473bc64adcb6b556bf349f549570666b62";
+      sha256 = "0vyla4lslf1hycx1mvgydhlar2f6bwnwbcp39s1f0m65fqs25rhz";
     };
   };
 
   vim-startify = buildVimPluginFrom2Nix {
-    name = "vim-startify-2018-10-02";
+    name = "vim-startify-2018-10-31";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-startify";
-      rev = "556bf1d507dfaddfba4b5795716ea20f8ba902ac";
-      sha256 = "1jjj7iij08455rlc705m3pnbjg87r2l29jclzkiy7nsvjjh3dfwx";
+      rev = "356562270684d8d1647daf0faaf76ac90740990c";
+      sha256 = "0qc9ifq4blixda0kyc0zhmqi6cqz44xnk9x17p0p9qqidf1s1l1r";
     };
   };
 
@@ -3069,6 +3161,16 @@
     };
   };
 
+  vim-terraform = buildVimPluginFrom2Nix {
+    name = "vim-terraform-2018-08-02";
+    src = fetchFromGitHub {
+      owner = "hashivim";
+      repo = "vim-terraform";
+      rev = "7c11252da45c6508524e022d1f2588134902d8d1";
+      sha256 = "1qnjjcin934i7yd2fd0xapraindrpavnik1fasv10x5dw8yzxyrs";
+    };
+  };
+
   vim-test = buildVimPluginFrom2Nix {
     name = "vim-test-2018-10-24";
     src = fetchFromGitHub {
@@ -3290,12 +3392,12 @@
   };
 
   vimtex = buildVimPluginFrom2Nix {
-    name = "vimtex-2018-10-29";
+    name = "vimtex-2018-11-01";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "8a32372e4fc3c628d36b8215c6d30bd05eeade28";
-      sha256 = "1h1fp0jnv4wj96mam9dgnr5y1i4a4bdi4law3y1qh937bx7nk2vd";
+      rev = "2aae07e67034f4806d45500a967bf5775ab22baf";
+      sha256 = "1ng1ps5f2vh7xs5lfkid7zwvcjglynw53xvd301zpjbgln2gv3fz";
     };
   };
 
@@ -3309,6 +3411,16 @@
     };
   };
 
+  vissort-vim = buildVimPluginFrom2Nix {
+    name = "vissort-vim-2014-01-31";
+    src = fetchFromGitHub {
+      owner = "navicore";
+      repo = "vissort.vim";
+      rev = "75a5b08b64d2f762206bffd294066533891fa03c";
+      sha256 = "0a71b22apkhicca9nkd06jlcnqkf583mlpfh2mvl4d474viavqfn";
+    };
+  };
+
   vundle = buildVimPluginFrom2Nix {
     name = "vundle-2018-02-03";
     src = fetchFromGitHub {
@@ -3389,6 +3501,17 @@
     };
   };
 
+  yats-vim = buildVimPluginFrom2Nix {
+    name = "yats-vim-2018-10-17";
+    src = fetchFromGitHub {
+      owner = "HerringtonDarkholme";
+      repo = "yats.vim";
+      rev = "4675d7ff4b04aa5c5eabd5a1d862fcf78a7cd759";
+      sha256 = "1hb36d4lb79dzn4idmar8zq1w4ya4a52a5gpzksj9x9k4fx6gakr";
+      fetchSubmodules = true;
+    };
+  };
+
   youcompleteme = buildVimPluginFrom2Nix {
     name = "youcompleteme-2018-10-14";
     src = fetchFromGitHub {
@@ -3439,4 +3562,14 @@
       sha256 = "1zp1bz3fzcwvdw3qgiyvmd5imrzjh7rnpnjpxm8mma0kxi2bnl3g";
     };
   };
+
+  zoomwintab-vim = buildVimPluginFrom2Nix {
+    name = "zoomwintab-vim-2018-04-14";
+    src = fetchFromGitHub {
+      owner = "troydm";
+      repo = "zoomwintab.vim";
+      rev = "5bbbd1f79e40839a34803627e11f9e662f639fe0";
+      sha256 = "04pv7mmlz9ccgzfg8sycqxplaxpbyh7pmhwcw47b2xwnazjz49d6";
+    };
+  };
 }
\ No newline at end of file
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index 6b8bf42c795..39b0246d0d3 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -9,6 +9,12 @@
 , languagetool
 , Cocoa, CoreFoundation, CoreServices
 , buildVimPluginFrom2Nix
+
+# vim-go denpencies
+, asmfmt, delve, errcheck, godef, golint
+, gomodifytags, gotags, gotools, motion
+, gnused, reftools, gogetdoc, gometalinter
+, impl, iferr, gocode, gocode-gomod, go-tools
 }:
 
 let
@@ -156,6 +162,10 @@ with generated;
     dependencies = ["self"];
   });
 
+  gist-vim = gist-vim.overrideAttrs(old: {
+    dependencies = ["webapi-vim"];
+  });
+
   gitv = gitv.overrideAttrs(old: {
     dependencies = ["gitv"];
   });
@@ -247,6 +257,37 @@ with generated;
     dependencies = ["vim-misc"];
   });
 
+  # change the go_bin_path to point to a path in the nix store. See the code in
+  # fatih/vim-go here
+  # https://github.com/fatih/vim-go/blob/155836d47052ea9c9bac81ba3e937f6f22c8e384/autoload/go/path.vim#L154-L159
+  vim-go = vim-go.overrideAttrs(old: let
+    binPath = lib.makeBinPath [
+      asmfmt
+      delve
+      errcheck
+      go-tools
+      gocode
+      gocode-gomod
+      godef
+      gogetdoc
+      golint
+      gometalinter
+      gomodifytags
+      gotags
+      gotools
+      iferr
+      impl
+      motion
+      reftools
+    ];
+    in {
+    postPatch = ''
+      ${gnused}/bin/sed \
+        -Ee 's@"go_bin_path", ""@"go_bin_path", "${binPath}"@g' \
+        -i autoload/go/config.vim
+    '';
+  });
+
   vim-grammarous = vim-grammarous.overrideAttrs(old: {
     # use `:GrammarousCheck` to initialize checking
     # In neovim, you also want to use set
@@ -334,4 +375,13 @@ with generated;
     };
   });
 
+  jedi-vim = jedi-vim.overrideAttrs(old: {
+    # checking for python3 support in vim would be neat, too, but nobody else seems to care
+    buildInputs = [ python3Packages.jedi ];
+    meta = {
+      description = "code-completion for python using python-jedi";
+      license = stdenv.lib.licenses.mit;
+    };
+  });
+
 }
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index bccb97b72d2..113993cee73 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -37,14 +37,16 @@ ctjhoa/spacevim
 ctrlpvim/ctrlp.vim
 dag/vim2hs
 dannyob/quickfixstatus
+davidhalter/jedi-vim
 derekelkins/agda-vim
 derekwyatt/vim-scala
 dhruvasagar/vim-table-mode
 digitaltoad/vim-jade
+direnv/direnv.vim
 dleonard0/pony-vim-syntax
 dracula/vim
-dylanaraps/wal.vim
 drmingdrmer/xptemplate
+dylanaraps/wal.vim
 eagletmt/ghcmod-vim
 eagletmt/neco-ghc
 easymotion/vim-easymotion
@@ -76,10 +78,12 @@ google/vim-jsonnet
 google/vim-maktaba
 gregsexton/gitv
 guns/xterm-color-table.vim
+hashivim/vim-terraform
 haya14busa/incsearch-easymotion.vim
 haya14busa/incsearch.vim
 heavenshell/vim-jsdoc
 hecal3/vim-leader-guide
+HerringtonDarkholme/yats.vim
 honza/vim-snippets
 hsanson/vim-android
 ianks/vim-tsx
@@ -117,6 +121,7 @@ junegunn/vim-plug
 justincampbell/vim-eighties
 justinmk/vim-dirvish
 KabbAmine/zeavim.vim
+kalbasit/vim-colemak
 kana/vim-niceblock
 kana/vim-operator-replace
 kana/vim-operator-user
@@ -163,7 +168,9 @@ MarcWeber/vim-addon-sql
 MarcWeber/vim-addon-syntax-checker
 MarcWeber/vim-addon-toggle-buffer
 MarcWeber/vim-addon-xdebug
+markonm/traces.vim
 martinda/Jenkinsfile-vim-syntax
+mattn/emmet-vim
 mattn/gist-vim
 mattn/webapi-vim
 mbbill/undotree
@@ -180,8 +187,10 @@ mileszs/ack.vim
 mindriot101/vim-yapf
 mkasa/lushtags
 morhetz/gruvbox
+motus/pig.vim
 mpickering/hlint-refactor-vim
 nathanaelkane/vim-indent-guides
+navicore/vissort.vim
 nbouscal/vim-stylish-haskell
 ncm2/ncm2
 ncm2/ncm2-bufword
@@ -195,6 +204,7 @@ neutaaaaan/iosvkem
 nixprime/cpsm
 NLKNguyen/papercolor-theme
 noc7c9/vim-iced-coffee-script
+ntpeters/vim-better-whitespace
 nvie/vim-flake8
 osyo-manga/shabadou.vim
 osyo-manga/vim-anzu
@@ -294,6 +304,7 @@ tpope/vim-tbone
 tpope/vim-unimpaired
 tpope/vim-vinegar
 travitch/hasksyn
+troydm/zoomwintab.vim
 twinside/vim-haskellconceal
 Twinside/vim-hoogle
 tyru/caw.vim
@@ -310,6 +321,7 @@ vim-pandoc/vim-pandoc-syntax
 vim-ruby/vim-ruby
 vim-scripts/align
 vim-scripts/argtextobj.vim
+vim-scripts/autoload_cscope.vim
 vim-scripts/a.vim
 vim-scripts/bats.vim
 vim-scripts/changeColorScheme.vim
@@ -317,6 +329,7 @@ vim-scripts/Colour-Sampler-Pack
 vim-scripts/Improved-AnsiEsc
 vim-scripts/matchit.zip
 vim-scripts/mayansmoke
+vim-scripts/PreserveNoEOL
 vim-scripts/random.vim
 vim-scripts/Rename
 vim-scripts/ReplaceWithRegister
diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
index 9e47b8d02fd..aab2852c168 100644
--- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
@@ -34,7 +34,7 @@ with frameworks; with libs; {
   CoreMIDIServer          = [];
   CoreMedia               = [ ApplicationServices AudioToolbox CoreAudio CF CoreGraphics CoreVideo ];
   CoreMediaIO             = [ CF CoreMedia ];
-  CoreText                = [ CF CoreGraphics cf-private ];
+  CoreText                = [ CF CoreGraphics ];
   CoreVideo               = [ ApplicationServices CF CoreGraphics IOSurface OpenGL ];
   CoreWLAN                = [ SecurityFoundation ];
   DVComponentGlue         = [ CoreServices QuickTime ];
@@ -48,8 +48,7 @@ with frameworks; with libs; {
   ExceptionHandling       = [];
   FWAUserLib              = [];
   ForceFeedback           = [ CF IOKit ];
-  # cf-private was moved first in list because of https://github.com/NixOS/nixpkgs/pull/28635
-  Foundation              = [ cf-private CF libobjc Security ApplicationServices SystemConfiguration ];
+  Foundation              = [ CF libobjc Security ApplicationServices SystemConfiguration ];
   GLKit                   = [ CF ];
   GLUT                    = [ OpenGL ];
   GSS                     = [];
diff --git a/pkgs/os-specific/linux/busybox/sandbox-shell.nix b/pkgs/os-specific/linux/busybox/sandbox-shell.nix
index de8865ba3ac..c2d82ebc487 100644
--- a/pkgs/os-specific/linux/busybox/sandbox-shell.nix
+++ b/pkgs/os-specific/linux/busybox/sandbox-shell.nix
@@ -3,7 +3,7 @@
 # Minimal shell for use as basic /bin/sh in sandbox builds
 busybox.override {
   # musl roadmap has RISC-V support projected for 1.1.20
-  useMusl = !stdenv.hostPlatform.isRiscV;
+  useMusl = !stdenv.hostPlatform.isRiscV && stdenv.hostPlatform.libc != "bionic";
   enableStatic = true;
   enableMinimal = true;
   extraConfig = ''
diff --git a/pkgs/os-specific/linux/cpuset/default.nix b/pkgs/os-specific/linux/cpuset/default.nix
new file mode 100644
index 00000000000..5791145d52a
--- /dev/null
+++ b/pkgs/os-specific/linux/cpuset/default.nix
@@ -0,0 +1,27 @@
+{ stdenv
+, fetchFromGitHub
+, python2Packages
+}:
+
+python2Packages.buildPythonApplication rec {
+  pname = "cpuset";
+  version = "1.5.8";
+
+  propagatedBuildInputs = [ ];
+
+  makeFlags = [ "prefix=$(out)" ];
+
+  src = fetchFromGitHub {
+    owner = "wykurz";
+    repo = "cpuset";
+    rev = "v${version}";
+    sha256 = "19fl2sn470yrnm2q508giggjwy5b6r2gd94gvwfbdlhf0r9dsbbm";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Cpuset is a Python application that forms a wrapper around the standard Linux filesystem calls to make using the cpusets facilities in the Linux kernel easier.";
+    homepage    = https://github.com/wykurz/cpuset;
+    license     = licenses.gpl2;
+    maintainers = with maintainers; [ wykurz ];
+  };
+}
diff --git a/pkgs/os-specific/linux/eudev/default.nix b/pkgs/os-specific/linux/eudev/default.nix
index 771f012c2c2..7e8c9e41338 100644
--- a/pkgs/os-specific/linux/eudev/default.nix
+++ b/pkgs/os-specific/linux/eudev/default.nix
@@ -3,10 +3,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="eudev";
-    version = "3.2.6";
+    version = "3.2.7";
     name="${baseName}-${version}";
     url="http://dev.gentoo.org/~blueness/eudev/eudev-${version}.tar.gz";
-    sha256 = "1qdpnvsv3qqwy6jl4i4b1dn212y6nvawpaladb7plfping9p2n46";
+    sha256 = "0qphgfw1vh2f73yjggkh5icxfq5gg811a0j6b22zkhaks95n211h";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix
index eb5b0bd294c..89b4f70264e 100644
--- a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix
+++ b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix
@@ -1,52 +1,51 @@
-{ stdenv, fetchurl, dpkg }:
+{ stdenv, fetchurl, fetchFromGitHub, dpkg }:
 
 stdenv.mkDerivation rec {
   name = "raspberrypi-wireless-firmware-${version}";
-  version = "2018-05-30";
+  version = "2018-08-20";
 
   srcs = [
-    (fetchurl {
-      url = "https://archive.raspberrypi.org/debian/pool/main/b/bluez-firmware/bluez-firmware_1.2-3+rpt5.debian.tar.xz";
-      sha256 = "06zpyrz6frkgjy26hr3998klnhjdqxwashgjgvj9rgbcqy70nkxg";
+    (fetchFromGitHub {
+      name = "bluez-firmware";
+      owner = "RPi-Distro";
+      repo = "bluez-firmware";
+      rev = "ade2bae1aaaebede09abb8fb546f767a0e4c7804";
+      sha256 = "07gm76gxp5anv6paryvxcp34a86fkny8kdlzqhzcpfczzglkp6ag";
     })
-    (fetchurl {
-      url = "https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/firmware-brcm80211_20161130-3+rpt3_all.deb";
-      sha256 = "10l74ac28baprnsiylf2vy4pkxgb3crixid90ngs6si9smm7rn6z";
+    (fetchFromGitHub {
+      name = "firmware-nonfree";
+      owner = "RPi-Distro";
+      repo = "firmware-nonfree";
+      rev = "b518de45ced519e8f7a499f4778100173402ae43";
+      sha256 = "1d5026ic9awji6c67irpwsxpxgsc0dhn11d3abkxi2vvra1pir4g";
     })
   ];
 
   sourceRoot = ".";
+
   dontBuild = true;
   # Firmware blobs do not need fixing and should not be modified
   dontFixup = true;
 
-
-  # Unpack the debian package
-  nativeBuildInputs = [ dpkg ];
-  unpackCmd = ''
-    if ! [[ "$curSrc" =~ \.deb$ ]]; then return 1; fi
-    dpkg -x "$curSrc" .
-  '';
-
   installPhase = ''
     mkdir -p "$out/lib/firmware/brcm"
 
     # Wifi firmware
-    for filename in lib/firmware/brcm/brcmfmac434??-sdio.*; do
+    for filename in firmware-nonfree/brcm/brcmfmac434??-sdio.*; do
       cp "$filename" "$out/lib/firmware/brcm"
     done
 
     # Bluetooth firmware
-    cp broadcom/*.hcd "$out/lib/firmware/brcm"
+    cp bluez-firmware/broadcom/*.hcd "$out/lib/firmware/brcm"
   '';
 
   outputHashMode = "recursive";
   outputHashAlgo = "sha256";
-  outputHash = "1gwzasl5w5nc0awqv3w2081ns63wd1yds0xh0dg95dc6brnqhhf8";
+  outputHash = "1s5gb00v42s5izbaw8irs1fwvhh7z9wl07czc0nkw6p91871ivb7";
 
   meta = with stdenv.lib; {
     description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3 and Zero W";
-    homepage = https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/;
+    homepage = https://github.com/RPi-Distro/firmware-nonfree;
     license = licenses.unfreeRedistributableFirmware;
     platforms = platforms.linux;
     maintainers = with maintainers; [ lopsided98 ];
diff --git a/pkgs/os-specific/linux/fuse/default.nix b/pkgs/os-specific/linux/fuse/default.nix
index e3313a676c9..5394edf2877 100644
--- a/pkgs/os-specific/linux/fuse/default.nix
+++ b/pkgs/os-specific/linux/fuse/default.nix
@@ -11,7 +11,7 @@ in {
   };
 
   fuse_3 = mkFuse {
-    version = "3.2.6";
-    sha256Hash = "0harsla45b0pj3khgxkcwfr2qd8pahg70ygki9i0a8pzscy64sl2";
+    version = "3.3.0";
+    sha256Hash = "1pwrnfm8jkxxqhrjz0v1gaw36hshgznchyj961qdk2y697y4zp19";
   };
 }
diff --git a/pkgs/os-specific/linux/hdparm/default.nix b/pkgs/os-specific/linux/hdparm/default.nix
index cbdbefeb2a0..542d99eeabe 100644
--- a/pkgs/os-specific/linux/hdparm/default.nix
+++ b/pkgs/os-specific/linux/hdparm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "hdparm-9.56";
+  name = "hdparm-9.58";
 
   src = fetchurl {
     url = "mirror://sourceforge/hdparm/${name}.tar.gz";
-    sha256 = "1np42qyhb503khvacnjcl3hb1dqly68gj0a1xip3j5qhbxlyvybg";
+    sha256 = "03z1qm8zbgpxagk3994lvp24yqsshjibkwg05v9p3q1w7y48xrws";
 
   };
 
diff --git a/pkgs/os-specific/linux/jfbview/default.nix b/pkgs/os-specific/linux/jfbview/default.nix
index dafe9069b5a..e037ad98226 100644
--- a/pkgs/os-specific/linux/jfbview/default.nix
+++ b/pkgs/os-specific/linux/jfbview/default.nix
@@ -15,13 +15,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "${package}-${version}";
-  version = "0.5.5";
+  version = "0.5.6";
 
   src = fetchFromGitHub {
     repo = "JFBView";
     owner = "jichu4n";
     rev = version;
-    sha256 = "1w844ha9lp49ik79yfislib34455nl9gcksbx22hiz30gmqwzakz";
+    sha256 = "09rcmlf04aka0yzr25imadi0fl4nlbsxcahs7fhvzx4nql4halqw";
   };
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index f4a728c9d25..a5170edfa26 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.14.78";
+  version = "4.14.79";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0v2cwykgd2hxlqja4yl4pq45nhd5x8917ixqq7hj1r3ry304vnpl";
+    sha256 = "0flkkgfjzs6z7hkr15lga8jvxgwn6wi885yf5wyr0zxjrqg0f6an";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.18.nix b/pkgs/os-specific/linux/kernel/linux-4.18.nix
index d6c4b58b980..add98cfb2fa 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.18.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.18.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.18.16";
+  version = "4.18.17";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1rjjkhl8lz4y4sn7icy8mp6p1x7rvapybp51p92sanbjy3i19fmy";
+    sha256 = "0353ns09i5y0fcygvly20z0qrp6gcqd453186ihm4r7ajgh43bz2";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 5aa033348d4..d597818dab6 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.19";
+  version = "4.19.1";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "18a92z17alh5kkvjv7l9z8wk5jgdb6raawdfkpwx9bi8amjzas0c";
+    sha256 = "0ac8w310p83z11ksmyad7by7cmacwg4vq68pzxchc88bbk33gmk4";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index 2195bb7a29c..31cad258921 100644
--- a/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/tags/";
-    rev = "r15295";
+    rev = "15295";
     sha256 = "03kqbjy7w9zg6ry86h9sxa33z0rblznhba109lwmjwy0wx7yk1cs";
   }
 , ...
diff --git a/pkgs/os-specific/linux/kernel/linux-riscv.nix b/pkgs/os-specific/linux/kernel/linux-riscv.nix
deleted file mode 100644
index dbc69144c4d..00000000000
--- a/pkgs/os-specific/linux/kernel/linux-riscv.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args:
-
-buildLinux (args // rec {
-  version = "4.16-rc6";
-  modDirVersion = "4.16.0-rc6";
-  extraMeta.branch = "4.16";
-
-  src = fetchFromGitHub {
-    owner = "shlevy";
-    repo ="riscv-linux";
-    rev = "a54f259c2adce68e3bd7600be8989bf1ddf9ea3a";
-    sha256 = "140w6mj4hm1vf4zsmcr2w5cghcaalbvw5d4m9z57dmq1z5plsl4q";
-  };
-
-  # Should the testing kernels ever be built on Hydra?
-  extraMeta.hydraPlatforms = [];
-
-} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix b/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix
deleted file mode 100644
index 0a936c6c053..00000000000
--- a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args:
-
-buildLinux (args // rec {
-  version = "4.12.2";
-  extraMeta.branch = "4.12-2";
-
-  src =
-    let upstream = fetchFromGitHub {
-      owner = "raphael";
-      repo = "linux-samus";
-      rev = "v${extraMeta.branch}";
-      sha256 = "1dr74i79p8r13522w2ppi8gnjd9bhngc9d2hsn91ji6f5a8fbxx9";
-    }; in "${upstream}/build/linux";
-
-  extraMeta.platforms = [ "x86_64-linux" ];
-} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index f866d858eae..ad7e44ed0a1 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.19-rc8";
-  modDirVersion = "4.19.0-rc8";
-  extraMeta.branch = "4.19";
+  version = "4.20-rc1";
+  modDirVersion = "4.20.0-rc1";
+  extraMeta.branch = "4.20";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "1xw8grzn4i4b2vprfwi4p4003n7rr9725dbiqyrl8w1pm11jwpin";
+    sha256 = "0nf3rk8768740smkbf2ilsm40p1pnnmrpf53pmc5k1dkj4kgc0pb";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/ndiswrapper/default.nix b/pkgs/os-specific/linux/ndiswrapper/default.nix
index e989a7837f9..fc9e6ab00dd 100644
--- a/pkgs/os-specific/linux/ndiswrapper/default.nix
+++ b/pkgs/os-specific/linux/ndiswrapper/default.nix
@@ -1,16 +1,20 @@
-{ stdenv, fetchurl, kernel, perl, kmod }:
-
+{ stdenv, fetchFromGitHub, kernel, perl, kmod, libelf }:
+let
+  version = "1.62-pre";
+in
 stdenv.mkDerivation {
-  name = "ndiswrapper-1.59-${kernel.version}";
+  name = "ndiswrapper-${version}-${kernel.version}";
+  inherit version;
 
   hardeningDisable = [ "pic" ];
 
   patches = [ ./no-sbin.patch ];
 
-  # need at least .config and include 
+  # need at least .config and include
   kernel = kernel.dev;
 
   buildPhase = "
+    cd ndiswrapper
     echo make KBUILD=$(echo \$kernel/lib/modules/*/build);
     echo -n $kernel/lib/modules/*/build > kbuild_path
     export PATH=${kmod}/sbin:$PATH
@@ -26,18 +30,20 @@ stdenv.mkDerivation {
     patchShebangs $out/sbin
   '';
 
-  # should we use unstable? 
-  src = fetchurl {
-    url = mirror://sourceforge/ndiswrapper/ndiswrapper-1.59.tar.gz;
-    sha256 = "1g6lynccyg4m7gd7vhy44pypsn8ifmibq6rqgvc672pwngzx79b6";
+  # should we use unstable?
+  src = fetchFromGitHub {
+    owner = "pgiri";
+    repo = "ndiswrapper";
+    rev = "f4d16afb29ab04408d02e38d4ea1148807778e21";
+    sha256 = "0iaw0vhchmqf1yh14v4a6whnbg4sx1hag8a4hrsh4fzgw9fx0ij4";
   };
 
-  buildInputs = [ perl ];
+  buildInputs = [ perl libelf ];
 
-  meta = { 
+  meta = {
     description = "Ndis driver wrapper for the Linux kernel";
     homepage = https://sourceforge.net/projects/ndiswrapper;
     license = "GPL";
-    broken = true;
+    platforms = [ "i686-linux" "x86_64-linux" ];
   };
 }
diff --git a/pkgs/os-specific/linux/ndiswrapper/no-sbin.patch b/pkgs/os-specific/linux/ndiswrapper/no-sbin.patch
index cfc048d772b..34965540d24 100644
--- a/pkgs/os-specific/linux/ndiswrapper/no-sbin.patch
+++ b/pkgs/os-specific/linux/ndiswrapper/no-sbin.patch
@@ -1,7 +1,8 @@
-diff -Naur ndiswrapper-1.59-orig/driver/Makefile ndiswrapper-1.59/driver/Makefile
---- ndiswrapper-1.59-orig/driver/Makefile	2013-11-28 14:42:35.000000000 -0500
-+++ ndiswrapper-1.59/driver/Makefile	2014-01-04 18:31:43.242377375 -0500
-@@ -191,7 +191,7 @@
+diff --git a/ndiswrapper/driver/Makefile b/ndiswrapper/driver/Makefile
+index bf42f7bc..ad23aa2d 100644
+--- a/ndiswrapper/driver/Makefile
++++ b/ndiswrapper/driver/Makefile
+@@ -191,7 +191,7 @@ clean:
  	rm -rf .tmp_versions
  
  install: config_check $(MODULE)
diff --git a/pkgs/servers/asterisk/default.nix b/pkgs/servers/asterisk/default.nix
index b2b681bcc8b..37f93c8e87e 100644
--- a/pkgs/servers/asterisk/default.nix
+++ b/pkgs/servers/asterisk/default.nix
@@ -76,7 +76,7 @@ let
 
   mp3-202 = fetchsvn {
     url = http://svn.digium.com/svn/thirdparty/mp3/trunk;
-    rev = 202;
+    rev = "202";
     sha256 = "1s9idx2miwk178sa731ig9r4fzx4gy1q8xazfqyd7q4lfd70s1cy";
   };
 
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 01232bd9470..7f16e24a1f7 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -676,7 +676,7 @@
     "media_player.russound_rnet" = ps: with ps; [  ];
     "media_player.samsungtv" = ps: with ps; [ wakeonlan ];
     "media_player.sisyphus" = ps: with ps; [  ];
-    "media_player.snapcast" = ps: with ps; [  ];
+    "media_player.snapcast" = ps: with ps; [ snapcast ];
     "media_player.songpal" = ps: with ps; [  ];
     "media_player.sonos" = ps: with ps; [  ];
     "media_player.soundtouch" = ps: with ps; [ libsoundtouch ];
diff --git a/pkgs/servers/http/nginx/generic.nix b/pkgs/servers/http/nginx/generic.nix
index 643e7ed719a..25ff20635af 100644
--- a/pkgs/servers/http/nginx/generic.nix
+++ b/pkgs/servers/http/nginx/generic.nix
@@ -17,9 +17,7 @@ stdenv.mkDerivation {
     inherit sha256;
   };
 
-
-  buildInputs =
-    [ openssl zlib pcre libxml2 libxslt gd geoip ]
+  buildInputs = [ openssl zlib pcre libxml2 libxslt gd geoip ]
     ++ concatMap (mod: mod.inputs or []) modules;
 
   configureFlags = [
diff --git a/pkgs/servers/http/nginx/modules.nix b/pkgs/servers/http/nginx/modules.nix
index 15822a0387b..6b4510bfe82 100644
--- a/pkgs/servers/http/nginx/modules.nix
+++ b/pkgs/servers/http/nginx/modules.nix
@@ -131,6 +131,15 @@
     };
   };
 
+  ngx_aws_auth = {
+    src = fetchFromGitHub {
+      owner = "anomalizer";
+      repo = "ngx_aws_auth";
+      rev = "2.1.1";
+      sha256 = "10z67g40w7wpd13fwxyknkbg3p6hn61i4v8xw6lh27br29v1y6h9";
+    };
+  };
+
   opentracing = {
     src =
       let src' = fetchFromGitHub {
@@ -226,7 +235,7 @@
       rev = "7778f0125974befbc83751d0e1cadb2dcea57601";
       sha256 = "1x5hm6r0dkm02ffny8kjd7mmq8przyd9amg2qvy5700x6lb63pbs";
     };
-  }; 
+  };
 
   statsd = {
     src = fetchFromGitHub {
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 100bc4709bf..bb8732f3aae 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jackett-${version}";
-  version = "0.10.365";
+  version = "0.10.420";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "1wq4by10wxhcz72fappb7isw0850laf2yk5bgpx8nrjxigmv4ik0";
+    sha256 = "192nj5k3ad8k4xdipr052sb3y3hi9csmyhjadlyy6xl8m2zz6win";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix
index 3e628f876dd..8f60929e2f7 100644
--- a/pkgs/servers/mail/dovecot/default.nix
+++ b/pkgs/servers/mail/dovecot/default.nix
@@ -1,6 +1,7 @@
 { stdenv, lib, fetchurl, perl, pkgconfig, systemd, openssl
 , bzip2, zlib, lz4, inotify-tools, pam, libcap
 , clucene_core_2, icu, openldap, libsodium, libstemmer, cyrus_sasl
+, nixosTests
 # Auth modules
 , withMySQL ? false, mysql
 , withPgSQL ? false, postgresql
@@ -33,13 +34,6 @@ stdenv.mkDerivation rec {
   postInstall = ''
     cp -r $out/$out/* $out
     rm -rf $out/$(echo "$out" | cut -d "/" -f2)
-  '' + lib.optionalString stdenv.isDarwin ''
-    install_name_tool -change libclucene-shared.1.dylib \
-        ${clucene_core_2}/lib/libclucene-shared.1.dylib \
-        $out/lib/dovecot/lib21_fts_lucene_plugin.so
-    install_name_tool -change libclucene-core.1.dylib \
-        ${clucene_core_2}/lib/libclucene-core.1.dylib \
-        $out/lib/dovecot/lib21_fts_lucene_plugin.so
   '';
 
   patches = [
@@ -74,5 +68,8 @@ stdenv.mkDerivation rec {
     description = "Open source IMAP and POP3 email server written with security primarily in mind";
     maintainers = with stdenv.lib.maintainers; [ peti rickynils fpletz ];
     platforms = stdenv.lib.platforms.unix;
+    tests = {
+      opensmtpd-interaction = nixosTests.opensmtpd;
+    };
   };
 }
diff --git a/pkgs/servers/mail/opensmtpd/default.nix b/pkgs/servers/mail/opensmtpd/default.nix
index d5580450444..0ee1c92acbd 100644
--- a/pkgs/servers/mail/opensmtpd/default.nix
+++ b/pkgs/servers/mail/opensmtpd/default.nix
@@ -1,17 +1,17 @@
 { stdenv, lib, fetchurl, fetchpatch, autoconf, automake, libtool, bison
-, libasr, libevent, zlib, libressl, db, pam
+, libasr, libevent, zlib, libressl, db, pam, nixosTests
 }:
 
 stdenv.mkDerivation rec {
   name = "opensmtpd-${version}";
-  version = "6.4.0p1";
+  version = "6.4.0p2";
 
   nativeBuildInputs = [ autoconf automake libtool bison ];
   buildInputs = [ libasr libevent zlib libressl db pam ];
 
   src = fetchurl {
     url = "https://www.opensmtpd.org/archives/${name}.tar.gz";
-    sha256 = "1qxxhnlsmpfh9v4azgl0634955r085gsic1c66jdll21bd5w2mq8";
+    sha256 = "1y7snhsrcdi56vaa23iwjpybhyrnnh2f6dxrfnacn7xgy5xwzbvn";
   };
 
   patches = [
@@ -61,5 +61,8 @@ stdenv.mkDerivation rec {
     license = licenses.isc;
     platforms = platforms.linux;
     maintainers = with maintainers; [ rickynils obadz ekleog ];
+    tests = {
+      basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd;
+    };
   };
 }
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index dab58d2edd6..ba89dc7bdb7 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -1,59 +1,93 @@
-{ stdenv, python2Packages, fetchurl, fetchFromGitHub }:
+{ lib, stdenv, python2
+, enableSystemd ? true
+}:
+
+with python2.pkgs;
+
 let
-  matrix-angular-sdk = python2Packages.buildPythonPackage rec {
-    name = "matrix-angular-sdk-${version}";
+  matrix-angular-sdk = buildPythonPackage rec {
+    pname = "matrix-angular-sdk";
     version = "0.6.8";
 
-    src = fetchurl {
-      url = "mirror://pypi/m/matrix-angular-sdk/matrix-angular-sdk-${version}.tar.gz";
+    src = fetchPypi {
+      inherit pname version;
       sha256 = "0gmx4y5kqqphnq3m7xk2vpzb0w2a4palicw7wfdr1q2schl9fhz2";
     };
+
+    # no checks from Pypi but as this is abandonware, there will be no
+    # new version anyway
+    doCheck = false;
   };
-  matrix-synapse-ldap3 = python2Packages.buildPythonPackage rec {
+
+  matrix-synapse-ldap3 = buildPythonPackage rec {
     pname = "matrix-synapse-ldap3";
     version = "0.1.3";
 
-    src = fetchFromGitHub {
-      owner = "matrix-org";
-      repo = "matrix-synapse-ldap3";
-      rev = "v${version}";
-      sha256 = "0ss7ld3bpmqm8wcs64q1kb7vxlpmwk9lsgq0mh21a9izyfc7jb2l";
+    src = fetchPypi {
+      inherit pname version;
+      sha256 = "0a0d1y9yi0abdkv6chbmxr3vk36gynnqzrjhbg26q4zg06lh9kgn";
     };
 
-    propagatedBuildInputs = with python2Packages; [ service-identity ldap3 twisted ];
+    propagatedBuildInputs = [ service-identity ldap3 twisted ];
 
-    checkInputs = with python2Packages; [ ldaptor mock ];
+    # ldaptor is not ready for py3 yet
+    doCheck = !isPy3k;
+    checkInputs = [ ldaptor mock ];
   };
-in python2Packages.buildPythonApplication rec {
-  name = "matrix-synapse-${version}";
-  version = "0.33.6";
 
-  src = fetchFromGitHub {
-    owner = "matrix-org";
-    repo = "synapse";
-    rev = "v${version}";
-    sha256 = "0c1dr09f1msv6xvpmdlncx7yyj6qxnpihd93lqckd115fds12g5h";
+in buildPythonApplication rec {
+  pname = "matrix-synapse";
+  version = "0.33.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0j8knnqpkidkmpwr2i1k9cwlnwfqpzn3q6ysjvrwpa76hpfcg40l";
   };
 
   patches = [
     ./matrix-synapse.patch
   ];
 
-  propagatedBuildInputs = with python2Packages; [
-    blist canonicaljson daemonize dateutil frozendict pillow pyasn1
-    pydenticon pymacaroons-pynacl pynacl pyopenssl pysaml2 pytz requests
-    signedjson systemd twisted ujson unpaddedbase64 pyyaml prometheus_client
-    matrix-angular-sdk bleach netaddr jinja2 psycopg2
-    psutil msgpack-python lxml matrix-synapse-ldap3
-    phonenumbers jsonschema affinity bcrypt sortedcontainers treq
-  ];
+  propagatedBuildInputs = [
+    bcrypt
+    bleach
+    canonicaljson
+    daemonize
+    dateutil
+    frozendict
+    jinja2
+    jsonschema
+    lxml
+    matrix-angular-sdk
+    matrix-synapse-ldap3
+    msgpack-python
+    netaddr
+    phonenumbers
+    pillow
+    prometheus_client
+    psutil
+    psycopg2
+    pyasn1
+    pydenticon
+    pymacaroons-pynacl
+    pynacl
+    pyopenssl
+    pysaml2
+    pyyaml
+    requests
+    signedjson
+    sortedcontainers
+    treq
+    twisted
+    unpaddedbase64
+  ] ++ lib.optional enableSystemd systemd;
 
-  # Checks fail because of Tox.
-  doCheck = false;
+  # tests fail under py3 for now, but version 0.34.0 will use py3 by default
+  # https://github.com/matrix-org/synapse/issues/4036
+  doCheck = true;
+  checkPhase = "python -m twisted.trial test";
 
-  buildInputs = with python2Packages; [
-    mock setuptoolsTrial
-  ];
+  checkInputs = [ mock setuptoolsTrial ];
 
   meta = with stdenv.lib; {
     homepage = https://matrix.org;
diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix
index dc66c710a5d..f35b8ff0188 100644
--- a/pkgs/servers/memcached/default.nix
+++ b/pkgs/servers/memcached/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, cyrus_sasl, libevent}:
 
 stdenv.mkDerivation rec {
-  version = "1.5.11";
+  version = "1.5.12";
   name = "memcached-${version}";
 
   src = fetchurl {
     url = "https://memcached.org/files/${name}.tar.gz";
-    sha256 = "0ajql8qs3w1lpw41vxkq2xabkxmmdk2nwg3i4lkclraq8pw92yk9";
+    sha256 = "0aav15f0lh8k4i62aza2bdv4s8vv65j38pz2zc4v45snd3arfby0";
   };
 
   buildInputs = [cyrus_sasl libevent];
diff --git a/pkgs/servers/misc/client-ip-echo/client-ip-echo.nix b/pkgs/servers/misc/client-ip-echo/client-ip-echo.nix
index 92bbc309ed3..1f5c6a20843 100644
--- a/pkgs/servers/misc/client-ip-echo/client-ip-echo.nix
+++ b/pkgs/servers/misc/client-ip-echo/client-ip-echo.nix
@@ -1,17 +1,16 @@
 { mkDerivation, fetchFromGitHub, base, bytestring, network, stdenv }:
 mkDerivation {
   pname = "client-ip-echo";
-  version = "0.1.0.1";
+  version = "0.1.0.3";
   src = fetchFromGitHub {
     owner = "jerith666";
     repo = "client-ip-echo";
-    rev = "f6e3e115a1e61a387cf79956ead36d7ac25a2901";
-    sha256 = "0irxcaiwxxn4ggd2dbya1mvpnyfanx0x06whp8ccrha141cafwqp";
+    rev = "8d1a79d94a962b3266c1db51200913c2295d8922";
+    sha256 = "1g1s7i68n3906m3yjfygw96j64n8nh88lmf77blnz0xzrq4y3bgf";
   };
   isLibrary = false;
   isExecutable = true;
   executableHaskellDepends = [ base bytestring network ];
   description = "accepts TCP connections and echoes the client's IP address back to it";
   license = stdenv.lib.licenses.lgpl3;
-  broken = true; # 2018-04-10
 }
diff --git a/pkgs/servers/monitoring/riemann-dash/Gemfile.lock b/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
index 1bfd80a897d..00375fa4e30 100644
--- a/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
+++ b/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
@@ -3,7 +3,7 @@ GEM
   specs:
     erubis (2.7.0)
     multi_json (1.3.6)
-    rack (1.6.4)
+    rack (1.6.11)
     rack-protection (1.5.3)
       rack
     riemann-dash (0.2.12)
@@ -27,4 +27,4 @@ DEPENDENCIES
   riemann-dash (= 0.2.12)
 
 BUNDLED WITH
-   1.11.2
+   1.16.4
diff --git a/pkgs/servers/monitoring/riemann-dash/gemset.nix b/pkgs/servers/monitoring/riemann-dash/gemset.nix
index 8a4d3ba58cb..9298312f90e 100644
--- a/pkgs/servers/monitoring/riemann-dash/gemset.nix
+++ b/pkgs/servers/monitoring/riemann-dash/gemset.nix
@@ -16,10 +16,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.4";
+    version = "1.6.11";
   };
   rack-protection = {
     dependencies = ["rack"];
@@ -30,6 +30,7 @@
     version = "1.5.3";
   };
   riemann-dash = {
+    dependencies = ["erubis" "multi_json" "sass" "sinatra" "webrick"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1y2vh9vcl21b6k2wqgz1y8bbcrl07r43s6q2vkgp35z1b28xcszy";
@@ -46,6 +47,7 @@
     version = "3.4.22";
   };
   sinatra = {
+    dependencies = ["rack" "rack-protection" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1b81kbr65mmcl9cdq2r6yc16wklyp798rxkgmm5pr9fvsj7jwmxp";
diff --git a/pkgs/servers/nosql/apache-jena/fuseki-binary.nix b/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
index d965485356c..63b222529a8 100644
--- a/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
+++ b/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
@@ -3,10 +3,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="apache-jena-fuseki";
-    version = "3.8.0";
+    version = "3.9.0";
     name="${baseName}-${version}";
     url="http://archive.apache.org/dist/jena/binaries/apache-jena-fuseki-${version}.tar.gz";
-    sha256 = "0jca96996zl3f1qc15sfv45n09rnnv24qxv87y16dnwnyc1ism0a";
+    sha256 = "1kf524j7wmvbjrr3grrhfddv3c3niddhj2f6m7hz9pqvf7nykvi4";
   };
   buildInputs = [
     makeWrapper
diff --git a/pkgs/servers/nosql/redis/default.nix b/pkgs/servers/nosql/redis/default.nix
index afa0c6c0f93..a7370847be1 100644
--- a/pkgs/servers/nosql/redis/default.nix
+++ b/pkgs/servers/nosql/redis/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, lua }:
 
 stdenv.mkDerivation rec {
-  version = "5.0.0";
+  version = "5.0.1";
   name = "redis-${version}";
 
   src = fetchurl {
     url = "http://download.redis.io/releases/${name}.tar.gz";
-    sha256 = "194rvj3wzdil2rny93vq9g9vlqnb7gv4vnwaklybgcj00qnqpjbh";
+    sha256 = "1jxbjmsxn0lgh0y3k5j57rxf2sdjj71hxhw4jcvsvycpxh77r9l2";
   };
 
   buildInputs = [ lua ];
diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix
index b562df681a0..4e783f3a507 100644
--- a/pkgs/servers/plex/default.nix
+++ b/pkgs/servers/plex/default.nix
@@ -6,9 +6,9 @@
 let
   plexPass = throw "Plex pass has been removed at upstream's request; please unset nixpkgs.config.plex.pass";
   plexpkg = if enablePlexPass then plexPass else {
-    version = "1.13.8.5395";
-    vsnHash = "10d48da0d";
-    sha256 = "0lpsh87kcrqwi2qqkj1ccb86hif535yb45hhc41c0ixsfxbqk5cw";
+    version = "1.13.9.5456";
+    vsnHash = "ecd600442";
+    sha256 = "6d1125d4e6eaa94a84f8c600230b867c2d0764644adbc959a96433b8fc210b61";
   };
 
 in stdenv.mkDerivation rec {
diff --git a/pkgs/servers/radicale/default.nix b/pkgs/servers/radicale/default.nix
index 1d8d97f4bde..90e27b2907e 100644
--- a/pkgs/servers/radicale/default.nix
+++ b/pkgs/servers/radicale/default.nix
@@ -2,14 +2,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "Radicale";
-  version = "2.1.10";
+  version = "2.1.11";
 
   # No tests in PyPI tarball
   src = fetchFromGitHub {
     owner = "Kozea";
     repo = "Radicale";
     rev = version;
-    sha256 = "0ik9gvljxhmykkzzcv9kmkp4qjwgdrl9f7hp6300flx5kmqlcjb1";
+    sha256 = "1k32iy55lnyyp1r75clarhwdqvw6w8mxb5v0l5aysga07fg2mix4";
   };
 
   # We only want functional tests
diff --git a/pkgs/servers/search/solr/default.nix b/pkgs/servers/search/solr/default.nix
index 0326784b2ac..04e85212f3c 100644
--- a/pkgs/servers/search/solr/default.nix
+++ b/pkgs/servers/search/solr/default.nix
@@ -1,20 +1,27 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, jre, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "solr-${version}";
-  version = "4.10.3";
+  version = "7.5.0";
 
   src = fetchurl {
     url = "mirror://apache/lucene/solr/${version}/solr-${version}.tgz";
-    sha256 = "1dp269jka4q62qhv47j91wsrsnbxfn23lsx6qcycbijrlyh28w5c";
+    sha256 = "1g6f58j2pzb73phj4hfri9mj7vmql72by7w3xrbq1pbnqgzxmhpa";
   };
 
-  phases = [ "unpackPhase" "installPhase" ];
+  nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
-    mkdir -p $out/lib
-    cp dist/${name}.war $out/lib/solr.war
-    cp -r example/lib/ext $out/lib/ext
+    mkdir -p $out $out/bin
+
+    cp -r bin/solr bin/post $out/bin/
+    cp -r contrib $out/
+    cp -r dist $out/
+    cp -r example $out/
+    cp -r server $out/
+
+    wrapProgram $out/bin/solr --set JAVA_HOME "${jre}"
+    wrapProgram $out/bin/post --set JAVA_HOME "${jre}"
   '';
 
   meta = with stdenv.lib; {
@@ -22,7 +29,7 @@ stdenv.mkDerivation rec {
     description = "Open source enterprise search platform from the Apache Lucene project";
     license = licenses.asl20;
     platforms = platforms.all;
-    maintainers = [ maintainers.rickynils maintainers.domenkozar ];
+    maintainers = [ maintainers.rickynils maintainers.domenkozar maintainers.aanderse ];
   };
 
 }
diff --git a/pkgs/servers/smcroute/default.nix b/pkgs/servers/smcroute/default.nix
index 75fff3715ed..8111991cd38 100644
--- a/pkgs/servers/smcroute/default.nix
+++ b/pkgs/servers/smcroute/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "smcroute-${version}";
-  version = "2.4.2";
+  version = "2.4.3";
 
   src = fetchFromGitHub {
     owner = "troglobit";
     repo = "smcroute";
     rev = version;
-    sha256 = "197bi3il0c1vldw35ijx3zqyfj738nvfvr7yr4cwrbv40p3ascaq";
+    sha256 = "1bdz3dic12lwl3rfczd9bxpgjbpw2g7yap2zddz6dvgkqvyjjf1h";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/servers/sql/postgresql/plv8/default.nix b/pkgs/servers/sql/postgresql/plv8/default.nix
index 009f65b9d81..dae3b2fd1af 100644
--- a/pkgs/servers/sql/postgresql/plv8/default.nix
+++ b/pkgs/servers/sql/postgresql/plv8/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "plv8-${version}";
-  version = "2.1.0";
+  version = "2.3.8";
 
   nativeBuildInputs = [ perl ];
   buildInputs = [ v8 postgresql ];
@@ -11,16 +11,20 @@ stdenv.mkDerivation rec {
     owner = "plv8";
     repo = "plv8";
     rev = "v${version}";
-    sha256 = "1sfpxz0zcbinn6822j12lkwgrw9kfacrs83ic968rm489rl9w241";
+    sha256 = "0hrmn1zzzdf52zwldg6axv57p0f3b279l9s8lbpijcv60fqrzx16";
   };
 
+  makeFlags = [ "--makefile=Makefile.shared" ];
+
   preConfigure = ''
-    substituteInPlace Makefile --replace '-lv8_libplatform' '-lv8_libplatform -lv8_libbase'
+    patchShebangs ./generate_upgrade.sh
   '';
 
+  buildPhase = "make -f Makefile.shared all";
+
   installPhase = ''
     mkdir -p $out/bin
-    install -D plv8.so                                         -t $out/lib
+    install -D plv8*.so                                        -t $out/lib
     install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/extension
   '';
 
diff --git a/pkgs/servers/sql/postgresql/timescaledb/default.nix b/pkgs/servers/sql/postgresql/timescaledb/default.nix
index 07dcfb0b701..3c53054ba7d 100644
--- a/pkgs/servers/sql/postgresql/timescaledb/default.nix
+++ b/pkgs/servers/sql/postgresql/timescaledb/default.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
     homepage    = https://www.timescale.com/;
     maintainers = with maintainers; [ volth ];
     platforms   = platforms.linux;
-    license     = licenses.postgresql;
+    license     = licenses.asl20;
   };
 }
diff --git a/pkgs/servers/varnish/default.nix b/pkgs/servers/varnish/default.nix
index 7517560a521..e447035e32a 100644
--- a/pkgs/servers/varnish/default.nix
+++ b/pkgs/servers/varnish/default.nix
@@ -47,8 +47,8 @@ in
     sha256 = "1cqlj12m426c1lak1hr1fx5zcfsjjvka3hfirz47hvy1g2fjqidq";
   };
   varnish6 = common {
-    version = "6.1.0";
-    sha256 = "0zg2aqkg7a4zsjpxj0s7mphxv5f9xy279hjwln30h901k18r46qn";
+    version = "6.1.1";
+    sha256 = "0gf9hzzrr1lndbbqi8cwlfasi7l517cy3nbgna88i78lm247rvp0";
     extraBuildInputs = [ python2.pkgs.sphinx ];
   };
 }
diff --git a/pkgs/servers/web-apps/frab/Gemfile.lock b/pkgs/servers/web-apps/frab/Gemfile.lock
index 06502ef59ad..dc18be7a33d 100644
--- a/pkgs/servers/web-apps/frab/Gemfile.lock
+++ b/pkgs/servers/web-apps/frab/Gemfile.lock
@@ -181,7 +181,7 @@ GEM
     pry-rails (0.3.4)
       pry (>= 0.9.10)
     puma (3.9.1)
-    rack (1.6.4)
+    rack (1.6.11)
     rack-test (0.6.3)
       rack (>= 1.0)
     rails (4.2.7.1)
diff --git a/pkgs/servers/web-apps/frab/gemset.nix b/pkgs/servers/web-apps/frab/gemset.nix
index 449fbf1a5b6..c3259a2709c 100644
--- a/pkgs/servers/web-apps/frab/gemset.nix
+++ b/pkgs/servers/web-apps/frab/gemset.nix
@@ -1,5 +1,6 @@
 {
   actionmailer = {
+    dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0lw1pss1mrjm7x7qcg9pvxv55rz3d994yf3mwmlfg1y12fxq00n3";
@@ -8,6 +9,7 @@
     version = "4.2.7.1";
   };
   actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1ray5bvlmkimjax011zsw0mz9llfkqrfm7q1avjlp4i0kpcz8zlh";
@@ -16,6 +18,7 @@
     version = "4.2.7.1";
   };
   actionview = {
+    dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "11m2x5nlbqrw79fh6h7m444lrka7wwy32b0dvgqg7ilbzih43k0c";
@@ -24,6 +27,7 @@
     version = "4.2.7.1";
   };
   activejob = {
+    dependencies = ["activesupport" "globalid"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ish5wd8nvmj7f6x1i22aw5ycizy5n1z1c7f3kyxmqwhw7lb0gaz";
@@ -32,6 +36,7 @@
     version = "4.2.7.1";
   };
   activemodel = {
+    dependencies = ["activesupport" "builder"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0acz0mbmahsc9mn41275fpfnrqwig5k09m3xhz3455kv90fn79v5";
@@ -40,6 +45,7 @@
     version = "4.2.7.1";
   };
   activerecord = {
+    dependencies = ["activemodel" "activesupport" "arel"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lk8l6i9p7qfl0pg261v5yph0w0sc0vysrdzc6bm5i5rxgi68flj";
@@ -48,6 +54,7 @@
     version = "4.2.7.1";
   };
   activeresource = {
+    dependencies = ["activemodel" "activesupport" "rails-observers"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nr5is20cx18s7vg8bdrdc996s2abl3h7fsi1q6mqsrzw7nrv2fa";
@@ -56,6 +63,7 @@
     version = "4.1.0";
   };
   activesupport = {
+    dependencies = ["i18n" "json" "minitest" "thread_safe" "tzinfo"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1gds12k7nxrcc09b727a458ndidy1nfcllj9x22jcaj7pppvq6r4";
@@ -80,6 +88,7 @@
     version = "2.4.0";
   };
   airbrussh = {
+    dependencies = ["sshkit"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0pv22d2kjdbsg9q45jca3f5gsylr2r1wfpn58g58xj4s4q4r95nx";
@@ -112,6 +121,7 @@
     version = "3.2.2";
   };
   bullet = {
+    dependencies = ["activesupport" "uniform_notifier"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "06pba7bdjnazbl0yhhvlina08nkawnm76zihkaam4k7fm0yrq1k0";
@@ -136,6 +146,7 @@
     version = "1.15.0";
   };
   capistrano = {
+    dependencies = ["i18n" "rake" "sshkit"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0f73w6gpml0ickmwky1cn6d8392q075zy10a323f3vmyvxyhr0jb";
@@ -144,6 +155,7 @@
     version = "3.4.1";
   };
   capistrano-bundler = {
+    dependencies = ["capistrano" "sshkit"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1f4iikm7pn0li2lj6p53wl0d6y7svn0h76z9c6c582mmwxa9c72p";
@@ -152,6 +164,7 @@
     version = "1.1.4";
   };
   capistrano-rails = {
+    dependencies = ["capistrano" "capistrano-bundler"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "03lzihrq72rwcqq7jiqak79wy0xbdnymn5gxj0bfgfjlg5kpgssw";
@@ -160,6 +173,7 @@
     version = "1.1.8";
   };
   capistrano-rvm = {
+    dependencies = ["capistrano" "sshkit"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "15sy8zcal041yy5kb7fcdqnxvndgdhg3w1kvb5dk7hfjk3ypznsa";
@@ -168,6 +182,7 @@
     version = "0.1.2";
   };
   capistrano3-puma = {
+    dependencies = ["capistrano" "puma"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ynz1arnr07kcl0vsaa1znhp2ywhhs4fwndnkw8sasr9bydksln8";
@@ -184,6 +199,7 @@
     version = "1.3.7";
   };
   climate_control = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0krknwk6b8lwv1j9kjbxib6kf5zh4pxkf3y2vcyycx5d6nci1s55";
@@ -192,6 +208,7 @@
     version = "0.0.3";
   };
   cocaine = {
+    dependencies = ["climate_control"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "01kk5xd7lspbkdvn6nyj0y51zhvia3z6r4nalbdcqw5fbsywwi7d";
@@ -216,6 +233,7 @@
     version = "1.1.1";
   };
   coffee-rails = {
+    dependencies = ["coffee-script" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1mv1kaw3z4ry6cm51w8pfrbby40gqwxanrqyqr0nvs8j1bscc1gw";
@@ -224,6 +242,7 @@
     version = "4.1.1";
   };
   coffee-script = {
+    dependencies = ["coffee-script-source" "execjs"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2";
@@ -264,6 +283,7 @@
     version = "2.1.1";
   };
   dotenv-rails = {
+    dependencies = ["dotenv" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "17s6c0yqaz01xd5wywjscbvv0pa3grak2lhwby91j84qm6h95vxz";
@@ -280,6 +300,7 @@
     version = "2.7.0";
   };
   exception_notification = {
+    dependencies = ["actionmailer" "activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1vclsr0rjfy1khvqyj67lgpa0v14nb542vvjkyaswn367nnmijhw";
@@ -296,6 +317,7 @@
     version = "2.7.0";
   };
   factory_girl = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1xzl4z9z390fsnyxp10c9if2n46zan3n6zwwpfnwc33crv4s410i";
@@ -304,6 +326,7 @@
     version = "4.7.0";
   };
   factory_girl_rails = {
+    dependencies = ["factory_girl" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0hzpirb33xdqaz44i1mbcfv0icjrghhgaz747llcfsflljd4pa4r";
@@ -312,6 +335,7 @@
     version = "4.7.0";
   };
   faker = {
+    dependencies = ["i18n"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "09amnh5d0m3q2gpb0vr9spbfa8l2nc0kl3s79y6sx7a16hrl4vvc";
@@ -328,6 +352,7 @@
     version = "0.6.9";
   };
   globalid = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "11plkgyl3w9k4y2scc1igvpgwyz4fnmsr63h2q4j8wkb48nlnhak";
@@ -336,6 +361,7 @@
     version = "0.3.7";
   };
   haml = {
+    dependencies = ["tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0mrzjgkygvfii66bbylj2j93na8i89998yi01fin3whwqbvx0m1p";
@@ -344,6 +370,7 @@
     version = "4.0.7";
   };
   httparty = {
+    dependencies = ["multi_xml"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1msa213hclsv14ijh49i1wggf9avhnj2j4xr58m9jx6fixlbggw6";
@@ -360,6 +387,7 @@
     version = "0.7.0";
   };
   jbuilder = {
+    dependencies = ["activesupport" "multi_json"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1jbh1296imd0arc9nl1m71yfd7kg505p8srr1ijpsqv4hhbz5qci";
@@ -376,6 +404,7 @@
     version = "1.2.1";
   };
   jquery-rails = {
+    dependencies = ["rails-dom-testing" "railties" "thor"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0prqyixv7j2qlq67qdr3miwcyvi27b9a82j51gbpb6vcl0ig2rik";
@@ -384,6 +413,7 @@
     version = "4.2.1";
   };
   jquery-ui-rails = {
+    dependencies = ["railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1gfygrv4bjpjd2c377lw7xzk1b77rxjyy3w6wl4bq1gkqvyrkx77";
@@ -400,6 +430,7 @@
     version = "1.8.3";
   };
   launchy = {
+    dependencies = ["addressable"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2";
@@ -408,6 +439,7 @@
     version = "2.4.3";
   };
   letter_opener = {
+    dependencies = ["launchy"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1pcrdbxvp2x5six8fqn8gf09bn9rd3jga76ds205yph5m8fsda21";
@@ -416,6 +448,7 @@
     version = "1.4.1";
   };
   localized_language_select = {
+    dependencies = ["rails"];
     source = {
       fetchSubmodules = false;
       rev = "85df6b97789de6e29c630808b630e56a1b76f80c";
@@ -426,6 +459,7 @@
     version = "0.3.0";
   };
   loofah = {
+    dependencies = ["nokogiri"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "109ps521p0sr3kgc460d58b4pr1z4mqggan2jbsf0aajy9s6xis8";
@@ -434,6 +468,7 @@
     version = "2.0.3";
   };
   mail = {
+    dependencies = ["mime-types"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0c9vqfy0na9b5096i5i4qvrvhwamjnmajhgqi3kdsdfl8l6agmkp";
@@ -450,6 +485,7 @@
     version = "0.8.2";
   };
   mime-types = {
+    dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
@@ -514,6 +550,7 @@
     version = "0.4.4";
   };
   net-scp = {
+    dependencies = ["net-ssh"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
@@ -530,6 +567,7 @@
     version = "3.2.0";
   };
   nokogiri = {
+    dependencies = ["mini_portile2" "pkg-config"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "11sbmpy60ynak6s3794q32lc99hs448msjy8rkp84ay7mq7zqspv";
@@ -538,6 +576,7 @@
     version = "1.6.7.2";
   };
   paper_trail = {
+    dependencies = ["activerecord" "request_store"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1w3y2h1w0kml2fmzx4sdcrhnbj273npwrs0cx91xdgy2qfjj6hmr";
@@ -546,6 +585,7 @@
     version = "5.2.2";
   };
   paperclip = {
+    dependencies = ["activemodel" "activesupport" "cocaine" "mime-types" "mimemagic"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0r8krh5xg790845wzlc2r7l0jwskw4c4wk9xh4bpprqykwaghg0r";
@@ -578,6 +618,7 @@
     version = "1.1.7";
   };
   polyamorous = {
+    dependencies = ["activerecord"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1501y9l81b2lwb93fkycq8dr1bi6qcdhia3qv4fddnmrdihkl3pv";
@@ -586,6 +627,7 @@
     version = "1.3.1";
   };
   prawn = {
+    dependencies = ["pdf-core" "ttfunk"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "04pxzfmmy8a6bv3zvh1mmyy5zi4bj994kq1v6qnlq2xlhvg4cxjc";
@@ -594,6 +636,7 @@
     version = "0.15.0";
   };
   prawn_rails = {
+    dependencies = ["prawn" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "19m1pv2rsl3rf9rni78l8137dy2sq1r2443biv19wi9nis2pvgdg";
@@ -602,6 +645,7 @@
     version = "0.0.11";
   };
   pry = {
+    dependencies = ["coderay" "method_source" "slop"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "05xbzyin63aj2prrv8fbq2d5df2mid93m81hz5bvf2v4hnzs42ar";
@@ -610,6 +654,7 @@
     version = "0.10.4";
   };
   pry-byebug = {
+    dependencies = ["byebug" "pry"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0pvc94kgxd33p6iz41ghyadq8zfbjhkk07nvz2mbh3yhrc8w7gmw";
@@ -618,6 +663,7 @@
     version = "3.4.0";
   };
   pry-rails = {
+    dependencies = ["pry"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0a2iinvabis2xmv0z7z7jmh7bbkkngxj2qixfdg5m6qj9x8k1kx6";
@@ -636,12 +682,13 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.4";
+    version = "1.6.11";
   };
   rack-test = {
+    dependencies = ["rack"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
@@ -650,6 +697,7 @@
     version = "0.6.3";
   };
   rails = {
+    dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1avd16ir7qx23dcnz1b3cafq1lja6rq0w222bs658p9n33rbw54l";
@@ -658,6 +706,7 @@
     version = "4.2.7.1";
   };
   rails-deprecated_sanitizer = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj";
@@ -666,6 +715,7 @@
     version = "1.0.3";
   };
   rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1v8jl6803mbqpxh4hn0szj081q1a3ap0nb8ni0qswi7z4la844v8";
@@ -674,6 +724,7 @@
     version = "1.0.7";
   };
   rails-html-sanitizer = {
+    dependencies = ["loofah"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "138fd86kv073zqfx0xifm646w6bgw2lr8snk16lknrrfrss8xnm7";
@@ -682,6 +733,7 @@
     version = "1.0.3";
   };
   rails-observers = {
+    dependencies = ["activemodel"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lsw19jzmvipvrfy2z04hi7r29dvkfc43h43vs67x6lsj9rxwwcy";
@@ -690,6 +742,7 @@
     version = "0.1.2";
   };
   railties = {
+    dependencies = ["actionpack" "activesupport" "rake" "thor"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "04rz7cn64zzvq7lnhc9zqmaqmqkq84q25v0ym9lcw75j1cj1mrq4";
@@ -706,6 +759,7 @@
     version = "11.3.0";
   };
   ransack = {
+    dependencies = ["actionpack" "activerecord" "activesupport" "i18n" "polyamorous"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0cya3wygwjhj8rckckkl387bmva4nyfvqcl0qhp9hk3zv8y6wxjc";
@@ -738,6 +792,7 @@
     version = "0.8.8";
   };
   roust = {
+    dependencies = ["activesupport" "httparty" "mail"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1zdnwxxh34psv0iybcdnk9w4dpgpr07j3w1fvigkpccgz5vs82qk";
@@ -746,6 +801,7 @@
     version = "1.8.9";
   };
   rqrcode = {
+    dependencies = ["chunky_png"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h1pnnydgs032psakvg3l779w3ghbn08ajhhhw19hpmnfhrs8k0a";
@@ -762,6 +818,7 @@
     version = "3.4.22";
   };
   sass-rails = {
+    dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0iji20hb8crncz14piss1b29bfb6l89sz3ai5fny3iw39vnxkdcb";
@@ -770,6 +827,7 @@
     version = "5.0.6";
   };
   shoulda = {
+    dependencies = ["shoulda-context" "shoulda-matchers"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0csmf15a7mcinfq54lfa4arp0f4b2jmwva55m0p94hdf3pxnjymy";
@@ -786,6 +844,7 @@
     version = "1.2.1";
   };
   shoulda-matchers = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0d3ryqcsk1n9y35bx5wxnqbgw4m8b3c79isazdjnnbg8crdp72d0";
@@ -794,6 +853,7 @@
     version = "2.8.0";
   };
   simple_form = {
+    dependencies = ["actionpack" "activemodel"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ii3rkkbj5cc10f5rdiny18ncdh36kijr25cah0ybbr7kigh3v3b";
@@ -810,6 +870,7 @@
     version = "3.6.0";
   };
   sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0jzsfiladswnzbrwqfiaj1xip68y58rwx0lpmj907vvq47k87gj1";
@@ -818,6 +879,7 @@
     version = "3.7.0";
   };
   sprockets-rails = {
+    dependencies = ["actionpack" "activesupport" "sprockets"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1zr9vk2vn44wcn4265hhnnnsciwlmqzqc6bnx78if1xcssxj6x44";
@@ -834,6 +896,7 @@
     version = "1.3.11";
   };
   sshkit = {
+    dependencies = ["net-scp" "net-ssh"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0wpqvr2dyxwp3shwh0221i1ahyg8vd2hyilmjvdi026l00gk2j4l";
@@ -842,6 +905,7 @@
     version = "1.11.3";
   };
   sucker_punch = {
+    dependencies = ["concurrent-ruby"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0l8b53mlzl568kdl4la8kcjjcnawmbl0q6hq9c3kkyippa5c0x55";
@@ -890,6 +954,7 @@
     version = "1.1.1";
   };
   tzinfo = {
+    dependencies = ["thread_safe"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
@@ -898,6 +963,7 @@
     version = "1.2.2";
   };
   uglifier = {
+    dependencies = ["execjs"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0f30s1631k03x4wm7xyc79g92pppzvyysa773zsaq2kcry1pmifc";
@@ -929,4 +995,4 @@
     };
     version = "0.9.5";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/servers/x11/quartz-wm/default.nix b/pkgs/servers/x11/quartz-wm/default.nix
index d724a81debb..ccb3937ac85 100644
--- a/pkgs/servers/x11/quartz-wm/default.nix
+++ b/pkgs/servers/x11/quartz-wm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, xorg, pixman, pkgconfig, AppKit, Xplugin, darwin }:
+{ stdenv, fetchurl, xorg, pixman, pkgconfig, AppKit, Foundation, Xplugin, cf-private }:
 
 let version = "1.3.1";
 in stdenv.mkDerivation {
@@ -19,9 +19,11 @@ in stdenv.mkDerivation {
     xorg.libXext
     pixman
     pkgconfig
-    AppKit Xplugin darwin.apple_sdk.frameworks.Foundation
+    AppKit Xplugin Foundation
+    # Needed for CFNotificationCenterAddObserver symbols.
+    cf-private
   ];
-  meta = with lib; {
+  meta = with stdenv.lib; {
     license = licenses.apsl20;
     platforms = platforms.darwin;
     maintainers = with maintainers; [ matthewbauer ];
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index 4772ac7f7ee..8f4c251335a 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -2,10 +2,12 @@
   stdenv, makeWrapper, lib, fetchurl, fetchpatch,
 
   automake, autoconf, libtool, intltool, mtdev, libevdev, libinput,
-  python, freetype, apple_sdk, tradcpp, fontconfig,
+  python, freetype, tradcpp, fontconfig,
   libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm,
   mesa_noglu, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook,
-  mcpp, epoxy, openssl, pkgconfig, llvm_6 }:
+  mcpp, epoxy, openssl, pkgconfig, llvm_6,
+  cf-private, ApplicationServices, Carbon, Cocoa, Xplugin
+}:
 
 let
   inherit (stdenv) lib isDarwin;
@@ -108,9 +110,9 @@ self: super:
   });
 
   libAppleWM = super.libAppleWM.overrideAttrs (attrs: {
-    buildInputs = attrs.buildInputs ++ [ apple_sdk.frameworks.ApplicationServices ];
+    buildInputs = attrs.buildInputs ++ [ ApplicationServices ];
     preConfigure = ''
-      substituteInPlace src/Makefile.in --replace -F/System -F${apple_sdk.frameworks.ApplicationServices}
+      substituteInPlace src/Makefile.in --replace -F/System -F${ApplicationServices}
     '';
   });
 
@@ -466,7 +468,11 @@ self: super:
               sha256 = "1j1i3n5xy1wawhk95kxqdc54h34kg7xp4nnramba2q8xqfr5k117";
             };
             nativeBuildInputs = [ pkgconfig ];
-            buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ];
+            buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]
+              ++ stdenv.lib.optionals stdenv.isDarwin [
+                # Needed for NSDefaultRunLoopMode symbols.
+                cf-private
+              ];
             postPatch = stdenv.lib.optionalString stdenv.isLinux "sed '1i#include <malloc.h>' -i include/os.h";
             meta.platforms = stdenv.lib.platforms.unix;
         } else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}";
@@ -538,9 +544,7 @@ self: super:
         nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook self.utilmacros self.fontutil ];
         buildInputs = commonBuildInputs ++ [
           bootstrap_cmds automake autoconf
-          apple_sdk.libs.Xplugin
-          apple_sdk.frameworks.Carbon
-          apple_sdk.frameworks.Cocoa
+          Xplugin Carbon Cocoa
         ];
         propagatedBuildInputs = commonPropagatedBuildInputs ++ [
           libAppleWM applewmproto
@@ -582,7 +586,7 @@ self: super:
         preConfigure = ''
           mkdir -p $out/Applications
           export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
-          substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${apple_sdk.frameworks.ApplicationServices}
+          substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${ApplicationServices}
         '';
         postInstall = ''
           rm -fr $out/share/X11/xkb/compiled
diff --git a/pkgs/servers/x11/xquartz/default.nix b/pkgs/servers/x11/xquartz/default.nix
index 3fc7aaea9c9..8cb96d0ae39 100644
--- a/pkgs/servers/x11/xquartz/default.nix
+++ b/pkgs/servers/x11/xquartz/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, lib, buildEnv, makeFontsConf, gnused, writeScript, xorg, bashInteractive, xterm, makeWrapper, ruby
+{ stdenv, buildEnv, makeFontsConf, gnused, writeScript, xorg, bashInteractive, xterm, makeWrapper, ruby
 , quartz-wm, fontconfig, xlsfonts, xfontsel
 , ttf_bitstream_vera, freefont_ttf, liberation_ttf
+, cf-private
 , shell ? "${bashInteractive}/bin/bash"
 }:
 
@@ -97,7 +98,11 @@ let
 in stdenv.mkDerivation {
   name = "xquartz-${stdenv.lib.getVersion xorg.xorgserver}";
 
-  buildInputs = [ ruby makeWrapper ];
+  buildInputs = [
+    ruby makeWrapper
+    # Needed for NSDefaultRunLoopMode symbols.
+    cf-private
+  ];
 
   unpackPhase = "sourceRoot=.";
 
@@ -134,7 +139,7 @@ in stdenv.mkDerivation {
     defaultStartX="$out/bin/startx -- $out/bin/Xquartz"
 
     ruby ${./patch_plist.rb} \
-      ${lib.escapeShellArg (builtins.toXML {
+      ${stdenv.lib.escapeShellArg (builtins.toXML {
         XQUARTZ_DEFAULT_CLIENT = "${xterm}/bin/xterm";
         XQUARTZ_DEFAULT_SHELL  = "${shell}";
         XQUARTZ_DEFAULT_STARTX = "@STARTX@";
@@ -179,7 +184,7 @@ in stdenv.mkDerivation {
       --replace "@FONTCONFIG_FILE@" "$fontsConfPath"
   '';
 
-  meta = with lib; {
+  meta = with stdenv.lib; {
     platforms   = platforms.darwin;
     maintainers = with maintainers; [ cstrahan ];
     license     = licenses.mit;
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index d4082465b19..552b9b6d7c1 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -4,13 +4,13 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation rec {
-  version = "2018-09-14";
+  version = "2018-11-02";
   name = "oh-my-zsh-${version}";
 
   src = fetchgit {
     url = "https://github.com/robbyrussell/oh-my-zsh";
-    rev = "489be2452a6410a2c7837910c4cd3c0ed47a7481";
-    sha256 = "05svfd2q4w4hnd9rsh57z7rsc50lavg3lqm3nmm6dqak1nnrkhbz";
+    rev = "05b617066ba5a37ef0c533385efd6e232a387b8f";
+    sha256 = "1pcb3ca5z3nywwnlhhjl4709k69lk4p0kd36l00q37j8p0vf6zr4";
   };
 
   pathsToLink = [ "/share/oh-my-zsh" ];
diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix
index 26cd9f8beb9..0e93df85547 100644
--- a/pkgs/stdenv/generic/check-meta.nix
+++ b/pkgs/stdenv/generic/check-meta.nix
@@ -165,6 +165,16 @@ let
     platforms = listOf (either str lib.systems.parsedPlatform.types.system);
     hydraPlatforms = listOf str;
     broken = bool;
+    # TODO: refactor once something like Profpatsch's types-simple will land
+    tests = attrsOf (mkOptionType {
+      name = "test";
+      check = x: isDerivation x &&
+        x ? meta.timeout &&
+        x ? meta.needsVMSupport;
+      merge = lib.options.mergeOneOption;
+    });
+    needsVMSupport = bool;
+    timeout = int;
 
     # Weirder stuff that doesn't appear in the documentation?
     knownVulnerabilities = listOf str;
@@ -184,8 +194,6 @@ let
     isIbusEngine = bool;
     isGutenprint = bool;
     badPlatforms = platforms;
-    # Hydra build timeout
-    timeout = int;
   };
 
   checkMetaAttr = k: v:
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 08a914787c3..a0912366312 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -93,7 +93,9 @@ rec {
                                       ++ depsTargetTarget ++ depsTargetTargetPropagated) == 0;
       runtimeSensativeIfFixedOutput = fixedOutputDrv -> !noNonNativeDeps;
       supportedHardeningFlags = [ "fortify" "stackprotector" "pie" "pic" "strictoverflow" "format" "relro" "bindnow" ];
-      defaultHardeningFlags = lib.remove "pie" supportedHardeningFlags;
+      defaultHardeningFlags = if stdenv.targetPlatform.isMusl
+                              then supportedHardeningFlags
+                              else lib.remove "pie" supportedHardeningFlags;
       enabledHardeningOptions =
         if builtins.elem "all" hardeningDisable
         then []
diff --git a/pkgs/tools/X11/xidlehook/default.nix b/pkgs/tools/X11/xidlehook/default.nix
index 0c64cbefb3e..5bdab3104a3 100644
--- a/pkgs/tools/X11/xidlehook/default.nix
+++ b/pkgs/tools/X11/xidlehook/default.nix
@@ -3,7 +3,7 @@
 
 rustPlatform.buildRustPackage rec {
   name = "xidlehook-${version}";
-  version = "0.5.0";
+  version = "0.6.0";
 
   doCheck = false;
 
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
     repo = "xidlehook";
     rev = version;
 
-    sha256 = "1qrjwk91i31rww5lwgp84hc4h3b1prm60y45jm1f28g2bbv2qy19";
+    sha256 = "0rmc0g5cizyzwpk4yyh7bda70x9ybaivc6iw441k6abxmzbh358g";
   };
 
   cargoBuildFlags = lib.optionals (!stdenv.isLinux) ["--no-default-features" "--features" "pulse"];
diff --git a/pkgs/tools/admin/fastlane/Gemfile.lock b/pkgs/tools/admin/fastlane/Gemfile.lock
index 631d9cb9628..88162a3432d 100644
--- a/pkgs/tools/admin/fastlane/Gemfile.lock
+++ b/pkgs/tools/admin/fastlane/Gemfile.lock
@@ -26,7 +26,7 @@ GEM
     faraday_middleware (0.12.2)
       faraday (>= 0.7.4, < 1.0)
     fastimage (2.1.4)
-    fastlane (2.105.2)
+    fastlane (2.107.0)
       CFPropertyList (>= 2.3, < 4.0.0)
       addressable (>= 2.3, < 3.0.0)
       babosa (>= 1.0.2, < 2.0.0)
@@ -71,10 +71,10 @@ GEM
       representable (~> 3.0)
       retriable (>= 2.0, < 4.0)
       signet (~> 0.9)
-    googleauth (0.6.6)
+    googleauth (0.6.7)
       faraday (~> 0.12)
       jwt (>= 1.4, < 3.0)
-      memoist (~> 0.12)
+      memoist (~> 0.16)
       multi_json (~> 1.11)
       os (>= 0.9, < 2.0)
       signet (~> 0.7)
@@ -105,7 +105,7 @@ GEM
     rouge (2.0.7)
     rubyzip (1.2.2)
     security (0.1.3)
-    signet (0.10.0)
+    signet (0.11.0)
       addressable (~> 2.3)
       faraday (~> 0.9)
       jwt (>= 1.5, < 3.0)
@@ -127,7 +127,7 @@ GEM
     unf_ext (0.0.7.5)
     unicode-display_width (1.4.0)
     word_wrap (1.0.0)
-    xcodeproj (1.6.0)
+    xcodeproj (1.7.0)
       CFPropertyList (>= 2.3.3, < 4.0)
       atomos (~> 0.1.3)
       claide (>= 1.0.2, < 2.0)
diff --git a/pkgs/tools/admin/fastlane/gemset.nix b/pkgs/tools/admin/fastlane/gemset.nix
index c2133c7c8c9..5afad1683c9 100644
--- a/pkgs/tools/admin/fastlane/gemset.nix
+++ b/pkgs/tools/admin/fastlane/gemset.nix
@@ -153,10 +153,10 @@
     dependencies = ["CFPropertyList" "addressable" "babosa" "colored" "commander-fastlane" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-api-client" "highline" "json" "mini_magick" "multi_json" "multi_xml" "multipart-post" "plist" "public_suffix" "rubyzip" "security" "simctl" "slack-notifier" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fq1zqvwim939klkx2893cbm1v4gi3a991qrj8933l3qg1y41fx2";
+      sha256 = "1d3jv7ik3rivmhxzcapia2lzf9xjmjgi4yxkl60ly6pcbbvhl48w";
       type = "gem";
     };
-    version = "2.105.2";
+    version = "2.107.0";
   };
   gh_inspector = {
     source = {
@@ -179,10 +179,10 @@
     dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1747p1dhpvz76i98xnjrvaj785y1232svm0nc8g9by6pz835gp2l";
+      sha256 = "1yj7j1rnyamxpn5ybgdgbiw89v9bq2r0h85s2y2jzvqanvm7iflq";
       type = "gem";
     };
-    version = "0.6.6";
+    version = "0.6.7";
   };
   highline = {
     source = {
@@ -367,10 +367,10 @@
     dependencies = ["addressable" "faraday" "jwt" "multi_json"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "14rhv3riz6ki4ix4l79b6ckq7d015673gxkxvzdcxjl1h8plpdcy";
+      sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4";
       type = "gem";
     };
-    version = "0.10.0";
+    version = "0.11.0";
   };
   simctl = {
     dependencies = ["CFPropertyList" "naturally"];
@@ -476,10 +476,10 @@
     dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1f4shbzff3wsk1jq0v9bs10496qdx69k2jfpf11p4q2ik3jdnsv7";
+      sha256 = "1hy2ihcqfjlsrnf8qkm51m1kk154yp0l0007f269ky8j9z5lyw3p";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.7.0";
   };
   xcpretty = {
     dependencies = ["rouge"];
diff --git a/pkgs/tools/admin/oxidized/Gemfile.lock b/pkgs/tools/admin/oxidized/Gemfile.lock
index 1570adbcf08..e4bdf5ccf39 100644
--- a/pkgs/tools/admin/oxidized/Gemfile.lock
+++ b/pkgs/tools/admin/oxidized/Gemfile.lock
@@ -29,7 +29,7 @@ GEM
       sinatra (~> 1.4, >= 1.4.6)
       sinatra-contrib (~> 1.4, >= 1.4.6)
     puma (3.11.3)
-    rack (1.6.9)
+    rack (1.6.11)
     rack-protection (1.5.5)
       rack
     rack-test (1.0.0)
@@ -66,4 +66,4 @@ DEPENDENCIES
   oxidized-web
 
 BUNDLED WITH
-   1.14.6
+   1.16.4
diff --git a/pkgs/tools/admin/oxidized/gemset.nix b/pkgs/tools/admin/oxidized/gemset.nix
index f472b14e796..5a8b2ecefdc 100644
--- a/pkgs/tools/admin/oxidized/gemset.nix
+++ b/pkgs/tools/admin/oxidized/gemset.nix
@@ -103,10 +103,10 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03w1ri5l91q800f1bdcdl5rbagy7s4kml136b42s2lmxmznxhr07";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.9";
+    version = "1.6.11";
   };
   rack-protection = {
     dependencies = ["rack"];
@@ -203,4 +203,4 @@
     };
     version = "2.0.8";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/tools/archivers/unshield/default.nix b/pkgs/tools/archivers/unshield/default.nix
index 0edb302b49c..3febb557bf8 100644
--- a/pkgs/tools/archivers/unshield/default.nix
+++ b/pkgs/tools/archivers/unshield/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "unshield-${version}";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchFromGitHub {
     owner = "twogood";
     repo = "unshield";
     rev = version;
-    sha256 = "07lmh8vmrbqy4kd6zl5yc1ar3bg33w5cymlzwfijy6arg77hjgq9";
+    sha256 = "19wn22vszhci8dfcixx5rliz7phx3lv5ablvhjlclvj75k2vsdqd";
   };
 
 
diff --git a/pkgs/tools/backup/bacula/default.nix b/pkgs/tools/backup/bacula/default.nix
index 374122814c5..fd8b1e6c828 100644
--- a/pkgs/tools/backup/bacula/default.nix
+++ b/pkgs/tools/backup/bacula/default.nix
@@ -1,20 +1,28 @@
 { stdenv, fetchurl, sqlite, postgresql, zlib, acl, ncurses, openssl, readline }:
 
 stdenv.mkDerivation rec {
-  name = "bacula-5.2.13";
+  name = "bacula-9.2.1";
 
   src = fetchurl {
     url    = "mirror://sourceforge/bacula/${name}.tar.gz";
-    sha256 = "1n3sc0kd7r0afpyi708y3md0a24rbldnfcdz0syqj600pxcd9gm4";
+    sha256 = "1mv6axdlv246yww9g2ra76hir1km36cv8lk2gal8kv71i64vafmf";
   };
 
   buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
     # acl relies on attr, which I can't get to build on darwin
     ++ stdenv.lib.optional (!stdenv.isDarwin) acl;
 
-  configureFlags = [ 
+  configureFlags = [
     "--with-sqlite3=${sqlite.dev}"
     "--with-postgresql=${postgresql}"
+    "--with-logdir=/var/log/bacula"
+    "--with-working-dir=/var/lib/bacula"
+    "--mandir=\${out}/share/man"
+  ];
+
+  installFlags = [
+    "logdir=\${out}/logdir"
+    "working_dir=\${out}/workdir"
   ];
 
   postInstall = ''
@@ -26,7 +34,7 @@ stdenv.mkDerivation rec {
     description = "Enterprise ready, Network Backup Tool";
     homepage    = http://bacula.org/;
     license     = licenses.gpl2;
-    maintainers = with maintainers; [ domenkozar lovek323 ];
+    maintainers = with maintainers; [ domenkozar lovek323 eleanor ];
     platforms   = platforms.all;
   };
 }
diff --git a/pkgs/tools/backup/bup/default.nix b/pkgs/tools/backup/bup/default.nix
index f24e89fcc84..bf10f556b6b 100644
--- a/pkgs/tools/backup/bup/default.nix
+++ b/pkgs/tools/backup/bup/default.nix
@@ -5,7 +5,7 @@
 
 assert par2Support -> par2cmdline != null;
 
-let version = "0.29.1"; in
+let version = "0.29.2"; in
 
 with stdenv.lib;
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     repo = "bup";
     owner = "bup";
     rev = version;
-    sha256 = "0wdr399jf64zzzsdvldhrwvnh5xpbghjvslr1j2cwr5y4i36znxf";
+    sha256 = "17lpbyhf43gcln5s43m2zzgichcx7jq6ragcawfklw6svg1vnj89";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 9fbe05c725e..cbe02a0593e 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -2,11 +2,11 @@
 
 python2Packages.buildPythonApplication rec {
   name = "duplicity-${version}";
-  version = "0.7.18.1";
+  version = "0.7.18.2";
 
   src = fetchurl {
     url = "http://code.launchpad.net/duplicity/${stdenv.lib.versions.majorMinor version}-series/${version}/+download/${name}.tar.gz";
-    sha256 = "17c0203y5qz9w8iyhs26l44qf6a1vp26b5ykz1ypdr2kv6g02df9";
+    sha256 = "0j37dgyji36hvb5dbzlmh5rj83jwhni02yq16g6rd3hj8f7qhdn2";
   };
 
   buildInputs = [ librsync makeWrapper python2Packages.wrapPython ];
diff --git a/pkgs/tools/filesystems/snapraid/default.nix b/pkgs/tools/filesystems/snapraid/default.nix
index 279d6adf9a2..725ff3e56dc 100644
--- a/pkgs/tools/filesystems/snapraid/default.nix
+++ b/pkgs/tools/filesystems/snapraid/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "snapraid-${version}";
-  version = "11.2";
+  version = "11.3";
 
   src = fetchFromGitHub {
     owner = "amadvance";
     repo = "snapraid";
     rev = "v${version}";
-    sha256 = "01z8fl3x2j5bnm0rybj7hhch18is6dkwqc43yzwc6418spr4imsd";
+    sha256 = "08rwz55njkr1w794y3hs8nxc11vzbv4drds9wgxpf6ps8qf9q49f";
   };
 
   VERSION = version;
diff --git a/pkgs/tools/graphics/netpbm/default.nix b/pkgs/tools/graphics/netpbm/default.nix
index 05aa7b86636..534cefe9bf6 100644
--- a/pkgs/tools/graphics/netpbm/default.nix
+++ b/pkgs/tools/graphics/netpbm/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchsvn {
     url = "https://svn.code.sf.net/p/netpbm/code/advanced";
-    rev = 3264;
+    rev = "3264";
     sha256 = "17fmyjbxp1l18rma7gb0m8wd9kx2iwhqs8dd6fpalsn2cr8mf8hf";
   };
 
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
index b75ce90cf29..86ff8e68fe7 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
@@ -13,13 +13,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "ibus-typing-booster-${version}";
-  version = "2.1.2";
+  version = "2.1.3";
 
   src = fetchFromGitHub {
     owner = "mike-fabian";
     repo = "ibus-typing-booster";
     rev = version;
-    sha256 = "0qg49d0hsb1mvq33p14nc6mdw6x3km1ax620gphczfmz9ki5bf4g";
+    sha256 = "1v9w5ak8ixasny7nkiwf6q058795c349dc2gr7jjpkz94gd4qls5";
   };
 
   patches = [ ./hunspell-dirs.patch ];
diff --git a/pkgs/tools/misc/ckb/default.nix b/pkgs/tools/misc/ckb-next/default.nix
index 57be1b89e46..fdb0f008a6c 100644
--- a/pkgs/tools/misc/ckb/default.nix
+++ b/pkgs/tools/misc/ckb-next/default.nix
@@ -1,15 +1,15 @@
 { stdenv, fetchFromGitHub, substituteAll, udev
-, pkgconfig, qtbase, qmake, zlib, kmod }:
+, pkgconfig, qtbase, cmake, zlib, kmod }:
 
 stdenv.mkDerivation rec {
-  version = "0.2.9";
+  version = "0.3.2";
   name = "ckb-next-${version}";
 
   src = fetchFromGitHub {
     owner = "ckb-next";
     repo = "ckb-next";
     rev = "v${version}";
-    sha256 = "0hl41znyhp3k5l9rcgz0gig36gsg95ivrs1dyngv45q9jkr6fchm";
+    sha256 = "0ri5n7r1vhsgk6s64abvqcdrs5fmlwprw0rxiwfy0j8a9qcic1dr";
   };
 
   buildInputs = [
@@ -20,29 +20,19 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkgconfig
-    qmake
+    cmake
   ];
 
   patches = [
-    ./ckb-animations-location.patch
+    ./install-dirs.patch
+    ./systemd-service.patch
     (substituteAll {
-      name = "ckb-modprobe.patch";
-      src = ./ckb-modprobe.patch;
+      name = "ckb-next-modprobe.patch";
+      src = ./modprobe.patch;
       inherit kmod;
     })
   ];
 
-  doCheck = false;
-
-  installPhase = ''
-    runHook preInstall
-
-    install -D --mode 0755 --target-directory $out/bin bin/ckb-daemon bin/ckb
-    install -D --mode 0755 --target-directory $out/libexec/ckb-animations bin/ckb-animations/*
-
-    runHook postInstall
-  '';
-
   meta = with stdenv.lib; {
     description = "Driver and configuration tool for Corsair keyboards and mice";
     homepage = https://github.com/ckb-next/ckb-next;
diff --git a/pkgs/tools/misc/ckb-next/install-dirs.patch b/pkgs/tools/misc/ckb-next/install-dirs.patch
new file mode 100644
index 00000000000..5545292a65e
--- /dev/null
+++ b/pkgs/tools/misc/ckb-next/install-dirs.patch
@@ -0,0 +1,32 @@
+diff --git a/src/daemon/CMakeLists.txt b/src/daemon/CMakeLists.txt
+index 09056a7..1bb4595 100644
+--- a/src/daemon/CMakeLists.txt
++++ b/src/daemon/CMakeLists.txt
+@@ -456,7 +456,7 @@ endif ()
+ if (LINUX)
+   install(
+     FILES "${CMAKE_SOURCE_DIR}/linux/udev/99-ckb-daemon.rules"
+-    DESTINATION "/etc/udev/rules.d"
++    DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/udev/rules.d"
+     PERMISSIONS
+     OWNER_READ OWNER_WRITE
+     GROUP_READ
+diff --git a/src/libs/ckb-next/CMakeLists.txt b/src/libs/ckb-next/CMakeLists.txt
+index ecc591c..35de563 100644
+--- a/src/libs/ckb-next/CMakeLists.txt
++++ b/src/libs/ckb-next/CMakeLists.txt
+@@ -75,12 +75,12 @@ if(NOT MACOS)
+         NAMESPACE
+           ${CMAKE_PROJECT_NAME}::
+         DESTINATION
+-          "/usr/lib/cmake/${CMAKE_PROJECT_NAME}/${PROJECT_NAME}")
++          "${CMAKE_INSTALL_PREFIX}/lib/cmake/${CMAKE_PROJECT_NAME}/${PROJECT_NAME}")
+ 
+     install(
+         FILES
+           "cmake/${PROJECT_NAME}Config.cmake"
+           "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}/${PROJECT_NAME}ConfigVersion.cmake"
+         DESTINATION
+-          "/usr/lib/cmake/${CMAKE_PROJECT_NAME}/${PROJECT_NAME}")
++          "${CMAKE_INSTALL_PREFIX}/lib/cmake/${CMAKE_PROJECT_NAME}/${PROJECT_NAME}")
+ endif()
diff --git a/pkgs/tools/misc/ckb-next/modprobe.patch b/pkgs/tools/misc/ckb-next/modprobe.patch
new file mode 100644
index 00000000000..f2156fc3b23
--- /dev/null
+++ b/pkgs/tools/misc/ckb-next/modprobe.patch
@@ -0,0 +1,26 @@
+diff --git a/src/daemon/input_linux.c b/src/daemon/input_linux.c
+index 1cedb07..8e0b24b 100644
+--- a/src/daemon/input_linux.c
++++ b/src/daemon/input_linux.c
+@@ -58,7 +58,7 @@ int os_inputopen(usbdevice* kb){
+     /// First check whether the uinput module is loaded by the kernel.
+     ///
+     // Load the uinput module (if it's not loaded already)
+-    if(system("modprobe uinput") != 0) {
++    if(system("@kmod@/bin/modprobe uinput") != 0) {
+         ckb_fatal("Failed to load uinput module\n");
+         return 1;
+     }
+diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp
+index 3601146..3f2f78f 100644
+--- a/src/gui/mainwindow.cpp
++++ b/src/gui/mainwindow.cpp
+@@ -251,7 +251,7 @@ void MainWindow::updateVersion(){
+             daemonWarning.append(tr("<br /><b>Warning:</b> System Extension by \"Fumihiko Takayama\" is not allowed in Security & Privacy. Please allow it and then unplug and replug your devices."));
+ #elif defined(Q_OS_LINUX)
+             QProcess modprobe;
+-            modprobe.start("modprobe", QStringList("uinput"));
++            modprobe.start("@kmod@/bin/modprobe", QStringList("uinput"));
+ 
+             if(!modprobe.waitForFinished())
+                 qDebug() << "Modprobe error";
diff --git a/pkgs/tools/misc/ckb-next/systemd-service.patch b/pkgs/tools/misc/ckb-next/systemd-service.patch
new file mode 100644
index 00000000000..917bc09627f
--- /dev/null
+++ b/pkgs/tools/misc/ckb-next/systemd-service.patch
@@ -0,0 +1,45 @@
+diff --git a/src/daemon/CMakeLists.txt b/src/daemon/CMakeLists.txt
+index 09056a7..72a7249 100644
+--- a/src/daemon/CMakeLists.txt
++++ b/src/daemon/CMakeLists.txt
+@@ -249,12 +249,7 @@ elseif (LINUX)
+     # but it is not enabled by default and systemd is used instead. (Ubuntu 15.04+)
+ 
+     # A way to check for upstart
+-    execute_process(
+-        COMMAND initctl --version
+-        OUTPUT_VARIABLE initctl_output
+-        OUTPUT_STRIP_TRAILING_WHITESPACE)
+-
+-    if ("${initctl_output}" MATCHES "upstart")
++    if (FALSE)
+         message(STATUS "upstart detected")
+         set(CKB_NEXT_INIT_SYSTEM "upstart" CACHE INTERNAL "")
+         set(DISALLOW_SYSVINIT TRUE)
+@@ -292,7 +287,7 @@ elseif (LINUX)
+     endif ()
+ 
+     # A way to check for systemd
+-    if (EXISTS "/run/systemd/system")
++    if (TRUE)
+         message(STATUS "systemd detected")
+         set(CKB_NEXT_INIT_SYSTEM "systemd" CACHE INTERNAL "")
+         set(DISALLOW_SYSVINIT TRUE)
+@@ -328,7 +323,7 @@ elseif (LINUX)
+     endif ()
+ 
+     # A way to check for OpenRC
+-    if (EXISTS "/run/openrc/softlevel")
++    if (FALSE)
+         message(STATUS "OpenRC detected")
+         set(CKB_NEXT_INIT_SYSTEM "OpenRC" CACHE INTERNAL "")
+         set(DISALLOW_SYSVINIT TRUE)
+@@ -419,7 +414,7 @@ if ("${CKB_NEXT_INIT_SYSTEM}" STREQUAL "launchd")
+ elseif ("${CKB_NEXT_INIT_SYSTEM}" STREQUAL "systemd")
+     install(
+         FILES "${CMAKE_CURRENT_BINARY_DIR}/service/ckb-next-daemon.service"
+-        DESTINATION "/usr/lib/systemd/system"
++        DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/systemd/system"
+         PERMISSIONS
+         OWNER_READ OWNER_WRITE
+         GROUP_READ
diff --git a/pkgs/tools/misc/ckb/ckb-animations-location.patch b/pkgs/tools/misc/ckb/ckb-animations-location.patch
deleted file mode 100644
index 8e53685e76a..00000000000
--- a/pkgs/tools/misc/ckb/ckb-animations-location.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/ckb/animscript.cpp b/src/ckb/animscript.cpp
-index f49a64c..d7a3459 100644
---- a/src/ckb/animscript.cpp
-+++ b/src/ckb/animscript.cpp
-@@ -30,7 +30,7 @@ QString AnimScript::path(){
- #ifdef __APPLE__
-     return QDir(QApplication::applicationDirPath() + "/../Resources").absoluteFilePath("ckb-animations");
- #else
--    return QDir("/usr/lib").absoluteFilePath("ckb-animations");
-+    return QDir(QApplication::applicationDirPath() + "/../libexec").absoluteFilePath("ckb-animations");
- #endif
- }
diff --git a/pkgs/tools/misc/ckb/ckb-modprobe.patch b/pkgs/tools/misc/ckb/ckb-modprobe.patch
deleted file mode 100644
index 8024151159c..00000000000
--- a/pkgs/tools/misc/ckb/ckb-modprobe.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/ckb-daemon/usb_linux.c b/src/ckb-daemon/usb_linux.c
-index 8673f86..4714305 100644
---- a/src/ckb-daemon/usb_linux.c
-+++ b/src/ckb-daemon/usb_linux.c
-@@ -440,7 +440,7 @@ static void udev_enum(){
- 
- int usbmain(){
-     // Load the uinput module (if it's not loaded already)
--    if(system("modprobe uinput") != 0)
-+    if(system("@kmod@/bin/modprobe uinput") != 0)
-         ckb_warn("Failed to load uinput module\n");
- 
-     // Create the udev object
diff --git a/pkgs/tools/misc/contacts/default.nix b/pkgs/tools/misc/contacts/default.nix
index dc8f776cef6..b262626b136 100644
--- a/pkgs/tools/misc/contacts/default.nix
+++ b/pkgs/tools/misc/contacts/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, xcbuildHook, Foundation, AddressBook }:
+{ stdenv, fetchurl, xcbuildHook, cf-private, Foundation, AddressBook }:
 
 stdenv.mkDerivation rec {
   version = "1.1a-3";
@@ -10,16 +10,18 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ xcbuildHook ];
-  buildInputs = [ Foundation AddressBook ];
+
+  buildInputs = [
+    Foundation AddressBook
+    # Needed for OBJC_CLASS_$_NSArray symbols.
+    cf-private
+  ];
 
   installPhase = ''
     mkdir -p $out/bin
     cp Products/Default/contacts $out/bin
   '';
 
-  ## FIXME: the framework setup hook isn't adding these correctly
-  NIX_LDFLAGS = " -F${Foundation}/Library/Frameworks/ -F${AddressBook}/Library/Frameworks/";
-
   meta = with stdenv.lib; {
     description = "Access contacts from the Mac address book from command-line";
     homepage    = http://www.gnufoo.org/contacts/contacts.html;
diff --git a/pkgs/tools/misc/jdupes/default.nix b/pkgs/tools/misc/jdupes/default.nix
index 991066690ee..0df351bdd56 100644
--- a/pkgs/tools/misc/jdupes/default.nix
+++ b/pkgs/tools/misc/jdupes/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "jdupes-${version}";
-  version = "1.10.4";
+  version = "1.11";
 
   src = fetchFromGitHub {
     owner = "jbruchon";
     repo  = "jdupes";
     rev   = "v${version}";
-    sha256 = "03a2jxv634xy5qwjrk784k3y3pd8f94pndf5m84yg2y7i8dvppnk";
+    sha256 = "124n9vgnqqhnwgnms7dqmndp25xrcjaykxrzbi4v4as98kxxi3j1";
     # Unicode file names lead to different checksums on HFS+ vs. other
     # filesystems because of unicode normalisation. The testdir
     # directories have such files and will be removed.
diff --git a/pkgs/tools/misc/patdiff/default.nix b/pkgs/tools/misc/patdiff/default.nix
index ef848bb43f2..f67a8274443 100644
--- a/pkgs/tools/misc/patdiff/default.nix
+++ b/pkgs/tools/misc/patdiff/default.nix
@@ -3,7 +3,7 @@
 with ocamlPackages;
 
 janePackage {
-  name = "patdiff";
+  pname = "patdiff";
   hash = "02cdn5j5brbp4n2rpxprzxfakjbl7n2llixg7m632bih3ppmfcq1";
   buildInputs = [ core_extended expect_test_helpers patience_diff ocaml_pcre ];
   meta = {
diff --git a/pkgs/tools/misc/pgmetrics/default.nix b/pkgs/tools/misc/pgmetrics/default.nix
new file mode 100644
index 00000000000..64d290ad89e
--- /dev/null
+++ b/pkgs/tools/misc/pgmetrics/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "pgmetrics-${version}";
+  version = "1.5.0";
+
+  goPackagePath = "github.com/rapidloop/pgmetrics";
+
+  src = fetchFromGitHub {
+    owner  = "rapidloop";
+    repo   = "pgmetrics";
+    rev    = "refs/tags/v${version}";
+    sha256 = "1l3vd1lvp4a6irx0zpjb5bkskkb9krx9j7pwii8jy9dcjy4gj24f";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with stdenv.lib; {
+    homepage = https://pgmetrics.io/;
+    description = "Collect and display information and stats from a running PostgreSQL server";
+    license = licenses.asl20;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/tools/misc/pgmetrics/deps.nix b/pkgs/tools/misc/pgmetrics/deps.nix
new file mode 100644
index 00000000000..63b9492a982
--- /dev/null
+++ b/pkgs/tools/misc/pgmetrics/deps.nix
@@ -0,0 +1,84 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev =  "bb3d318650d48840a39aa21a027c6630e198e626";
+      sha256 = "1lqd8ix3cb164j5iazjby2jpa6bdsflhy0h9mi4yldvvcvrc194c";
+    };
+  }
+  {
+    goPackagePath  = "github.com/howeyc/gopass";
+    fetch = {
+      type = "git";
+      url = "https://github.com/howeyc/gopass";
+      rev =  "bf9dde6d0d2c004a008c27aaee91170c786f6db8";
+      sha256 = "1jxzyfnqi0h1fzlsvlkn10bncic803bfhslyijcxk55mgh297g45";
+    };
+  }
+  {
+    goPackagePath  = "github.com/lib/pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lib/pq";
+      rev =  "88edab0803230a3898347e77b474f8c1820a1f20";
+      sha256 = "02y7c8xy33x5q4167x2drzrys41nfi7wxxp9hy4vpazfws88al9p";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pborman/getopt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pborman/getopt";
+      rev =  "7148bc3a4c3008adfcab60cbebfd0576018f330b";
+      sha256 = "0zhvvmv671r1fbdd5hbv3flx8k2rb60giqx115w0553c56qkqfpj";
+    };
+  }
+  {
+    goPackagePath  = "github.com/rapidloop/pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rapidloop/pq";
+      rev =  "f379fd34d14f11337c3945aa665f7718c0213317";
+      sha256 = "0svhissh6v1qdj9zypvj6jpjrx9g56gq8sf1pila41mczglmni05";
+    };
+  }
+  {
+    goPackagePath  = "github.com/xdg-go/stringprep";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xdg-go/stringprep";
+      rev =  "bd625b8dc1e3b0f57412280ccbcc317f0c69d8db";
+      sha256 = "03nard51zgzbaq64p6gsvrz8fps3yazl3ydd115y0bppkdx2i4ji";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev =  "432090b8f568c018896cd8a0fb0345872bbac6ce";
+      sha256 = "1i8616qqwih6g5nx8c1hfqhp0kb110ml3xkgsn6qvc36q04amjmq";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev =  "37707fdb30a5b38865cfb95e5aab41707daec7fd";
+      sha256 = "1abrr2507a737hdqv4q7pw7hv6ls9pdiq9crhdi52r3gcz6hvizg";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+]
\ No newline at end of file
diff --git a/pkgs/tools/misc/snapper/default.nix b/pkgs/tools/misc/snapper/default.nix
index 80b66026848..ff7518b04de 100644
--- a/pkgs/tools/misc/snapper/default.nix
+++ b/pkgs/tools/misc/snapper/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "snapper-${version}";
-  version = "0.7.2";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "snapper";
     rev = "v${version}";
-    sha256 = "1dm1kf4wrbcaaagxgbc8q0f5j9dq3bmp6ycl7zx8p70s4nv3xnbc";
+    sha256 = "1blllmkwh13pnf3hxi1p2az5i77arbm2661n0rd0569s6kf5brb7";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix
index e29e799898c..5502f2542f1 100644
--- a/pkgs/tools/misc/svtplay-dl/default.nix
+++ b/pkgs/tools/misc/svtplay-dl/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchFromGitHub, makeWrapper, python3Packages, perl, zip
-, rtmpdump }:
+, rtmpdump, gitMinimal }:
 
 let
-  inherit (python3Packages) python nose pycrypto requests mock;
+  inherit (python3Packages) python nose pycrypto pyyaml requests mock;
 in stdenv.mkDerivation rec {
   name = "svtplay-dl-${version}";
-  version = "1.9.11";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "spaam";
     repo = "svtplay-dl";
     rev = version;
-    sha256 = "14p2362rzyblma9321z4zrcbzfs9m269ry6sz44ly0bv5fik7gdy";
+    sha256 = "1cnc32gbhs955391hs1x1jpjsl3b6pqy7ysdydmp9q1i2rw105ln";
   };
 
-  pythonPaths = [ pycrypto requests ];
+  pythonPaths = [ pycrypto pyyaml requests ];
   buildInputs = [ python perl nose mock rtmpdump makeWrapper ] ++ pythonPaths;
-  nativeBuildInputs = [ zip ];
+  nativeBuildInputs = [ gitMinimal zip ];
 
   postPatch = ''
     substituteInPlace lib/svtplay_dl/fetcher/rtmp.py \
diff --git a/pkgs/tools/misc/tio/default.nix b/pkgs/tools/misc/tio/default.nix
index 6e17ce26e0d..ed26895fba6 100644
--- a/pkgs/tools/misc/tio/default.nix
+++ b/pkgs/tools/misc/tio/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "tio-${version}";
-  version = "1.31";
+  version = "1.32";
 
   src = fetchzip {
     url = "https://github.com/tio/tio/archive/v${version}.tar.gz";
-    sha256 = "1164ida1vxvm0z76nmkk2d5y9i3wj8rni9sl1mid6c09gi4k2slk";
+    sha256 = "0lwqdm73kshi9qs8pks1b4by6yb9jf3bbyw3bv52xmggnr5s1hcv";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index 038b3206ac2..192c5eb0823 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "tmux";
     repo = "tmux";
-    rev = version;
-    sha256 = "0n8sjddy00xgh1rvvw968hh72pyslg1gahmzajfc4b3xax87drpi";
+    rev = "01918cb0170e07288d3aec624516e6470bf5b7fc";
+    sha256 = "1fy87wvxn7r7jzqapvjisc1iizic3kxqk2lv83giqmw1y4g3s7rl";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/misc/watchexec/default.nix b/pkgs/tools/misc/watchexec/default.nix
index e376568d350..dd3eddf7395 100644
--- a/pkgs/tools/misc/watchexec/default.nix
+++ b/pkgs/tools/misc/watchexec/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, rustPlatform, fetchFromGitHub }:
+{ stdenv, rustPlatform, fetchFromGitHub, CoreServices, CoreFoundation }:
 
 rustPlatform.buildRustPackage rec {
   name = "watchexec-${version}";
@@ -13,11 +13,19 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1li84kq9myaw0zwx69y72f3lx01s7i9p8yays4rwvl1ymr614y1l";
 
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
+
+  # FIXME: Use impure version of CoreFoundation because of missing symbols.
+  #   Undefined symbols for architecture x86_64: "_CFURLResourceIsReachable"
+  preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS="-F${CoreFoundation}/Library/Frameworks -framework CoreFoundation $NIX_LDFLAGS"
+  '';
+
   meta = with stdenv.lib; {
     description = "Executes commands in response to file modifications";
     homepage = https://github.com/watchexec/watchexec;
     license = with licenses; [ asl20 ];
     maintainers = [ maintainers.michalrus ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/tools/misc/yank/default.nix b/pkgs/tools/misc/yank/default.nix
index eaefd6d61aa..0e88e79eb1b 100644
--- a/pkgs/tools/misc/yank/default.nix
+++ b/pkgs/tools/misc/yank/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     owner = "mptre";
     repo = "yank";
     rev = "v${meta.version}";
-    sha256 = "03h99i59kq8jlmshfwas1qm4y5ksw9lxaf9kr14l2mp028g7930n";
+    sha256 = "0jhr4ywn5x5s15sczhdyyaqy3xh5z4zsx3g42ma26prpnr4gjczz";
     inherit name;
   };
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     '';
     downloadPage = "https://github.com/mptre/yank/releases";
     license = licenses.mit;
-    version = "1.0.0";
+    version = "1.1.0";
     maintainers = [ maintainers.dochang ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/misc/you-get/default.nix b/pkgs/tools/misc/you-get/default.nix
index 6a56d23f749..2e033c6bc82 100644
--- a/pkgs/tools/misc/you-get/default.nix
+++ b/pkgs/tools/misc/you-get/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonApplication rec {
   pname = "you-get";
-  version = "0.4.1148";
+  version = "0.4.1167";
 
   # Tests aren't packaged, but they all hit the real network so
   # probably aren't suitable for a build environment anyway.
@@ -10,7 +10,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ypgqaxf5qn5b3c2n4hcsiixyvvpvmpx5gny523cd5igb7h0yja5";
+    sha256 = "0lvddm62c0pwx4cksbwh2n0xzz80p26lz1xsvb4z40h7hlwaf41w";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 8c08ee65805..450d5c68245 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -19,11 +19,11 @@ buildPythonPackage rec {
   # The websites youtube-dl deals with are a very moving target. That means that
   # downloads break constantly. Because of that, updates should always be backported
   # to the latest stable release.
-  version = "2018.10.29";
+  version = "2018.11.07";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1ndkkpnmjdyz5gjjmvaf18761lxa2c0kypicm9bpqpaj7sdr9s27";
+    sha256 = "1rvc2m2kbm2kycqsa7fkcg5gql9f0w3hn1a7jg48zzl06ayggxk9";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/grpcurl/default.nix b/pkgs/tools/networking/grpcurl/default.nix
new file mode 100644
index 00000000000..10100b933d4
--- /dev/null
+++ b/pkgs/tools/networking/grpcurl/default.nix
@@ -0,0 +1,29 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# and modified to add meta and switch to fetchFromGitHub
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "grpcurl-${version}";
+  version = "1.0.0";
+  rev = "v${version}";
+
+  goPackagePath = "github.com/fullstorydev/grpcurl";
+
+  src = fetchFromGitHub {
+    owner = "fullstorydev";
+    repo = "grpcurl";
+    rev = "d4d048fade4abcc2f0c3fb6f3e207289401d0a10";
+    sha256 = "0v45lwjw2phavhi6m4ql49ri1423m249a6xcf00v9hi2x1y9dh6q";
+  };
+
+  goDeps = if stdenv.isDarwin
+           then ./deps-darwin.nix
+           else ./deps-linux.nix;
+
+  meta = {
+    description = "Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers";
+    homepage = https://github.com/fullstorydev/grpcurl;
+    license = stdenv.lib.licenses.mit;
+    maintainers = with stdenv.lib.maintainers; [ knl ];
+  };
+}
diff --git a/pkgs/tools/networking/grpcurl/deps-darwin.nix b/pkgs/tools/networking/grpcurl/deps-darwin.nix
new file mode 100644
index 00000000000..52afa88708f
--- /dev/null
+++ b/pkgs/tools/networking/grpcurl/deps-darwin.nix
@@ -0,0 +1,57 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "ddf22928ea3c56eb4292a0adbbf5001b1e8e7d0d";
+      sha256 = "16awkanx2rgxzhwi9vpm4i8jmmsw10gb104ncwfinvb6a9nzm28l";
+    };
+  }
+  {
+    goPackagePath = "github.com/jhump/protoreflect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jhump/protoreflect";
+      rev = "b28d968eb345542b430a717dc72a88abf10d0b95";
+      sha256 = "0i8k55xx2wyzfz635nbjqma505sn03l75mq6lgbknzwhv1xbx39s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "146acd28ed5894421fb5aac80ca93bc1b1f46f87";
+      sha256 = "0d177474z85nvxz8ch6y9wjqz288844wwx8q9za3x2njnk4jbgxj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "4d1c5fb19474adfe9562c9847ba425e7da817e81";
+      sha256 = "1y4rf9cmjyf8r56khr1sz0chbq1v0ynaj63i2z1mq6k6h6ww45da";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "af9cb2a35e7f169ec875002c1829c9b315cddc04";
+      sha256 = "1942rw8h7zhbzvxn1rqn8z265sl2i14hm0z4hbfbc93slmml7p7n";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "c195587d96d5ae30321b96a1e2e175fea09e9fda";
+      sha256 = "1av4hgaqk0hgji8ycdkgganh6bqajk2ygm4ifrmyzbm1hzwi3gg7";
+    };
+  }
+]
diff --git a/pkgs/tools/networking/grpcurl/deps-linux.nix b/pkgs/tools/networking/grpcurl/deps-linux.nix
new file mode 100644
index 00000000000..e5e775e50fe
--- /dev/null
+++ b/pkgs/tools/networking/grpcurl/deps-linux.nix
@@ -0,0 +1,66 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "ddf22928ea3c56eb4292a0adbbf5001b1e8e7d0d";
+      sha256 = "16awkanx2rgxzhwi9vpm4i8jmmsw10gb104ncwfinvb6a9nzm28l";
+    };
+  }
+  {
+    goPackagePath = "github.com/jhump/protoreflect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jhump/protoreflect";
+      rev = "b28d968eb345542b430a717dc72a88abf10d0b95";
+      sha256 = "0i8k55xx2wyzfz635nbjqma505sn03l75mq6lgbknzwhv1xbx39s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "49bb7cea24b1df9410e1712aa6433dae904ff66a";
+      sha256 = "111q4qm3hcjvzvyv9y5rz8ydnyg48rckcygxqy6gv63q618wz6gn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "4497e2df6f9e69048a54498c7affbbec3294ad47";
+      sha256 = "028qmbfmy84pl7wmjgvrv1x7x7nzv3qr9w7vcnrcparr43k7415s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "4d1c5fb19474adfe9562c9847ba425e7da817e81";
+      sha256 = "1y4rf9cmjyf8r56khr1sz0chbq1v0ynaj63i2z1mq6k6h6ww45da";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "af9cb2a35e7f169ec875002c1829c9b315cddc04";
+      sha256 = "1942rw8h7zhbzvxn1rqn8z265sl2i14hm0z4hbfbc93slmml7p7n";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "c195587d96d5ae30321b96a1e2e175fea09e9fda";
+      sha256 = "1av4hgaqk0hgji8ycdkgganh6bqajk2ygm4ifrmyzbm1hzwi3gg7";
+    };
+  }
+]
diff --git a/pkgs/tools/networking/httpie/default.nix b/pkgs/tools/networking/httpie/default.nix
index ef50c0ce084..10f57532df1 100644
--- a/pkgs/tools/networking/httpie/default.nix
+++ b/pkgs/tools/networking/httpie/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pythonPackages }:
 
 pythonPackages.buildPythonApplication rec {
-  name = "httpie-0.9.9";
+  name = "httpie-1.0.0";
 
   src = fetchurl {
     url = "mirror://pypi/h/httpie/${name}.tar.gz";
-    sha256 = "1jsgfkyzzizgfy1b0aicb4cp34d5pwskz9c4a8kf4rq3lrpjw87i";
+    sha256 = "09cs2n76318i34vms9pdnbds53pnp1m11gwn444j49na5qnk8l0n";
   };
 
   propagatedBuildInputs = with pythonPackages; [ pygments requests ];
diff --git a/pkgs/tools/networking/ip2unix/default.nix b/pkgs/tools/networking/ip2unix/default.nix
new file mode 100644
index 00000000000..18a53d02b1e
--- /dev/null
+++ b/pkgs/tools/networking/ip2unix/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, libyamlcpp, systemd
+, asciidoctor, python3Packages
+}:
+
+stdenv.mkDerivation rec {
+  name = "ip2unix-${version}";
+  version = "1.1.1";
+
+  src = fetchFromGitHub {
+    owner = "nixcloud";
+    repo = "ip2unix";
+    rev = "v${version}";
+    sha256 = "0lw4f1p1frfpf5l7faqdd80d6pi9g5sx7g3wpmig9sa50k6pmc0v";
+  };
+
+  nativeBuildInputs = [
+    meson ninja pkgconfig asciidoctor
+    python3Packages.pytest python3Packages.pytest-timeout
+  ];
+
+  buildInputs = [ libyamlcpp systemd ];
+
+  doCheck = true;
+
+  meta = {
+    homepage = https://github.com/nixcloud/ip2unix;
+    description = "Turn IP sockets into Unix domain sockets";
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.lgpl3;
+    maintainers = [ stdenv.lib.maintainers.aszlig ];
+  };
+}
diff --git a/pkgs/tools/networking/shadowsocks-libev/default.nix b/pkgs/tools/networking/shadowsocks-libev/default.nix
index 09fa69dd37c..27c4590f88b 100644
--- a/pkgs/tools/networking/shadowsocks-libev/default.nix
+++ b/pkgs/tools/networking/shadowsocks-libev/default.nix
@@ -16,27 +16,15 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ libsodium mbedtls libev c-ares pcre ];
-  nativeBuildInputs = [ cmake asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt ];
+  nativeBuildInputs = [ cmake asciidoc xmlto docbook_xml_dtd_45
+                        docbook_xsl libxslt ];
 
-  cmakeFlags = [ "-DWITH_STATIC=OFF" ];
+  cmakeFlags = [ "-DWITH_STATIC=OFF"  "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON" ];
 
   postInstall = ''
     cp lib/* $out/lib
     chmod +x $out/bin/*
     mv $out/pkgconfig $out/lib
-
-    ${stdenv.lib.optionalString stdenv.isDarwin ''
-      install_name_tool -change libcork.dylib $out/lib/libcork.dylib $out/lib/libipset.dylib
-      install_name_tool -change libbloom.dylib $out/lib/libbloom.dylib $out/lib/libipset.dylib
-
-      for exe in $out/bin/*; do
-        install_name_tool -change libmbedtls.dylib ${mbedtls}/lib/libmbedtls.dylib $exe
-        install_name_tool -change libmbedcrypto.dylib ${mbedtls}/lib/libmbedcrypto.dylib $exe
-        install_name_tool -change libcork.dylib $out/lib/libcork.dylib $exe
-        install_name_tool -change libipset.dylib $out/lib/libipset.dylib $exe
-        install_name_tool -change libbloom.dylib $out/lib/libbloom.dylib $exe
-      done
-    ''}
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/spoofer/default.nix b/pkgs/tools/networking/spoofer/default.nix
index ad03e9266c6..1043007e1dd 100644
--- a/pkgs/tools/networking/spoofer/default.nix
+++ b/pkgs/tools/networking/spoofer/default.nix
@@ -6,12 +6,12 @@ in
 
 stdenv.mkDerivation rec {
   pname = "spoofer";
-  version = "1.3.3";
+  version = "1.4.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://www.caida.org/projects/spoofer/downloads/${name}.tar.gz";
-    sha256 = "0zpqn3jj14grwggzl235smm93d2lm5r5cr6z6wydw1045m5rlvrp";
+    sha256 = "0d745w7cy83hw7j950dah4h5qzclcibj16dik2gpsjnw1zq63cna";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/networking/swaks/default.nix b/pkgs/tools/networking/swaks/default.nix
index be807e30771..8daf034d4bd 100644
--- a/pkgs/tools/networking/swaks/default.nix
+++ b/pkgs/tools/networking/swaks/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "swaks-${version}";
-  version = "20170101.0";
+  version = "20181104.0";
 
   src = fetchurl {
     url = "https://www.jetmore.org/john/code/swaks/files/${name}.tar.gz";
-    sha256 = "0pli4mlhasnqqxmmxalwyg3x7n2vhcbgsnp2xgddamjavv82vrl4";
+    sha256 = "0n1yd27xcyb1ylp5gln3yv5gzi9r377hjy1j32367kgb3247ygq2";
   };
 
   buildInputs = [ perl makeWrapper ];
diff --git a/pkgs/tools/networking/tgt/default.nix b/pkgs/tools/networking/tgt/default.nix
index ce9ed7ef53a..b2ef684f589 100644
--- a/pkgs/tools/networking/tgt/default.nix
+++ b/pkgs/tools/networking/tgt/default.nix
@@ -2,7 +2,7 @@
 , docbook_xsl }:
 
 let
-  version = "1.0.73";
+  version = "1.0.74";
 in stdenv.mkDerivation rec {
   name = "tgt-${version}";
 
@@ -10,7 +10,7 @@ in stdenv.mkDerivation rec {
     owner = "fujita";
     repo = "tgt";
     rev = "v${version}";
-    sha256 = "0alrdrklh5wq8x4xbp30zwnxkp0brx1mjkbp70dhaz0zbzvyydr0";
+    sha256 = "1k146w49dda77fd8frmc0nyr07ca1wh5vcw59fjid6knaj9vgck5";
   };
 
   buildInputs = [ libxslt systemd libaio docbook_xsl ];
diff --git a/pkgs/tools/security/acsccid/default.nix b/pkgs/tools/security/acsccid/default.nix
new file mode 100644
index 00000000000..246a2c5d991
--- /dev/null
+++ b/pkgs/tools/security/acsccid/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, gettext, flex, perl, pkgconfig, pcsclite, libusb }:
+
+stdenv.mkDerivation rec {
+  version = "1.1.6";
+  name = "acsccid-${version}";
+
+  src = fetchFromGitHub {
+    owner = "acshk";
+    repo = "acsccid";
+    rev = "26bc84c738d12701e6a7289ed578671d71cbf3cb";
+    sha256 = "09k7hvcay092wkyf0hjsvimg1h4qzss1nk7m5yanlib4ldhw5g5c";
+  };
+
+  doCheck = true;
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ pcsclite libusb autoconf automake libtool gettext flex perl ];
+
+  postPatch = ''
+    sed -e s_/bin/echo_echo_g -i src/Makefile.am
+    patchShebangs src/convert_version.pl
+    patchShebangs src/create_Info_plist.pl
+  '';
+
+  preConfigure = ''
+    libtoolize --force
+    aclocal
+    autoheader
+    automake --force-missing --add-missing
+    autoconf
+    configureFlags="$configureFlags --enable-usbdropdir=$out/pcsc/drivers"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card readers.";
+    longDescription = ''
+      acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card
+      readers. This library provides a PC/SC IFD handler implementation and
+      communicates with the readers through the PC/SC Lite resource manager (pcscd).
+
+      acsccid is based on ccid. See CCID free software driver for more
+      information:
+      https://ccid.apdu.fr/
+
+      It can be enabled in /etc/nixos/configuration.nix by adding:
+        services.pcscd.enable = true;
+        services.pcscd.plugins = [ pkgs.acsccid ];
+    '';
+    homepage = src.meta.homepage;
+    license = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ roberth ];
+    platforms = with platforms; unix;
+  };
+}
diff --git a/pkgs/tools/security/chrome-token-signing/default.nix b/pkgs/tools/security/chrome-token-signing/default.nix
new file mode 100644
index 00000000000..b9e42bb6fa7
--- /dev/null
+++ b/pkgs/tools/security/chrome-token-signing/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, qmake, pcsclite, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  name = "chrome-token-signing-${version}";
+  version = "1.0.7";
+
+  src = fetchFromGitHub {
+    owner = "open-eid";
+    repo = "chrome-token-signing";
+    rev = "v${version}";
+    sha256 = "1icbr5gyf7qqk1qjgcrf6921ws84j5h8zrpzw5mirq4582l5gsav";
+  };
+
+  buildInputs = [ qmake pcsclite pkgconfig ];
+  dontUseQmakeConfigure = true;
+
+  patchPhase = ''
+    substituteInPlace host-linux/ee.ria.esteid.json --replace /usr $out
+  '';
+
+  installPhase = ''
+    install -D -t $out/bin host-linux/chrome-token-signing
+    # TODO: wire these up
+    install -D -t $out/etc/chromium/native-messaging-hosts host-linux/ee.ria.esteid.json
+    install -D -t $out/lib/mozilla/native-messaging-hosts host-linux/ff/ee.ria.esteid.json
+  '';
+}
diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock
index d15df5e56c2..a84e3d08f43 100644
--- a/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/pkgs/tools/security/metasploit/Gemfile.lock
@@ -187,7 +187,7 @@ GEM
       arel (>= 4.0.1)
       pg_array_parser (~> 0.0.9)
     public_suffix (2.0.5)
-    rack (1.6.8)
+    rack (1.6.11)
     rack-test (0.6.3)
       rack (>= 1.0)
     rails-deprecated_sanitizer (1.0.3)
@@ -292,4 +292,4 @@ DEPENDENCIES
   metasploit-framework!
 
 BUNDLED WITH
-   1.15.0
+   1.16.4
diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix
index 4262e64efb0..938817cb64f 100644
--- a/pkgs/tools/security/metasploit/gemset.nix
+++ b/pkgs/tools/security/metasploit/gemset.nix
@@ -1,5 +1,6 @@
 {
   actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1kgrq74gp2czzxr0f2sqrc98llz03lgq498300z2z5n4khgznwc4";
@@ -8,6 +9,7 @@
     version = "4.2.9";
   };
   actionview = {
+    dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "04kgp4gmahw31miz8xdq1pns14qmvvzd14fgfv7fg9klkw3bxyyp";
@@ -16,6 +18,7 @@
     version = "4.2.9";
   };
   activemodel = {
+    dependencies = ["activesupport" "builder"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1qxmivny0ka5s3iyap08sn9bp2bd9wrhqp2njfw26hr9wsjk5kfv";
@@ -24,6 +27,7 @@
     version = "4.2.9";
   };
   activerecord = {
+    dependencies = ["activemodel" "activesupport" "arel"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "18i790dfhi4ndypd1pj9pv08knpxr2sayvvwfq7axj5jfwgpmrqb";
@@ -32,6 +36,7 @@
     version = "4.2.9";
   };
   activesupport = {
+    dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1d0a362p3m2m2kljichar2pwq0qm4vblc3njy1rdzm09ckzd45sp";
@@ -40,6 +45,7 @@
     version = "4.2.9";
   };
   addressable = {
+    dependencies = ["public_suffix"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1i8q32a4gr0zghxylpyy7jfqwxvwrivsxflg9mks6kx92frh75mh";
@@ -64,6 +70,7 @@
     version = "6.0.4";
   };
   arel-helpers = {
+    dependencies = ["activerecord"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1sx4qbzhld3a99175p2krz3hv1npc42rv3sd8x4awzkgplg3zy9c";
@@ -144,6 +151,7 @@
     version = "2.7.0";
   };
   faraday = {
+    dependencies = ["multipart-post"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1gyqsj7vlqynwvivf9485zwmcj04v1z7gq362z0b8zw2zf4ag0hw";
@@ -184,6 +192,7 @@
     version = "0.8.6";
   };
   jsobfu = {
+    dependencies = ["rkelly-remix"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1hchns89cfj0gggm2zbr7ghb630imxm2x2d21ffx2jlasn9xbkyk";
@@ -200,6 +209,7 @@
     version = "2.1.0";
   };
   loofah = {
+    dependencies = ["nokogiri"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "109ps521p0sr3kgc460d58b4pr1z4mqggan2jbsf0aajy9s6xis8";
@@ -216,6 +226,7 @@
     version = "1.0.3";
   };
   metasploit-concern = {
+    dependencies = ["activemodel" "activesupport" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0v9lm225fhzhnbjcc0vwb38ybikxwzlv8116rrrkndzs8qy79297";
@@ -224,6 +235,7 @@
     version = "2.0.5";
   };
   metasploit-credential = {
+    dependencies = ["metasploit-concern" "metasploit-model" "metasploit_data_models" "pg" "railties" "rex-socket" "rubyntlm" "rubyzip"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1flahrcl5hf4bncqs40mry6pkffvmir85kqzkad22x3dh6crw50i";
@@ -232,6 +244,7 @@
     version = "2.0.12";
   };
   metasploit-framework = {
+    dependencies = ["actionpack" "activerecord" "activesupport" "backports" "bcrypt" "bcrypt_pbkdf" "bit-struct" "dnsruby" "filesize" "jsobfu" "json" "metasm" "metasploit-concern" "metasploit-credential" "metasploit-model" "metasploit-payloads" "metasploit_data_models" "metasploit_payloads-mettle" "msgpack" "nessus_rest" "net-ssh" "network_interface" "nexpose" "nokogiri" "octokit" "openssl-ccm" "openvas-omp" "packetfu" "patch_finder" "pcaprub" "pdf-reader" "pg" "railties" "rb-readline" "rbnacl" "rbnacl-libsodium" "recog" "redcarpet" "rex-arch" "rex-bin_tools" "rex-core" "rex-encoder" "rex-exploitation" "rex-java" "rex-mime" "rex-nop" "rex-ole" "rex-powershell" "rex-random_identifier" "rex-registry" "rex-rop_builder" "rex-socket" "rex-sslscan" "rex-struct2" "rex-text" "rex-zip" "robots" "ruby_smb" "rubyntlm" "rubyzip" "sqlite3" "sshkey" "tzinfo" "tzinfo-data" "windows_error" "xdr" "xmlrpc"];
     source = {
       fetchSubmodules = false;
       rev = "dbec1c2d2ae4bd77276cbfb3c6ee2902048b9453";
@@ -242,6 +255,7 @@
     version = "4.16.1";
   };
   metasploit-model = {
+    dependencies = ["activemodel" "activesupport" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "05pnai1cv00xw87rrz38dz4s3ss45s90290d0knsy1mq6rp8yvmw";
@@ -258,6 +272,7 @@
     version = "1.3.1";
   };
   metasploit_data_models = {
+    dependencies = ["activerecord" "activesupport" "arel-helpers" "metasploit-concern" "metasploit-model" "pg" "postgres_ext" "railties" "recog"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0j3ijxn6n3ack9572a74cwknijymy41c8rx34njyhg25lx4hbvah";
@@ -338,6 +353,7 @@
     version = "6.1.1";
   };
   nokogiri = {
+    dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1nffsyx1xjg6v5n9rrbi8y1arrcx2i5f21cp6clgh9iwiqkr7rnn";
@@ -346,6 +362,7 @@
     version = "1.8.0";
   };
   octokit = {
+    dependencies = ["sawyer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h6cm7bi0y7ysjgwws3paaipqdld6c0m0niazrjahhpz88qqq1g4";
@@ -370,6 +387,7 @@
     version = "0.0.4";
   };
   packetfu = {
+    dependencies = ["pcaprub"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "16ppq9wfxq4x2hss61l5brs3s6fmi8gb50mnp1nnnzb1asq4g8ll";
@@ -394,6 +412,7 @@
     version = "0.12.4";
   };
   pdf-reader = {
+    dependencies = ["Ascii85" "afm" "hashery" "ruby-rc4" "ttfunk"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nlammdpjy3padmzxhsql7mw31jyqp88n6bdffiarv5kzl4s3y7p";
@@ -418,6 +437,7 @@
     version = "0.0.9";
   };
   postgres_ext = {
+    dependencies = ["activerecord" "arel" "pg_array_parser"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lbp1qf5s1addhznm7d4bzks9adh7jpilgcsr8k7mbd0a1ailcgc";
@@ -436,12 +456,13 @@
   rack = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.8";
+    version = "1.6.11";
   };
   rack-test = {
+    dependencies = ["rack"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
@@ -450,6 +471,7 @@
     version = "0.6.3";
   };
   rails-deprecated_sanitizer = {
+    dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj";
@@ -458,6 +480,7 @@
     version = "1.0.3";
   };
   rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1ny7mbjxhq20rzg4pivvyvk14irmc7cn20kxfk3vc0z2r2c49p8r";
@@ -466,6 +489,7 @@
     version = "1.0.8";
   };
   rails-html-sanitizer = {
+    dependencies = ["loofah"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "138fd86kv073zqfx0xifm646w6bgw2lr8snk16lknrrfrss8xnm7";
@@ -474,6 +498,7 @@
     version = "1.0.3";
   };
   railties = {
+    dependencies = ["actionpack" "activesupport" "rake" "thor"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1g5jnk1zllm2fr06lixq7gv8l2cwqc99akv7886gz6lshijpfyxd";
@@ -498,6 +523,7 @@
     version = "0.5.5";
   };
   rbnacl = {
+    dependencies = ["ffi"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "08dkigw8wdx53hviw1zqrs7rcrzqcwh9jd3dvwr72013z9fmyp48";
@@ -506,6 +532,7 @@
     version = "4.0.2";
   };
   rbnacl-libsodium = {
+    dependencies = ["rbnacl"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1323fli41m01af13xz5xvabsjnz09si1b9l4qd2p802kq0dr61gd";
@@ -514,6 +541,7 @@
     version = "1.0.13";
   };
   recog = {
+    dependencies = ["nokogiri"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0h023ykrrra74bpbibkyg083kafaswvraw4naw9p1ghcjzn9ggj3";
@@ -530,6 +558,7 @@
     version = "3.4.0";
   };
   rex-arch = {
+    dependencies = ["rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1izzalmjwdyib8y0xlgys8qb60di6xyjk485ylgh14p47wkyc6yp";
@@ -538,6 +567,7 @@
     version = "0.1.11";
   };
   rex-bin_tools = {
+    dependencies = ["metasm" "rex-arch" "rex-core" "rex-struct2" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "01hi1cjr68adp47nxbjfprvn0r3b72r4ib82x9j33bf2pny6nvaw";
@@ -554,6 +584,7 @@
     version = "0.1.12";
   };
   rex-encoder = {
+    dependencies = ["metasm" "rex-arch" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1zm5jdxgyyp8pkfqwin34izpxdrmglx6vmk20ifnvcsm55c9m70z";
@@ -562,6 +593,7 @@
     version = "0.1.4";
   };
   rex-exploitation = {
+    dependencies = ["jsobfu" "metasm" "rex-arch" "rex-encoder" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0gbj28jqaaldpk4qzysgcl6m0wcqx3gcldarqdk55p5z9zasrk19";
@@ -578,6 +610,7 @@
     version = "0.1.5";
   };
   rex-mime = {
+    dependencies = ["rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "15a14kz429h7pn81ysa6av3qijxjmxagjff6dyss5v394fxzxf4a";
@@ -586,6 +619,7 @@
     version = "0.1.5";
   };
   rex-nop = {
+    dependencies = ["rex-arch"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0aigf9qsqsmiraa6zvfy1a7cyvf7zc3iyhzxi6fjv5sb8f64d6ny";
@@ -594,6 +628,7 @@
     version = "0.1.1";
   };
   rex-ole = {
+    dependencies = ["rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1pnzbqfnvbs0vc0z0ryszk3fxhgxrjd6gzwqa937rhlphwp5jpww";
@@ -602,6 +637,7 @@
     version = "0.1.6";
   };
   rex-powershell = {
+    dependencies = ["rex-random_identifier" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nl60fdd1rlckk95d3s3y873w84vb0sgwvwxdzv414qxz8icpjnm";
@@ -610,6 +646,7 @@
     version = "0.1.72";
   };
   rex-random_identifier = {
+    dependencies = ["rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0cksrljaw61mdjvbmj9vqqhd8nra7jv466w5nim47n73rj72jc19";
@@ -626,6 +663,7 @@
     version = "0.1.3";
   };
   rex-rop_builder = {
+    dependencies = ["metasm" "rex-core" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0xjd3d6wnbq4ym0d0m268md8fb16f2hbwrahvxnl14q63fj9i3wy";
@@ -634,6 +672,7 @@
     version = "0.1.3";
   };
   rex-socket = {
+    dependencies = ["rex-core"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bkr64qrfy2mcv6cpp2z2rn9npgn9s0yyagzjh7kawbm80ldwf2h";
@@ -642,6 +681,7 @@
     version = "0.1.8";
   };
   rex-sslscan = {
+    dependencies = ["rex-core" "rex-socket" "rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "06gbx45q653ajcx099p0yxdqqxazfznbrqshd4nwiwg1p498lmyx";
@@ -666,6 +706,7 @@
     version = "0.2.15";
   };
   rex-zip = {
+    dependencies = ["rex-text"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1mbfryyhcw47i7jb8cs8vilbyqgyiyjkfl1ngl6wdbf7d87dwdw7";
@@ -698,6 +739,7 @@
     version = "0.1.5";
   };
   ruby_smb = {
+    dependencies = ["bindata" "rubyntlm" "windows_error"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1jby5wlppxhc2jlqldic05aqd5l57171lsxqv86702grk665n612";
@@ -722,6 +764,7 @@
     version = "1.2.1";
   };
   sawyer = {
+    dependencies = ["addressable" "faraday"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0sv1463r7bqzvx4drqdmd36m7rrv6sf1v3c6vswpnq3k6vdw2dvd";
@@ -770,6 +813,7 @@
     version = "1.5.1";
   };
   tzinfo = {
+    dependencies = ["thread_safe"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "05r81lk7q7275rdq7xipfm0yxgqyd2ggh73xpc98ypngcclqcscl";
@@ -778,6 +822,7 @@
     version = "1.2.3";
   };
   tzinfo-data = {
+    dependencies = ["tzinfo"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1n83rmy476d4qmzq74qx0j7lbcpskbvrj1bmy3np4d5pydyw2yky";
@@ -794,6 +839,7 @@
     version = "0.1.2";
   };
   xdr = {
+    dependencies = ["activemodel" "activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0c5cp1k4ij3xq1q6fb0f6xv5b65wy18y7bhwvsdx8wd0zyg3x96m";
@@ -809,4 +855,4 @@
     };
     version = "0.3.0";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/tools/security/pcsclite/default.nix b/pkgs/tools/security/pcsclite/default.nix
index 495b6ee48ea..95f9bf16eba 100644
--- a/pkgs/tools/security/pcsclite/default.nix
+++ b/pkgs/tools/security/pcsclite/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "pcsclite-${version}";
-  version = "1.8.23";
+  version = "1.8.24";
 
   outputs = [ "bin" "out" "dev" "doc" "man" ];
 
   src = fetchurl {
     url = "https://pcsclite.apdu.fr/files/pcsc-lite-${version}.tar.bz2";
-    sha256 = "1jc9ws5ra6v3plwraqixin0w0wfxj64drahrbkyrrwzghqjjc9ss";
+    sha256 = "0s3mv6csbi9303vvis0hilm71xsmi6cqkbh2kiipdisydbx6865q";
   };
 
   patches = [ ./no-dropdir-literals.patch ];
diff --git a/pkgs/tools/security/pinentry/mac.nix b/pkgs/tools/security/pinentry/mac.nix
index 4acdd6cb897..8168aa94b3d 100644
--- a/pkgs/tools/security/pinentry/mac.nix
+++ b/pkgs/tools/security/pinentry/mac.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, xcbuildHook, libiconv, Cocoa, ncurses }:
+{ stdenv, fetchFromGitHub, xcbuildHook, libiconv, Cocoa, ncurses, cf-private }:
 
 stdenv.mkDerivation rec {
   name = "pinentry-mac-0.9.4";
@@ -11,7 +11,12 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ xcbuildHook ];
-  buildInputs = [ libiconv Cocoa ncurses ];
+
+  buildInputs = [
+    libiconv Cocoa ncurses
+    # Needed for OBJC_CLASS_$_NSArray symbols.
+    cf-private
+  ];
 
   installPhase = ''
     mkdir -p $out/Applications
diff --git a/pkgs/tools/security/qdigidoc/default.nix b/pkgs/tools/security/qdigidoc/default.nix
index 398f88ccfb6..17bbf982255 100644
--- a/pkgs/tools/security/qdigidoc/default.nix
+++ b/pkgs/tools/security/qdigidoc/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchgit, fetchurl, cmake, darkhttpd, gettext, makeWrapper, pkgconfig
-, libdigidocpp, opensc, openldap, openssl, pcsclite, qtbase, qttranslations }:
+, libdigidocpp, opensc, openldap, openssl, pcsclite, qtbase, qttranslations, qtsvg }:
 
 stdenv.mkDerivation rec {
   name = "qdigidoc-${version}";
-  version = "3.13.6";
+  version = "4.1.0";
 
   src = fetchgit {
-    url = "https://github.com/open-eid/qdigidoc";
+    url = "https://github.com/open-eid/DigiDoc4-Client";
     rev = "v${version}";
-    sha256 = "1qq9fgvkc7fi37ly3kgxksrm4m5rxk9k5s5cig8z0cszsfk6h9lx";
+    sha256 = "1iry36h3pfnw2gqjnfhv53i2svybxj8jf18qh486djyai84hjr4d";
     fetchSubmodules = true;
   };
 
@@ -24,11 +24,6 @@ stdenv.mkDerivation rec {
       --replace $\{TSL_URL} file://${tsl}
   '';
 
-  patches = [
-    # https://github.com/open-eid/qdigidoc/pull/163
-    ./qt511.patch
-  ];
-
   buildInputs = [
     libdigidocpp
     opensc
@@ -36,11 +31,12 @@ stdenv.mkDerivation rec {
     openssl
     pcsclite
     qtbase
+    qtsvg
     qttranslations
   ];
 
   postInstall = ''
-    wrapProgram $out/bin/qdigidocclient \
+    wrapProgram $out/bin/qdigidoc4 \
       --prefix LD_LIBRARY_PATH : ${opensc}/lib/pkcs11/
   '';
 
diff --git a/pkgs/tools/security/qesteidutil/default.nix b/pkgs/tools/security/qesteidutil/default.nix
index 20135895d76..0f9502a7ac9 100644
--- a/pkgs/tools/security/qesteidutil/default.nix
+++ b/pkgs/tools/security/qesteidutil/default.nix
@@ -4,8 +4,7 @@
 }:
 
 stdenv.mkDerivation rec {
-
-  version = "3.12.10";
+  version = "2018-08-21";
   name = "qesteidutil-${version}";
 
   src = fetchFromGitHub {
@@ -13,19 +12,11 @@ stdenv.mkDerivation rec {
     repo = "qesteidutil";
     # TODO: Switch back to this after next release.
     #rev = "v${version}";
-    # We require the remove breakpad stuff
-    rev = "efdfe4c5521f68f206569e71e292a664bb9f46aa";
-    sha256 = "0zly83sdqsf9lxnfw4ir2a9vmmfba181rhsrz61ga2zzpm2wf0f0";
+    rev = "3bb65ef345aaa0d589b37a5d0d6f5772e95b0cd7";
+    sha256 = "13xsw5gh4svp9a5nxcqv72mymivr7w1cyjbv2l6yf96m45bsd9x4";
     fetchSubmodules = true;
   };
 
-  patches = [
-    (fetchpatch {
-      url = https://github.com/open-eid/qesteidutil/commit/868e8245f2481e29e1154e168ac92d32e93a5425.patch;
-      sha256 = "0pwrkd8inf0qaf7lcchmj558k6z34ah672zcb722aa5ybbif0lkn";
-    })
-  ];
-
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ cmake ccid qttools pcsclite qttranslations
                   hicolor-icon-theme
@@ -36,6 +27,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.id.ee/;
     license = licenses.lgpl2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.jagajaga ];
+    maintainers = with maintainers; [ jagajaga domenkozar ];
   };
 }
diff --git a/pkgs/tools/system/rsyslog/default.nix b/pkgs/tools/system/rsyslog/default.nix
index fa2d40949e5..91923e7e59b 100644
--- a/pkgs/tools/system/rsyslog/default.nix
+++ b/pkgs/tools/system/rsyslog/default.nix
@@ -11,11 +11,11 @@ let
   mkFlag = cond: name: if cond then "--enable-${name}" else "--disable-${name}";
 in
 stdenv.mkDerivation rec {
-  name = "rsyslog-8.38.0";
+  name = "rsyslog-8.39.0";
 
   src = fetchurl {
     url = "https://www.rsyslog.com/files/download/rsyslog/${name}.tar.gz";
-    sha256 = "0b52pcamj2g27zdg0szzk03kigm9lanj0v0w80alwy5fpk9qwcjd";
+    sha256 = "1d3ac448b8gj58vg7n99ffv2rvpnhhin1ni5vyby73aksvz9c7y7";
   };
 
   #patches = [ ./fix-gnutls-detection.patch ];
diff --git a/pkgs/tools/text/bcat/Gemfile.lock b/pkgs/tools/text/bcat/Gemfile.lock
index c39ebc27910..fa67e6e28db 100644
--- a/pkgs/tools/text/bcat/Gemfile.lock
+++ b/pkgs/tools/text/bcat/Gemfile.lock
@@ -3,7 +3,7 @@ GEM
   specs:
     bcat (0.6.2)
       rack (~> 1.0)
-    rack (1.6.8)
+    rack (1.6.11)
 
 PLATFORMS
   ruby
@@ -12,4 +12,4 @@ DEPENDENCIES
   bcat
 
 BUNDLED WITH
-   1.15.4
+   1.16.4
diff --git a/pkgs/tools/text/bcat/gemset.nix b/pkgs/tools/text/bcat/gemset.nix
index 0654e35399d..744c0e6e107 100644
--- a/pkgs/tools/text/bcat/gemset.nix
+++ b/pkgs/tools/text/bcat/gemset.nix
@@ -11,9 +11,9 @@
   rack = {
     source = {
       remotes = ["http://rubygems.org"];
-      sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
+      sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
       type = "gem";
     };
-    version = "1.6.8";
+    version = "1.6.11";
   };
 }
\ No newline at end of file
diff --git a/pkgs/tools/text/gucci/default.nix b/pkgs/tools/text/gucci/default.nix
new file mode 100644
index 00000000000..a04a2c65e7c
--- /dev/null
+++ b/pkgs/tools/text/gucci/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "gucci-${version}";
+  version = "0.1.0";
+
+  goPackagePath = "github.com/noqcks/gucci";
+
+  src = fetchFromGitHub {
+    owner = "noqcks";
+    repo = "gucci";
+    rev = version;
+    sha256 = "0ksrmzb3iggc7gm51fl0jbb15d0gmpclslpkq2sl2xjzk29pkllq";
+  };
+
+  goDeps = ./deps.nix;
+
+  buildFlagsArray = ''
+    -ldflags=-X main.AppVersion=${version}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A simple CLI templating tool written in golang";
+    homepage = https://github.com/noqcks/gucci;
+    license = licenses.mit;
+    maintainers = [ maintainers.braydenjw ];
+    platforms = platforms.unix;
+  };
+}
+
diff --git a/pkgs/tools/text/gucci/deps.nix b/pkgs/tools/text/gucci/deps.nix
new file mode 100644
index 00000000000..8e2cc5af3bf
--- /dev/null
+++ b/pkgs/tools/text/gucci/deps.nix
@@ -0,0 +1,30 @@
+[
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+  {
+    goPackagePath = "github.com/imdario/mergo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imdario/mergo";
+      rev = "v0.3.6";
+      sha256 = "1lbzy8p8wv439sqgf0n21q52flf2wbamp6qa1jkyv6an0nc952q7";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v1.20.0";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+]
+
diff --git a/pkgs/tools/typesetting/asciidoctor/Gemfile.lock b/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
index 04f9029e6e5..59e8fd06ef2 100644
--- a/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
+++ b/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
@@ -69,7 +69,7 @@ GEM
     public_suffix (3.0.3)
     pygments.rb (1.2.1)
       multi_json (>= 1.0.0)
-    rack (2.0.5)
+    rack (2.0.6)
     ruby-enum (0.7.2)
       i18n
     ruby-rc4 (0.1.5)
@@ -103,4 +103,4 @@ DEPENDENCIES
   pygments.rb
 
 BUNDLED WITH
-   1.14.6
+   1.16.4
diff --git a/pkgs/tools/typesetting/asciidoctor/gemset.nix b/pkgs/tools/typesetting/asciidoctor/gemset.nix
index 8b960fa3d93..034ab174e8a 100644
--- a/pkgs/tools/typesetting/asciidoctor/gemset.nix
+++ b/pkgs/tools/typesetting/asciidoctor/gemset.nix
@@ -307,14 +307,12 @@
     version = "1.2.1";
   };
   rack = {
-    groups = ["default"];
-    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "158hbn7rlc3czp2vivvam44dv6vmzz16qrh5dbzhfxbfsgiyrqw1";
+      sha256 = "1pcgv8dv4vkaczzlix8q3j68capwhk420cddzijwqgi2qb4lm1zm";
       type = "gem";
     };
-    version = "2.0.5";
+    version = "2.0.6";
   };
   ruby-enum = {
     dependencies = ["i18n"];
diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix
index 97dd885b778..fa582d4594c 100644
--- a/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, djvulibre, poppler, fontconfig, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.10";
+  version = "0.9.11";
   name = "pdf2djvu-${version}";
 
   src = fetchurl {
     url = "https://github.com/jwilk/pdf2djvu/releases/download/${version}/${name}.tar.xz";
-    sha256 = "026vgg4v6wsq8j091yxg3xzh5953kqg5cyay87y7yidnzn39livn";
+    sha256 = "1hscpm5lsqmiv1niwnq999wmcvj9wlajw8wd3diaaxcq207kvsvd";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/typesetting/scdoc/default.nix b/pkgs/tools/typesetting/scdoc/default.nix
index 5789f51abd9..a5bf2d261e1 100644
--- a/pkgs/tools/typesetting/scdoc/default.nix
+++ b/pkgs/tools/typesetting/scdoc/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0a9sxifzsbj24kjnpc0525i91ni2vkwizhgvwx1m9shvfkiisnc6";
   };
 
+  patches = [ ./use-source-date-epoch.patch ];
+
   postPatch = ''
     substituteInPlace Makefile \
       --replace "-static" "" \
diff --git a/pkgs/tools/typesetting/scdoc/use-source-date-epoch.patch b/pkgs/tools/typesetting/scdoc/use-source-date-epoch.patch
new file mode 100644
index 00000000000..5a2496d6358
--- /dev/null
+++ b/pkgs/tools/typesetting/scdoc/use-source-date-epoch.patch
@@ -0,0 +1,75 @@
+diff --git a/src/main.c b/src/main.c
+index 14b08d2..e2cc33e 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -3,6 +3,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#define __USE_XOPEN
+ #include <time.h>
+ #include <unistd.h>
+ #include "string.h"
+@@ -66,10 +67,17 @@ static void parse_preamble(struct parser *p) {
+ 	int section = -1;
+ 	uint32_t ch;
+ 	char date[256];
+-	time_t now;
+-	time(&now);
+-	struct tm *now_tm = localtime(&now);
+-	strftime(date, sizeof(date), "%F", now_tm);
++	char *source_date_epoch = getenv("SOURCE_DATE_EPOCH");
++	if (source_date_epoch != NULL) {
++		struct tm source_date_epoch_tm;
++		strptime(source_date_epoch, "%s", &source_date_epoch_tm);
++		strftime(date, sizeof(date), "%F", &source_date_epoch_tm);
++	} else {
++		time_t now;
++		time(&now);
++		struct tm *now_tm = localtime(&now);
++		strftime(date, sizeof(date), "%F", now_tm);
++	}
+ 	while ((ch = parser_getch(p)) != UTF8_INVALID) {
+ 		if ((ch < 0x80 && isalnum(ch)) || ch == '_' || ch == '-' || ch == '.') {
+ 			assert(str_append_ch(name, ch) != -1);
+diff --git a/test/preamble b/test/preamble
+index 03e2d0c..eeb734b 100755
+--- a/test/preamble
++++ b/test/preamble
+@@ -38,31 +38,31 @@ EOF
+ end 0
+ 
+ begin "Writes the appropriate header"
+-scdoc <<EOF | grep '^\.TH "test" "8" "'"$(date +'%F')"'"' >/dev/null
++scdoc <<EOF | grep '^\.TH "test" "8" "'"$(date +'%F' --date=@${SOURCE_DATE_EPOCH:-$(date +'%s')})"'"' >/dev/null
+ test(8)
+ EOF
+ end 0
+ 
+ begin "Preserves dashes"
+-scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F')"'"' >/dev/null
++scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F' --date=@${SOURCE_DATE_EPOCH:-$(date +'%s')})"'"' >/dev/null
+ test-manual(8)
+ EOF
+ end 0
+ 
+ begin "Handles extra footer field"
+-scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F')"'" "Footer"' >/dev/null
++scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F' --date=@${SOURCE_DATE_EPOCH:-$(date +'%s')})"'" "Footer"' >/dev/null
+ test-manual(8) "Footer"
+ EOF
+ end 0
+ 
+ begin "Handles both extra fields"
+-scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F')"'" "Footer" "Header"' >/dev/null
++scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F' --date=@${SOURCE_DATE_EPOCH:-$(date +'%s')})"'" "Footer" "Header"' >/dev/null
+ test-manual(8) "Footer" "Header"
+ EOF
+ end 0
+ 
+ begin "Emits empty footer correctly"
+-scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F')"'" "" "Header"' >/dev/null
++scdoc <<EOF | grep '^\.TH "test-manual" "8" "'"$(date +'%F' --date=@${SOURCE_DATE_EPOCH:-$(date +'%s')})"'" "" "Header"' >/dev/null
+ test-manual(8) "" "Header"
+ EOF
+ end 0
diff --git a/pkgs/tools/video/atomicparsley/default.nix b/pkgs/tools/video/atomicparsley/default.nix
index 701850758bc..74f4c562102 100644
--- a/pkgs/tools/video/atomicparsley/default.nix
+++ b/pkgs/tools/video/atomicparsley/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchhg, autoreconfHook, zlib, darwin }:
+{ stdenv, fetchhg, autoreconfHook, zlib, cf-private, Cocoa }:
 
 stdenv.mkDerivation rec {
   name = "atomicparsley-${version}";
@@ -9,10 +9,14 @@ stdenv.mkDerivation rec {
     sha256 = "05n4kbn91ps52h3wi1qb2jwygjsc01qzx4lgkv5mvwl5i49rj8fm";
   };
 
-  buildInputs =
-    [ autoreconfHook
-      zlib
-    ] ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
+  nativeBuildInputs = [ autoreconfHook ];
+
+  buildInputs = [ zlib ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [
+      Cocoa
+      # Needed for OBJC_CLASS_$_NSDictionary symbols.
+      cf-private
+    ];
 
   installPhase = "install -D AtomicParsley $out/bin/AtomicParsley";
 
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 8f5e866ede5..817200fdd7c 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -59,6 +59,7 @@ mapAliases ({
   cantarell_fonts = cantarell-fonts; # added 2018-03-03
   checkbashism = checkbashisms; # added 2016-08-16
   cifs_utils = cifs-utils; # added 2016-08
+  ckb = ckb-next; # added 2018-10-21
   clangAnalyzer = clang-analyzer;  # added 2015-02-20
   clawsMail = claws-mail; # added 2016-04-29
   clutter_gtk = clutter-gtk; # added 2018-02-25
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0322dba425e..4c8a689d1db 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -71,6 +71,26 @@ with pkgs;
 
   common-updater-scripts = callPackage ../common-updater/scripts.nix { };
 
+  ### Push NixOS tests inside the fixed point
+
+  nixosTests =
+    let
+      # TODO(Ericson2314,ekleog): Check this will work correctly with cross-
+      system = builtins.currentSystem;
+      rawTests = (import ../../nixos/release.nix {
+        nixpkgs = pkgs;
+      }).tests;
+      testNames = builtins.attrNames rawTests;
+      filteredList = builtins.filter
+        (test: rawTests.${test} ? ${system})
+        testNames;
+      finalList = map
+        (test: { name = test; value = rawTests.${test}.${system}; })
+        filteredList;
+      finalTests = builtins.listToAttrs finalList;
+    in
+    finalTests;
+
   ### BUILD SUPPORT
 
   autoreconfHook = makeSetupHook
@@ -122,10 +142,14 @@ with pkgs;
     inherit dhall-nix;
   };
 
+  deadcode = callPackage ../development/tools/deadcode { };
+
   diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins;
 
   dieHook = makeSetupHook {} ../build-support/setup-hooks/die.sh;
 
+  archiver = callPackage ../applications/misc/archiver { };
+
   digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox { };
 
   dockerTools = callPackage ../build-support/docker { };
@@ -571,7 +595,10 @@ with pkgs;
     gsl = gsl_1;
   };
 
-  atomicparsley = callPackage ../tools/video/atomicparsley { };
+  atomicparsley = callPackage ../tools/video/atomicparsley {
+    inherit (darwin) cf-private;
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
+  };
 
   autoflake = callPackage ../development/tools/analysis/autoflake { };
 
@@ -657,6 +684,8 @@ with pkgs;
 
   cconv = callPackage ../tools/text/cconv { };
 
+  go-check = callPackage ../development/tools/check { };
+
   chkcrontab = callPackage ../tools/admin/chkcrontab { };
 
   cozy = callPackage ../applications/audio/cozy-audiobooks { };
@@ -698,6 +727,8 @@ with pkgs;
 
   gitter = callPackage  ../applications/networking/instant-messengers/gitter { };
 
+  gucci = callPackage ../tools/text/gucci { };
+
   grc = callPackage ../tools/misc/grc { };
 
   green-pdfviewer = callPackage ../applications/misc/green-pdfviewer {
@@ -801,6 +832,8 @@ with pkgs;
   };
   aria = aria2;
 
+  asmfmt = callPackage ../development/tools/asmfmt { };
+
   aspcud = callPackage ../tools/misc/aspcud { };
 
   at = callPackage ../tools/system/at { };
@@ -1032,7 +1065,7 @@ with pkgs;
 
   cue2pops = callPackage ../tools/cd-dvd/cue2pops { };
 
-  cabal2nix = haskell.lib.overrideCabal (haskell.lib.addOptparseApplicativeCompletionScripts "cabal2nix" haskellPackages.cabal2nix) (drv: {
+  cabal2nix = haskell.lib.overrideCabal (haskell.lib.generateOptparseApplicativeCompletion "cabal2nix" haskellPackages.cabal2nix) (drv: {
     isLibrary = false;
     enableSharedExecutables = false;
     executableToolDepends = (drv.executableToolDepends or []) ++ [ makeWrapper ];
@@ -1167,6 +1200,7 @@ with pkgs;
   codec2 = callPackage ../development/libraries/codec2 { };
 
   contacts = callPackage ../tools/misc/contacts {
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) Foundation AddressBook;
   };
 
@@ -1309,6 +1343,8 @@ with pkgs;
 
   envsubst = callPackage ../tools/misc/envsubst { };
 
+  errcheck = callPackage ../development/tools/errcheck { };
+
   eschalot = callPackage ../tools/security/eschalot { };
 
   esptool = callPackage ../tools/misc/esptool { };
@@ -2000,7 +2036,7 @@ with pkgs;
 
   checkbashisms = callPackage ../development/tools/misc/checkbashisms { };
 
-  ckb = libsForQt5.callPackage ../tools/misc/ckb { };
+  ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { };
 
   clamav = callPackage ../tools/security/clamav { };
 
@@ -3030,6 +3066,8 @@ with pkgs;
 
   groonga = callPackage ../servers/search/groonga { };
 
+  grpcurl = callPackage ../tools/networking/grpcurl { };
+
   grub = pkgsi686Linux.callPackage ../tools/misc/grub {
     buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true;
     stdenv = overrideCC stdenv pkgsi686Linux.gcc6;
@@ -3409,6 +3447,8 @@ with pkgs;
 
   ip2location = callPackage ../tools/networking/ip2location { };
 
+  ip2unix = callPackage ../tools/networking/ip2unix { };
+
   ipad_charge = callPackage ../tools/misc/ipad_charge { };
 
   iperf2 = callPackage ../tools/networking/iperf/2.nix { };
@@ -3554,6 +3594,8 @@ with pkgs;
 
   kexectools = callPackage ../os-specific/linux/kexectools { };
 
+  kexpand = callPackage ../development/tools/kexpand { };
+
   keybase = callPackage ../tools/security/keybase {
     # Reasoning for the inherited apple_sdk.frameworks:
     # 1. specific compiler errors about: AVFoundation, AudioToolbox, MediaToolbox
@@ -4742,6 +4784,8 @@ with pkgs;
 
   pg_top = callPackage ../tools/misc/pg_top { };
 
+  pgmetrics = callPackage ../tools/misc/pgmetrics { };
+
   pdsh = callPackage ../tools/networking/pdsh {
     rsh = true;          # enable internal rsh implementation
     ssh = openssh;
@@ -4778,6 +4822,7 @@ with pkgs;
   };
 
   pinentry_mac = callPackage ../tools/security/pinentry/mac.nix {
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) Cocoa;
   };
 
@@ -4963,10 +5008,6 @@ with pkgs;
   esteidfirefoxplugin = callPackage ../applications/networking/browsers/mozilla-plugins/esteidfirefoxplugin { };
 
 
-  qgifer = callPackage ../applications/video/qgifer {
-    giflib = giflib_4_1;
-  };
-
   qhull = callPackage ../development/libraries/qhull { };
 
   qjoypad = callPackage ../tools/misc/qjoypad { };
@@ -5089,6 +5130,8 @@ with pkgs;
 
   recoverjpeg = callPackage ../tools/misc/recoverjpeg { };
 
+  reftools = callPackage ../development/tools/reftools { };
+
   reposurgeon = callPackage ../applications/version-management/reposurgeon { };
 
   reptyr = callPackage ../os-specific/linux/reptyr {};
@@ -5960,7 +6003,9 @@ with pkgs;
 
   wal_e = callPackage ../tools/backup/wal-e { };
 
-  watchexec = callPackage ../tools/misc/watchexec { };
+  watchexec = callPackage ../tools/misc/watchexec {
+    inherit (darwin.apple_sdk.frameworks) CoreServices CoreFoundation;
+  };
 
   watchman = callPackage ../development/tools/watchman {
     inherit (darwin.apple_sdk.frameworks) CoreServices;
@@ -6456,9 +6501,12 @@ with pkgs;
     then callPackage adoptopenjdk-bin-11-packages-linux.jre-hotspot {}
     else callPackage adoptopenjdk-bin-11-packages-darwin.jre-hotspot {};
 
-  # no OpenJ9 for Darwin
-  adoptopenjdk-openj9-bin-11 = callPackage adoptopenjdk-bin-11-packages-linux.jdk-openj9 {};
-  adoptopenjdk-jre-openj9-bin-11 = callPackage adoptopenjdk-bin-11-packages-linux.jre-openj9 {};
+  adoptopenjdk-openj9-bin-11 = if stdenv.isLinux
+    then callPackage adoptopenjdk-bin-11-packages-linux.jdk-openj9 {}
+    else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-openj9 {};
+  adoptopenjdk-jre-openj9-bin-11 = if stdenv.isLinux
+    then callPackage adoptopenjdk-bin-11-packages-linux.jre-openj9 {}
+    else callPackage adoptopenjdk-bin-11-packages-darwin.jre-openj9 {};
 
   adoptopenjdk-bin = adoptopenjdk-hotspot-bin-11;
   adoptopenjdk-jre-bin = adoptopenjdk-jre-hotspot-bin-11;
@@ -6936,6 +6984,10 @@ with pkgs;
 
   go-junit-report = callPackage ../development/tools/go-junit-report { };
 
+  gogetdoc = callPackage ../development/tools/gogetdoc { };
+
+  gometalinter = callPackage ../development/tools/gometalinter { };
+
   gox = callPackage ../development/tools/gox { };
 
   gprolog = callPackage ../development/compilers/gprolog { };
@@ -7270,7 +7322,7 @@ with pkgs;
 
   metaocaml_3_09 = callPackage ../development/compilers/ocaml/metaocaml-3.09.nix { };
 
-  ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml-104.nix { };
+  ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml.nix { };
 
   ocaml_make = callPackage ../development/ocaml-modules/ocamlmake { };
 
@@ -7544,6 +7596,8 @@ with pkgs;
 
   dhall-text = haskell.lib.justStaticExecutables haskellPackages.dhall-text;
 
+  dhallPackages = import ../development/dhall-modules { inherit pkgs; };
+
   duktape = callPackage ../development/interpreters/duktape { };
 
   beam = callPackage ./beam-packages.nix { };
@@ -7767,7 +7821,6 @@ with pkgs;
   python2Full = python2.override{x11Support=true;};
   python27Full = python27.override{x11Support=true;};
   python3Full = python3.override{x11Support=true;};
-  python34Full = python34.override{x11Support=true;};
   python35Full = python35.override{x11Support=true;};
   python36Full = python36.override{x11Support=true;};
   python37Full = python37.override{x11Support=true;};
@@ -7781,10 +7834,6 @@ with pkgs;
     self = python27;
     inherit (darwin) CF configd;
   };
-  python34 = callPackage ../development/interpreters/python/cpython/3.4 {
-    inherit (darwin) CF configd;
-    self = python34;
-  };
   python35 = callPackage ../development/interpreters/python/cpython/3.5 {
     inherit (darwin) CF configd;
     self = python35;
@@ -7806,7 +7855,6 @@ with pkgs;
 
   # Python package sets.
   python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs);
-  python34Packages = python34.pkgs;
   python35Packages = python35.pkgs;
   python36Packages = python36.pkgs;
   python37Packages = recurseIntoAttrs python37.pkgs;
@@ -9028,6 +9076,8 @@ with pkgs;
 
   acl = callPackage ../development/libraries/acl { };
 
+  acsccid = callPackage ../tools/security/acsccid { };
+
   activemq = callPackage ../development/libraries/apache-activemq { };
 
   adns = callPackage ../development/libraries/adns { };
@@ -10128,6 +10178,8 @@ with pkgs;
 
   imlibsetroot = callPackage ../applications/graphics/imlibsetroot { libXinerama = xorg.libXinerama; } ;
 
+  ineffassign = callPackage ../development/tools/ineffassign { };
+
   ijs = callPackage ../development/libraries/ijs { };
 
   incrtcl = callPackage ../development/libraries/incrtcl { };
@@ -10983,6 +11035,8 @@ with pkgs;
 
   libosip_3 = callPackage ../development/libraries/osip/3.nix {};
 
+  libosmium = callPackage ../development/libraries/libosmium { };
+
   libosmocore = callPackage ../applications/misc/libosmocore { };
 
   libosmpbf = callPackage ../development/libraries/libosmpbf {};
@@ -11132,6 +11186,8 @@ with pkgs;
   giflib_4_1 = callPackage ../development/libraries/giflib/4.1.nix { };
   giflib_5_1 = callPackage ../development/libraries/giflib/5.1.nix { };
 
+  libunarr = callPackage ../development/libraries/libunarr { };
+
   libungif = callPackage ../development/libraries/giflib/libungif.nix { };
 
   libunibreak = callPackage ../development/libraries/libunibreak { };
@@ -11694,7 +11750,9 @@ with pkgs;
   pgroonga = callPackage ../servers/sql/postgresql/pgroonga {};
 
   plv8 = callPackage ../servers/sql/postgresql/plv8 {
-    v8 = v8_6_x;
+    v8 = callPackage ../development/libraries/v8/plv8_6_x.nix {
+      inherit (python2Packages) python;
+    };
   };
 
   phonon = callPackage ../development/libraries/phonon {};
@@ -11782,6 +11840,8 @@ with pkgs;
 
   protobufc = callPackage ../development/libraries/protobufc/1.3.nix { };
 
+  protozero = callPackage ../development/libraries/protozero { };
+
   flatbuffers = callPackage ../development/libraries/flatbuffers { };
 
   gnupth = callPackage ../development/libraries/pth { };
@@ -11795,7 +11855,7 @@ with pkgs;
 
   re2 = callPackage ../development/libraries/re2 { };
 
-  qbs = callPackage ../development/tools/build-managers/qbs { };
+  qbs = libsForQt5.callPackage ../development/tools/build-managers/qbs { };
 
   qca2 = callPackage ../development/libraries/qca2 { qt = qt4; };
   qca2-qt5 = qca2.override { qt = qt5.qtbase; };
@@ -12122,10 +12182,7 @@ with pkgs;
   schroedinger = callPackage ../development/libraries/schroedinger { };
 
   SDL = callPackage ../development/libraries/SDL {
-    openglSupport = libGLSupported;
-    alsaSupport = stdenv.isLinux;
-    x11Support = !stdenv.isCygwin;
-    pulseaudioSupport = config.pulseaudio or stdenv.isLinux;
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) OpenGL CoreAudio CoreServices AudioUnit Kernel Cocoa;
   };
 
@@ -12146,12 +12203,7 @@ with pkgs;
   SDL_ttf = callPackage ../development/libraries/SDL_ttf { };
 
   SDL2 = callPackage ../development/libraries/SDL2 {
-    openglSupport = libGLSupported;
-    alsaSupport = stdenv.isLinux;
-    x11Support = !stdenv.isCygwin;
-    waylandSupport = stdenv.isLinux;
-    udevSupport = stdenv.isLinux;
-    pulseaudioSupport = config.pulseaudio or stdenv.isLinux;
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL;
   };
 
@@ -12370,6 +12422,8 @@ with pkgs;
     ncurses = null;
   });
 
+  standardnotes = callPackage ../applications/editors/standardnotes { };
+
   stfl = callPackage ../development/libraries/stfl { };
 
   stlink = callPackage ../development/tools/misc/stlink { };
@@ -12519,6 +12573,8 @@ with pkgs;
     vala = vala_0_40;
   };
 
+  unconvert = callPackage ../development/tools/unconvert { };
+
   unibilium = callPackage ../development/libraries/unibilium { };
 
   unicap = callPackage ../development/libraries/unicap {};
@@ -13847,10 +13903,14 @@ with pkgs;
 
   xqilla = callPackage ../development/tools/xqilla { };
 
-  xquartz = callPackage ../servers/x11/xquartz { };
+  xquartz = callPackage ../servers/x11/xquartz {
+    inherit (darwin) cf-private;
+  };
+
   quartz-wm = callPackage ../servers/x11/quartz-wm {
     stdenv = clangStdenv;
-    inherit (darwin.apple_sdk.frameworks) AppKit;
+    inherit (darwin) cf-private;
+    inherit (darwin.apple_sdk.frameworks) AppKit Foundation;
     inherit (darwin.apple_sdk.libs) Xplugin;
   };
 
@@ -13859,7 +13919,9 @@ with pkgs;
   # have created a cycle.
   xorg = recurseIntoAttrs ((lib.callPackageWith __splicedPackages ../servers/x11/xorg {
   }).overrideScope' (lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix {
-    inherit (darwin) apple_sdk;
+    inherit (darwin) cf-private;
+    inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa;
+    inherit (darwin.apple_sdk.libs) Xplugin;
     bootstrap_cmds = if stdenv.isDarwin then darwin.bootstrap_cmds else null;
     python = python2; # Incompatible with Python 3x
     udev = if stdenv.isLinux then udev else null;
@@ -13988,6 +14050,8 @@ with pkgs;
 
   cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { };
 
+  cpuset = callPackage ../os-specific/linux/cpuset { };
+
   criu = callPackage ../os-specific/linux/criu { };
 
   cryptsetup = callPackage ../os-specific/linux/cryptsetup { };
@@ -14269,11 +14333,6 @@ with pkgs;
         # when adding a new linux version
         kernelPatches.cpu-cgroup-v2."4.11"
         kernelPatches.modinst_arg_list_too_long
-        # https://github.com/NixOS/nixpkgs/issues/42755
-        # Remove these xen-netfront patches once they're included in
-        # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755
-        kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock
-        kernelPatches.xen-netfront_update_features_after_registering_netdev
       ];
   };
 
@@ -14311,24 +14370,6 @@ with pkgs;
       ];
   };
 
-  linux_riscv = callPackage ../os-specific/linux/kernel/linux-riscv.nix {
-    kernelPatches = [
-      kernelPatches.bridge_stp_helper
-      kernelPatches.modinst_arg_list_too_long
-    ];
-  };
-
-  linux_samus_4_12 = callPackage ../os-specific/linux/kernel/linux-samus-4.12.nix {
-    kernelPatches =
-      [ kernelPatches.bridge_stp_helper
-        kernelPatches.p9_fixes
-        # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md
-        # when adding a new linux version
-        kernelPatches.cpu-cgroup-v2."4.11"
-        kernelPatches.modinst_arg_list_too_long
-      ];
-  };
-
   linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix {
     kernelPatches = [
       kernelPatches.bridge_stp_helper
@@ -14556,11 +14597,6 @@ with pkgs;
 
   linuxPackages_latest_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor (pkgs.linux_latest.override { features.xen_dom0=true; }));
 
-  # Samus kernels
-  linuxPackages_samus_4_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_samus_4_12);
-  linuxPackages_samus_latest = linuxPackages_samus_4_12;
-  linux_samus_latest = linuxPackages_samus_latest.kernel;
-
   # Hardkernel (Odroid) kernels.
   linuxPackages_hardkernel_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_hardkernel_4_14);
   linuxPackages_hardkernel_latest = linuxPackages_hardkernel_4_14;
@@ -14689,19 +14725,24 @@ with pkgs;
 
   easyjson = callPackage ../development/tools/easyjson { };
 
+  iferr = callPackage ../development/tools/iferr { };
+
   go-bindata = callPackage ../development/tools/go-bindata { };
 
   go-bindata-assetfs = callPackage ../development/tools/go-bindata-assetfs { };
 
   go-protobuf = callPackage ../development/tools/go-protobuf { };
 
-
   go-symbols = callPackage ../development/tools/go-symbols { };
 
   go-outline = callPackage ../development/tools/go-outline { };
 
   gocode = callPackage ../development/tools/gocode { };
 
+  gocode-gomod = callPackage ../development/tools/gocode-gomod { };
+
+  goconst = callPackage ../development/tools/goconst { };
+
   goconvey = callPackage ../development/tools/goconvey { };
 
   gotags = callPackage ../development/tools/gotags { };
@@ -14710,14 +14751,20 @@ with pkgs;
 
   golangci-lint = callPackage ../development/tools/golangci-lint { };
 
+  gocyclo = callPackage ../development/tools/gocyclo { };
+
   godef = callPackage ../development/tools/godef { };
 
   gopkgs = callPackage ../development/tools/gopkgs { };
 
+  gosec = callPackage ../development/tools/gosec { };
+
   govers = callPackage ../development/tools/govers { };
 
   govendor = callPackage ../development/tools/govendor { };
 
+  go-tools = callPackage ../development/tools/go-tools { };
+
   gotools = callPackage ../development/tools/gotools { };
 
   gotop = callPackage ../tools/system/gotop { };
@@ -14730,6 +14777,8 @@ with pkgs;
 
   gotests = callPackage ../development/tools/gotests { };
 
+  impl = callPackage ../development/tools/impl { };
+
   quicktemplate = callPackage ../development/tools/quicktemplate { };
 
   gogoclient = callPackage ../os-specific/linux/gogoclient { };
@@ -15493,6 +15542,10 @@ with pkgs;
 
   hasklig = callPackage ../data/fonts/hasklig {};
 
+  interfacer = callPackage ../development/tools/interfacer { };
+
+  maligned = callPackage ../development/tools/maligned { };
+
   inter-ui = callPackage ../data/fonts/inter-ui { };
 
   siji = callPackage ../data/fonts/siji { };
@@ -16195,10 +16248,10 @@ with pkgs;
   };
 
   inherit (callPackage ../applications/virtualization/docker {})
-    docker_18_06;
+    docker_18_09;
 
-  docker = docker_18_06;
-  docker-edge = docker_18_06;
+  docker = docker_18_09;
+  docker-edge = docker_18_09;
 
   docker-proxy = callPackage ../applications/virtualization/docker/proxy.nix { };
 
@@ -16313,6 +16366,7 @@ with pkgs;
     imagemagick = null;
     acl = null;
     gpm = null;
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) AppKit GSS ImageIO;
   };
 
@@ -17620,6 +17674,7 @@ with pkgs;
   librecad = callPackage ../applications/misc/librecad { };
 
   libreoffice = hiPrio libreoffice-still;
+  libreoffice-unwrapped = libreoffice.libreoffice;
 
   libreoffice-args = {
     inherit (perlPackages) ArchiveZip IOCompress;
@@ -17641,21 +17696,20 @@ with pkgs;
     };
   };
 
-  libreoffice-unwrapped = callPackage ../applications/office/libreoffice
-  (libreoffice-args // {
-  });
-  libreoffice-still-unwrapped = callPackage ../applications/office/libreoffice/still.nix
-  (libreoffice-args // {
-      poppler = poppler_0_61;
-  });
-
   libreoffice-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
-    libreoffice = libreoffice-unwrapped;
+    libreoffice = callPackage ../applications/office/libreoffice
+      (libreoffice-args // {
+      });
   });
+  libreoffice-fresh-unwrapped = libreoffice-fresh.libreoffice;
 
   libreoffice-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
-    libreoffice = libreoffice-still-unwrapped;
+    libreoffice = callPackage ../applications/office/libreoffice/still.nix
+      (libreoffice-args // {
+          poppler = poppler_0_61;
+      });
   });
+  libreoffice-still-unwrapped = libreoffice-still.libreoffice;
 
   libvmi = callPackage ../development/libraries/libvmi { };
 
@@ -18307,6 +18361,8 @@ with pkgs;
 
   osmctools = callPackage ../applications/misc/osmctools { };
 
+  osmium-tool = callPackage ../applications/misc/osmium-tool { };
+
   owamp = callPackage ../applications/networking/owamp { };
 
   vivaldi = callPackage ../applications/networking/browsers/vivaldi {};
@@ -18478,6 +18534,8 @@ with pkgs;
 
   pmenu = callPackage ../applications/misc/pmenu { };
 
+  polar-bookshelf = callPackage ../applications/misc/polar-bookshelf { };
+
   poezio = python3Packages.poezio;
 
   pommed = callPackage ../os-specific/linux/pommed {};
@@ -18753,6 +18811,10 @@ with pkgs;
   rstudio = libsForQt5.callPackage ../applications/editors/rstudio {
     boost = boost166;
   };
+  rstudio-preview = libsForQt5.callPackage ../applications/editors/rstudio/preview.nix {
+    boost = boost166;
+    llvmPackages = llvmPackages_7;
+  };
 
   rsync = callPackage ../applications/networking/sync/rsync {
     enableACLs = !(stdenv.isDarwin || stdenv.isSunOS || stdenv.isFreeBSD);
@@ -18960,6 +19022,8 @@ with pkgs;
 
   lightdm-mini-greeter = callPackage ../applications/display-managers/lightdm-mini-greeter { };
 
+  ly = callPackage ../applications/display-managers/ly { };
+
   slic3r = callPackage ../applications/misc/slic3r { };
 
   slic3r-prusa3d = callPackage ../applications/misc/slic3r/prusa3d.nix { };
@@ -19087,9 +19151,9 @@ with pkgs;
       saslSupport = false;
       sasl = cyrus_sasl;
     })
-    subversion18 subversion19 subversion_1_10;
+    subversion18 subversion19 subversion_1_10 subversion_1_11;
 
-  subversion = subversion_1_10;
+  subversion = subversion_1_11;
 
   subversionClient = appendToName "client" (pkgs.subversion.override {
     bdbSupport = false;
@@ -19381,6 +19445,7 @@ with pkgs;
   };
 
   vim = callPackage ../applications/editors/vim {
+    inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
   };
 
@@ -21348,9 +21413,7 @@ with pkgs;
 
   abella = callPackage ../applications/science/logic/abella {};
 
-  acgtk = callPackage ../applications/science/logic/acgtk {
-    ocamlPackages = ocaml-ng.ocamlPackages_4_05;
-  };
+  acgtk = callPackage ../applications/science/logic/acgtk {};
 
   alt-ergo = callPackage ../applications/science/logic/alt-ergo {};
 
@@ -22044,8 +22107,6 @@ with pkgs;
     lilypond = lilypond-unstable;
   };
 
-  lollypop-portal = callPackage ../misc/lollypop-portal { };
-
   openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { };
 
   mailcore2 = callPackage ../development/libraries/mailcore2 {
@@ -22092,38 +22153,56 @@ with pkgs;
 
   nixops-dns = callPackage ../tools/package-management/nixops/nixops-dns.nix { };
 
-  /*
-   * Evaluate a NixOS configuration using this evaluation of Nixpkgs.
-   *
-   * With this function you can write, for example, a package that
-   * depends on a custom virtual machine image.
-   *
-   * Parameter: A module, path or list of those that represent the
-   *            configuration of the NixOS system to be constructed.
-   *
-   * Result:    An attribute set containing packages produced by this
-   *            evaluation of NixOS, such as toplevel, kernel and
-   *            initialRamdisk.
-   *            The result can be extended in the modules by defining
-   *            extra options in system.build.
-   *
-   * Unlike in plain NixOS, the nixpkgs.config, nixpkgs.overlays and
-   * nixpkgs.system options will be ignored by default. Instead,
-   * nixpkgs.pkgs will have the default value of pkgs as it was
-   * constructed right after invoking the nixpkgs function (e.g. the
-   * value of import <nixpkgs> { overlays = [./my-overlay.nix]; }
-   * but not the value of (import <nixpkgs> {} // { extra = ...; }).
-   *
-   * If you do want to use the config.nixpkgs options, you are
-   * probably better off by calling nixos/lib/eval-config.nix
-   * directly, even though it is possible to set config.nixpkgs.pkgs.
-   *
-   * For more information about writing NixOS modules, see
-   * https://nixos.org/nixos/manual/index.html#sec-writing-modules
-   *
-   * Note that you will need to have called Nixpkgs with the system
-   * parameter set to the right value for your deployment target.
-   */
+  /* Evaluate a NixOS configuration using this evaluation of Nixpkgs.
+
+     With this function you can write, for example, a package that
+     depends on a custom virtual machine image.
+
+     Parameter: A module, path or list of those that represent the
+                configuration of the NixOS system to be constructed.
+
+     Result:    An attribute set containing packages produced by this
+                evaluation of NixOS, such as toplevel, kernel and
+                initialRamdisk.
+                The result can be extended in the modules by defining
+                extra attributes in system.build.
+
+     Example:
+
+         let
+           myOS = pkgs.nixos ({ lib, pkgs, config, ... }: {
+
+             config.services.nginx = {
+               enable = true;
+               # ...
+             };
+
+             # Use config.system.build to exports relevant parts of a
+             # configuration. The runner attribute should not be
+             # considered a fully general replacement for systemd
+             # functionality.
+             config.system.build.run-nginx = config.systemd.services.nginx.runner;
+           });
+         in
+           myOS.run-nginx
+
+     Unlike in plain NixOS, the nixpkgs.config, nixpkgs.overlays and
+     nixpkgs.system options will be ignored by default. Instead,
+     nixpkgs.pkgs will have the default value of pkgs as it was
+     constructed right after invoking the nixpkgs function (e.g. the
+     value of import <nixpkgs> { overlays = [./my-overlay.nix]; }
+     but not the value of (import <nixpkgs> {} // { extra = ...; }).
+
+     If you do want to use the config.nixpkgs options, you are
+     probably better off by calling nixos/lib/eval-config.nix
+     directly, even though it is possible to set config.nixpkgs.pkgs.
+
+     For more information about writing NixOS modules, see
+     https://nixos.org/nixos/manual/index.html#sec-writing-modules
+
+     Note that you will need to have called Nixpkgs with the system
+     parameter set to the right value for your deployment target.
+  */
   nixos = configuration:
     (import (self.path + "/nixos/lib/eval-config.nix") {
       inherit (pkgs.stdenv.hostPlatform) system;
@@ -22641,6 +22720,8 @@ with pkgs;
     openal = null;
   };
 
+  yacreader = libsForQt5.callPackage ../applications/graphics/yacreader { };
+
   yadm = callPackage ../applications/version-management/yadm { };
 
   yamdi = callPackage ../tools/video/yamdi { };
@@ -22760,6 +22841,8 @@ with pkgs;
 
   chrome-gnome-shell = callPackage  ../desktops/gnome-3/extensions/chrome-gnome-shell {};
 
+  chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing {};
+
   NSPlist = callPackage ../development/libraries/NSPlist {};
 
   PlistCpp = callPackage ../development/libraries/PlistCpp {};
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index 3ba90f3b594..2084140c3fd 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -48,9 +48,18 @@ let
 
 in rec {
 
+  /* The function `mkCoqPackages` takes as input a derivation for Coq and produces
+   * a set of libraries built with that specific Coq. More libraries are known to
+   * this function than what is compatible with that version of Coq. Therefore,
+   * libraries that are not known to be compatible are removed (filtered out) from
+   * the resulting set. For meta-programming purposes (inpecting the derivations
+   * rather than building the libraries) this filtering can be disabled by setting
+   * a `dontFilter` attribute into the Coq derivation.
+   */
   mkCoqPackages = coq:
     let self = mkCoqPackages' self coq; in
-    filterCoqPackages coq self;
+    if coq.dontFilter or false then self
+    else filterCoqPackages coq self;
 
   coq_8_5 = callPackage ../applications/science/logic/coq {
     ocamlPackages = ocamlPackages_4_05;
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 13250ea8814..80dd1a04e73 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -5,8 +5,8 @@
 let
   # These are attributes in compiler and packages that don't support integer-simple.
   integerSimpleExcludes = [
-    "ghc7103Binary"
     "ghc821Binary"
+    "ghc844"
     "ghcjs"
     "ghcjs82"
     "ghcjs84"
@@ -42,7 +42,6 @@ in {
 
   compiler = {
 
-    ghc7103Binary = callPackage ../development/compilers/ghc/7.10.3-binary.nix { };
     ghc821Binary = callPackage ../development/compilers/ghc/8.2.1-binary.nix { };
 
     ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix {
@@ -61,6 +60,11 @@ in {
       buildLlvmPackages = buildPackages.llvmPackages_6;
       llvmPackages = pkgs.llvmPackages_6;
     };
+    ghc862 = callPackage ../development/compilers/ghc/8.6.2.nix {
+      bootPkgs = packages.ghc822;
+      buildLlvmPackages = buildPackages.llvmPackages_6;
+      llvmPackages = pkgs.llvmPackages_6;
+    };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
       bootPkgs = packages.ghc821Binary;
       buildLlvmPackages = buildPackages.llvmPackages_5;
@@ -96,12 +100,6 @@ in {
   # Always get compilers from `buildPackages`
   packages = let bh = buildPackages.haskell; in {
 
-    ghc7103Binary = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc7103Binary;
-      ghc = bh.compiler.ghc7103Binary;
-      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { };
-      packageSetConfig = bootstrapPackageSet;
-    };
     ghc821Binary = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghc821Binary;
       ghc = bh.compiler.ghc821Binary;
@@ -113,11 +111,6 @@ in {
       ghc = bh.compiler.ghc822;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { };
     };
-    ghc843 = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc843;
-      ghc = bh.compiler.ghc843;
-      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
-    };
     ghc844 = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghc844;
       ghc = bh.compiler.ghc844;
@@ -128,6 +121,11 @@ in {
       ghc = bh.compiler.ghc861;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
     };
+    ghc862 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc862;
+      ghc = bh.compiler.ghc862;
+      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
+    };
     ghcHEAD = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghcHEAD;
       ghc = bh.compiler.ghcHEAD;
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 2f6992e1c9a..1d0c1491436 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -17,6 +17,8 @@ let
 
     buildOcaml = callPackage ../build-support/ocaml { };
 
+    buildDunePackage = callPackage ../build-support/ocaml/dune.nix {};
+
     alcotest = callPackage ../development/ocaml-modules/alcotest {};
 
     angstrom = callPackage ../development/ocaml-modules/angstrom { };
@@ -735,6 +737,8 @@ let
 
     vg = callPackage ../development/ocaml-modules/vg { };
 
+    visitors = callPackage ../development/ocaml-modules/visitors { };
+
     wasm = callPackage ../development/ocaml-modules/wasm { };
 
     wtf8 = callPackage ../development/ocaml-modules/wtf8 { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 831345bcec9..2ec753531e4 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -166,6 +166,10 @@ in {
 
   agate-dbf = callPackage ../development/python-modules/agate-dbf { };
 
+  alerta = callPackage ../development/python-modules/alerta { };
+
+  alerta-server = callPackage ../development/python-modules/alerta-server { };
+
   phonenumbers = callPackage ../development/python-modules/phonenumbers { };
 
   agate-excel = callPackage ../development/python-modules/agate-excel { };
@@ -202,6 +206,8 @@ in {
 
   autograd = callPackage ../development/python-modules/autograd { };
 
+  autologging = callPackage ../development/python-modules/autologging { };
+
   automat = callPackage ../development/python-modules/automat { };
 
   awkward = callPackage ../development/python-modules/awkward { };
@@ -660,8 +666,12 @@ in {
 
   slicerator = callPackage ../development/python-modules/slicerator { };
 
+  snapcast = callPackage ../development/python-modules/snapcast { };
+
   spglib = callPackage ../development/python-modules/spglib { };
 
+  sslib = callPackage ../development/python-modules/sslib { };
+
   statistics = callPackage ../development/python-modules/statistics { };
 
   sumo = callPackage ../development/python-modules/sumo { };
@@ -1646,6 +1656,8 @@ in {
     inherit (pkgs.gitAndTools) git-annex;
   };
 
+  python-gitlab = callPackage ../development/python-modules/python-gitlab { };
+
   google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk { };
   google-cloud-sdk-gce = callPackage ../tools/admin/google-cloud-sdk { with-gce=true; };
 
@@ -2458,6 +2470,8 @@ in {
 
   html5lib = callPackage ../development/python-modules/html5lib { };
 
+  httmock = callPackage ../development/python-modules/httmock { };
+
   http_signature = callPackage ../development/python-modules/http_signature { };
 
   httpbin = callPackage ../development/python-modules/httpbin { };
@@ -3613,6 +3627,8 @@ in {
 
   isodate = callPackage ../development/python-modules/isodate { };
 
+  owslib = callPackage ../development/python-modules/owslib { };
+
   resampy = callPackage ../development/python-modules/resampy { };
 
   restructuredtext_lint = callPackage ../development/python-modules/restructuredtext_lint { };
diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix
index ac11de698b5..957de2dcc30 100644
--- a/pkgs/top-level/release-lib.nix
+++ b/pkgs/top-level/release-lib.nix
@@ -48,7 +48,7 @@ rec {
       else if system == "x86_64-cygwin" then pkgs_x86_64_cygwin
       else abort "unsupported system type: ${system}";
 
-  inherit (pkgsForCross null) pkgsFor;
+  pkgsFor = pkgsForCross null;
 
 
   # More poor man's memoisation
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 59e3d5133bb..9bdad5473d4 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -66,7 +66,7 @@ let
               jobs.inkscape.x86_64-darwin
               # jobs.gimp.x86_64-darwin
               jobs.emacs.x86_64-darwin
-              # jobs.wireshark.x86_64-darwin
+              jobs.wireshark.x86_64-darwin
               jobs.transmission-gtk.x86_64-darwin
 
               # Tests
diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix
index 37724a870a3..4e6531286ee 100644
--- a/pkgs/top-level/stage.nix
+++ b/pkgs/top-level/stage.nix
@@ -150,7 +150,7 @@ let
 
     # All packages built for i686 Linux.
     # Used by wine, firefox with debugging version of Flash, ...
-    pkgsi686Linux = assert stdenv.hostPlatform.isLinux; nixpkgsFun {
+    pkgsi686Linux = if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86 then nixpkgsFun {
       inherit overlays config;
       ${if stdenv.hostPlatform == stdenv.buildPlatform
         then "localSystem" else "crossSystem"} = {
@@ -158,7 +158,7 @@ let
           cpu = lib.systems.parse.cpuTypes.i686;
         };
       };
-    };
+    } else throw "i686 Linux package set can only be used with the x86 family.";
 
     # Extend the package set with zero or more overlays. This preserves
     # preexisting overlays. Prefer to initialize with the right overlays