summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/functions.xml1
-rw-r--r--doc/functions/nix-gitignore.xml78
-rw-r--r--lib/systems/inspect.nix1
-rw-r--r--maintainers/maintainer-list.nix49
-rw-r--r--nixos/doc/manual/configuration/configuration.xml1
-rw-r--r--nixos/doc/manual/configuration/kubernetes.xml127
-rw-r--r--nixos/doc/manual/configuration/wireless.xml5
-rw-r--r--nixos/doc/manual/release-notes/rl-1903.xml58
-rw-r--r--nixos/modules/misc/documentation.nix1
-rw-r--r--nixos/modules/misc/ids.nix4
-rw-r--r--nixos/modules/module-list.nix17
-rw-r--r--nixos/modules/programs/autojump.nix33
-rw-r--r--nixos/modules/programs/singularity.nix21
-rw-r--r--nixos/modules/programs/ssh.nix10
-rw-r--r--nixos/modules/rename.nix11
-rw-r--r--nixos/modules/services/cluster/kubernetes/addon-manager.nix167
-rw-r--r--nixos/modules/services/cluster/kubernetes/addons/dashboard.nix (renamed from nixos/modules/services/cluster/kubernetes/dashboard.nix)15
-rw-r--r--nixos/modules/services/cluster/kubernetes/addons/dns.nix (renamed from nixos/modules/services/cluster/kubernetes/dns.nix)38
-rw-r--r--nixos/modules/services/cluster/kubernetes/apiserver.nix428
-rw-r--r--nixos/modules/services/cluster/kubernetes/controller-manager.nix162
-rw-r--r--nixos/modules/services/cluster/kubernetes/default.nix1131
-rw-r--r--nixos/modules/services/cluster/kubernetes/flannel.nix134
-rw-r--r--nixos/modules/services/cluster/kubernetes/kubelet.nix358
-rw-r--r--nixos/modules/services/cluster/kubernetes/pki.nix388
-rw-r--r--nixos/modules/services/cluster/kubernetes/proxy.nix80
-rw-r--r--nixos/modules/services/cluster/kubernetes/scheduler.nix92
-rw-r--r--nixos/modules/services/hardware/bolt.nix34
-rw-r--r--nixos/modules/services/misc/gitlab.nix15
-rw-r--r--nixos/modules/services/misc/headphones.nix87
-rw-r--r--nixos/modules/services/misc/jackett.nix59
-rw-r--r--nixos/modules/services/misc/radarr.nix59
-rw-r--r--nixos/modules/services/misc/zoneminder.nix8
-rw-r--r--nixos/modules/services/network-filesystems/diod.nix1
-rw-r--r--nixos/modules/services/networking/flannel.nix54
-rw-r--r--nixos/modules/services/networking/quassel.nix28
-rw-r--r--nixos/modules/services/networking/wpa_supplicant.nix21
-rw-r--r--nixos/modules/services/printing/cupsd.nix4
-rw-r--r--nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix626
-rw-r--r--nixos/modules/services/web-apps/icingaweb2/module-monitoring.nix157
-rw-r--r--nixos/modules/services/web-apps/matomo-doc.xml32
-rw-r--r--nixos/modules/services/web-apps/matomo.nix99
-rw-r--r--nixos/modules/services/web-apps/tt-rss.nix32
-rw-r--r--nixos/modules/services/web-servers/apache-httpd/default.nix13
-rw-r--r--nixos/modules/services/web-servers/phpfpm/default.nix9
-rw-r--r--nixos/modules/services/web-servers/phpfpm/pool-options.nix9
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix1
-rw-r--r--nixos/modules/system/boot/systemd.nix13
-rw-r--r--nixos/modules/virtualisation/vmware-guest.nix18
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/flannel.nix5
-rw-r--r--nixos/tests/kubernetes/base.nix39
-rw-r--r--nixos/tests/kubernetes/certs.nix219
-rw-r--r--nixos/tests/kubernetes/dns.nix15
-rw-r--r--nixos/tests/kubernetes/kubernetes-common.nix57
-rw-r--r--nixos/tests/kubernetes/rbac.nix13
-rw-r--r--nixos/tests/printing.nix2
-rw-r--r--nixos/tests/switch-test.nix13
-rw-r--r--pkgs/applications/altcoins/go-ethereum.nix6
-rw-r--r--pkgs/applications/altcoins/wownero.nix11
-rw-r--r--pkgs/applications/audio/abcde/default.nix4
-rw-r--r--pkgs/applications/audio/cmus/default.nix4
-rw-r--r--pkgs/applications/audio/deadbeef/default.nix4
-rw-r--r--pkgs/applications/audio/mimic/default.nix13
-rw-r--r--pkgs/applications/audio/mopidy/iris.nix4
-rw-r--r--pkgs/applications/audio/ncmpcpp/default.nix4
-rw-r--r--pkgs/applications/audio/openmpt123/default.nix4
-rw-r--r--pkgs/applications/audio/vimpc/default.nix8
-rw-r--r--pkgs/applications/editors/android-studio/default.nix12
-rw-r--r--pkgs/applications/editors/atom/default.nix8
-rw-r--r--pkgs/applications/editors/dit/default.nix14
-rw-r--r--pkgs/applications/editors/eclipse/build-eclipse.nix1
-rw-r--r--pkgs/applications/editors/eclipse/default.nix231
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix39
-rw-r--r--pkgs/applications/editors/emacs/default.nix13
-rw-r--r--pkgs/applications/editors/emacs/macport.nix4
-rw-r--r--pkgs/applications/editors/kakoune/default.nix2
-rw-r--r--pkgs/applications/editors/kdevelop5/kdev-php.nix29
-rw-r--r--pkgs/applications/editors/kdevelop5/kdev-python.nix30
-rw-r--r--pkgs/applications/editors/kdevelop5/kdevelop.nix7
-rw-r--r--pkgs/applications/editors/kdevelop5/wrapper.nix7
-rw-r--r--pkgs/applications/editors/vscode/default.nix10
-rw-r--r--pkgs/applications/graphics/ahoviewer/default.nix8
-rw-r--r--pkgs/applications/graphics/digikam/default.nix4
-rw-r--r--pkgs/applications/graphics/feh/default.nix17
-rw-r--r--pkgs/applications/graphics/gscan2pdf/default.nix103
-rw-r--r--pkgs/applications/graphics/openscad/default.nix3
-rw-r--r--pkgs/applications/graphics/paraview/default.nix4
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix4
-rw-r--r--pkgs/applications/kde/kio-extras.nix4
-rw-r--r--pkgs/applications/misc/audio/sox/default.nix4
-rw-r--r--pkgs/applications/misc/blender/default.nix4
-rw-r--r--pkgs/applications/misc/buku/default.nix2
-rw-r--r--pkgs/applications/misc/cataract/build.nix2
-rw-r--r--pkgs/applications/misc/cli-visualizer/default.nix2
-rw-r--r--pkgs/applications/misc/ctodo/default.nix2
-rw-r--r--pkgs/applications/misc/electrum/default.nix7
-rw-r--r--pkgs/applications/misc/gcalcli/default.nix14
-rw-r--r--pkgs/applications/misc/haxor-news/default.nix2
-rw-r--r--pkgs/applications/misc/hr/default.nix2
-rw-r--r--pkgs/applications/misc/hstr/default.nix2
-rw-r--r--pkgs/applications/misc/khard/default.nix2
-rw-r--r--pkgs/applications/misc/mdp/default.nix2
-rw-r--r--pkgs/applications/misc/mwic/default.nix2
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix4
-rw-r--r--pkgs/applications/misc/qmapshack/default.nix4
-rw-r--r--pkgs/applications/misc/rtv/default.nix2
-rw-r--r--pkgs/applications/misc/safeeyes/default.nix4
-rw-r--r--pkgs/applications/misc/sigal/default.nix2
-rw-r--r--pkgs/applications/misc/slic3r/prusa3d.nix4
-rw-r--r--pkgs/applications/misc/stag/default.nix2
-rw-r--r--pkgs/applications/misc/tasknc/default.nix2
-rw-r--r--pkgs/applications/misc/tasksh/default.nix2
-rw-r--r--pkgs/applications/misc/timewarrior/default.nix2
-rw-r--r--pkgs/applications/misc/toot/default.nix2
-rw-r--r--pkgs/applications/misc/twmn/default.nix13
-rw-r--r--pkgs/applications/misc/weather/default.nix2
-rw-r--r--pkgs/applications/misc/xmr-stak/default.nix4
-rw-r--r--pkgs/applications/misc/yaft/default.nix2
-rw-r--r--pkgs/applications/misc/zathura/default.nix4
-rw-r--r--pkgs/applications/misc/zola/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix20
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix4
-rw-r--r--pkgs/applications/networking/cluster/minishift/default.nix7
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/mikutter/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/wavebox/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix13
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix466
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix4
-rw-r--r--pkgs/applications/networking/mpop/default.nix4
-rw-r--r--pkgs/applications/networking/msmtp/default.nix4
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--pkgs/applications/networking/remote/x2goclient/default.nix6
-rw-r--r--pkgs/applications/networking/soapui/default.nix4
-rw-r--r--pkgs/applications/networking/sync/unison/default.nix17
-rw-r--r--pkgs/applications/office/beancount/bean-add.nix2
-rw-r--r--pkgs/applications/office/fava/default.nix2
-rw-r--r--pkgs/applications/office/planner/default.nix17
-rw-r--r--pkgs/applications/office/qownnotes/default.nix4
-rw-r--r--pkgs/applications/office/skrooge/default.nix8
-rw-r--r--pkgs/applications/office/wordgrinder/default.nix2
-rw-r--r--pkgs/applications/radio/dump1090/default.nix (renamed from pkgs/applications/misc/dump1090/default.nix)4
-rw-r--r--pkgs/applications/science/astronomy/gildas/default.nix6
-rw-r--r--pkgs/applications/science/logic/alt-ergo/default.nix13
-rw-r--r--pkgs/applications/science/logic/z3/0001-fix-2131.patch66
-rw-r--r--pkgs/applications/science/logic/z3/default.nix4
-rw-r--r--pkgs/applications/science/machine-learning/sc2-headless/default.nix4
-rw-r--r--pkgs/applications/science/math/caffe/default.nix30
-rw-r--r--pkgs/applications/science/math/caffe/python.patch70
-rw-r--r--pkgs/applications/science/math/cntk/default.nix6
-rw-r--r--pkgs/applications/science/math/mxnet/default.nix6
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix4
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix4
-rw-r--r--pkgs/applications/version-management/bugseverywhere/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-cola/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-dit/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-extras/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/hub/default.nix20
-rw-r--r--pkgs/applications/version-management/gitlab/data.json24
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix4
-rw-r--r--pkgs/applications/video/aegisub/default.nix6
-rw-r--r--pkgs/applications/video/bomi/default.nix5
-rw-r--r--pkgs/applications/video/handbrake/default.nix6
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix12
-rw-r--r--pkgs/applications/video/motion/default.nix4
-rw-r--r--pkgs/applications/video/mplayer/default.nix4
-rw-r--r--pkgs/applications/video/mpv/default.nix54
-rw-r--r--pkgs/applications/video/obs-studio/default.nix6
-rw-r--r--pkgs/applications/virtualization/dynamips/default.nix4
-rw-r--r--pkgs/applications/virtualization/firecracker/default.nix6
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix5
-rw-r--r--pkgs/applications/virtualization/singularity/default.nix101
-rw-r--r--pkgs/applications/virtualization/singularity/deps.nix669
-rw-r--r--pkgs/applications/virtualization/singularity/env.patch21
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix4
-rw-r--r--pkgs/applications/virtualization/x11docker/default.nix32
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix3
-rw-r--r--pkgs/applications/window-managers/bspwm/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/gaps.nix6
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix15
-rw-r--r--pkgs/applications/window-managers/sway/beta.nix8
-rw-r--r--pkgs/applications/window-managers/sxhkd/default.nix4
-rw-r--r--pkgs/applications/window-managers/xmonad/log-applet/default.nix2
-rw-r--r--pkgs/build-support/bintools-wrapper/default.nix1
-rw-r--r--pkgs/build-support/build-bazel-package/default.nix45
-rwxr-xr-xpkgs/build-support/buildenv/builder.pl4
-rw-r--r--pkgs/build-support/docker/default.nix2
-rw-r--r--pkgs/build-support/fetchsvn/default.nix2
-rw-r--r--pkgs/build-support/fetchurl/mirrors.nix2
-rw-r--r--pkgs/build-support/nix-gitignore/default.nix178
-rw-r--r--pkgs/build-support/singularity-tools/default.nix17
-rwxr-xr-xpkgs/common-updater/scripts/update-source-version2
-rw-r--r--pkgs/data/themes/shades-of-gray/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/evolution/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/dconf/default.nix11
-rw-r--r--pkgs/desktops/gnome-3/core/evolution-data-server/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-control-center/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-chess/default.nix4
-rw-r--r--pkgs/desktops/lxqt/compton-conf/default.nix10
-rw-r--r--pkgs/desktops/lxqt/default.nix4
-rw-r--r--pkgs/desktops/lxqt/libfm-qt/default.nix7
-rw-r--r--pkgs/desktops/lxqt/liblxqt/default.nix10
-rw-r--r--pkgs/desktops/lxqt/libqtxdg/default.nix12
-rw-r--r--pkgs/desktops/lxqt/libsysstat/default.nix14
-rw-r--r--pkgs/desktops/lxqt/lximage-qt/default.nix18
-rw-r--r--pkgs/desktops/lxqt/lxqt-about/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-admin/default.nix14
-rw-r--r--pkgs/desktops/lxqt/lxqt-build-tools/default.nix12
-rw-r--r--pkgs/desktops/lxqt/lxqt-config/default.nix29
-rw-r--r--pkgs/desktops/lxqt/lxqt-globalkeys/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-l10n/default.nix32
-rw-r--r--pkgs/desktops/lxqt/lxqt-notificationd/default.nix12
-rw-r--r--pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-panel/default.nix12
-rw-r--r--pkgs/desktops/lxqt/lxqt-policykit/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-powermanagement/default.nix12
-rw-r--r--pkgs/desktops/lxqt/lxqt-qtplugin/default.nix5
-rw-r--r--pkgs/desktops/lxqt/lxqt-runner/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-session/default.nix12
-rw-r--r--pkgs/desktops/lxqt/lxqt-sudo/default.nix10
-rw-r--r--pkgs/desktops/lxqt/lxqt-themes/default.nix9
-rw-r--r--pkgs/desktops/lxqt/obconf-qt/default.nix18
-rw-r--r--pkgs/desktops/lxqt/pavucontrol-qt/default.nix10
-rw-r--r--pkgs/desktops/lxqt/pcmanfm-qt/default.nix18
-rw-r--r--pkgs/desktops/lxqt/qlipper/default.nix4
-rw-r--r--pkgs/desktops/lxqt/qps/default.nix12
-rw-r--r--pkgs/desktops/lxqt/qterminal/default.nix16
-rw-r--r--pkgs/desktops/lxqt/qtermwidget/0.7.1.nix26
-rw-r--r--pkgs/desktops/lxqt/qtermwidget/default.nix13
-rw-r--r--pkgs/desktops/lxqt/screengrab/default.nix16
-rwxr-xr-xpkgs/desktops/lxqt/update.sh4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-files/default.nix4
-rw-r--r--pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/pantheon/granite/02-datetime-clock-format-gsettings.patch129
-rw-r--r--pkgs/desktops/pantheon/granite/default.nix18
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix2
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix3
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/sources.json78
-rw-r--r--pkgs/development/compilers/ats2/default.nix10
-rw-r--r--pkgs/development/compilers/coreclr/default.nix4
-rw-r--r--pkgs/development/compilers/gcl/2.6.13-pre.nix5
-rw-r--r--pkgs/development/compilers/gcl/default.nix6
-rw-r--r--pkgs/development/compilers/gnu-cobol/default.nix2
-rw-r--r--pkgs/development/compilers/gnu-smalltalk/default.nix6
-rw-r--r--pkgs/development/compilers/go/1.10.nix9
-rw-r--r--pkgs/development/compilers/llvm/4/libc++/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/4/libc++/libc++.a1
-rw-r--r--pkgs/development/compilers/llvm/5/libc++/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/5/libc++/libc++.a1
-rw-r--r--pkgs/development/compilers/llvm/6/libc++/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/6/libc++/libc++.a1
-rw-r--r--pkgs/development/compilers/llvm/7/libc++/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/7/libc++/libc++.a1
-rw-r--r--pkgs/development/compilers/ocaml/4.08.nix12
-rw-r--r--pkgs/development/compilers/ocaml/generic.nix6
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk-linux-base.nix3
-rw-r--r--pkgs/development/compilers/solc/default.nix11
-rw-r--r--pkgs/development/coq-modules/coquelicot/default.nix8
-rw-r--r--pkgs/development/coq-modules/flocq/default.nix8
-rw-r--r--pkgs/development/coq-modules/interval/default.nix20
-rw-r--r--pkgs/development/coq-modules/mathcomp-analysis/default.nix2
-rw-r--r--pkgs/development/coq-modules/mathcomp-bigenough/default.nix4
-rw-r--r--pkgs/development/coq-modules/mathcomp-finmap/default.nix4
-rw-r--r--pkgs/development/coq-modules/paramcoq/default.nix48
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix14
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix5
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-head.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml308
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix13
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix5070
-rw-r--r--pkgs/development/interpreters/clojurescript/lumo/package.json2
-rw-r--r--pkgs/development/interpreters/php/default.nix5
-rw-r--r--pkgs/development/libraries/aws-c-common/default.nix28
-rw-r--r--pkgs/development/libraries/aws-c-event-stream/default.nix29
-rw-r--r--pkgs/development/libraries/aws-checksums/default.nix23
-rw-r--r--pkgs/development/libraries/aws-sdk-cpp/default.nix48
-rw-r--r--pkgs/development/libraries/boehm-gc/default.nix7
-rw-r--r--pkgs/development/libraries/cairo/default.nix19
-rw-r--r--pkgs/development/libraries/catch2/default.nix4
-rw-r--r--pkgs/development/libraries/fcppt/default.nix10
-rw-r--r--pkgs/development/libraries/ffmpeg/4.nix4
-rw-r--r--pkgs/development/libraries/gexiv2/default.nix4
-rw-r--r--pkgs/development/libraries/git2/0.27.nix4
-rw-r--r--pkgs/development/libraries/glibc/common.nix3
-rw-r--r--pkgs/development/libraries/glibc/darwin-cross-build.patch103
-rw-r--r--pkgs/development/libraries/gnutls-kdh/generic.nix5
-rw-r--r--pkgs/development/libraries/gnutls/generic.nix5
-rw-r--r--pkgs/development/libraries/gtk+/2.x.nix4
-rw-r--r--pkgs/development/libraries/gtk+/3.x.nix17
-rw-r--r--pkgs/development/libraries/intel-media-driver/default.nix4
-rw-r--r--pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--pkgs/development/libraries/libgxps/default.nix22
-rw-r--r--pkgs/development/libraries/libiodbc/default.nix3
-rw-r--r--pkgs/development/libraries/libpng/default.nix10
-rw-r--r--pkgs/development/libraries/libqalculate/default.nix4
-rw-r--r--pkgs/development/libraries/librealsense/default.nix4
-rw-r--r--pkgs/development/libraries/libtensorflow/default.nix4
-rw-r--r--pkgs/development/libraries/libxmlb/default.nix4
-rw-r--r--pkgs/development/libraries/opencascade-occt/default.nix42
-rw-r--r--pkgs/development/libraries/opencv/3.x.nix4
-rw-r--r--pkgs/development/libraries/opencv/4.x.nix4
-rw-r--r--pkgs/development/libraries/opensubdiv/default.nix4
-rw-r--r--pkgs/development/libraries/pcaudiolib/default.nix7
-rw-r--r--pkgs/development/libraries/physics/rivet/default.nix6
-rw-r--r--pkgs/development/libraries/pybind11/default.nix23
-rw-r--r--pkgs/development/libraries/pybind11/no_test_cmake_build.patch7
-rw-r--r--pkgs/development/libraries/qt-3/default.nix3
-rw-r--r--pkgs/development/libraries/qt-5/5.11/default.nix8
-rw-r--r--pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch12
-rw-r--r--pkgs/development/libraries/qt-5/5.12/default.nix5
-rw-r--r--pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch12
-rw-r--r--pkgs/development/libraries/qt-5/5.6/default.nix5
-rw-r--r--pkgs/development/libraries/qt-5/5.9/default.nix5
-rw-r--r--pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch12
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtconnectivity.nix4
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix10
-rw-r--r--pkgs/development/libraries/science/math/sympow/default.nix2
-rw-r--r--pkgs/development/libraries/tpm2-tss/default.nix47
-rw-r--r--pkgs/development/libraries/wayland/default.nix2
-rw-r--r--pkgs/development/libraries/wxwidgets/2.8/default.nix3
-rw-r--r--pkgs/development/libraries/wxwidgets/2.9/default.nix3
-rw-r--r--pkgs/development/libraries/wxwidgets/3.0/default.nix3
-rw-r--r--pkgs/development/libraries/xapian/default.nix2
-rw-r--r--pkgs/development/libraries/xgboost/default.nix4
-rw-r--r--pkgs/development/libraries/zeroc-ice/default.nix3
-rw-r--r--pkgs/development/libraries/zlog/default.nix2
-rw-r--r--pkgs/development/mobile/androidenv/default.nix4
-rw-r--r--pkgs/development/node-packages/node-packages-v10.json4
-rw-r--r--pkgs/development/node-packages/node-packages-v10.nix3280
-rw-r--r--pkgs/development/node-packages/node-packages-v6.nix20
-rw-r--r--pkgs/development/node-packages/node-packages-v8.nix171
-rw-r--r--pkgs/development/ocaml-modules/hex/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/psmt2-frontend/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/yojson/default.nix16
-rw-r--r--pkgs/development/python-modules/acoustics/default.nix22
-rw-r--r--pkgs/development/python-modules/aiolifx-effects/default.nix31
-rw-r--r--pkgs/development/python-modules/aiolifx/default.nix31
-rw-r--r--pkgs/development/python-modules/aiorpcx/default.nix4
-rw-r--r--pkgs/development/python-modules/beanstalkc/default.nix18
-rw-r--r--pkgs/development/python-modules/cassandra-driver/default.nix20
-rw-r--r--pkgs/development/python-modules/httpretty/default.nix2
-rw-r--r--pkgs/development/python-modules/llfuse/default.nix4
-rw-r--r--pkgs/development/python-modules/mail-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/nbsphinx/default.nix41
-rw-r--r--pkgs/development/python-modules/pygraphviz/default.nix2
-rw-r--r--pkgs/development/python-modules/python-dbusmock/default.nix59
-rw-r--r--pkgs/development/python-modules/rasterio/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-toolbelt/default.nix4
-rw-r--r--pkgs/development/python-modules/scikit-build/default.nix43
-rw-r--r--pkgs/development/python-modules/scikit-build/fix_pytestrunner_req.patch13
-rw-r--r--pkgs/development/python-modules/telethon/default.nix4
-rw-r--r--pkgs/development/python-modules/twilio/default.nix4
-rw-r--r--pkgs/development/python-modules/wrf-python/default.nix41
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix5
-rw-r--r--pkgs/development/tools/bazel-watcher/default.nix3
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix8
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix1
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix11
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/leiningen/default.nix9
-rw-r--r--pkgs/development/tools/documentation/mdsh/default.nix23
-rw-r--r--pkgs/development/tools/godef/default.nix15
-rw-r--r--pkgs/development/tools/gometalinter/default.nix6
-rw-r--r--pkgs/development/tools/gotools/default.nix6
-rw-r--r--pkgs/development/tools/gotools/deps.nix4
-rw-r--r--pkgs/development/tools/k6/default.nix24
-rw-r--r--pkgs/development/tools/kind/default.nix4
-rw-r--r--pkgs/development/tools/ktlint/default.nix38
-rw-r--r--pkgs/development/tools/kustomize/default.nix15
-rw-r--r--pkgs/development/tools/mbed-cli/default.nix19
-rw-r--r--pkgs/development/tools/misc/elfutils/default.nix4
-rw-r--r--pkgs/development/tools/misc/one_gadget/Gemfile2
-rw-r--r--pkgs/development/tools/misc/one_gadget/Gemfile.lock17
-rw-r--r--pkgs/development/tools/misc/one_gadget/default.nix15
-rw-r--r--pkgs/development/tools/misc/one_gadget/gemset.nix34
-rw-r--r--pkgs/development/tools/ocaml/utop/default.nix4
-rw-r--r--pkgs/development/tools/profiling/sysprof/default.nix15
-rw-r--r--pkgs/development/tools/rust/svd2rust/cargo-lock.patch283
-rw-r--r--pkgs/development/tools/rust/svd2rust/default.nix28
-rw-r--r--pkgs/development/web/postman/default.nix4
-rw-r--r--pkgs/games/pro-office-calculator/default.nix10
-rw-r--r--pkgs/games/steam/chrootenv.nix8
-rw-r--r--pkgs/games/t4kcommon/default.nix32
-rw-r--r--pkgs/games/tuxtype/default.nix43
-rw-r--r--pkgs/misc/drivers/epkowa/default.nix33
-rw-r--r--pkgs/misc/drivers/epson-201106w/default.nix71
-rw-r--r--pkgs/misc/emulators/wine/sources.nix18
-rw-r--r--pkgs/misc/lguf-brightness/default.nix6
-rw-r--r--pkgs/misc/screensavers/pipes/default.nix2
-rw-r--r--pkgs/misc/themes/arc/default.nix10
-rw-r--r--pkgs/misc/urbit/default.nix6
-rw-r--r--pkgs/misc/vim-plugins/generated.nix282
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix14
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/impure-deps.nix2
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix6
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix1
-rw-r--r--pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch98
-rw-r--r--pkgs/os-specific/darwin/cctools/port.nix51
-rw-r--r--pkgs/os-specific/darwin/cctools/support-ios.patch13
-rw-r--r--pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch17
-rw-r--r--pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch12
-rw-r--r--pkgs/os-specific/linux/bolt/default.nix61
-rw-r--r--pkgs/os-specific/linux/conky/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix8
-rw-r--r--pkgs/os-specific/linux/guvcview/default.nix4
-rw-r--r--pkgs/os-specific/linux/iw/default.nix9
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix1
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.20.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/lxcfs/default.nix4
-rw-r--r--pkgs/os-specific/linux/pcmciautils/default.nix13
-rw-r--r--pkgs/os-specific/linux/syslinux/default.nix6
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix4
-rw-r--r--pkgs/os-specific/linux/usbutils/default.nix9
-rw-r--r--pkgs/servers/atlassian/jira.nix6
-rw-r--r--pkgs/servers/consul/default.nix4
-rw-r--r--pkgs/servers/dict/default.nix2
-rw-r--r--pkgs/servers/diod/default.nix16
-rw-r--r--pkgs/servers/dns/bind/default.nix6
-rw-r--r--pkgs/servers/headphones/default.nix33
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix6
-rw-r--r--pkgs/servers/icingaweb2/default.nix33
-rw-r--r--pkgs/servers/icingaweb2/theme-april/default.nix24
-rw-r--r--pkgs/servers/icingaweb2/theme-lsd/default.nix24
-rw-r--r--pkgs/servers/icingaweb2/theme-particles/default.nix24
-rw-r--r--pkgs/servers/icingaweb2/theme-snow/default.nix30
-rw-r--r--pkgs/servers/icingaweb2/theme-spring/default.nix24
-rw-r--r--pkgs/servers/icingaweb2/theme-unicorn/default.nix45
-rw-r--r--pkgs/servers/mail/exim/default.nix4
-rw-r--r--pkgs/servers/matrix-synapse/default.nix6
-rw-r--r--pkgs/servers/mautrix-whatsapp/default.nix24
-rw-r--r--pkgs/servers/mautrix-whatsapp/deps.nix201
-rw-r--r--pkgs/servers/misc/taskserver/default.nix2
-rw-r--r--pkgs/servers/nextcloud/default.nix4
-rw-r--r--pkgs/servers/nosql/neo4j/default.nix4
-rw-r--r--pkgs/servers/plex/default.nix4
-rw-r--r--pkgs/servers/rippled/default.nix141
-rw-r--r--pkgs/servers/sabnzbd/default.nix4
-rw-r--r--pkgs/servers/sickbeard/default.nix4
-rw-r--r--pkgs/servers/sickbeard/sickgear.nix8
-rw-r--r--pkgs/servers/sip/freeswitch/default.nix99
-rw-r--r--pkgs/servers/sip/freeswitch/modules.nix223
-rw-r--r--pkgs/servers/sql/postgresql/default.nix11
-rw-r--r--pkgs/servers/tt-rss/plugin-auth-ldap/default.nix2
-rw-r--r--pkgs/servers/tt-rss/plugin-ff-instagram/default.nix30
-rw-r--r--pkgs/servers/tt-rss/plugin-tumblr-gdpr/default.nix4
-rw-r--r--pkgs/servers/tt-rss/theme-feedly/default.nix6
-rw-r--r--pkgs/servers/unifi/default.nix4
-rw-r--r--pkgs/servers/web-apps/matomo/default.nix4
-rw-r--r--pkgs/servers/web-apps/matomo/make-localhost-default-database-host.patch16
-rw-r--r--pkgs/servers/x11/xorg/default.nix6
-rw-r--r--pkgs/servers/x11/xorg/tarballs.list2
-rw-r--r--pkgs/shells/fish/default.nix4
-rw-r--r--pkgs/shells/oil/default.nix4
-rw-r--r--pkgs/tools/X11/nx-libs/default.nix44
-rw-r--r--pkgs/tools/admin/nxproxy/default.nix30
-rw-r--r--pkgs/tools/archivers/unzip/CVE-2018-18384.patch35
-rw-r--r--pkgs/tools/archivers/unzip/default.nix1
-rw-r--r--pkgs/tools/backup/easysnap/default.nix6
-rw-r--r--pkgs/tools/backup/pyznap/default.nix28
-rw-r--r--pkgs/tools/backup/restic/default.nix4
-rw-r--r--pkgs/tools/bluetooth/blueman/default.nix4
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/fuse-overlayfs/default.nix44
-rw-r--r--pkgs/tools/graphics/lepton/default.nix24
-rw-r--r--pkgs/tools/graphics/wkhtmltopdf/default.nix2
-rw-r--r--pkgs/tools/misc/aptly/default.nix8
-rw-r--r--pkgs/tools/misc/bashplotlib/default.nix6
-rw-r--r--pkgs/tools/misc/bbe/default.nix22
-rw-r--r--pkgs/tools/misc/brltty/default.nix4
-rw-r--r--pkgs/tools/misc/broot/default.nix23
-rw-r--r--pkgs/tools/misc/calamares/default.nix4
-rw-r--r--pkgs/tools/misc/direnv/default.nix4
-rw-r--r--pkgs/tools/misc/docker-sync/Gemfile3
-rw-r--r--pkgs/tools/misc/docker-sync/Gemfile.lock29
-rw-r--r--pkgs/tools/misc/docker-sync/default.nix18
-rw-r--r--pkgs/tools/misc/docker-sync/gemset.nix76
-rw-r--r--pkgs/tools/misc/fd/default.nix19
-rw-r--r--pkgs/tools/misc/gh-ost/default.nix12
-rw-r--r--pkgs/tools/misc/grub/2.0x.nix30
-rw-r--r--pkgs/tools/misc/grub/relocation-not-implemented.diff25
-rw-r--r--pkgs/tools/misc/mpdscribble/default.nix2
-rw-r--r--pkgs/tools/misc/multitail/default.nix2
-rw-r--r--pkgs/tools/misc/skim/default.nix5
-rw-r--r--pkgs/tools/misc/slurp/default.nix6
-rw-r--r--pkgs/tools/misc/smenu/default.nix2
-rw-r--r--pkgs/tools/misc/usbmuxd/default.nix8
-rw-r--r--pkgs/tools/misc/vdirsyncer/default.nix2
-rw-r--r--pkgs/tools/misc/vimer/default.nix2
-rw-r--r--pkgs/tools/misc/watchexec/default.nix4
-rw-r--r--pkgs/tools/misc/xsel/default.nix11
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/misc/yubikey-manager-qt/default.nix78
-rw-r--r--pkgs/tools/networking/http-prompt/default.nix2
-rw-r--r--pkgs/tools/networking/lftp/default.nix4
-rw-r--r--pkgs/tools/networking/lldpd/default.nix5
-rw-r--r--pkgs/tools/networking/netmask/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/applet.nix4
-rw-r--r--pkgs/tools/networking/network-manager/openvpn/default.nix4
-rw-r--r--pkgs/tools/security/bitwarden-cli/default.nix18
-rw-r--r--pkgs/tools/security/bitwarden-cli/node-packages-generated.nix549
-rw-r--r--pkgs/tools/security/bitwarden-cli/node-packages.json3
-rw-r--r--pkgs/tools/security/bitwarden-cli/node-packages.nix17
-rw-r--r--pkgs/tools/security/ibm-sw-tpm2/default.nix39
-rw-r--r--pkgs/tools/security/lynis/default.nix4
-rw-r--r--pkgs/tools/security/mkp224o/default.nix47
-rw-r--r--pkgs/tools/security/pass/rofi-pass.nix4
-rw-r--r--pkgs/tools/security/tpm2-tools/default.nix38
-rw-r--r--pkgs/tools/security/vault/default.nix4
-rw-r--r--pkgs/tools/system/gotop/default.nix6
-rw-r--r--pkgs/tools/system/gotop/deps.nix39
-rw-r--r--pkgs/tools/system/osquery/default.nix14
-rw-r--r--pkgs/tools/text/groff/default.nix5
-rw-r--r--pkgs/tools/text/groff/mdate-determinism.patch13
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix321
-rw-r--r--pkgs/top-level/coq-packages.nix1
-rw-r--r--pkgs/top-level/haskell-packages.nix2
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix108
-rw-r--r--pkgs/top-level/python-packages.nix23
541 files changed, 16388 insertions, 6973 deletions
diff --git a/doc/functions.xml b/doc/functions.xml
index 0d6e2770e6e..53b3654fc45 100644
--- a/doc/functions.xml
+++ b/doc/functions.xml
@@ -17,4 +17,5 @@
  <xi:include href="functions/shell.xml" />
  <xi:include href="functions/dockertools.xml" />
  <xi:include href="functions/prefer-remote-fetch.xml" />
+ <xi:include href="functions/nix-gitignore.xml" />
 </chapter>
diff --git a/doc/functions/nix-gitignore.xml b/doc/functions/nix-gitignore.xml
new file mode 100644
index 00000000000..465b38e0bf1
--- /dev/null
+++ b/doc/functions/nix-gitignore.xml
@@ -0,0 +1,78 @@
+<section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         xml:id="sec-pkgs-nix-gitignore">
+ <title>pkgs.nix-gitignore</title>
+
+ <para>
+  <function>pkgs.nix-gitignore</function> is a function that acts similarly to
+  <literal>builtins.filterSource</literal> but also allows filtering with the
+  help of the gitignore format.
+ </para>
+
+ <section xml:id="sec-pkgs-nix-gitignore-usage">
+  <title>Usage</title>
+
+  <para>
+  <literal>pkgs.nix-gitignore</literal> exports a number of functions, but
+  you'll most likely need either <literal>gitignoreSource</literal> or
+  <literal>gitignoreSourcePure</literal>. As their first argument, they both
+  accept either 1. a file with gitignore lines or 2. a string
+  with gitignore lines, or 3. a list of either of the two. They will be
+  concatenated into a single big string.
+  </para>
+
+  <programlisting><![CDATA[
+{ pkgs ? import <nixpkgs> {} }:
+
+ nix-gitignore.gitignoreSource [] ./source
+     # Simplest version
+
+ nix-gitignore.gitignoreSource "supplemental-ignores\n" ./source
+     # This one reads the ./source/.gitignore and concats the auxiliary ignores
+
+ nix-gitignore.gitignoreSourcePure "ignore-this\nignore-that\n" ./source
+     # Use this string as gitignore, don't read ./source/.gitignore.
+
+ nix-gitignore.gitignoreSourcePure ["ignore-this\nignore-that\n", ~/.gitignore] ./source
+     # It also accepts a list (of strings and paths) that will be concatenated
+     # once the paths are turned to strings via readFile.
+  ]]></programlisting>
+
+  <para>
+  These functions are derived from the <literal>Filter</literal> functions
+  by setting the first filter argument to <literal>(_: _: true)</literal>:
+  </para>
+
+  <programlisting><![CDATA[
+gitignoreSourcePure = gitignoreFilterSourcePure (_: _: true);
+gitignoreSource = gitignoreFilterSource (_: _: true);
+  ]]></programlisting>
+
+  <para>
+  Those filter functions accept the same arguments the <literal>builtins.filterSource</literal> function would pass to its filters, thus <literal>fn: gitignoreFilterSourcePure fn ""</literal> should be extensionally equivalent to <literal>filterSource</literal>. The file is blacklisted iff it's blacklisted by either your filter or the gitignoreFilter.
+  </para>
+
+  <para>
+  If you want to make your own filter from scratch, you may use
+ </para>
+
+  <programlisting><![CDATA[
+gitignoreFilter = ign: root: filterPattern (gitignoreToPatterns ign) root;
+  ]]></programlisting>
+ </section>
+
+ <section xml:id="sec-pkgs-nix-gitignore-usage-recursive">
+  <title>gitignore files in subdirectories</title>
+
+  <para>
+  If you wish to use a filter that would search for .gitignore files in subdirectories, just like git does by default, use this function:
+ </para>
+
+  <programlisting><![CDATA[
+gitignoreFilterRecursiveSource = filter: patterns: root:
+# OR
+gitignoreRecursiveSource = gitignoreFilterSourcePure (_: _: true);
+  ]]></programlisting>
+ </section>
+</section>
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index e35e7b4a1ec..932f8fd1e53 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -21,6 +21,7 @@ rec {
     isSparc        = { cpu = { family = "sparc"; }; };
     isWasm         = { cpu = { family = "wasm"; }; };
     isAvr          = { cpu = { family = "avr"; }; };
+    isAlpha        = { cpu = { family = "alpha"; }; };
 
     is32bit        = { cpu = { bits = 32; }; };
     is64bit        = { cpu = { bits = 64; }; };
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index cc121c15ac8..63d8385eeb3 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -401,6 +401,15 @@
     github = "shados";
     name = "Alexei Robyn";
   };
+  artemist = {
+    email = "me@artem.ist";
+    github = "artemist";
+    name = "Artemis Tosini";
+    keys = [{
+      longkeyid = "rsa4096/0x4FDC96F161E7BA8A";
+      fingerprint = "3D2B B230 F9FA F0C5 1832  46DD 4FDC 96F1 61E7 BA8A";
+    }];
+  };
   artuuge = {
     email = "artuuge@gmail.com";
     github = "artuuge";
@@ -743,6 +752,11 @@
     github = "calbrecht";
     name = "Christian Albrecht";
   };
+  callahad = {
+    email = "dan.callahan@gmail.com";
+    github = "callahad";
+    name = "Dan Callahan";
+  };
   calvertvl = {
     email = "calvertvl@gmail.com";
     github = "calvertvl";
@@ -793,6 +807,11 @@
     github = "caugner";
     name = "Claas Augner";
   };
+  cbley = {
+    email = "claudio.bley@gmail.com";
+    github = "avdv";
+    name = "Claudio Bley";
+  };
   cdepillabout = {
     email = "cdep.illabout@gmail.com";
     github = "cdepillabout";
@@ -1565,6 +1584,11 @@
     github = "flokli";
     name = "Florian Klink";
   };
+  FlorianFranzen = {
+    email = "Florian.Franzen@gmail.com";
+    github = "FlorianFranzen";
+    name = "Florian Franzen";
+  };
   florianjacob = {
     email = "projects+nixos@florianjacob.de";
     github = "florianjacob";
@@ -2926,6 +2950,11 @@
     github = "mguentner";
     name = "Maximilian Güntner";
   };
+   mhaselsteiner = {
+    email = "magdalena.haselsteiner@gmx.at";
+    github = "mhaselsteiner";
+    name = "Magdalena Haselsteiner";
+  };
   mic92 = {
     email = "joerg@thalheim.io";
     github = "mic92";
@@ -3228,6 +3257,11 @@
     github = "nequissimus";
     name = "Tim Steinbach";
   };
+  netixx = {
+    email = "dev.espinetfrancois@gmail.com";
+    github = "netixx";
+    name = "François Espinet";
+  };
   nikitavoloboev = {
     email = "nikita.voloboev@gmail.com";
     github = "nikitavoloboev";
@@ -3318,6 +3352,11 @@
     github = "np";
     name = "Nicolas Pouillard";
   };
+  nphilou = {
+    email = "nphilou@gmail.com";
+    github = "nphilou";
+    name = "Philippe Nguyen";
+  };
   nslqqq = {
     email = "nslqqq@gmail.com";
     name = "Nikita Mikhailov";
@@ -3793,6 +3832,11 @@
     github = "rbasso";
     name = "Rafael Basso";
   };
+  rbrewer = {
+    email = "rwb123@gmail.com";
+    github = "rbrewer123";
+    name = "Rob Brewer";
+  };
   rdnetto = {
     email = "rdnetto@gmail.com";
     github = "rdnetto";
@@ -3828,6 +3872,11 @@
     github = "relrod";
     name = "Ricky Elrod";
   };
+  rembo10 = {
+    email = "rembo10@users.noreply.github.com";
+    github = "rembo10";
+    name = "rembo10";
+  };
   renatoGarcia = {
     email = "fgarcia.renato@gmail.com";
     github = "renatoGarcia";
diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml
index cebc4122c6c..138d1d86d7f 100644
--- a/nixos/doc/manual/configuration/configuration.xml
+++ b/nixos/doc/manual/configuration/configuration.xml
@@ -23,5 +23,6 @@
  <xi:include href="linux-kernel.xml" />
  <xi:include href="../generated/modules.xml" xpointer="xpointer(//section[@id='modules']/*)" />
  <xi:include href="profiles.xml" />
+ <xi:include href="kubernetes.xml" />
 <!-- Apache; libvirtd virtualisation -->
 </part>
diff --git a/nixos/doc/manual/configuration/kubernetes.xml b/nixos/doc/manual/configuration/kubernetes.xml
new file mode 100644
index 00000000000..ddc026c0c01
--- /dev/null
+++ b/nixos/doc/manual/configuration/kubernetes.xml
@@ -0,0 +1,127 @@
+<chapter xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-kubernetes">
+ <title>Kubernetes</title>
+
+ <para>
+   The NixOS Kubernetes module is a collective term for a handful of
+   individual submodules implementing the Kubernetes cluster components.
+ </para>
+
+ <para>
+   There are generally two ways of enabling Kubernetes on NixOS.
+   One way is to enable and configure cluster components appropriately by hand:
+<programlisting>
+services.kubernetes = {
+  apiserver.enable = true;
+  controllerManager.enable = true;
+  scheduler.enable = true;
+  addonManager.enable = true;
+  proxy.enable = true;
+  flannel.enable = true;
+};
+</programlisting>
+  Another way is to assign cluster roles ("master" and/or "node") to the host.
+  This enables apiserver, controllerManager, scheduler, addonManager,
+  kube-proxy and etcd:
+<programlisting>
+<xref linkend="opt-services.kubernetes.roles"/> = [ "master" ];
+</programlisting>
+  While this will enable the kubelet and kube-proxy only:
+<programlisting>
+<xref linkend="opt-services.kubernetes.roles"/> = [ "node" ];
+</programlisting>
+  Assigning both the master and node roles is usable if you want a single
+  node Kubernetes cluster for dev or testing purposes:
+<programlisting>
+<xref linkend="opt-services.kubernetes.roles"/> = [ "master" "node" ];
+</programlisting>
+  Note: Assigning either role will also default both
+  <xref linkend="opt-services.kubernetes.flannel.enable"/> and
+  <xref linkend="opt-services.kubernetes.easyCerts"/> to true.
+  This sets up flannel as CNI and activates automatic PKI bootstrapping.
+ </para>
+
+ <para>
+   As of kubernetes 1.10.X it has been deprecated to open
+   non-tls-enabled ports on kubernetes components. Thus, from NixOS 19.03 all
+   plain HTTP ports have been disabled by default.
+   While opening insecure ports is still possible, it is recommended not to
+   bind these to other interfaces than loopback.
+
+   To re-enable the insecure port on the apiserver, see options:
+   <xref linkend="opt-services.kubernetes.apiserver.insecurePort"/>
+   and
+   <xref linkend="opt-services.kubernetes.apiserver.insecureBindAddress"/>
+ </para>
+
+ <note>
+  <para>
+   As of NixOS 19.03, it is mandatory to configure:
+   <xref linkend="opt-services.kubernetes.masterAddress"/>.
+   The masterAddress must be resolveable and routeable by all cluster nodes.
+   In single node clusters, this can be set to <literal>localhost</literal>.
+  </para>
+ </note>
+
+ <para>
+   Role-based access control (RBAC) authorization mode is enabled by default.
+   This means that anonymous requests to the apiserver secure port will
+   expectedly cause a permission denied error. All cluster components must
+   therefore be configured with x509 certificates for two-way tls communication.
+   The x509 certificate subject section determines the roles and permissions
+   granted by the apiserver to perform clusterwide or namespaced operations.
+   See also:
+   <link
+     xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/rbac/">
+     Using RBAC Authorization</link>.
+ </para>
+
+  <para>
+   The NixOS kubernetes module provides an option for automatic certificate
+   bootstrapping and configuration,
+    <xref linkend="opt-services.kubernetes.easyCerts"/>.
+   The PKI bootstrapping process involves setting up a certificate authority
+   (CA) daemon (cfssl) on the kubernetes master node. cfssl generates a CA-cert
+   for the cluster, and uses the CA-cert for signing subordinate certs issued to
+   each of the cluster components. Subsequently, the certmgr daemon monitors
+   active certificates and renews them when needed. For single node Kubernetes
+   clusters, setting <xref linkend="opt-services.kubernetes.easyCerts"/> = true
+   is sufficient and no further action is required. For joining extra node
+   machines to an existing cluster on the other hand, establishing initial trust
+   is mandatory.
+ </para>
+
+ <para>
+   To add new nodes to the cluster:
+   On any (non-master) cluster node where
+   <xref linkend="opt-services.kubernetes.easyCerts"/> is enabled, the helper
+   script <literal>nixos-kubernetes-node-join</literal> is available on PATH.
+   Given a token on stdin, it will copy the token to the kubernetes
+   secrets directory and restart the certmgr service. As requested
+   certificates are issued, the script will restart kubernetes cluster
+   components as needed for them to pick up new keypairs.
+ </para>
+
+ <note>
+  <para>
+   Multi-master (HA) clusters are not supported by the easyCerts module.
+  </para>
+ </note>
+
+ <para>
+   In order to interact with an RBAC-enabled cluster as an administrator, one
+   needs to have cluster-admin privileges. By default, when easyCerts is
+   enabled, a cluster-admin kubeconfig file is generated and linked into
+   <literal>/etc/kubernetes/cluster-admin.kubeconfig</literal> as determined by
+   <xref linkend="opt-services.kubernetes.pki.etcClusterAdminKubeconfig"/>.
+   <literal>export KUBECONFIG=/etc/kubernetes/cluster-admin.kubeconfig</literal>
+   will make kubectl use this kubeconfig to access and authenticate the cluster.
+   The cluster-admin kubeconfig references an auto-generated keypair owned by
+   root. Thus, only root on the kubernetes master may obtain cluster-admin
+   rights by means of this file.
+ </para>
+
+</chapter>
diff --git a/nixos/doc/manual/configuration/wireless.xml b/nixos/doc/manual/configuration/wireless.xml
index 999447234ad..f7e99ff0e35 100644
--- a/nixos/doc/manual/configuration/wireless.xml
+++ b/nixos/doc/manual/configuration/wireless.xml
@@ -29,7 +29,10 @@
   networks are set, it will default to using a configuration file at
   <literal>/etc/wpa_supplicant.conf</literal>. You should edit this file
   yourself to define wireless networks, WPA keys and so on (see
-  wpa_supplicant.conf(5)).
+  <citerefentry>
+    <refentrytitle>wpa_supplicant.conf</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </citerefentry>).
  </para>
 
  <para>
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
index 2277edede8e..fd4bb975a05 100644
--- a/nixos/doc/manual/release-notes/rl-1903.xml
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -54,6 +54,13 @@
      </itemizedlist>
      <para>to <literal>false</literal> and enable your preferred display manager.</para>
     </note>
+     <para>
+       A major refactoring of the Kubernetes module has been completed.
+       Refactorings primarily focus on decoupling components and enhancing
+       security. Two-way TLS and RBAC has been enabled by default for all
+       components, which slightly changes the way the module is configured.
+       See: <xref linkend="sec-kubernetes"/> for details.
+     </para>
    </listitem>
   </itemizedlist>
  </section>
@@ -452,6 +459,23 @@
      <option>services.matomo.package</option> which determines the used
      Matomo version.
     </para>
+    <para>
+     The Matomo module now also comes with the systemd service <literal>matomo-archive-processing.service</literal>
+     and a timer that automatically triggers archive processing every hour.
+     This means that you can safely
+     <link xlink:href="https://matomo.org/docs/setup-auto-archiving/#disable-browser-triggers-for-matomo-archiving-and-limit-matomo-reports-to-updating-every-hour">
+      disable browser triggers for Matomo archiving
+     </link> at <literal>Administration > System > General Settings</literal>.
+    </para>
+    <para>
+     Additionally, you can enable to
+     <link xlink:href="https://matomo.org/docs/privacy/#step-2-delete-old-visitors-logs">
+      delete old visitor logs
+     </link> at <literal>Administration > System > Privacy</literal>,
+     but make sure that you run <literal>systemctl start matomo-archive-processing.service</literal>
+     at least once without errors if you have already collected data before,
+     so that the reports get archived before the source data gets deleted.
+    </para>
    </listitem>
    <listitem>
     <para>
@@ -555,6 +579,40 @@
      provisioning.
     </para>
    </listitem>
+   <listitem>
+     <para>
+       The use of insecure ports on kubernetes has been deprecated.
+       Thus options:
+       <varname>services.kubernetes.apiserver.port</varname> and
+       <varname>services.kubernetes.controllerManager.port</varname>
+       has been renamed to <varname>.insecurePort</varname>,
+       and default of both options has changed to 0 (disabled).
+     </para>
+    </listitem>
+    <listitem>
+      <para>
+        Note that the default value of
+        <varname>services.kubernetes.apiserver.bindAddress</varname>
+        has changed from 127.0.0.1 to 0.0.0.0, allowing the apiserver to be
+        accessible from outside the master node itself.
+        If the apiserver insecurePort is enabled,
+        it is strongly recommended to only bind on the loopback interface. See:
+        <varname>services.kubernetes.apiserver.insecurebindAddress</varname>.
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        The option <varname>services.kubernetes.apiserver.allowPrivileged</varname>
+        and <varname>services.kubernetes.kubelet.allowPrivileged</varname> now
+        defaults to false. Disallowing privileged containers on the cluster.
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        The kubernetes module does no longer add the kubernetes package to
+        <varname>environment.systemPackages</varname> implicitly.
+      </para>
+    </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix
index 09d53c322fb..9b2e1235b74 100644
--- a/nixos/modules/misc/documentation.nix
+++ b/nixos/modules/misc/documentation.nix
@@ -156,6 +156,7 @@ in
       environment.systemPackages = [ pkgs.man-db ];
       environment.pathsToLink = [ "/share/man" ];
       environment.extraOutputsToInstall = [ "man" ] ++ optional cfg.dev.enable "devman";
+      environment.etc."man.conf".source = "${pkgs.man-db}/etc/man_db.conf";
     })
 
     (mkIf cfg.info.enable {
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index d6e6ccaecd2..5f134b51939 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -290,7 +290,7 @@
       riak-cs = 263;
       infinoted = 264;
       sickbeard = 265;
-      # glance = 266; # unused, removed 2017-12-13
+      headphones = 266;
       couchpotato = 267;
       gogs = 268;
       pdns-recursor = 269;
@@ -590,7 +590,7 @@
       riak-cs = 263;
       infinoted = 264;
       sickbeard = 265;
-      # glance = 266; # unused, removed 2017-12-13
+      headphones = 266;
       couchpotato = 267;
       gogs = 268;
       kresd = 270;
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 003b9df95d7..7af6e117c51 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -82,6 +82,7 @@
   ./misc/version.nix
   ./programs/adb.nix
   ./programs/atop.nix
+  ./programs/autojump.nix
   ./programs/bash/bash.nix
   ./programs/bcc.nix
   ./programs/blcr.nix
@@ -195,9 +196,17 @@
   ./services/backup/tarsnap.nix
   ./services/backup/znapzend.nix
   ./services/cluster/hadoop/default.nix
+  ./services/cluster/kubernetes/addons/dns.nix
+  ./services/cluster/kubernetes/addons/dashboard.nix
+  ./services/cluster/kubernetes/addon-manager.nix
+  ./services/cluster/kubernetes/apiserver.nix
+  ./services/cluster/kubernetes/controller-manager.nix
   ./services/cluster/kubernetes/default.nix
-  ./services/cluster/kubernetes/dns.nix
-  ./services/cluster/kubernetes/dashboard.nix
+  ./services/cluster/kubernetes/flannel.nix
+  ./services/cluster/kubernetes/kubelet.nix
+  ./services/cluster/kubernetes/pki.nix
+  ./services/cluster/kubernetes/proxy.nix
+  ./services/cluster/kubernetes/scheduler.nix
   ./services/computing/boinc/client.nix
   ./services/computing/torque/server.nix
   ./services/computing/torque/mom.nix
@@ -283,6 +292,7 @@
   ./services/hardware/acpid.nix
   ./services/hardware/actkbd.nix
   ./services/hardware/bluetooth.nix
+  ./services/hardware/bolt.nix
   ./services/hardware/brltty.nix
   ./services/hardware/freefall.nix
   ./services/hardware/fwupd.nix
@@ -383,6 +393,7 @@
   ./services/misc/gogs.nix
   ./services/misc/gollum.nix
   ./services/misc/gpsd.nix
+  ./services/misc/headphones.nix
   ./services/misc/home-assistant.nix
   ./services/misc/ihaskell.nix
   ./services/misc/irkerd.nix
@@ -719,6 +730,8 @@
   ./services/web-apps/atlassian/jira.nix
   ./services/web-apps/codimd.nix
   ./services/web-apps/frab.nix
+  ./services/web-apps/icingaweb2/icingaweb2.nix
+  ./services/web-apps/icingaweb2/module-monitoring.nix
   ./services/web-apps/mattermost.nix
   ./services/web-apps/nextcloud.nix
   ./services/web-apps/nexus.nix
diff --git a/nixos/modules/programs/autojump.nix b/nixos/modules/programs/autojump.nix
new file mode 100644
index 00000000000..3a8feec4bb4
--- /dev/null
+++ b/nixos/modules/programs/autojump.nix
@@ -0,0 +1,33 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.programs.autojump;
+  prg = config.programs;
+in
+{
+  options = {
+    programs.autojump = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable autojump.
+        '';
+      };
+    };
+  }; 
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+    environment.pathsToLink = [ "/share/autojump" ];
+    environment.systemPackages = [ pkgs.autojump ];
+
+    programs.bash.interactiveShellInit = "source ${pkgs.autojump}/share/autojump/autojump.bash"; 
+    programs.zsh.interactiveShellInit = mkIf prg.zsh.enable "source ${pkgs.autojump}/share/autojump/autojump.zsh";
+    programs.fish.interactiveShellInit = mkIf prg.fish.enable "source ${pkgs.autojump}/share/autojump/autojump.fish";
+  };
+}
diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix
index 86153d93385..b27e122bd1d 100644
--- a/nixos/modules/programs/singularity.nix
+++ b/nixos/modules/programs/singularity.nix
@@ -3,18 +3,27 @@
 with lib;
 let
   cfg = config.programs.singularity;
+  singularity = pkgs.singularity.overrideAttrs (attrs : {
+    installPhase = attrs.installPhase + ''
+      mv $bin/libexec/singularity/bin/starter-suid $bin/libexec/singularity/bin/starter-suid.orig
+      ln -s /run/wrappers/bin/singularity-suid $bin/libexec/singularity/bin/starter-suid
+    '';
+  });
 in {
   options.programs.singularity = {
     enable = mkEnableOption "Singularity";
   };
 
   config = mkIf cfg.enable {
-      environment.systemPackages = [ pkgs.singularity ];
-      systemd.tmpfiles.rules = [ "d /var/singularity/mnt/session 0770 root root -"
-                                 "d /var/singularity/mnt/final 0770 root root -"
-                                 "d /var/singularity/mnt/overlay 0770 root root -"
-                                 "d /var/singularity/mnt/container 0770 root root -"
-                                 "d /var/singularity/mnt/source 0770 root root -"];
+      environment.systemPackages = [ singularity ];
+      security.wrappers.singularity-suid.source = "${singularity}/libexec/singularity/bin/starter-suid.orig";
+      systemd.tmpfiles.rules = [
+        "d /var/singularity/mnt/session 0770 root root -"
+        "d /var/singularity/mnt/final 0770 root root -"
+        "d /var/singularity/mnt/overlay 0770 root root -"
+        "d /var/singularity/mnt/container 0770 root root -"
+        "d /var/singularity/mnt/source 0770 root root -"
+      ];
   };
 
 }
diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index 4640c1d78d2..46965dd35b7 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -88,7 +88,8 @@ in
         type = types.lines;
         default = "";
         description = ''
-          Extra configuration text appended to <filename>ssh_config</filename>.
+          Extra configuration text prepended to <filename>ssh_config</filename>. Other generated
+          options will be added after a <code>Host *</code> pattern.
           See <citerefentry><refentrytitle>ssh_config</refentrytitle><manvolnum>5</manvolnum></citerefentry>
           for help.
         '';
@@ -203,6 +204,11 @@ in
     # generation in the sshd service.
     environment.etc."ssh/ssh_config".text =
       ''
+        # Custom options from `extraConfig`, to override generated options
+        ${cfg.extraConfig}
+
+        # Generated options from other settings
+        Host *
         AddressFamily ${if config.networking.enableIPv6 then "any" else "inet"}
 
         ${optionalString cfg.setXAuthLocation ''
@@ -213,8 +219,6 @@ in
 
         ${optionalString (cfg.pubkeyAcceptedKeyTypes != []) "PubkeyAcceptedKeyTypes ${concatStringsSep "," cfg.pubkeyAcceptedKeyTypes}"}
         ${optionalString (cfg.hostKeyAlgorithms != []) "HostKeyAlgorithms ${concatStringsSep "," cfg.hostKeyAlgorithms}"}
-
-        ${cfg.extraConfig}
       '';
 
     environment.etc."ssh/ssh_known_hosts".text = knownHostsText;
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 24ab963f718..1e6557e1f0e 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -40,9 +40,19 @@ with lib;
     (mkRenamedOptionModule [ "services" "kibana" "host" ] [ "services" "kibana" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ])
     (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"])
+    (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "port" ] ["services" "kubernetes" "apiserver" "insecurePort"])
     (mkRemovedOptionModule [ "services" "kubernetes" "apiserver" "publicAddress" ] "")
     (mkRenamedOptionModule [ "services" "kubernetes" "addons" "dashboard" "enableRBAC" ] [ "services" "kubernetes" "addons" "dashboard" "rbac" "enable" ])
+    (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "address" ] ["services" "kubernetes" "controllerManager" "bindAddress"])
+    (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "port" ] ["services" "kubernetes" "controllerManager" "insecurePort"])
+    (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "servers" ] [ "services" "kubernetes" "apiserver" "etcd" "servers" ])
+    (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "keyFile" ] [ "services" "kubernetes" "apiserver" "etcd" "keyFile" ])
+    (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "certFile" ] [ "services" "kubernetes" "apiserver" "etcd" "certFile" ])
+    (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "caFile" ] [ "services" "kubernetes" "apiserver" "etcd" "caFile" ])
+    (mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "applyManifests" ] "")
     (mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "cadvisorPort" ] "")
+    (mkRenamedOptionModule [ "services" "kubernetes" "proxy" "address" ] ["services" "kubernetes" "proxy" "bindAddress"])
+    (mkRemovedOptionModule [ "services" "kubernetes" "verbose" ] "")
     (mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "defaultListenAddress" ])
@@ -59,6 +69,7 @@ with lib;
     (mkRenamedOptionModule [ "services" "statsd" "host" ] [ "services" "statsd" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "subsonic" "host" ] [ "services" "subsonic" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
+    (mkRenamedOptionModule [ "services" "vmwareGuest" ] [ "virtualisation" "vmware" "guest" ])
     (mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
 
     (mkRenamedOptionModule [ "services" "gitlab" "stateDir" ] [ "services" "gitlab" "statePath" ])
diff --git a/nixos/modules/services/cluster/kubernetes/addon-manager.nix b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
new file mode 100644
index 00000000000..17f2dde31a7
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
@@ -0,0 +1,167 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.addonManager;
+
+  isRBACEnabled = elem "RBAC" top.apiserver.authorizationMode;
+
+  addons = pkgs.runCommand "kubernetes-addons" { } ''
+    mkdir -p $out
+    # since we are mounting the addons to the addon manager, they need to be copied
+    ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
+      pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
+    ) (cfg.addons))}
+  '';
+in
+{
+  ###### interface
+  options.services.kubernetes.addonManager = with lib.types; {
+
+    bootstrapAddons = mkOption {
+      description = ''
+        Bootstrap addons are like regular addons, but they are applied with cluster-admin rigths.
+        They are applied at addon-manager startup only.
+      '';
+      default = { };
+      type = attrsOf attrs;
+      example = literalExample ''
+        {
+          "my-service" = {
+            "apiVersion" = "v1";
+            "kind" = "Service";
+            "metadata" = {
+              "name" = "my-service";
+              "namespace" = "default";
+            };
+            "spec" = { ... };
+          };
+        }
+      '';
+    };
+
+    addons = mkOption {
+      description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
+      default = { };
+      type = attrsOf (either attrs (listOf attrs));
+      example = literalExample ''
+        {
+          "my-service" = {
+            "apiVersion" = "v1";
+            "kind" = "Service";
+            "metadata" = {
+              "name" = "my-service";
+              "namespace" = "default";
+            };
+            "spec" = { ... };
+          };
+        }
+        // import <nixpkgs/nixos/modules/services/cluster/kubernetes/dashboard.nix> { cfg = config.services.kubernetes; };
+      '';
+    };
+
+    enable = mkEnableOption "Whether to enable Kubernetes addon manager.";
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    environment.etc."kubernetes/addons".source = "${addons}/";
+
+    systemd.services.kube-addon-manager = {
+      description = "Kubernetes addon manager";
+      wantedBy = [ "kubernetes.target" ];
+      after = [ "kube-apiserver.service" ];
+      environment.ADDON_PATH = "/etc/kubernetes/addons/";
+      path = [ pkgs.gawk ];
+      serviceConfig = {
+        Slice = "kubernetes.slice";
+        ExecStart = "${top.package}/bin/kube-addons";
+        WorkingDirectory = top.dataDir;
+        User = "kubernetes";
+        Group = "kubernetes";
+        Restart = "on-failure";
+        RestartSec = 10;
+      };
+    };
+
+    services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled
+    (let
+      name = system:kube-addon-manager;
+      namespace = "kube-system";
+    in
+    {
+
+      kube-addon-manager-r = {
+        apiVersion = "rbac.authorization.k8s.io/v1";
+        kind = "Role";
+        metadata = {
+          inherit name namespace;
+        };
+        rules = [{
+          apiGroups = ["*"];
+          resources = ["*"];
+          verbs = ["*"];
+        }];
+      };
+
+      kube-addon-manager-rb = {
+        apiVersion = "rbac.authorization.k8s.io/v1";
+        kind = "RoleBinding";
+        metadata = {
+          inherit name namespace;
+        };
+        roleRef = {
+          apiGroup = "rbac.authorization.k8s.io";
+          kind = "Role";
+          inherit name;
+        };
+        subjects = [{
+          apiGroup = "rbac.authorization.k8s.io";
+          kind = "User";
+          inherit name;
+        }];
+      };
+
+      kube-addon-manager-cluster-lister-cr = {
+        apiVersion = "rbac.authorization.k8s.io/v1";
+        kind = "ClusterRole";
+        metadata = {
+          name = "${name}:cluster-lister";
+        };
+        rules = [{
+          apiGroups = ["*"];
+          resources = ["*"];
+          verbs = ["list"];
+        }];
+      };
+
+      kube-addon-manager-cluster-lister-crb = {
+        apiVersion = "rbac.authorization.k8s.io/v1";
+        kind = "ClusterRoleBinding";
+        metadata = {
+          name = "${name}:cluster-lister";
+        };
+        roleRef = {
+          apiGroup = "rbac.authorization.k8s.io";
+          kind = "ClusterRole";
+          name = "${name}:cluster-lister";
+        };
+        subjects = [{
+          kind = "User";
+          inherit name;
+        }];
+      };
+    });
+
+    services.kubernetes.pki.certs = {
+      addonManager = top.lib.mkCert {
+        name = "kube-addon-manager";
+        CN = "system:kube-addon-manager";
+        action = "systemctl restart kube-addon-manager.service";
+      };
+    };
+  };
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/dashboard.nix b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
index cbd6e8f7bf7..454e7d35bc0 100644
--- a/nixos/modules/services/cluster/kubernetes/dashboard.nix
+++ b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
@@ -8,6 +8,13 @@ in {
   options.services.kubernetes.addons.dashboard = {
     enable = mkEnableOption "kubernetes dashboard addon";
 
+    extraArgs = mkOption {
+      description = "Extra arguments to append to the dashboard cmdline";
+      type = types.listOf types.str;
+      default = [];
+      example = ["--enable-skip-login"];
+    };
+
     rbac = mkOption {
       description = "Role-based access control (RBAC) options";
       default = {};
@@ -31,7 +38,7 @@ in {
     version = mkOption {
       description = "Which version of the kubernetes dashboard to deploy";
       type = types.str;
-      default = "v1.8.3";
+      default = "v1.10.1";
     };
 
     image = mkOption {
@@ -39,9 +46,9 @@ in {
       type = types.attrs;
       default = {
         imageName = "k8s.gcr.io/kubernetes-dashboard-amd64";
-        imageDigest = "sha256:dc4026c1b595435ef5527ca598e1e9c4343076926d7d62b365c44831395adbd0";
+        imageDigest = "sha256:0ae6b69432e78069c5ce2bcde0fe409c5c4d6f0f4d9cd50a17974fea38898747";
         finalImageTag = cfg.version;
-        sha256 = "18ajcg0q1vignfjk2sm4xj4wzphfz8wah69ps8dklqfvv0164mc8";
+        sha256 = "01xrr4pwgr2hcjrjsi3d14ifpzdfbxzqpzxbk2fkbjb9zkv38zxy";
       };
     };
   };
@@ -99,7 +106,7 @@ in {
                     memory = "100Mi";
                   };
                 };
-                args = ["--auto-generate-certificates"];
+                args = ["--auto-generate-certificates"] ++ cfg.extraArgs;
                 volumeMounts = [{
                   name = "tmp-volume";
                   mountPath = "/tmp";
diff --git a/nixos/modules/services/cluster/kubernetes/dns.nix b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
index 5a3e281ea69..8f3234bfc70 100644
--- a/nixos/modules/services/cluster/kubernetes/dns.nix
+++ b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
@@ -3,7 +3,7 @@
 with lib;
 
 let
-  version = "1.2.5";
+  version = "1.3.1";
   cfg = config.services.kubernetes.addons.dns;
   ports = {
     dns = 10053;
@@ -43,9 +43,9 @@ in {
       type = types.attrs;
       default = {
         imageName = "coredns/coredns";
-        imageDigest = "sha256:33c8da20b887ae12433ec5c40bfddefbbfa233d5ce11fb067122e68af30291d6";
+        imageDigest = "sha256:02382353821b12c21b062c59184e227e001079bb13ebd01f9d3270ba0fcbf1e4";
         finalImageTag = version;
-        sha256 = "13q19rgwapv27xcs664dw502254yw4zw63insf6g2danidv2mg6i";
+        sha256 = "0vbylgyxv2jm2mnzk6f28jbsj305zsxmx3jr6ngjq461czcl5fi5";
       };
     };
   };
@@ -54,21 +54,7 @@ in {
     services.kubernetes.kubelet.seedDockerImages =
       singleton (pkgs.dockerTools.pullImage cfg.coredns);
 
-    services.kubernetes.addonManager.addons = {
-      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";
-        };
-      };
-
+    services.kubernetes.addonManager.bootstrapAddons = {
       coredns-cr = {
         apiVersion = "rbac.authorization.k8s.io/v1beta1";
         kind = "ClusterRole";
@@ -123,6 +109,22 @@ in {
           }
         ];
       };
+    };
+
+    services.kubernetes.addonManager.addons = {
+      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-cm = {
         apiVersion = "v1";
diff --git a/nixos/modules/services/cluster/kubernetes/apiserver.nix b/nixos/modules/services/cluster/kubernetes/apiserver.nix
new file mode 100644
index 00000000000..81e45b417de
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/apiserver.nix
@@ -0,0 +1,428 @@
+  { config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.apiserver;
+
+  isRBACEnabled = elem "RBAC" cfg.authorizationMode;
+
+  apiserverServiceIP = (concatStringsSep "." (
+    take 3 (splitString "." cfg.serviceClusterIpRange
+  )) + ".1");
+in
+{
+  ###### interface
+  options.services.kubernetes.apiserver = with lib.types; {
+
+    advertiseAddress = mkOption {
+      description = ''
+        Kubernetes apiserver IP address on which to advertise the apiserver
+        to members of the cluster. This address must be reachable by the rest
+        of the cluster.
+      '';
+      default = null;
+      type = nullOr str;
+    };
+
+    allowPrivileged = mkOption {
+      description = "Whether to allow privileged containers on Kubernetes.";
+      default = false;
+      type = bool;
+    };
+
+    authorizationMode = mkOption {
+      description = ''
+        Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
+        <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/>
+      '';
+      default = ["RBAC" "Node"]; # Enabling RBAC by default, although kubernetes default is AllowAllow
+      type = listOf (enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
+    };
+
+    authorizationPolicy = mkOption {
+      description = ''
+        Kubernetes apiserver authorization policy file. See
+        <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/>
+      '';
+      default = [];
+      type = listOf attrs;
+    };
+
+    basicAuthFile = mkOption {
+      description = ''
+        Kubernetes apiserver basic authentication file. See
+        <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authentication"/>
+      '';
+      default = null;
+      type = nullOr path;
+    };
+
+    bindAddress = mkOption {
+      description = ''
+        The IP address on which to listen for the --secure-port port.
+        The associated interface(s) must be reachable by the rest
+        of the cluster, and by CLI/web clients.
+      '';
+      default = "0.0.0.0";
+      type = str;
+    };
+
+    clientCaFile = mkOption {
+      description = "Kubernetes apiserver CA file for client auth.";
+      default = top.caFile;
+      type = nullOr path;
+    };
+
+    disableAdmissionPlugins = mkOption {
+      description = ''
+        Kubernetes admission control plugins to disable. See
+        <link xlink:href="https://kubernetes.io/docs/admin/admission-controllers/"/>
+      '';
+      default = [];
+      type = listOf str;
+    };
+
+    enable = mkEnableOption "Kubernetes apiserver";
+
+    enableAdmissionPlugins = mkOption {
+      description = ''
+        Kubernetes admission control plugins to enable. See
+        <link xlink:href="https://kubernetes.io/docs/admin/admission-controllers/"/>
+      '';
+      default = [
+        "NamespaceLifecycle" "LimitRanger" "ServiceAccount"
+        "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds"
+        "NodeRestriction"
+      ];
+      example = [
+        "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
+        "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
+        "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
+      ];
+      type = listOf str;
+    };
+
+    etcd = {
+      servers = mkOption {
+        description = "List of etcd servers.";
+        default = ["http://127.0.0.1:2379"];
+        type = types.listOf types.str;
+      };
+
+      keyFile = mkOption {
+        description = "Etcd key file.";
+        default = null;
+        type = types.nullOr types.path;
+      };
+
+      certFile = mkOption {
+        description = "Etcd cert file.";
+        default = null;
+        type = types.nullOr types.path;
+      };
+
+      caFile = mkOption {
+        description = "Etcd ca file.";
+        default = top.caFile;
+        type = types.nullOr types.path;
+      };
+    };
+
+    extraOpts = mkOption {
+      description = "Kubernetes apiserver extra command line options.";
+      default = "";
+      type = str;
+    };
+
+    extraSANs = mkOption {
+      description = "Extra x509 Subject Alternative Names to be added to the kubernetes apiserver tls cert.";
+      default = [];
+      type = listOf str;
+    };
+
+    featureGates = mkOption {
+      description = "List set of feature gates";
+      default = top.featureGates;
+      type = listOf str;
+    };
+
+    insecureBindAddress = mkOption {
+      description = "The IP address on which to serve the --insecure-port.";
+      default = "127.0.0.1";
+      type = str;
+    };
+
+    insecurePort = mkOption {
+      description = "Kubernetes apiserver insecure listening port. (0 = disabled)";
+      default = 0;
+      type = int;
+    };
+
+    kubeletClientCaFile = mkOption {
+      description = "Path to a cert file for connecting to kubelet.";
+      default = top.caFile;
+      type = nullOr path;
+    };
+
+    kubeletClientCertFile = mkOption {
+      description = "Client certificate to use for connections to kubelet.";
+      default = null;
+      type = nullOr path;
+    };
+
+    kubeletClientKeyFile = mkOption {
+      description = "Key to use for connections to kubelet.";
+      default = null;
+      type = nullOr path;
+    };
+
+    kubeletHttps = mkOption {
+      description = "Whether to use https for connections to kubelet.";
+      default = true;
+      type = bool;
+    };
+
+    runtimeConfig = mkOption {
+      description = ''
+        Api runtime configuration. See
+        <link xlink:href="https://kubernetes.io/docs/tasks/administer-cluster/cluster-management/"/>
+      '';
+      default = "authentication.k8s.io/v1beta1=true";
+      example = "api/all=false,api/v1=true";
+      type = str;
+    };
+
+    storageBackend = mkOption {
+      description = ''
+        Kubernetes apiserver storage backend.
+      '';
+      default = "etcd3";
+      type = enum ["etcd2" "etcd3"];
+    };
+
+    securePort = mkOption {
+      description = "Kubernetes apiserver secure port.";
+      default = 6443;
+      type = int;
+    };
+
+    serviceAccountKeyFile = mkOption {
+      description = ''
+        Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
+        used to verify ServiceAccount tokens. By default tls private key file
+        is used.
+      '';
+      default = null;
+      type = nullOr path;
+    };
+
+    serviceClusterIpRange = mkOption {
+      description = ''
+        A CIDR notation IP range from which to assign service cluster IPs.
+        This must not overlap with any IP ranges assigned to nodes for pods.
+      '';
+      default = "10.0.0.0/24";
+      type = str;
+    };
+
+    tlsCertFile = mkOption {
+      description = "Kubernetes apiserver certificate file.";
+      default = null;
+      type = nullOr path;
+    };
+
+    tlsKeyFile = mkOption {
+      description = "Kubernetes apiserver private key file.";
+      default = null;
+      type = nullOr path;
+    };
+
+    tokenAuthFile = mkOption {
+      description = ''
+        Kubernetes apiserver token authentication file. See
+        <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authentication"/>
+      '';
+      default = null;
+      type = nullOr path;
+    };
+
+    verbosity = mkOption {
+      description = ''
+        Optional glog verbosity level for logging statements. See
+        <link xlink:href="https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md"/>
+      '';
+      default = null;
+      type = nullOr int;
+    };
+
+    webhookConfig = mkOption {
+      description = ''
+        Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
+        See <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/webhook/"/>
+      '';
+      default = null;
+      type = nullOr path;
+    };
+
+  };
+
+
+  ###### implementation
+  config = mkMerge [
+
+    (mkIf cfg.enable {
+        systemd.services.kube-apiserver = {
+          description = "Kubernetes APIServer Service";
+          wantedBy = [ "kubernetes.target" ];
+          after = [ "network.target" ];
+          serviceConfig = {
+            Slice = "kubernetes.slice";
+            ExecStart = ''${top.package}/bin/kube-apiserver \
+              --allow-privileged=${boolToString cfg.allowPrivileged} \
+              --authorization-mode=${concatStringsSep "," cfg.authorizationMode} \
+                ${optionalString (elem "ABAC" cfg.authorizationMode)
+                  "--authorization-policy-file=${
+                    pkgs.writeText "kube-auth-policy.jsonl"
+                    (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.authorizationPolicy)
+                  }"
+                } \
+                ${optionalString (elem "Webhook" cfg.authorizationMode)
+                  "--authorization-webhook-config-file=${cfg.webhookConfig}"
+                } \
+              --bind-address=${cfg.bindAddress} \
+              ${optionalString (cfg.advertiseAddress != null)
+                "--advertise-address=${cfg.advertiseAddress}"} \
+              ${optionalString (cfg.clientCaFile != null)
+                "--client-ca-file=${cfg.clientCaFile}"} \
+              --disable-admission-plugins=${concatStringsSep "," cfg.disableAdmissionPlugins} \
+              --enable-admission-plugins=${concatStringsSep "," cfg.enableAdmissionPlugins} \
+              --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
+              ${optionalString (cfg.etcd.caFile != null)
+                "--etcd-cafile=${cfg.etcd.caFile}"} \
+              ${optionalString (cfg.etcd.certFile != null)
+                "--etcd-certfile=${cfg.etcd.certFile}"} \
+              ${optionalString (cfg.etcd.keyFile != null)
+                "--etcd-keyfile=${cfg.etcd.keyFile}"} \
+              ${optionalString (cfg.featureGates != [])
+                "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+              ${optionalString (cfg.basicAuthFile != null)
+                "--basic-auth-file=${cfg.basicAuthFile}"} \
+              --kubelet-https=${boolToString cfg.kubeletHttps} \
+              ${optionalString (cfg.kubeletClientCaFile != null)
+                "--kubelet-certificate-authority=${cfg.kubeletClientCaFile}"} \
+              ${optionalString (cfg.kubeletClientCertFile != null)
+                "--kubelet-client-certificate=${cfg.kubeletClientCertFile}"} \
+              ${optionalString (cfg.kubeletClientKeyFile != null)
+                "--kubelet-client-key=${cfg.kubeletClientKeyFile}"} \
+              --insecure-bind-address=${cfg.insecureBindAddress} \
+              --insecure-port=${toString cfg.insecurePort} \
+              ${optionalString (cfg.runtimeConfig != "")
+                "--runtime-config=${cfg.runtimeConfig}"} \
+              --secure-port=${toString cfg.securePort} \
+              ${optionalString (cfg.serviceAccountKeyFile!=null)
+                "--service-account-key-file=${cfg.serviceAccountKeyFile}"} \
+              --service-cluster-ip-range=${cfg.serviceClusterIpRange} \
+              --storage-backend=${cfg.storageBackend} \
+              ${optionalString (cfg.tlsCertFile != null)
+                "--tls-cert-file=${cfg.tlsCertFile}"} \
+              ${optionalString (cfg.tlsKeyFile != null)
+                "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+              ${optionalString (cfg.tokenAuthFile != null)
+                "--token-auth-file=${cfg.tokenAuthFile}"} \
+              ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+              ${cfg.extraOpts}
+            '';
+            WorkingDirectory = top.dataDir;
+            User = "kubernetes";
+            Group = "kubernetes";
+            AmbientCapabilities = "cap_net_bind_service";
+            Restart = "on-failure";
+            RestartSec = 5;
+          };
+        };
+
+        services.etcd = {
+          clientCertAuth = mkDefault true;
+          peerClientCertAuth = mkDefault true;
+          listenClientUrls = mkDefault ["https://0.0.0.0:2379"];
+          listenPeerUrls = mkDefault ["https://0.0.0.0:2380"];
+          advertiseClientUrls = mkDefault ["https://${top.masterAddress}:2379"];
+          initialCluster = mkDefault ["${top.masterAddress}=https://${top.masterAddress}:2380"];
+          name = top.masterAddress;
+          initialAdvertisePeerUrls = mkDefault ["https://${top.masterAddress}:2380"];
+        };
+
+        services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled {
+
+          apiserver-kubelet-api-admin-crb = {
+            apiVersion = "rbac.authorization.k8s.io/v1";
+            kind = "ClusterRoleBinding";
+            metadata = {
+              name = "system:kube-apiserver:kubelet-api-admin";
+            };
+            roleRef = {
+              apiGroup = "rbac.authorization.k8s.io";
+              kind = "ClusterRole";
+              name = "system:kubelet-api-admin";
+            };
+            subjects = [{
+              kind = "User";
+              name = "system:kube-apiserver";
+            }];
+          };
+
+        };
+
+      services.kubernetes.pki.certs = with top.lib; {
+        apiServer = mkCert {
+          name = "kube-apiserver";
+          CN = "kubernetes";
+          hosts = [
+                    "kubernetes.default.svc"
+                    "kubernetes.default.svc.${top.addons.dns.clusterDomain}"
+                    cfg.advertiseAddress
+                    top.masterAddress
+                    apiserverServiceIP
+                    "127.0.0.1"
+                  ] ++ cfg.extraSANs;
+          action = "systemctl restart kube-apiserver.service";
+        };
+        apiserverKubeletClient = mkCert {
+          name = "kube-apiserver-kubelet-client";
+          CN = "system:kube-apiserver";
+          action = "systemctl restart kube-apiserver.service";
+        };
+        apiserverEtcdClient = mkCert {
+          name = "kube-apiserver-etcd-client";
+          CN = "etcd-client";
+          action = "systemctl restart kube-apiserver.service";
+        };
+        clusterAdmin = mkCert {
+          name = "cluster-admin";
+          CN = "cluster-admin";
+          fields = {
+            O = "system:masters";
+          };
+          privateKeyOwner = "root";
+        };
+        etcd = mkCert {
+          name = "etcd";
+          CN = top.masterAddress;
+          hosts = [
+                    "etcd.local"
+                    "etcd.${top.addons.dns.clusterDomain}"
+                    top.masterAddress
+                    cfg.advertiseAddress
+                  ];
+          privateKeyOwner = "etcd";
+          action = "systemctl restart etcd.service";
+        };
+      };
+
+    })
+
+  ];
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/controller-manager.nix b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
new file mode 100644
index 00000000000..dff97f144d5
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
@@ -0,0 +1,162 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.controllerManager;
+in
+{
+  ###### interface
+  options.services.kubernetes.controllerManager = with lib.types; {
+
+    allocateNodeCIDRs = mkOption {
+      description = "Whether to automatically allocate CIDR ranges for cluster nodes.";
+      default = true;
+      type = bool;
+    };
+
+    bindAddress = mkOption {
+      description = "Kubernetes controller manager listening address.";
+      default = "127.0.0.1";
+      type = str;
+    };
+
+    clusterCidr = mkOption {
+      description = "Kubernetes CIDR Range for Pods in cluster.";
+      default = top.clusterCidr;
+      type = str;
+    };
+
+    enable = mkEnableOption "Kubernetes controller manager.";
+
+    extraOpts = mkOption {
+      description = "Kubernetes controller manager extra command line options.";
+      default = "";
+      type = str;
+    };
+
+    featureGates = mkOption {
+      description = "List set of feature gates";
+      default = top.featureGates;
+      type = listOf str;
+    };
+
+    insecurePort = mkOption {
+      description = "Kubernetes controller manager insecure listening port.";
+      default = 0;
+      type = int;
+    };
+
+    kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes controller manager";
+
+    leaderElect = mkOption {
+      description = "Whether to start leader election before executing main loop.";
+      type = bool;
+      default = true;
+    };
+
+    rootCaFile = mkOption {
+      description = ''
+        Kubernetes controller manager certificate authority file included in
+        service account's token secret.
+      '';
+      default = top.caFile;
+      type = nullOr path;
+    };
+
+    securePort = mkOption {
+      description = "Kubernetes controller manager secure listening port.";
+      default = 10252;
+      type = int;
+    };
+
+    serviceAccountKeyFile = mkOption {
+      description = ''
+        Kubernetes controller manager PEM-encoded private RSA key file used to
+        sign service account tokens
+      '';
+      default = null;
+      type = nullOr path;
+    };
+
+    tlsCertFile = mkOption {
+      description = "Kubernetes controller-manager certificate file.";
+      default = null;
+      type = nullOr path;
+    };
+
+    tlsKeyFile = mkOption {
+      description = "Kubernetes controller-manager private key file.";
+      default = null;
+      type = nullOr path;
+    };
+
+    verbosity = mkOption {
+      description = ''
+        Optional glog verbosity level for logging statements. See
+        <link xlink:href="https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md"/>
+      '';
+      default = null;
+      type = nullOr int;
+    };
+
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    systemd.services.kube-controller-manager = {
+      description = "Kubernetes Controller Manager Service";
+      wantedBy = [ "kubernetes.target" ];
+      after = [ "kube-apiserver.service" ];
+      serviceConfig = {
+        RestartSec = "30s";
+        Restart = "on-failure";
+        Slice = "kubernetes.slice";
+        ExecStart = ''${top.package}/bin/kube-controller-manager \
+          --allocate-node-cidrs=${boolToString cfg.allocateNodeCIDRs} \
+          --bind-address=${cfg.bindAddress} \
+          ${optionalString (cfg.clusterCidr!=null)
+            "--cluster-cidr=${cfg.clusterCidr}"} \
+          ${optionalString (cfg.featureGates != [])
+            "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+          --kubeconfig=${top.lib.mkKubeConfig "kube-controller-manager" cfg.kubeconfig} \
+          --leader-elect=${boolToString cfg.leaderElect} \
+          ${optionalString (cfg.rootCaFile!=null)
+            "--root-ca-file=${cfg.rootCaFile}"} \
+          --port=${toString cfg.insecurePort} \
+          --secure-port=${toString cfg.securePort} \
+          ${optionalString (cfg.serviceAccountKeyFile!=null)
+            "--service-account-private-key-file=${cfg.serviceAccountKeyFile}"} \
+          ${optionalString (cfg.tlsCertFile!=null)
+            "--tls-cert-file=${cfg.tlsCertFile}"} \
+          ${optionalString (cfg.tlsKeyFile!=null)
+            "--tls-key-file=${cfg.tlsKeyFile}"} \
+          ${optionalString (elem "RBAC" top.apiserver.authorizationMode)
+            "--use-service-account-credentials"} \
+          ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+          ${cfg.extraOpts}
+        '';
+        WorkingDirectory = top.dataDir;
+        User = "kubernetes";
+        Group = "kubernetes";
+      };
+      path = top.path;
+    };
+
+    services.kubernetes.pki.certs = with top.lib; {
+      controllerManager = mkCert {
+        name = "kube-controller-manager";
+        CN = "kube-controller-manager";
+        action = "systemctl restart kube-controller-manager.service";
+      };
+      controllerManagerClient = mkCert {
+        name = "kube-controller-manager-client";
+        CN = "system:kube-controller-manager";
+        action = "systemctl restart kube-controller-manager.service";
+      };
+    };
+
+    services.kubernetes.controllerManager.kubeconfig.server = mkDefault top.apiserverAddress;
+  };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/default.nix b/nixos/modules/services/cluster/kubernetes/default.nix
index 6f3c45b29bf..375e33e91b5 100644
--- a/nixos/modules/services/cluster/kubernetes/default.nix
+++ b/nixos/modules/services/cluster/kubernetes/default.nix
@@ -5,74 +5,52 @@ with lib;
 let
   cfg = config.services.kubernetes;
 
-  # YAML config; see:
-  #   https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/
-  #   https://github.com/kubernetes/kubernetes/blob/release-1.10/pkg/kubelet/apis/kubeletconfig/v1beta1/types.go
-  #
-  # TODO: migrate the following flags to this config file
-  #
-  #   --pod-manifest-path
-  #   --address
-  #   --port
-  #   --tls-cert-file
-  #   --tls-private-key-file
-  #   --client-ca-file
-  #   --authentication-token-webhook
-  #   --authentication-token-webhook-cache-ttl
-  #   --authorization-mode
-  #   --healthz-bind-address
-  #   --healthz-port
-  #   --allow-privileged
-  #   --cluster-dns
-  #   --cluster-domain
-  #   --hairpin-mode
-  #   --feature-gates
-  kubeletConfig = pkgs.runCommand "kubelet-config.yaml" { } ''
-    echo > $out ${pkgs.lib.escapeShellArg (builtins.toJSON {
-      kind = "KubeletConfiguration";
-      apiVersion = "kubelet.config.k8s.io/v1beta1";
-      ${if cfg.kubelet.applyManifests then "staticPodPath" else null} =
-        manifests;
-    })}
-  '';
-
-  infraContainer = pkgs.dockerTools.buildImage {
-    name = "pause";
-    tag = "latest";
-    contents = cfg.package.pause;
-    config.Cmd = "/bin/pause";
-  };
-
-  mkKubeConfig = name: cfg: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
+  mkKubeConfig = name: conf: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
     apiVersion = "v1";
     kind = "Config";
     clusters = [{
       name = "local";
       cluster.certificate-authority = cfg.caFile;
-      cluster.server = cfg.server;
+      cluster.server = conf.server;
     }];
     users = [{
-      name = "kubelet";
+      inherit name;
       user = {
-        client-certificate = cfg.certFile;
-        client-key = cfg.keyFile;
+        client-certificate = conf.certFile;
+        client-key = conf.keyFile;
       };
     }];
     contexts = [{
       context = {
         cluster = "local";
-        user = "kubelet";
+        user = name;
       };
-      current-context = "kubelet-context";
+      current-context = "local";
     }];
   });
 
+  caCert = secret "ca";
+
+  etcdEndpoints = ["https://${cfg.masterAddress}:2379"];
+
+  mkCert = { name, CN, hosts ? [], fields ? {}, action ? "",
+             privateKeyOwner ? "kubernetes" }: rec {
+    inherit name caCert CN hosts fields action;
+    cert = secret name;
+    key = secret "${name}-key";
+    privateKeyOptions = {
+      owner = privateKeyOwner;
+      group = "nogroup";
+      mode = "0600";
+      path = key;
+    };
+  };
+
+  secret = name: "${cfg.secretsPath}/${name}.pem";
+
   mkKubeConfigOptions = prefix: {
     server = mkOption {
       description = "${prefix} kube-apiserver server address.";
-      default = "http://${if cfg.apiserver.advertiseAddress != null
-                          then cfg.apiserver.advertiseAddress
-                          else "127.0.0.1"}:${toString cfg.apiserver.port}";
       type = types.str;
     };
 
@@ -101,66 +79,6 @@ let
     certFile = mkDefault cfg.kubeconfig.certFile;
     keyFile = mkDefault cfg.kubeconfig.keyFile;
   };
-
-  cniConfig =
-    if cfg.kubelet.cni.config != [] && !(isNull cfg.kubelet.cni.configDir) then
-      throw "Verbatim CNI-config and CNI configDir cannot both be set."
-    else if !(isNull cfg.kubelet.cni.configDir) then
-      cfg.kubelet.cni.configDir
-    else
-      (pkgs.buildEnv {
-        name = "kubernetes-cni-config";
-        paths = imap (i: entry:
-          pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
-        ) cfg.kubelet.cni.config;
-      });
-
-  manifests = pkgs.buildEnv {
-    name = "kubernetes-manifests";
-    paths = mapAttrsToList (name: manifest:
-      pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
-    ) cfg.kubelet.manifests;
-  };
-
-  addons = pkgs.runCommand "kubernetes-addons" { } ''
-    mkdir -p $out
-    # since we are mounting the addons to the addon manager, they need to be copied
-    ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
-      pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
-    ) (cfg.addonManager.addons))}
-  '';
-
-  taintOptions = { name, ... }: {
-    options = {
-      key = mkOption {
-        description = "Key of taint.";
-        default = name;
-        type = types.str;
-      };
-      value = mkOption {
-        description = "Value of taint.";
-        type = types.str;
-      };
-      effect = mkOption {
-        description = "Effect of taint.";
-        example = "NoSchedule";
-        type = types.enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
-      };
-    };
-  };
-
-  taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.kubelet.taints);
-
-  # needed for flannel to pass options to docker
-  mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
-    buildInputs = [ pkgs.makeWrapper ];
-  } ''
-    mkdir -p $out
-    cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
-
-    # bashInteractive needed for `compgen`
-    makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
-  '';
 in {
 
   ###### interface
@@ -170,8 +88,9 @@ in {
       description = ''
         Kubernetes role that this machine should take.
 
-        Master role will enable etcd, apiserver, scheduler and controller manager
-        services. Node role will enable etcd, docker, kubelet and proxy services.
+        Master role will enable etcd, apiserver, scheduler, controller manager
+        addon manager, flannel and proxy services.
+        Node role will enable flannel, docker, kubelet and proxy services.
       '';
       default = [];
       type = types.listOf (types.enum ["master" "node"]);
@@ -184,40 +103,17 @@ in {
       defaultText = "pkgs.kubernetes";
     };
 
-    verbose = mkOption {
-      description = "Kubernetes enable verbose mode for debugging.";
-      default = false;
-      type = types.bool;
-    };
-
-    etcd = {
-      servers = mkOption {
-        description = "List of etcd servers. By default etcd is started, except if this option is changed.";
-        default = ["http://127.0.0.1:2379"];
-        type = types.listOf types.str;
-      };
-
-      keyFile = mkOption {
-        description = "Etcd key file.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      certFile = mkOption {
-        description = "Etcd cert file.";
-        default = null;
-        type = types.nullOr types.path;
-      };
+    kubeconfig = mkKubeConfigOptions "Default kubeconfig";
 
-      caFile = mkOption {
-        description = "Etcd ca file.";
-        default = cfg.caFile;
-        type = types.nullOr types.path;
-      };
+    apiserverAddress = mkOption {
+      description = ''
+        Clusterwide accessible address for the kubernetes apiserver,
+        including protocol and optional port.
+      '';
+      example = "https://kubernetes-apiserver.example.com:6443";
+      type = types.str;
     };
 
-    kubeconfig = mkKubeConfigOptions "Default kubeconfig";
-
     caFile = mkOption {
       description = "Default kubernetes certificate authority";
       type = types.nullOr types.path;
@@ -230,549 +126,22 @@ in {
       type = types.path;
     };
 
+    easyCerts = mkOption {
+      description = "Automatically setup x509 certificates and keys for the entire cluster.";
+      default = false;
+      type = types.bool;
+    };
+
     featureGates = mkOption {
-      description = "List set of feature gates";
+      description = "List set of feature gates.";
       default = [];
       type = types.listOf types.str;
     };
 
-    apiserver = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes apiserver.";
-        default = false;
-        type = types.bool;
-      };
-
-      featureGates = mkOption {
-        description = "List set of feature gates";
-        default = cfg.featureGates;
-        type = types.listOf types.str;
-      };
-
-      bindAddress = mkOption {
-        description = ''
-          The IP address on which to listen for the --secure-port port.
-          The associated interface(s) must be reachable by the rest
-          of the cluster, and by CLI/web clients.
-        '';
-        default = "0.0.0.0";
-        type = types.str;
-      };
-
-      advertiseAddress = mkOption {
-        description = ''
-          Kubernetes apiserver IP address on which to advertise the apiserver
-          to members of the cluster. This address must be reachable by the rest
-          of the cluster.
-        '';
-        default = null;
-        type = types.nullOr types.str;
-      };
-
-      storageBackend = mkOption {
-        description = ''
-          Kubernetes apiserver storage backend.
-        '';
-        default = "etcd3";
-        type = types.enum ["etcd2" "etcd3"];
-      };
-
-      port = mkOption {
-        description = "Kubernetes apiserver listening port.";
-        default = 8080;
-        type = types.int;
-      };
-
-      securePort = mkOption {
-        description = "Kubernetes apiserver secure port.";
-        default = 443;
-        type = types.int;
-      };
-
-      tlsCertFile = mkOption {
-        description = "Kubernetes apiserver certificate file.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      tlsKeyFile = mkOption {
-        description = "Kubernetes apiserver private key file.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      clientCaFile = mkOption {
-        description = "Kubernetes apiserver CA file for client auth.";
-        default = cfg.caFile;
-        type = types.nullOr types.path;
-      };
-
-      tokenAuthFile = mkOption {
-        description = ''
-          Kubernetes apiserver token authentication file. See
-          <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authentication"/>
-        '';
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      basicAuthFile = mkOption {
-        description = ''
-          Kubernetes apiserver basic authentication file. See
-          <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authentication"/>
-        '';
-        default = pkgs.writeText "users" ''
-          kubernetes,admin,0
-        '';
-        type = types.nullOr types.path;
-      };
-
-      authorizationMode = mkOption {
-        description = ''
-          Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
-          <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/>
-        '';
-        default = ["RBAC" "Node"];
-        type = types.listOf (types.enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
-      };
-
-      authorizationPolicy = mkOption {
-        description = ''
-          Kubernetes apiserver authorization policy file. See
-          <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/>
-        '';
-        default = [];
-        type = types.listOf types.attrs;
-      };
-
-      webhookConfig = mkOption {
-        description = ''
-          Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
-          See <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/webhook/"/>
-        '';
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      allowPrivileged = mkOption {
-        description = "Whether to allow privileged containers on Kubernetes.";
-        default = true;
-        type = types.bool;
-      };
-
-      serviceClusterIpRange = mkOption {
-        description = ''
-          A CIDR notation IP range from which to assign service cluster IPs.
-          This must not overlap with any IP ranges assigned to nodes for pods.
-        '';
-        default = "10.0.0.0/24";
-        type = types.str;
-      };
-
-      runtimeConfig = mkOption {
-        description = ''
-          Api runtime configuration. See
-          <link xlink:href="https://kubernetes.io/docs/tasks/administer-cluster/cluster-management/"/>
-        '';
-        default = "authentication.k8s.io/v1beta1=true";
-        example = "api/all=false,api/v1=true";
-        type = types.str;
-      };
-
-      enableAdmissionPlugins = mkOption {
-        description = ''
-          Kubernetes admission control plugins to enable. See
-          <link xlink:href="https://kubernetes.io/docs/admin/admission-controllers/"/>
-        '';
-        default = ["NamespaceLifecycle" "LimitRanger" "ServiceAccount" "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds" "NodeRestriction"];
-        example = [
-          "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
-          "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
-          "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
-        ];
-        type = types.listOf types.str;
-      };
-
-      disableAdmissionPlugins = mkOption {
-        description = ''
-          Kubernetes admission control plugins to disable. See
-          <link xlink:href="https://kubernetes.io/docs/admin/admission-controllers/"/>
-        '';
-        default = [];
-        type = types.listOf types.str;
-      };
-
-      serviceAccountKeyFile = mkOption {
-        description = ''
-          Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
-          used to verify ServiceAccount tokens. By default tls private key file
-          is used.
-        '';
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      kubeletClientCaFile = mkOption {
-        description = "Path to a cert file for connecting to kubelet.";
-        default = cfg.caFile;
-        type = types.nullOr types.path;
-      };
-
-      kubeletClientCertFile = mkOption {
-        description = "Client certificate to use for connections to kubelet.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      kubeletClientKeyFile = mkOption {
-        description = "Key to use for connections to kubelet.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      kubeletHttps = mkOption {
-        description = "Whether to use https for connections to kubelet.";
-        default = true;
-        type = types.bool;
-      };
-
-      extraOpts = mkOption {
-        description = "Kubernetes apiserver extra command line options.";
-        default = "";
-        type = types.str;
-      };
-    };
-
-    scheduler = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes scheduler.";
-        default = false;
-        type = types.bool;
-      };
-
-      featureGates = mkOption {
-        description = "List set of feature gates";
-        default = cfg.featureGates;
-        type = types.listOf types.str;
-      };
-
-      address = mkOption {
-        description = "Kubernetes scheduler listening address.";
-        default = "127.0.0.1";
-        type = types.str;
-      };
-
-      port = mkOption {
-        description = "Kubernetes scheduler listening port.";
-        default = 10251;
-        type = types.int;
-      };
-
-      leaderElect = mkOption {
-        description = "Whether to start leader election before executing main loop.";
-        type = types.bool;
-        default = true;
-      };
-
-      kubeconfig = mkKubeConfigOptions "Kubernetes scheduler";
-
-      extraOpts = mkOption {
-        description = "Kubernetes scheduler extra command line options.";
-        default = "";
-        type = types.str;
-      };
-    };
-
-    controllerManager = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes controller manager.";
-        default = false;
-        type = types.bool;
-      };
-
-      featureGates = mkOption {
-        description = "List set of feature gates";
-        default = cfg.featureGates;
-        type = types.listOf types.str;
-      };
-
-      address = mkOption {
-        description = "Kubernetes controller manager listening address.";
-        default = "127.0.0.1";
-        type = types.str;
-      };
-
-      port = mkOption {
-        description = "Kubernetes controller manager listening port.";
-        default = 10252;
-        type = types.int;
-      };
-
-      leaderElect = mkOption {
-        description = "Whether to start leader election before executing main loop.";
-        type = types.bool;
-        default = true;
-      };
-
-      serviceAccountKeyFile = mkOption {
-        description = ''
-          Kubernetes controller manager PEM-encoded private RSA key file used to
-          sign service account tokens
-        '';
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      rootCaFile = mkOption {
-        description = ''
-          Kubernetes controller manager certificate authority file included in
-          service account's token secret.
-        '';
-        default = cfg.caFile;
-        type = types.nullOr types.path;
-      };
-
-      kubeconfig = mkKubeConfigOptions "Kubernetes controller manager";
-
-      extraOpts = mkOption {
-        description = "Kubernetes controller manager extra command line options.";
-        default = "";
-        type = types.str;
-      };
-    };
-
-    kubelet = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes kubelet.";
-        default = false;
-        type = types.bool;
-      };
-
-      featureGates = mkOption {
-        description = "List set of feature gates";
-        default = cfg.featureGates;
-        type = types.listOf types.str;
-      };
-
-      seedDockerImages = mkOption {
-        description = "List of docker images to preload on system";
-        default = [];
-        type = types.listOf types.package;
-      };
-
-      registerNode = mkOption {
-        description = "Whether to auto register kubelet with API server.";
-        default = true;
-        type = types.bool;
-      };
-
-      address = mkOption {
-        description = "Kubernetes kubelet info server listening address.";
-        default = "0.0.0.0";
-        type = types.str;
-      };
-
-      port = mkOption {
-        description = "Kubernetes kubelet info server listening port.";
-        default = 10250;
-        type = types.int;
-      };
-
-      tlsCertFile = mkOption {
-        description = "File containing x509 Certificate for HTTPS.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      tlsKeyFile = mkOption {
-        description = "File containing x509 private key matching tlsCertFile.";
-        default = null;
-        type = types.nullOr types.path;
-      };
-
-      clientCaFile = mkOption {
-        description = "Kubernetes apiserver CA file for client authentication.";
-        default = cfg.caFile;
-        type = types.nullOr types.path;
-      };
-
-      healthz = {
-        bind = mkOption {
-          description = "Kubernetes kubelet healthz listening address.";
-          default = "127.0.0.1";
-          type = types.str;
-        };
-
-        port = mkOption {
-          description = "Kubernetes kubelet healthz port.";
-          default = 10248;
-          type = types.int;
-        };
-      };
-
-      hostname = mkOption {
-        description = "Kubernetes kubelet hostname override.";
-        default = config.networking.hostName;
-        type = types.str;
-      };
-
-      allowPrivileged = mkOption {
-        description = "Whether to allow Kubernetes containers to request privileged mode.";
-        default = true;
-        type = types.bool;
-      };
-
-      clusterDns = mkOption {
-        description = "Use alternative DNS.";
-        default = "10.1.0.1";
-        type = types.str;
-      };
-
-      clusterDomain = mkOption {
-        description = "Use alternative domain.";
-        default = config.services.kubernetes.addons.dns.clusterDomain;
-        type = types.str;
-      };
-
-      networkPlugin = mkOption {
-        description = "Network plugin to use by Kubernetes.";
-        type = types.nullOr (types.enum ["cni" "kubenet"]);
-        default = "kubenet";
-      };
-
-      cni = {
-        packages = mkOption {
-          description = "List of network plugin packages to install.";
-          type = types.listOf types.package;
-          default = [];
-        };
-
-        config = mkOption {
-          description = "Kubernetes CNI configuration.";
-          type = types.listOf types.attrs;
-          default = [];
-          example = literalExample ''
-            [{
-              "cniVersion": "0.2.0",
-              "name": "mynet",
-              "type": "bridge",
-              "bridge": "cni0",
-              "isGateway": true,
-              "ipMasq": true,
-              "ipam": {
-                  "type": "host-local",
-                  "subnet": "10.22.0.0/16",
-                  "routes": [
-                      { "dst": "0.0.0.0/0" }
-                  ]
-              }
-            } {
-              "cniVersion": "0.2.0",
-              "type": "loopback"
-            }]
-          '';
-        };
-
-        configDir = mkOption {
-          description = "Path to Kubernetes CNI configuration directory.";
-          type = types.nullOr types.path;
-          default = null;
-        };
-      };
-
-      manifests = mkOption {
-        description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
-        type = types.attrsOf types.attrs;
-        default = {};
-      };
-
-      applyManifests = mkOption {
-        description = "Whether to apply manifests (this is true for master node).";
-        default = false;
-        type = types.bool;
-      };
-
-      unschedulable = mkOption {
-        description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
-        default = false;
-        type = types.bool;
-      };
-
-      taints = mkOption {
-        description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
-        default = {};
-        type = types.attrsOf (types.submodule [ taintOptions ]);
-      };
-
-      nodeIp = mkOption {
-        description = "IP address of the node. If set, kubelet will use this IP address for the node.";
-        default = null;
-        type = types.nullOr types.str;
-      };
-
-      kubeconfig = mkKubeConfigOptions "Kubelet";
-
-      extraOpts = mkOption {
-        description = "Kubernetes kubelet extra command line options.";
-        default = "";
-        type = types.str;
-      };
-    };
-
-    proxy = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes proxy.";
-        default = false;
-        type = types.bool;
-      };
-
-      featureGates = mkOption {
-        description = "List set of feature gates";
-        default = cfg.featureGates;
-        type = types.listOf types.str;
-      };
-
-      address = mkOption {
-        description = "Kubernetes proxy listening address.";
-        default = "0.0.0.0";
-        type = types.str;
-      };
-
-      kubeconfig = mkKubeConfigOptions "Kubernetes proxy";
-
-      extraOpts = mkOption {
-        description = "Kubernetes proxy extra command line options.";
-        default = "";
-        type = types.str;
-      };
-    };
-
-    addonManager = {
-      enable = mkOption {
-        description = "Whether to enable Kubernetes addon manager.";
-        default = false;
-        type = types.bool;
-      };
-
-      addons = mkOption {
-        description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
-        default = { };
-        type = types.attrsOf (types.either types.attrs (types.listOf types.attrs));
-        example = literalExample ''
-          {
-            "my-service" = {
-              "apiVersion" = "v1";
-              "kind" = "Service";
-              "metadata" = {
-                "name" = "my-service";
-                "namespace" = "default";
-              };
-              "spec" = { ... };
-            };
-          }
-          // import <nixpkgs/nixos/modules/services/cluster/kubernetes/dashboard.nix> { cfg = config.services.kubernetes; };
-        '';
-      };
+    masterAddress = mkOption {
+      description = "Clusterwide available network address or hostname for the kubernetes master server.";
+      example = "master.example.com";
+      type = types.str;
     };
 
     path = mkOption {
@@ -787,304 +156,75 @@ in {
       type = types.nullOr types.str;
     };
 
-    flannel.enable = mkOption {
-      description = "Whether to enable flannel networking";
-      default = false;
-      type = types.bool;
+    lib = mkOption {
+      description = "Common functions for the kubernetes modules.";
+      default = {
+        inherit mkCert;
+        inherit mkKubeConfig;
+        inherit mkKubeConfigOptions;
+      };
+      type = types.attrs;
     };
 
+    secretsPath = mkOption {
+      description = "Default location for kubernetes secrets. Not a store location.";
+      type = types.path;
+      default = cfg.dataDir + "/secrets";
+    };
   };
 
   ###### implementation
 
   config = mkMerge [
-    (mkIf cfg.kubelet.enable {
-      services.kubernetes.kubelet.seedDockerImages = [infraContainer];
-
-      systemd.services.kubelet-bootstrap = {
-        description = "Boostrap Kubelet";
-        wantedBy = ["kubernetes.target"];
-        after = ["docker.service" "network.target"];
-        path = with pkgs; [ docker ];
-        script = ''
-          ${concatMapStrings (img: ''
-            echo "Seeding docker image: ${img}"
-            docker load <${img}
-          '') cfg.kubelet.seedDockerImages}
-
-          rm /opt/cni/bin/* || true
-          ${concatMapStrings (package: ''
-            echo "Linking cni package: ${package}"
-            ln -fs ${package}/bin/* /opt/cni/bin
-          '') cfg.kubelet.cni.packages}
-        '';
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          Type = "oneshot";
-        };
-      };
 
-      systemd.services.kubelet = {
-        description = "Kubernetes Kubelet Service";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "network.target" "docker.service" "kube-apiserver.service" "kubelet-bootstrap.service" ];
-        path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ cfg.path;
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          CPUAccounting = true;
-          MemoryAccounting = true;
-          ExecStart = ''${cfg.package}/bin/kubelet \
-            ${optionalString (taints != "")
-              "--register-with-taints=${taints}"} \
-            --kubeconfig=${mkKubeConfig "kubelet" cfg.kubelet.kubeconfig} \
-            --config=${kubeletConfig} \
-            --address=${cfg.kubelet.address} \
-            --port=${toString cfg.kubelet.port} \
-            --register-node=${boolToString cfg.kubelet.registerNode} \
-            ${optionalString (cfg.kubelet.tlsCertFile != null)
-              "--tls-cert-file=${cfg.kubelet.tlsCertFile}"} \
-            ${optionalString (cfg.kubelet.tlsKeyFile != null)
-              "--tls-private-key-file=${cfg.kubelet.tlsKeyFile}"} \
-            ${optionalString (cfg.kubelet.clientCaFile != null)
-              "--client-ca-file=${cfg.kubelet.clientCaFile}"} \
-            --authentication-token-webhook \
-            --authentication-token-webhook-cache-ttl="10s" \
-            --authorization-mode=Webhook \
-            --healthz-bind-address=${cfg.kubelet.healthz.bind} \
-            --healthz-port=${toString cfg.kubelet.healthz.port} \
-            --hostname-override=${cfg.kubelet.hostname} \
-            --allow-privileged=${boolToString cfg.kubelet.allowPrivileged} \
-            --root-dir=${cfg.dataDir} \
-            ${optionalString (cfg.kubelet.clusterDns != "")
-              "--cluster-dns=${cfg.kubelet.clusterDns}"} \
-            ${optionalString (cfg.kubelet.clusterDomain != "")
-              "--cluster-domain=${cfg.kubelet.clusterDomain}"} \
-            --pod-infra-container-image=pause \
-            ${optionalString (cfg.kubelet.networkPlugin != null)
-              "--network-plugin=${cfg.kubelet.networkPlugin}"} \
-            --cni-conf-dir=${cniConfig} \
-            --hairpin-mode=hairpin-veth \
-            ${optionalString (cfg.kubelet.nodeIp != null)
-              "--node-ip=${cfg.kubelet.nodeIp}"} \
-            ${optionalString (cfg.kubelet.featureGates != [])
-              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
-            ${optionalString cfg.verbose "--v=6 --log_flush_frequency=1s"} \
-            ${cfg.kubelet.extraOpts}
-          '';
-          WorkingDirectory = cfg.dataDir;
-        };
-      };
-
-      # Allways include cni plugins
-      services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
-
-      boot.kernelModules = ["br_netfilter"];
-
-      services.kubernetes.kubelet.kubeconfig = kubeConfigDefaults;
-    })
-
-    (mkIf (cfg.kubelet.applyManifests && cfg.kubelet.enable) {
-      environment.etc = mapAttrs' (name: manifest:
-        nameValuePair "kubernetes/manifests/${name}.json" {
-          text = builtins.toJSON manifest;
-          mode = "0755";
-        }
-      ) cfg.kubelet.manifests;
-    })
-
-    (mkIf (cfg.kubelet.unschedulable && cfg.kubelet.enable) {
-      services.kubernetes.kubelet.taints.unschedulable = {
-        value = "true";
-        effect = "NoSchedule";
-      };
-    })
-
-    (mkIf cfg.apiserver.enable {
-      systemd.services.kube-apiserver = {
-        description = "Kubernetes APIServer Service";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "network.target" "docker.service" ];
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          ExecStart = ''${cfg.package}/bin/kube-apiserver \
-            --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
-            ${optionalString (cfg.etcd.caFile != null)
-              "--etcd-cafile=${cfg.etcd.caFile}"} \
-            ${optionalString (cfg.etcd.certFile != null)
-              "--etcd-certfile=${cfg.etcd.certFile}"} \
-            ${optionalString (cfg.etcd.keyFile != null)
-              "--etcd-keyfile=${cfg.etcd.keyFile}"} \
-            --insecure-port=${toString cfg.apiserver.port} \
-            --bind-address=${cfg.apiserver.bindAddress} \
-            ${optionalString (cfg.apiserver.advertiseAddress != null)
-              "--advertise-address=${cfg.apiserver.advertiseAddress}"} \
-            --allow-privileged=${boolToString cfg.apiserver.allowPrivileged}\
-            ${optionalString (cfg.apiserver.tlsCertFile != null)
-              "--tls-cert-file=${cfg.apiserver.tlsCertFile}"} \
-            ${optionalString (cfg.apiserver.tlsKeyFile != null)
-              "--tls-private-key-file=${cfg.apiserver.tlsKeyFile}"} \
-            ${optionalString (cfg.apiserver.tokenAuthFile != null)
-              "--token-auth-file=${cfg.apiserver.tokenAuthFile}"} \
-            ${optionalString (cfg.apiserver.basicAuthFile != null)
-              "--basic-auth-file=${cfg.apiserver.basicAuthFile}"} \
-            --kubelet-https=${if cfg.apiserver.kubeletHttps then "true" else "false"} \
-            ${optionalString (cfg.apiserver.kubeletClientCaFile != null)
-              "--kubelet-certificate-authority=${cfg.apiserver.kubeletClientCaFile}"} \
-            ${optionalString (cfg.apiserver.kubeletClientCertFile != null)
-              "--kubelet-client-certificate=${cfg.apiserver.kubeletClientCertFile}"} \
-            ${optionalString (cfg.apiserver.kubeletClientKeyFile != null)
-              "--kubelet-client-key=${cfg.apiserver.kubeletClientKeyFile}"} \
-            ${optionalString (cfg.apiserver.clientCaFile != null)
-              "--client-ca-file=${cfg.apiserver.clientCaFile}"} \
-            --authorization-mode=${concatStringsSep "," cfg.apiserver.authorizationMode} \
-            ${optionalString (elem "ABAC" cfg.apiserver.authorizationMode)
-              "--authorization-policy-file=${
-                pkgs.writeText "kube-auth-policy.jsonl"
-                (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.apiserver.authorizationPolicy)
-              }"
-            } \
-            ${optionalString (elem "Webhook" cfg.apiserver.authorizationMode)
-              "--authorization-webhook-config-file=${cfg.apiserver.webhookConfig}"
-            } \
-            --secure-port=${toString cfg.apiserver.securePort} \
-            --service-cluster-ip-range=${cfg.apiserver.serviceClusterIpRange} \
-            ${optionalString (cfg.apiserver.runtimeConfig != "")
-              "--runtime-config=${cfg.apiserver.runtimeConfig}"} \
-            --enable-admission-plugins=${concatStringsSep "," cfg.apiserver.enableAdmissionPlugins} \
-            --disable-admission-plugins=${concatStringsSep "," cfg.apiserver.disableAdmissionPlugins} \
-            ${optionalString (cfg.apiserver.serviceAccountKeyFile!=null)
-              "--service-account-key-file=${cfg.apiserver.serviceAccountKeyFile}"} \
-            ${optionalString cfg.verbose "--v=6"} \
-            ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
-            --storage-backend=${cfg.apiserver.storageBackend} \
-            ${optionalString (cfg.kubelet.featureGates != [])
-              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
-            ${cfg.apiserver.extraOpts}
-          '';
-          WorkingDirectory = cfg.dataDir;
-          User = "kubernetes";
-          Group = "kubernetes";
-          AmbientCapabilities = "cap_net_bind_service";
-          Restart = "on-failure";
-          RestartSec = 5;
-        };
-      };
+    (mkIf cfg.easyCerts {
+      services.kubernetes.pki.enable = mkDefault true;
+      services.kubernetes.caFile = caCert;
     })
 
-    (mkIf cfg.scheduler.enable {
-      systemd.services.kube-scheduler = {
-        description = "Kubernetes Scheduler Service";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "kube-apiserver.service" ];
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          ExecStart = ''${cfg.package}/bin/kube-scheduler \
-            --address=${cfg.scheduler.address} \
-            --port=${toString cfg.scheduler.port} \
-            --leader-elect=${boolToString cfg.scheduler.leaderElect} \
-            --kubeconfig=${mkKubeConfig "kube-scheduler" cfg.scheduler.kubeconfig} \
-            ${optionalString cfg.verbose "--v=6"} \
-            ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
-            ${optionalString (cfg.scheduler.featureGates != [])
-              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.scheduler.featureGates}"} \
-            ${cfg.scheduler.extraOpts}
-          '';
-          WorkingDirectory = cfg.dataDir;
-          User = "kubernetes";
-          Group = "kubernetes";
-        };
-      };
-
-      services.kubernetes.scheduler.kubeconfig = kubeConfigDefaults;
-    })
-
-    (mkIf cfg.controllerManager.enable {
-      systemd.services.kube-controller-manager = {
-        description = "Kubernetes Controller Manager Service";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "kube-apiserver.service" ];
-        serviceConfig = {
-          RestartSec = "30s";
-          Restart = "on-failure";
-          Slice = "kubernetes.slice";
-          ExecStart = ''${cfg.package}/bin/kube-controller-manager \
-            --address=${cfg.controllerManager.address} \
-            --port=${toString cfg.controllerManager.port} \
-            --kubeconfig=${mkKubeConfig "kube-controller-manager" cfg.controllerManager.kubeconfig} \
-            --leader-elect=${boolToString cfg.controllerManager.leaderElect} \
-            ${if (cfg.controllerManager.serviceAccountKeyFile!=null)
-              then "--service-account-private-key-file=${cfg.controllerManager.serviceAccountKeyFile}"
-              else "--service-account-private-key-file=/var/run/kubernetes/apiserver.key"} \
-            ${if (cfg.controllerManager.rootCaFile!=null)
-              then "--root-ca-file=${cfg.controllerManager.rootCaFile}"
-              else "--root-ca-file=/var/run/kubernetes/apiserver.crt"} \
-            ${if (cfg.clusterCidr!=null)
-              then "--cluster-cidr=${cfg.clusterCidr} --allocate-node-cidrs=true"
-              else "--allocate-node-cidrs=false"} \
-            ${optionalString (cfg.controllerManager.featureGates != [])
-              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.controllerManager.featureGates}"} \
-            ${optionalString cfg.verbose "--v=6"} \
-            ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
-            ${cfg.controllerManager.extraOpts}
-          '';
-          WorkingDirectory = cfg.dataDir;
-          User = "kubernetes";
-          Group = "kubernetes";
+    (mkIf (elem "master" cfg.roles) {
+      services.kubernetes.apiserver.enable = mkDefault true;
+      services.kubernetes.scheduler.enable = mkDefault true;
+      services.kubernetes.controllerManager.enable = mkDefault true;
+      services.kubernetes.addonManager.enable = mkDefault true;
+      services.kubernetes.proxy.enable = mkDefault true;
+      services.etcd.enable = true; # Cannot mkDefault because of flannel default options
+      services.kubernetes.kubelet = {
+        enable = mkDefault true;
+        taints = mkIf (!(elem "node" cfg.roles)) {
+          master = {
+            key = "node-role.kubernetes.io/master";
+            value = "true";
+            effect = "NoSchedule";
+          };
         };
-        path = cfg.path;
       };
-
-      services.kubernetes.controllerManager.kubeconfig = kubeConfigDefaults;
     })
 
-    (mkIf cfg.proxy.enable {
-      systemd.services.kube-proxy = {
-        description = "Kubernetes Proxy Service";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "kube-apiserver.service" ];
-        path = [pkgs.iptables pkgs.conntrack_tools];
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          ExecStart = ''${cfg.package}/bin/kube-proxy \
-            --kubeconfig=${mkKubeConfig "kube-proxy" cfg.proxy.kubeconfig} \
-            --bind-address=${cfg.proxy.address} \
-            ${optionalString (cfg.proxy.featureGates != [])
-              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.proxy.featureGates}"} \
-            ${optionalString cfg.verbose "--v=6"} \
-            ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
-            ${optionalString (cfg.clusterCidr!=null)
-              "--cluster-cidr=${cfg.clusterCidr}"} \
-            ${cfg.proxy.extraOpts}
-          '';
-          WorkingDirectory = cfg.dataDir;
-        };
-      };
-
-      # kube-proxy needs iptables
-      networking.firewall.enable = mkDefault true;
 
-      services.kubernetes.proxy.kubeconfig = kubeConfigDefaults;
+    (mkIf (all (el: el == "master") cfg.roles) {
+      # if this node is only a master make it unschedulable by default
+      services.kubernetes.kubelet.unschedulable = mkDefault true;
     })
 
-    (mkIf (any (el: el == "master") cfg.roles) {
-      virtualisation.docker.enable = mkDefault true;
+    (mkIf (elem "node" cfg.roles) {
       services.kubernetes.kubelet.enable = mkDefault true;
-      services.kubernetes.kubelet.allowPrivileged = mkDefault true;
-      services.kubernetes.kubelet.applyManifests = mkDefault true;
-      services.kubernetes.apiserver.enable = mkDefault true;
-      services.kubernetes.scheduler.enable = mkDefault true;
-      services.kubernetes.controllerManager.enable = mkDefault true;
-      services.etcd.enable = mkDefault (cfg.etcd.servers == ["http://127.0.0.1:2379"]);
-      services.kubernetes.addonManager.enable = mkDefault true;
       services.kubernetes.proxy.enable = mkDefault true;
     })
 
-    # if this node is only a master make it unschedulable by default
-    (mkIf (all (el: el == "master") cfg.roles) {
-      services.kubernetes.kubelet.unschedulable = mkDefault true;
+    # Using "services.kubernetes.roles" will automatically enable easyCerts and flannel
+    (mkIf (cfg.roles != []) {
+      services.kubernetes.flannel.enable = mkDefault true;
+      services.flannel.etcd.endpoints = mkDefault etcdEndpoints;
+      services.kubernetes.easyCerts = mkDefault true;
+    })
+
+    (mkIf cfg.apiserver.enable {
+      services.kubernetes.pki.etcClusterAdminKubeconfig = mkDefault "kubernetes/cluster-admin.kubeconfig";
+      services.kubernetes.apiserver.etcd.servers = mkDefault etcdEndpoints;
     })
 
-    (mkIf (any (el: el == "node") cfg.roles) {
+    (mkIf cfg.kubelet.enable {
       virtualisation.docker = {
         enable = mkDefault true;
 
@@ -1094,26 +234,18 @@ in {
         # iptables must be disabled for kubernetes
         extraOptions = "--iptables=false --ip-masq=false";
       };
-
-      services.kubernetes.kubelet.enable = mkDefault true;
-      services.kubernetes.proxy.enable = mkDefault true;
     })
 
-    (mkIf cfg.addonManager.enable {
-      environment.etc."kubernetes/addons".source = "${addons}/";
-
-      systemd.services.kube-addon-manager = {
-        description = "Kubernetes addon manager";
-        wantedBy = [ "kubernetes.target" ];
-        after = [ "kube-apiserver.service" ];
-        environment.ADDON_PATH = "/etc/kubernetes/addons/";
-        path = [ pkgs.gawk ];
-        serviceConfig = {
-          Slice = "kubernetes.slice";
-          ExecStart = "${cfg.package}/bin/kube-addons";
-          WorkingDirectory = cfg.dataDir;
-          User = "kubernetes";
-          Group = "kubernetes";
+    (mkIf (cfg.apiserver.enable || cfg.controllerManager.enable) {
+      services.kubernetes.pki.certs = {
+        serviceAccount = mkCert {
+          name = "service-account";
+          CN = "system:service-account-signer";
+          action = ''
+            systemctl reload \
+              kube-apiserver.service \
+              kube-controller-manager.service
+          '';
         };
       };
     })
@@ -1123,7 +255,8 @@ in {
         cfg.scheduler.enable ||
         cfg.controllerManager.enable ||
         cfg.kubelet.enable ||
-        cfg.proxy.enable
+        cfg.proxy.enable ||
+        cfg.addonManager.enable
     ) {
       systemd.targets.kubernetes = {
         description = "Kubernetes";
@@ -1132,11 +265,10 @@ in {
 
       systemd.tmpfiles.rules = [
         "d /opt/cni/bin 0755 root root -"
-        "d /var/run/kubernetes 0755 kubernetes kubernetes -"
+        "d /run/kubernetes 0755 kubernetes kubernetes -"
         "d /var/lib/kubernetes 0755 kubernetes kubernetes -"
       ];
 
-      environment.systemPackages = [ cfg.package ];
       users.users = singleton {
         name = "kubernetes";
         uid = config.ids.uids.kubernetes;
@@ -1148,53 +280,12 @@ in {
       };
       users.groups.kubernetes.gid = config.ids.gids.kubernetes;
 
-			# dns addon is enabled by default
+      # dns addon is enabled by default
       services.kubernetes.addons.dns.enable = mkDefault true;
-    })
 
-    (mkIf cfg.flannel.enable {
-      services.flannel = {
-        enable = mkDefault true;
-        network = mkDefault cfg.clusterCidr;
-        etcd = mkDefault {
-          endpoints = cfg.etcd.servers;
-          inherit (cfg.etcd) caFile certFile keyFile;
-        };
-      };
-
-      services.kubernetes.kubelet = {
-        networkPlugin = mkDefault "cni";
-        cni.config = mkDefault [{
-          name = "mynet";
-          type = "flannel";
-          delegate = {
-            isDefaultGateway = true;
-            bridge = "docker0";
-          };
-        }];
-      };
-
-      systemd.services."mk-docker-opts" = {
-        description = "Pre-Docker Actions";
-        wantedBy = [ "flannel.service" ];
-        before = [ "docker.service" ];
-        after = [ "flannel.service" ];
-        path = [ pkgs.gawk pkgs.gnugrep ];
-        script = ''
-          mkdir -p /run/flannel
-          ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
-        '';
-        serviceConfig.Type = "oneshot";
-      };
-      systemd.services.docker.serviceConfig.EnvironmentFile = "/run/flannel/docker";
-
-      # read environment variables generated by mk-docker-opts
-      virtualisation.docker.extraOptions = "$DOCKER_OPTS";
-
-      networking.firewall.allowedUDPPorts = [
-        8285  # flannel udp
-        8472  # flannel vxlan
-      ];
+      services.kubernetes.apiserverAddress = mkDefault ("https://${if cfg.apiserver.advertiseAddress != null
+                          then cfg.apiserver.advertiseAddress
+                          else "${cfg.masterAddress}:${toString cfg.apiserver.securePort}"}");
     })
   ];
 }
diff --git a/nixos/modules/services/cluster/kubernetes/flannel.nix b/nixos/modules/services/cluster/kubernetes/flannel.nix
new file mode 100644
index 00000000000..93ee2fd65ee
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/flannel.nix
@@ -0,0 +1,134 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.flannel;
+
+  # we want flannel to use kubernetes itself as configuration backend, not direct etcd
+  storageBackend = "kubernetes";
+
+  # needed for flannel to pass options to docker
+  mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
+    buildInputs = [ pkgs.makeWrapper ];
+  } ''
+    mkdir -p $out
+    cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
+
+    # bashInteractive needed for `compgen`
+    makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
+  '';
+in
+{
+  ###### interface
+  options.services.kubernetes.flannel = {
+    enable = mkEnableOption "enable flannel networking";
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    services.flannel = {
+
+      enable = mkDefault true;
+      network = mkDefault top.clusterCidr;
+      inherit storageBackend;
+      nodeName = config.services.kubernetes.kubelet.hostname;
+    };
+
+    services.kubernetes.kubelet = {
+      networkPlugin = mkDefault "cni";
+      cni.config = mkDefault [{
+        name = "mynet";
+        type = "flannel";
+        delegate = {
+          isDefaultGateway = true;
+          bridge = "docker0";
+        };
+      }];
+    };
+
+    systemd.services."mk-docker-opts" = {
+      description = "Pre-Docker Actions";
+      path = with pkgs; [ gawk gnugrep ];
+      script = ''
+        ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
+        systemctl restart docker
+      '';
+      serviceConfig.Type = "oneshot";
+    };
+
+    systemd.paths."flannel-subnet-env" = {
+      wantedBy = [ "flannel.service" ];
+      pathConfig = {
+        PathModified = "/run/flannel/subnet.env";
+        Unit = "mk-docker-opts.service";
+      };
+    };
+
+    systemd.services.docker = {
+      environment.DOCKER_OPTS = "-b none";
+      serviceConfig.EnvironmentFile = "-/run/flannel/docker";
+    };
+
+    # read environment variables generated by mk-docker-opts
+    virtualisation.docker.extraOptions = "$DOCKER_OPTS";
+
+    networking = {
+      firewall.allowedUDPPorts = [
+        8285  # flannel udp
+        8472  # flannel vxlan
+      ];
+      dhcpcd.denyInterfaces = [ "docker*" "flannel*" ];
+    };
+
+    services.kubernetes.pki.certs = {
+      flannelClient = top.lib.mkCert {
+        name = "flannel-client";
+        CN = "flannel-client";
+        action = "systemctl restart flannel.service";
+      };
+    };
+
+    # give flannel som kubernetes rbac permissions if applicable
+    services.kubernetes.addonManager.bootstrapAddons = mkIf ((storageBackend == "kubernetes") && (elem "RBAC" top.apiserver.authorizationMode)) {
+
+      flannel-cr = {
+        apiVersion = "rbac.authorization.k8s.io/v1beta1";
+        kind = "ClusterRole";
+        metadata = { name = "flannel"; };
+        rules = [{
+          apiGroups = [ "" ];
+          resources = [ "pods" ];
+          verbs = [ "get" ];
+        }
+        {
+          apiGroups = [ "" ];
+          resources = [ "nodes" ];
+          verbs = [ "list" "watch" ];
+        }
+        {
+          apiGroups = [ "" ];
+          resources = [ "nodes/status" ];
+          verbs = [ "patch" ];
+        }];
+      };
+
+      flannel-crb = {
+        apiVersion = "rbac.authorization.k8s.io/v1beta1";
+        kind = "ClusterRoleBinding";
+        metadata = { name = "flannel"; };
+        roleRef = {
+          apiGroup = "rbac.authorization.k8s.io";
+          kind = "ClusterRole";
+          name = "flannel";
+        };
+        subjects = [{
+          kind = "User";
+          name = "flannel-client";
+        }];
+      };
+
+    };
+  };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix
new file mode 100644
index 00000000000..c94bb28bf7f
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix
@@ -0,0 +1,358 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.kubelet;
+
+  cniConfig =
+    if cfg.cni.config != [] && !(isNull cfg.cni.configDir) then
+      throw "Verbatim CNI-config and CNI configDir cannot both be set."
+    else if !(isNull cfg.cni.configDir) then
+      cfg.cni.configDir
+    else
+      (pkgs.buildEnv {
+        name = "kubernetes-cni-config";
+        paths = imap (i: entry:
+          pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
+        ) cfg.cni.config;
+      });
+
+  infraContainer = pkgs.dockerTools.buildImage {
+    name = "pause";
+    tag = "latest";
+    contents = top.package.pause;
+    config.Cmd = "/bin/pause";
+  };
+
+  kubeconfig = top.lib.mkKubeConfig "kubelet" cfg.kubeconfig;
+
+  manifests = pkgs.buildEnv {
+    name = "kubernetes-manifests";
+    paths = mapAttrsToList (name: manifest:
+      pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
+    ) cfg.manifests;
+  };
+
+  manifestPath = "kubernetes/manifests";
+
+  taintOptions = with lib.types; { name, ... }: {
+    options = {
+      key = mkOption {
+        description = "Key of taint.";
+        default = name;
+        type = str;
+      };
+      value = mkOption {
+        description = "Value of taint.";
+        type = str;
+      };
+      effect = mkOption {
+        description = "Effect of taint.";
+        example = "NoSchedule";
+        type = enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
+      };
+    };
+  };
+
+  taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.taints);
+in
+{
+  ###### interface
+  options.services.kubernetes.kubelet = with lib.types; {
+
+    address = mkOption {
+      description = "Kubernetes kubelet info server listening address.";
+      default = "0.0.0.0";
+      type = str;
+    };
+
+    allowPrivileged = mkOption {
+      description = "Whether to allow Kubernetes containers to request privileged mode.";
+      default = false;
+      type = bool;
+    };
+
+    clusterDns = mkOption {
+      description = "Use alternative DNS.";
+      default = "10.1.0.1";
+      type = str;
+    };
+
+    clusterDomain = mkOption {
+      description = "Use alternative domain.";
+      default = config.services.kubernetes.addons.dns.clusterDomain;
+      type = str;
+    };
+
+    clientCaFile = mkOption {
+      description = "Kubernetes apiserver CA file for client authentication.";
+      default = top.caFile;
+      type = nullOr path;
+    };
+
+    cni = {
+      packages = mkOption {
+        description = "List of network plugin packages to install.";
+        type = listOf package;
+        default = [];
+      };
+
+      config = mkOption {
+        description = "Kubernetes CNI configuration.";
+        type = listOf attrs;
+        default = [];
+        example = literalExample ''
+          [{
+            "cniVersion": "0.2.0",
+            "name": "mynet",
+            "type": "bridge",
+            "bridge": "cni0",
+            "isGateway": true,
+            "ipMasq": true,
+            "ipam": {
+                "type": "host-local",
+                "subnet": "10.22.0.0/16",
+                "routes": [
+                    { "dst": "0.0.0.0/0" }
+                ]
+            }
+          } {
+            "cniVersion": "0.2.0",
+            "type": "loopback"
+          }]
+        '';
+      };
+
+      configDir = mkOption {
+        description = "Path to Kubernetes CNI configuration directory.";
+        type = nullOr path;
+        default = null;
+      };
+    };
+
+    enable = mkEnableOption "Kubernetes kubelet.";
+
+    extraOpts = mkOption {
+      description = "Kubernetes kubelet extra command line options.";
+      default = "";
+      type = str;
+    };
+
+    featureGates = mkOption {
+      description = "List set of feature gates";
+      default = top.featureGates;
+      type = listOf str;
+    };
+
+    healthz = {
+      bind = mkOption {
+        description = "Kubernetes kubelet healthz listening address.";
+        default = "127.0.0.1";
+        type = str;
+      };
+
+      port = mkOption {
+        description = "Kubernetes kubelet healthz port.";
+        default = 10248;
+        type = int;
+      };
+    };
+
+    hostname = mkOption {
+      description = "Kubernetes kubelet hostname override.";
+      default = config.networking.hostName;
+      type = str;
+    };
+
+    kubeconfig = top.lib.mkKubeConfigOptions "Kubelet";
+
+    manifests = mkOption {
+      description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
+      type = attrsOf attrs;
+      default = {};
+    };
+
+    networkPlugin = mkOption {
+      description = "Network plugin to use by Kubernetes.";
+      type = nullOr (enum ["cni" "kubenet"]);
+      default = "kubenet";
+    };
+
+    nodeIp = mkOption {
+      description = "IP address of the node. If set, kubelet will use this IP address for the node.";
+      default = null;
+      type = nullOr str;
+    };
+
+    registerNode = mkOption {
+      description = "Whether to auto register kubelet with API server.";
+      default = true;
+      type = bool;
+    };
+
+    port = mkOption {
+      description = "Kubernetes kubelet info server listening port.";
+      default = 10250;
+      type = int;
+    };
+
+    seedDockerImages = mkOption {
+      description = "List of docker images to preload on system";
+      default = [];
+      type = listOf package;
+    };
+
+    taints = mkOption {
+      description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
+      default = {};
+      type = attrsOf (submodule [ taintOptions ]);
+    };
+
+    tlsCertFile = mkOption {
+      description = "File containing x509 Certificate for HTTPS.";
+      default = null;
+      type = nullOr path;
+    };
+
+    tlsKeyFile = mkOption {
+      description = "File containing x509 private key matching tlsCertFile.";
+      default = null;
+      type = nullOr path;
+    };
+
+    unschedulable = mkOption {
+      description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
+      default = false;
+      type = bool;
+    };
+
+    verbosity = mkOption {
+      description = ''
+        Optional glog verbosity level for logging statements. See
+        <link xlink:href="https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md"/>
+      '';
+      default = null;
+      type = nullOr int;
+    };
+
+  };
+
+  ###### implementation
+  config = mkMerge [
+    (mkIf cfg.enable {
+      services.kubernetes.kubelet.seedDockerImages = [infraContainer];
+
+      systemd.services.kubelet = {
+        description = "Kubernetes Kubelet Service";
+        wantedBy = [ "kubernetes.target" ];
+        after = [ "network.target" "docker.service" "kube-apiserver.service" ];
+        path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ top.path;
+        preStart = ''
+          ${concatMapStrings (img: ''
+            echo "Seeding docker image: ${img}"
+            docker load <${img}
+          '') cfg.seedDockerImages}
+
+          rm /opt/cni/bin/* || true
+          ${concatMapStrings (package: ''
+            echo "Linking cni package: ${package}"
+            ln -fs ${package}/bin/* /opt/cni/bin
+          '') cfg.cni.packages}
+        '';
+        serviceConfig = {
+          Slice = "kubernetes.slice";
+          CPUAccounting = true;
+          MemoryAccounting = true;
+          Restart = "on-failure";
+          RestartSec = "1000ms";
+          ExecStart = ''${top.package}/bin/kubelet \
+            --address=${cfg.address} \
+            --allow-privileged=${boolToString cfg.allowPrivileged} \
+            --authentication-token-webhook \
+            --authentication-token-webhook-cache-ttl="10s" \
+            --authorization-mode=Webhook \
+            ${optionalString (cfg.clientCaFile != null)
+              "--client-ca-file=${cfg.clientCaFile}"} \
+            ${optionalString (cfg.clusterDns != "")
+              "--cluster-dns=${cfg.clusterDns}"} \
+            ${optionalString (cfg.clusterDomain != "")
+              "--cluster-domain=${cfg.clusterDomain}"} \
+            --cni-conf-dir=${cniConfig} \
+            ${optionalString (cfg.featureGates != [])
+              "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+            --hairpin-mode=hairpin-veth \
+            --healthz-bind-address=${cfg.healthz.bind} \
+            --healthz-port=${toString cfg.healthz.port} \
+            --hostname-override=${cfg.hostname} \
+            --kubeconfig=${kubeconfig} \
+            ${optionalString (cfg.networkPlugin != null)
+              "--network-plugin=${cfg.networkPlugin}"} \
+            ${optionalString (cfg.nodeIp != null)
+              "--node-ip=${cfg.nodeIp}"} \
+            --pod-infra-container-image=pause \
+            ${optionalString (cfg.manifests != {})
+              "--pod-manifest-path=/etc/${manifestPath}"} \
+            --port=${toString cfg.port} \
+            --register-node=${boolToString cfg.registerNode} \
+            ${optionalString (taints != "")
+              "--register-with-taints=${taints}"} \
+            --root-dir=${top.dataDir} \
+            ${optionalString (cfg.tlsCertFile != null)
+              "--tls-cert-file=${cfg.tlsCertFile}"} \
+            ${optionalString (cfg.tlsKeyFile != null)
+              "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+            ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+            ${cfg.extraOpts}
+          '';
+          WorkingDirectory = top.dataDir;
+        };
+      };
+
+      # Allways include cni plugins
+      services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
+
+      boot.kernelModules = ["br_netfilter"];
+
+      services.kubernetes.kubelet.hostname = with config.networking;
+        mkDefault (hostName + optionalString (!isNull domain) ".${domain}");
+
+      services.kubernetes.pki.certs = with top.lib; {
+        kubelet = mkCert {
+          name = "kubelet";
+          CN = top.kubelet.hostname;
+          action = "systemctl restart kubelet.service";
+
+        };
+        kubeletClient = mkCert {
+          name = "kubelet-client";
+          CN = "system:node:${top.kubelet.hostname}";
+          fields = {
+            O = "system:nodes";
+          };
+          action = "systemctl restart kubelet.service";
+        };
+      };
+
+      services.kubernetes.kubelet.kubeconfig.server = mkDefault top.apiserverAddress;
+    })
+
+    (mkIf (cfg.enable && cfg.manifests != {}) {
+      environment.etc = mapAttrs' (name: manifest:
+        nameValuePair "${manifestPath}/${name}.json" {
+          text = builtins.toJSON manifest;
+          mode = "0755";
+        }
+      ) cfg.manifests;
+    })
+
+    (mkIf (cfg.unschedulable && cfg.enable) {
+      services.kubernetes.kubelet.taints.unschedulable = {
+        value = "true";
+        effect = "NoSchedule";
+      };
+    })
+
+  ];
+}
diff --git a/nixos/modules/services/cluster/kubernetes/pki.nix b/nixos/modules/services/cluster/kubernetes/pki.nix
new file mode 100644
index 00000000000..38deca23a99
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/pki.nix
@@ -0,0 +1,388 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.pki;
+
+  csrCA = pkgs.writeText "kube-pki-cacert-csr.json" (builtins.toJSON {
+    key = {
+        algo = "rsa";
+        size = 2048;
+    };
+    names = singleton cfg.caSpec;
+  });
+
+  csrCfssl = pkgs.writeText "kube-pki-cfssl-csr.json" (builtins.toJSON {
+    key = {
+        algo = "rsa";
+        size = 2048;
+    };
+    CN = top.masterAddress;
+  });
+
+  cfsslAPITokenBaseName = "apitoken.secret";
+  cfsslAPITokenPath = "${config.services.cfssl.dataDir}/${cfsslAPITokenBaseName}";
+  certmgrAPITokenPath = "${top.secretsPath}/${cfsslAPITokenBaseName}";
+  cfsslAPITokenLength = 32;
+
+  clusterAdminKubeconfig = with cfg.certs.clusterAdmin;
+    top.lib.mkKubeConfig "cluster-admin" {
+        server = top.apiserverAddress;
+        certFile = cert;
+        keyFile = key;
+    };
+
+  remote = with config.services; "https://${kubernetes.masterAddress}:${toString cfssl.port}";
+in
+{
+  ###### interface
+  options.services.kubernetes.pki = with lib.types; {
+
+    enable = mkEnableOption "Whether to enable easyCert issuer service.";
+
+    certs = mkOption {
+      description = "List of certificate specs to feed to cert generator.";
+      default = {};
+      type = attrs;
+    };
+
+    genCfsslCACert = mkOption {
+      description = ''
+        Whether to automatically generate cfssl CA certificate and key,
+        if they don't exist.
+      '';
+      default = true;
+      type = bool;
+    };
+
+    genCfsslAPICerts = mkOption {
+      description = ''
+        Whether to automatically generate cfssl API webserver TLS cert and key,
+        if they don't exist.
+      '';
+      default = true;
+      type = bool;
+    };
+
+    genCfsslAPIToken = mkOption {
+      description = ''
+        Whether to automatically generate cfssl API-token secret,
+        if they doesn't exist.
+      '';
+      default = true;
+      type = bool;
+    };
+
+    pkiTrustOnBootstrap = mkOption {
+      description = "Whether to always trust remote cfssl server upon initial PKI bootstrap.";
+      default = true;
+      type = bool;
+    };
+
+    caCertPathPrefix = mkOption {
+      description = ''
+        Path-prefrix for the CA-certificate to be used for cfssl signing.
+        Suffixes ".pem" and "-key.pem" will be automatically appended for
+        the public and private keys respectively.
+      '';
+      default = "${config.services.cfssl.dataDir}/ca";
+      type = str;
+    };
+
+    caSpec = mkOption {
+      description = "Certificate specification for the auto-generated CAcert.";
+      default = {
+        CN = "kubernetes-cluster-ca";
+        O = "NixOS";
+        OU = "services.kubernetes.pki.caSpec";
+        L = "auto-generated";
+      };
+      type = attrs;
+    };
+
+    etcClusterAdminKubeconfig = mkOption {
+      description = ''
+        Symlink a kubeconfig with cluster-admin privileges to environment path
+        (/etc/&lt;path&gt;).
+      '';
+      default = null;
+      type = nullOr str;
+    };
+
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable
+  (let
+    cfsslCertPathPrefix = "${config.services.cfssl.dataDir}/cfssl";
+    cfsslCert = "${cfsslCertPathPrefix}.pem";
+    cfsslKey = "${cfsslCertPathPrefix}-key.pem";
+  in
+  {
+
+    services.cfssl = mkIf (top.apiserver.enable) {
+      enable = true;
+      address = "0.0.0.0";
+      tlsCert = cfsslCert;
+      tlsKey = cfsslKey;
+      configFile = toString (pkgs.writeText "cfssl-config.json" (builtins.toJSON {
+        signing = {
+          profiles = {
+            default = {
+              usages = ["digital signature"];
+              auth_key = "default";
+              expiry = "720h";
+            };
+          };
+        };
+        auth_keys = {
+          default = {
+            type = "standard";
+            key = "file:${cfsslAPITokenPath}";
+          };
+        };
+      }));
+    };
+
+    systemd.services.cfssl.preStart = with pkgs; with config.services.cfssl; mkIf (top.apiserver.enable)
+    (concatStringsSep "\n" [
+      "set -e"
+      (optionalString cfg.genCfsslCACert ''
+        if [ ! -f "${cfg.caCertPathPrefix}.pem" ]; then
+          ${cfssl}/bin/cfssl genkey -initca ${csrCA} | \
+            ${cfssl}/bin/cfssljson -bare ${cfg.caCertPathPrefix}
+        fi
+      '')
+      (optionalString cfg.genCfsslAPICerts ''
+        if [ ! -f "${dataDir}/cfssl.pem" ]; then
+          ${cfssl}/bin/cfssl gencert -ca "${cfg.caCertPathPrefix}.pem" -ca-key "${cfg.caCertPathPrefix}-key.pem" ${csrCfssl} | \
+            ${cfssl}/bin/cfssljson -bare ${cfsslCertPathPrefix}
+        fi
+      '')
+      (optionalString cfg.genCfsslAPIToken ''
+        if [ ! -f "${cfsslAPITokenPath}" ]; then
+          head -c ${toString (cfsslAPITokenLength / 2)} /dev/urandom | od -An -t x | tr -d ' ' >"${cfsslAPITokenPath}"
+        fi
+        chown cfssl "${cfsslAPITokenPath}" && chmod 400 "${cfsslAPITokenPath}"
+      '')]);
+
+    systemd.services.kube-certmgr-bootstrap = {
+      description = "Kubernetes certmgr bootstrapper";
+      wantedBy = [ "certmgr.service" ];
+      after = [ "cfssl.target" ];
+      script = concatStringsSep "\n" [''
+        set -e
+
+        # If there's a cfssl (cert issuer) running locally, then don't rely on user to
+        # manually paste it in place. Just symlink.
+        # otherwise, create the target file, ready for users to insert the token
+
+        if [ -f "${cfsslAPITokenPath}" ]; then
+          ln -fs "${cfsslAPITokenPath}" "${certmgrAPITokenPath}"
+        else
+          touch "${certmgrAPITokenPath}" && chmod 600 "${certmgrAPITokenPath}"
+        fi
+      ''
+      (optionalString (cfg.pkiTrustOnBootstrap) ''
+        if [ ! -f "${top.caFile}" ] || [ $(cat "${top.caFile}" | wc -c) -lt 1 ]; then
+          ${pkgs.curl}/bin/curl --fail-early -f -kd '{}' ${remote}/api/v1/cfssl/info | \
+            ${pkgs.cfssl}/bin/cfssljson -stdout >${top.caFile}
+        fi
+      '')
+      ];
+      serviceConfig = {
+        RestartSec = "10s";
+        Restart = "on-failure";
+      };
+    };
+
+    services.certmgr = {
+      enable = true;
+      package = pkgs.certmgr-selfsigned;
+      svcManager = "command";
+      specs =
+        let
+          mkSpec = _: cert: {
+            inherit (cert) action;
+            authority = {
+              inherit remote;
+              file.path = cert.caCert;
+              root_ca = cert.caCert;
+              profile = "default";
+              auth_key_file = certmgrAPITokenPath;
+            };
+            certificate = {
+              path = cert.cert;
+            };
+            private_key = cert.privateKeyOptions;
+            request = {
+              inherit (cert) CN hosts;
+              key = {
+                algo = "rsa";
+                size = 2048;
+              };
+              names = [ cert.fields ];
+            };
+          };
+        in
+          mapAttrs mkSpec cfg.certs;
+      };
+
+      #TODO: Get rid of kube-addon-manager in the future for the following reasons
+      # - it is basically just a shell script wrapped around kubectl
+      # - it assumes that it is clusterAdmin or can gain clusterAdmin rights through serviceAccount
+      # - it is designed to be used with k8s system components only
+      # - it would be better with a more Nix-oriented way of managing addons
+      systemd.services.kube-addon-manager = mkIf top.addonManager.enable (mkMerge [{
+        environment.KUBECONFIG = with cfg.certs.addonManager;
+          top.lib.mkKubeConfig "addon-manager" {
+            server = top.apiserverAddress;
+            certFile = cert;
+            keyFile = key;
+          };
+        }
+
+        (optionalAttrs (top.addonManager.bootstrapAddons != {}) {
+          serviceConfig.PermissionsStartOnly = true;
+          preStart = with pkgs;
+          let
+            files = mapAttrsToList (n: v: writeText "${n}.json" (builtins.toJSON v))
+              top.addonManager.bootstrapAddons;
+          in
+          ''
+            export KUBECONFIG=${clusterAdminKubeconfig}
+            ${kubectl}/bin/kubectl apply -f ${concatStringsSep " \\\n -f " files}
+          '';
+        })]);
+
+      environment.etc.${cfg.etcClusterAdminKubeconfig}.source = mkIf (!isNull cfg.etcClusterAdminKubeconfig)
+        clusterAdminKubeconfig;
+
+      environment.systemPackages = mkIf (top.kubelet.enable || top.proxy.enable) [
+      (pkgs.writeScriptBin "nixos-kubernetes-node-join" ''
+        set -e
+        exec 1>&2
+
+        if [ $# -gt 0 ]; then
+          echo "Usage: $(basename $0)"
+          echo ""
+          echo "No args. Apitoken must be provided on stdin."
+          echo "To get the apitoken, execute: 'sudo cat ${certmgrAPITokenPath}' on the master node."
+          exit 1
+        fi
+
+        if [ $(id -u) != 0 ]; then
+          echo "Run as root please."
+          exit 1
+        fi
+
+        read -r token
+        if [ ''${#token} != ${toString cfsslAPITokenLength} ]; then
+          echo "Token must be of length ${toString cfsslAPITokenLength}."
+          exit 1
+        fi
+
+        echo $token > ${certmgrAPITokenPath}
+        chmod 600 ${certmgrAPITokenPath}
+
+        echo "Restarting certmgr..." >&1
+        systemctl restart certmgr
+
+        echo "Waiting for certs to appear..." >&1
+
+        ${optionalString top.kubelet.enable ''
+          while [ ! -f ${cfg.certs.kubelet.cert} ]; do sleep 1; done
+          echo "Restarting kubelet..." >&1
+          systemctl restart kubelet
+        ''}
+
+        ${optionalString top.proxy.enable ''
+          while [ ! -f ${cfg.certs.kubeProxyClient.cert} ]; do sleep 1; done
+          echo "Restarting kube-proxy..." >&1
+          systemctl restart kube-proxy
+        ''}
+
+        ${optionalString top.flannel.enable ''
+          while [ ! -f ${cfg.certs.flannelClient.cert} ]; do sleep 1; done
+          echo "Restarting flannel..." >&1
+          systemctl restart flannel
+        ''}
+
+        echo "Node joined succesfully"
+      '')];
+
+      # isolate etcd on loopback at the master node
+      # easyCerts doesn't support multimaster clusters anyway atm.
+      services.etcd = with cfg.certs.etcd; {
+        listenClientUrls = ["https://127.0.0.1:2379"];
+        listenPeerUrls = ["https://127.0.0.1:2380"];
+        advertiseClientUrls = ["https://etcd.local:2379"];
+        initialCluster = ["${top.masterAddress}=https://etcd.local:2380"];
+        initialAdvertisePeerUrls = ["https://etcd.local:2380"];
+        certFile = mkDefault cert;
+        keyFile = mkDefault key;
+        trustedCaFile = mkDefault caCert;
+      };
+      networking.extraHosts = mkIf (config.services.etcd.enable) ''
+        127.0.0.1 etcd.${top.addons.dns.clusterDomain} etcd.local
+      '';
+
+      services.flannel = with cfg.certs.flannelClient; {
+        kubeconfig = top.lib.mkKubeConfig "flannel" {
+          server = top.apiserverAddress;
+          certFile = cert;
+          keyFile = key;
+        };
+      };
+
+      services.kubernetes = {
+
+        apiserver = mkIf top.apiserver.enable (with cfg.certs.apiServer; {
+          etcd = with cfg.certs.apiserverEtcdClient; {
+            servers = ["https://etcd.local:2379"];
+            certFile = mkDefault cert;
+            keyFile = mkDefault key;
+            caFile = mkDefault caCert;
+          };
+          clientCaFile = mkDefault caCert;
+          tlsCertFile = mkDefault cert;
+          tlsKeyFile = mkDefault key;
+          serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.cert;
+          kubeletClientCaFile = mkDefault caCert;
+          kubeletClientCertFile = mkDefault cfg.certs.apiserverKubeletClient.cert;
+          kubeletClientKeyFile = mkDefault cfg.certs.apiserverKubeletClient.key;
+        });
+        controllerManager = mkIf top.controllerManager.enable {
+          serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.key;
+          rootCaFile = cfg.certs.controllerManagerClient.caCert;
+          kubeconfig = with cfg.certs.controllerManagerClient; {
+            certFile = mkDefault cert;
+            keyFile = mkDefault key;
+          };
+        };
+        scheduler = mkIf top.scheduler.enable {
+          kubeconfig = with cfg.certs.schedulerClient; {
+            certFile = mkDefault cert;
+            keyFile = mkDefault key;
+          };
+        };
+        kubelet = mkIf top.kubelet.enable {
+          clientCaFile = mkDefault cfg.certs.kubelet.caCert;
+          tlsCertFile = mkDefault cfg.certs.kubelet.cert;
+          tlsKeyFile = mkDefault cfg.certs.kubelet.key;
+          kubeconfig = with cfg.certs.kubeletClient; {
+            certFile = mkDefault cert;
+            keyFile = mkDefault key;
+          };
+        };
+        proxy = mkIf top.proxy.enable {
+          kubeconfig = with cfg.certs.kubeProxyClient; {
+            certFile = mkDefault cert;
+            keyFile = mkDefault key;
+          };
+        };
+      };
+    });
+}
diff --git a/nixos/modules/services/cluster/kubernetes/proxy.nix b/nixos/modules/services/cluster/kubernetes/proxy.nix
new file mode 100644
index 00000000000..6bcf2eaca82
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/proxy.nix
@@ -0,0 +1,80 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.proxy;
+in
+{
+
+  ###### interface
+  options.services.kubernetes.proxy = with lib.types; {
+
+    bindAddress = mkOption {
+      description = "Kubernetes proxy listening address.";
+      default = "0.0.0.0";
+      type = str;
+    };
+
+    enable = mkEnableOption "Whether to enable Kubernetes proxy.";
+
+    extraOpts = mkOption {
+      description = "Kubernetes proxy extra command line options.";
+      default = "";
+      type = str;
+    };
+
+    featureGates = mkOption {
+      description = "List set of feature gates";
+      default = top.featureGates;
+      type = listOf str;
+    };
+
+    kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes proxy";
+
+    verbosity = mkOption {
+      description = ''
+        Optional glog verbosity level for logging statements. See
+        <link xlink:href="https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md"/>
+      '';
+      default = null;
+      type = nullOr int;
+    };
+
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    systemd.services.kube-proxy = {
+      description = "Kubernetes Proxy Service";
+      wantedBy = [ "kubernetes.target" ];
+      after = [ "kube-apiserver.service" ];
+      path = with pkgs; [ iptables conntrack_tools ];
+      serviceConfig = {
+        Slice = "kubernetes.slice";
+        ExecStart = ''${top.package}/bin/kube-proxy \
+          --bind-address=${cfg.bindAddress} \
+          ${optionalString (top.clusterCidr!=null)
+            "--cluster-cidr=${top.clusterCidr}"} \
+          ${optionalString (cfg.featureGates != [])
+            "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+          --kubeconfig=${top.lib.mkKubeConfig "kube-proxy" cfg.kubeconfig} \
+          ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+          ${cfg.extraOpts}
+        '';
+        WorkingDirectory = top.dataDir;
+      };
+    };
+
+    services.kubernetes.pki.certs = {
+      kubeProxyClient = top.lib.mkCert {
+        name = "kube-proxy-client";
+        CN = "system:kube-proxy";
+        action = "systemctl restart kube-proxy.service";
+      };
+    };
+
+    services.kubernetes.proxy.kubeconfig.server = mkDefault top.apiserverAddress;
+  };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/scheduler.nix b/nixos/modules/services/cluster/kubernetes/scheduler.nix
new file mode 100644
index 00000000000..655e6f8b6e2
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/scheduler.nix
@@ -0,0 +1,92 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  top = config.services.kubernetes;
+  cfg = top.scheduler;
+in
+{
+  ###### interface
+  options.services.kubernetes.scheduler = with lib.types; {
+
+    address = mkOption {
+      description = "Kubernetes scheduler listening address.";
+      default = "127.0.0.1";
+      type = str;
+    };
+
+    enable = mkEnableOption "Whether to enable Kubernetes scheduler.";
+
+    extraOpts = mkOption {
+      description = "Kubernetes scheduler extra command line options.";
+      default = "";
+      type = str;
+    };
+
+    featureGates = mkOption {
+      description = "List set of feature gates";
+      default = top.featureGates;
+      type = listOf str;
+    };
+
+    kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes scheduler";
+
+    leaderElect = mkOption {
+      description = "Whether to start leader election before executing main loop.";
+      type = bool;
+      default = true;
+    };
+
+    port = mkOption {
+      description = "Kubernetes scheduler listening port.";
+      default = 10251;
+      type = int;
+    };
+
+    verbosity = mkOption {
+      description = ''
+        Optional glog verbosity level for logging statements. See
+        <link xlink:href="https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md"/>
+      '';
+      default = null;
+      type = nullOr int;
+    };
+
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    systemd.services.kube-scheduler = {
+      description = "Kubernetes Scheduler Service";
+      wantedBy = [ "kubernetes.target" ];
+      after = [ "kube-apiserver.service" ];
+      serviceConfig = {
+        Slice = "kubernetes.slice";
+        ExecStart = ''${top.package}/bin/kube-scheduler \
+          --address=${cfg.address} \
+          ${optionalString (cfg.featureGates != [])
+            "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+          --kubeconfig=${top.lib.mkKubeConfig "kube-scheduler" cfg.kubeconfig} \
+          --leader-elect=${boolToString cfg.leaderElect} \
+          --port=${toString cfg.port} \
+          ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+          ${cfg.extraOpts}
+        '';
+        WorkingDirectory = top.dataDir;
+        User = "kubernetes";
+        Group = "kubernetes";
+      };
+    };
+
+    services.kubernetes.pki.certs = {
+      schedulerClient = top.lib.mkCert {
+        name = "kube-scheduler-client";
+        CN = "system:kube-scheduler";
+        action = "systemctl restart kube-scheduler.service";
+      };
+    };
+
+    services.kubernetes.scheduler.kubeconfig.server = mkDefault top.apiserverAddress;
+  };
+}
diff --git a/nixos/modules/services/hardware/bolt.nix b/nixos/modules/services/hardware/bolt.nix
new file mode 100644
index 00000000000..32b60af0603
--- /dev/null
+++ b/nixos/modules/services/hardware/bolt.nix
@@ -0,0 +1,34 @@
+# Thunderbolt 3 device manager
+
+{ config, lib, pkgs, ...}:
+
+with lib;
+
+{
+  options = {
+
+    services.hardware.bolt = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Bolt, a userspace daemon to enable
+          security levels for Thunderbolt 3 on GNU/Linux.
+
+          Bolt is used by GNOME 3 to handle Thunderbolt settings.
+        '';
+      };
+
+    };
+
+  };
+
+  config = mkIf config.services.hardware.bolt.enable {
+
+    environment.systemPackages = [ pkgs.bolt ];
+    services.udev.packages = [ pkgs.bolt ];
+    systemd.packages = [ pkgs.bolt ];
+
+  };
+}
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index 25c258ebe13..b8617e48d8e 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -22,7 +22,8 @@ let
       password = cfg.databasePassword;
       username = cfg.databaseUsername;
       encoding = "utf8";
-    };
+      pool = cfg.databasePool;
+    } // cfg.extraDatabaseConfig;
   };
 
   gitalyToml = pkgs.writeText "gitaly.toml" ''
@@ -253,6 +254,18 @@ in {
         description = "Gitlab database user.";
       };
 
+      databasePool = mkOption {
+        type = types.int;
+        default = 5;
+        description = "Database connection pool size.";
+      };
+
+      extraDatabaseConfig = mkOption {
+        type = types.attrs;
+        default = {};
+        description = "Extra configuration in config/database.yml.";
+      };
+
       host = mkOption {
         type = types.str;
         default = config.networking.hostName;
diff --git a/nixos/modules/services/misc/headphones.nix b/nixos/modules/services/misc/headphones.nix
new file mode 100644
index 00000000000..4a77045be28
--- /dev/null
+++ b/nixos/modules/services/misc/headphones.nix
@@ -0,0 +1,87 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  name = "headphones";
+
+  cfg = config.services.headphones;
+
+in
+
+{
+
+  ###### interface
+
+  options = {
+    services.headphones = {
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Whether to enable the headphones server.";
+      };
+      dataDir = mkOption {
+        type = types.path;
+        default = "/var/lib/${name}";
+        description = "Path where to store data files.";
+      };
+      configFile = mkOption {
+        type = types.path;
+        default = "${cfg.dataDir}/config.ini";
+        description = "Path to config file.";
+      };
+      host = mkOption {
+        type = types.str;
+        default = "localhost";
+        description = "Host to listen on.";
+      };
+      port = mkOption {
+        type = types.ints.u16;
+        default = 8181;
+        description = "Port to bind to.";
+      };
+      user = mkOption {
+        type = types.str;
+        default = name;
+        description = "User to run the service as";
+      };
+      group = mkOption {
+        type = types.str;
+        default = name;
+        description = "Group to run the service as";
+      };
+    };
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    users.users = optionalAttrs (cfg.user == name) (singleton {
+      name = name;
+      uid = config.ids.uids.headphones;
+      group = cfg.group;
+      description = "headphones user";
+      home = cfg.dataDir;
+      createHome = true;
+    });
+
+    users.groups = optionalAttrs (cfg.group == name) (singleton {
+      name = name;
+      gid = config.ids.gids.headphones;
+    });
+
+    systemd.services.headphones = {
+        description = "Headphones Server";
+        wantedBy    = [ "multi-user.target" ];
+        after = [ "network.target" ];
+        serviceConfig = {
+          User = cfg.user;
+          Group = cfg.group;
+          ExecStart = "${pkgs.headphones}/bin/headphones --datadir ${cfg.dataDir} --config ${cfg.configFile} --host ${cfg.host} --port ${toString cfg.port}";
+        };
+    };
+  };
+}
diff --git a/nixos/modules/services/misc/jackett.nix b/nixos/modules/services/misc/jackett.nix
index 8d1b3d225a4..b18ce2b1f81 100644
--- a/nixos/modules/services/misc/jackett.nix
+++ b/nixos/modules/services/misc/jackett.nix
@@ -4,11 +4,36 @@ with lib;
 
 let
   cfg = config.services.jackett;
+
 in
 {
   options = {
     services.jackett = {
       enable = mkEnableOption "Jackett";
+
+      dataDir = mkOption {
+        type = types.str;
+        default = "/var/lib/jackett/.config/Jackett";
+        description = "The directory where Jackett stores its data files.";
+      };
+
+      openFirewall = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Open ports in the firewall for the Jackett web interface.";
+      };
+
+      user = mkOption {
+        type = types.str;
+        default = "jackett";
+        description = "User account under which Jackett runs.";
+      };
+
+      group = mkOption {
+        type = types.str;
+        default = "jackett";
+        description = "Group under which Jackett runs.";
+      };
     };
   };
 
@@ -18,30 +43,38 @@ in
       after = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
       preStart = ''
-        test -d /var/lib/jackett/ || {
-          echo "Creating jackett data directory in /var/lib/jackett/"
-          mkdir -p /var/lib/jackett/
+        test -d ${cfg.dataDir} || {
+          echo "Creating jackett data directory in ${cfg.dataDir}"
+          mkdir -p ${cfg.dataDir}
         }
-        chown -R jackett:jackett /var/lib/jackett/
-        chmod 0700 /var/lib/jackett/
+        chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}
+        chmod 0700 ${cfg.dataDir}
       '';
 
       serviceConfig = {
         Type = "simple";
-        User = "jackett";
-        Group = "jackett";
+        User = cfg.user;
+        Group = cfg.group;
         PermissionsStartOnly = "true";
-        ExecStart = "${pkgs.jackett}/bin/Jackett";
+        ExecStart = "${pkgs.jackett}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'";
         Restart = "on-failure";
       };
     };
 
-    users.users.jackett = {
-      uid = config.ids.uids.jackett;
-      home = "/var/lib/jackett";
-      group = "jackett";
+    networking.firewall = mkIf cfg.openFirewall {
+      allowedTCPPorts = [ 9117 ];
+    };
+
+    users.users = mkIf (cfg.user == "jackett") {
+      jackett = {
+        group = cfg.group;
+        home = cfg.dataDir;
+        uid = config.ids.uids.jackett;
+      };
     };
-    users.groups.jackett.gid = config.ids.gids.jackett;
 
+    users.groups = mkIf (cfg.group == "jackett") {
+      jackett.gid = config.ids.gids.jackett;
+    };
   };
 }
diff --git a/nixos/modules/services/misc/radarr.nix b/nixos/modules/services/misc/radarr.nix
index 1a9fad3883c..9ab26d84832 100644
--- a/nixos/modules/services/misc/radarr.nix
+++ b/nixos/modules/services/misc/radarr.nix
@@ -4,11 +4,36 @@ with lib;
 
 let
   cfg = config.services.radarr;
+
 in
 {
   options = {
     services.radarr = {
       enable = mkEnableOption "Radarr";
+
+      dataDir = mkOption {
+        type = types.str;
+        default = "/var/lib/radarr/.config/Radarr";
+        description = "The directory where Radarr stores its data files.";
+      };
+
+      openFirewall = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Open ports in the firewall for the Radarr web interface.";
+      };
+
+      user = mkOption {
+        type = types.str;
+        default = "radarr";
+        description = "User account under which Radarr runs.";
+      };
+
+      group = mkOption {
+        type = types.str;
+        default = "radarr";
+        description = "Group under which Radarr runs.";
+      };
     };
   };
 
@@ -18,30 +43,38 @@ in
       after = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
       preStart = ''
-        test -d /var/lib/radarr/ || {
-          echo "Creating radarr data directory in /var/lib/radarr/"
-          mkdir -p /var/lib/radarr/
+        test -d ${cfg.dataDir} || {
+          echo "Creating radarr data directory in ${cfg.dataDir}"
+          mkdir -p ${cfg.dataDir}
         }
-        chown -R radarr:radarr /var/lib/radarr/
-        chmod 0700 /var/lib/radarr/
+        chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}
+        chmod 0700 ${cfg.dataDir}
       '';
 
       serviceConfig = {
         Type = "simple";
-        User = "radarr";
-        Group = "radarr";
+        User = cfg.user;
+        Group = cfg.group;
         PermissionsStartOnly = "true";
-        ExecStart = "${pkgs.radarr}/bin/Radarr";
+        ExecStart = "${pkgs.radarr}/bin/Radarr -nobrowser -data='${cfg.dataDir}'";
         Restart = "on-failure";
       };
     };
 
-    users.users.radarr = {
-      uid = config.ids.uids.radarr;
-      home = "/var/lib/radarr";
-      group = "radarr";
+    networking.firewall = mkIf cfg.openFirewall {
+      allowedTCPPorts = [ 7878 ];
+    };
+
+    users.users = mkIf (cfg.user == "radarr") {
+      radarr = {
+        group = cfg.group;
+        home = cfg.dataDir;
+        uid = config.ids.uids.radarr;
+      };
     };
-    users.groups.radarr.gid = config.ids.gids.radarr;
 
+    users.groups = mkIf (cfg.group == "radarr") {
+      radarr.gid = config.ids.gids.radarr;
+    };
   };
 }
diff --git a/nixos/modules/services/misc/zoneminder.nix b/nixos/modules/services/misc/zoneminder.nix
index a40e9e84613..ae7de7850d9 100644
--- a/nixos/modules/services/misc/zoneminder.nix
+++ b/nixos/modules/services/misc/zoneminder.nix
@@ -205,15 +205,13 @@ in {
 
       mysql = lib.mkIf cfg.database.createLocally {
         ensureDatabases = [ cfg.database.name ];
-        ensureUsers = {
+        ensureUsers = [{
           name = cfg.database.username;
-          ensurePermissions = [
-            { "${cfg.database.name}.*" = "ALL PRIVILEGES"; }
-          ];
+          ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; };
           initialDatabases = [
             { inherit (cfg.database) name; schema = "${pkg}/share/zoneminder/db/zm_create.sql"; }
           ];
-        };
+        }];
       };
 
       nginx = lib.mkIf useNginx {
diff --git a/nixos/modules/services/network-filesystems/diod.nix b/nixos/modules/services/network-filesystems/diod.nix
index 556fad4d8ab..063bae6ddb1 100644
--- a/nixos/modules/services/network-filesystems/diod.nix
+++ b/nixos/modules/services/network-filesystems/diod.nix
@@ -153,7 +153,6 @@ in
       after = [ "network.target" ];
       serviceConfig = {
         ExecStart = "${pkgs.diod}/sbin/diod -f -c ${diodConfig}";
-        CapabilityBoundingSet = "cap_net_bind_service+=ep";
       };
     };
   };
diff --git a/nixos/modules/services/networking/flannel.nix b/nixos/modules/services/networking/flannel.nix
index b93e28e34ef..ec702cdc6ff 100644
--- a/nixos/modules/services/networking/flannel.nix
+++ b/nixos/modules/services/networking/flannel.nix
@@ -73,11 +73,35 @@ in {
       };
     };
 
+    kubeconfig = mkOption {
+      description = ''
+        Path to kubeconfig to use for storing flannel config using the
+        Kubernetes API
+      '';
+      type = types.nullOr types.path;
+      default = null;
+    };
+
     network = mkOption {
       description = " IPv4 network in CIDR format to use for the entire flannel network.";
       type = types.str;
     };
 
+    nodeName = mkOption {
+      description = ''
+        Needed when running with Kubernetes as backend as this cannot be auto-detected";
+      '';
+      type = types.nullOr types.str;
+      default = with config.networking; (hostName + optionalString (!isNull domain) ".${domain}");
+      example = "node1.example.com";
+    };
+
+    storageBackend = mkOption {
+      description = "Determines where flannel stores its configuration at runtime";
+      type = types.enum ["etcd" "kubernetes"];
+      default = "etcd";
+    };
+
     subnetLen = mkOption {
       description = ''
         The size of the subnet allocated to each host. Defaults to 24 (i.e. /24)
@@ -122,17 +146,25 @@ in {
       after = [ "network.target" ];
       environment = {
         FLANNELD_PUBLIC_IP = cfg.publicIp;
+        FLANNELD_IFACE = cfg.iface;
+      } // optionalAttrs (cfg.storageBackend == "etcd") {
         FLANNELD_ETCD_ENDPOINTS = concatStringsSep "," cfg.etcd.endpoints;
         FLANNELD_ETCD_KEYFILE = cfg.etcd.keyFile;
         FLANNELD_ETCD_CERTFILE = cfg.etcd.certFile;
         FLANNELD_ETCD_CAFILE = cfg.etcd.caFile;
-        FLANNELD_IFACE = cfg.iface;
         ETCDCTL_CERT_FILE = cfg.etcd.certFile;
         ETCDCTL_KEY_FILE = cfg.etcd.keyFile;
         ETCDCTL_CA_FILE = cfg.etcd.caFile;
         ETCDCTL_PEERS = concatStringsSep "," cfg.etcd.endpoints;
+      } // optionalAttrs (cfg.storageBackend == "kubernetes") {
+        FLANNELD_KUBE_SUBNET_MGR = "true";
+        FLANNELD_KUBECONFIG_FILE = cfg.kubeconfig;
+        NODE_NAME = cfg.nodeName;
       };
       preStart = ''
+        mkdir -p /run/flannel
+        touch /run/flannel/docker
+      '' + optionalString (cfg.storageBackend == "etcd") ''
         echo "setting network configuration"
         until ${pkgs.etcdctl.bin}/bin/etcdctl set /coreos.com/network/config '${builtins.toJSON networkConfig}'
         do
@@ -140,15 +172,19 @@ in {
           sleep 1
         done
       '';
-      postStart = ''
-        while [ ! -f /run/flannel/subnet.env ]
-        do
-          sleep 1
-        done
-      '';
-      serviceConfig.ExecStart = "${cfg.package}/bin/flannel";
+      serviceConfig = {
+        ExecStart = "${cfg.package}/bin/flannel";
+        Restart = "always";
+        RestartSec = "10s";
+      };
     };
 
-    services.etcd.enable = mkDefault (cfg.etcd.endpoints == ["http://127.0.0.1:2379"]);
+    services.etcd.enable = mkDefault (cfg.storageBackend == "etcd" && cfg.etcd.endpoints == ["http://127.0.0.1:2379"]);
+
+    # for some reason, flannel doesn't let you configure this path
+    # see: https://github.com/coreos/flannel/blob/master/Documentation/configuration.md#configuration
+    environment.etc."kube-flannel/net-conf.json" = mkIf (cfg.storageBackend == "kubernetes") {
+      source = pkgs.writeText "net-conf.json" (builtins.toJSON networkConfig);
+    };
   };
 }
diff --git a/nixos/modules/services/networking/quassel.nix b/nixos/modules/services/networking/quassel.nix
index d850bb8b130..b223a48e055 100644
--- a/nixos/modules/services/networking/quassel.nix
+++ b/nixos/modules/services/networking/quassel.nix
@@ -23,6 +23,22 @@ in
         '';
       };
 
+      certificateFile = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        description = ''
+          Path to the certificate used for SSL connections with clients.
+        '';
+      };
+
+      requireSSL = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Require SSL for connections from clients.
+        '';
+      };
+
       package = mkOption {
         type = types.package;
         default = pkgs.quasselDaemon;
@@ -71,6 +87,10 @@ in
   ###### implementation
 
   config = mkIf cfg.enable {
+    assertions = [
+      { assertion = cfg.requireSSL -> cfg.certificateFile != null;
+        message = "Quassel needs a certificate file in order to require SSL";
+      }];
 
     users.users = mkIf (cfg.user == null) [
       { name = "quassel";
@@ -98,7 +118,13 @@ in
 
         serviceConfig =
         {
-          ExecStart = "${quassel}/bin/quasselcore --listen=${concatStringsSep '','' cfg.interfaces} --port=${toString cfg.portNumber} --configdir=${cfg.dataDir}";
+          ExecStart = concatStringsSep " " ([
+            "${quassel}/bin/quasselcore"
+            "--listen=${concatStringsSep "," cfg.interfaces}"
+            "--port=${toString cfg.portNumber}"
+            "--configdir=${cfg.dataDir}"
+          ] ++ optional cfg.requireSSL "--require-ssl"
+            ++ optional (cfg.certificateFile != null) "--ssl-cert=${cfg.certificateFile}");
           User = user;
           PermissionsStartOnly = true;
         };
diff --git a/nixos/modules/services/networking/wpa_supplicant.nix b/nixos/modules/services/networking/wpa_supplicant.nix
index 8622212f085..cdfe98aa034 100644
--- a/nixos/modules/services/networking/wpa_supplicant.nix
+++ b/nixos/modules/services/networking/wpa_supplicant.nix
@@ -86,7 +86,12 @@ in {
               '';
               description = ''
                 Use this option to configure advanced authentication methods like EAP.
-                See wpa_supplicant.conf(5) for example configurations.
+                See
+                <citerefentry>
+                  <refentrytitle>wpa_supplicant.conf</refentrytitle>
+                  <manvolnum>5</manvolnum>
+                </citerefentry>
+                for example configurations.
 
                 Mutually exclusive with <varname>psk</varname> and <varname>pskRaw</varname>.
               '';
@@ -122,7 +127,12 @@ in {
               '';
               description = ''
                 Extra configuration lines appended to the network block.
-                See wpa_supplicant.conf(5) for available options.
+                See
+                <citerefentry>
+                  <refentrytitle>wpa_supplicant.conf</refentrytitle>
+                  <manvolnum>5</manvolnum>
+                </citerefentry>
+                for available options.
               '';
             };
 
@@ -174,7 +184,12 @@ in {
         '';
         description = ''
           Extra lines appended to the configuration file.
-          See wpa_supplicant.conf(5) for available options.
+          See
+          <citerefentry>
+            <refentrytitle>wpa_supplicant.conf</refentrytitle>
+            <manvolnum>5</manvolnum>
+          </citerefentry>
+          for available options.
         '';
       };
     };
diff --git a/nixos/modules/services/printing/cupsd.nix b/nixos/modules/services/printing/cupsd.nix
index 1031d6f3d7e..3a43ebbb889 100644
--- a/nixos/modules/services/printing/cupsd.nix
+++ b/nixos/modules/services/printing/cupsd.nix
@@ -316,6 +316,10 @@ in
             mkdir -m 0755 -p ${cfg.tempDir}
 
             mkdir -m 0755 -p /var/lib/cups
+            # While cups will automatically create self-signed certificates if accessed via TLS,
+            # this directory to store the certificates needs to be created manually.
+            mkdir -m 0700 -p /var/lib/cups/ssl
+
             # Backwards compatibility
             if [ ! -L /etc/cups ]; then
               mv /etc/cups/* /var/lib/cups
diff --git a/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
new file mode 100644
index 00000000000..ccaa2cff1c2
--- /dev/null
+++ b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
@@ -0,0 +1,626 @@
+{ config, lib, pkgs, ... }: with lib; let
+  cfg = config.services.icingaweb2;
+  poolName = "icingaweb2";
+  phpfpmSocketName = "/var/run/phpfpm/${poolName}.sock";
+
+  formatBool = b: if b then "1" else "0";
+
+  configIni = let
+    config = cfg.generalConfig;
+  in ''
+    [global]
+    show_stacktraces = "${formatBool config.showStacktraces}"
+    show_application_state_messages = "${formatBool config.showApplicationStateMessages}"
+    module_path = "${pkgs.icingaweb2}/modules${optionalString (builtins.length config.modulePath > 0) ":${concatStringsSep ":" config.modulePath}"}"
+    config_backend = "${config.configBackend}"
+    ${optionalString (config.configBackend == "db") ''config_resource = "${config.configResource}"''}
+
+    [logging]
+    log = "${config.log}"
+    ${optionalString (config.log != "none") ''level = "${config.logLevel}"''}
+    ${optionalString (config.log == "php" || config.log == "syslog") ''application = "${config.logApplication}"''}
+    ${optionalString (config.log == "syslog") ''facility = "${config.logFacility}"''}
+    ${optionalString (config.log == "file") ''file = "${config.logFile}"''}
+
+    [themes]
+    default = "${config.themeDefault}"
+    disabled = "${formatBool config.themeDisabled}"
+
+    [authentication]
+    ${optionalString (config.authDefaultDomain != null) ''default_domain = "${config.authDefaultDomain}"''}
+  '';
+
+  resourcesIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    type = "${config.type}"
+    ${optionalString (config.type == "db") ''
+      db = "${config.db}"
+      host = "${config.host}"
+      ${optionalString (config.port != null) ''port = "${toString config.port}"''}
+      username = "${config.username}"
+      password = "${config.password}"
+      dbname = "${config.dbname}"
+      ${optionalString (config.charset != null) ''charset = "${config.charset}"''}
+      use_ssl = "${formatBool config.useSSL}"
+      ${optionalString (config.sslCert != null) ''ssl_cert = "${config.sslCert}"''}
+      ${optionalString (config.sslKey != null) ''ssl_cert = "${config.sslKey}"''}
+      ${optionalString (config.sslCA != null) ''ssl_cert = "${config.sslCA}"''}
+      ${optionalString (config.sslCApath != null) ''ssl_cert = "${config.sslCApath}"''}
+      ${optionalString (config.sslCipher != null) ''ssl_cert = "${config.sslCipher}"''}
+    ''}
+    ${optionalString (config.type == "ldap") ''
+      hostname = "${config.host}"
+      ${optionalString (config.port != null) ''port = "${toString config.port}"''}
+      root_dn = "${config.rootDN}"
+      bind_dn = "${config.username}"
+      bind_pw = "${config.password}"
+      encryption = "${config.ldapEncryption}"
+      timeout = "${toString config.ldapTimeout}"
+    ''}
+    ${optionalString (config.type == "ssh") ''
+      user = "${config.username}"
+      private_key = "${config.sshPrivateKey}"
+    ''}
+
+  '') cfg.resources);
+
+  authenticationIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    backend = "${config.backend}"
+    ${optionalString (config.domain != null) ''domain = "${config.domain}"''}
+    ${optionalString (config.backend == "external" && config.externalStripRegex != null) ''strip_username_regexp = "${config.externalStripRegex}"''}
+    ${optionalString (config.backend != "external") ''resource = "${config.resource}"''}
+    ${optionalString (config.backend == "ldap" || config.backend == "msldap") ''
+      ${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
+      ${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
+      ${optionalString (config.ldapFilter != null) ''filter = "${config.ldapFilter}"''}
+    ''}
+  '') cfg.authentications);
+
+  groupsIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    backend = "${config.backend}"
+    resource = "${config.resource}"
+    ${optionalString (config.backend != "db") ''
+      ${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
+      ${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
+      ${optionalString (config.ldapGroupClass != null) ''group_class = "${config.ldapGroupClass}"''}
+      ${optionalString (config.ldapGroupNameAttr != null) ''group_name_attribute = "${config.ldapGroupNameAttr}"''}
+      ${optionalString (config.ldapGroupFilter != null) ''group_filter = "${config.ldapGroupFilter}"''}
+    ''}
+    ${optionalString (config.backend == "msldap" && config.ldapNestedSearch) ''nested_group_search = "1"''}
+  '') cfg.groupBackends);
+
+  rolesIni = let
+    optionalList = var: attribute: optionalString (builtins.length var > 0) ''${attribute} = "${concatStringsSep "," var}"'';
+  in concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    ${optionalList config.users "users"}
+    ${optionalList config.groups "groups"}
+    ${optionalList config.permissions "permissions"}
+    ${optionalList config.permissions "permissions"}
+    ${concatStringsSep "\n" (mapAttrsToList (key: value: optionalList value key) config.extraAssignments)}
+  '') cfg.roles);
+
+in {
+  options.services.icingaweb2 = with types; {
+    enable = mkEnableOption "the icingaweb2 web interface";
+
+    pool = mkOption {
+      type = str;
+      default = "${poolName}";
+      description = ''
+         Name of existing PHP-FPM pool that is used to run Icingaweb2.
+         If not specified, a pool will automatically created with default values.
+      '';
+    };
+
+    virtualHost = mkOption {
+      type = nullOr str;
+      default = "icingaweb2";
+      description = ''
+        Name of the nginx virtualhost to use and setup. If null, no virtualhost is set up.
+      '';
+    };
+
+    timezone = mkOption {
+      type = str;
+      default = "UTC";
+      example = "Europe/Berlin";
+      description = "PHP-compliant timezone specification";
+    };
+
+    modules = {
+      doc.enable = mkEnableOption "the icingaweb2 doc module";
+      migrate.enable = mkEnableOption "the icingaweb2 migrate module";
+      setup.enable = mkEnableOption "the icingaweb2 setup module";
+      test.enable = mkEnableOption "the icingaweb2 test module";
+      translation.enable = mkEnableOption "the icingaweb2 translation module";
+    };
+
+    modulePackages = mkOption {
+      type = attrsOf package;
+      default = {};
+      example = literalExample ''
+        {
+          "snow" = pkgs.icingaweb2Modules.theme-snow;
+        }
+      '';
+      description = ''
+        Name-package attrset of Icingaweb 2 modules packages to enable.
+
+        If you enable modules manually (e.g. via the web ui), they will not be touched.
+      '';
+    };
+
+    generalConfig = {
+      mutable = mkOption {
+        type = bool;
+        default = false;
+        description = ''
+          Make config.ini mutable (e.g. via the web interface).
+          Not that you need to update module_path manually.
+        '';
+      };
+
+      showStacktraces = mkOption {
+        type = bool;
+        default = true;
+        description = "Enable stack traces in the Web UI";
+      };
+
+      showApplicationStateMessages = mkOption {
+        type = bool;
+        default = true;
+        description = "Enable application state messages in the Web UI";
+      };
+
+      modulePath = mkOption {
+        type = listOf str;
+        default = [];
+        description = "List of additional module search paths";
+      };
+
+      configBackend = mkOption {
+        type = enum [ "ini" "db" "none" ];
+        default = "db";
+        description = "Where to store user preferences";
+      };
+
+      configResource = mkOption {
+        type = nullOr str;
+        default = null;
+        description = "Database resource where user preferences are stored (if they are stored in a database)";
+      };
+
+      log = mkOption {
+        type = enum [ "syslog" "php" "file" "none" ];
+        default = "syslog";
+        description = "Logging target";
+      };
+
+      logLevel = mkOption {
+        type = enum [ "ERROR" "WARNING" "INFO" "DEBUG" ];
+        default = "ERROR";
+        description = "Maximum logging level to emit";
+      };
+
+      logApplication = mkOption {
+        type = str;
+        default = "icingaweb2";
+        description = "Application name to log under (syslog and php log)";
+      };
+
+      logFacility = mkOption {
+        type = enum [ "user" "local0" "local1" "local2" "local3" "local4" "local5" "local6" "local7" ];
+        default = "user";
+        description = "Syslog facility to log to";
+      };
+
+      logFile = mkOption {
+        type = str;
+        default = "/var/log/icingaweb2/icingaweb2.log";
+        description = "File to log to";
+      };
+
+      themeDefault = mkOption {
+        type = str;
+        default = "Icinga";
+        description = "Name of the default theme";
+      };
+
+      themeDisabled = mkOption {
+        type = bool;
+        default = false;
+        description = "Disallow users to change the theme";
+      };
+
+      authDefaultDomain = mkOption {
+        type = nullOr str;
+        default = null;
+        description = "Domain for users logging in without a qualified domain";
+      };
+    };
+
+    mutableResources = mkOption {
+      type = bool;
+      default = false;
+      description = "Make resources.ini mutable (e.g. via the web interface)";
+    };
+
+    resources = mkOption {
+      default = {};
+      description = "Icingaweb 2 resources to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this resource";
+          };
+
+          type = mkOption {
+            type = enum [ "db" "ldap" "ssh" ];
+            default = "db";
+            description = "Type of this resouce";
+          };
+
+          db = mkOption {
+            type = enum [ "mysql" "pgsql" ];
+            default = "mysql";
+            description = "Type of this database resource";
+          };
+
+          host = mkOption {
+            type = str;
+            description = "Host to connect to";
+          };
+
+          port = mkOption {
+            type = nullOr port;
+            default = null;
+            description = "Port to connect on";
+          };
+
+          username = mkOption {
+            type = str;
+            description = "Database or SSH user or LDAP bind DN to connect with";
+          };
+
+          password = mkOption {
+            type = str;
+            description = "Password for the database user or LDAP bind DN";
+          };
+
+          dbname = mkOption {
+            type = str;
+            description = "Name of the database to connect to";
+          };
+
+          charset = mkOption {
+            type = nullOr str;
+            default = null;
+            example = "utf8";
+            description = "Database character set to connect with";
+          };
+
+          useSSL = mkOption {
+            type = nullOr bool;
+            default = false;
+            description = "Whether to connect to the database using SSL";
+          };
+
+          sslCert = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "The file path to the SSL certificate. Only available for the mysql database.";
+          };
+
+          sslKey = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "The file path to the SSL key. Only available for the mysql database.";
+          };
+
+          sslCA = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "The file path to the SSL certificate authority. Only available for the mysql database.";
+          };
+
+          sslCApath = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "The file path to the directory that contains the trusted SSL CA certificates in PEM format. Only available for the mysql database.";
+          };
+
+          sslCipher = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "A list of one or more permissible ciphers to use for SSL encryption, in a format understood by OpenSSL. Only available for the mysql database.";
+          };
+
+          rootDN = mkOption {
+            type = str;
+            description = "Root object of the LDAP tree";
+          };
+
+          ldapEncryption = mkOption {
+            type = enum [ "none" "starttls" "ldaps" ];
+            default = "none";
+            description = "LDAP encryption to use";
+          };
+
+          ldapTimeout = mkOption {
+            type = ints.positive;
+            default = 5;
+            description = "Connection timeout for every LDAP connection";
+          };
+
+          sshPrivateKey = mkOption {
+            type = str;
+            description = "The path to the private key of the user";
+          };
+        };
+      }));
+    };
+
+    mutableAuthConfig = mkOption {
+      type = bool;
+      default = true;
+      description = "Make authentication.ini mutable (e.g. via the web interface)";
+    };
+
+    authentications = mkOption {
+      default = {};
+      description = "Icingaweb 2 authentications to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this authentication";
+          };
+
+          backend = mkOption {
+            type = enum [ "external" "ldap" "msldap" "db" ];
+            default = "db";
+            description = "The type of this authentication backend";
+          };
+
+          domain = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "Domain for domain-aware authentication";
+          };
+
+          externalStripRegex = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "Regular expression to strip off specific user name parts";
+          };
+
+          resource = mkOption {
+            type = str;
+            description = "Name of the database/LDAP resource";
+          };
+
+          ldapUserClass = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP user class";
+          };
+
+          ldapUserNameAttr = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP attribute which contains the username";
+          };
+
+          ldapFilter = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP search filter";
+          };
+        };
+      }));
+    };
+
+    mutableGroupsConfig = mkOption {
+      type = bool;
+      default = true;
+      description = "Make groups.ini mutable (e.g. via the web interface)";
+    };
+
+    groupBackends = mkOption {
+      default = {};
+      description = "Icingaweb 2 group backends to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this group backend";
+          };
+
+          backend = mkOption {
+            type = enum [ "ldap" "msldap" "db" ];
+            default = "db";
+            description = "The type of this group backend";
+          };
+
+          resource = mkOption {
+            type = str;
+            description = "Name of the database/LDAP resource";
+          };
+
+          ldapUserClass = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP user class";
+          };
+
+          ldapUserNameAttr = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP attribute which contains the username";
+          };
+
+          ldapGroupClass = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP group class";
+          };
+
+          ldapGroupNameAttr = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP attribute which contains the groupname";
+          };
+
+          ldapGroupFilter = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "LDAP group search filter";
+          };
+
+          ldapNestedSearch = mkOption {
+            type = bool;
+            default = false;
+            description = "Enable nested group search in Active Directory based on the user";
+          };
+        };
+      }));
+    };
+
+    mutableRolesConfig = mkOption {
+      type = bool;
+      default = true;
+      description = "Make roles.ini mutable (e.g. via the web interface)";
+    };
+
+    roles = mkOption {
+      default = {};
+      description = "Icingaweb 2 roles to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this role";
+          };
+
+          users = mkOption {
+            type = listOf str;
+            default = [];
+            description = "List of users that are assigned to the role";
+          };
+
+          groups = mkOption {
+            type = listOf str;
+            default = [];
+            description = "List of groups that are assigned to the role";
+          };
+
+          permissions = mkOption {
+            type = listOf str;
+            default = [];
+            example = [ "application/share/navigation" "config/*" ];
+            description = "The permissions to grant";
+          };
+
+          extraAssignments = mkOption {
+            type = attrsOf (listOf str);
+            default = {};
+            example = { "monitoring/blacklist/properties" = [ "sla" "customer"]; };
+            description = "Additional assignments of this role";
+          };
+        };
+      }));
+    };
+  };
+
+  config = mkIf cfg.enable {
+    services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
+      "${poolName}" = ''
+        listen = "${phpfpmSocketName}"
+        listen.owner = nginx
+        listen.group = nginx
+        listen.mode = 0600
+        user = icingaweb2
+        pm = dynamic
+        pm.max_children = 75
+        pm.start_servers = 2
+        pm.min_spare_servers = 2
+        pm.max_spare_servers = 10
+      '';
+    };
+
+    services.phpfpm.phpOptions = mkIf (cfg.pool == "${poolName}")
+      ''
+        extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
+        date.timezone = "${cfg.timezone}"
+      '';
+
+    systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
+
+    services.nginx = {
+      enable = true;
+      virtualHosts = mkIf (cfg.virtualHost != null) {
+        "${cfg.virtualHost}" = {
+          root = "${pkgs.icingaweb2}/public";
+
+          extraConfig = ''
+            index index.php;
+            try_files $1 $uri $uri/ /index.php$is_args$args;
+          '';
+
+          locations."~ ..*/.*.php$".extraConfig = ''
+            return 403;
+          '';
+
+          locations."~ ^/index.php(.*)$".extraConfig = ''
+            fastcgi_intercept_errors on;
+            fastcgi_index index.php;
+            include ${config.services.nginx.package}/conf/fastcgi.conf;
+            try_files $uri =404;
+            fastcgi_split_path_info ^(.+\.php)(/.+)$;
+            fastcgi_pass unix:${phpfpmSocketName};
+            fastcgi_param SCRIPT_FILENAME ${pkgs.icingaweb2}/public/index.php;
+          '';
+        };
+      };
+    };
+
+    # /etc/icingaweb2
+    environment.etc = let
+      doModule = name: optionalAttrs (cfg.modules."${name}".enable) (nameValuePair "icingaweb2/enabledModules/${name}" { source = "${pkgs.icingaweb2}/modules/${name}"; });
+    in {}
+      # Module packages
+      // (mapAttrs' (k: v: nameValuePair "icingaweb2/enabledModules/${k}" { source = v; }) cfg.modulePackages)
+      # Built-in modules
+      // doModule "doc"
+      // doModule "migrate"
+      // doModule "setup"
+      // doModule "test"
+      // doModule "translation"
+      # Configs
+      // optionalAttrs (!cfg.generalConfig.mutable) { "icingaweb2/config.ini".text = configIni; }
+      // optionalAttrs (!cfg.mutableResources) { "icingaweb2/resources.ini".text = resourcesIni; }
+      // optionalAttrs (!cfg.mutableAuthConfig) { "icingaweb2/authentication.ini".text = authenticationIni; }
+      // optionalAttrs (!cfg.mutableGroupsConfig) { "icingaweb2/groups.ini".text = groupsIni; }
+      // optionalAttrs (!cfg.mutableRolesConfig) { "icingaweb2/roles.ini".text = rolesIni; };
+
+    # User and group
+    users.groups.icingaweb2 = {};
+    users.users.icingaweb2 = {
+      description = "Icingaweb2 service user";
+      group = "icingaweb2";
+      isSystemUser = true;
+    };
+  };
+}
diff --git a/nixos/modules/services/web-apps/icingaweb2/module-monitoring.nix b/nixos/modules/services/web-apps/icingaweb2/module-monitoring.nix
new file mode 100644
index 00000000000..167e5e38956
--- /dev/null
+++ b/nixos/modules/services/web-apps/icingaweb2/module-monitoring.nix
@@ -0,0 +1,157 @@
+{ config, lib, pkgs, ... }: with lib; let
+  cfg = config.services.icingaweb2.modules.monitoring;
+
+  configIni = ''
+    [security]
+    protected_customvars = "${concatStringsSep "," cfg.generalConfig.protectedVars}"
+  '';
+
+  backendsIni = let
+    formatBool = b: if b then "1" else "0";
+  in concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    type = "ido"
+    resource = "${config.resource}"
+    disabled = "${formatBool config.disabled}"
+  '') cfg.backends);
+
+  transportsIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
+    [${name}]
+    type = "${config.type}"
+    ${optionalString (config.instance != null) ''instance = "${config.instance}"''}
+    ${optionalString (config.type == "local" || config.type == "remote") ''path = "${config.path}"''}
+    ${optionalString (config.type != "local") ''
+      host = "${config.host}"
+      ${optionalString (config.port != null) ''port = "${toString config.port}"''}
+      user${optionalString (config.type == "api") "name"} = "${config.username}"
+    ''}
+    ${optionalString (config.type == "api") ''password = "${config.password}"''}
+    ${optionalString (config.type == "remote") ''resource = "${config.resource}"''}
+  '') cfg.transports);
+
+in {
+  options.services.icingaweb2.modules.monitoring = with types; {
+    enable = mkOption {
+      type = bool;
+      default = true;
+      description = "Whether to enable the icingaweb2 monitoring module.";
+    };
+
+    generalConfig = {
+      mutable = mkOption {
+        type = bool;
+        default = false;
+        description = "Make config.ini of the monitoring module mutable (e.g. via the web interface).";
+      };
+
+      protectedVars = mkOption {
+        type = listOf str;
+        default = [ "*pw*" "*pass*" "community" ];
+        description = "List of string patterns for custom variables which should be excluded from user’s view.";
+      };
+    };
+
+    mutableBackends = mkOption {
+      type = bool;
+      default = false;
+      description = "Make backends.ini of the monitoring module mutable (e.g. via the web interface).";
+    };
+
+    backends = mkOption {
+      default = { "icinga" = { resource = "icinga_ido"; }; };
+      description = "Monitoring backends to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this backend";
+          };
+
+          resource = mkOption {
+            type = str;
+            description = "Name of the IDO resource";
+          };
+
+          disabled = mkOption {
+            type = bool;
+            default = false;
+            description = "Disable this backend";
+          };
+        };
+      }));
+    };
+
+    mutableTransports = mkOption {
+      type = bool;
+      default = true;
+      description = "Make commandtransports.ini of the monitoring module mutable (e.g. via the web interface).";
+    };
+
+    transports = mkOption {
+      default = {};
+      description = "Command transports to define";
+      type = attrsOf (submodule ({ name, ... }: {
+        options = {
+          name = mkOption {
+            visible = false;
+            default = name;
+            type = str;
+            description = "Name of this transport";
+          };
+
+          type = mkOption {
+            type = enum [ "api" "local" "remote" ];
+            default = "api";
+            description = "Type of  this transport";
+          };
+
+          instance = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "Assign a icinga instance to this transport";
+          };
+
+          path = mkOption {
+            type = str;
+            description = "Path to the socket for local or remote transports";
+          };
+
+          host = mkOption {
+            type = str;
+            description = "Host for the api or remote transport";
+          };
+
+          port = mkOption {
+            type = nullOr str;
+            default = null;
+            description = "Port to connect to for the api or remote transport";
+          };
+
+          username = mkOption {
+            type = str;
+            description = "Username for the api or remote transport";
+          };
+
+          password = mkOption {
+            type = str;
+            description = "Password for the api transport";
+          };
+
+          resource = mkOption {
+            type = str;
+            description = "SSH identity resource for the remote transport";
+          };
+        };
+      }));
+    };
+  };
+
+  config = mkIf (config.services.icingaweb2.enable && cfg.enable) {
+    environment.etc = { "icingaweb2/enabledModules/monitoring" = { source = "${pkgs.icingaweb2}/modules/monitoring"; }; }
+      // optionalAttrs (!cfg.generalConfig.mutable) { "icingaweb2/modules/monitoring/config.ini".text = configIni; }
+      // optionalAttrs (!cfg.mutableBackends) { "icingaweb2/modules/monitoring/backends.ini".text = backendsIni; }
+      // optionalAttrs (!cfg.mutableTransports) { "icingaweb2/modules/monitoring/commandtransports.ini".text = transportsIni; };
+  };
+}
diff --git a/nixos/modules/services/web-apps/matomo-doc.xml b/nixos/modules/services/web-apps/matomo-doc.xml
index 510a335edc3..20d2de9f418 100644
--- a/nixos/modules/services/web-apps/matomo-doc.xml
+++ b/nixos/modules/services/web-apps/matomo-doc.xml
@@ -12,15 +12,15 @@
   An automatic setup is not suported by Matomo, so you need to configure Matomo
   itself in the browser-based Matomo setup.
  </para>
+
  <section xml:id="module-services-matomo-database-setup">
   <title>Database Setup</title>
-
   <para>
    You also need to configure a MariaDB or MySQL database and -user for Matomo
    yourself, and enter those credentials in your browser. You can use
    passwordless database authentication via the UNIX_SOCKET authentication
    plugin with the following SQL commands:
-<programlisting>
+   <programlisting>
         # For MariaDB
         INSTALL PLUGIN unix_socket SONAME 'auth_socket';
         CREATE DATABASE matomo;
@@ -32,7 +32,7 @@
         CREATE DATABASE matomo;
         CREATE USER 'matomo'@'localhost' IDENTIFIED WITH auth_socket;
         GRANT ALL PRIVILEGES ON matomo.* TO 'matomo'@'localhost';
-      </programlisting>
+   </programlisting>
    Then fill in <literal>matomo</literal> as database user and database name,
    and leave the password field blank. This authentication works by allowing
    only the <literal>matomo</literal> unix user to authenticate as the
@@ -46,9 +46,30 @@
    database is not on the same host.
   </para>
  </section>
+
+ <section xml:id="module-services-matomo-archive-processing">
+  <title>Archive Processing</title>
+  <para>
+   This module comes with the systemd service <literal>matomo-archive-processing.service</literal>
+   and a timer that automatically triggers archive processing every hour.
+   This means that you can safely
+   <link xlink:href="https://matomo.org/docs/setup-auto-archiving/#disable-browser-triggers-for-matomo-archiving-and-limit-matomo-reports-to-updating-every-hour">
+    disable browser triggers for Matomo archiving
+   </link> at <literal>Administration > System > General Settings</literal>.
+  </para>
+  <para>
+   With automatic archive processing, you can now also enable to
+   <link xlink:href="https://matomo.org/docs/privacy/#step-2-delete-old-visitors-logs">
+    delete old visitor logs
+   </link> at <literal>Administration > System > Privacy</literal>,
+   but make sure that you run <literal>systemctl start matomo-archive-processing.service</literal>
+   at least once without errors if you have already collected data before,
+   so that the reports get archived before the source data gets deleted.
+  </para>
+ </section>
+
  <section xml:id="module-services-matomo-backups">
   <title>Backup</title>
-
   <para>
    You only need to take backups of your MySQL database and the
    <filename>/var/lib/matomo/config/config.ini.php</filename> file. Use a user
@@ -57,9 +78,9 @@
    <link xlink:href="https://matomo.org/faq/how-to-install/faq_138/" />.
   </para>
  </section>
+
  <section xml:id="module-services-matomo-issues">
   <title>Issues</title>
-
   <itemizedlist>
    <listitem>
     <para>
@@ -76,6 +97,7 @@
    </listitem>
   </itemizedlist>
  </section>
+
  <section xml:id="module-services-matomo-other-web-servers">
   <title>Using other Web Servers than nginx</title>
 
diff --git a/nixos/modules/services/web-apps/matomo.nix b/nixos/modules/services/web-apps/matomo.nix
index 9fddf832074..14aca45a342 100644
--- a/nixos/modules/services/web-apps/matomo.nix
+++ b/nixos/modules/services/web-apps/matomo.nix
@@ -23,20 +23,24 @@ in {
   options = {
     services.matomo = {
       # NixOS PR for database setup: https://github.com/NixOS/nixpkgs/pull/6963
-      # matomo issue for automatic matomo setup: https://github.com/matomo-org/matomo/issues/10257
-      # TODO: find a nice way to do this when more NixOS MySQL and / or matomo automatic setup stuff is implemented.
+      # Matomo issue for automatic Matomo setup: https://github.com/matomo-org/matomo/issues/10257
+      # TODO: find a nice way to do this when more NixOS MySQL and / or Matomo automatic setup stuff is implemented.
       enable = mkOption {
         type = types.bool;
         default = false;
         description = ''
-          Enable matomo web analytics with php-fpm backend.
+          Enable Matomo web analytics with php-fpm backend.
           Either the nginx option or the webServerUser option is mandatory.
         '';
       };
 
       package = mkOption {
         type = types.package;
-        description = "Matomo package to use";
+        description = ''
+          Matomo package for the service to use.
+          This can be used to point to newer releases from nixos-unstable,
+          as they don't get backported if they are not security-relevant.
+        '';
         default = pkgs.matomo;
         defaultText = "pkgs.matomo";
       };
@@ -45,12 +49,25 @@ in {
         type = types.nullOr types.str;
         default = null;
         example = "lighttpd";
-        # TODO: piwik.php might get renamed to matomo.php in future releases
         description = ''
-          Name of the web server user that forwards requests to the ${phpSocket} fastcgi socket for matomo if the nginx
+          Name of the web server user that forwards requests to the ${phpSocket} fastcgi socket for Matomo if the nginx
           option is not used. Either this option or the nginx option is mandatory.
           If you want to use another webserver than nginx, you need to set this to that server's user
-          and pass fastcgi requests to `index.php` and `piwik.php` to this socket.
+          and pass fastcgi requests to `index.php`, `matomo.php` and `piwik.php` (legacy name) to this socket.
+        '';
+      };
+
+      periodicArchiveProcessing = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Enable periodic archive processing, which generates aggregated reports from the visits.
+
+          This means that you can safely disable browser triggers for Matomo archiving,
+          and safely enable to delete old visitor logs.
+          Before deleting visitor logs,
+          make sure though that you run <literal>systemctl start matomo-archive-processing.service</literal>
+          at least once without errors if you have already collected data before.
         '';
       };
 
@@ -69,7 +86,7 @@ in {
           catch_workers_output = yes
         '';
         description = ''
-          Settings for phpfpm's process manager. You might need to change this depending on the load for matomo.
+          Settings for phpfpm's process manager. You might need to change this depending on the load for Matomo.
         '';
       };
 
@@ -79,7 +96,7 @@ in {
             (import ../web-servers/nginx/vhost-options.nix { inherit config lib; })
             {
               # enable encryption by default,
-              # as sensitive login and matomo data should not be transmitted in clear text.
+              # as sensitive login and Matomo data should not be transmitted in clear text.
               options.forceSSL.default = true;
               options.enableACME.default = true;
             }
@@ -94,7 +111,7 @@ in {
           enableACME = false;
         };
         description = ''
-            With this option, you can customize an nginx virtualHost which already has sensible defaults for matomo.
+            With this option, you can customize an nginx virtualHost which already has sensible defaults for Matomo.
             Either this option or the webServerUser option is mandatory.
             Set this to {} to just enable the virtualHost if you don't need any customization.
             If enabled, then by default, the <option>serverName</option> is
@@ -124,29 +141,30 @@ in {
     };
     users.groups.${user} = {};
 
-    systemd.services.matomo_setup_update = {
-      # everything needs to set up and up to date before matomo php files are executed
+    systemd.services.matomo-setup-update = {
+      # everything needs to set up and up to date before Matomo php files are executed
       requiredBy = [ "${phpExecutionUnit}.service" ];
       before = [ "${phpExecutionUnit}.service" ];
       # the update part of the script can only work if the database is already up and running
       requires = [ databaseService ];
       after = [ databaseService ];
       path = [ cfg.package ];
+      environment.PIWIK_USER_PATH = dataDir;
       serviceConfig = {
         Type = "oneshot";
         User = user;
         # hide especially config.ini.php from other
         UMask = "0007";
         # TODO: might get renamed to MATOMO_USER_PATH in future versions
-        Environment = "PIWIK_USER_PATH=${dataDir}";
         # chown + chmod in preStart needs root
         PermissionsStartOnly = true;
       };
+
       # correct ownership and permissions in case they're not correct anymore,
       # e.g. after restoring from backup or moving from another system.
       # Note that ${dataDir}/config/config.ini.php might contain the MySQL password.
       preStart = ''
-        # migrate data from piwik to matomo folder
+        # migrate data from piwik to Matomo folder
         if [ -d ${deprecatedDataDir} ]; then
           echo "Migrating from ${deprecatedDataDir} to ${dataDir}"
           mv -T ${deprecatedDataDir} ${dataDir}
@@ -155,7 +173,7 @@ in {
         chmod -R ug+rwX,o-rwx ${dataDir}
         '';
       script = ''
-            # Use User-Private Group scheme to protect matomo data, but allow administration / backup via matomo group
+            # Use User-Private Group scheme to protect Matomo data, but allow administration / backup via 'matomo' group
             # Copy config folder
             chmod g+s "${dataDir}"
             cp -r "${cfg.package}/config" "${dataDir}/"
@@ -169,8 +187,39 @@ in {
       '';
     };
 
+    # If this is run regularly via the timer,
+    # 'Browser trigger archiving' can be disabled in Matomo UI > Settings > General Settings.
+    systemd.services.matomo-archive-processing = {
+      description = "Archive Matomo reports";
+      # the archiving can only work if the database is already up and running
+      requires = [ databaseService ];
+      after = [ databaseService ];
+
+      # TODO: might get renamed to MATOMO_USER_PATH in future versions
+      environment.PIWIK_USER_PATH = dataDir;
+      serviceConfig = {
+        Type = "oneshot";
+        User = user;
+        UMask = "0007";
+        CPUSchedulingPolicy = "idle";
+        IOSchedulingClass = "idle";
+        ExecStart = "${cfg.package}/bin/matomo-console core:archive --url=https://${user}.${fqdn}";
+      };
+    };
+
+    systemd.timers.matomo-archive-processing = mkIf cfg.periodicArchiveProcessing {
+      description = "Automatically archive Matomo reports every hour";
+
+      wantedBy = [ "timers.target" ];
+      timerConfig = {
+        OnCalendar = "hourly";
+        Persistent = "yes";
+        AccuracySec = "10m";
+      };
+    };
+
     systemd.services.${phpExecutionUnit} = {
-      # stop phpfpm on package upgrade, do database upgrade via matomo_setup_update, and then restart
+      # stop phpfpm on package upgrade, do database upgrade via matomo-setup-update, and then restart
       restartTriggers = [ cfg.package ];
       # stop config.ini.php from getting written with read permission for others
       serviceConfig.UMask = "0007";
@@ -200,13 +249,13 @@ in {
       # https://fralef.me/piwik-hardening-with-nginx-and-php-fpm.html
       # https://github.com/perusio/piwik-nginx
       "${user}.${fqdn}" = mkMerge [ cfg.nginx {
-        # don't allow to override the root easily, as it will almost certainly break matomo.
+        # don't allow to override the root easily, as it will almost certainly break Matomo.
         # disadvantage: not shown as default in docs.
         root = mkForce "${cfg.package}/share";
 
         # define locations here instead of as the submodule option's default
         # so that they can easily be extended with additional locations if required
-        # without needing to redefine the matomo ones.
+        # without needing to redefine the Matomo ones.
         # disadvantage: not shown as default in docs.
         locations."/" = {
           index = "index.php";
@@ -215,8 +264,11 @@ in {
         locations."= /index.php".extraConfig = ''
           fastcgi_pass unix:${phpSocket};
         '';
-        # TODO: might get renamed to matomo.php in future versions
-        # allow piwik.php for tracking
+        # allow matomo.php for tracking
+        locations."= /matomo.php".extraConfig = ''
+          fastcgi_pass unix:${phpSocket};
+        '';
+        # allow piwik.php for tracking (deprecated name)
         locations."= /piwik.php".extraConfig = ''
           fastcgi_pass unix:${phpSocket};
         '';
@@ -237,8 +289,11 @@ in {
         locations."= /robots.txt".extraConfig = ''
           return 200 "User-agent: *\nDisallow: /\n";
         '';
-        # TODO: might get renamed to matomo.js in future versions
-        # let browsers cache piwik.js
+        # let browsers cache matomo.js
+        locations."= /matomo.js".extraConfig = ''
+          expires 1M;
+        '';
+        # let browsers cache piwik.js (deprecated name)
         locations."= /piwik.js".extraConfig = ''
           expires 1M;
         '';
diff --git a/nixos/modules/services/web-apps/tt-rss.nix b/nixos/modules/services/web-apps/tt-rss.nix
index e043ce4b581..f7a3daa5fdd 100644
--- a/nixos/modules/services/web-apps/tt-rss.nix
+++ b/nixos/modules/services/web-apps/tt-rss.nix
@@ -40,7 +40,7 @@ let
         else if (cfg.database.passwordFile != null) then
           "file_get_contents('${cfg.database.passwordFile}')"
         else
-          ""
+          "''"
       });
       define('DB_PORT', '${toString dbPort}');
 
@@ -53,7 +53,17 @@ let
       define('SINGLE_USER_MODE', ${boolToString cfg.singleUserMode});
 
       define('SIMPLE_UPDATE_MODE', ${boolToString cfg.simpleUpdateMode});
-      define('CHECK_FOR_UPDATES', ${boolToString cfg.checkForUpdates});
+
+      // Never check for updates - the running version of the code should be
+      // controlled entirely by the version of TT-RSS active in the current Nix
+      // profile. If TT-RSS updates itself to a version requiring a database
+      // schema upgrade, and then the SystemD tt-rss.service is restarted, the
+      // old code copied from the Nix store will overwrite the updated version,
+      // causing the code to detect the need for a schema "upgrade" (since the
+      // schema version in the database is different than in the code), but the
+      // update schema operation in TT-RSS will do nothing because the schema
+      // version in the database is newer than that in the code.
+      define('CHECK_FOR_UPDATES', false);
 
       define('FORCE_ARTICLE_PURGE', ${toString cfg.forceArticlePurge});
       define('SESSION_COOKIE_LIFETIME', ${toString cfg.sessionCookieLifetime});
@@ -414,14 +424,6 @@ let
         '';
       };
 
-      checkForUpdates = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Check for updates automatically if running Git version
-        '';
-      };
-
       enableGZipOutput = mkOption {
         type = types.bool;
         default = true;
@@ -489,6 +491,14 @@ let
     };
   };
 
+  imports = [
+    (mkRemovedOptionModule ["services" "tt-rss" "checkForUpdates"] ''
+      This option was removed because setting this to true will cause TT-RSS
+      to be unable to start if an automatic update of the code in
+      services.tt-rss.root leads to a database schema upgrade that is not
+      supported by the code active in the Nix store.
+    '')
+  ];
 
   ###### implementation
 
@@ -552,7 +562,7 @@ let
           callSql = e:
               if cfg.database.type == "pgsql" then ''
                   ${optionalString (cfg.database.password != null) "PGPASSWORD=${cfg.database.password}"} \
-                  ${optionalString (cfg.database.passwordFile != null) "PGPASSWORD=$(cat ${cfg.database.passwordFile}"}) \
+                  ${optionalString (cfg.database.passwordFile != null) "PGPASSWORD=$(cat ${cfg.database.passwordFile})"} \
                   ${pkgs.sudo}/bin/sudo -u ${cfg.user} ${config.services.postgresql.package}/bin/psql \
                     -U ${cfg.database.user} \
                     ${optionalString (cfg.database.host != null) "-h ${cfg.database.host} --port ${toString dbPort}"} \
diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix
index bb962334786..3fd19d425c7 100644
--- a/nixos/modules/services/web-servers/apache-httpd/default.nix
+++ b/nixos/modules/services/web-servers/apache-httpd/default.nix
@@ -376,6 +376,8 @@ let
     Include ${httpd}/conf/extra/httpd-multilang-errordoc.conf
     Include ${httpd}/conf/extra/httpd-languages.conf
 
+    TraceEnable off
+
     ${if enableSSL then sslConf else ""}
 
     # Fascist default - deny access to everything.
@@ -495,8 +497,8 @@ in
         default = false;
         description = ''
           If enabled, each virtual host gets its own
-          <filename>access_log</filename> and
-          <filename>error_log</filename>, namely suffixed by the
+          <filename>access.log</filename> and
+          <filename>error.log</filename>, namely suffixed by the
           <option>hostName</option> of the virtual host.
         '';
       };
@@ -639,8 +641,8 @@ in
 
       sslProtocols = mkOption {
         type = types.str;
-        default = "All -SSLv2 -SSLv3";
-        example = "All -SSLv2 -SSLv3 -TLSv1";
+        default = "All -SSLv2 -SSLv3 -TLSv1";
+        example = "All -SSLv2 -SSLv3";
         description = "Allowed SSL/TLS protocol versions.";
       };
     }
@@ -684,6 +686,9 @@ in
       ''
         ; Needed for PHP's mail() function.
         sendmail_path = sendmail -t -i
+
+        ; Don't advertise PHP
+        expose_php = off
       '' + optionalString (!isNull config.time.timeZone) ''
 
         ; Apparently PHP doesn't use $TZ.
diff --git a/nixos/modules/services/web-servers/phpfpm/default.nix b/nixos/modules/services/web-servers/phpfpm/default.nix
index 152c89a2cae..97c730061bd 100644
--- a/nixos/modules/services/web-servers/phpfpm/default.nix
+++ b/nixos/modules/services/web-servers/phpfpm/default.nix
@@ -14,11 +14,13 @@ let
 
   mapPoolConfig = n: p: {
     phpPackage = cfg.phpPackage;
+    phpOptions = cfg.phpOptions;
     config = p;
   };
 
   mapPool = n: p: {
     phpPackage = p.phpPackage;
+    phpOptions = p.phpOptions;
     config = ''
       listen = ${p.listen}
       ${p.extraConfig}
@@ -35,8 +37,8 @@ let
     ${conf}
   '';
 
-  phpIni = pkgs.runCommand "php.ini" {
-    inherit (cfg) phpPackage phpOptions;
+  phpIni = pool: pkgs.runCommand "php.ini" {
+    inherit (pool) phpPackage phpOptions;
     nixDefaults = ''
       sendmail_path = "/run/wrappers/bin/sendmail -t -i"
     '';
@@ -156,6 +158,7 @@ in {
         '';
         serviceConfig = let
           cfgFile = fpmCfgFile pool poolConfig.config;
+          iniFile = phpIni poolConfig;
         in {
           Slice = "phpfpm.slice";
           PrivateDevices = true;
@@ -164,7 +167,7 @@ in {
           # XXX: We need AF_NETLINK to make the sendmail SUID binary from postfix work
           RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK";
           Type = "notify";
-          ExecStart = "${poolConfig.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${phpIni}";
+          ExecStart = "${poolConfig.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${iniFile}";
           ExecReload = "${pkgs.coreutils}/bin/kill -USR2 $MAINPID";
         };
       }
diff --git a/nixos/modules/services/web-servers/phpfpm/pool-options.nix b/nixos/modules/services/web-servers/phpfpm/pool-options.nix
index 40c83cddb95..d9ad7eff71f 100644
--- a/nixos/modules/services/web-servers/phpfpm/pool-options.nix
+++ b/nixos/modules/services/web-servers/phpfpm/pool-options.nix
@@ -25,6 +25,15 @@ with lib; {
       '';
     };
 
+    phpOptions = mkOption {
+      type = types.lines;
+      default = fpmCfg.phpOptions;
+      defaultText = "config.services.phpfpm.phpOptions";
+      description = ''
+        "Options appended to the PHP configuration file <filename>php.ini</filename> used for this PHP-FPM pool."
+      '';
+    };
+
     extraConfig = mkOption {
       type = types.lines;
       example = ''
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 7544ba4638a..31ff60019ae 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -151,6 +151,7 @@ in {
     services.colord.enable = mkDefault true;
     services.packagekit.enable = mkDefault true;
     hardware.bluetooth.enable = mkDefault true;
+    services.hardware.bolt.enable = mkDefault true;
     services.xserver.libinput.enable = mkDefault true; # for controlling touchpad settings via gnome control center
     services.udev.packages = [ pkgs.gnome3.gnome-settings-daemon ];
     systemd.packages = [ pkgs.gnome3.vino ];
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index 58812bf33d9..9fdef0251d7 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -650,6 +650,18 @@ in
       '';
     };
 
+    services.logind.lidSwitchExternalPower = mkOption {
+      default = config.services.logind.lidSwitch;
+      example = "ignore";
+      type = logindHandlerType;
+
+      description = ''
+        Specifies what to do when the laptop lid is closed and the system is
+        on external power. By default use the same action as specified in
+        services.logind.lidSwitch.
+      '';
+    };
+
     systemd.user.extraConfig = mkOption {
       default = "";
       type = types.lines;
@@ -797,6 +809,7 @@ in
         KillUserProcesses=${if config.services.logind.killUserProcesses then "yes" else "no"}
         HandleLidSwitch=${config.services.logind.lidSwitch}
         HandleLidSwitchDocked=${config.services.logind.lidSwitchDocked}
+        HandleLidSwitchExternalPower=${config.services.logind.lidSwitchExternalPower}
         ${config.services.logind.extraConfig}
       '';
 
diff --git a/nixos/modules/virtualisation/vmware-guest.nix b/nixos/modules/virtualisation/vmware-guest.nix
index 15c78f14c52..d18778f8158 100644
--- a/nixos/modules/virtualisation/vmware-guest.nix
+++ b/nixos/modules/virtualisation/vmware-guest.nix
@@ -3,19 +3,17 @@
 with lib;
 
 let
-  cfg = config.services.vmwareGuest;
+  cfg = config.virtualisation.vmware.guest;
   open-vm-tools = if cfg.headless then pkgs.open-vm-tools-headless else pkgs.open-vm-tools;
   xf86inputvmmouse = pkgs.xorg.xf86inputvmmouse;
 in
 {
-  options = {
-    services.vmwareGuest = {
-      enable = mkEnableOption "VMWare Guest Support";
-      headless = mkOption {
-        type = types.bool;
-        default = false;
-        description = "Whether to disable X11-related features.";
-      };
+  options.virtualisation.vmware.guest = {
+    enable = mkEnableOption "VMWare Guest Support";
+    headless = mkOption {
+      type = types.bool;
+      default = false;
+      description = "Whether to disable X11-related features.";
     };
   };
 
@@ -25,6 +23,8 @@ in
       message = "VMWare guest is not currently supported on ${pkgs.stdenv.hostPlatform.system}";
     } ];
 
+    boot.initrd.kernelModules = [ "vmw_pvscsi" ];
+
     environment.systemPackages = [ open-vm-tools ];
 
     systemd.services.vmware =
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index fe4ca5772c6..3d8fea95a50 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -73,6 +73,7 @@ in
   ferm = handleTest ./ferm.nix {};
   firefox = handleTest ./firefox.nix {};
   firewall = handleTest ./firewall.nix {};
+  flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {};
   flatpak = handleTest ./flatpak.nix {};
   fsck = handleTest ./fsck.nix {};
   fwupd = handleTestOn ["x86_64-linux"] ./fwupd.nix {}; # libsmbios is unsupported on aarch64
diff --git a/nixos/tests/flannel.nix b/nixos/tests/flannel.nix
index fb66fe28209..0b261a68477 100644
--- a/nixos/tests/flannel.nix
+++ b/nixos/tests/flannel.nix
@@ -21,8 +21,9 @@ import ./make-test.nix ({ pkgs, ...} : rec {
       services = {
         etcd = {
           enable = true;
-          listenClientUrls = ["http://etcd:2379"];
-          listenPeerUrls = ["http://etcd:2380"];
+          listenClientUrls = ["http://0.0.0.0:2379"]; # requires ip-address for binding
+          listenPeerUrls = ["http://0.0.0.0:2380"]; # requires ip-address for binding
+          advertiseClientUrls = ["http://etcd:2379"];
           initialAdvertisePeerUrls = ["http://etcd:2379"];
           initialCluster = ["etcd=http://etcd:2379"];
         };
diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix
index 9d77be13175..ec1a75e74c4 100644
--- a/nixos/tests/kubernetes/base.nix
+++ b/nixos/tests/kubernetes/base.nix
@@ -10,7 +10,6 @@ let
   mkKubernetesBaseTest =
     { name, domain ? "my.zyx", test, machines
     , pkgs ? import <nixpkgs> { inherit system; }
-    , certs ? import ./certs.nix { inherit pkgs; externalDomain = domain; kubelets = attrNames machines; }
     , extraConfiguration ? null }:
     let
       masterName = head (filter (machineName: any (role: role == "master") machines.${machineName}.roles) (attrNames machines));
@@ -20,6 +19,10 @@ let
         ${master.ip}  api.${domain}
         ${concatMapStringsSep "\n" (machineName: "${machines.${machineName}.ip}  ${machineName}.${domain}") (attrNames machines)}
       '';
+      kubectl = with pkgs; runCommand "wrap-kubectl" { buildInputs = [ makeWrapper ]; } ''
+        mkdir -p $out/bin
+        makeWrapper ${pkgs.kubernetes}/bin/kubectl $out/bin/kubectl --set KUBECONFIG "/etc/kubernetes/cluster-admin.kubeconfig"
+      '';
     in makeTest {
       inherit name;
 
@@ -27,6 +30,7 @@ let
         { config, pkgs, lib, nodes, ... }:
           mkMerge [
             {
+              boot.postBootCommands = "rm -fr /var/lib/kubernetes/secrets /tmp/shared/*";
               virtualisation.memorySize = mkDefault 1536;
               virtualisation.diskSize = mkDefault 4096;
               networking = {
@@ -45,34 +49,25 @@ let
                 };
               };
               programs.bash.enableCompletion = true;
-              environment.variables = {
-                ETCDCTL_CERT_FILE = "${certs.worker}/etcd-client.pem";
-                ETCDCTL_KEY_FILE = "${certs.worker}/etcd-client-key.pem";
-                ETCDCTL_CA_FILE = "${certs.worker}/ca.pem";
-                ETCDCTL_PEERS = "https://etcd.${domain}:2379";
-              };
+              environment.systemPackages = [ kubectl ];
               services.flannel.iface = "eth1";
-              services.kubernetes.apiserver.advertiseAddress = master.ip;
+              services.kubernetes = {
+                addons.dashboard.enable = true;
+
+                easyCerts = true;
+                inherit (machine) roles;
+                apiserver = {
+                  securePort = 443;
+                  advertiseAddress = master.ip;
+                };
+                masterAddress = "${masterName}.${config.networking.domain}";
+              };
             }
             (optionalAttrs (any (role: role == "master") machine.roles) {
               networking.firewall.allowedTCPPorts = [
-                2379 2380  # etcd
                 443 # kubernetes apiserver
               ];
-              services.etcd = {
-                enable = true;
-                certFile = "${certs.master}/etcd.pem";
-                keyFile = "${certs.master}/etcd-key.pem";
-                trustedCaFile = "${certs.master}/ca.pem";
-                peerClientCertAuth = true;
-                listenClientUrls = ["https://0.0.0.0:2379"];
-                listenPeerUrls = ["https://0.0.0.0:2380"];
-                advertiseClientUrls = ["https://etcd.${config.networking.domain}:2379"];
-                initialCluster = ["${masterName}=https://etcd.${config.networking.domain}:2380"];
-                initialAdvertisePeerUrls = ["https://etcd.${config.networking.domain}:2380"];
-              };
             })
-            (import ./kubernetes-common.nix { inherit (machine) roles; inherit pkgs config certs; })
             (optionalAttrs (machine ? "extraConfiguration") (machine.extraConfiguration { inherit config pkgs lib nodes; }))
             (optionalAttrs (extraConfiguration != null) (extraConfiguration { inherit config pkgs lib nodes; }))
           ]
diff --git a/nixos/tests/kubernetes/certs.nix b/nixos/tests/kubernetes/certs.nix
deleted file mode 100644
index 85e92f6330c..00000000000
--- a/nixos/tests/kubernetes/certs.nix
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  pkgs ? import <nixpkgs> {},
-  externalDomain ? "myawesomecluster.cluster.yourdomain.net",
-  serviceClusterIp ? "10.0.0.1",
-  kubelets,
-  ...
-}:
-let
-   runWithCFSSL = name: cmd:
-     let secrets = pkgs.runCommand "${name}-cfss.json" {
-         buildInputs = [ pkgs.cfssl pkgs.jq ];
-         outputs = [ "out" "cert" "key" "csr" ];
-       }
-       ''
-         (
-           echo "${cmd}"
-           cfssl ${cmd} > tmp
-           cat tmp | jq -r .key > $key
-           cat tmp | jq -r .cert > $cert
-           cat tmp | jq -r .csr > $csr
-
-           touch $out
-         ) 2>&1 | fold -w 80 -s
-       '';
-     in {
-       key = secrets.key;
-       cert = secrets.cert;
-       csr = secrets.csr;
-     };
-
-   writeCFSSL = content:
-     pkgs.runCommand content.name {
-      buildInputs = [ pkgs.cfssl pkgs.jq ];
-     } ''
-       mkdir -p $out
-       cd $out
-
-       json=${pkgs.lib.escapeShellArg (builtins.toJSON content)}
-
-       # for a given $field in the $json, treat the associated value as a
-       # file path and substitute the contents thereof into the $json
-       # object.
-       expandFileField() {
-         local field=$1
-         if jq -e --arg field "$field" 'has($field)'; then
-           local path="$(echo "$json" | jq -r ".$field")"
-           json="$(echo "$json" | jq --arg val "$(cat "$path")" ".$field = \$val")"
-         fi
-       }
-
-       expandFileField key
-       expandFileField ca
-       expandFileField cert
-
-       echo "$json" | cfssljson -bare ${content.name}
-     '';
-
-  noCSR = content: pkgs.lib.filterAttrs (n: v: n != "csr") content;
-  noKey = content: pkgs.lib.filterAttrs (n: v: n != "key") content;
-
-  writeFile = content:
-    if pkgs.lib.isDerivation content
-    then content
-    else pkgs.writeText "content" (builtins.toJSON content);
-
-  createServingCertKey = { ca, cn, hosts? [], size ? 2048, name ? cn }:
-    noCSR (
-      (runWithCFSSL name "gencert -ca=${writeFile ca.cert} -ca-key=${writeFile ca.key} -profile=server -config=${writeFile ca.config} ${writeFile {
-        CN = cn;
-        hosts = hosts;
-        key = { algo = "rsa"; inherit size; };
-      }}") // { inherit name; }
-    );
-
-  createClientCertKey = { ca, cn, groups ? [], size ? 2048, name ? cn }:
-    noCSR (
-      (runWithCFSSL name "gencert -ca=${writeFile ca.cert} -ca-key=${writeFile ca.key} -profile=client -config=${writeFile ca.config} ${writeFile {
-        CN = cn;
-        names = map (group: {O = group;}) groups;
-        hosts = [""];
-        key = { algo = "rsa"; inherit size; };
-      }}") // { inherit name; }
-    );
-
-  createSigningCertKey = { C ? "xx", ST ? "x", L ? "x", O ? "x", OU ? "x", CN ? "ca", emailAddress ? "x", expiry ? "43800h", size ? 2048, name ? CN }:
-    (noCSR (runWithCFSSL CN "genkey -initca ${writeFile {
-      key = { algo = "rsa"; inherit size; };
-      names = [{ inherit C ST L O OU CN emailAddress; }];
-    }}")) // {
-      inherit name;
-      config.signing = {
-        default.expiry = expiry;
-        profiles = {
-          server = {
-            inherit expiry;
-            usages = [
-              "signing"
-              "key encipherment"
-              "server auth"
-            ];
-          };
-          client = {
-            inherit expiry;
-            usages = [
-              "signing"
-              "key encipherment"
-              "client auth"
-            ];
-          };
-          peer = {
-            inherit expiry;
-            usages = [
-              "signing"
-              "key encipherment"
-              "server auth"
-              "client auth"
-            ];
-          };
-        };
-      };
-    };
-
-  ca = createSigningCertKey {};
-
-  kube-apiserver = createServingCertKey {
-    inherit ca;
-    cn = "kube-apiserver";
-    hosts = ["kubernetes.default" "kubernetes.default.svc" "localhost" "api.${externalDomain}" serviceClusterIp];
-  };
-
-  kubelet = createServingCertKey {
-    inherit ca;
-    cn = "kubelet";
-    hosts = ["*.${externalDomain}"];
-  };
-
-  service-accounts = createServingCertKey {
-    inherit ca;
-    cn = "kube-service-accounts";
-  };
-
-  etcd = createServingCertKey {
-    inherit ca;
-    cn = "etcd";
-    hosts = ["etcd.${externalDomain}"];
-  };
-
-  etcd-client = createClientCertKey {
-    inherit ca;
-    cn = "etcd-client";
-  };
-
-  kubelet-client = createClientCertKey {
-    inherit ca;
-    cn = "kubelet-client";
-    groups = ["system:masters"];
-  };
-
-  apiserver-client = {
-    kubelet = hostname: createClientCertKey {
-      inherit ca;
-      name = "apiserver-client-kubelet-${hostname}";
-      cn = "system:node:${hostname}.${externalDomain}";
-      groups = ["system:nodes"];
-    };
-
-    kube-proxy = createClientCertKey {
-      inherit ca;
-      name = "apiserver-client-kube-proxy";
-      cn = "system:kube-proxy";
-      groups = ["system:kube-proxy" "system:nodes"];
-    };
-
-    kube-controller-manager = createClientCertKey {
-      inherit ca;
-      name = "apiserver-client-kube-controller-manager";
-      cn = "system:kube-controller-manager";
-      groups = ["system:masters"];
-    };
-
-    kube-scheduler = createClientCertKey {
-      inherit ca;
-      name = "apiserver-client-kube-scheduler";
-      cn = "system:kube-scheduler";
-      groups = ["system:kube-scheduler"];
-    };
-
-    admin = createClientCertKey {
-      inherit ca;
-      cn = "admin";
-      groups = ["system:masters"];
-    };
-  };
-in {
-  master = pkgs.buildEnv {
-    name = "master-keys";
-    paths = [
-      (writeCFSSL (noKey ca))
-      (writeCFSSL kube-apiserver)
-      (writeCFSSL kubelet-client)
-      (writeCFSSL apiserver-client.kube-controller-manager)
-      (writeCFSSL apiserver-client.kube-scheduler)
-      (writeCFSSL service-accounts)
-      (writeCFSSL etcd)
-    ];
-  };
-
-  worker = pkgs.buildEnv {
-    name = "worker-keys";
-    paths = [
-      (writeCFSSL (noKey ca))
-      (writeCFSSL kubelet)
-      (writeCFSSL apiserver-client.kube-proxy)
-      (writeCFSSL etcd-client)
-    ] ++ map (hostname: writeCFSSL (apiserver-client.kubelet hostname)) kubelets;
-  };
-
-  admin = writeCFSSL apiserver-client.admin;
-}
diff --git a/nixos/tests/kubernetes/dns.nix b/nixos/tests/kubernetes/dns.nix
index f25ea5b9ed8..46bcb01a526 100644
--- a/nixos/tests/kubernetes/dns.nix
+++ b/nixos/tests/kubernetes/dns.nix
@@ -71,17 +71,17 @@ let
 
   base = {
     name = "dns";
-    inherit domain certs extraConfiguration;
+    inherit domain extraConfiguration;
   };
 
   singleNodeTest = {
     test = ''
       # prepare machine1 for test
       $machine1->waitUntilSucceeds("kubectl get node machine1.${domain} | grep -w Ready");
-      $machine1->execute("docker load < ${redisImage}");
+      $machine1->waitUntilSucceeds("docker load < ${redisImage}");
       $machine1->waitUntilSucceeds("kubectl create -f ${redisPod}");
       $machine1->waitUntilSucceeds("kubectl create -f ${redisService}");
-      $machine1->execute("docker load < ${probeImage}");
+      $machine1->waitUntilSucceeds("docker load < ${probeImage}");
       $machine1->waitUntilSucceeds("kubectl create -f ${probePod}");
 
       # check if pods are running
@@ -99,13 +99,16 @@ let
 
   multiNodeTest = {
     test = ''
+      # Node token exchange
+      $machine1->waitUntilSucceeds("cp -f /var/lib/cfssl/apitoken.secret /tmp/shared/apitoken.secret");
+      $machine2->waitUntilSucceeds("cat /tmp/shared/apitoken.secret | nixos-kubernetes-node-join");
+
       # prepare machines for test
-      $machine1->waitUntilSucceeds("kubectl get node machine1.${domain} | grep -w Ready");
       $machine1->waitUntilSucceeds("kubectl get node machine2.${domain} | grep -w Ready");
-      $machine2->execute("docker load < ${redisImage}");
+      $machine2->waitUntilSucceeds("docker load < ${redisImage}");
       $machine1->waitUntilSucceeds("kubectl create -f ${redisPod}");
       $machine1->waitUntilSucceeds("kubectl create -f ${redisService}");
-      $machine2->execute("docker load < ${probeImage}");
+      $machine2->waitUntilSucceeds("docker load < ${probeImage}");
       $machine1->waitUntilSucceeds("kubectl create -f ${probePod}");
 
       # check if pods are running
diff --git a/nixos/tests/kubernetes/kubernetes-common.nix b/nixos/tests/kubernetes/kubernetes-common.nix
deleted file mode 100644
index 87c65b88365..00000000000
--- a/nixos/tests/kubernetes/kubernetes-common.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ roles, config, pkgs, certs }:
-with pkgs.lib;
-let
-  base = {
-    inherit roles;
-    flannel.enable = true;
-    addons.dashboard.enable = true;
-
-    caFile = "${certs.master}/ca.pem";
-    apiserver = {
-      tlsCertFile = "${certs.master}/kube-apiserver.pem";
-      tlsKeyFile = "${certs.master}/kube-apiserver-key.pem";
-      kubeletClientCertFile = "${certs.master}/kubelet-client.pem";
-      kubeletClientKeyFile = "${certs.master}/kubelet-client-key.pem";
-      serviceAccountKeyFile = "${certs.master}/kube-service-accounts.pem";
-    };
-    etcd = {
-      servers = ["https://etcd.${config.networking.domain}:2379"];
-      certFile = "${certs.worker}/etcd-client.pem";
-      keyFile = "${certs.worker}/etcd-client-key.pem";
-    };
-    kubeconfig = {
-      server = "https://api.${config.networking.domain}";
-    };
-    kubelet = {
-      tlsCertFile = "${certs.worker}/kubelet.pem";
-      tlsKeyFile = "${certs.worker}/kubelet-key.pem";
-      hostname = "${config.networking.hostName}.${config.networking.domain}";
-      kubeconfig = {
-        certFile = "${certs.worker}/apiserver-client-kubelet-${config.networking.hostName}.pem";
-        keyFile = "${certs.worker}/apiserver-client-kubelet-${config.networking.hostName}-key.pem";
-      };
-    };
-    controllerManager = {
-      serviceAccountKeyFile = "${certs.master}/kube-service-accounts-key.pem";
-      kubeconfig = {
-        certFile = "${certs.master}/apiserver-client-kube-controller-manager.pem";
-        keyFile = "${certs.master}/apiserver-client-kube-controller-manager-key.pem";
-      };
-    };
-    scheduler = {
-      kubeconfig = {
-        certFile = "${certs.master}/apiserver-client-kube-scheduler.pem";
-        keyFile = "${certs.master}/apiserver-client-kube-scheduler-key.pem";
-      };
-    };
-    proxy = {
-      kubeconfig = {
-        certFile = "${certs.worker}/apiserver-client-kube-proxy.pem";
-        keyFile = "${certs.worker}//apiserver-client-kube-proxy-key.pem";
-      };
-    };
-  };
-
-in {
-  services.kubernetes = base;
-}
diff --git a/nixos/tests/kubernetes/rbac.nix b/nixos/tests/kubernetes/rbac.nix
index 226808c4b26..3ce7adcd0d7 100644
--- a/nixos/tests/kubernetes/rbac.nix
+++ b/nixos/tests/kubernetes/rbac.nix
@@ -96,7 +96,7 @@ let
     test = ''
       $machine1->waitUntilSucceeds("kubectl get node machine1.my.zyx | grep -w Ready");
 
-      $machine1->execute("docker load < ${kubectlImage}");
+      $machine1->waitUntilSucceeds("docker load < ${kubectlImage}");
 
       $machine1->waitUntilSucceeds("kubectl apply -f ${roServiceAccount}");
       $machine1->waitUntilSucceeds("kubectl apply -f ${roRole}");
@@ -105,7 +105,7 @@ let
 
       $machine1->waitUntilSucceeds("kubectl get pod kubectl | grep Running");
 
-      $machine1->succeed("kubectl exec -ti kubectl -- kubectl get pods");
+      $machine1->waitUntilSucceeds("kubectl exec -ti kubectl -- kubectl get pods");
       $machine1->fail("kubectl exec -ti kubectl -- kubectl create -f /kubectl-pod-2.json");
       $machine1->fail("kubectl exec -ti kubectl -- kubectl delete pods -l name=kubectl");
     '';
@@ -113,10 +113,13 @@ let
 
   multinode = base // {
     test = ''
-      $machine1->waitUntilSucceeds("kubectl get node machine1.my.zyx | grep -w Ready");
+      # Node token exchange
+      $machine1->waitUntilSucceeds("cp -f /var/lib/cfssl/apitoken.secret /tmp/shared/apitoken.secret");
+      $machine2->waitUntilSucceeds("cat /tmp/shared/apitoken.secret | nixos-kubernetes-node-join");
+
       $machine1->waitUntilSucceeds("kubectl get node machine2.my.zyx | grep -w Ready");
 
-      $machine2->execute("docker load < ${kubectlImage}");
+      $machine2->waitUntilSucceeds("docker load < ${kubectlImage}");
 
       $machine1->waitUntilSucceeds("kubectl apply -f ${roServiceAccount}");
       $machine1->waitUntilSucceeds("kubectl apply -f ${roRole}");
@@ -125,7 +128,7 @@ let
 
       $machine1->waitUntilSucceeds("kubectl get pod kubectl | grep Running");
 
-      $machine1->succeed("kubectl exec -ti kubectl -- kubectl get pods");
+      $machine1->waitUntilSucceeds("kubectl exec -ti kubectl -- kubectl get pods");
       $machine1->fail("kubectl exec -ti kubectl -- kubectl create -f /kubectl-pod-2.json");
       $machine1->fail("kubectl exec -ti kubectl -- kubectl delete pods -l name=kubectl");
     '';
diff --git a/nixos/tests/printing.nix b/nixos/tests/printing.nix
index d85abf3c105..7026637ead1 100644
--- a/nixos/tests/printing.nix
+++ b/nixos/tests/printing.nix
@@ -39,6 +39,8 @@ import ./make-test.nix ({pkgs, ... }: {
       $client->waitForUnit("cups.service");
       $client->sleep(10); # wait until cups is fully initialized
       $client->succeed("lpstat -r") =~ /scheduler is running/ or die;
+      # check local encrypted connections work without error
+      $client->succeed("lpstat -E -r") =~ /scheduler is running/ or die;
       # Test that UNIX socket is used for connections.
       $client->succeed("lpstat -H") =~ "/var/run/cups/cups.sock" or die;
       # Test that HTTP server is available too.
diff --git a/nixos/tests/switch-test.nix b/nixos/tests/switch-test.nix
index 32010838e67..0dba3697980 100644
--- a/nixos/tests/switch-test.nix
+++ b/nixos/tests/switch-test.nix
@@ -18,8 +18,17 @@ import ./make-test.nix ({ pkgs, ...} : {
   testScript = {nodes, ...}: let
     originalSystem = nodes.machine.config.system.build.toplevel;
     otherSystem = nodes.other.config.system.build.toplevel;
+
+    # Ensures failures pass through using pipefail, otherwise failing to
+    # switch-to-configuration is hidden by the success of `tee`.
+    stderrRunner = pkgs.writeScript "stderr-runner" ''
+      #! ${pkgs.stdenv.shell}
+      set -e
+      set -o pipefail
+      exec env -i "$@" | tee /dev/stderr
+    '';
   in ''
-    $machine->succeed("env -i ${originalSystem}/bin/switch-to-configuration test | tee /dev/stderr");
-    $machine->succeed("env -i ${otherSystem}/bin/switch-to-configuration test | tee /dev/stderr");
+    $machine->succeed("${stderrRunner} ${originalSystem}/bin/switch-to-configuration test");
+    $machine->succeed("${stderrRunner} ${otherSystem}/bin/switch-to-configuration test");
   '';
 })
diff --git a/pkgs/applications/altcoins/go-ethereum.nix b/pkgs/applications/altcoins/go-ethereum.nix
index ad1ccbf496c..85dfacb2095 100644
--- a/pkgs/applications/altcoins/go-ethereum.nix
+++ b/pkgs/applications/altcoins/go-ethereum.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "go-ethereum-${version}";
-  version = "1.8.21";
+  version = "1.8.22";
   goPackagePath = "github.com/ethereum/go-ethereum";
 
   # Fix for usb-related segmentation faults on darwin
@@ -16,13 +16,13 @@ buildGoPackage rec {
     owner = "ethereum";
     repo = "go-ethereum";
     rev = "v${version}";
-    sha256 = "1p4qfxa90l26s9q4hddyb93gdf7vb0sb46z9n26ijiqlxdq3z7v2";
+    sha256 = "0ag9qxrf7n0qkccaf6v4jaysivpxvsy5zfzar3mcm65223pqy375";
   };
 
   meta = with stdenv.lib; {
     homepage = https://ethereum.github.io/go-ethereum/;
     description = "Official golang implementation of the Ethereum protocol";
     license = with licenses; [ lgpl3 gpl3 ];
-    maintainers = [ maintainers.adisbladis maintainers.lionello ];
+    maintainers = with maintainers; [ adisbladis asymmetric lionello ];
   };
 }
diff --git a/pkgs/applications/altcoins/wownero.nix b/pkgs/applications/altcoins/wownero.nix
index 4b62ba759f3..fdf2c739ac6 100644
--- a/pkgs/applications/altcoins/wownero.nix
+++ b/pkgs/applications/altcoins/wownero.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, git
-, boost, miniupnpc, openssl, unbound, cppzmq
-, zeromq, pcsclite, readline, libsodium
+, boost, miniupnpc_2, openssl, unbound, cppzmq
+, zeromq, pcsclite, readline, libsodium, rapidjson
 , CoreData, IOKit, PCSC
 }:
 
@@ -11,19 +11,18 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "wownero-${version}";
 
-  version = "0.4.0.0";
+  version = "0.5.0.0";
   src = fetchFromGitHub {
     owner = "wownero";
     repo = "wownero";
-    fetchSubmodules = true;
     rev    = "v${version}";
-    sha256 = "1z5fpl4gwys4v8ffrymlzwrbnrbg73x553a9lxwny7ba8yg2k14p";
+    sha256 = "1dy9ycabva2z0896al1k2avl9xppkxvm1p2jwmg509ahjl98k3sy";
   };
 
   nativeBuildInputs = [ cmake pkgconfig git ];
 
   buildInputs = [
-    boost miniupnpc openssl unbound
+    boost miniupnpc_2 openssl unbound rapidjson
     cppzmq zeromq pcsclite readline libsodium
   ] ++ optionals stdenv.isDarwin [ IOKit CoreData PCSC ];
 
diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix
index 24072981135..b602707b392 100644
--- a/pkgs/applications/audio/abcde/default.nix
+++ b/pkgs/applications/audio/abcde/default.nix
@@ -3,13 +3,13 @@
 , perlPackages
 , makeWrapper }:
 
-let version = "2.9.2";
+let version = "2.9.3";
 in
   stdenv.mkDerivation {
     name = "abcde-${version}";
     src = fetchurl {
       url = "https://abcde.einval.com/download/abcde-${version}.tar.gz";
-      sha256 = "13c5yvp87ckqgha160ym5rdr1a4divgvyqbjh0yb6ffclip6qd9l";
+      sha256 = "091ip2iwb6b67bhjsj05l0sxyq2whqjycbzqpkfbpm4dlyxx0v04";
     };
 
     # FIXME: This package does not support `distmp3', `eject', etc.
diff --git a/pkgs/applications/audio/cmus/default.nix b/pkgs/applications/audio/cmus/default.nix
index e36d01b8d2e..9f69e305f24 100644
--- a/pkgs/applications/audio/cmus/default.nix
+++ b/pkgs/applications/audio/cmus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, runCommand, ncurses, pkgconfig
+{ config, stdenv, fetchFromGitHub, runCommand, ncurses, pkgconfig
 , libiconv, CoreAudio
 
 , alsaSupport ? stdenv.isLinux, alsaLib ? null
@@ -7,7 +7,7 @@
 , jackSupport ? false, libjack ? null
 , samplerateSupport ? jackSupport, libsamplerate ? null
 , ossSupport ? false, alsaOss ? null
-, pulseaudioSupport ? false, libpulseaudio ? null
+, pulseaudioSupport ? config.pulseaudio or false, libpulseaudio ? null
 
 # TODO: add these
 #, artsSupport
diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix
index e2fcc3c4626..0212560cd03 100644
--- a/pkgs/applications/audio/deadbeef/default.nix
+++ b/pkgs/applications/audio/deadbeef/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, intltool, pkgconfig, jansson
+{ config, stdenv, fetchurl, intltool, pkgconfig, jansson
 # deadbeef can use either gtk2 or gtk3
 , gtk2Support ? false, gtk2 ? null
 , gtk3Support ? true, gtk3 ? null, gsettings-desktop-schemas ? null, wrapGAppsHook ? null
@@ -20,7 +20,7 @@
 , osdSupport ? true, dbus ? null
 # output plugins
 , alsaSupport ? true, alsaLib ? null
-, pulseSupport ? true, libpulseaudio ? null
+, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
 # effect plugins
 , resamplerSupport ? true, libsamplerate ? null
 , overloadSupport ? true, zlib ? null
diff --git a/pkgs/applications/audio/mimic/default.nix b/pkgs/applications/audio/mimic/default.nix
index a4cd0c944dc..dcaffe3eb9b 100644
--- a/pkgs/applications/audio/mimic/default.nix
+++ b/pkgs/applications/audio/mimic/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, autoreconfHook, fetchFromGitHub, pkgconfig
+{ config, stdenv, autoreconfHook, fetchFromGitHub, pkgconfig
 , alsaLib, libtool, icu
-, pulseaudioSupport ? true, libpulseaudio }:
+, pulseaudioSupport ? config.pulseaudio or false, libpulseaudio }:
 
 stdenv.mkDerivation rec {
   name = "mimic-${version}";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "1wkpbwk88lsahzkc7pzbznmyy0lc02vsp0vkj8f1ags1gh0lc52j";
   };
 
-  nativeBuildInputs = [ 
+  nativeBuildInputs = [
     autoreconfHook
     pkgconfig
   ];
@@ -21,15 +21,14 @@ stdenv.mkDerivation rec {
   buildInputs = [
     alsaLib
     libtool
-    icu 
+    icu
   ] ++ stdenv.lib.optional pulseaudioSupport libpulseaudio;
 
   meta = {
     description = "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)";
-    homepage = https://mimic.mycroft.ai/; 
+    homepage = https://mimic.mycroft.ai/;
     license = stdenv.lib.licenses.free;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.noneucat ]; 
+    maintainers = [ stdenv.lib.maintainers.noneucat ];
   };
 }
-
diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix
index 45006fb8ef6..3e89101e042 100644
--- a/pkgs/applications/audio/mopidy/iris.nix
+++ b/pkgs/applications/audio/mopidy/iris.nix
@@ -2,11 +2,11 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "Mopidy-Iris";
-  version = "3.32.4";
+  version = "3.32.5";
 
   src = pythonPackages.fetchPypi {
     inherit pname version;
-    sha256 = "16b3dkxland4mjzjs2rz5gbqjapzzmap4d1mfhbrj2ch3plmdy7g";
+    sha256 = "0vs8x26zcakk6c31sc774h2lcdw3syp236vyymmx1jnfsh1jaqpn";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index 87f5f94bb30..d35cefb8841 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchurl, boost, mpd_clientlib, ncurses, pkgconfig, readline
 , libiconv, icu, curl
-, outputsSupport ? false # outputs screen
+, outputsSupport ? true # outputs screen
 , visualizerSupport ? false, fftw ? null # visualizer screen
-, clockSupport ? false # clock screen
+, clockSupport ? true # clock screen
 , taglibSupport ? true, taglib ? null # tag editor
 }:
 
diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix
index af859702292..f8f08369ab9 100644
--- a/pkgs/applications/audio/openmpt123/default.nix
+++ b/pkgs/applications/audio/openmpt123/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, zlib, pkgconfig, mpg123, libogg, libvorbis, portaudio, libsndfile, flac
-, usePulseAudio ? false, libpulseaudio }:
+{ config, stdenv, fetchurl, zlib, pkgconfig, mpg123, libogg, libvorbis, portaudio, libsndfile, flac
+, usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
 
 let
   version = "0.4.1";
diff --git a/pkgs/applications/audio/vimpc/default.nix b/pkgs/applications/audio/vimpc/default.nix
index 96a6081c4d8..ce561b5db31 100644
--- a/pkgs/applications/audio/vimpc/default.nix
+++ b/pkgs/applications/audio/vimpc/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchFromGitHub, autoreconfHook, mpd_clientlib, ncurses, pcre, pkgconfig
-, taglib }:
+, taglib, curl }:
 
 stdenv.mkDerivation rec {
-  version = "0.09.1";
+  version = "0.09.2";
   name = "vimpc-${version}";
 
   src = fetchFromGitHub {
     owner = "boysetsfrog";
     repo = "vimpc";
     rev = "v${version}";
-    sha256 = "1495a702df4nja8mlxq98mkbic2zv88sjiinimf9qddrfb38jxk6";
+    sha256 = "0lswzkap2nm7v5h7ppb6a64cb35rajysd09nb204rxgrkij4m6nx";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ mpd_clientlib ncurses pcre taglib ];
+  buildInputs = [ mpd_clientlib ncurses pcre taglib curl ];
 
   postInstall = ''
     mkdir -p $out/etc
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 2d5028cf83b..cb0aa393380 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -13,14 +13,14 @@ let
     sha256Hash = "0fghqkc8pkb7waxclm0qq4nlnsvmv9d3fcj5nnvgbfkjyw032q42";
   };
   betaVersion = {
-    version = "3.4.0.12"; # "Android Studio 3.4 Beta 3"
-    build = "183.5256591";
-    sha256Hash = "1yab2sgabgk3wa3wrzv9z1dc2k7x0079v0mlwrp32jwx8r9byvcw";
+    version = "3.4.0.13"; # "Android Studio 3.4 Beta 4"
+    build = "183.5304277";
+    sha256Hash = "01x7xba0f5js213wgw0h1vw297vwz5q7dprnilcdydfjxwqsbr8f";
   };
   latestVersion = { # canary & dev
-    version = "3.5.0.2"; # "Android Studio 3.5 Canary 3"
-    build = "183.5256920";
-    sha256Hash = "09bd80ld21hq743xjacsq0nkxwl5xzr253p86n71n580yn4rgmlb";
+    version = "3.5.0.3"; # "Android Studio 3.5 Canary 4"
+    build = "183.5290690";
+    sha256Hash = "0d1cl78b25pksaj0scv3hxb14bjxk3591zbc0v7dykk1gf4pvxd1";
   };
 in rec {
   # Old alias (TODO @primeos: Remove after 19.03 is branched off):
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 13dc9e1285b..e5a71b134f1 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -3,14 +3,14 @@
 let
   versions = {
     atom = {
-      version = "1.33.0";
-      sha256 = "0f6m6zwgz94m3q11ipyiliap3s5a3zlrg3ldjwkqnxjl6gwlxc2r";
+      version = "1.34.0";
+      sha256 = "16hrjymrc43izg7frcrk7cwjwwrclcxzcwb5iw2llzjc6iadzlkb";
     };
 
     atom-beta = {
-      version = "1.34.0";
+      version = "1.35.0";
       beta = 0;
-      sha256 = "1xnrr4z55sj46hqr0il26sfs6s3knv60m340cw3rzzic271b3ifw";
+      sha256 = "0gm5k573dq1hhnyw3719f5k1c6rsz872mhzg8q53n89y0g2r5xmw";
     };
   };
 
diff --git a/pkgs/applications/editors/dit/default.nix b/pkgs/applications/editors/dit/default.nix
index 33d80a577db..12ca7a07140 100644
--- a/pkgs/applications/editors/dit/default.nix
+++ b/pkgs/applications/editors/dit/default.nix
@@ -1,22 +1,20 @@
-{ fetchurl, stdenv, coreutils, ncurses, lua }:
+{ lib, fetchurl, stdenv, libiconv, ncurses, lua }:
 
 stdenv.mkDerivation rec {
   name = "dit-${version}";
-  version = "0.4";
+  version = "0.5";
 
   src = fetchurl {
     url = "https://hisham.hm/dit/releases/${version}/${name}.tar.gz";
-    sha256 = "0bwczbv7annbbpg7bgbsqd5kwypn81sza4v7v99fin94wwmcn784";
+    sha256 = "05vhr1gl3bb5fg49v84xhmjaqdjw6djampvylw10ydvbpnpvjvjc";
   };
 
-  buildInputs = [ coreutils ncurses lua ];
+  buildInputs = [ ncurses lua ]
+    ++ lib.optional stdenv.isDarwin libiconv;
 
+  # fix paths
   prePatch = ''
     patchShebangs tools/GenHeaders
-  '';
-
-  # needs GNU tail for tail -r
-  postPatch = ''
     substituteInPlace Prototypes.h --replace 'tail' "$(type -P tail)"
   '';
 
diff --git a/pkgs/applications/editors/eclipse/build-eclipse.nix b/pkgs/applications/editors/eclipse/build-eclipse.nix
index 389608ad824..6ae9eb078e2 100644
--- a/pkgs/applications/editors/eclipse/build-eclipse.nix
+++ b/pkgs/applications/editors/eclipse/build-eclipse.nix
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://www.eclipse.org/;
     inherit description;
+    platforms = [ "x86_64-linux" ];
   };
 
 }
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 55bbc778e3a..3fa46fc4d92 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -11,7 +11,14 @@ assert stdenv ? glibc;
 # http://download.eclipse.org/eclipse/downloads/ is the main place to
 # find the downloads needed for new versions
 
-rec {
+let
+  platform_major = "4";
+  platform_minor = "10";
+  year = "2018";
+  month = "12";
+  timestamp = "201812060815";
+
+in rec {
 
   buildEclipse = import ./build-eclipse.nix {
     inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
@@ -21,133 +28,43 @@ rec {
 
   ### Eclipse CPP
 
-  eclipse-cpp = eclipse-cpp-47; # always point to latest
-
-  eclipse-cpp-47 = buildEclipse {
-    name = "eclipse-cpp-4.7.0";
+  eclipse-cpp = buildEclipse {
+    name = "eclipse-cpp-${platform_major}.${platform_minor}";
     description = "Eclipse IDE for C/C++ Developers, Oxygen release";
     src =
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk-x86_64.tar.gz;
-          sha512 = "813c791e739d7d0e2ab242a5bacadca135bbeee20ef97aa830353cd90f63fa6e9c89cfcc6aadf635c742befe035bd6e3f15103013f63c419f6144e86ebde3ed1";
-        }
-      else if stdenv.hostPlatform.system == "i686-linux" then
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk.tar.gz;
-          sha512 = "2b50f4a00306a89cda1aaaa606e62285cacbf93464a9dd3f3319dca3e2c578b802e685de6f78e5e617d269e21271188effe73d41f491a6de946e28795d82db8a";
-        }
-      else throw "Unsupported system: ${stdenv.hostPlatform.system}";
-  };
-
-  eclipse-cpp-37 = buildEclipse {
-    name = "eclipse-cpp-3.7";
-    description = "Eclipse IDE for C/C++ Developers";
-    src =
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
-          sha256 = "14ppc9g9igzvj1pq7jl01vwhzb66nmzbl9wsdl1sf3xnwa9wnqk3";
-        }
-      else
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
-          sha256 = "1cvg1vgyazrkinwzlvlf0dpl197p4784752srqybqylyj5psdi3b";
-        };
+      fetchurl {
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+        sha512 = "1f5yr7cydz4iw8c14yn713d44f1g1wkiqiwmb4ikdfx4l70rc5xxsdxv9b4mhm89b02cqnxdh9p5hivkssmnzg0km3ab5bx9mvzgzx7";
+      };
   };
-  eclipse_cpp_37 = eclipse-cpp-37; # backward compatibility, added 2016-01-30
 
   ### Eclipse Modeling
 
-  eclipse-modeling = eclipse-modeling-47; # always point to latest
-
-  eclipse-modeling-47 = buildEclipse {
-    name = "eclipse-modeling-4.7";
+  eclipse-modeling = buildEclipse {
+    name = "eclipse-modeling-${platform_major}.${platform_minor}";
     description = "Eclipse Modeling Tools";
     src =
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk-x86_64.tar.gz;
-          sha512 = "3b9a7ad4b5d6b77fbdd64e8d323e0adb6c2904763ad042b374b4d87cef8607408cb407e395870fc755d58c0c800e20818adcf456ebe193d76cede16c5fe12271";
-        }
-      else
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk.tar.gz;
-          sha512 = "b8597c1dec117e69c72a5e1a53e09b1f81a7c9de86ed7e71a9d007664603202df301745f186ded02b2e76410345863e80a2ba40867d6848e5375601289999206";
-        };
-  };
-
-  eclipse-modeling-36 = buildEclipse {
-    name = "eclipse-modeling-3.6.2";
-    description = "Eclipse Modeling Tools (includes Incubating components)";
-    src =
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
-          sha1 = "e96f5f006298f68476f4a15a2be8589158d5cc61";
-        }
-      else
-        fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
-          sha1 = "696377895bb26445de39d82a916b7e69edb1d939";
-        };
+      fetchurl {
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+        sha512 = "18psh1lgqg21dmndyc0yr6rz7piqyk861j9mlhgv9xaq8nz11fb6lil594sk64yyv0qbgi98vp03f1p06zvhgs37k9rjkfjmzl7n97k";
+      };
   };
-  eclipse_modeling_36 = eclipse-modeling-36; # backward compatibility, added 2016-01-30
 
   ### Eclipse Platform
 
-  eclipse-platform = eclipse-platform-49; # always point to latest
-
-  eclipse-platform-47 = buildEclipse {
-    name = "eclipse-platform-4.7.3a";
-    description = "Eclipse Platform Oxygen";
-    sources = {
-      "x86_64-linux" = fetchurl {
-        url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk-x86_64.tar.gz;
-          sha512 = "caf86cd6efaf66258c75434f1adf552587a7395d57dba4cfd20f86196308cf942866d931f4b352f9d39a6fbf14444fcd2167e6bfd146a28c96c229bb9988156a";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk.tar.gz;
-          sha512 = "c633da467774e4ab40f8d51d07b8e7d8403f26f23365c3c3ceeaeec1039b8c23c7508cee1f786bf52db64c7b84e0f91cb31a2848a74ac8271f8504934407bd5c";
-        };
-    };
-  };
-
-  eclipse-platform-48 = buildEclipse {
-    name = "eclipse-platform-4.8";
-    description = "Eclipse Platform Photon";
-    sources = {
-      "x86_64-linux" = fetchurl {
-        url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk-x86_64.tar.gz;
-          sha512 = "ccce2b954938479e42ef3f9b78f74b24ae4cae7499546fa4f9a55ec1849e1acfd06315d4529b11474a8b3d1142c9409c581edfa571baaf1342ab062f02467af2";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk.tar.gz;
-          sha512 = "f5f407727e22b848931cf38f71b1a0c30a9778aa227c3df137dcceec2fba2ecc309cbfa8b4a660b814d2edb60f65110381497b4325781cab4d6402784139e32b";
-        };
-    };
-  };
-
-  eclipse-platform-49 = buildEclipse {
-    name = "eclipse-platform-4.9";
-    description = "Eclipse Platform 2018-09";
-    sources = {
-      "x86_64-linux" = fetchurl {
-        url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-platform-4.9-linux-gtk-x86_64.tar.gz;
-          sha512 = "875714bb411145c917fccedf2f7c4fd2757640b2debf4a18f775604233abd6f0da893b350cc03da44413d7ec6fae3f773ef08634e632058e4b705e6cda2893eb";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-platform-4.9-linux-gtk.tar.gz;
-          sha512 = "758bc0de30fa5c4b76b343ea0325611d87b6928ef5002244f2f1ba2a9fa937de89b2a94ce2c8d33d79344fd574d6e8a72c5d127fe416d785f48600e9e85fce86";
-        };
-    };
+  eclipse-platform = buildEclipse {
+    name = "eclipse-platform-${platform_major}.${platform_minor}";
+    description = "Eclipse Platform ${year}-${month}";
+    src =
+      fetchurl {
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+        sha512 = "2zdvbjk05a00lbcad9v30rcr93j03d2pycdhpwrvrakr8z4yrxs6svamq9s294ry1w3lw04pgsnqklw6zjx6iil1kp51f374lkfpxn7";
+      };
   };
 
   ### Eclipse Scala SDK
 
-  eclipse-scala-sdk = eclipse-scala-sdk-441; # always point to latest
-
-  eclipse-scala-sdk-441 = buildEclipse {
+  eclipse-scala-sdk = buildEclipse {
     name = "eclipse-scala-sdk-4.4.1";
     description = "Eclipse IDE for Scala Developers";
     src =
@@ -165,88 +82,26 @@ rec {
 
   ### Eclipse SDK
 
-  eclipse-sdk = eclipse-sdk-49; # always point to latest
-
-  eclipse-sdk-47 = buildEclipse {
-    name = "eclipse-sdk-4.7.3a";
-    description = "Eclipse Oxygen Classic";
-    sources = {
-      "x86_64-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk-x86_64.tar.gz;
-          sha512 = "d77e42aca16d26526cef32e363d038258bb8a4616d9dbe6e76dd3656dc2217369436390a82555bde4566bbbdb631813bbaca08602f7bb885cb30e8a26a14873f";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk.tar.gz;
-          sha512 = "b0b936fd4142ae86ec5c30535cd5e4caf6fe313d814ae5b16f300635e4163a79b748b1eee11792a135114f2265678a74821ec80c2bfd69872769b6d0ccbcde3a";
-        };
-    };
-  };
-
-  eclipse-sdk-48 = buildEclipse {
-    name = "eclipse-sdk-4.8";
-    description = "Eclipse Photon Classic";
-    sources = {
-      "x86_64-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk-x86_64.tar.gz;
-          sha512 = "357ea9e7f426c68ced693f1c7b76eae23f9e3c7893de1f12d17994ec17b447896b5daa7292d5fbf6d9c4e5b7fd637ca5b2a6ba8ce40a2a7c2fe06f2124d31b75";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk.tar.gz;
-          sha512 = "c7cae7baa3978d48477090bb9941e85b4c7484021ece9c5c77a7e859e57e5c1f13556262f92b561cfb11f828b934bad7a6018be7b8fd9454e3991e8d5cae9917";
-        };
-    };
-  };
-
-  eclipse-sdk-49 = buildEclipse {
-    name = "eclipse-sdk-4.9";
-    description = "Eclipse 2018-09 Classic";
-    sources = {
-      "x86_64-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-SDK-4.9-linux-gtk-x86_64.tar.gz;
-          sha512 = "5e74a0411f56b3973b7c6d8c3727392297d55ad458a814b4cc3f2f6a57dbeebc64852d1a6a958db5c3b08c620093bfb5bcc0d2c6a400f5594b82c2ef5d5fa9fb";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-SDK-4.9-linux-gtk.tar.gz;
-          sha512 = "b1861bd99c8e43f1d04247226584246aa7844af5e2da820fe98a51018dbe8ff4c25dbb9fa655f56e103f95c0696f40a65dcce13430c63aa080f786738e70eb8b";
-        };
-    };
-  };
-
-  eclipse-sdk-37 = buildEclipse {
-    name = "eclipse-sdk-3.7";
-    description = "Eclipse Classic";
-    sources = {
-      "x86_64-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
-          sha256 = "0nf4nv7awhp1k8b1hjb7chpjyjrqnyszsjbc4dlk9phpjv3j4wg5";
-        };
-      "i686-linux" = fetchurl {
-          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
-          sha256 = "1isn7i45l9kyn2yx6vm88jl1gnxph8ynank0aaa218cg8kdygk7j";
-        };
-    };
+  eclipse-sdk = buildEclipse {
+    name = "eclipse-sdk-${platform_major}.${platform_minor}";
+    description = "Eclipse ${year}-${month} Classic";
+    src =
+      fetchurl {
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+        sha512 = "1kq14vhzcngfhl8kjs722rshny81gxv6wcgln46x7lnpg2274sb9dprhns62fpq97l0355cmg8mnny6fsd1nqibrw09xq932v86cfm8";
+      };
   };
-  eclipse_sdk_37 = eclipse-sdk-37; # backward compatibility, added 2016-01-30
 
   ### Eclipse Java
 
-  eclipse-java = eclipse-java-49;
-
-  eclipse-java-49 = buildEclipse {
-    name = "eclipse-java-4.9.0";
+  eclipse-java = buildEclipse {
+    name = "eclipse-java-${platform_major}.${platform_minor}";
     description = "Eclipse IDE for Java Developers";
     src =
-      if stdenv.system == "x86_64-linux" then
-        fetchurl {
-          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/2018-09/R/eclipse-java-2018-09-linux-gtk-x86_64.tar.gz;
-          sha512 = "9dac5d040cdabf779de3996de87290e352130c7e860c1d0a98772f41da828ad45f90748b68e0a8a4f8d1ebbbbe5fdfe6401b7d871b93af34103d4a81a041c6a5";
-        }
-      else if stdenv.system == "i686-linux" then
-        fetchurl {
-          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/2018-09/R/eclipse-java-2018-09-linux-gtk.tar.gz;
-          sha512 = "24208e95b972e848d6b65ed8108d9e81584cf051397f2f43fb6269f5a625b8d7552ad77c7980a1a5653c87f06776e2926fd85607aae44e44657b4f6cc9b3e2e3";
-        }
-      else throw "Unsupported system: ${stdenv.system}";
+      fetchurl {
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+        sha512 = "2xd5q7kg3aly7jnz2fijn06ljmnnd7ggwwzmndfhqwfzxpyjg1lnlln76pcd6chx7gnwdrl7khg0fs566ddabfjv17c46dj5fpw9y6j";
+      };
   };
 
   ### Environments
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index af0f7e2d8c5..4dc4aebe8fd 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -254,12 +254,12 @@ rec {
 
   cdt = buildEclipseUpdateSite rec {
     name = "cdt-${version}";
-    version = "9.0.1";
+    version = "9.6.0";
 
     src = fetchzip {
       stripRoot = false;
-      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.0/${name}.zip";
-      sha256 = "0vdx0j9ci533wnk7y17qjvjyqx38hlrdw67z6pi05vfv3r6ys39x";
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.6/${name}/${name}.zip";
+      sha256 = "08rk3b1va57jcy4s161fx0xmb8dn47akhhxd2f28hspq6i2jqicm";
     };
 
     meta = with stdenv.lib; {
@@ -346,6 +346,33 @@ rec {
     };
   };
 
+  drools = buildEclipseUpdateSite rec {
+    name = "drools-${version}";
+    version = "7.17.0.Final";
+
+    src = fetchzip {
+      url = "https://download.jboss.org/drools/release/${version}/droolsjbpm-tools-distribution-${version}.zip";
+      sha512 = "2qzc1iszqfrfnw8xip78n3kp6hlwrvrr708vlmdk7nv525xhs0ssjaxriqdhcr0s6jripmmazxivv3763rnk2bfkh31hmbnckpx4r3m";
+      extraPostFetch = ''
+        # work around https://github.com/NixOS/nixpkgs/issues/38649
+        chmod go-w $out;
+
+        # update site is a couple levels deep, alongside some other irrelevant stuff
+        cd $out;
+        find . -type f -not -path ./binaries/org.drools.updatesite/\* -exec rm {} \;
+        rmdir sources;
+        mv binaries/org.drools.updatesite/* .;
+        rmdir binaries/org.drools.updatesite binaries;
+      '';
+    };
+
+    meta = with stdenv.lib; {
+      homepage = https://www.drools.org/;
+      description = "Drools is a Business Rules Management System (BRMS) solution";
+      license = licenses.asl20;
+    };
+  };
+
   eclemma = buildEclipseUpdateSite rec {
     name = "eclemma-${version}";
     version = "2.3.2.201409141915";
@@ -470,12 +497,12 @@ rec {
 
   jdt = buildEclipseUpdateSite rec {
     name = "jdt-${version}";
-    version = "4.9";
+    version = "4.10";
 
     src = fetchzip {
       stripRoot = false;
-      url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/org.eclipse.jdt-4.9.zip;
-      sha256 = "144rqrw0crxd2v862dqxm2p5y60n4pbzdryv709xnhcw54rycm7n";
+      url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.10-201812060815/org.eclipse.jdt-4.10.zip;
+      sha256 = "1h11w3zd6xy5w4sk6xnyb2a27wxwhp83qfx67ji7bzdrwbvljqkz";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 4f268a3a104..4a48cde571a 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
+{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d, libXcursor
 , pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
 , alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
@@ -118,6 +118,17 @@ stdenv.mkDerivation rec {
     mv nextstep/Emacs.app $out/Applications
   '';
 
+  postFixup =
+    let libPath = lib.makeLibraryPath [
+      libXcursor
+    ];
+    in lib.optionalString (withX && toolkit == "lucid") ''
+      patchelf --set-rpath \
+        "$(patchelf --print-rpath "$out/bin/emacs"):${libPath}" \
+        "$out/bin/emacs"
+      patchelf --add-needed "libXcursor.so.1" "$out/bin/emacs"
+    '';
+
   meta = with stdenv.lib; {
     description = "The extensible, customizable GNU text editor";
     homepage    = https://www.gnu.org/software/emacs/;
diff --git a/pkgs/applications/editors/emacs/macport.nix b/pkgs/applications/editors/emacs/macport.nix
index 4eb0fecec40..486172ac51f 100644
--- a/pkgs/applications/editors/emacs/macport.nix
+++ b/pkgs/applications/editors/emacs/macport.nix
@@ -53,6 +53,10 @@ stdenv.mkDerivation rec {
 
     # use newer emacs icon
     cp nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns mac/Emacs.app/Contents/Resources/Emacs.icns
+
+    # Fix sandbox impurities.
+    substituteInPlace Makefile.in --replace '/bin/pwd' 'pwd'
+    substituteInPlace lib-src/Makefile.in --replace '/bin/pwd' 'pwd'
   '';
 
   configureFlags = [
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index 631287e86a6..16596056c9a 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "kakoune-unstable-${version}";
+  name = "kakoune-${version}";
   version = "2019.01.20";
   src = fetchFromGitHub {
     repo = "kakoune";
diff --git a/pkgs/applications/editors/kdevelop5/kdev-php.nix b/pkgs/applications/editors/kdevelop5/kdev-php.nix
new file mode 100644
index 00000000000..532bb99e7d8
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-php.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, kdevelop-pg-qt }:
+
+let
+  pname = "kdev-php";
+  version = "5.3.1";
+in
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+    sha256 = "1xiz4v6w30dsa7l4nk3jw3hxpkx71b0yaaj2k8s7xzgjif824bgl";
+  };
+
+  cmakeFlags = [
+    "-DBUILD_TESTING=OFF"
+  ];
+
+  nativeBuildInputs = [ cmake extra-cmake-modules ];
+  buildInputs = [ kdevelop-pg-qt threadweaver ktexteditor kdevelop-unwrapped ];
+
+  meta = with lib; {
+    maintainers = [ maintainers.aanderse ];
+    platforms = platforms.linux;
+    description = "PHP support for KDevelop";
+    homepage = https://www.kdevelop.org;
+    license = [ licenses.gpl2 ];
+  };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdev-python.nix b/pkgs/applications/editors/kdevelop5/kdev-python.nix
new file mode 100644
index 00000000000..be27e10f42a
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-python.nix
@@ -0,0 +1,30 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, python }:
+
+let
+  pname = "kdev-python";
+  version = "5.3.1";
+in
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+    sha256 = "11hf8n6vrlaz31c0p3xbnf0df2q5j6ykgc9ip0l5g33kadwn5b9j";
+  };
+
+  cmakeFlags = [
+    "-DBUILD_TESTING=OFF"
+    "-DPYTHON_EXECUTABLE=${python}/bin/python"
+  ];
+
+  nativeBuildInputs = [ cmake extra-cmake-modules ];
+  buildInputs = [ threadweaver ktexteditor kdevelop-unwrapped ];
+
+  meta = with lib; {
+    maintainers = [ maintainers.aanderse ];
+    platforms = platforms.linux;
+    description = "Python support for KDevelop";
+    homepage = https://www.kdevelop.org;
+    license = [ licenses.gpl2 ];
+  };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdevelop.nix b/pkgs/applications/editors/kdevelop5/kdevelop.nix
index a35bd14f310..98154b4a5eb 100644
--- a/pkgs/applications/editors/kdevelop5/kdevelop.nix
+++ b/pkgs/applications/editors/kdevelop5/kdevelop.nix
@@ -43,6 +43,13 @@ mkDerivation rec {
     "-DCLANG_BUILTIN_DIR=${llvmPackages.clang-unwrapped}/lib/clang/${(builtins.parseDrvName llvmPackages.clang.name).version}/include"
   ];
 
+  postPatch = ''
+    # FIXME: temporary until https://invent.kde.org/kde/kdevelop/merge_requests/8 is merged
+    substituteInPlace kdevplatform/language/backgroundparser/parsejob.cpp --replace \
+      'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev"))) {' \
+      'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev")) || localFile.startsWith(path + QStringLiteral("/kdev"))) {'
+  '';
+
   postInstall = ''
     # The kdevelop! script (shell environment) needs qdbus and kioclient5 in PATH.
     wrapProgram "$out/bin/kdevelop!" \
diff --git a/pkgs/applications/editors/kdevelop5/wrapper.nix b/pkgs/applications/editors/kdevelop5/wrapper.nix
new file mode 100644
index 00000000000..86d3de9eb39
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/wrapper.nix
@@ -0,0 +1,7 @@
+{ symlinkJoin, kdevelop-unwrapped, plugins ? null }:
+
+symlinkJoin {
+  name = "kdevelop-with-plugins";
+
+  paths = [ kdevelop-unwrapped ] ++ (if plugins != null then plugins else []);
+}
diff --git a/pkgs/applications/editors/vscode/default.nix b/pkgs/applications/editors/vscode/default.nix
index 0c0441f2025..78d7d96d396 100644
--- a/pkgs/applications/editors/vscode/default.nix
+++ b/pkgs/applications/editors/vscode/default.nix
@@ -18,16 +18,16 @@ let
   }.${system};
 
   sha256 = {
-    "i686-linux" = "09mgvff27iljj9z7h0xxmr6152hcxh7qqxl3i7wdc55ra1rsjq1n";
-    "x86_64-linux" = "1gvlvg3cjsscx6khy5gxd4wnb069kska00qdfwcq4kn7x1z04xnz";
-    "x86_64-darwin" = "1mf9nyjnxgmzai7rfd1rkwk0wvil0ripg3mh8icg4mld2jjz8rsy";
+    "i686-linux" = "04kbx1cx40lsy9irxy1arp1rixzk49ldhg34w3llmfbx63a4hchf";
+    "x86_64-linux" = "1plvx0mjcbizl6iffib95p5224r9frf0mn6c5xp14p3qnrp32jhm";
+    "x86_64-darwin" = "14h9gs6jpxydgd1h16ybq3ifw5jc7k83yg22pw3sk6vhy7hx7pxr";
   }.${system};
 
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 in
   stdenv.mkDerivation rec {
     name = "vscode-${version}";
-    version = "1.31.0";
+    version = "1.31.1";
 
     src = fetchurl {
       name = "VSCode_${version}_${plat}.${archive_fmt}";
@@ -126,7 +126,7 @@ in
         and code refactoring. It is also customizable, so users can change the
         editor's theme, keyboard shortcuts, and preferences
       '';
-      homepage = http://code.visualstudio.com/;
+      homepage = https://code.visualstudio.com/;
       downloadPage = https://code.visualstudio.com/Updates;
       license = licenses.unfree;
       maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/graphics/ahoviewer/default.nix b/pkgs/applications/graphics/ahoviewer/default.nix
index 596570092a9..5210af4df7a 100644
--- a/pkgs/applications/graphics/ahoviewer/default.nix
+++ b/pkgs/applications/graphics/ahoviewer/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libconfig,
-  gtkmm2, glibmm, libxml2, libsecret, curl, libzip,
-  librsvg, gst_all_1, autoreconfHook, makeWrapper,
-  useUnrar ? false, unrar
+{ config, stdenv, fetchFromGitHub, pkgconfig, libconfig
+, gtkmm2, glibmm, libxml2, libsecret, curl, libzip
+, librsvg, gst_all_1, autoreconfHook, makeWrapper
+, useUnrar ? config.ahoviewer.useUnrar or false, unrar
 }:
 
 assert useUnrar -> unrar != null;
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index e7621414b06..7fcdb46e32e 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -50,13 +50,13 @@
 
 mkDerivation rec {
   name    = "digikam-${version}";
-  version = "5.9.0";
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner  = "KDE";
     repo   = "digikam";
     rev    = "v${version}";
-    sha256 = "09diw273h9i7rss89ba82yrfy6jb2njv3k0dknrrg7bb998vrw2d";
+    sha256 = "1ifvrn0bm7fp07d059rl4dy146qzdxafl36ipxg1fg00dkv95hh4";
   };
 
   nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 02e6a10295e..9ef70dff766 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 = "3.1.1";
+  version = "3.1.2";
 
   src = fetchurl {
     url = "https://feh.finalrewind.org/${name}.tar.bz2";
-    sha256 = "1sy8z6rv5sy1bhk3846hgfdy96wdi874yr2fnxfprks46qp29l31";
+    sha256 = "0qjhlrgr606gc9h96w9piyd13mx63jqfbxxnan41nrh76m8d0dka";
   };
 
   outputs = [ "out" "man" "doc" ];
@@ -20,25 +20,22 @@ stdenv.mkDerivation rec {
   buildInputs = [ xorg.libX11 xorg.libXinerama imlib2 libjpeg libpng curl libexif ];
 
   makeFlags = [
-    "PREFIX=$(out)" "exif=1"
+    "PREFIX=${placeholder "out"}" "exif=1"
   ] ++ optional stdenv.isDarwin "verscmp=0";
 
-  postBuild = ''
-    pushd man
-    make
-    popd
-  '';
-
+  installTargets = [ "install" ];
   postInstall = ''
     wrapProgram "$out/bin/feh" --prefix PATH : "${libjpeg.bin}/bin" \
                                --add-flags '--theme=feh'
-    install -D -m 644 man/*.1 $out/share/man/man1
   '';
 
   checkInputs = [ perlPackages.perl perlPackages.TestCommand ];
   preCheck = ''
     export PERL5LIB="${perlPackages.TestCommand}/${perlPackages.perl.libPrefix}"
   '';
+  postCheck = ''
+    unset PERL5LIB
+  '';
 
   doCheck = true;
 
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
new file mode 100644
index 00000000000..9ec82ea2a94
--- /dev/null
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -0,0 +1,103 @@
+{ stdenv, fetchurl, perlPackages, makeWrapper, wrapGAppsHook,
+  librsvg, sane-backends, sane-frontends,
+  imagemagick, libtiff, djvulibre, poppler_utils, ghostscript, unpaper,
+  xvfb_run, hicolor-icon-theme, liberation_ttf, file, pdftk }:
+
+with stdenv.lib;
+
+perlPackages.buildPerlPackage rec {
+  name = "gscan2pdf-${version}";
+  version = "2.3.0";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/gscan2pdf/${version}/${name}.tar.xz";
+    sha256 = "0mcsmly0j9pmyzh6py8r6sfa30hc6gv300hqq3dxj4hv653vhkk9";
+  };
+
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  buildInputs =
+    [ librsvg sane-backends sane-frontends ] ++
+    (with perlPackages; [
+      Gtk3
+      Gtk3SimpleList
+      Cairo
+      CairoGObject
+      Glib
+      GlibObjectIntrospection
+      GooCanvas2
+      LocaleGettext
+      PDFAPI2
+      ImageSane
+      SetIntSpan
+      PerlMagick
+      ConfigGeneral
+      ListMoreUtils
+      HTMLParser
+      ProcProcessTable
+      Log4Perl
+      TryTiny
+      DataUUID
+      DateCalc
+      IOString
+      FilesysDf
+      SubOverride
+    ]);
+
+  postPatch = let
+    fontSubstitute = "${liberation_ttf}/share/fonts/truetype/LiberationSans-Regular.ttf";
+  in ''
+    # Required for the program to properly load its SVG assets
+    substituteInPlace bin/gscan2pdf \
+      --replace "/usr/share" "$out/share"
+
+    # Substitute the non-free Helvetica font in the tests
+    sed -i 's|-pointsize|-font ${fontSubstitute} -pointsize|g' t/*.t
+  '';
+
+  postInstall = ''
+    # Remove impurity
+    find $out -type f -name "*.pod" -delete
+
+    # Add runtime dependencies
+    wrapProgram "$out/bin/gscan2pdf" \
+      --prefix PATH : "${imagemagick}/bin" \
+      --prefix PATH : "${libtiff}/bin" \
+      --prefix PATH : "${djvulibre}/bin" \
+      --prefix PATH : "${poppler_utils}/bin" \
+      --prefix PATH : "${ghostscript}/bin" \
+      --prefix PATH : "${unpaper}/bin"
+  '';
+
+  enableParallelBuilding = true;
+
+  installTargets = [ "install" ];
+
+  outputs = [ "out" "man" ];
+
+  checkInputs = [
+    xvfb_run
+    hicolor-icon-theme
+    imagemagick
+    libtiff
+    djvulibre
+    poppler_utils
+    ghostscript
+    file
+    pdftk
+    unpaper
+  ];
+
+  checkPhase = ''
+    xvfb-run -s '-screen 0 800x600x24' \
+      make test
+  '';
+
+  meta = {
+    description = "A GUI to produce PDFs or DjVus from scanned documents";
+    homepage = http://gscan2pdf.sourceforge.net/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.pacien ];
+  };
+}
+
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index 44855d5c8b4..bce2e882698 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
 
   qmakeFlags = [ "VERSION=${version}" ];
 
+  # src/lexer.l:36:10: fatal error: parser.hxx: No such file or directory
+  enableParallelBuilding = false; # true by default due to qmake
+
   doCheck = false;
 
   meta = {
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index 9839bb74077..cf13c6fb05e 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -6,7 +6,7 @@ stdenv, fetchFromGitHub, cmake, makeWrapper
 
 stdenv.mkDerivation rec {
   name = "paraview-${version}";
-  version = "5.5.2";
+  version = "5.6.0";
 
   # fetching from GitHub instead of taking an "official" source
   # tarball because of missing submodules there
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner = "Kitware";
     repo = "ParaView";
     rev = "v${version}";
-    sha256 = "1jivph7lppnflmjsiirhgv0mnh8mxx41i1vzkk78ynn00rzacx3j";
+    sha256 = "1j13yfdgcv4yzfr449i4c8r4rs1c9zr6qd3igr4vv3ani8zixkzi";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index da9fae2441c..354e9725a43 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -7,13 +7,13 @@
 
 let
   pname = "shotwell";
-  version = "0.30.1";
+  version = "0.30.2";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "01hsmig06hjv34yf9y60hv2gml593xfkza4ilq4b22gr8l4v2qip";
+    sha256 = "0pam0si110vkc65kh59lrmgkv91f9zxmf1gpfm99ixjgw25rfi8r";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/kde/kio-extras.nix b/pkgs/applications/kde/kio-extras.nix
index 13585848317..dd717c9462d 100644
--- a/pkgs/applications/kde/kio-extras.nix
+++ b/pkgs/applications/kde/kio-extras.nix
@@ -3,7 +3,7 @@
   exiv2, kactivities, karchive, kbookmarks, kconfig, kconfigwidgets,
   kcoreaddons, kdbusaddons, kguiaddons, kdnssd, kiconthemes, ki18n, kio, khtml,
   kdelibs4support, kpty, libmtp, libssh, openexr, ilmbase, openslp, phonon,
-  qtsvg, samba, solid
+  qtsvg, samba, solid, gperf
 }:
 
 mkDerivation {
@@ -16,7 +16,7 @@ mkDerivation {
   buildInputs = [
     exiv2 kactivities karchive kbookmarks kconfig kconfigwidgets kcoreaddons
     kdbusaddons kguiaddons kdnssd kiconthemes ki18n kio khtml kdelibs4support
-    kpty libmtp libssh openexr openslp phonon qtsvg samba solid
+    kpty libmtp libssh openexr openslp phonon qtsvg samba solid gperf
   ];
   CXXFLAGS = [ "-I${ilmbase.dev}/include/OpenEXR" ];
 }
diff --git a/pkgs/applications/misc/audio/sox/default.nix b/pkgs/applications/misc/audio/sox/default.nix
index 2585b554548..878e62c68cb 100644
--- a/pkgs/applications/misc/audio/sox/default.nix
+++ b/pkgs/applications/misc/audio/sox/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetchurl
+{ config, lib, stdenv, fetchurl
 , enableAlsa ? true, alsaLib ? null
 , enableLibao ? true, libao ? null
-, enableLame ? false, lame ? null
+, enableLame ? config.sox.enableLame or false, lame ? null
 , enableLibmad ? true, libmad ? null
 , enableLibogg ? true, libogg ? null, libvorbis ? null
 , enableFLAC ? true, flac ? null
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 89bd8ee4b3e..353cf620ee7 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
+{ config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
 , ilmbase, libXi, libX11, libXext, libXrender
 , libjpeg, libpng, libsamplerate, libsndfile
 , libtiff, libGLU_combined, openal, opencolorio, openexr, openimageio, openjpeg_1, pythonPackages
 , zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd
 , jackaudioSupport ? false, libjack2
-, cudaSupport ? false, cudatoolkit
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
 , colladaSupport ? true, opencollada
 , enableNumpy ? false, makeWrapper
 }:
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 0a1275cb17a..bde8fab8144 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -69,7 +69,7 @@ with python3.pkgs; buildPythonApplication rec {
     homepage = https://github.com/jarun/Buku;
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ infinisil ];
+    maintainers = with maintainers; [ matthiasbeyer infinisil ];
   };
 }
 
diff --git a/pkgs/applications/misc/cataract/build.nix b/pkgs/applications/misc/cataract/build.nix
index f2aac4326cb..e48b32a783d 100644
--- a/pkgs/applications/misc/cataract/build.nix
+++ b/pkgs/applications/misc/cataract/build.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     homepage = http://cgg.bzatek.net/;
     description = "a simple static web photo gallery, designed to be clean and easily usable";
     license = stdenv.lib.licenses.gpl2;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/applications/misc/cli-visualizer/default.nix b/pkgs/applications/misc/cli-visualizer/default.nix
index 7aecc8f823e..e0d284c838e 100644
--- a/pkgs/applications/misc/cli-visualizer/default.nix
+++ b/pkgs/applications/misc/cli-visualizer/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/dpayne/cli-visualizer;
     description = "CLI based audio visualizer";
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/ctodo/default.nix b/pkgs/applications/misc/ctodo/default.nix
index f8927319a01..0123e0c38d7 100644
--- a/pkgs/applications/misc/ctodo/default.nix
+++ b/pkgs/applications/misc/ctodo/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     homepage = http://ctodo.apakoh.dk/;
     description = "A simple ncurses-based task list manager";
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index c6f83104fb1..5f252d97d86 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -14,13 +14,13 @@ in
 
 python3Packages.buildPythonApplication rec {
   pname = "electrum";
-  version = "3.3.2";
+  version = "3.3.4";
 
   src = fetchFromGitHub {
     owner = "spesmilo";
     repo = "electrum";
     rev = version;
-    sha256 = "1jsn02azdydpq4plr2552s7ijyqgw6zqm2zx8skwsalgbwmhx12i";
+    sha256 = "0yxdpc602jnd14xz3px85ka0b6db98zwbgfi9a3vj8p1k3mmiwaj";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -53,9 +53,6 @@ python3Packages.buildPythonApplication rec {
 
   preBuild = ''
     sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
-    pyrcc5 icons.qrc -o electrum/gui/qt/icons_rc.py
-    # Recording the creation timestamps introduces indeterminism to the build
-    sed -i '/Created: .*/d' electrum/gui/qt/icons_rc.py
     sed -i "s|name = 'libzbar.*'|name='${zbar}/lib/libzbar.so'|" electrum/qrscanner.py
     substituteInPlace ./electrum/ecc_fast.py --replace libsecp256k1.so.0 ${secp256k1}/lib/libsecp256k1.so.0
   '';
diff --git a/pkgs/applications/misc/gcalcli/default.nix b/pkgs/applications/misc/gcalcli/default.nix
index ac8d082513b..99633c69913 100644
--- a/pkgs/applications/misc/gcalcli/default.nix
+++ b/pkgs/applications/misc/gcalcli/default.nix
@@ -4,16 +4,22 @@
 with python3.pkgs;
 
 buildPythonApplication rec {
-  version = "4.0.0a4";
-  name = "gcalcli-${version}";
+  pname = "gcalcli";
+  version = "4.0.3";
 
   src = fetchFromGitHub {
     owner  = "insanum";
-    repo   = "gcalcli";
+    repo   = pname;
     rev    = "v${version}";
-    sha256 = "00giq5cdigidzv5bz4wgzi1yp6xlf2rdcy6ynmsc6bcf0cl5x64d";
+    sha256 = "15hpm7b09p5qnha0hpp0mgdl2pgsyq2sjcqihk3fsv7arngdbr5q";
   };
 
+  postPatch = lib.optionalString stdenv.isLinux ''
+    substituteInPlace gcalcli/argparsers.py --replace \
+      "command = 'notify-send -u critical" \
+      "command = '${libnotify}/bin/notify-send -u critical"
+  '';
+
   propagatedBuildInputs = [
     dateutil gflags httplib2 parsedatetime six vobject
     google_api_python_client oauth2client uritemplate
diff --git a/pkgs/applications/misc/haxor-news/default.nix b/pkgs/applications/misc/haxor-news/default.nix
index e09e65738e5..7353078600d 100644
--- a/pkgs/applications/misc/haxor-news/default.nix
+++ b/pkgs/applications/misc/haxor-news/default.nix
@@ -38,7 +38,7 @@ buildPythonApplication rec {
     homepage = https://github.com/donnemartin/haxor-news;
     description = "Browse Hacker News like a haxor";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
   };
 
 }
diff --git a/pkgs/applications/misc/hr/default.nix b/pkgs/applications/misc/hr/default.nix
index 6b0926db047..2fd56e3c555 100644
--- a/pkgs/applications/misc/hr/default.nix
+++ b/pkgs/applications/misc/hr/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/LuRsT/hr;
     description = "A horizontal bar for your terminal";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/hstr/default.nix b/pkgs/applications/misc/hstr/default.nix
index 026cf9ecc14..1eae8c57fc4 100644
--- a/pkgs/applications/misc/hstr/default.nix
+++ b/pkgs/applications/misc/hstr/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/dvorka/hstr;
     description = "Shell history suggest box - easily view, navigate, search and use your command history";
     license = stdenv.lib.licenses.asl20;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux; # Cannot test others
   };
 
diff --git a/pkgs/applications/misc/khard/default.nix b/pkgs/applications/misc/khard/default.nix
index d6e05056e1c..61eb959a1dd 100644
--- a/pkgs/applications/misc/khard/default.nix
+++ b/pkgs/applications/misc/khard/default.nix
@@ -50,6 +50,6 @@ in with python.pkgs; buildPythonApplication rec {
     homepage = https://github.com/scheibler/khard;
     description = "Console carddav client";
     license = stdenv.lib.licenses.gpl3;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
   };
 }
diff --git a/pkgs/applications/misc/mdp/default.nix b/pkgs/applications/misc/mdp/default.nix
index cd7bdd1fe7e..6c58dde00d3 100644
--- a/pkgs/applications/misc/mdp/default.nix
+++ b/pkgs/applications/misc/mdp/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = https://github.com/visit1985/mdp;
     description = "A command-line based markdown presentation tool";
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = with maintainers; [ matthiasbeyer vrthra ];
     license = licenses.gpl3;
     platforms = with platforms; unix;
   };
diff --git a/pkgs/applications/misc/mwic/default.nix b/pkgs/applications/misc/mwic/default.nix
index d1538261939..c08a21e8797 100644
--- a/pkgs/applications/misc/mwic/default.nix
+++ b/pkgs/applications/misc/mwic/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     homepage = http://jwilk.net/software/mwic;
     description = "spell-checker that groups possible misspellings and shows them in their contexts";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
   };
 }
 
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
index 18bd46a30bd..82468e1bf9f 100644
--- a/pkgs/applications/misc/polar-bookshelf/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -10,12 +10,12 @@
 
 stdenv.mkDerivation rec {
   name = "polar-bookshelf-${version}";
-  version = "1.9.0";
+  version = "1.12.0";
 
   # 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 = "1kvgmb7kvqc6pzcr0yp8x9mxwymiy85yr0cx3k2sclqlksrc5dzx";
+    sha256 = "058pl54mkbvcjyjmdz81r0ibk1qkc3798pkkdw1kp2cbg16qkfyh";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/qmapshack/default.nix b/pkgs/applications/misc/qmapshack/default.nix
index 7b2e8bed10e..f4983ad9442 100644
--- a/pkgs/applications/misc/qmapshack/default.nix
+++ b/pkgs/applications/misc/qmapshack/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "qmapshack-${version}";
-  version = "1.12.1";
+  version = "1.12.3";
 
   src = fetchurl {
     url = "https://bitbucket.org/maproom/qmapshack/downloads/${name}.tar.gz";
-    sha256 = "1d6n7xk0ksxb1fw43s5lb08vgxf6h93k3rb401cbka1inpyf2232";
+    sha256 = "1yp5gw4q4gwiwr9w4dz19am0bhsla9n2l3bdlk98a7f46kxgnkrx";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/rtv/default.nix b/pkgs/applications/misc/rtv/default.nix
index 05b19bbbff9..38b2d4ece4d 100644
--- a/pkgs/applications/misc/rtv/default.nix
+++ b/pkgs/applications/misc/rtv/default.nix
@@ -41,6 +41,6 @@ buildPythonApplication rec {
     homepage = https://github.com/michael-lazar/rtv;
     description = "Browse Reddit from your Terminal";
     license = licenses.mit;
-    maintainers = with maintainers; [ jgeerds wedens ];
+    maintainers = with maintainers; [ matthiasbeyer jgeerds wedens ];
   };
 }
diff --git a/pkgs/applications/misc/safeeyes/default.nix b/pkgs/applications/misc/safeeyes/default.nix
index dfacdc75f1c..f4918565f35 100644
--- a/pkgs/applications/misc/safeeyes/default.nix
+++ b/pkgs/applications/misc/safeeyes/default.nix
@@ -6,12 +6,12 @@ let inherit (python3Packages) python buildPythonApplication fetchPypi;
 in buildPythonApplication rec {
   name = "${pname}-${version}";
   pname = "safeeyes";
-  version = "2.0.8";
+  version = "2.0.8.1";
   namePrefix = "";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08acrf9sngjjmplszjxzfq3af9xg4xscga94q0lkck2l1kqckc2l";
+    sha256 = "1x52ym8n4r6h38n4mcydxkvz71hhrd9wbiq4gzvwrai0xzl6qqsq";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/sigal/default.nix b/pkgs/applications/misc/sigal/default.nix
index a10b58d00b6..978ac2b7035 100644
--- a/pkgs/applications/misc/sigal/default.nix
+++ b/pkgs/applications/misc/sigal/default.nix
@@ -29,6 +29,6 @@ python3Packages.buildPythonApplication rec {
     description = "Yet another simple static gallery generator";
     homepage    = http://sigal.saimon.org/en/latest/index.html;
     license     = licenses.mit;
-    maintainers = with maintainers; [ domenkozar ];
+    maintainers = with maintainers; [ domenkozar matthiasbeyer ];
   };
 }
diff --git a/pkgs/applications/misc/slic3r/prusa3d.nix b/pkgs/applications/misc/slic3r/prusa3d.nix
index ddf8cf18fc7..1f0a3a71be8 100644
--- a/pkgs/applications/misc/slic3r/prusa3d.nix
+++ b/pkgs/applications/misc/slic3r/prusa3d.nix
@@ -33,7 +33,7 @@ let
 in
 stdenv.mkDerivation rec {
   name = "slic3r-prusa-edition-${version}";
-  version = "1.41.2";
+  version = "1.41.3";
 
   enableParallelBuilding = true;
 
@@ -123,7 +123,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "prusa3d";
     repo = "Slic3r";
-    sha256 = "046ircwc0wr586v7106ys557ypslmyq9p4qgi34ads1d6bgxhlyy";
+    sha256 = "145dfsv610c5p0sngab9z7lzbk5383pq9l26mrrpf1wxdlxgljpl";
     rev = "version_${version}";
   };
 
diff --git a/pkgs/applications/misc/stag/default.nix b/pkgs/applications/misc/stag/default.nix
index 6d6382faccd..ebb50e685da 100644
--- a/pkgs/applications/misc/stag/default.nix
+++ b/pkgs/applications/misc/stag/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
     homepage = https://github.com/seenaburns/stag;
     description = "Terminal streaming bar graph passed through stdin";
     license = stdenv.lib.licenses.bsdOriginal;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = stdenv.lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/tasknc/default.nix b/pkgs/applications/misc/tasknc/default.nix
index bf0e964d591..7ca421b49a3 100644
--- a/pkgs/applications/misc/tasknc/default.nix
+++ b/pkgs/applications/misc/tasknc/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = https://github.com/lharding/tasknc;
     description = "A ncurses wrapper around taskwarrior";
-    maintainers = with maintainers; [ infinisil ];
+    maintainers = with maintainers; [ matthiasbeyer infinisil ];
     platforms = platforms.linux; # Cannot test others
     license = licenses.mit;
   };
diff --git a/pkgs/applications/misc/tasksh/default.nix b/pkgs/applications/misc/tasksh/default.nix
index dac447edd7d..6a30adb23da 100644
--- a/pkgs/applications/misc/tasksh/default.nix
+++ b/pkgs/applications/misc/tasksh/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     description = "REPL for taskwarrior";
     homepage = http://tasktools.org;
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/timewarrior/default.nix b/pkgs/applications/misc/timewarrior/default.nix
index 4ca7a86e6f7..ca049ba04c9 100644
--- a/pkgs/applications/misc/timewarrior/default.nix
+++ b/pkgs/applications/misc/timewarrior/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     description = "A command-line time tracker";
     homepage = https://taskwarrior.org/docs/timewarrior;
     license = licenses.mit;
-    maintainers = with maintainers; [ mrVanDalo ];
+    maintainers = with maintainers; [ matthiasbeyer mrVanDalo ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/applications/misc/toot/default.nix b/pkgs/applications/misc/toot/default.nix
index c6ee7508890..127d9f21d99 100644
--- a/pkgs/applications/misc/toot/default.nix
+++ b/pkgs/applications/misc/toot/default.nix
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
     description = "Mastodon CLI interface";
     homepage    = "https://github.com/ihabunek/toot";
     license     = licenses.mit;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
   };
 
 }
diff --git a/pkgs/applications/misc/twmn/default.nix b/pkgs/applications/misc/twmn/default.nix
index 0667ec49b32..04c6cc3606e 100644
--- a/pkgs/applications/misc/twmn/default.nix
+++ b/pkgs/applications/misc/twmn/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchgit, qtbase, qtx11extras, qmake, pkgconfig, boost }:
+{ stdenv, fetchFromGitHub, qtbase, qtx11extras, qmake, pkgconfig, boost }:
 
 stdenv.mkDerivation rec {
-  name = "twmn-git-2014-09-23";
+  name = "twmn-git-2018-10-01";
 
-  src = fetchgit {
-    url = "https://github.com/sboli/twmn.git";
-    rev = "9492a47e25547e602dd57efd807033677c90b150";
-    sha256 = "1a68gka9gyxyzhc9rn8df59rzcdwkjw90cxp1kk0rdfp6svhxhsa";
+  src = fetchFromGitHub {
+    owner = "sboli";
+    repo = "twmn";
+    rev = "80f48834ef1a07087505b82358308ee2374b6dfb";
+    sha256 = "0mpjvp800x07lp9i3hfcc5f4bqj1fj4w3dyr0zwaxc6wqmm0fdqz";
   };
 
   nativeBuildInputs = [ pkgconfig qmake ];
diff --git a/pkgs/applications/misc/weather/default.nix b/pkgs/applications/misc/weather/default.nix
index 544c1252ff4..90fa0166154 100644
--- a/pkgs/applications/misc/weather/default.nix
+++ b/pkgs/applications/misc/weather/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
         homepage = http://fungi.yuggoth.org/weather;
         description = "Quick access to current weather conditions and forecasts";
         license = stdenv.lib.licenses.isc;
-        maintainers = with stdenv.lib.maintainers; [ ];
+        maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
         platforms = with stdenv.lib.platforms; linux; # my only platform
     };
 }
diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix
index 0fb2cec2916..6878bc5ab03 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.7.1";
+  version = "2.8.2";
 
   src = fetchFromGitHub {
     owner = "fireice-uk";
     repo = "xmr-stak";
     rev = "${version}";
-    sha256 = "1mlli8sx1f3922ygnwakmi2h3swccz62njxbzxfzbi4hlmvsaz0y";
+    sha256 = "0z0fdh5fmiisx5dgfyyin3ddl8g28fpd64gn8nl8dd6sf3iw8z7p";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";
diff --git a/pkgs/applications/misc/yaft/default.nix b/pkgs/applications/misc/yaft/default.nix
index 0794b2b6dbe..d273d27944a 100644
--- a/pkgs/applications/misc/yaft/default.nix
+++ b/pkgs/applications/misc/yaft/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/uobikiemukot/yaft;
     description = "Yet another framebuffer terminal";
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/zathura/default.nix b/pkgs/applications/misc/zathura/default.nix
index e67bebb3710..315df563946 100644
--- a/pkgs/applications/misc/zathura/default.nix
+++ b/pkgs/applications/misc/zathura/default.nix
@@ -1,4 +1,6 @@
-{ pkgs, useMupdf ? true, synctexSupport ? true }:
+{ config, pkgs
+, useMupdf ? config.zathura.useMupdf or true
+, synctexSupport ? true }:
 
 let
   callPackage = pkgs.newScope self;
diff --git a/pkgs/applications/misc/zola/default.nix b/pkgs/applications/misc/zola/default.nix
index bdf6d0da145..d4afe4ea9e1 100644
--- a/pkgs/applications/misc/zola/default.nix
+++ b/pkgs/applications/misc/zola/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   name = "zola-${version}";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "getzola";
     repo = "zola";
     rev = "v${version}";
-    sha256 = "0as8nrzw9zz10w4xxiibgz8ylghc879b2pwaxnw8sjbji2d9qv63";
+    sha256 = "1jj6yfb3qkfq3nwcxfrc7k1gqyls873imxgpifbwjx9slg6ssis9";
   };
 
-  cargoSha256 = "0a14hq8d3xjr6yfg5qn5r7npqivm816f1p53bbm826igvpc9hsxa";
+  cargoSha256 = "1hn2l25fariidgdr32mfx2yqb3g8xk4qafs614bdjiyvfrb7j752";
 
   nativeBuildInputs = [ cmake pkgconfig openssl ];
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices cf-private ];
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index b1ed151f4dd..dbe7c436052 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -76,11 +76,11 @@ let rpath = lib.makeLibraryPath [
 
 in stdenv.mkDerivation rec {
     pname = "brave";
-    version = "0.59.34";
+    version = "0.59.35";
 
     src = fetchurl {
         url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-        sha256 = "1i14y01387q0h12w6h780v9d98qygmx0w0vbygy4w9x9aj5nnask";
+        sha256 = "0z0fmgmfayappncixrnz7g42mcrm907lsvgynbklq2gjcxpsfp8k";
     };
 
     dontConfigure = true;
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index a909759bedf..4b9a747811f 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,4 +1,5 @@
-{ newScope, stdenv, llvmPackages, makeWrapper, makeDesktopItem, ed
+{ newScope, config, stdenv, llvmPackages, gcc8Stdenv, llvmPackages_7
+, makeWrapper, makeDesktopItem, ed
 , glib, gtk3, gnome3, gsettings-desktop-schemas
 
 # package customization
@@ -10,12 +11,17 @@
 , enablePepperFlash ? false
 , enableWideVine ? false
 , cupsSupport ? true
-, pulseSupport ? false
+, pulseSupport ? config.pulseaudio or stdenv.isLinux
 , commandLineArgs ? ""
 }:
 
-assert stdenv.cc.isClang -> (stdenv == llvmPackages.stdenv);
 let
+  stdenv_ = if stdenv.isAarch64 then gcc8Stdenv else llvmPackages_7.stdenv;
+  llvmPackages_ = if stdenv.isAarch64 then llvmPackages else llvmPackages_7;
+in let
+  stdenv = stdenv_;
+  llvmPackages = llvmPackages_;
+
   callPackage = newScope chromium;
 
   chromium = {
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 6f6a69369a0..62858904ffc 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   beta = {
-    sha256 = "1kbcn8yzgrn41d12806bsycnw6xyjbgv4d8nk0y4x2hymg34vc2k";
-    sha256bin64 = "0irafrmz9c3s8bdkqkwhj96v090ynvvbs50qzcdmidw8iqh2x1f8";
-    version = "73.0.3683.27";
+    sha256 = "0gd426a9xcgs8a9286gavziysq6fw1ilaifsna396dbdm8b571wi";
+    sha256bin64 = "05p20l0969rppbyn7965k78ccynng47rg7d7h7piqiwnm6ffg9yx";
+    version = "73.0.3683.39";
   };
   dev = {
-    sha256 = "0gyzil473kn7mqpa1dp3pai0x7vk8rw2bkqr3z0p33fx2g7b7y5s";
-    sha256bin64 = "1clr6xr08mmzmi71jy5ri4b2cp4qaf5apynbd9gnrp6qiy04rmn2";
-    version = "73.0.3683.20";
+    sha256 = "1yyzhw5zv803ysdj7zf0imdw9cf0mdlw30vphcb59a93nnvhkbb7";
+    sha256bin64 = "1a1dswkfc4x2rslkb899fgywv5mfrmcp1d8wxy7h034504r8gy87";
+    version = "74.0.3702.0";
   };
   stable = {
-    sha256 = "0fxavi4nwfiyb15lqm02vlq6kb8i4ipxnd7hp45bm7jdmhmgbnmj";
-    sha256bin64 = "1gz1ga8d3a4q1n6bdb79wv8ldlksvj0mlnrs5k1safwzlv11prsx";
-    version = "72.0.3626.96";
+    sha256 = "0bcc0iksk2v30drwd5zbw7v6sfbw16jqllc12ks2nifrvh058jjp";
+    sha256bin64 = "0azyhnmdg3grladpkpsv67zxqiqf5a3x9qjfj8h831kh7i7m3gy8";
+    version = "72.0.3626.109";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 6a2f2ed4efd..09c1e5dd8f8 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -10,10 +10,10 @@ rec {
 
   firefox = common rec {
     pname = "firefox";
-    ffversion = "65.0";
+    ffversion = "65.0.1";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "39bx76whgf53rkfqqy8gfhd44wikh89zpnqr930v4grqg3v0pfr8mbvp7xzjjlf5r7bski0wxibn9vyyy273fp99zyj1w2m5ihh9aqh";
+      sha512 = "2crb46l5r0rwmzr1m8cn9f6xgajwcvansnplqg4kg91rf6x8q0zqzfnmyli9ccsbqvh7bqd31dmy14gwjskasqc4v103x9hchzshxnc";
     };
 
     patches = [
@@ -25,7 +25,7 @@ rec {
     meta = {
       description = "A web browser built from Firefox source tree";
       homepage = http://www.mozilla.com/en-US/firefox/;
-      maintainers = with lib.maintainers; [ eelco ];
+      maintainers = with lib.maintainers; [ eelco andir ];
       platforms = lib.platforms.unix;
       license = lib.licenses.mpl20;
     };
@@ -67,10 +67,10 @@ rec {
 
   firefox-esr-60 = common rec {
     pname = "firefox-esr";
-    ffversion = "60.5.0esr";
+    ffversion = "60.5.1esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "3n7l146gdjwhi0iq85awc0yykvi4x5m91mcylxa5mrq911bv6xgn2i92nzhgnhdilqap5218778vgvnalikzsh67irrncx1hy5f6iyx";
+      sha512 = "0fvjw5zd8a9ki0a8phavi6xxfxbck21vj0k8415c5sxv48fwhqdhlnv3wx7riss4rjy9dylhr5xpa99dj9q98z735r8fxb7s3x3vrjz";
     };
 
     patches = [
@@ -237,16 +237,16 @@ in rec {
   };
 
   tor-browser-8-0 = tbcommon rec {
-    ffversion = "60.5.0esr";
-    tbversion = "8.0.5";
+    ffversion = "60.5.1esr";
+    tbversion = "8.0.6";
 
     # FIXME: fetchFromGitHub is not ideal, unpacked source is >900Mb
     src = fetchFromGitHub {
       owner = "SLNOS";
       repo  = "tor-browser";
-      # branch "tor-browser-60.5.0esr-8.0-1-slnos"
-      rev   = "7f113a4ea0539bd2ea9687fe4296c880f2b006c4";
-      sha256 = "11qbhwy2q9rinfw8337b9f78x0r26lnxg25581z85vxshp2jszdq";
+      # branch "tor-browser-60.5.1esr-8.0-1-slnos"
+      rev   = "89be91fc7cbc420b7c4a3bfc36d2b0d500dd3ccf";
+      sha256 = "022zjfwsdl0dkg6ck2kha4nf91xm3j9ag5n21zna98szg3x82dj1";
     };
   };
 
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index 99c70f01241..3c127387600 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -89,7 +89,7 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "8.0.5";
+  version = "8.0.6";
 
   lang = "en-US";
 
@@ -99,7 +99,7 @@ let
         "https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
         "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
       ];
-      sha256 = "0afrq5vy6rxj4p2dm7kaiq3d3iv4g8ivn7nfqx0z8h1wikyaf5di";
+      sha256 = "14i32r8pw749ghigqblnbr5622jh5wp1ivnwi71vycbgp9pds4f7";
     };
 
     "i686-linux" = fetchurl {
@@ -107,7 +107,7 @@ let
         "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
         "https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
       ];
-      sha256 = "113vn2fyw9sjxz24b2m6z4kw46rqgxglrna1lg9ji6zhkfb044vv";
+      sha256 = "0g9sd104b6xnbl2j3gbq1ga6j2h0x3jccays0gpbd235bxpjs39a";
     };
   };
 in
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index ad145583d49..b604453bb46 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -13,11 +13,11 @@
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "vivaldi";
-  version = "2.3.1440.41-1";
+  version = "2.3.1440.48-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
-    sha256 = "0wrq7c0sw1b41bshwgzji4pwl0raj0l5h2r7gkcg952rcn0wl9bs";
+    sha256 = "0zc9080np82qqqrfavg78vbjfl7w1b4p7f3s6h5wga9f6w1m078c";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
index b303bf2188b..831ddddd2a1 100644
--- a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
@@ -6,11 +6,11 @@
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "vivaldi-ffmpeg-codecs";
-  version = "72.0.3626.96";
+  version = "72.0.3626.109";
 
   src = fetchurl {
     url = "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${version}.tar.xz";
-    sha512 = "2hawkyydcd0b6ipfigkf5n6c1ha1vknaqd4mgw381pi0ayq8skxbjazqabfcg9gcj84cnksi8j4dylfcrbgrmlnmc479fix0m0xx7cl";
+    sha512 = "0ffpzvamrzw71vfi12sdwqrxc42bhraai21zzx8rp5n12794rr687dzw9hn3735sc0h2bq7c59zc4hcx3ighr2i93iplz35hp883dhy";
   };
 
   buildInputs = [ ];
diff --git a/pkgs/applications/networking/cluster/minishift/default.nix b/pkgs/applications/networking/cluster/minishift/default.nix
index de11a116533..bb10349470f 100644
--- a/pkgs/applications/networking/cluster/minishift/default.nix
+++ b/pkgs/applications/networking/cluster/minishift/default.nix
@@ -4,7 +4,7 @@
 }:
 
 let
-  version = "1.30.0";
+  version = "1.31.0";
 
   # Update these on version bumps according to Makefile
   centOsIsoVersion = "v1.14.0";
@@ -18,7 +18,7 @@ in buildGoPackage rec {
     owner = "minishift";
     repo = "minishift";
     rev = "v${version}";
-    sha256 = "0p7g7r4m3brssy2znw7pd60aph6m6absqy23x88c07n5n4mv9wj8";
+    sha256 = "0v5hngfz393yi3x4c328g5bjazw02jr59ljqh6ws0j6wzxzm8jxf";
   };
 
   nativeBuildInputs = [ pkgconfig go-bindata makeWrapper ];
@@ -28,9 +28,6 @@ in buildGoPackage rec {
   subPackages = [ "cmd/minishift" ];
 
   postPatch = ''
-    substituteInPlace vendor/github.com/containers/image/storage/storage_image.go \
-      --replace 'nil, diff' 'diff'
-
     # minishift downloads openshift if not found therefore set the cache to /nix/store/...
     substituteInPlace pkg/minishift/cache/oc_caching.go \
       --replace 'filepath.Join(oc.MinishiftCacheDir, OC_CACHE_DIR, oc.OpenShiftVersion, runtime.GOOS)' '"${openshift}/bin"' \
diff --git a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
index d24a5780315..96b5c8a0fa1 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
@@ -19,7 +19,7 @@
 
 buildGoPackage rec {
   name = "terraform-provider-libvirt-${version}";
-  version = "0.4";
+  version = "0.5.1";
 
   goPackagePath = "github.com/dmacvicar/terraform-provider-libvirt";
 
@@ -27,7 +27,7 @@ buildGoPackage rec {
     owner = "dmacvicar";
     repo = "terraform-provider-libvirt";
     rev = "v${version}";
-    sha256 = "05jkjp1kis4ncryv34pkb9cz2yhzbwg62x9qmlqsqlxwz9hqny3r";
+    sha256 = "0shnj5byqj3qzyqniiy1dcygd8xw1h2bx9z6mgcydw8k64fkm4bw";
   };
 
   buildInputs = [ libvirt pkgconfig makeWrapper ];
diff --git a/pkgs/applications/networking/instant-messengers/mikutter/default.nix b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
index 3c267e612a6..42888da842c 100644
--- a/pkgs/applications/networking/instant-messengers/mikutter/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
@@ -56,7 +56,6 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "An extensible Twitter client";
     homepage = https://mikutter.hachune.net;
-    maintainers = with maintainers; [ midchildan ];
     platforms = ruby.meta.platforms;
     license = licenses.mit;
   };
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
index d9f26fa72b0..5a2d3b22032 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -3,11 +3,11 @@
 let configFile = writeText "riot-config.json" conf; in
 stdenv.mkDerivation rec {
   name= "riot-web-${version}";
-  version = "0.17.9";
+  version = "1.0.1";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "1k7664b0yxvzc7l8mnh9a0kqi8qfj6rdjblfksrd3wg8hdrb7wb1";
+    sha256 = "0p2aj8zj1ynn75g0rjyx7dkhvcmvh3d38wpx0hf4fvg9q13vby85";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/wavebox/default.nix b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
index 5ffae90f195..7cf46470bf4 100644
--- a/pkgs/applications/networking/instant-messengers/wavebox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
@@ -8,7 +8,7 @@ with stdenv.lib;
 let
   bits = "x86_64";
 
-  version = "4.5.10";
+  version = "4.7.1";
 
   desktopItem = makeDesktopItem rec {
     name = "Wavebox";
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
   name = "wavebox-${version}";
   src = fetchurl {
     url = "https://github.com/wavebox/waveboxapp/releases/download/v${version}/${tarball}";
-    sha256 = "0863x3gyzzbm6qs26j821b4iy596cc2h7ppdj6hq5rgr7c01ac9k";
+    sha256 = "0kyi84wdvd5363vx7bhss3cmc8kfdkrs6h8q51hscrja3qabp0bg";
   };
 
   # don't remove runtime deps
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index d52d8b6b31e..6bdade7198a 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -10,6 +10,7 @@
 , rubySupport ? true, ruby
 , tclSupport ? true, tcl
 , extraBuildInputs ? []
+, fetchpatch
 }:
 
 let
@@ -27,14 +28,22 @@ let
   in
     assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
     stdenv.mkDerivation rec {
-      version = "2.3";
+      version = "2.4";
       name = "weechat-${version}";
 
       src = fetchurl {
         url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
-        sha256 = "0mi4pfnyny0vqc35r0scn6yy21y790a5iwq8ms7kch7b7z11jn9w";
+        sha256 = "1z80y5fbrb56wdcx9njrf203r8282wnn3piw3yffk5lvhklsz9k1";
       };
 
+      patches = [
+        (fetchpatch {
+          url = https://github.com/weechat/weechat/commit/6a9937f08ad2c14aeb0a847ffb99e652d47d8251.patch;
+          sha256 = "1blhgxwqs65dvpw3ppxszxrsg02rx7qck1w71h61ljinyjzri3bp";
+          excludes = [ "ChangeLog.adoc" ];
+        })
+      ];
+
       outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
 
       enableParallelBuilding = true;
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 47a104b252c..34361e1dab9 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, wrapGAppsHook, autoreconfHook
+{ config, fetchurl, stdenv, wrapGAppsHook, autoreconfHook
 , curl, dbus, dbus-glib, enchant, gtk2, gnutls, gnupg, gpgme, hicolor-icon-theme
 , libarchive, libcanberra-gtk2, libetpan, libnotify, libsoup, libxml2, networkmanager
 , openldap, perl, pkgconfig, poppler, python, shared-mime-info, webkitgtk24x-gtk2
@@ -10,7 +10,7 @@
 #         gdata requires libgdata
 #         geolocation requires libchamplain
 , enableLdap ? false
-, enableNetworkManager ? false
+, enableNetworkManager ? config.networking.networkmanager.enable or false
 , enablePgp ? true
 , enablePluginArchive ? false
 , enablePluginFancy ? false
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 106be4fddc4..2fff46a1737 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -12,7 +12,7 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "0.28.1";
+  version = "0.28.2";
   name = "notmuch-${version}";
 
   passthru = {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://notmuchmail.org/releases/${name}.tar.gz";
-    sha256 = "0mcsfkrp6mpy374m5rwwgm9md8qzvwa3s4rbzid4cnkx2cwfj4fi";
+    sha256 = "0cg9ff7h7mklgbqqknxigxxx1j3p3s2a9cxvrs5ih7j56f04k9l5";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index 952d43b5d21..1baa173010a 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,585 +1,585 @@
 {
-  version = "60.5.0";
+  version = "60.5.1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ar/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ar/thunderbird-60.5.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "a7c504be6e0aca6ff56d8e6d601f65359475e7e273db3e2a36e59628f0a866ff357135d65bdcbb7e307eca71d625b37860ba1f2c56e785a2335ae45e6221f26d";
+      sha512 = "42bba29f92dd86f1dbbb0ffd2e13c464b62b418c387f83167e82f9a2d6f4953329bb3cc772dc1d2dac10471c1ca1004f17f0923160485802fb8676677ac73912";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ast/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ast/thunderbird-60.5.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "5eef1a697a2c679e11a705eef80affc8348be10759ceda87ad2e243388ab8b888613937a5aab74793287201beb4809ff3d3058996dd805485f2e78ce161bcbac";
+      sha512 = "3e15886ac06c83d33d33dd49afd4256ae52ccaf17a9b5cab69fde9ea4598803a4e8b8048f1132d7f07d6fc15ae65e272ce1ded92adfbffca0c9ca28d56904483";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/be/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/be/thunderbird-60.5.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "583f2a3cb125e260a0ed60f0dcaf20b2aa4d15b9110adb1a13903a1e410b72548079ea09c0d38d64f7e2d46899337297585d0058ebdd2db87fab16a7c9249357";
+      sha512 = "f1ce8a443ee22e6ef9aeddd609408c75f66fd162cdc68dc8bdc70c301e5937d1ab6c3bdc021646e36e7d6c39b284d74742049a1eb0f9349c3d3c11b2b49a90fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/bg/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/bg/thunderbird-60.5.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "311e842ae47c3f6be1d949e679fb45f86bbf384ff8b46ac3a8486c9f3d8243a84a791e6451226bc2c0f744df116f1fedb4b45b9d14135b8c085b6b84aa4d20d0";
+      sha512 = "be7c25bcb9688c4f90e6496b1c8a1ec3e58753aa4d9eb63e84863013a4ff7dae92e3d9e299c509191bd8336deb94d30ebcb44ea39b881e5bd974427d8cc2de72";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/br/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/br/thunderbird-60.5.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "853f15d2c300d35632a887a1f37b95b24330745418997e4cef0428590531b5ae7d1980fca4bd452c005d5fc8728d5100a37c11c8431105022e0d1916530ac65d";
+      sha512 = "ed4ac8a3ad7b1b6b4b553b52b1b00c8590872bac407ecb539f3f8f3f94579af85ace6196525a93e1f726ec8ac9a72c873d438737a09401673970e923ddd0dc02";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ca/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ca/thunderbird-60.5.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "343bdc91705f915bd6e04e5b619d06f8f6a00933b07e2d26beeb1e573ed98fab0ca24755440e691c38ef6bd7ac804cf438674a5cfcd66ad306785837521e5369";
+      sha512 = "74303a6784bf8cd6a40c3dc548476f67bc1bfbee163999c873635af7df712139a216e5047c61ff3613391f10b1ede6b7d1520e9e30b9d100f731607a5314e56f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/cs/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/cs/thunderbird-60.5.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "2b2a850c5159f882bf7c34ce353df05096308adbb19e7bd9031f5ee7895634587d19fe1f9951efb9e6fc5d9ca0b4b34b1c76f64139468470bc28b75d88800fa6";
+      sha512 = "cd3a2f34c084c6e8bb628a73979940d5c0a37608173faee08cbba289af283eb2f9b6db494beceb72ccbc235f2ddf71b2bd966f9935d90efebe6042d463a50dbf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/cy/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/cy/thunderbird-60.5.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "712b9d2fb19e4c64043632596a6372ef483f58530562b2b9a91b286bb114c2537e7ef263908084e0700124ac6eefd95627d0c4f65b53b9f280adca596be9408d";
+      sha512 = "d0fc024e76e496fc159e70efc7e50416375c8666ee07ec858c15de9013b8e4ccf4fdac33ba5b2969c76e7a0e8ed4474377528ca46ed5701b17deef3940b971fa";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/da/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/da/thunderbird-60.5.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "2137b7136243a4645b17d68cfcb737d2ab8bd32fc0f6b92f905ca9956f66e34f3c469770b382291d7c1acfa40ff9cfd030fefea80c0993be2dccf79d7440c595";
+      sha512 = "700e73df23ac5e3d193d147f317c55a6a356b8a87b2bd35816946a8c9a4ffeab857f0c9461a8a0e2568827bab92cad388010a540e0959d14fb1fb36d5d7b683c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/de/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/de/thunderbird-60.5.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "ca924d5e4e3c0cb6370812439f69f423a26c708d5ecba98dbd552c2ffaa9d1f245e0d50522701637a2a3927af8d28379975a5f5136fb1074589ac909cb553577";
+      sha512 = "bf3bd905e89680a2ed6f123d45f9fb554ef1b1d93d9048aa0680f2d9a0d2c882f8100ab45f0b9d16fd0411b3c93e884561bc37680019c4a1cc90d5014144d199";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/dsb/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/dsb/thunderbird-60.5.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "1cb2674fc282487a894c6d9543acfb89cb0b864a2c8009c26689ef80dc58d3e2b5403cb5d8dcdf6780ebe75d0bd239f819809728e5692b9040fc60d9b9070ed5";
+      sha512 = "58d016161ff90489ec090cb5f62593f22a29bf87bfee689f9a5489f9ca711d1a08199e48fa7624af324e051b96bf4cb1fea8c25f0cac5a13e2120067966a8133";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/el/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/el/thunderbird-60.5.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "13562649882d4c451b8ad803772e51b76c305aebf7a8fc0ad1a91233128dfbaadfcb1cd98b6f38cd654f7688b43442238a7ddd8ff3a1d240aa7427c69e2d5838";
+      sha512 = "8edb85baac50532067832341fc15fb01d6ad5338c1298293926aca2f3bb604623de495f95dde78a1d31b669cefec7c62b870f3d324e1d18787bf9a4b17483436";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/en-GB/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/en-GB/thunderbird-60.5.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "a27e2fe4be49c3726e8484de21540a834355395fb2cb18ef3f36073b09658f053908d8f1e058e4654bccb9dddc2d23de9a8486be74d86cceb50ad88483ba856a";
+      sha512 = "39d7b7996d46cbba174780ccd31e86b8f168d5c7af9f3753ffd6c6b6050aa72d6863c5287db3f7f9c30fe80a4f20ce8a9918b9f37471d8520682ea4c34bbcc16";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/en-US/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/en-US/thunderbird-60.5.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "9794dba4bc6d6eb1d3852d1ddea087fa4561227805dbbe7ab1707d155606ed43d826b94b4a9e28a4f87b234b0c249b05cc00056a76db77af878cd4698835d469";
+      sha512 = "99588bd58ef55ff7f9b8b248bc0cbe04707e0f94ccd248f0dd7caa4c1f21945e694deee3b41258c818c33cf845d9a38854a6ded5e225332752942da7dd0bfdc9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/es-AR/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/es-AR/thunderbird-60.5.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "c90d4962fc67025fbd96d7589ba8cc85952847bae3c8b414653ebb0a9d52d4fd44e525de3e4b473e7b00480c6dd4f0ffac9ba39fc574b09ef77b98a4c60e2273";
+      sha512 = "e0e28a36de8eb088c4f56044198175fe87968fb977cfe515aad3abf28b9846f76c575a03670a9a618cf46f9906c0086f5a671fd4440b3aa4614bfae0799743ba";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/es-ES/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/es-ES/thunderbird-60.5.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "2cfdb9ca9894679c12cc11600f81d36c335058bff7c972fc58fbf9a187cc2f5a076f2a33a99174f23ade52dc4429a09b428ec593036a2a9f4bb332054f7fb92e";
+      sha512 = "846ca3ff9847106cfa23a74ca3add2d7a12e5b192734ce0f2a027fff037e8ef8344b60fbf36ac678f20dc2292f7d4cc44b80fdd644af6ba839f2648fa996cafd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/et/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/et/thunderbird-60.5.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "4b54a9125bf73597de7d7e938cd90f7883f5727226f85381ba68c0efd9c992cca54174d35a87f64b55acd7bfa7c6bd030c0a8772c156643d66612425dd083931";
+      sha512 = "9a5c4616a40df5c35629cfecb1086f43b7a159ba4c966b52022e2f7a6b9d3437a0b933cbf3b857b708b349e2dada43dc82cdbeb2824a9b3c49fd466bd1dde89d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/eu/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/eu/thunderbird-60.5.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "db068b8ab4c69d4db2db7beed88271784c721c00da6801d21d4bc80d7513ce280709697159480272b6d00ff2ca15837e391f8ed09e4dc1bff5672269c4f3ea82";
+      sha512 = "72950cf78c2016f6c7679c6d4a45c39a3b325c491de0def38758556f945867d8299678abdf1de052e5a18079753a820b7329935ea373b0c5cf32063efe953471";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/fi/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/fi/thunderbird-60.5.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "e38204468383af6ad5646c1c6794dce99aac7e433db093b8a27dda4f8f4bbabfb94a2ca9aee1688d1e3e80535302a9470143b63b04c6a15b24ffe992b856cc42";
+      sha512 = "ba815c3de1a894cf616c2172528c045aeb4768c237abc6c11234c8e6d10aa80b7578e2c9e562957bf6e5f757c0fb5fedf65a905a2c49836e08fe18029bef5065";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/fr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/fr/thunderbird-60.5.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "270cdad1d1f29bafde453b23ec4aa5f9476e8f3163af9e382d89af1d735e7ed1948f5093f6fa6ac1f0a75fb978dee28c962d7fa76df71eac321a6a5fe651bc97";
+      sha512 = "3da8f0eed4096f64ac297feb87e902a943ac025d8db66ba48a56456d450fc6bf4f00c729b4b72bdde4688991a1a6eafe8f71f91859bf3d3b0db80b9953035d42";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/fy-NL/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/fy-NL/thunderbird-60.5.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "1d7168e641d87628bf09ecd04e30381a6bcc74d883f3efabc660011356a7aacbfdd775a1461fd83dcc8ec778703db9f0157aee409aa941273ea8a387ca86214b";
+      sha512 = "b49c4b191651d8f22e23c7ba1a7a4bf28613162bcbe9926dab9ac42a9c4a96e26bfa74bcd6ca5e0fe8c43070559990f885300c71cb3638eb96efdcb307f9b513";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ga-IE/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ga-IE/thunderbird-60.5.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "8b22f0b8432d596bce69f268b2659edad80ad9820f8bd47fe46f2bbe2cc7fec6fb82484c331189174cb0225f787dd3800490792fa65c4423f0dd2c8e1a1f9855";
+      sha512 = "fe360cbd6e9b4cec554f0f9e72501707aeb7b52c9dd783c028b447d79a0172c6b42ca52593e5a6251c4090fddbf15ed21d2ae97f055c2a1d77efc60e5c63eb80";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/gd/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/gd/thunderbird-60.5.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "46d4600a6b6b9bb51557ded0dc15cca7fad68632950809034d2e2c3dca775fbb819da6daa015660f8efcdd623af7aab69345082f9c6cea7168f8ca9147e79b84";
+      sha512 = "29b6589c431ea3f5e229a2868220ddf2ec4a9146cca6cfe02cb471eeddf193d8795c1944582047cb58036be97a83a1dc87797623bf46fe856f7bf6f52d2a73c0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/gl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/gl/thunderbird-60.5.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "6b7edf07a4bcc32c510b1af29d6a5ada2633634ba73b3b7c59992aedd9826b5ffb1b6757de2068e79605a3ea25392f9bef2f6dc630c21a05e5d0e70187cdf409";
+      sha512 = "60cc4f02e9e67fb774eaa21ed6c4525b0bcf3ea59c52934b043921b690405d53185336acd3c47a34f03efc2585b29384764614c6bd24359a32f5294872208fb4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/he/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/he/thunderbird-60.5.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "2d45998bfb4244dfc450bece949a28523364b73018e64b869773f7288cdf70edfcf2c943227c8838271690edaee7ae6c0fce2db81829435aac03a9f6289b3c38";
+      sha512 = "5f0252d6e36de08da28520b72b2d43539652c8e38b12db525e69c8cc459244e7304904d334730728e1887fcaeeefc45ffa8998a59d07e32cc219d9b437dbedb4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/hr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/hr/thunderbird-60.5.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "6c9cc09403269a7c224cefdaee3c89c3e3f8c09213b5d993f4ad14a53a18addc07ca718abbeb750499e5a6e663968cf05d7cbdbbb4fb4f6752319882fc314eab";
+      sha512 = "fb986a942ea25800f2eba0f98fa14f1fca71d7fbe55040d4ecf70013be413cd3afb6c323e35a76b085daa6ff2defb062e2d27c8590231ab5b0d87125a8f3d1f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/hsb/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/hsb/thunderbird-60.5.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "f1bc1460b4154191ee3b2834a5166a93780fc8ecc1e6d840ddc2191b2e2d40e41897d2e256581af6c1e72a7234f8418ac4c70202f4cbee709df4801713d45455";
+      sha512 = "f7ce5acaaeb88a1322d78e9d66378dbde4a628fecf1e196efaf42ccc6ca02d99192dd3b8271399d288cdf74233f7c42df5e4a2a6e44d22d5c177c876d857e4be";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/hu/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/hu/thunderbird-60.5.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "f0e1957f86c997f3aabed4de02b8baa3095d926b51c51fe34169220a56bc22c717e5e35fdad3e8c2e468e31ff3f306e1d531f25ee13bf32f7b1d46534500402b";
+      sha512 = "9319cf8f6e297bcd8d263bd6528adf6eb63560469509482d0c9bb24488c91865d97084ce6fdf2aefcca4585d64c83991438021bfcacf26861eb5db42cd6bdd9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/hy-AM/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/hy-AM/thunderbird-60.5.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "251723f41fef575272a77746992cdaaa0d7eb3ac0faf3bc173a6f3cf98ed8d2db42f4a30b6221f23a3445781bd9ac2e13dd09f24f9b81e4e4aeb1f5cc8a126fc";
+      sha512 = "ca4efc6abea252c4637966718fe7ce7015325edefd4209216de3fcd501b86744349be48fb19ae21a8bccb98848cad8604afcd48518a7a42016a999adac5b0c0d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/id/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/id/thunderbird-60.5.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "6959c1570961e23deaa44f1fce85c36ab2d1f199a25c4f9f9032e2fe35ac22366796e140b481f3f312d5f945d5a454a2ec1071232389bb56c4a824d3c9fa65b7";
+      sha512 = "deec3df7b9a25e450000976fb03389d06befa0429ed4970327f9265d6576b3a914646c192bf857c47cc1881a0e71ad3b52f98c6e66cbbdc43103715cd983f118";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/is/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/is/thunderbird-60.5.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "005c161d7afb063f69373cc5d0386681030d5814cd3f9ad29b7dd8542e89b9980583958fd37133e8c4c24718f00c1dda3f26699703efdf292a6dba155981c41b";
+      sha512 = "1d88b0917f636a48af360003d57f30b9e4eca4d6ed026184a475f980abe7f1ad011306dc542ac124fbc1787f386421ef1fcc1937e06432daed92b835fe4a7865";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/it/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/it/thunderbird-60.5.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "66e9a8dcc190444eec6dec86f4e2431822db5401164da646bf233e407519a9604ae0f253f673f18b7bcf51a96822072eba327f8fb6f6069b8e3ea88c837f012e";
+      sha512 = "2a4028b462dd764e20f14cb97667466d548482ca28d621e4e830b8aa29ccace76389f0bd9892b5ad4fb54908bc83a7975a0dde1129ee54d7331fbf0682fc445e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ja/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ja/thunderbird-60.5.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "ae532500843bca4fe72e357716beb84235422f7addb25490e12d74374a619c6090752672aa6ebf1243340376524c177a738b32366a7eea9d4ac9e9e4ca6885e1";
+      sha512 = "89568859a275424d00581bc596172fd8c5fe562c01087d9d63b734874e91f5933d80123d66fabb34a09f11638a5552200ce32ce13a4eb5464af380332687381e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/kab/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/kab/thunderbird-60.5.1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "cd1a06c8a15834e5815b521499a55b6bc9fc691465413684c951ee080edcb93196cd0a49b8f098279d44b689858847a2c8970207ee02dbb9bddce4aa2d2e4325";
+      sha512 = "d20004efd3285670ee253d519cf1cc0d6f0fb6f3b95b0c4b96e56a9bd1d8c6183accaa1989b1038fd69683fd2aa3f5ea68a545a965c6c4d9a194eae2941d7d55";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/kk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/kk/thunderbird-60.5.1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "13f278451d277bd0613be65aaef6508efa376ae5502ae30e8a1122a78aab913228b979eb1bf237b2efd3e06a01abbb705499c57a8a80ab30ce8763c3c360fdc2";
+      sha512 = "9d3963346b80e8877a5edc49a76dd0b2d26737ff887a3f2847df8e9ca359966575beea15b9390c1086c1a31690f0d70a60726eeecace1bd0f9490f2fe5d99c96";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ko/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ko/thunderbird-60.5.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "d0db064a46fa399e53968b552ca546638b3aab25ad33986740c3c3fe9d3de3baab3afb2e57c51f9369eec00e1d91fc6cfba0571b39cec4f5e794c92af22a91a7";
+      sha512 = "3d7b645f5fa84bb6d22bbcd5d4d963f56613836e3da1396188645c82c5b3519723bfd041f9f3b74b7da966c6700a0ce8071662683791583ef09ba252a053c5e2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/lt/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/lt/thunderbird-60.5.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "4bf5a6287fca31a926d0ab360eea47b3dbe3147fbd807dcbb00effc1ff6a868c80c3e7f049ab976050460c3a820fb5e709828f5348b938ba767d5d7a0ed4e573";
+      sha512 = "c8efa6c786c9075c8abcc9c544ece1dd25b299bac3444ff510858c32c9ab7e162104bad236edebb7b56b4a1fcedc9c1794acb2c2b907398d3244439750cc0d04";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ms/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ms/thunderbird-60.5.1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "9b6150b49b0558fe5d105f237235eb91e08d9bd558e891f07dd4fde9e6628c86ff95629dc36c8085f0d1e418adc164275f8bba357c2a8d9e56e297b3a47f8542";
+      sha512 = "42bfcc826317bb07bc54fc2c14b27f784faa05fe17c5ca1a5e7724a47490488856172a595aaa4f56b01ff6f702c3eeb6715da5e48df2af67832d2b4bdb979e1b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/nb-NO/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/nb-NO/thunderbird-60.5.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "6d350ee2337644375e2b2963168d0f3ebcd9c73107df51e7c52c697179465aeaa19120e08b87a32d23b3cdb988a9843765035ab8c34715d84c93e15022afa50e";
+      sha512 = "a4b21d7fb17a73f9e75a7d4d9e21ab87d276200e346f3078a70ebbd2e270a73120ca34d1c15c8e06416a57aa4a3cdc4c72dcdda0892abc657a9aa089dc25f04d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/nl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/nl/thunderbird-60.5.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "1f882b7b0a7d81f0692d7839ca41bde17e64547e6a5b5560b70cd129206f3498b2b9e0ca334be0588d58c46c9445b3d854624669b339de1a2cabd734f725b34d";
+      sha512 = "9847949b60ad60848dcd200acd4b4b4de32f9f605740c9fe24dbaa79f6e17de2ca5f2d50a70cbe2b823cd25ab9e1221a475be6ac87ba0124b0ad2c6ecf87a30a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/nn-NO/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/nn-NO/thunderbird-60.5.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "538c626f409c26a934d22eac6dc2a270134b41f65023d375e859ef1fb5d8c9d7f1a4adccbedf4507f178b7fa6cd5267328a555ed0381a42a661678d5e13655f3";
+      sha512 = "38b0c5f3d48e5ac17e76b6ab018913a3af2470b59cb82e21dd044104ae84fe0354fd212210bf36cea0c13b9d500ba6ce41c6d55da6f22a71d0b9e9ae4ee45448";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/pl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/pl/thunderbird-60.5.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "09a3c004f28ccbb558b8a3225b436bccc426e1db6ea19595f1747f32f547185563fbd4ce1e18f6e9d5202258617c299637776a33758f16ad355d3c4ae28f5258";
+      sha512 = "2d7952a4cc934da58697dc2ae8067a6ecc3dc1112ab32e9592c8837919c55487a9e4c84ead5520bdcd551d5dc656cb9b1a913913f8e0f2b2b79c07e4889f46cd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/pt-BR/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/pt-BR/thunderbird-60.5.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "55a0e5ad69cf65847c480c8f95c7abc1a2ddbd9d76f6c46946dd8c00e13a5225390fdc695ab08a19b982dd646c4cc17406f1438c063478f57b4940180e2cbb6c";
+      sha512 = "e26d527c462e4682375ca21827a8d4decfea599af0e8e0dd399de0e511f9ca0d41584847067f787f5df0e9956b65c0f9da5edd68e9edfbe4283e5fa3ec6d019d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/pt-PT/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/pt-PT/thunderbird-60.5.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "fcf20c8bc18f17760de354da5c2fdb66573462d7473b53438f9b8b5500b774ac6929c10672b133a9e0651c8d9a2315d1ba402ae29eb853b3f51fc46f41bd360d";
+      sha512 = "815769609ee977104f0819099233c4d8ef0a7ad87219e09dab564d1a6b98534e26fd0f6f07458d762cbd03e1a74f152fb4bb4707430c06e3b6322c4f23b17673";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/rm/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/rm/thunderbird-60.5.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "1501a132c1b8ff0e3e83c0b46214da1f486556377443d4843b6c47d2d76283ec316de71421efb98f5797a91c93f7848653333dd9f68a4fd00a544f2e9eab196b";
+      sha512 = "8e0bd0cf42206ccfe5de8e4a5a3632b67603e88acbf72f7b4154d1a4d220458e1d6aa57877da728d9677b6fbcb88ce8c71ec1fe7a153a3db82267533a2f15634";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ro/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ro/thunderbird-60.5.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "9aaf01be9fee6589ea007abd9d87dff117fb54c7daf4a7e60012dc4feaa7753fe828106d5683e7e7c9502ff1285ac14e3448fc8b8ceb606857bd2ffb7a02c3a5";
+      sha512 = "046706f9701bed310895bb39704e6852a4323efe25425355cfb816033814682b5150880fb77e72361bb4893f52be08598ba29323fbf25242dece1ffdf4fba570";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/ru/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/ru/thunderbird-60.5.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "43e0428391dea8dea045d0f449747d63cf4f54babd28c2aa69f7d8a2646448fd61ca03c4e9a561183932e32f176058f90ef1b6e2524ea97b20e6e83d2e77d63a";
+      sha512 = "3e348bfe2fa4fd8a27f5aa5e7d32b320577cbf5b64975392dc8a9fadbd5ce1ca2927b4a9563b7a3b578df80d6b0636c032380a1da6d750d165a20df5bc898d7d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/si/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/si/thunderbird-60.5.1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "ab29abff8c1712828a735349d22f9a9a38279d6cc64a76ccb7140f9e1ef3ddffcc880ed1712d2c7ce940d0acd362fdb5614ea55ab0572c32ed9a32e76e7018ae";
+      sha512 = "378a9ccdb98cbc0df37663880a141080ab1f312d17b9ddcfc3ab7102c55bc130f46b79a84ebcad0fc0844b1f511bf910db644b9aa2ceaeaf0191d079cbf9ac43";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/sk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/sk/thunderbird-60.5.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "53800308ecb682e8044bafacd997aa8fbf867708fb4a57a793ffdbb160813c576c74e8ca45ad7a3cc85314ab8d88170ab1ef95500d2e946dd3ee6fef6cc9fa20";
+      sha512 = "c0c3e097f4b23cd3c2d184bf03a4e8027003a0c143b09e89dec457df372b239f7d045aeea0b3e106c1ea60b9100103c17d82e611011488275c735e25b632c0b6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/sl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/sl/thunderbird-60.5.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "12f3dc57e9802efe083a8e326759c37bc02866875cd1994504b4af2810bc5a2d2ef01c3b94e00eb13edd45acdbc39011bb197227e107ff62c9cf819361e64c2e";
+      sha512 = "af5cdbbe141e5e913d5dbee9afd02d1aa452683655224091ea4956f4caa28a92ba1a3bf4d7325011181e11f377aeb0990be30c0409e3839b693040b9f0154ca8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/sq/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/sq/thunderbird-60.5.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "8dc5816e8d7eb83eacbe5e07faee706df1e3494110dc108cd251f1f82f568452322de3f21155254e57828a17a79636e873eedae168d061e55977ea97bb8ca209";
+      sha512 = "3cc134a77f4235c09ba95ea60e40db7a0be5b3663dd655ecf8cd8e490804e9c22d467783348bec53c4e73f9521e063e6b6e55ea5508ecd7687536bf1bf173ec7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/sr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/sr/thunderbird-60.5.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "6efc1e94b08a549ba573be41a6c948d88d99761d517a250f16db65f998c9cd2f59191ee52ebf37c9efe0e3ff2fd3dde78e01a3969e1f8f78cdf4a3e990266908";
+      sha512 = "f0ecea0810eb21b78c099d5cfac3c9825114fabc608a52244d3394b8af1e296bb76f5b8656d164faf80d770c2be84ad74f0cbb8a71029fe6fbd0a1da4c193444";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/sv-SE/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/sv-SE/thunderbird-60.5.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "6efd73ee3a822cd0da2f50191b00823f76670aea778bff284a4a41da7ac0ccdc62d87e5153ec63d3d9a85095c7c9a642b75f34fd013a787e116b4ed13dfc10ff";
+      sha512 = "a0676f15038b5aa4323dd0a5c4769b55da3450b72982bd0a08b24a1c07ec27c5c267042508109111e6aab181904680072aceda154af0363ccac1f572215100d7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/tr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/tr/thunderbird-60.5.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "a14097ed2dcb4dcc491a156da59e783a289b59e564185457210bc27fcb424bcbdb7cb73e3e8355a42c7d50ddc7c748471fdd71f95c28fbf55459779941146f3f";
+      sha512 = "02be00e15e625119621eda8c8204cedc13bc6a71ed020bca4d2fa4f0c2267150638ea01b88adab61b6ce76e91ea6e197e3ab981f85a253b253f652ceb74f6dba";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/uk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/uk/thunderbird-60.5.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "9ee014c6c5c101ac7406e8bd518ffb8f89afc355e8a7f902b0f270792ffa21dd2bd7331f3c9a443da3d59d8c8be92c38996433f382e268d97b6ba3219c58c887";
+      sha512 = "3a785b5569bf9d5c95cd3b8bbf7d8c07b0e994a2bc239a755106cb21e51032a29039f0fa5a1395a803fda106b2bd2b8a7d802acc48c406fee698f2d7c2c3cf37";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/vi/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/vi/thunderbird-60.5.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "9990aa383f7c4690928e013619df43bc3243380c82e28fb5945ba5b658f5320add635c5990637318963e143005c606dc3822438906b3515a0e31fbb8ce42f539";
+      sha512 = "fc684e3f3d9614a386e1f2dfe6fe7b3880be13335b567c27ef7c593dae97b6d4d2d272a14747de77d09b5ef9ffb2d860e2cd1b2f4a833a9f570c1d56a2548fd0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/zh-CN/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/zh-CN/thunderbird-60.5.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "aa058cec80197898f3438616ceacadb77fe0d9514888a2f4ec24345bbb7cf29398ab631f6dd219d4f430965d2f5c9ec0997fe5d970dcdd46db07b48f34e2d4d8";
+      sha512 = "748c1fedb6b1caa3f6037c1554af8870ebd8ade3b242f5a7561c8085b70f13aa4452e0ad61ba5d9430455246468f21edb92d2651f36dfb466529feebba662c66";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-x86_64/zh-TW/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-x86_64/zh-TW/thunderbird-60.5.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "4cb695cea7aae0bdeffcd3f813e1af6160ca94713fd4473955e8b97a3af50b9000b9dcff65b7d9cd0f0998b19f3972cb0cdc1ef59a2ddb1c2864a13dbd38dd42";
+      sha512 = "bb25cbdd2ff483c20d3fed558567c82aaba2eefff5919bf7f513d25e44f1918377e17c65028642436f7c5f178249a5fa389235268e3b2b1ff00a85275ea8ab2f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ar/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ar/thunderbird-60.5.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "cbeafab4f34c01eb3fef68a0d3c04529890b2be84aa7ac57d455a15874bcc42eb3d632bde90443ed434d1e206564a22809168c6860d4c5745f430cc74561bcf7";
+      sha512 = "1976c20e7c5686ccc96da87ef5afe3dfb8d5fd5a9a0a24322fad8c09fcca7cf2613c2a029792799d417b6d1ef88d79e15697cfc41d7c7656f17685cfc4593c12";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ast/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ast/thunderbird-60.5.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "15f11b549e3eb37a93987b37f7e11c61a4ff272c771c37c916ae48811fd3daf37e317d79d6963c855e0b57fc9a038285ff67276caeb993803e5b9029bef60dc1";
+      sha512 = "7327b5cfc0331811e932e1748c01e3365c02bc0e2a1a59620f066b5e02aa55b97b7d0d62f7c45d920f0d9fcfbb30684d8ea504ae404494e19173cfe5dd3ada52";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/be/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/be/thunderbird-60.5.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "ec9f49af00bc52e7b0986ec6087866e74a9cf79c053cd2b3fea7c2298e05bd4cf4f8db52ddb2a29fc4570e1e87752b4c7defea42119cc9f36bb1e5a20eb68129";
+      sha512 = "7188c82333bae58b88ff4dbaff493161dcaa0f515d26d7bc15984556265d11efb526a0597d84e6db95d2a65384745a4229945f3f82d26e62d853bb8faba7ee11";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/bg/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/bg/thunderbird-60.5.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "608cff8c2fd63d2a2d0e72a811f66ae1749233b2e280920691e83ff2574c548002b875fe6b7dcf6a33a6f4377f28bbf9e792b972473e0775a07462f3e1c0a3c4";
+      sha512 = "979c588c3a6bee2c712310879ef2f971731f2bae504d5631d30ce53fe201bd22ba0d5dce0a4b2758c994f6ddecf3a3d4c04b3c173f575d39579fa8961d60b28e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/br/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/br/thunderbird-60.5.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "eada41f8e8aeb882e30d0d6cf3f902a1d60a3570fcb97ecc967800f5ece6476a0c85b603634aba61cd49e3da460329fd142ca046c1af3e15a80975cc1bf38673";
+      sha512 = "fe36fb26ab14c7da712a077199ac24c22e7d8a892f35246e76579a70062476dce362fdc13911332b8a017d57a51e580227a5ab774ee1b8156711ce432e1c958b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ca/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ca/thunderbird-60.5.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "252acbe1e6939c261b8667fac28b6e7b721b0f727fe04c56b1a8336cec6be656ae5520c9b1b2e42ed6eb9d114b422d9828644986f3f813dfe7d2685c0c7be342";
+      sha512 = "2a3ae6a3e3297abed7d1202c55019dcfcc71658345cf0e35ebdab765ab9d35408450e5d7121fb5767409f6923e07ada832221785546a417ae390bc1c8b376cc0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/cs/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/cs/thunderbird-60.5.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "2cdbc81bb46d466756555694b2085b16dd1adf7fc4d28b539245397e5869f572fc2f57f31cead69873dc8473f69f3b6232fa24ad8ee023b103a7ec3717229b75";
+      sha512 = "5195590d7687e942c6a46e11c3493d00c0e4362cc9dc1e4fef5427ff18161f48caff02f700c862da00753d8b9b7929505d1626a1f33b40c56b0ebd965cf00d04";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/cy/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/cy/thunderbird-60.5.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "77130e4687bf0593b970355abe4e54000f5fd6c2d8841698c08e5f0d06866a896d39302b17a0e11aa4d4de3be6606671b620478ab549bbc01f23361161e8abf8";
+      sha512 = "311b612736dcb1b70934f0df4f8fa6b58f01530abb41944eb7cd135b353839af39ee40ee8a8e3f337d1e5d0e2bde706d9c3454019e37ec09e1780b07f040adbe";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/da/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/da/thunderbird-60.5.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "73cbc6babcbdd54cf7d980de09966a7bec1b65ed25e80781caccf6ac528fc9cba68295e30a6b86fda5b2c994070efee4966c836c0c31f58b428dd293763febdd";
+      sha512 = "6bc22359bac0a2d16a25eaf4d0d43fd08922870a36c437f5476d945f2c2988b749e46210b61c1b78952a907d10d1c5604a55585d08a4b1808bf59ee32cd6f816";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/de/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/de/thunderbird-60.5.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "7a2d2b8dacce1141b167342e7416437dac32a631cae8628ad030c53f8be36769d0abc5432dab9fee61d7e44e88401b51df05682835f7827f2eaadffeb982d234";
+      sha512 = "9e88dd66eeea5f77720698d163108e1205dd05c15b6170a7dc8a66c39d85aa58ab07f5f8a55e5db3660056bcdc697500cd64ca720893a54d9737bd34ce099ac8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/dsb/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/dsb/thunderbird-60.5.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "250b268f68ccb00a0d9d150ae5d95fb587eb92576ddb9ad2d94ec9b46e9b749f349efd7248d2bf0f26974d46fecc56d1f6023be570070fe8e4be5b7d3a722e3c";
+      sha512 = "d94f8ed0d637cdc444459d5e79d9f753d290ed0fea0557a0e53603ff1f1d861b9c436219b000783be67acc0bc1ea5d226e024faa8ddd73b259a10807705996bc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/el/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/el/thunderbird-60.5.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "eb59296f685bceb02c1bceeaec13a9dd52301910de3e89e4d62040b344e7c8c3e99b21058a51a19deddff4edf7de18f5b9c56fdc74cf6f2e09482a47950910bf";
+      sha512 = "e632ded7de7e269af5e8dc2dc14c17dce3b15fdd33c00423ecc51e5067a98fc694d600022ae9d0126630c9c9d6768f805dd6bb6492d658524f37ecf5a27dcba7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/en-GB/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/en-GB/thunderbird-60.5.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "48f7819a6e046e6b0a1c35007a56fe13cddc9f0317c0372e23698ca4f32c63ea86efca93f8bfae623b02a356e6393cd5b1d8e02e68d01d949115a86b43a9702a";
+      sha512 = "00b958aa333c0ecf1048051be9c9767949a2c21e52005134ced1e2f25ff1dc4a15b73225fe0fcf7297dbbedbd0a02a75262c100e2f59ee8fac6403e8bcabf6b8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/en-US/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/en-US/thunderbird-60.5.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "d4f838dc573d9efa2e2e5148cfeb0301d1e63da01bd723fdda9a76bc737e631fb232799f16dc91af2d66cc37008ec538a1d58f42a02cfcaa0333ce6e8c9134c4";
+      sha512 = "150f6674dd95932c713c275eb24194197ae52cb4ac08aac49c1c6302e3734cd3de5580878b8d73c2dfdcc18df311654920914d9562ca85f580d560c372f5807e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/es-AR/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/es-AR/thunderbird-60.5.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "972de143f25b5be2ad894e1e339d1ddc05a4f4cb33bbf98a7b7ff2bdaa732c3a9ab8361f0715bac1f9d281a91c6c0c7d031389da7aa7df5c8219a9c74ff586cc";
+      sha512 = "eafefac3a5626c713d39f032ffd11cf65b733dad78f6157a0c83e55b0103301066d825d1cc47017101f8b09e757ef92f30654adea538a00f9e0f0d60b1248c72";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/es-ES/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/es-ES/thunderbird-60.5.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "beb902b5628bbff5917a1bf7bcc72da28db69416383e5f8d1415e2ae19599f4567bca71e6daa278c055b84d25eab86d08a0afc44d9144e9333115cc552b65226";
+      sha512 = "3dbc541e002c2954e427327eb20bafaf126e157449c4f68f2cab2781097faa5a15c73a07bf27c9a841c02842f028bef3f43618781e9b29a1cb86bdb533c2c91e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/et/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/et/thunderbird-60.5.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "3a40cbba30db79f6013f997091e53e55aa8cacc0eb4727aff6fbd8421cf145e872632774b4fa3c32dba24e86db0b34a50ed934ea3b0bf03a979a804ee92f83db";
+      sha512 = "3ab361983dd178f1fbeb97a79dcb4fd13841d1556821a732e29543071b5d8de054da7488cdbb4fd12b80e2b9c7409c0fe177d9677b0d2333ad49d1dfc6fb03e1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/eu/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/eu/thunderbird-60.5.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "7825c7ecd4d4dda4955de8472bdfee394d4d960bdca92cee5cc611811e1fdb99a74a857545862bd329d7b3a1366952ee5e256adac9654c78e7bef12aae686910";
+      sha512 = "e17f1e2248eb6a48e74780b1a908427656af1cf7f9b3cc3a1c3539c80dcb870126e90908b419b56c1cba7e445431b3802ba8e19a5516fc704c383a31c1ffbd5d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/fi/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/fi/thunderbird-60.5.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "9f492498043d899a888fdf3e3071ec22afbd302223c0a158f186663e7f9a7b77f0f758e4bcedd5ce75fffc8e17d010ef0666e8396f38f59909ac637e0f425c89";
+      sha512 = "3e054a95162fb3469ae4cbcccd8c285058fedc661b63cbc43d94359341d971a86f69cfcad307ead734ce22d62c8235a817f943ad111a13e5d7af445bfd905431";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/fr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/fr/thunderbird-60.5.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "fcee9756afdd581e0c6b7f78d00cd165f53c50bfba93b70f58d7dbb92544d416f66977351ac09baee96311c54e42c548f20bcf30ab0070f50d0bb07410bfe5bf";
+      sha512 = "61a3766fdedfd5dc45c203616c7c99c2d72d172d3e9577234d9539e841fce33c495518460262a2ba4c636ed9495a734d13e7ecbf193edbf5ddd81a767e03f8dd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/fy-NL/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/fy-NL/thunderbird-60.5.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "c62c09a6e11e2f66580b4aac2dd1c79fd1a3e7350e0eb274c363be6e1e700d177590af9762429f8d24f1574f82d99a4f9af98284424424491638051fef795c23";
+      sha512 = "3068d8570dada0655f5429064903cb9218fe82e472978f269a91600dfff7a322a3cb3dae9dd24183c7a7ea0184fe520ec32bded34ec640ad3fff7d721b96c69a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ga-IE/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ga-IE/thunderbird-60.5.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "46523d574dc74e4a03296bac0d76253861f56ea56abc1bb47287436a1cf104a6407c11236dfe30611beb995d01dc33c61b74378dd8ba9c05ab48ca2cc8175cd7";
+      sha512 = "ed51255886ccef985c9f684fc7a5f1ba902f8ad256673e4348ac3b5e67445f470e8f62fb5281ff63c4976c92b8f6461f4ed1f5da920e7911b2bfc36d7c86b716";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/gd/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/gd/thunderbird-60.5.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "d6e7c5ccb28e268a002f8b2406d66b6526f551db88cb0fe515ab65afbed281c71bbd865cc3c08d4fbd8c9cd80e852accd1e903afdf3ed380ad45da728402b4b2";
+      sha512 = "4a0daf723de4828687c9dd0b037a8aa9d0acecfbcd72e21b50b737fab5dc8c4689cb8574f8093c1f468f6c52b3f4f05ec0106fb48e005a533fe4f81d94345542";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/gl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/gl/thunderbird-60.5.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "f4ccb0923b860e684cb1f86f939123df0db5a84cb3d475127f207c0503243d59852bf8d96f9119cd239507040d1bf43e36dd6d45df3aa2b2fcf16d9158b05277";
+      sha512 = "046e04f0d9a1c8d1666d81d4fb26a479ad84a243365dc8df50034df3a7e504244eeac7cc0710d81edb122faf022ed94665d77af70fb01ff43be0c7d1dd056e2f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/he/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/he/thunderbird-60.5.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "a77d129eb0f7bfb8ccbb9ebcbb42916d5f302e40847f312c5c68f770afdc8bdf943365dccdcd563a1e3d209bcbe32837c8188a971968fea2891df672ea8e674e";
+      sha512 = "aa6be15596e35530ea8bcef9739d462b1836d5d7d11e540e307e08034458efd0bd890d61dd72aafa4ee93c8295e2f08181f498579fd01e686205a28152488290";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/hr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/hr/thunderbird-60.5.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "38b0efe2b18d7877e9643800f4eaa720751a8ca996ba30d2272f4031f0d7551d3bc9a56fbc4e383e07827e474cce18852f47b2f604c6267277efa4dc82bdc950";
+      sha512 = "28ce82024616656b4a81a2ff82be23a243306c4209f2522bef63b2b4e1315c3dd007a73c20065972d3ef05938411489b4cd2a63d1e79c7fdeac4e7d752ad4675";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/hsb/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/hsb/thunderbird-60.5.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "15a50f310878d0d3680fdfb9b431cdce942071f09cc67f73198c60326958b3f78e4f3715a450dec2ab44559069a9f47e8f20688989bf88dd12e00e3afb18ec2f";
+      sha512 = "70c9095d1e8d63df6aa1544d4fdbf2642679cdbc20ca610de2e66bc15c6013287d079c65b93d4a04566d116b160f0e82136e2d9706083a96aea6045eff74e240";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/hu/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/hu/thunderbird-60.5.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "9da9b732cd9433446ae90b7616c9645e629115ba522a8fcf36f2a62042d3913ee900abe6dace1e50f5b9a775bd1bb08ebcca692012814ac8a34b3d9fe3faad79";
+      sha512 = "fe965925e424ba1023443c5a77e362f1c8880c04a2801c8956ee9873a3027eb1bdc61cbdb2d016781df6388a853a754827c70a2aa200917c854fb04865da7495";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/hy-AM/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/hy-AM/thunderbird-60.5.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "9470da22d47781552ad01b7553b10f924c9d2a5da04d009842876af964f457d57ecf998cd285fc83f1e24d7bbea1d533444f290b3c9e30f4c60dfd3668a0afee";
+      sha512 = "b2f47f578df59beb27200421229b147d83a1cb6caebf6796ea8edf52a0ea6890386d48ad53ada738fa9e6b7a5232851d52c4c656f740d4735dd550c47d3a781f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/id/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/id/thunderbird-60.5.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "c7a52e7f66cb81b4cc35d9f821eecd1bbb15cb88151c2138d10b0b2d8d2c32b3528486c97c40ec5fc1e56a4551a8dfadfb9c75d29eeffa1d57d301dcb73a1574";
+      sha512 = "ac1719151c4f729bb66f4e2654b5159de27c6d22a6776f24615938e769a01036273ba551fe38fd0ed4560fb853427be0c65c387f76ad3c01aca144e90b7e9c48";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/is/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/is/thunderbird-60.5.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "b7b607a43084cc1069dc54f6ad574a4df423caf4f89cbf6838acf20b200c4a041233c2ca03ad4f05d3dc69149addd21f37383b4776bceb5f752b862df6220058";
+      sha512 = "e28e6a3691cbdfd1b03e88afe747cc51aceffb7a0014fc9c86c7403ee96d3d12f9bd6f49ed4916d8ff281d1913ee39ad9b41851f8cc285f8834db9c50545c4c4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/it/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/it/thunderbird-60.5.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "d205bd6a4cae5473b5dbff05cf30aa77fb0497ed1bbf0d1a490c27c0cdc91b1b0171a31673586a0e0e105dcb3f212afb5775f001d8fa75df113e535bc643bbb5";
+      sha512 = "b1ae4c0952871bfbaf673793e02a9c3c283be87523e421ed97502a36377f1388b15ab77370b757daf411714803fcedbad1c8a4aa21241cedca394429ecad5990";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ja/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ja/thunderbird-60.5.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "c409ff99e3a7c07058a2b0b22d58a9326eb62a5811cb295cb26621f72b0fe56c526356b676b1e29ebe3a2974114e9d094dc93e29e08453402f61c7ce01261583";
+      sha512 = "b6b1d702f446aaf50b83fdc5019d7130613cca4f9c9be363701c897f33cdfd4c794c147e7e3ff85b61da54125458a2da4f84aeef76b4f8abf4fd3faeff4301bc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/kab/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/kab/thunderbird-60.5.1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "0fefc6390acd8f3c2622a78ce1b9050cdbcfc8d32f5b76407b42962c8b16731b1b7e821092cb01e882e9c31fc93fc614fb2a8160ee51936d803fb7d37005ca28";
+      sha512 = "9b0c45f7478bd2ec0668d0c4238b2f8229da7d12f4d6e56d65c22323bb54a6ac55d18acee22b13caf63bda73bf097a039b2aa85bd96befa2169845706083fd55";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/kk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/kk/thunderbird-60.5.1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "f68ba752aacfea104ae993950ac09ee58150f8f9f616ce90a8af54d06bae6900b0d1df6cbab8ded8c1b0d2f075aef13ef113d9eaab9dfccabd6c96e2d812402c";
+      sha512 = "12fa4f57e1b0579ead0c7f7f223fe9328898ae999b8949e0dc1f20142eabbfaad03c16a53966d2c0966d9db44133c001f56c97c10a6f4a5acb51e6e30b922f78";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ko/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ko/thunderbird-60.5.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "b8ef8a1be61a10cbc0c9c28e209f4e41fa0d1260907a361cbcff4ba167e3f876f030387cf2d0baf6a6f9e07dc5488b381195db5bf4b85974b379c10f14a81fb7";
+      sha512 = "a6979bf472fdca68df1067ca8341353561741e27afbad18a96ad6e810313f54a8ac5f96c58955ab4d5fa6f4b4ec468d6e711139073f35e9bac45de81555b345e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/lt/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/lt/thunderbird-60.5.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "4b51368bb32ecc906369f1ec36c83a4a4899374ab07fd4342d88cd0270c11dca27021914496e4cd69e433b9fb48e13350a7ca08e484f63f32d8ecebe5b344fde";
+      sha512 = "47ea6c107bfbd196ec6ca5fafa0c856ac86bf16872ccf259afeec384f5f2157c9a7263bb2177ef79c876ba9f3a33209cb6ef7ceee0bae8877f0272e1a8fd4a9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ms/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ms/thunderbird-60.5.1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "6348bbfc06cb0de708f9945f78a048858c6fd96921fc7f91056da2b66c0753edb4372fe6cb8fab14446c427a630ead8e760b4d0ad1ec3ddc9ed17c7eb648afe8";
+      sha512 = "fda7fd25d3d72dee67e0e51c1d2c50ea66e1c574cb0b22c4c8476a7252a61209d5dd7ff5c5e918c9dc959064d048c75339fed5215a5bff53e4954f6ef56aeb14";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/nb-NO/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/nb-NO/thunderbird-60.5.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "17b0355544d0944e115244ca347005d41a3fa175dc2c49325ec735b2544588a49ed9b3bc5b0892fa1efe10fe31ede9cb3da9686740cda318da72ac199d6c5809";
+      sha512 = "0940d7d24612f7e526a2c4d21c7d23a2a6577c5599abd98e73be338cc7b9c1efa33af69d644e62e1e903443b8458786899052bd176bb7e99ce44f4ed846cc532";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/nl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/nl/thunderbird-60.5.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "2400f3121b2ae6d3777ac7782b41b0ec71bc86a30ff5b4f1d4a4b493f10e27719334af6fed0467ca1bd00bab53cc4e2509d24398c2ceeaf383f3cc509ecb67f2";
+      sha512 = "9af66d8294797aa2586b7520e20f88110c7fd807ba4e27ff62fe70308f8f5ea94dcf2d17b9a2fb8e19f10961e470736932b785ba936656582fd4a48071afb43f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/nn-NO/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/nn-NO/thunderbird-60.5.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "4aba4a98acfaa9f7e66ae99c9f999e9b7e22939a1a46b09aeb0f733c466e44510ac87938c3548067dcaf451d1195cfe9bb63569caba89fd70a9835542e5a9de1";
+      sha512 = "94240443b68053b4ffb7a256362a6183f43b6241ebfe479ce41b14b5bb9e1973a1c027f73baff35be9b448490cb0bedcf2b458049d84cac2082eb196ae5fbbd9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/pl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/pl/thunderbird-60.5.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "8574e9aebe67d309de45901f9339a22cc9fe54648d6e4dcaa0fd733bef09fd1666e3e32fd29d9e7cc442fc02da0d507657c9673d49c0ebf7ce69ff87fb117fbb";
+      sha512 = "3af095626b358f4e9074554539b8e204a47108bccb02a90e9f07c78285a05ca2c64d8a2e06935090d8de4ba50765546d7cf9e55cbab8cc3d3eca674569df3d8c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/pt-BR/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/pt-BR/thunderbird-60.5.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "dff615ae8c54052a8888c4b8cf793d4c92da673014e64538108e957547f6dee660c70480c391c2fab2058af12022e135fbb59d4d7ed1c117ff30991aef053885";
+      sha512 = "cc5357923dcee1979760a889dd53512e3bb63db085349ecae02f4909353a2518799cb24bc36de6ed35853e8317d71672539a52998a62f968ff4c4e484cdd0489";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/pt-PT/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/pt-PT/thunderbird-60.5.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "1ed1e6bd1ff9c2105ff82f68ee42323bcd23495a2537f2e4d545fee98dccdfae795be837d5906a5d96db644e63eeee927ab7521384cbb28445cbb5d57e7078fe";
+      sha512 = "a9fd7ffcb7633f17b183a12b4d290822e480f59e01c8e3fcc2e6fea0cf051c73396c2a5e41dd5d897e98a8199aeb4dbff737f06b748c57690541abefa42bd283";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/rm/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/rm/thunderbird-60.5.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "292404d45f48493c27cdcd727a04d70d77140b011aec4fca0648796bce0f3e1f1748bae8c6566ad6cc72ce68b220c31f654b210b5804e2ae6fa9ff97185a3fa6";
+      sha512 = "5cc3f2fc6f84ebdaa298e96b0a56d0d6b0ea87a1df68eca17c558cf603296e83e7644d90e29183107eef1cd045084730f4311c603f546a29a495c7a443ddcc30";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ro/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ro/thunderbird-60.5.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "3a1c55fa454e2e3df70ba2751eafebb9aa53e4ea57664f8d66f04a34d4d0c3bbe0f4e13e37ef47c4464698f3ab681ff1c102419246f67a1c10675260e80ed12d";
+      sha512 = "ed57227fac6e43ddf68837de7252fa8f57df399122653a533e2e5826a8fc48abe0bd1ec4f1c213473b9764d69b65ec905963554aa3b05676ae0cd87e64ff9f8e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/ru/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/ru/thunderbird-60.5.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "ea1cc41ff54ee2703c640499b4c6b1fdb1a15992fa30a5beb2e0ffa5bddd2b5cabdf20b5f850e442cc04df68b58cf22b63696fb0c8173927c30a79a7f15a95a5";
+      sha512 = "9f520da05a7968e632fd262cef964ac65e3e1afc0e70b279af667cff144784adde796862b5d4a66d64826bea70e2d4a76fab69c1fb5181d9038f9d2a4f81cd31";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/si/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/si/thunderbird-60.5.1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "73bf753d666af6768c3c05385165b115cb513a5b8576afb7ca00613a7a200802b81a97b150104badd31ea2dcc0d5cd3104e7a0098fae1a00e35429319381d97e";
+      sha512 = "1a9d8a911bea3ff6e13e02ce3b26271dd9b0755b5ff78982b82ea00fed6e760b067a3a8733c3397fa1bde300f44c7078c37638e79ac18bdef08c820a6dded86b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/sk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/sk/thunderbird-60.5.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "7daba387a9b985f5c230d744fe868d7e1a8255a8b031537f95ae2fab95b2ae69a6ab6df3874f5726406e11db1ceb482121812af550db5cde11184a75dc117cab";
+      sha512 = "0220c4ff8a2dbdbfba5dbb381983a4394f0ec4d246407d7d70d035bf13b8b9d220a73d1f10782c9612ae5521865761ac169cc96d19e4a903b785dfebf762760b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/sl/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/sl/thunderbird-60.5.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "567ce2e6c42dc9dc3a2820324aeba2de2fe4026626f4448d3acda031457ca19c0e37c2e01fc89416065e7978863d2746fc11762e6165a59021335818b20bed7c";
+      sha512 = "3eaca0ba175d97478171269c6027fc7e67780e97dc9a15dc966c8d22c7ac26984f041ba2f94470d4cfc2988f13af29d9afc7940339f3bbd3ea3ed0712855a916";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/sq/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/sq/thunderbird-60.5.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "adea2ea7a6efee80c0e015e864581a27cd280443afa580eab93c60303b93129beb030ed1bfcabcbd3a4070b90fd4fd5e3f9dce7c12b6c9bb2db951bcc83334d9";
+      sha512 = "006b17fdc8201c493e77465ece97373fb23fdcc6d79ee9b9d88c544f338b88dbe51c1bc9f27fc41052c1838eacb604abe04c7b43ead49a0ee02b6591a74dd410";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/sr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/sr/thunderbird-60.5.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "3111413c3e2002deea79b9301fb03ada1b233887c34baea8dfa10347ef99458b319ae8eb522889e45971661a3147a9f8bead0a2d24eb64e7611c2a60cf437174";
+      sha512 = "4908bb89bf199ef0e8767ddba6defe78c42ecbdfeac5c040811d1cd2b445407a0365cfeaff39cee5610a15194878d1700da194efdb6de570188ba7e5f77197da";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/sv-SE/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/sv-SE/thunderbird-60.5.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "ca63091287218cf5b6eaa0468fac4d299c37495e3ddbb6ca54698dcd36a79de1e905bca0380b27b7660a7f7d51cb12cd025acdee147c3dfabf9263889f977c4e";
+      sha512 = "c149b2a11dac65d98c64fa4b548573587ddf540c7de925d983cc9da63a9f55cc9138988adb32fd189a25f6f5baec85542fe8663eada1f7e16dd80e50069795fa";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/tr/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/tr/thunderbird-60.5.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "c7921e18c8409e7e2ee329f20e9a227d0e6cdee1a1be63e45bacb95e16d39de07217c60539d9522a556dabe49190e6d19679644b125edf3e24ce747923c6b2ee";
+      sha512 = "dc45e7cf29f2b3798c83ccabc9d110bf622e0920ca7bee8bb6cd9a4d793fe7df5e7f78677b11c00e43714111bfc2ea2a74a8446026612afb0d54e58fd4e97797";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/uk/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/uk/thunderbird-60.5.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "9184b91af02a736ead845adfbeceea9d57d96bf341a9049b1cf14d3e407281afb28cc69cfd26f314ce3cb56daae34c0cbb0bf417a965e274c9a1b802466de14d";
+      sha512 = "c1d04517a50c0882cb442221e71e171993015a36e597361708f858989ca1b538c8a48c6f40637a382879e394c471157e05543494095560d1c5d60a4d31d56398";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/vi/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/vi/thunderbird-60.5.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "8107ff0080be09ebcccd8d10adc22d39243ce6bd4e4d1a7b082eddf1ace503807f518750161279744a8006ec2934b8e63f4690a379377e0ec71f4dc3a15222f6";
+      sha512 = "186869df9def5f892851496c5a8f3784d5f0ed5a845d8330906c1242c5c856dc284ada045a802f83d1841007eb6aa9ea7098e3ca5d8d17ca85530890e2b3f13e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/zh-CN/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/zh-CN/thunderbird-60.5.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "69e9a72620ab8bc8d24058731226354dac60950bd3115c533dee0cdfb1a5fd895a986a0912ca6d6cfb66e0a41d5405a394e5ffa11e9547e1d18c0d5b1b4e4872";
+      sha512 = "8cd3250b0eef5018dc5129bcf4d1dae9acb2226fab784e66f63f6224cc197d7863338ba134f0523f1e17dce53f0db5cb23206ad98c8e754766f6f51ef15ac33e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.0/linux-i686/zh-TW/thunderbird-60.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.5.1/linux-i686/zh-TW/thunderbird-60.5.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "d3a96e832475251bbf08a43d3c3817f3005a63c25d7fd209fa08205f6694f743d5ec526c2153f3f6620ee89eaa95b0ebaec5fe1c18ad4687c33cda2c00c006e9";
+      sha512 = "bde2b2bed5a1498fef39ea1da0c260a9876fd672282ccac6cc983973fd2a1d8cdc889e4439c4b9acc4b9016bf13d892e2dc387c3a9fa8166cabcdcee8fe9cf8b";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index ff090aac769..6cb6b2bb44e 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -24,11 +24,11 @@ let
   gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
 in stdenv.mkDerivation rec {
   name = "thunderbird-${version}";
-  version = "60.5.0";
+  version = "60.5.1";
 
   src = fetchurl {
     url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-    sha512 = "39biv0yk08l4kkfrsiqgsdsvpa7ih992jmakjnf2wqzrnbk4pfsrck6bnl038bihs1v25ia8c2vs25sm4wzbxzjr0z82fn31qysv2xi";
+    sha512 = "1y8r96rzp1rv6ycn98l2c1bpa26gszhbijhrwk6llw8aq33xhx9dpqpbgfsnrsbn4a5ff14h8m9g82snqysrzb7ldd2i5lbas0pryys";
   };
 
   # from firefox, but without sound libraries
diff --git a/pkgs/applications/networking/mpop/default.nix b/pkgs/applications/networking/mpop/default.nix
index 4a54fcf427e..a48cc47106c 100644
--- a/pkgs/applications/networking/mpop/default.nix
+++ b/pkgs/applications/networking/mpop/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "1.4.2";
+  version = "1.4.3";
   name = "mpop-${version}";
 
   src = fetchurl {
     url = "https://marlam.de/mpop/releases/${name}.tar.xz";
-    sha256 = "1rx5mhgqkm7swbynrhbsz32v85h0rydb4kqfgfs9jrznd9d14m2d";
+    sha256 = "1di86frxv4gj8fasni409m87qmv0j0vmj13lawkz1pwv9hbynhjb";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index c9774f269da..b5973fc8d3e 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -10,11 +10,11 @@ let
 in stdenv.mkDerivation rec {
   pname = "msmtp";
   name = "${pname}-${version}";
-  version = "1.8.2";
+  version = "1.8.3";
 
   src = fetchurl {
     url = "https://marlam.de/msmtp/releases/${name}.tar.xz";
-    sha256 = "14w7lmw1jxlganfk089b0ib23y5917mxbg3xqpid007dd4cmq66i";
+    sha256 = "1d4jdgrx4czp66nnwdsy938lzr4llhwyy0715pwg0j6h6gyyxciw";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index a4324f3c4a2..2c72248c575 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.3.0";
+  version = "1.3.2";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "15b0fnv7xra4fpmn2y4k2rpzcss30sd1dhnx7yvhs2zq12z2m0wi";
+    sha256 = "1ld5ik2g4b95z9pynmwx8mqhblbfzr7a0v35pms89ig4ck1kvr5r";
   };
 
   nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/networking/remote/x2goclient/default.nix b/pkgs/applications/networking/remote/x2goclient/default.nix
index 3d65b7a621b..87fe60c7740 100644
--- a/pkgs/applications/networking/remote/x2goclient/default.nix
+++ b/pkgs/applications/networking/remote/x2goclient/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, cups, libssh, libXpm, nxproxy, openldap, openssh
+{ stdenv, fetchgit, cups, libssh, libXpm, nx-libs, openldap, openssh
 , makeWrapper, qtbase, qtsvg, qtx11extras, qttools, phonon, pkgconfig }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
    sha256 = "05gfs11m259bchy3k0ihqpwg9wf8lp94rbca5dzla9fjzrb7pyy4";
   };
 
-  buildInputs = [ cups libssh libXpm nxproxy openldap openssh
+  buildInputs = [ cups libssh libXpm nx-libs openldap openssh
                   qtbase qtsvg qtx11extras qttools phonon pkgconfig ];
   nativeBuildInputs = [ makeWrapper ];
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   installTargets = [ "install_client" "install_man" ];
   postInstall = ''
-    wrapProgram "$out/bin/x2goclient" --suffix PATH : "${nxproxy}/bin:${openssh}/libexec";
+    wrapProgram "$out/bin/x2goclient" --suffix PATH : "${nx-libs}/bin:${openssh}/libexec";
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/soapui/default.nix b/pkgs/applications/networking/soapui/default.nix
index 93ab6c56d99..1034acf0b90 100644
--- a/pkgs/applications/networking/soapui/default.nix
+++ b/pkgs/applications/networking/soapui/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "soapui-${version}";
-  version = "5.4.0";
+  version = "5.5.0";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/downloads.eviware/soapuios/${version}/SoapUI-${version}-linux-bin.tar.gz";
-    sha256 = "1yqx1fsh8mr5zf36df7pi25dysb28gfscr1667jzd5s0k9jl42xd";
+    sha256 = "0v1wiy61jgvlxjk8qdvcnyn1gh2ysxf266zln7r4wpzwd5gc3dpw";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/sync/unison/default.nix b/pkgs/applications/networking/sync/unison/default.nix
index ed48bce7b2e..7862cc1e6e4 100644
--- a/pkgs/applications/networking/sync/unison/default.nix
+++ b/pkgs/applications/networking/sync/unison/default.nix
@@ -1,20 +1,23 @@
-{stdenv, fetchurl, ocaml, lablgtk, fontschumachermisc, xset, makeWrapper, ncurses
+{stdenv, fetchFromGitHub, ocaml, lablgtk, fontschumachermisc, xset, makeWrapper, ncurses
 , enableX11 ? true}:
 
 stdenv.mkDerivation (rec {
 
-  name = "unison-2.48.4";
-  src = fetchurl {
-    url = "http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/${name}.tar.gz";
-    sha256 = "30aa53cd671d673580104f04be3cf81ac1e20a2e8baaf7274498739d59e99de8";
+  name = "unison-${version}";
+  version = "2.51.2";
+  src = fetchFromGitHub {
+    owner = "bcpierce00";
+    repo = "unison";
+    rev = "v${version}";
+    sha256 = "1bykiyc0dc5pkw8x370qkg2kygq9pq7yqzsgczd3y13b6ivm4sdq";
   };
 
   buildInputs = [ ocaml makeWrapper ncurses ];
 
   preBuild = (if enableX11 then ''
-    sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" Makefile.OCaml
+    sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
   '' else "") + ''
-  echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> fsmonitor/linux/Makefile
+  echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> src/fsmonitor/linux/Makefile
   '';
 
   makeFlags = "INSTALLDIR=$(out)/bin/" + (if enableX11 then " UISTYLE=gtk2" else "")
diff --git a/pkgs/applications/office/beancount/bean-add.nix b/pkgs/applications/office/beancount/bean-add.nix
index cfd7a4eda20..9eec315217c 100644
--- a/pkgs/applications/office/beancount/bean-add.nix
+++ b/pkgs/applications/office/beancount/bean-add.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     # The (only) source file states:
     #   License: "Do what you feel is right, but don't be a jerk" public license.
 
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
   };
 }
 
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 6f0fcca480a..5459859150c 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -32,6 +32,6 @@ buildPythonApplication rec {
     homepage = https://beancount.github.io/fava;
     description = "Web interface for beancount";
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
   };
 }
diff --git a/pkgs/applications/office/planner/default.nix b/pkgs/applications/office/planner/default.nix
index 7bc02e786e1..d8765d2fa61 100644
--- a/pkgs/applications/office/planner/default.nix
+++ b/pkgs/applications/office/planner/default.nix
@@ -7,10 +7,10 @@
 , libtool
 , gnome2
 , libxslt
-, python
+, python2
 }:
 
-let version = "unstable-2018-03-25";
+let version = "unstable-2019-02-13";
 
 in stdenv.mkDerivation {
   name = "planner-${version}";
@@ -19,13 +19,10 @@ in stdenv.mkDerivation {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = "planner";
-    rev = "2a2bf11d96a7f5d64f05c9053661baa848e47797";
-    sha256 = "1bhh05kkbnhibldc1fc7kv7bwf8aa1vh4q379syqd3jbas8y521g";
+    rev = "76d31defae4979aa51dd37e8888f61e9a6a51367";
+    sha256 = "0lbch4drg6005216hgcys93rq92p7zd20968x0gk254kckd9ag5w";
   };
 
-  # planner-popup-button.c:81:2: error: 'g_type_class_add_private' is deprecated [-Werror=deprecated-declarations]
-  NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
-
   nativeBuildInputs = with gnome2; [
     pkgconfig
     intltool
@@ -44,10 +41,14 @@ in stdenv.mkDerivation {
     libgnomeui
     libglade
     libxslt
-    python
+    python2.pkgs.pygtk
   ];
 
   preConfigure = ''./autogen.sh'';
+  configureFlags = [
+    "--enable-python"
+    "--enable-python-plugin"
+    ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix
index 45cefbf0663..1b1f8421ee7 100644
--- a/pkgs/applications/office/qownnotes/default.nix
+++ b/pkgs/applications/office/qownnotes/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qownnotes";
-  version = "19.2.0";
+  version = "19.2.3";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
     # Can grab official version like so:
     # $ curl https://download.tuxfamily.org/qownnotes/src/qownnotes-19.1.8.tar.xz.sha256
-    sha256 = "0n60cnzdfvwn126k8mh5m3wms9avjrnzfrpsvyfhg6l7vm6sbhdi";
+    sha256 = "1favfyanwy2lp3c8abw6ng12vnzgv127k0772a8pax9cqbd5gyry";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/office/skrooge/default.nix b/pkgs/applications/office/skrooge/default.nix
index 5168b2fef53..9b417a8a5b6 100644
--- a/pkgs/applications/office/skrooge/default.nix
+++ b/pkgs/applications/office/skrooge/default.nix
@@ -1,5 +1,5 @@
 { mkDerivation, lib, fetchurl,
-  cmake, extra-cmake-modules, qtwebkit, qtwebengine, qtscript, grantlee,
+  cmake, extra-cmake-modules, qtwebengine, qtscript, grantlee,
   kxmlgui, kwallet, kparts, kdoctools, kjobwidgets, kdesignerplugin,
   kiconthemes, knewstuff, sqlcipher, qca-qt5, kactivities, karchive,
   kguiaddons, knotifyconfig, krunner, kwindowsystem, libofx, shared-mime-info
@@ -7,11 +7,11 @@
 
 mkDerivation rec {
   name = "skrooge-${version}";
-  version = "2.17.0";
+  version = "2.18.0";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/skrooge/${name}.tar.xz";
-    sha256 = "0v83bcabchsz5fs0iv5i75ps01sga48hq4cx29dajcq3kf9xgwhr";
+    sha256 = "00zk152clnmq8rjjnrxmd7lfflf2pnzljaw73bjjsb6r6vkxywa6";
   };
 
   nativeBuildInputs = [
@@ -19,7 +19,7 @@ mkDerivation rec {
   ];
 
   buildInputs = [
-    qtwebkit qtwebengine qtscript grantlee kxmlgui kwallet kparts
+    qtwebengine qtscript grantlee kxmlgui kwallet kparts
     kjobwidgets kdesignerplugin kiconthemes knewstuff sqlcipher qca-qt5
     kactivities karchive kguiaddons knotifyconfig krunner kwindowsystem libofx
   ];
diff --git a/pkgs/applications/office/wordgrinder/default.nix b/pkgs/applications/office/wordgrinder/default.nix
index 8efe9b368a0..be5ac7a2f2b 100644
--- a/pkgs/applications/office/wordgrinder/default.nix
+++ b/pkgs/applications/office/wordgrinder/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     description = "Text-based word processor";
     homepage = https://cowlark.com/wordgrinder;
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/applications/misc/dump1090/default.nix b/pkgs/applications/radio/dump1090/default.nix
index 29f6c608560..41ddb671a36 100644
--- a/pkgs/applications/misc/dump1090/default.nix
+++ b/pkgs/applications/radio/dump1090/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, pkgconfig, libusb, rtl-sdr }:
 
 stdenv.mkDerivation rec {
-  name = "dump1090-${version}";
+  pname = "dump1090";
   version = "2014-10-31";
 
   src = fetchFromGitHub {
     owner = "MalcolmRobb";
-    repo = "dump1090";
+    repo = pname;
     rev = "bff92c4ad772a0a8d433f788d39dae97e00e4dbe";
     sha256 = "06aaj9gpz5v4qzvnp8xf18wdfclp0jvn3hflls79ly46gz2dh9hy";
   };
diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index 176d075f5fb..57cecb3cb4c 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 = "jan19b";
-  version = "20190101_b";
+  srcVersion = "feb19b";
+  version = "20190201_b";
   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 = "1wb4qj0j5n0k49zs5d7ndyzff8mapcb06i55jn0djzd023h0bwhp";
+    sha256 = "5b6da12ac869176d7a9a3d6a6620db1dbaa44a4785e2dd59dd1a8c38ea9cab87";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix
index 794430ebbe8..234b7474997 100644
--- a/pkgs/applications/science/logic/alt-ergo/default.nix
+++ b/pkgs/applications/science/logic/alt-ergo/default.nix
@@ -1,17 +1,20 @@
-{ fetchurl, stdenv, ocamlPackages }:
+{ fetchurl, stdenv, which, dune, ocamlPackages }:
 
 stdenv.mkDerivation rec {
   name = "alt-ergo-${version}";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchurl {
     url    = "https://alt-ergo.ocamlpro.com/download_manager.php?target=${name}.tar.gz";
     name   = "${name}.tar.gz";
-    sha256 = "106zfgisq6qxr7dlk8z7gi68ly7qff4frn8wab2g8z2nkkwla92w";
+    sha256 = "1ycr3ff0gacq1aqzs16n6swgfniwpim0m7rvhcam64kj0a80c6bz";
   };
 
-  buildInputs = with ocamlPackages;
-    [ ocaml findlib camlzip ocamlgraph zarith lablgtk ocplib-simplex psmt2-frontend menhir num ];
+  buildInputs = [ dune which ] ++ (with ocamlPackages; [
+    ocaml findlib camlzip lablgtk menhir num ocplib-simplex psmt2-frontend seq zarith
+  ]);
+
+  preConfigure = "patchShebangs ./configure";
 
   meta = {
     description = "High-performance theorem prover and SMT solver";
diff --git a/pkgs/applications/science/logic/z3/0001-fix-2131.patch b/pkgs/applications/science/logic/z3/0001-fix-2131.patch
new file mode 100644
index 00000000000..0b21b8fffd4
--- /dev/null
+++ b/pkgs/applications/science/logic/z3/0001-fix-2131.patch
@@ -0,0 +1,66 @@
+From c5df6ce96e068eceb77019e48634721c6a5bb607 Mon Sep 17 00:00:00 2001
+From: Nikolaj Bjorner <nbjorner@microsoft.com>
+Date: Sun, 10 Feb 2019 10:07:24 -0800
+Subject: [PATCH 1/1] fix #2131
+
+Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
+---
+ src/api/python/README.txt    | 10 +++-------
+ src/api/python/setup.py      |  2 +-
+ src/ast/recfun_decl_plugin.h |  2 +-
+ 3 files changed, 5 insertions(+), 9 deletions(-)
+
+diff --git a/src/api/python/README.txt b/src/api/python/README.txt
+index 9312b1119..561b8dedc 100644
+--- a/src/api/python/README.txt
++++ b/src/api/python/README.txt
+@@ -1,8 +1,4 @@
+-You can learn more about Z3Py at:
+-http://rise4fun.com/Z3Py/tutorial/guide
+-
+-On Windows, you must build Z3 before using Z3Py.
+-To build Z3, you should executed the following command
++On Windows, to build Z3, you should executed the following command
+ in the Z3 root directory at the Visual Studio Command Prompt
+ 
+        msbuild /p:configuration=external
+@@ -12,8 +8,8 @@ If you are using a 64-bit Python interpreter, you should use
+        msbuild /p:configuration=external /p:platform=x64
+ 
+ 
+-On Linux and macOS, you must install Z3Py, before trying example.py.
+-To install Z3Py on Linux and macOS, you should execute the following
++On Linux and macOS, you must install python bindings, before trying example.py.
++To install python on Linux and macOS, you should execute the following
+ command in the Z3 root directory
+ 
+         sudo make install-z3py
+diff --git a/src/api/python/setup.py b/src/api/python/setup.py
+index 2a750fee6..063680e2b 100644
+--- a/src/api/python/setup.py
++++ b/src/api/python/setup.py
+@@ -178,7 +178,7 @@ setup(
+     name='z3-solver',
+     version=_z3_version(),
+     description='an efficient SMT solver library',
+-    long_description='Z3 is a theorem prover from Microsoft Research with support for bitvectors, booleans, arrays, floating point numbers, strings, and other data types.\n\nFor documentation, please read http://z3prover.github.io/api/html/z3.html\n\nIn the event of technical difficulties related to configuration, compiliation, or installation, please submit issues to https://github.com/angr/angr-z3',
++    long_description='Z3 is a theorem prover from Microsoft Research with support for bitvectors, booleans, arrays, floating point numbers, strings, and other data types.\n\nFor documentation, please read http://z3prover.github.io/api/html/z3.html\n\nIn the event of technical difficulties related to configuration, compilation, or installation, please submit issues to https://github.com/angr/angr-z3',
+     author="The Z3 Theorem Prover Project",
+     maintainer="Audrey Dutcher",
+     maintainer_email="audrey@rhelmot.io",
+diff --git a/src/ast/recfun_decl_plugin.h b/src/ast/recfun_decl_plugin.h
+index 0247335e8..b294cdfce 100644
+--- a/src/ast/recfun_decl_plugin.h
++++ b/src/ast/recfun_decl_plugin.h
+@@ -56,7 +56,7 @@ namespace recfun {
+         friend class def;
+         func_decl_ref       m_pred; //<! predicate used for this case
+         expr_ref_vector     m_guards; //<! conjunction that is equivalent to this case
+-        expr_ref            m_rhs; //<! if guard is true, `f(t1…tn) = rhs` holds
++        expr_ref            m_rhs; //<! if guard is true, `f(t1...tn) = rhs` holds
+         def *               m_def; //<! definition this is a part of
+         bool                m_immediate; //<! does `rhs` contain no defined_fun/case_pred?
+ 
+-- 
+2.19.2
+
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index a4a55e3e851..8c1c0ca2302 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "014igqm5vwswz0yhz0cdxsj3a6dh7i79hvhgc3jmmmz3z0xm1gyn";
   };
 
+  patches = [
+    ./0001-fix-2131.patch
+  ];
+
   buildInputs = [ python fixDarwinDylibNames ];
   propagatedBuildInputs = [ python.pkgs.setuptools ];
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/machine-learning/sc2-headless/default.nix b/pkgs/applications/science/machine-learning/sc2-headless/default.nix
index cd9cf6dafd1..ced075ff432 100644
--- a/pkgs/applications/science/machine-learning/sc2-headless/default.nix
+++ b/pkgs/applications/science/machine-learning/sc2-headless/default.nix
@@ -1,9 +1,9 @@
-{ stdenv
+{ config, stdenv
 , callPackage
 , lib
 , fetchurl
 , unzip
-, licenseAccepted ? false
+, licenseAccepted ? config.sc2-headless.accept_license or false
 }:
 
 if !licenseAccepted then throw ''
diff --git a/pkgs/applications/science/math/caffe/default.nix b/pkgs/applications/science/math/caffe/default.nix
index e56c63e01bf..9ee56041ed3 100644
--- a/pkgs/applications/science/math/caffe/default.nix
+++ b/pkgs/applications/science/math/caffe/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, runCommand
+{ config, stdenv, lib, runCommand
 , fetchFromGitHub
 , fetchurl
 , cmake
@@ -13,10 +13,11 @@
 , Accelerate, CoreGraphics, CoreVideo
 , lmdbSupport ? true, lmdb
 , leveldbSupport ? true, leveldb, snappy
-, cudaSupport ? stdenv.isLinux, cudatoolkit
-, cudnnSupport ? false, cudnn ? null
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
+, cudnnSupport ? cudaSupport, cudnn ? null
 , ncclSupport ? false, nccl ? null
 , pythonSupport ? false, python ? null, numpy ? null
+, substituteAll
 }:
 
 assert leveldbSupport -> (leveldb != null && snappy != null);
@@ -50,7 +51,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake doxygen ];
 
   cmakeFlags =
-    [ (if pythonSupport then "-Dpython_version=${python.version}" else "-DBUILD_python=OFF")
+    # It's important that caffe is passed the major and minor version only because that's what
+    # boost_python expects
+    [ (if pythonSupport then "-Dpython_version=3${python.pythonVersion}" else "-DBUILD_python=OFF")
       "-DBLAS=open"
     ] ++ (if cudaSupport then [
            "-DCUDA_ARCH_NAME=All"
@@ -75,16 +78,21 @@ stdenv.mkDerivation rec {
   outputs = [ "bin" "out"];
   propagatedBuildOutputs = []; # otherwise propagates out -> bin cycle
 
-  patches = [ ./darwin.patch ];
+  patches = [
+    ./darwin.patch
+  ] ++ lib.optional pythonSupport (substituteAll {
+    src = ./python.patch;
+    inherit (python.sourceVersion) major minor;  # Should be changed in case of PyPy
+  });
 
-  preConfigure = lib.optionalString (cudaSupport && lib.versionAtLeast cudatoolkit.version "9.0") ''
+  postPatch = lib.optionalString (cudaSupport && lib.versionAtLeast cudatoolkit.version "9.0") ''
     # CUDA 9.0 doesn't support sm_20
     sed -i 's,20 21(20) ,,' cmake/Cuda.cmake
-  '' + lib.optionalString (python.isPy3 or false) ''
-    sed -i \
-      -e 's,"python-py''${boost_py_version}",python3,g' \
-      -e 's,''${Boost_PYTHON-PY''${boost_py_version}_FOUND},''${Boost_PYTHON3_FOUND},g' \
-      cmake/Dependencies.cmake
+  '';
+
+  preConfigure = lib.optionalString pythonSupport ''
+    # We need this when building with Python bindings
+    export BOOST_LIBRARYDIR="${boost.out}/lib";
   '';
 
   postInstall = ''
diff --git a/pkgs/applications/science/math/caffe/python.patch b/pkgs/applications/science/math/caffe/python.patch
new file mode 100644
index 00000000000..b1bed6c174b
--- /dev/null
+++ b/pkgs/applications/science/math/caffe/python.patch
@@ -0,0 +1,70 @@
+commit b14ca23651d390fcae4a929dedc7c33a83453a66
+Author: Frederik Rietdijk <fridh@fridh.nl>
+Date:   Sun Feb 17 08:41:27 2019 +0100
+
+    Find boost_pythonXX
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 08f56a33..0a04592a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -99,10 +99,10 @@ add_subdirectory(docs)
+ add_custom_target(lint COMMAND ${CMAKE_COMMAND} -P ${PROJECT_SOURCE_DIR}/cmake/lint.cmake)
+ 
+ # ---[ pytest target
+-if(BUILD_python)
+-  add_custom_target(pytest COMMAND python${python_version} -m unittest discover -s caffe/test WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/python )
+-  add_dependencies(pytest pycaffe)
+-endif()
++# if(BUILD_python)
++#   add_custom_target(pytest COMMAND python${python_version} -m unittest discover -s caffe/test WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/python )
++#   add_dependencies(pytest pycaffe)
++# endif()
+ 
+ # ---[ uninstall target
+ configure_file(
+diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake
+index 4a5bac47..be026d43 100644
+--- a/cmake/Dependencies.cmake
++++ b/cmake/Dependencies.cmake
+@@ -141,37 +141,14 @@ if(BUILD_python)
+     # use python3
+     find_package(PythonInterp 3.0)
+     find_package(PythonLibs 3.0)
+-    find_package(NumPy 1.7.1)
+-    # Find the matching boost python implementation
+-    set(version ${PYTHONLIBS_VERSION_STRING})
+-
+-    STRING( REGEX REPLACE "[^0-9]" "" boost_py_version ${version} )
+-    find_package(Boost 1.46 COMPONENTS "python-py${boost_py_version}")
+-    set(Boost_PYTHON_FOUND ${Boost_PYTHON-PY${boost_py_version}_FOUND})
+-
+-    while(NOT "${version}" STREQUAL "" AND NOT Boost_PYTHON_FOUND)
+-      STRING( REGEX REPLACE "([0-9.]+).[0-9]+" "\\1" version ${version} )
+-
+-      STRING( REGEX REPLACE "[^0-9]" "" boost_py_version ${version} )
+-      find_package(Boost 1.46 COMPONENTS "python-py${boost_py_version}")
+-      set(Boost_PYTHON_FOUND ${Boost_PYTHON-PY${boost_py_version}_FOUND})
+-
+-      STRING( REGEX MATCHALL "([0-9.]+).[0-9]+" has_more_version ${version} )
+-      if("${has_more_version}" STREQUAL "")
+-        break()
+-      endif()
+-    endwhile()
+-    if(NOT Boost_PYTHON_FOUND)
+-      find_package(Boost 1.46 COMPONENTS python)
+-    endif()
+   else()
+     # disable Python 3 search
+     find_package(PythonInterp 2.7)
+     find_package(PythonLibs 2.7)
+-    find_package(NumPy 1.7.1)
+-    find_package(Boost 1.46 COMPONENTS python)
+   endif()
+-  if(PYTHONLIBS_FOUND AND NUMPY_FOUND AND Boost_PYTHON_FOUND)
++  find_package(NumPy 1.7.1)
++  find_package(Boost 1.46 REQUIRED COMPONENTS python@major@@minor@)
++  if(PYTHONLIBS_FOUND AND NUMPY_FOUND AND BOOST_PYTHON@major@@minor@_FOUND)
+     set(HAVE_PYTHON TRUE)
+     if(BUILD_python_layer)
+       list(APPEND Caffe_DEFINITIONS PRIVATE -DWITH_PYTHON_LAYER)
diff --git a/pkgs/applications/science/math/cntk/default.nix b/pkgs/applications/science/math/cntk/default.nix
index fe5c77be8b2..4bf922c4e16 100644
--- a/pkgs/applications/science/math/cntk/default.nix
+++ b/pkgs/applications/science/math/cntk/default.nix
@@ -1,8 +1,8 @@
-{ lib, stdenv, fetchgit, fetchFromGitHub, cmake
+{ config, lib, stdenv, fetchgit, fetchFromGitHub, cmake
 , openblas, opencv3, libzip, boost, protobuf, openmpi
 , onebitSGDSupport ? false
-, cudaSupport ? false, cudatoolkit, nvidia_x11
-, cudnnSupport ? false, cudnn
+, cudaSupport ? config.cudaSupport or false, cudatoolkit, nvidia_x11
+, cudnnSupport ? cudaSupport, cudnn
 }:
 
 assert cudnnSupport -> cudaSupport;
diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix
index 990d3f1a5d5..061f48bb3d9 100644
--- a/pkgs/applications/science/math/mxnet/default.nix
+++ b/pkgs/applications/science/math/mxnet/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl, bash, cmake
+{ config, stdenv, lib, fetchurl, bash, cmake
 , opencv, gtest, openblas, liblapack, perl
-, cudaSupport ? false, cudatoolkit, nvidia_x11
-, cudnnSupport ? false, cudnn
+, cudaSupport ? config.cudaSupport or false, cudatoolkit, nvidia_x11
+, cudnnSupport ? cudaSupport, cudnn
 }:
 
 assert cudnnSupport -> cudaSupport;
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index 42dc2853409..5104d1012b2 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "qalculate-gtk-${version}";
-  version = "2.8.2";
+  version = "2.9.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "0vdrpnarbwhappwgp38jjndnq30h1lh8hbk75i9rhkb7x4kblqfi";
+    sha256 = "0c5s7mz8xwwmzc22yai8vqiww7paafkyi7khp8a2yws78m2nirdx";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 4ef88e34f03..b9d0a9ef448 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -64,10 +64,10 @@ stdenv.mkDerivation rec {
     fetchSageDiff = { base, rev, name ? "sage-diff-${base}-${rev}.patch", ...}@args: (
       fetchpatch ({
         inherit name;
-        url = "https://git.sagemath.org/sage.git/rawdiff?id2=${base}&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/*" ];
+        excludes = [ "build/*" ];
       } // builtins.removeAttrs args [ "rev" "base" ])
     );
   in [
diff --git a/pkgs/applications/version-management/bugseverywhere/default.nix b/pkgs/applications/version-management/bugseverywhere/default.nix
index 7c41a60a725..6301acdf134 100644
--- a/pkgs/applications/version-management/bugseverywhere/default.nix
+++ b/pkgs/applications/version-management/bugseverywhere/default.nix
@@ -28,7 +28,7 @@ pythonPackages.buildPythonApplication rec {
         homepage = http://www.bugseverywhere.org/;
         license = licenses.gpl2Plus;
         platforms = platforms.all;
-        maintainers = [ ];
+        maintainers = [ maintainers.matthiasbeyer ];
     };
 }
 
diff --git a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
index 039da03efb1..3020e7d64aa 100644
--- a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
@@ -5,13 +5,13 @@ let
 
 in buildPythonApplication rec {
   name = "git-cola-${version}";
-  version = "3.2";
+  version = "3.3";
 
   src = fetchFromGitHub {
     owner = "git-cola";
     repo = "git-cola";
     rev = "v${version}";
-    sha256 = "1ivaqhvdbmlp0lmrwb2pv3kjqlcpqbxbinbvjjn3g81r4avjs7yy";
+    sha256 = "0gfbzcmaqg6hdy2cfpshgcwh8zgj1ia1vd95i5xdrsvksgb8fq2j";
   };
 
   buildInputs = [ git gettext ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
index 9c362276383..473f0b1c450 100644
--- a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
@@ -49,6 +49,6 @@ buildRustPackage rec {
     inherit (src.meta) homepage;
     description = "Decentralized Issue Tracking for git";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ Profpatsch ];
+    maintainers = with maintainers; [ Profpatsch matthiasbeyer ];
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
index 7b6dd8aacb4..c036a0ffe4b 100644
--- a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   name = "git-extras-${version}";
-  version = "4.6.0";
+  version = "4.7.0";
 
   src = fetchurl {
     url = "https://github.com/tj/git-extras/archive/${version}.tar.gz";
-    sha256 = "1jp5wi2h4jqbrjv0iqa45s0f9h3n5k1dxs89jkhg5n5k9jjs7fp3";
+    sha256 = "0pab4f5kmmcn333aswkgndf1fgilc41h8h0rk3lviz0yi8j59vaq";
   };
 
   dontBuild = true;
 
-  installFlags = [ "DESTDIR=$(out) PREFIX=" ];
+  installFlags = [ "DESTDIR=${placeholder "out"}" "PREFIX=" ];
 
   postInstall = ''
     install -D etc/git-extras-completion.zsh $out/share/zsh/site-functions/_git_extras
diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix
index c6e62265b95..8ae600ed360 100644
--- a/pkgs/applications/version-management/git-and-tools/hub/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix
@@ -1,25 +1,26 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, ronn, ruby, groff, Security, utillinux }:
+{ stdenv, buildGoPackage, fetchFromGitHub, ronn, ruby, groff, Security, utillinux, git, glibcLocales }:
 
 buildGoPackage rec {
-  name = "hub-${version}";
-  version = "2.7.0";
+  pname = "hub";
+  version = "2.9.0";
 
   goPackagePath = "github.com/github/hub";
 
+  # Only needed to build the man-pages
+  excludedPackages = [ "github.com/github/hub/md2roff-bin" ];
+
   src = fetchFromGitHub {
     owner = "github";
-    repo = "hub";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1p90m1xp3jahs5y0lp0qfmfa7wqn7gxyygn7x45a6cbf2zzlb86l";
+    sha256 = "0yxpr606xx23l8823hjqj16cvjjrwb28c7z08ml1pkfvaf7w4n81";
   };
 
-  nativeBuildInputs = [ groff ronn utillinux ];
+  nativeBuildInputs = [ groff ronn utillinux glibcLocales ];
   buildInputs = [ ruby ] ++
     stdenv.lib.optional stdenv.isDarwin Security;
 
   postPatch = ''
-    mkdir bin
-    ln -s ${ronn}/bin/ronn bin/ronn
     patchShebangs .
   '';
 
@@ -29,13 +30,12 @@ buildGoPackage rec {
     install -D etc/hub.bash_completion.sh "$bin/share/bash-completion/completions/hub"
     install -D etc/hub.fish_completion  "$bin/share/fish/vendor_completions.d/hub.fish"
 
-    make man-pages
+    PATH=$PATH:${git}/bin LC_ALL=en_US.utf-8 make man-pages
     cp -vr --parents share/man/man[1-9]/*.[1-9] $bin/
   '';
 
   meta = with stdenv.lib; {
     description = "Command-line wrapper for git that makes you better at GitHub";
-
     license = licenses.mit;
     homepage = https://hub.github.com/;
     maintainers = with maintainers; [ the-kenny ];
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index b5a5a9feb76..3298bc16751 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,32 +1,32 @@
 {
   "ce": {
-    "version": "11.7.4",
-    "repo_hash": "0qq9snykdlpkpbznwpkv0n7bz1rsgz4z7lcjl4xkjxkf2gkf8pxp",
-    "deb_hash": "1j76jya0ydyg7v3vcdfjmcr5ir23yzdwmg9fxlirvgh74py7q85c",
-    "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.7.4-ce.0_amd64.deb/download.deb",
+    "version": "11.7.5",
+    "repo_hash": "0bbyx9zmscf9273fgypb82gw166psy7d3p7dnwb6f5r9yz7rmhbn",
+    "deb_hash": "1m6hdvrz467q33z626l9f3d5pssl0bbj2hkqy5g0b05wvdznmldy",
+    "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.7.5-ce.0_amd64.deb/download.deb",
     "owner": "gitlab-org",
     "repo": "gitlab-ce",
-    "rev": "v11.7.4",
+    "rev": "v11.7.5",
     "passthru": {
       "GITALY_SERVER_VERSION": "1.12.2",
       "GITLAB_PAGES_VERSION": "1.3.1",
       "GITLAB_SHELL_VERSION": "8.4.4",
-      "GITLAB_WORKHORSE_VERSION": "8.0.1"
+      "GITLAB_WORKHORSE_VERSION": "8.0.2"
     }
   },
   "ee": {
-    "version": "11.7.4",
-    "repo_hash": "0riqww094ylbbwb9mhjpsqhrdpxlcf6rc5p796p7x7f46p31mcjb",
-    "deb_hash": "02hnhhyrm4a3lgwnl399byka2dr5q3pjirki447373270ca93h5i",
-    "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.7.4-ee.0_amd64.deb/download.deb",
+    "version": "11.7.5",
+    "repo_hash": "05dzvqrdgxbzsrf9rbis5m3iic04midx2arxgg3g4f78qfjxzylm",
+    "deb_hash": "1nfd68vzy3zc6a3xn5lhr83kqv9d7aaxvzv4ca9awcz4va5b33kc",
+    "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.7.5-ee.0_amd64.deb/download.deb",
     "owner": "gitlab-org",
     "repo": "gitlab-ee",
-    "rev": "v11.7.4-ee",
+    "rev": "v11.7.5-ee",
     "passthru": {
       "GITALY_SERVER_VERSION": "1.12.2",
       "GITLAB_PAGES_VERSION": "1.3.1",
       "GITLAB_SHELL_VERSION": "8.4.4",
-      "GITLAB_WORKHORSE_VERSION": "8.0.1"
+      "GITLAB_WORKHORSE_VERSION": "8.0.2"
     }
   }
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 96ea361a254..ad3b11f3b2c 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "gitlab-workhorse-${version}";
 
-  version = "8.0.1";
+  version = "8.0.2";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "1aslcadag1q2rdirf9m0dl5vfaz8v3yy1232mvyjyvy1wb51pf4q";
+    sha256 = "12xwr9yl59i58gnf0yn5yjp7zwz3s46042lk7rihvvzsa0kax690";
   };
 
   buildInputs = [ git go ];
diff --git a/pkgs/applications/video/aegisub/default.nix b/pkgs/applications/video/aegisub/default.nix
index d4208aee62e..a613ad1c584 100644
--- a/pkgs/applications/video/aegisub/default.nix
+++ b/pkgs/applications/video/aegisub/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl
+{ config, stdenv, fetchurl
 , libX11, wxGTK
 , libiconv, fontconfig, freetype
 , libGLU_combined
@@ -8,8 +8,8 @@
 , spellcheckSupport ? true, hunspell ? null
 , automationSupport ? true, lua ? null
 , openalSupport ? false, openal ? null
-, alsaSupport ? true, alsaLib ? null
-, pulseaudioSupport ? true, libpulseaudio ? null
+, alsaSupport ? stdenv.isLinux, alsaLib ? null
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
 , portaudioSupport ? false, portaudio ? null }:
 
 assert spellcheckSupport -> (hunspell != null);
diff --git a/pkgs/applications/video/bomi/default.nix b/pkgs/applications/video/bomi/default.nix
index 671d6794635..bbac1014034 100644
--- a/pkgs/applications/video/bomi/default.nix
+++ b/pkgs/applications/video/bomi/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, perl, python, which
+{ config, stdenv, fetchFromGitHub
+, fetchpatch, pkgconfig, perl, python, which
 , libX11, libxcb, libGLU_combined
 , qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras, qmake, makeWrapper
 , libchardet
@@ -15,7 +16,7 @@
 , libbluray
 , jackSupport ? false, jack ? null
 , portaudioSupport ? false, portaudio ? null
-, pulseSupport ? true, libpulseaudio ? null
+, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
 , cddaSupport ? false, libcdda ? null
 , youtubeSupport ? true, youtube-dl ? null
 }:
diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix
index 07474c5e52c..b17ba7e19f4 100644
--- a/pkgs/applications/video/handbrake/default.nix
+++ b/pkgs/applications/video/handbrake/default.nix
@@ -29,12 +29,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.0";
-  name = "handbrake-${version}";
+  pname = "handbrake";
+  version = "1.2.1";
 
   src = fetchurl {
     url = ''https://download2.handbrake.fr/${version}/HandBrake-${version}-source.tar.bz2'';
-    sha256 = "03clkknaq3mz84p85cvr21gsy9b8vv2g4vvyfz44hz8la253jfqi";
+    sha256 = "0gbqzar49c8ygz6chnsz65xgsdcwr60lbc8ivnw8i6xjggn6wc80";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 3464b7aaeaa..5b786b25501 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitLab, pkgconfig, autoconf, automake, libiconv
-, drake, ruby, docbook_xsl, file, xdg_utils, gettext, expat, boost
-, libebml, zlib, libmatroska, libogg, libvorbis, flac, libxslt, cmark
+{ stdenv, fetchFromGitLab, pkgconfig, autoconf, automake, libiconv, drake
+, ruby, docbook_xsl, file, xdg_utils, gettext, expat, boost, libebml, zlib
+, fmt, libmatroska, libogg, libvorbis, flac, libxslt, cmark
 , withGUI ? true
   , qtbase ? null
   , qtmultimedia ? null
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mkvtoolnix-${version}";
-  version = "28.2.0";
+  version = "31.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "162qj5z9wzm63im6jnd0n95ggzdk6fzq5bxgrr0l3y82ahfb7qwa";
+    sha256 = "1fml374ivzzmac0ixhngj4bdxszcaw5yxdmacpn6ia7pdyvpf5lh";
   };
 
   nativeBuildInputs = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    expat file xdg_utils boost libebml zlib
+    expat file xdg_utils boost libebml zlib fmt
     libmatroska libogg libvorbis flac cmark
   ] ++ optional  stdenv.isDarwin libiconv
     ++ optionals withGUI [ qtbase qtmultimedia ];
diff --git a/pkgs/applications/video/motion/default.nix b/pkgs/applications/video/motion/default.nix
index b3367951b9f..e3dcf6b3d3b 100644
--- a/pkgs/applications/video/motion/default.nix
+++ b/pkgs/applications/video/motion/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "motion-${version}";
-  version = "4.2.1";
+  version = "4.2.2";
 
   src = fetchFromGitHub {
     owner  = "Motion-Project";
     repo   = "motion";
     rev    = "release-${version}";
-    sha256 = "1h359hngbkazdli7vl949r6glrq4xxs70js6n1j8jxcyw1wxian9";
+    sha256 = "05c1gx75xy2hw49x6vkydvwxbr80kipsc3nr906k3hq8735svx6f";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/video/mplayer/default.nix b/pkgs/applications/video/mplayer/default.nix
index e017e7cc001..c77486a30cf 100644
--- a/pkgs/applications/video/mplayer/default.nix
+++ b/pkgs/applications/video/mplayer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, freetype, yasm, ffmpeg
+{ config, stdenv, fetchurl, pkgconfig, freetype, yasm, ffmpeg
 , aalibSupport ? true, aalib ? null
 , fontconfigSupport ? true, fontconfig ? null, freefont_ttf ? null
 , fribidiSupport ? true, fribidi ? null
@@ -19,7 +19,7 @@
 , theoraSupport ? true, libtheora ? null
 , x264Support ? false, x264 ? null
 , jackaudioSupport ? false, libjack2 ? null
-, pulseSupport ? false, libpulseaudio ? null
+, pulseSupport ? config.pulseaudio or false, libpulseaudio ? null
 , bs2bSupport ? false, libbs2b ? null
 # For screenshots
 , libpngSupport ? true, libpng ? null
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index ffbaa9fffdf..66fc1645e9a 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, fetchFromGitHub, makeWrapper
+{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper
 , docutils, perl, pkgconfig, python3, which, ffmpeg_4
 , freefont_ttf, freetype, libass, libpthreadstubs, mujs
 , lua, libuchardet, libiconv ? null, darwin
 
-, waylandSupport ? false
+, waylandSupport ? stdenv.isLinux
   , wayland           ? null
   , wayland-protocols ? null
   , libxkbcommon      ? null
@@ -24,30 +24,30 @@
   , vulkan-headers ? null
   , vulkan-loader ? null
 
-, alsaSupport        ? true,  alsaLib       ? null
-, bluraySupport      ? true,  libbluray     ? null
-, bs2bSupport        ? true,  libbs2b       ? null
-, cacaSupport        ? true,  libcaca       ? null
-, cmsSupport         ? true,  lcms2         ? null
-, drmSupport         ? true,  libdrm        ? null
-, dvdnavSupport      ? true,  libdvdnav     ? null
-, dvdreadSupport     ? true,  libdvdread    ? null
-, libpngSupport      ? true,  libpng        ? null
-, pulseSupport       ? true,  libpulseaudio ? null
-, rubberbandSupport  ? true,  rubberband    ? null
-, screenSaverSupport ? true,  libXScrnSaver ? null
-, sdl2Support        ? true,  SDL2          ? null
-, speexSupport       ? true,  speex         ? null
-, theoraSupport      ? true,  libtheora     ? null
-, vaapiSupport       ? true,  libva         ? null
-, vdpauSupport       ? true,  libvdpau      ? null
-, xineramaSupport    ? true,  libXinerama   ? null
-, xvSupport          ? true,  libXv         ? null
-, youtubeSupport     ? true,  youtube-dl    ? null
-, archiveSupport     ? false, libarchive    ? null
-, jackaudioSupport   ? false, libjack2      ? null
-, openalSupport      ? false, openalSoft    ? null
-, vapoursynthSupport ? false, vapoursynth   ? null
+, alsaSupport        ? stdenv.isLinux, alsaLib       ? null
+, bluraySupport      ? true,           libbluray     ? null
+, bs2bSupport        ? true,           libbs2b       ? null
+, cacaSupport        ? true,           libcaca       ? null
+, cmsSupport         ? true,           lcms2         ? null
+, drmSupport         ? stdenv.isLinux, libdrm        ? null
+, dvdnavSupport      ? stdenv.isLinux, libdvdnav     ? null
+, dvdreadSupport     ? stdenv.isLinux, libdvdread    ? null
+, libpngSupport      ? true,           libpng        ? null
+, pulseSupport       ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
+, rubberbandSupport  ? stdenv.isLinux, rubberband ? null
+, screenSaverSupport ? true,           libXScrnSaver ? null
+, sdl2Support        ? true,           SDL2          ? null
+, speexSupport       ? true,           speex         ? null
+, theoraSupport      ? true,           libtheora     ? null
+, vaapiSupport       ? stdenv.isLinux, libva ? null
+, vdpauSupport       ? true,           libvdpau      ? null
+, xineramaSupport    ? stdenv.isLinux, libXinerama   ? null
+, xvSupport          ? stdenv.isLinux, libXv         ? null
+, youtubeSupport     ? true,           youtube-dl    ? null
+, archiveSupport     ? false,          libarchive    ? null
+, jackaudioSupport   ? false,          libjack2      ? null
+, openalSupport      ? false,          openalSoft    ? null
+, vapoursynthSupport ? false,          vapoursynth   ? null
 }:
 
 with stdenv.lib;
@@ -92,7 +92,7 @@ let
              "http://www.freehackers.org/~tnagy/release/waf-${wafVersion}" ];
     sha256 = "0j7sbn3w6bgslvwwh5v9527w3gi2sd08kskrgxamx693y0b0i3ia";
   };
-  luaEnv = lua.withPackages(ps: with ps; [ luasocket]);
+  luaEnv = lua.withPackages(ps: with ps; [ luasocket ]);
 
 in stdenv.mkDerivation rec {
   name = "mpv-${version}";
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index 579d5566f13..7211f9ff3d1 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -1,4 +1,4 @@
-{ stdenv
+{ config, stdenv
 , fetchFromGitHub
 , fetchpatch
 , cmake
@@ -26,9 +26,9 @@
 , swig
 , python3
 
-, alsaSupport ? false
+, alsaSupport ? stdenv.isLinux
 , alsaLib
-, pulseaudioSupport ? false
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
 , libpulseaudio
 }:
 
diff --git a/pkgs/applications/virtualization/dynamips/default.nix b/pkgs/applications/virtualization/dynamips/default.nix
index 4499fff4dc8..9419939d1c7 100644
--- a/pkgs/applications/virtualization/dynamips/default.nix
+++ b/pkgs/applications/virtualization/dynamips/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dynamips";
-  version = "0.2.19";
+  version = "0.2.20";
 
   src = fetchFromGitHub {
     owner = "GNS3";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0x63m37vjyp57900x09gfvw02cwg85b33918x7fjj9x37wgmi5qf";
+    sha256 = "1841h0m0k0p3c3ify4imafjk7jigcj2zlr8rn3iyp7jnafkxqik7";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/virtualization/firecracker/default.nix b/pkgs/applications/virtualization/firecracker/default.nix
index e1696fc15a5..f277bafa214 100644
--- a/pkgs/applications/virtualization/firecracker/default.nix
+++ b/pkgs/applications/virtualization/firecracker/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv }:
 
 let
-  version = "0.13.0";
+  version = "0.14.0";
   baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download";
 
   fetchbin = name: sha256: fetchurl {
@@ -9,8 +9,8 @@ let
     inherit sha256;
   };
 
-  firecracker-bin = fetchbin "firecracker" "1wdcy4vmnx216jnza7bz6czlqpsjrnpqfsb5d322ld4gzbylm718";
-  jailer-bin      = fetchbin "jailer"      "0k0sc5138bh35ciim2l78ma9g5x18dw098f2ar5y31ybr8i4q60y";
+  firecracker-bin = fetchbin "firecracker" "02d7s2hzhl13k5linlav7yc4kg9v70sccc3ysfgaqq8hz7zfqywg";
+  jailer-bin      = fetchbin "jailer"      "120n14zjnm21s39dza99p003bn5n0n5fzcyaw4l6laq336r24gvi";
 in
 stdenv.mkDerivation {
   name = "firecracker-${version}";
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 301a9211cf6..67a863b6fb7 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -3,7 +3,7 @@
 , bison, lzo, snappy, libaio, gnutls, nettle, curl
 , makeWrapper
 , attr, libcap, libcap_ng
-, CoreServices, Cocoa, rez, setfile
+, CoreServices, Cocoa, Hypervisor, rez, setfile
 , numaSupport ? stdenv.isLinux && !stdenv.isAarch32, numactl
 , seccompSupport ? stdenv.isLinux, libseccomp
 , pulseSupport ? !stdenv.isDarwin, libpulseaudio
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
       vde2 texinfo flex bison makeWrapper lzo snappy
       gnutls nettle curl
     ]
-    ++ optionals stdenv.isDarwin [ CoreServices Cocoa rez setfile ]
+    ++ optionals stdenv.isDarwin [ CoreServices Cocoa Hypervisor rez setfile ]
     ++ optionals seccompSupport [ libseccomp ]
     ++ optionals numaSupport [ numactl ]
     ++ optionals pulseSupport [ libpulseaudio ]
@@ -116,6 +116,7 @@ stdenv.mkDerivation rec {
     ++ optional usbredirSupport "--enable-usb-redir"
     ++ optional (hostCpuTargets != null) "--target-list=${stdenv.lib.concatStringsSep "," hostCpuTargets}"
     ++ optional stdenv.isDarwin "--enable-cocoa"
+    ++ optional stdenv.isDarwin "--enable-hvf"
     ++ optional stdenv.isLinux "--enable-linux-aio"
     ++ optional gtkSupport "--enable-gtk"
     ++ optional xenSupport "--enable-xen"
diff --git a/pkgs/applications/virtualization/singularity/default.nix b/pkgs/applications/virtualization/singularity/default.nix
index 985f46ed960..ab9416fd3d6 100644
--- a/pkgs/applications/virtualization/singularity/default.nix
+++ b/pkgs/applications/virtualization/singularity/default.nix
@@ -1,64 +1,77 @@
-{ stdenv
+{stdenv
+, removeReferencesTo
+, lib
+, fetchgit
 , fetchFromGitHub
-, autoreconfHook
-, gnutar
-, which
-, gnugrep
+, utillinux
+, openssl
 , coreutils
-, python
-, e2fsprogs
+, gawk
+, go
+, which
 , makeWrapper
 , squashfsTools
-, gzip
-, gnused
-, curl
-, utillinux
-, libarchive
-, file
- }:
+, buildGoPackage}:
+
+with lib;
 
-stdenv.mkDerivation rec {
+buildGoPackage rec {
   name = "singularity-${version}";
-  version = "2.6.1";
+  version = "3.0.1";
+
+  src = fetchFromGitHub {
+    owner = "sylabs";
+    repo = "singularity";
+    rev = "v${version}";
+    sha256 = "1wpsd0il2ipa2n5cnbj8dzs095jycdryq2rx62kikbq7ahzz4fsi";
+  };
+
+  goPackagePath = "github.com/sylabs/singularity";
+  goDeps = ./deps.nix;
 
-  enableParallelBuilding = true;
+  buildInputs = [ openssl ];
+  nativeBuildInputs = [ removeReferencesTo utillinux which makeWrapper ];
+  propagatedBuildInputs = [ coreutils squashfsTools ];
 
-  patches = [ ./env.patch ];
+  postConfigure = ''
+    find . -name vendor -type d -print0 | xargs -0 rm -rf
+
+    cd go/src/github.com/sylabs/singularity
 
-  preConfigure = ''
-    sed -i 's/-static//g' src/Makefile.am
     patchShebangs .
-    substituteInPlace libexec/bootstrap-scripts/deffile-sections.sh \
-      --replace /bin/cp ${coreutils}/bin/cp
+    sed -i 's|defaultEnv := "/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"|defaultEnv := "${stdenv.lib.makeBinPath propagatedBuildInputs}"|' src/cmd/singularity/cli/singularity.go
+
+    ./mconfig -V ${version} -p $bin --localstatedir=/var
+    touch builddir/.dep-done
+    touch builddir/vendors-done
+
+    # Don't install SUID binaries
+    sed -i 's/-m 4755/-m 755/g' builddir/Makefile
+
+    # Point to base gopath
+    sed -i "s|^cni_vendor_GOPATH :=.*\$|cni_vendor_GOPATH := $NIX_BUILD_TOP/go/src/github.com/containernetworking/plugins/plugins|" builddir/Makefile
   '';
 
-  configureFlags = [ "--localstatedir=/var" ];
-  installFlags = "CONTAINER_MOUNTDIR=dummy CONTAINER_FINALDIR=dummy CONTAINER_OVERLAY=dummy SESSIONDIR=dummy";
-
-  fixupPhase = ''
-    patchShebangs $out
-    for f in $out/libexec/singularity/helpers/help.sh $out/libexec/singularity/cli/*.exec $out/libexec/singularity/bootstrap-scripts/*.sh ; do
-      chmod a+x $f
-      sed -i 's| /sbin/| |g' $f
-      sed -i 's| /bin/bash| ${stdenv.shell}|g' $f
-      wrapProgram $f --prefix PATH : ${stdenv.lib.makeBinPath buildInputs}
-    done
+  buildPhase = ''
+    make -C builddir
   '';
 
-  src = fetchFromGitHub {
-    owner = "singularityware";
-    repo = "singularity";
-    rev = version;
-    sha256 = "0q8qq9l3s6mv74km9h8gsn5mpd0m98dhmx8vph1jp6wnrr4xyfqf";
-  };
+  installPhase = ''
+    make -C builddir install LOCALSTATEDIR=$bin/var
+    chmod 755 $bin/libexec/singularity/bin/starter-suid
+  '';
 
-  nativeBuildInputs = [ autoreconfHook makeWrapper ];
-  buildInputs = [ coreutils gnugrep python e2fsprogs which gnutar squashfsTools gzip gnused curl utillinux libarchive file ];
+  postFixup = ''
+    find $bin/ -type f -executable -exec remove-references-to -t ${go} '{}' + || true
+
+    # These etc scripts shouldn't have their paths patched
+    cp etc/actions/* $bin/etc/singularity/actions/
+  '';
 
   meta = with stdenv.lib; {
-    homepage = http://singularity.lbl.gov/;
-    description = "Designed around the notion of extreme mobility of compute and reproducible science, Singularity enables users to have full control of their operating system environment";
-    license = "BSD license with 2 modifications";
+    homepage = http://www.sylabs.io/;
+    description = "Application containers for linux";
+    license = licenses.bsd3;
     platforms = platforms.linux;
     maintainers = [ maintainers.jbedo ];
   };
diff --git a/pkgs/applications/virtualization/singularity/deps.nix b/pkgs/applications/virtualization/singularity/deps.nix
new file mode 100644
index 00000000000..526202e75ae
--- /dev/null
+++ b/pkgs/applications/virtualization/singularity/deps.nix
@@ -0,0 +1,669 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "github.com/Microsoft/go-winio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Microsoft/go-winio";
+      rev =  "7da180ee92d8bd8bb8c37fc560e673e6557c392f";
+      sha256 = "19gjjhmzswhm11wzj38r5alxypmflmy0z42flhc3czhmmwv7b1av";
+    };
+  }
+  {
+    goPackagePath  = "github.com/alexflint/go-filemutex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alexflint/go-filemutex";
+      rev =  "d358565f3c3f5334209f1e80693e4f621650c489";
+      sha256 = "19fzbm0x8821awsmqj9ig49dxxkd72p1yfqbijmdwwszvw2r0ggz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev =  "3a771d992973f24aa725d07868b467d1ddfceafb";
+      sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/blang/semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/blang/semver";
+      rev =  "2ee87856327ba09384cabd113bc6b5d174e9ec0f";
+      sha256 = "13ws259bwcibkclbr82ilhk6zadm63kxklxhk12wayklj8ghhsmy";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containerd/cgroups";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containerd/cgroups";
+      rev =  "5017d4e9a9cf2d4381db99eacd9baf84b95bfb14";
+      sha256 = "02pvcmj91j3maa9j1v91m2z9kpa6p822h06r007b3pl7h0paiqnj";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containerd/continuity";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containerd/continuity";
+      rev =  "246e49050efdf45e8f17fbbcf1547ee376f9939e";
+      sha256 = "1zc1f0yixf32lprp5r77z2j9xq7fk0hijq8xzl08j4zrk0fcy8aq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containernetworking/cni";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containernetworking/cni";
+      rev =  "a7885cb6f8ab03fba07852ded351e4f5e7a112bf";
+      sha256 = "00ajs2r5r2z3l0vqwxrcwhjfc9px12qbcv5vnvs2mdipvvls1y2y";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containernetworking/plugins";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containernetworking/plugins";
+      rev =  "2b8b1ac0af4568e928d96ccc5f47b075416eeabd";
+      sha256 = "1yl9m8pwjmqxj3hf0w9s6rykszhcww54z07yjgxzabmqf2dhchxv";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containers/image";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containers/image";
+      rev =  "2e4f799f5eba49a2498d2793cfb2a4bc823ca3f6";
+      sha256 = "0b9symgbkd2vgvp7mfpz1l03i2zivwbc5ycccwv78b1ikk9m6b75";
+    };
+  }
+  {
+    goPackagePath  = "github.com/containers/storage";
+    fetch = {
+      type = "git";
+      url = "https://github.com/containers/storage";
+      rev =  "88d80428f9b146f8f9fe7e2e8cc8688a5aae1a4e";
+      sha256 = "13fagjisbg55dhgjd72h0hiy6jfg8ggkcnjl5haqj13c2gkf6sam";
+    };
+  }
+  {
+    goPackagePath  = "github.com/coreos/go-iptables";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-iptables";
+      rev =  "b5b1876b170881a8259f036445ee89c8669db386";
+      sha256 = "1s1c04x47pk3168606x4vkg4avs8a7m407hpha8py1xni08cgb6m";
+    };
+  }
+  {
+    goPackagePath  = "github.com/coreos/go-systemd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-systemd";
+      rev =  "39ca1b05acc7ad1220e09f133283b8859a8b71ab";
+      sha256 = "1kzqrrzqspa5qm7kwslxl3m16lqzns23c24rv474ajzwmj3ixmx1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev =  "20f5889cbdc3c73dbd2862796665e7c465ade7d1";
+      sha256 = "1w22dfdamsq63b5rvalh9k2y7rbwfkkjs7vm9vd4a13h2ql70lg2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/d2g/dhcp4";
+    fetch = {
+      type = "git";
+      url = "https://github.com/d2g/dhcp4";
+      rev =  "a1d1b6c41b1ce8a71a5121a9cee31809c4707d9c";
+      sha256 = "191hzw6yqzkm042h6miyycq3g0zrhqjhhpl27f8vhwzp4wanasiz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/d2g/dhcp4client";
+    fetch = {
+      type = "git";
+      url = "https://github.com/d2g/dhcp4client";
+      rev =  "e612998962035b93ba16cfd1ad2f3221985c1b8c";
+      sha256 = "1612wh99fblc9ashmm6mjc9110fhal95z0mn9qn7av3px13yd9fs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/distribution";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/distribution";
+      rev =  "749f6afb4572201e3c37325d0ffedb6f32be8950";
+      sha256 = "05jn2wvikyw0pbmi74w5axr0zgxn5y3ynn9rhsq87rmwqj7raxhd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/docker";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/docker";
+      rev =  "da99009bbb1165d1ac5688b5c81d2f589d418341";
+      sha256 = "02hhx7s8vm45rcl2mx9xamkncl2pb6qhsmz35mffbg4n6l5rn5x5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/docker-credential-helpers";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/docker-credential-helpers";
+      rev =  "d68f9aeca33f5fd3f08eeae5e9d175edf4e731d1";
+      sha256 = "1ff829h5p1j6qiivjvnwyiybrff3dddv1ij71nz5whmgavdqgd49";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-connections";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-connections";
+      rev =  "3ede32e2033de7505e6500d6c868c2b9ed9f169d";
+      sha256 = "0v1pkr8apwmhyzbjfriwdrs1ihlk6pw7izm57r24mf9jdmg3fyb0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-metrics";
+      rev =  "399ea8c73916000c64c2c76e8da00ca82f8387ab";
+      sha256 = "0najfy92fq05b330cnjk5b326yi7dnnmvzfk6g5lsa1fci78yzw4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-units";
+      rev =  "47565b4f722fb6ceae66b95f853feed578a4a51c";
+      sha256 = "0npxsb3pp89slwf4a73fxm20hykad8xggij6i6hcd5jy19bjrd93";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/libtrust";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/libtrust";
+      rev =  "aabc10ec26b754e797f9028f4589c5b7bd90dc20";
+      sha256 = "1lwslbggzc2b0c4wxl5pn6i2nfgz5jz8f7s7vnid9mrlsk59h7s1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/ghodss/yaml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ghodss/yaml";
+      rev =  "0ca9ea5df5451ffdf184b4428c902747c2c11cd7";
+      sha256 = "0skwmimpy7hlh7pva2slpcplnm912rp3igs98xnqmn859kwa5v8g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/globalsign/mgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/globalsign/mgo";
+      rev =  "113d3961e7311526535a1ef7042196563d442761";
+      sha256 = "0m05ay993vv2jkc46bbdnq371s5jc0an2cycsj7p3b6lmv84jk9f";
+    };
+  }
+  {
+    goPackagePath  = "github.com/godbus/dbus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/godbus/dbus";
+      rev =  "a389bdde4dd695d414e47b755e95e72b7826432c";
+      sha256 = "1ckvg15zdsgmbn4mi36cazkb407ixc9mmyf7vwj8b8wi3d00rgn9";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev =  "1adfc126b41513cc696b209667c8656ea7aac67c";
+      sha256 = "1j7azzlnihcvnd1apw5zr0bz30h7n0gyimqqkgc76vzb1n5dpi7m";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
+      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/context";
+      rev =  "08b5f424b9271eedf6f9f0ce86cb9396ed337a42";
+      sha256 = "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/mux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/mux";
+      rev =  "e3702bed27f0d39777b0b37b664b6280e8ef8fbf";
+      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev =  "ea4d1f681babbce9545c9c5f3d5194a789c89f5b";
+      sha256 = "1bhgs2542qs49p1dafybqxfs2qc072xv41w5nswyrknwyjxxs2a1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/errwrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/errwrap";
+      rev =  "7554cd9344cec97297fa6649b055a8c98c2a1e55";
+      sha256 = "0kmv0p605di6jc8i1778qzass18m0mv9ks9vxxrfsiwcp4la82jf";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev =  "b7773ae218740a7be65057fc60b366a49b538a44";
+      sha256 = "09904bk7ac6qs9dgiv23rziq9h3makb9qg4jvxr71rlydsd7psfd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev =  "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath  = "github.com/j-keck/arping";
+    fetch = {
+      type = "git";
+      url = "https://github.com/j-keck/arping";
+      rev =  "2cf9dc699c5640a7e2c81403a44127bf28033600";
+      sha256 = "1bid8mpx3j4546ni0a6q5xyz7hb854g95qnxqmg5jzs9vrcird3c";
+    };
+  }
+  {
+    goPackagePath  = "github.com/kubernetes-sigs/cri-o";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes-sigs/cri-o";
+      rev =  "8afc34092907d146906fcc31af112b2b46e7b5cd";
+      sha256 = "0ghcjvk7grdcwb1936mnj56a7rla804glfknid9kmr3kgny3yi43";
+    };
+  }
+  {
+    goPackagePath  = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev =  "c2353362d570a7bfa228149c62842019201cfb71";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev =  "9e777a8366cce605130a531d2cd6363d07ad7317";
+      sha256 = "0vkrfrz3fzn5n6ix4k8s0cg0b448459sldq8bp4riavsxm932jzb";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-shellwords";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-shellwords";
+      rev =  "02e3cf038dcea8290e44424da473dd12be796a8a";
+      sha256 = "1pg7pl25wvpl2dbpyrv9p1r7prnqimxlf6136vn0dfm54j2x4mnr";
+    };
+  }
+  {
+    goPackagePath  = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev =  "c12348ce28de40eed0136aa2b644d0ee0650e56c";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mtrmac/gpgme";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mtrmac/gpgme";
+      rev =  "b2432428689ca58c2b8e8dea9449d3295cf96fc9";
+      sha256 = "0hs9gfwf3cmnvmmxb485icwlv8h8xnny3p52bj7qwv251pvwsnaf";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/go-digest";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/go-digest";
+      rev =  "279bed98673dd5bef374d3b6e4b09e2af76183bf";
+      sha256 = "01gc7fpn8ax429024p2fcx3yb18axwz5bjf2hqxlii1jbsgw4bh9";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/image-spec";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/image-spec";
+      rev =  "e562b04403929d582d449ae5386ff79dd7961a11";
+      sha256 = "0j24nk975di8hcv6ycn2p2hhw1xdiy4bpxamr6wn12k21kadlp7s";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/image-tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sylabs/image-tools";
+      rev =  "2814f498056809a9d5baaf76d1d82312180a5888";
+      sha256 = "0q3ljb51df5hc58rhp5xni2gsy3gkxn47d9dwyfcffnq8kpf9d8a";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/runc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/runc";
+      rev =  "baf6536d6259209c3edfa2b22237af82942d3dfa";
+      sha256 = "09fm7f1k4lvx8v3crqb0cli1x2brlz8ka7f7qa8d2sb6ln58h7w7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/runtime-spec";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/runtime-spec";
+      rev =  "5806c35637336642129d03657419829569abc5aa";
+      sha256 = "13vw1b3j9sx7d5fr3w3jdg137nnqcr50fqchq8z8nf6s18lkhj93";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/runtime-tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/runtime-tools";
+      rev =  "1c243a8a8eb44d491790798afc9b634c6f6a6380";
+      sha256 = "1ll5wrbn84yb2l7k6hpwwj06wywib7ar4z1bhh1rc5h9xajng7jq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/opencontainers/selinux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opencontainers/selinux";
+      rev =  "ba1aefe8057f1d0cfb8e88d0ec1dc85925ef987d";
+      sha256 = "1n283j7rsim7gysm91x99c41d7vnsjsgfm4dy11fnzpkpzfiksq5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev =  "c01d1270ff3e442a8a57cddc1c92dc1138598194";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev =  "645ef00459ed84a119197bfb8d8205042c6df63d";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pquerna/ffjson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pquerna/ffjson";
+      rev =  "d49c2bc1aa135aad0c6f4fc2056623ec78f5d5ac";
+      sha256 = "069w276lch2hhkvz26wdla8d4s0cg842bhqmih4sa33dsinlgs8g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev =  "faf4ec335fe01ae5a6a0eaa34a5a9333bfbd1a30";
+      sha256 = "08xgqgx7vc27zc30chgi09lwrnvxr338dn624xnw4ysfm9r6lxrz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev =  "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c";
+      sha256 = "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev =  "7600349dcfe1abd18d72d3a1770870d9800a7801";
+      sha256 = "0lsp94dqpj35dny4m4x15kg4wgwawlm3in7cnpajkkacgyxagk5f";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev =  "7d6f385de8bea29190f15ba9931442a0eaef9af7";
+      sha256 = "18cish8yas5r6xhgp8p8n7lg4wh3d4szzirszxra8m7rwy3swxxq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev =  "55d61fa8aa702f59229e6cff85793c22e580eaf5";
+      sha256 = "0qmavm5d14kj6im6sqzpqnlhpy524428vkn4hnfwknndr9rycmn0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/safchain/ethtool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/safchain/ethtool";
+      rev =  "6e3f4faa84e1d8d48afec75ed064cf3611d3f8bf";
+      sha256 = "15xjvny8bfhhjvvv654pimxxw5cd02q8skp1siwbfvrlw598j4lm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/satori/go.uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/satori/go.uuid";
+      rev =  "f58768cc1a7a7e77a3bd49e98cdd21419399b6a3";
+      sha256 = "1j4s5pfg2ldm35y8ls8jah4dya2grfnx2drb4jcbjsyrp4cm5yfb";
+    };
+  }
+  {
+    goPackagePath  = "github.com/seccomp/libseccomp-golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/seccomp/libseccomp-golang";
+      rev =  "e3496e3a417d1dc9ecdceca5af2513271fed37a0";
+      sha256 = "0z8v90nk22h8r5licav1a8cbn6k7bs47l0j1crw7bjl9hv1bmr71";
+    };
+  }
+  {
+    goPackagePath  = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev =  "c155da19408a8799da419ed3eeb0cb5db0ad5dbc";
+      sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev =  "1e58aa3361fd650121dceeedc399e7189c05674a";
+      sha256 = "1d6dy60dw7i2mcab10yp99wi5w28jzhzzf16w4ys6bna7ymndiin";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev =  "583c0c0531f06d5278b7d917446061adc344b5cd";
+      sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/sylabs/sif";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sylabs/sif";
+      rev =  "177b9338f1ab9123be5b6217740be1f0ce924206";
+      sha256 = "1dwpml36n06hglp2km1wsfzdiw1yva6a0h00f1y2933m3i8r3k2w";
+    };
+  }
+  {
+    goPackagePath  = "github.com/syndtr/gocapability";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/gocapability";
+      rev =  "33e07d32887e1e06b7c025f27ce52f62c7990bc0";
+      sha256 = "1x88c0b320b13w7samicf19dqx9rr4dnrh3yglk3cba21nwsp57i";
+    };
+  }
+  {
+    goPackagePath  = "github.com/vishvananda/netlink";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vishvananda/netlink";
+      rev =  "a2ad57a690f3caf3015351d2d6e1c0b95c349752";
+      sha256 = "0hpzghf1a4cwawzhkiwdzin80h6hd09fskl77d5ppgc084yvj8x0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/vishvananda/netns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vishvananda/netns";
+      rev =  "be1fbeda19366dea804f00efff2dd73a1642fdcc";
+      sha256 = "0j0xin37zp34ajmhsgfbxr8l7vrljf1lc6z3j3miidlmfwcl2s0m";
+    };
+  }
+  {
+    goPackagePath  = "github.com/xeipuuv/gojsonpointer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonpointer";
+      rev =  "4e3ac2762d5f479393488629ee9370b50873b3a6";
+      sha256 = "13y6iq2nzf9z4ls66bfgnnamj2m3438absmbpqry64bpwjfbsi9q";
+    };
+  }
+  {
+    goPackagePath  = "github.com/xeipuuv/gojsonreference";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonreference";
+      rev =  "bd5ef7bd5415a7ac448318e64f11a24cd21e594b";
+      sha256 = "1xby79padc7bmyb8rfbad8wfnfdzpnh51b1n8c0kibch0kwc1db5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/xeipuuv/gojsonschema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonschema";
+      rev =  "1d523034197ff1f222f6429836dd36a2457a1874";
+      sha256 = "1z8c6x8sfh6d1ib2lm2jps7r139qip6h3zik3fxhy1yr1380qbzp";
+    };
+  }
+  {
+    goPackagePath  = "go4.org";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go4org/go4";
+      rev =  "9599cf28b011184741f249bd9f9330756b506cbc";
+      sha256 = "0hssb6jmpjxvdx2k1zx0l2dbwpx52zxcq5n2bhqivr670r4wdrkq";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sylabs/golang-x-crypto";
+      rev =  "4bce89e8e9a9f84a4cf02b9842c3eaff2af0a856";
+      sha256 = "11wi2zd055ym9m36ba007rdg4ghrwaiqxc77qyqc37ln7l7accr9";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev =  "db08ff08e8622530d9ed3a0e8ac279f6d4c02196";
+      sha256 = "1f6q8kbijnrfy6wjqxrzgjf38ippckc5w34lhqsjs7kq045aar9a";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev =  "6c888cc515d3ed83fc103cf1d84468aad274b0a7";
+      sha256 = "18anqrdajp4p015v3f5y641k3lmgp2jr0lfyx0pb3ia0qvn93mrp";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/cheggaaa/pb.v1";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cheggaaa/pb";
+      rev =  "2af8bbdea9e99e83b3ac400d8f6b6d1b8cbbf338";
+      sha256 = "0vxqiw6f3xyv0zy3g4lksf8za0z8i0hvfpw92hqimsy84f79j3dp";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-yaml/yaml";
+      rev =  "5420a8b6744d3b0345ab293f6fcba19c978f1183";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+]
\ No newline at end of file
diff --git a/pkgs/applications/virtualization/singularity/env.patch b/pkgs/applications/virtualization/singularity/env.patch
deleted file mode 100644
index bc3be363bb8..00000000000
--- a/pkgs/applications/virtualization/singularity/env.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/libexec/functions b/libexec/functions
-index bc68107..6c2211c 100644
---- a/libexec/functions
-+++ b/libexec/functions
-@@ -29,16 +29,6 @@ if [ -z "${SINGULARITY_MESSAGELEVEL:-}" ]; then
-     SINGULARITY_MESSAGELEVEL=5
- fi
- 
--if [ -z "${USER:-}" ]; then
--    USER=`id -un`
--    export USER
--fi
--if [ -z "${HOME:-}" ]; then
--    HOME=`getent passwd "$USER" | cut -d : -f 6`
--    export HOME
--fi
--
--
- message() {
-     LEVEL="${1:-}"
-     MESSAGE="${2:-}"
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 3163ab50150..26307f3f38d 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -10,12 +10,12 @@ with stdenv.lib;
 
 python3Packages.buildPythonApplication rec {
   name = "virt-manager-${version}";
-  version = "2.0.0";
+  version = "2.1.0";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://virt-manager.org/download/sources/virt-manager/${name}.tar.gz";
-    sha256 = "1b48xbrx99mfiv80c60k3ydzkpcpbq57c8h8dl0gnffmnzbs8vzb";
+    sha256 = "1m038kyngmxlgz91c7z8g73lb2wy0ajyah871a3g3wb5cnd0dsil";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 828db24c325..8304dd15597 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, lib, fetchpatch, iasl, dev86, pam, libxslt, libxml2
+{ config, stdenv, fetchurl, lib, fetchpatch, iasl, dev86, pam, libxslt, libxml2
 , libX11, xorgproto, libXext, libXcursor, libXmu, qt5, libIDL, SDL, libcap
 , libpng, glib, lvm2, libXrandr, libXinerama, libopus
 , pkgconfig, which, docbook_xsl, docbook_xml_dtd_43
@@ -7,7 +7,7 @@
 , javaBindings ? false, jdk ? null
 , pythonBindings ? false, python2 ? null
 , extensionPack ? null, fakeroot ? null
-, pulseSupport ? false, libpulseaudio ? null
+, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
 , enableHardening ? false
 , headless ? false
 , enable32bitGuests ? true
diff --git a/pkgs/applications/virtualization/x11docker/default.nix b/pkgs/applications/virtualization/x11docker/default.nix
new file mode 100644
index 00000000000..8e248061cd5
--- /dev/null
+++ b/pkgs/applications/virtualization/x11docker/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, makeWrapper, nx-libs, xorg }:
+stdenv.mkDerivation rec {
+  name = "x11docker-${version}";
+  version = "5.4.1";
+  src = fetchFromGitHub {
+    owner = "mviereck";
+    repo = "x11docker";
+    rev = "v${version}";
+    sha256 = "0fcdr8i3crf4cina41h030q2jf5zvafll97iff129dl3sb27jnvi";
+  };
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ nx-libs xorg.xhost xorg.xinit ];
+
+  dontBuild = true;
+
+  PATH_PREFIX = "${nx-libs}/bin:${xorg.xdpyinfo}/bin:${xorg.xhost}/bin:${xorg.xinit}/bin";
+
+  installPhase = ''
+    install -D x11docker "$out/bin/x11docker";
+    #install -D x11docker-gui "$out/bin/x11docker-gui";
+    wrapProgram "$out/bin/x11docker" --prefix PATH : "${PATH_PREFIX}"
+    #wrapProgram "$out/bin/x11docker-gui" --prefix PATH : "${PATH_PREFIX}"
+    # GUI disabled because of missing `kaptain` dependency
+  '';
+
+  meta = {
+    description = "Run graphical applications with Docker";
+    homepage = https://github.com/mviereck/x11docker;
+    license = stdenv.lib.licenses.mit;
+    maintainers = with stdenv.lib.maintainers; [ jD91mZM2 ];
+  };
+}
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 9791b2c8729..364771de80f 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, luaPackages, cairo, librsvg, cmake, imagemagick, pkgconfig, gdk_pixbuf
 , xorg, libstartup_notification, libxdg_basedir, libpthreadstubs
 , xcb-util-cursor, makeWrapper, pango, gobject-introspection
-, which, dbus, nettools, git, asciidoc, doxygen
+, which, dbus, nettools, git, doxygen
 , xmlto, docbook_xml_dtd_45, docbook_xsl, findXMLCatalogs
 , libxkbcommon, xcbutilxrm, hicolor-icon-theme
 , asciidoctor
@@ -19,7 +19,6 @@ with luaPackages; stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    asciidoc
     cmake
     doxygen
     imagemagick
diff --git a/pkgs/applications/window-managers/bspwm/default.nix b/pkgs/applications/window-managers/bspwm/default.nix
index dc57ad13d41..03652c749de 100644
--- a/pkgs/applications/window-managers/bspwm/default.nix
+++ b/pkgs/applications/window-managers/bspwm/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "bspwm-${version}";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchFromGitHub {
     owner  = "baskerville";
     repo   = "bspwm";
     rev    = version;
-    sha256 = "09h3g1rxxjyw861mk32lj774nmwkx8cwxq4wfgmf4dpbizymvhhr";
+    sha256 = "1ywjhqxvggfdfd3cfki0vvlsli8lhqlziwfrj5vd57c6yisc2fyy";
   };
 
   buildInputs = [ libxcb libXinerama xcbutil xcbutilkeysyms xcbutilwm ];
diff --git a/pkgs/applications/window-managers/i3/gaps.nix b/pkgs/applications/window-managers/i3/gaps.nix
index 01a89b49e71..f2dc023c81d 100644
--- a/pkgs/applications/window-managers/i3/gaps.nix
+++ b/pkgs/applications/window-managers/i3/gaps.nix
@@ -3,12 +3,12 @@
 i3.overrideAttrs (oldAttrs : rec {
 
   name = "i3-gaps-${version}";
-  version = "4.16";
-  releaseDate = "2018-03-13";
+  version = "4.16.1";
+  releaseDate = "2019-01-27";
 
   src = fetchurl {
     url = "https://github.com/Airblader/i3/archive/${version}.tar.gz";
-    sha256 = "16d215y9g27b75rifm1cgznxg73fmg5ksigi0gbj7pfd6x6bqcy9";
+    sha256 = "1jvyd8p8dfsidfy2yy7adydynzvaf72lx67x71r13hrk8w77hp0k";
   };
 
   nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ autoreconfHook ];
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 0e3168a5782..178d111d79a 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -1,21 +1,24 @@
-{ stdenv, rustPlatform, fetchFromGitHub, pkgconfig, dbus }:
+{ stdenv, rustPlatform, fetchFromGitHub, pkgconfig, dbus, libpulseaudio }:
 
 rustPlatform.buildRustPackage rec {
   name = "i3status-rust-${version}";
-  version = "0.9.0.2018-10-02";
+  version = "0.9.0.2019-02-15";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = "i3status-rust";
-    rev = "11c2a21693ffcd0b6c2e0ac919b2232918293963";
-    sha256 = "019m9qpw7djq6g7lzbm7gjcavlgsp93g3cd7cb408nxnfsi7i9dp";
+    rev = "2dc958995834b529a245c22c510b57d5c928c747";
+    sha256 = "091a2pqgkiwnya2xv5rw5sj730hf6lvkp2kk5midsa3wz2dfbc2j";
   };
 
-  cargoSha256 = "1wnify730f7c3cb8wllqvs7pzrq54g5x81xspvz5gq0iqr0q38zc";
+  cargoSha256 = "06izzv86nkn1izapldysyryz9zvjxvq23c742z284bnxjfq5my6i";
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ dbus ];
+  buildInputs = [ dbus libpulseaudio ];
+
+  # Currently no tests are implemented, so we avoid building the package twice
+  doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Very resource-friendly and feature-rich replacement for i3status";
diff --git a/pkgs/applications/window-managers/sway/beta.nix b/pkgs/applications/window-managers/sway/beta.nix
index 96e919df5a6..155b26e0987 100644
--- a/pkgs/applications/window-managers/sway/beta.nix
+++ b/pkgs/applications/window-managers/sway/beta.nix
@@ -10,13 +10,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "sway";
-  version = "1.0-rc2";
+  version = "1.0-rc3";
 
   src = fetchFromGitHub {
     owner = "swaywm";
     repo = "sway";
     rev = version;
-    sha256 = "052if3nagmwg5zh79nhrq75fbc9v2x950lcs1mal52p801qiv8f1";
+    sha256 = "1ixwc1bg725x68qr84s8a5i4rlzc4svc52jgdw1yl5bgr6l1k5zc";
   };
 
   postPatch = ''
@@ -36,9 +36,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   mesonFlags = [
-    "-Dxwayland=enabled" "-Dgdk-pixbuf=enabled" "-Dman-pages=enabled"
+    "-Dxwayland=enabled" "-Dgdk-pixbuf=enabled"
     "-Dtray=enabled"
-  ];
+  ] ++ stdenv.lib.optional buildDocs "-Dman-pages=enabled";
 
   meta = with stdenv.lib; {
     description = "i3-compatible window manager for Wayland";
diff --git a/pkgs/applications/window-managers/sxhkd/default.nix b/pkgs/applications/window-managers/sxhkd/default.nix
index 86c91347f25..2e58928e34c 100644
--- a/pkgs/applications/window-managers/sxhkd/default.nix
+++ b/pkgs/applications/window-managers/sxhkd/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "sxhkd-${version}";
-  version = "0.5.9";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "baskerville";
     repo = "sxhkd";
     rev = version;
-    sha256 = "0cw547x7vky55k3ksrmzmrra4zhslqcwq9xw0y4cmbvy4s1qf64v";
+    sha256 = "1cz4vkm7fqd51ly9qjkf5q76kdqdzfhaajgvrs4anz5dyzrdpw68";
   };
 
   buildInputs = [ asciidoc libxcb xcbutil xcbutilkeysyms xcbutilwm ];
diff --git a/pkgs/applications/window-managers/xmonad/log-applet/default.nix b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
index 57f00887103..f7ccda27389 100644
--- a/pkgs/applications/window-managers/xmonad/log-applet/default.nix
+++ b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, glib, dbus-glib
-, desktopSupport, xorg
+, desktopSupport ? "gnomeflashback", xorg
 , gtk2
 , gtk3, gnome3, mate
 , libxfce4util, xfce4-panel
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix
index 4122af898de..142f5255caa 100644
--- a/pkgs/build-support/bintools-wrapper/default.nix
+++ b/pkgs/build-support/bintools-wrapper/default.nix
@@ -187,6 +187,7 @@ stdenv.mkDerivation {
       else if targetPlatform.isPower then if targetPlatform.isBigEndian then "ppc" else "lppc"
       else if targetPlatform.isSparc then "sparc"
       else if targetPlatform.isAvr then "avr"
+      else if targetPlatform.isAlpha then "alpha"
       else throw "unknown emulation for platform: " + targetPlatform.config;
     in targetPlatform.platform.bfdEmulation or (fmt + sep + arch);
 
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index 28247bac102..f39f4e65e45 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, bazel, enableNixHacks ? true }:
+{ stdenv, bazel, cacert, enableNixHacks ? true }:
 
 args@{ name, bazelFlags ? [], bazelTarget, buildAttrs, fetchAttrs, ... }:
 
@@ -20,6 +20,8 @@ in stdenv.mkDerivation (fBuildAttrs // {
       export bazelOut="$(echo ''${NIX_BUILD_TOP}/output | sed -e 's,//,/,g')"
       export bazelUserRoot="$(echo ''${NIX_BUILD_TOP}/tmp | sed -e 's,//,/,g')"
       export HOME="$NIX_BUILD_TOP"
+      # This is needed for git_repository with https remotes
+      export GIT_SSL_CAINFO="${cacert}/etc/ssl/certs/ca-bundle.crt"
     '';
 
     buildPhase = fFetchAttrs.buildPhase or ''
@@ -31,7 +33,9 @@ in stdenv.mkDerivation (fBuildAttrs // {
       # sandbox enabled. Code here
       # https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
       #
-      USER=homeless-shelter bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" fetch $bazelFlags $bazelTarget
+      # On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN
+      #
+      BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 USER=homeless-shelter bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" fetch $bazelFlags $bazelTarget
 
       runHook postBuild
     '';
@@ -88,7 +92,42 @@ in stdenv.mkDerivation (fBuildAttrs // {
   buildPhase = fBuildAttrs.buildPhase or ''
     runHook preBuild
 
-    bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" build -j $NIX_BUILD_CORES $bazelFlags $bazelTarget
+    # Bazel sandboxes the execution of the tools it invokes, so even though we are
+    # calling the correct nix wrappers, the values of the environment variables
+    # the wrappers are expecting will not be set. So instead of relying on the
+    # wrappers picking them up, pass them in explicitly via `--copt`, `--linkopt`
+    # and related flags.
+    #
+    copts=()
+    host_copts=()
+    for flag in $NIX_CFLAGS_COMPILE; do
+      copts+=( "--copt=$flag" )
+      host_copts+=( "--host_copt=$flag" )
+    done
+    for flag in $NIX_CXXSTDLIB_COMPILE; do
+      copts+=( "--copt=$flag" )
+      host_copts+=( "--host_copt=$flag" )
+    done
+    linkopts=()
+    host_linkopts=()
+    for flag in $NIX_LD_FLAGS; do
+      linkopts+=( "--linkopt=$flag" )
+      host_linkopts+=( "--host_linkopt=$flag" )
+    done
+
+    BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
+    USER=homeless-shelter \
+    bazel \
+      --output_base="$bazelOut" \
+      --output_user_root="$bazelUserRoot" \
+      build \
+      -j $NIX_BUILD_CORES \
+      "''${copts[@]}" \
+      "''${host_copts[@]}" \
+      "''${linkopts[@]}" \
+      "''${host_linkopts[@]}" \
+      $bazelFlags \
+      $bazelTarget
 
     runHook postBuild
   '';
diff --git a/pkgs/build-support/buildenv/builder.pl b/pkgs/build-support/buildenv/builder.pl
index 678f5a3fe9e..1f77edf86cb 100755
--- a/pkgs/build-support/buildenv/builder.pl
+++ b/pkgs/build-support/buildenv/builder.pl
@@ -84,6 +84,10 @@ sub checkCollision {
 sub findFiles {
     my ($relName, $target, $baseName, $ignoreCollisions, $checkCollisionContents, $priority) = @_;
 
+    if (-f $target) {
+        die "Path $target is a file and can't be merged into an environment using pkgs.buildEnv!";
+    }
+
     # Urgh, hacky...
     return if
         $relName eq "/propagated-build-inputs" ||
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix
index 372c567a7e7..ef17a3f4e58 100644
--- a/pkgs/build-support/docker/default.nix
+++ b/pkgs/build-support/docker/default.nix
@@ -783,7 +783,7 @@ rec {
         imageJson=$(cat ${baseJson} | jq ". + {\"rootfs\": {\"diff_ids\": [], \"type\": \"layers\"}}")
         manifestJson=$(jq -n "[{\"RepoTags\":[\"$imageName:$imageTag\"]}]")
 
-        for layerTar in $(cat ./layer-list); do
+        for layerTar in $(tac ./layer-list); do
           layerChecksum=$(sha256sum image/$layerTar | cut -d ' ' -f1)
           imageJson=$(echo "$imageJson" | jq ".history |= [{\"created\": \"$(jq -r .created ${baseJson})\"}] + .")
           imageJson=$(echo "$imageJson" | jq ".rootfs.diff_ids |= [\"sha256:$layerChecksum\"] + .")
diff --git a/pkgs/build-support/fetchsvn/default.nix b/pkgs/build-support/fetchsvn/default.nix
index 194ce3b39b1..68433d1471d 100644
--- a/pkgs/build-support/fetchsvn/default.nix
+++ b/pkgs/build-support/fetchsvn/default.nix
@@ -1,4 +1,4 @@
-{stdenvNoCC, subversion, glibcLocales, sshSupport ? false, openssh ? null}:
+{stdenvNoCC, subversion, glibcLocales, sshSupport ? true, openssh ? null}:
 {url, rev ? "HEAD", md5 ? "", sha256 ? ""
 , ignoreExternals ? false, ignoreKeywords ? false, name ? null
 , preferLocalBuild ? true }:
diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix
index eccfe1964ac..404c744eea2 100644
--- a/pkgs/build-support/fetchurl/mirrors.nix
+++ b/pkgs/build-support/fetchurl/mirrors.nix
@@ -44,6 +44,8 @@ rec {
 
   # GCC.
   gcc = [
+    https://bigsearcher.com/mirrors/gcc/
+    http://mirror.koddos.net/gcc/
     ftp://ftp.nluug.nl/mirror/languages/gcc/
     ftp://ftp.fu-berlin.de/unix/languages/gcc/
     ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/
diff --git a/pkgs/build-support/nix-gitignore/default.nix b/pkgs/build-support/nix-gitignore/default.nix
new file mode 100644
index 00000000000..28ee6bad554
--- /dev/null
+++ b/pkgs/build-support/nix-gitignore/default.nix
@@ -0,0 +1,178 @@
+# https://github.com/siers/nix-gitignore/
+
+{ lib, runCommand }:
+
+# An interesting bit from the gitignore(5):
+# - A slash followed by two consecutive asterisks then a slash matches
+# - zero or more directories. For example, "a/**/b" matches "a/b",
+# - "a/x/b", "a/x/y/b" and so on.
+
+with builtins;
+
+let
+  debug = a: trace a a;
+  last = l: elemAt l ((length l) - 1);
+
+  throwIfOldNix = let required = "2.0"; in
+    if compareVersions nixVersion required == -1
+    then throw "nix (v${nixVersion} =< v${required}) is too old for nix-gitignore"
+    else true;
+in rec {
+  # [["good/relative/source/file" true] ["bad.tmpfile" false]] -> root -> path
+  filterPattern = patterns: root:
+    (name: _type:
+      let
+        relPath = lib.removePrefix ((toString root) + "/") name;
+        matches = pair: (match (head pair) relPath) != null;
+        matched = map (pair: [(matches pair) (last pair)]) patterns;
+      in
+        last (last ([[true true]] ++ (filter head matched)))
+    );
+
+  # string -> [[regex bool]]
+  gitignoreToPatterns = gitignore:
+    assert throwIfOldNix;
+    let
+      # ignore -> bool
+      isComment = i: (match "^(#.*|$)" i) != null;
+
+      # ignore -> [ignore bool]
+      computeNegation = l:
+        let split = match "^(!?)(.*)" l;
+        in [(elemAt split 1) (head split == "!")];
+
+      # ignore -> regex
+      substWildcards =
+        let
+          special = "^$.+{}()";
+          escs = "\\*?";
+          splitString =
+            let recurse = str : [(substring 0 1 str)] ++
+                                 (if str == "" then [] else (recurse (substring 1 (stringLength(str)) str) ));
+            in str : recurse str;
+          chars = s: filter (c: c != "" && !isList c) (splitString s);
+          escape = s: map (c: "\\" + c) (chars s);
+        in
+          replaceStrings
+            ((chars special)  ++ (escape escs) ++ ["**/"    "**" "*"     "?"])
+            ((escape special) ++ (escape escs) ++ ["(.*/)?" ".*" "[^/]*" "[^/]"]);
+
+      # (regex -> regex) -> regex -> regex
+      mapAroundCharclass = f: r: # rl = regex or list
+        let slightFix = replaceStrings ["\\]"] ["]"];
+        in
+          concatStringsSep ""
+          (map (rl: if isList rl then slightFix (elemAt rl 0) else f rl)
+          (split "(\\[([^\\\\]|\\\\.)+])" r));
+
+      # regex -> regex
+      handleSlashPrefix = l:
+        let
+          split = (match "^(/?)(.*)" l);
+          findSlash = l: if (match ".+/.+" l) != null then "" else l;
+          hasSlash = mapAroundCharclass findSlash l != l;
+        in
+          (if (elemAt split 0) == "/" || hasSlash
+          then "^"
+          else "(^|.*/)"
+          ) + (elemAt split 1);
+
+      # regex -> regex
+      handleSlashSuffix = l:
+        let split = (match "^(.*)/$" l);
+        in if split != null then (elemAt split 0) + "($|/.*)" else l;
+
+      # (regex -> regex) -> [regex, bool] -> [regex, bool]
+      mapPat = f: l: [(f (head l)) (last l)];
+    in
+      map (l: # `l' for "line"
+        mapPat (l: handleSlashSuffix (handleSlashPrefix (mapAroundCharclass substWildcards l)))
+        (computeNegation l))
+      (filter (l: !isList l && !isComment l)
+      (split "\n" gitignore));
+
+  gitignoreFilter = ign: root: filterPattern (gitignoreToPatterns ign) root;
+
+  # string|[string|file] (→ [string|file] → [string]) -> string
+  gitignoreCompileIgnore = file_str_patterns: root:
+    let
+      onPath = f: a: if typeOf a == "path" then f a else a;
+      str_patterns = map (onPath readFile) (lib.toList file_str_patterns);
+    in concatStringsSep "\n" str_patterns;
+
+  gitignoreFilterPure = filter: patterns: root: name: type:
+    gitignoreFilter (gitignoreCompileIgnore patterns root) root name type
+    && filter name type;
+
+  # This is a very hacky way of programming this!
+  # A better way would be to reuse existing filtering by making multiple gitignore functions per each root.
+  # Then for each file find the set of roots with gitignores (and functions).
+  # This would make gitignoreFilterSource very different from gitignoreFilterPure.
+  # rootPath → gitignoresConcatenated
+  compileRecursiveGitignore = root:
+    let
+      dirOrIgnore = file: type: baseNameOf file == ".gitignore" || type == "directory";
+      ignores = builtins.filterSource dirOrIgnore root;
+    in readFile (
+      runCommand "${baseNameOf root}-recursive-gitignore" {} ''
+        cd ${ignores}
+
+        find -type f -exec sh -c '
+          rel="$(realpath --relative-to=. "$(dirname "$1")")/"
+          if [ "$rel" = "./" ]; then rel=""; fi
+
+          awk -v prefix="$rel" -v root="$1" -v top="$(test -z "$rel" && echo 1)" "
+            BEGIN { print \"# \"root }
+
+            /^!?[^\\/]+\/?$/ {
+              match(\$0, /^!?/, negation)
+              sub(/^!?/, \"\")
+
+              if (top) { middle = \"\" } else { middle = \"**/\" }
+
+              print negation[0] prefix middle \$0
+            }
+
+            /^!?(\\/|.*\\/.+$)/ {
+              match(\$0, /^!?/, negation)
+              sub(/^!?/, \"\")
+
+              if (!top) sub(/^\//, \"\")
+
+              print negation[0] prefix \$0
+            }
+
+            END { print \"\" }
+          " "$1"
+        ' sh {} \; > $out
+      '');
+
+  withGitignoreFile = patterns: root:
+    lib.toList patterns ++ [(root + "/.gitignore")];
+
+  withRecursiveGitignoreFile = patterns: root:
+    lib.toList patterns ++ [(compileRecursiveGitignore root)];
+
+  # filterSource derivatives
+
+  gitignoreFilterSourcePure = filter: patterns: root:
+    filterSource (gitignoreFilterPure filter patterns root) root;
+
+  gitignoreFilterSource = filter: patterns: root:
+    gitignoreFilterSourcePure filter (withGitignoreFile patterns root) root;
+
+  gitignoreFilterRecursiveSource = filter: patterns: root:
+    gitignoreFilterSourcePure filter (withRecursiveGitignoreFile patterns root) root;
+
+  # "Filter"-less alternatives
+
+  gitignoreSourcePure = gitignoreFilterSourcePure (_: _: true);
+  gitignoreSource = patterns: let type = typeOf patterns; in
+    if (type == "string" && pathExists patterns) || type == "path"
+    then throw
+      "type error in gitignoreSource(patterns -> source -> path), "
+      "use [] or \"\" if there are no additional patterns"
+    else gitignoreFilterSource (_: _: true) patterns;
+
+  gitignoreRecursiveSource = gitignoreFilterSourcePure (_: _: true);
+}
diff --git a/pkgs/build-support/singularity-tools/default.nix b/pkgs/build-support/singularity-tools/default.nix
index f9b4c8a7fd3..4206b0f33ff 100644
--- a/pkgs/build-support/singularity-tools/default.nix
+++ b/pkgs/build-support/singularity-tools/default.nix
@@ -87,19 +87,14 @@ rec {
             # Create runScript
             ln -s ${runScriptFile} singularity
 
-            # Size calculation
-            cd ..
-            umount disk
-            size=$(resize2fs -P /dev/${vmTools.hd} | awk '{print $NF}')
-            mount /dev/${vmTools.hd} disk
-            cd disk
+            # Fill out .singularity.d
+            mkdir -p .singularity.d/env
+            touch .singularity.d/env/94-appsbase.sh
 
-            export PATH=$PATH:${e2fsprogs}/bin/
-            echo creating
-            singularity image.create -s $((1 + size * 4 / 1024 + ${toString extraSpace})) $out
-            echo importing
+            cd ..
             mkdir -p /var/singularity/mnt/{container,final,overlay,session,source}
-            tar -c . | singularity image.import $out
+            echo "root:x:0:0:System administrator:/root:/bin/sh" > /etc/passwd
+            singularity build $out ./disk
           '');
 
     in result;
diff --git a/pkgs/common-updater/scripts/update-source-version b/pkgs/common-updater/scripts/update-source-version
index 57b52553c2b..117e8724cd8 100755
--- a/pkgs/common-updater/scripts/update-source-version
+++ b/pkgs/common-updater/scripts/update-source-version
@@ -96,7 +96,7 @@ fi
 if [ -z "$newHash" ]; then
     nix-build --no-out-link -A "$attr.src" 2>"$attr.fetchlog" >/dev/null || true
     # FIXME: use nix-build --hash here once https://github.com/NixOS/nix/issues/1172 is fixed
-    newHash=$(egrep -v "killing process|dependencies couldn't be built" "$attr.fetchlog" | tail -n2 | sed "s~output path .* has .* hash ‘\(.*\)’ when .* was expected\|fixed-output derivation produced path '.*' with .* hash '\(.*\)' instead of the expected hash '.*'~\1\2~" | head -n1)
+    newHash=$(egrep -v "killing process|dependencies couldn't be built|wanted: " "$attr.fetchlog" | tail -n2 | sed "s~output path .* has .* hash ‘\(.*\)’ when .* was expected\|fixed-output derivation produced path '.*' with .* hash '\(.*\)' instead of the expected hash '.*'\|  got:    .*:\(.*\)~\1\2\3~" | head -n1)
 fi
 
 if [ -z "$newHash" ]; then
diff --git a/pkgs/data/themes/shades-of-gray/default.nix b/pkgs/data/themes/shades-of-gray/default.nix
index 391c99c0ab9..af73ec322d0 100644
--- a/pkgs/data/themes/shades-of-gray/default.nix
+++ b/pkgs/data/themes/shades-of-gray/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "shades-of-gray-theme-${version}";
-  version = "1.1.4";
+  version = "1.1.5";
 
   src = fetchFromGitHub {
     owner = "WernerFP";
     repo = "Shades-of-gray-theme";
     rev = version;
-    sha256 = "1i5mra1ib3c8xqnhwjh8yzjcdnhvqdmccw5x52sfh9xq797px39l";
+    sha256 = "1ql8rkbm5l94b842hg53cwf02vbw2785rlrs4cr60d4kn2c0lj2y";
   };
 
   buildInputs = [ gtk_engines ];
diff --git a/pkgs/desktops/gnome-3/apps/evolution/default.nix b/pkgs/desktops/gnome-3/apps/evolution/default.nix
index 0b86cfbf86a..fa406e6f4db 100644
--- a/pkgs/desktops/gnome-3/apps/evolution/default.nix
+++ b/pkgs/desktops/gnome-3/apps/evolution/default.nix
@@ -7,13 +7,13 @@
 , libcanberra-gtk3, bogofilter, gst_all_1, procps, p11-kit, openldap }:
 
 let
-  version = "3.30.4";
+  version = "3.30.5";
 in stdenv.mkDerivation rec {
   name = "evolution-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "10dy08xpizvvj7r8xgs3lr6migm3ipr199yryqz7wgkycq6nf53b";
+    sha256 = "1hhxj3rh921pp3l3c5k33bdypcas1p66krzs65k1qn82c5fpgl2h";
   };
 
   propagatedUserEnvPkgs = [ evolution-data-server ];
diff --git a/pkgs/desktops/gnome-3/core/dconf/default.nix b/pkgs/desktops/gnome-3/core/dconf/default.nix
index 9c1d7d7d1a9..1f55071c83d 100644
--- a/pkgs/desktops/gnome-3/core/dconf/default.nix
+++ b/pkgs/desktops/gnome-3/core/dconf/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, python3, vala, libxslt, pkgconfig, glib, bash-completion, dbus, gnome3
-, libxml2, gtk-doc, docbook_xsl, docbook_xml_dtd_42 }:
+, libxml2, gtk-doc, docbook_xsl, docbook_xml_dtd_42, fetchpatch }:
 
 let
   pname = "dconf";
@@ -13,6 +13,15 @@ stdenv.mkDerivation rec {
     sha256 = "1dq2dn7qmxr4fxzx9wnag89ck24gxq17p2n4gl81h4w8qdy3m6jl";
   };
 
+  patches = [
+    # Fix the build on Darwin
+    # Issue: https://gitlab.gnome.org/GNOME/dconf/issues/47
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/dconf/commit/49f4d916e1151af3975df52c522c69de98ed2fbb.patch";
+      sha256 = "00klkr1jzli9ap0aj6399m1bj2bxxz48pmcj4r16dsy6dfdl6325";
+    })
+  ];
+
   postPatch = ''
     chmod +x meson_post_install.py
     patchShebangs meson_post_install.py
diff --git a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
index 3daeb8d6155..806c3f32d2b 100644
--- a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   name = "evolution-data-server-${version}";
-  version = "3.30.4";
+  version = "3.30.5";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution-data-server/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1j8lwl04zz59sg7k3hpkzp829z8xyd1isz8xavm9vzxfvw5w776y";
+    sha256 = "1s952wyhgcbmq9nfgk75v15zdy1h3wy5p5rmkqibaavmc0pk3mli";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index 0862cda759a..d0f3426a3cd 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -4,7 +4,7 @@
 , libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
 , cracklib, libkrb5, networkmanagerapplet, networkmanager, glibc
 , libwacom, samba, shared-mime-info, tzdata, libtool, libgnomekbd
-, docbook_xsl, modemmanager, clutter, clutter-gtk, cheese
+, docbook_xsl, modemmanager, clutter, clutter-gtk, cheese, gnome-session
 , fontconfig, sound-theme-freedesktop, grilo, python3
 , gtk3, glib, glib-networking, gsettings-desktop-schemas
 , gnome-desktop, gnome-settings-daemon, gnome-online-accounts
@@ -49,6 +49,10 @@ in stdenv.mkDerivation rec {
     patchShebangs build-aux/meson/meson_post_install.py
   '';
 
+  mesonFlags = [
+    "-Dgnome_session_libexecdir=${gnome-session}/libexec"
+  ];
+
   preFixup = ''
     gappsWrapperArgs+=(
       --prefix XDG_DATA_DIRS : "${sound-theme-freedesktop}/share"
diff --git a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
index e46f4ea4fac..5812f16d296 100644
--- a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "gnome-chess-${version}";
-  version = "3.30.0";
+  version = "3.30.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-chess/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "153wwh0861qfg53myyc3iwlqm989lbhdrlmsxaibmkxv3pgpl7ma";
+    sha256 = "1gzdm6z54kxx06lh616g33klrp4dby2a68wxvjpsavdll28kgwgl";
   };
 
   nativeBuildInputs = [ meson ninja vala pkgconfig gettext itstool libxml2 python3 wrapGAppsHook gobject-introspection ];
diff --git a/pkgs/desktops/lxqt/compton-conf/default.nix b/pkgs/desktops/lxqt/compton-conf/default.nix
index 9c36b523207..479491b35d8 100644
--- a/pkgs/desktops/lxqt/compton-conf/default.nix
+++ b/pkgs/desktops/lxqt/compton-conf/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, lxqt, libconfig }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, lxqt,
+  libconfig }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "compton-conf";
-  version = "0.4.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1r187fx1vivzq1gcwwawax36mnlmfig5j1ba4s4wfdi3q2wcq7mw";
+    sha256 = "1vxbh0vr7wknr7rbmdbmy5md1fdkw3zwlgpbv16cwdplbv9m97xi";
   };
 
   nativeBuildInputs = [
@@ -24,8 +24,6 @@ stdenv.mkDerivation rec {
     libconfig
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   preConfigure = ''
     substituteInPlace autostart/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg" \
diff --git a/pkgs/desktops/lxqt/default.nix b/pkgs/desktops/lxqt/default.nix
index 62b8aaf25ab..db21a72cb9b 100644
--- a/pkgs/desktops/lxqt/default.nix
+++ b/pkgs/desktops/lxqt/default.nix
@@ -18,7 +18,6 @@ let
     lxqt-admin = callPackage ./lxqt-admin { };
     lxqt-config = callPackage ./lxqt-config { };
     lxqt-globalkeys = callPackage ./lxqt-globalkeys { };
-    lxqt-l10n = callPackage ./lxqt-l10n { };
     lxqt-notificationd = callPackage ./lxqt-notificationd { };
     lxqt-openssh-askpass = callPackage ./lxqt-openssh-askpass { };
     lxqt-policykit = callPackage ./lxqt-policykit { };
@@ -29,8 +28,6 @@ let
     lxqt-themes = callPackage ./lxqt-themes { };
     pavucontrol-qt = libsForQt5.callPackage ./pavucontrol-qt { };
     qtermwidget = callPackage ./qtermwidget { };
-    # for now keep version 0.7.1 because virt-manager-qt currently does not compile with qtermwidget-0.8.0
-    qtermwidget_0_7_1 = callPackage ./qtermwidget/0.7.1.nix { };
 
     ### CORE 2
     lxqt-panel = callPackage ./lxqt-panel { };
@@ -70,7 +67,6 @@ let
       lxqt-admin
       lxqt-config
       lxqt-globalkeys
-      lxqt-l10n
       lxqt-notificationd
       lxqt-openssh-askpass
       lxqt-policykit
diff --git a/pkgs/desktops/lxqt/libfm-qt/default.nix b/pkgs/desktops/lxqt/libfm-qt/default.nix
index 4c187f1a07c..70675e1408c 100644
--- a/pkgs/desktops/lxqt/libfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/libfm-qt/default.nix
@@ -5,15 +5,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "libfm-qt";
-  version = "0.13.1";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1g8j1lw74qvagqhqsx45b290fjwh3jfl3i0366m0w4la03v0rw5j";
+    sha256 = "1siqqn4waglymfi7c7lrmlxkylddw8qz0qfwqxr1hnmx3dsj9c36";
   };
 
   nativeBuildInputs = [
@@ -34,8 +33,6 @@ stdenv.mkDerivation rec {
     menu-cache
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "Core library of PCManFM-Qt (Qt binding for libfm)";
     homepage = https://github.com/lxqt/libfm-qt;
diff --git a/pkgs/desktops/lxqt/liblxqt/default.nix b/pkgs/desktops/lxqt/liblxqt/default.nix
index 0762dbad3f8..1b19275ece9 100644
--- a/pkgs/desktops/lxqt/liblxqt/default.nix
+++ b/pkgs/desktops/lxqt/liblxqt/default.nix
@@ -2,15 +2,14 @@
   qttools, qtsvg, libqtxdg, polkit-qt, kwindowsystem, xorg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "liblxqt";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1lbvnx6gg15k7fy1bnv5sjji659f603glblcl8c9psh0m1cjdbll";
+    sha256 = "1cpl6sd2fifpflahm8fvrrscrv03sinfm03m7yc1k59y6nsbwi36";
   };
 
   nativeBuildInputs = [
@@ -29,13 +28,14 @@ stdenv.mkDerivation rec {
   ];
 
   cmakeFlags = [
-    "-DPULL_TRANSLATIONS=NO"
     "-DLXQT_ETC_XDG_DIR=/run/current-system/sw/etc/xdg"
   ];
 
-  patchPhase = ''
+  postPatch = ''
     sed -i 's|set(LXQT_SHARE_DIR .*)|set(LXQT_SHARE_DIR "/run/current-system/sw/share/lxqt")|' CMakeLists.txt
     sed -i "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" CMakeLists.txt
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/libqtxdg/default.nix b/pkgs/desktops/lxqt/libqtxdg/default.nix
index 0b23fb2d04f..852c4bddec8 100644
--- a/pkgs/desktops/lxqt/libqtxdg/default.nix
+++ b/pkgs/desktops/lxqt/libqtxdg/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, qt5 }:
+{ stdenv, fetchFromGitHub, cmake, qtbase, qtsvg }:
 
 stdenv.mkDerivation rec {
-  name = "libqtxdg-${version}";
-  version = "3.2.0";
+  pname = "libqtxdg";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
-    repo = "libqtxdg";
+    repo = pname;
     rev = version;
-    sha256 = "0lkmwnqk314mlr811rdb96p6i7zg67slxdvd4cdkiwakgbzzaa4m";
+    sha256 = "0qgqqgy15h0d1fwk4mnbv2hirz8njjjlng64bv33rc6wwrsaa50b";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ qt5.qtbase qt5.qtsvg ];
+  buildInputs = [ qtbase qtsvg ];
 
   preConfigure = ''
     cmakeFlagsArray+=(
diff --git a/pkgs/desktops/lxqt/libsysstat/default.nix b/pkgs/desktops/lxqt/libsysstat/default.nix
index 2e6b79f9769..74fa1b03fa6 100644
--- a/pkgs/desktops/lxqt/libsysstat/default.nix
+++ b/pkgs/desktops/lxqt/libsysstat/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, qt5, lxqt }:
+{ stdenv, fetchFromGitHub, cmake, qtbase, lxqt-build-tools }:
 
 stdenv.mkDerivation rec {
-  name = "libsysstat-${version}";
-  version = "0.4.1";
+  pname = "libsysstat";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "lxqt";
-    repo = "libsysstat";
+    repo = pname;
     rev = version;
-    sha256 = "0ad5pcr5lq1hvrfijvddvz2fvsmh1phb54wb0f756av0kyiwq0gb";
+    sha256 = "10h9n7km7yx8bnmzxi4nn1yqq03hizjkrx4745j0mczy7niiffsz";
   };
 
-  nativeBuildInputs = [ cmake lxqt.lxqt-build-tools ];
+  nativeBuildInputs = [ cmake lxqt-build-tools ];
 
-  buildInputs = [ qt5.qtbase ];
+  buildInputs = [ qtbase ];
 
   meta = with stdenv.lib; {
     description = "Library used to query system info and statistics";
diff --git a/pkgs/desktops/lxqt/lximage-qt/default.nix b/pkgs/desktops/lxqt/lximage-qt/default.nix
index 7f80e56bc7d..a0a83ad3469 100644
--- a/pkgs/desktops/lxqt/lximage-qt/default.nix
+++ b/pkgs/desktops/lxqt/lximage-qt/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, qt5, xorg, lxqt-build-tools, libfm-qt, libexif }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools,
+  qtx11extras, qtsvg, xorg, lxqt-build-tools, libfm-qt, libexif }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lximage-qt";
-  version = "0.7.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1slmaic9cmj5lqa5kwc1qfbbycwh8840wnkg0nxc99ls0aazlpzi";
+    sha256 = "0zx9903ym5a9zk4m9khr22fj5sy57mg2v8wnk177wjm11lhic5v8";
   };
 
   nativeBuildInputs = [
@@ -19,18 +19,16 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    qt5.qtbase
-    qt5.qttools
-    qt5.qtx11extras
-    qt5.qtsvg
+    qtbase
+    qttools
+    qtx11extras
+    qtsvg
     libfm-qt
     xorg.libpthreadstubs
     xorg.libXdmcp
     libexif
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "The image viewer and screenshot tool for lxqt";
     homepage = https://github.com/lxqt/lximage-qt;
diff --git a/pkgs/desktops/lxqt/lxqt-about/default.nix b/pkgs/desktops/lxqt/lxqt-about/default.nix
index e109a4f0944..013be8eea4f 100644
--- a/pkgs/desktops/lxqt/lxqt-about/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-about/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtx11extras, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-about";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "03f53rnn4rkd1xc2q9abnw37aq4sgvpbwhmcnckqyzc87lj6ici0";
+    sha256 = "14b13v1r5ncz4ycg25ac9ppafiifc37qws8kcw078if72rp9n121";
   };
 
   nativeBuildInputs = [
@@ -26,7 +25,10 @@ stdenv.mkDerivation rec {
     libqtxdg
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+  postPatch = ''
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+  '';
 
   meta = with stdenv.lib; {
     description = "Dialogue window providing information about LXQt and the system it's running on";
diff --git a/pkgs/desktops/lxqt/lxqt-admin/default.nix b/pkgs/desktops/lxqt/lxqt-admin/default.nix
index a92c352087e..528f9a390f9 100644
--- a/pkgs/desktops/lxqt/lxqt-admin/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-admin/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtx11extras, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg, polkit-qt }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-admin";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1nsf8sbgmfanvcxw67drhz1wrizkcd0p87jwr1za5rcgd50bi2yy";
+    sha256 = "0sdb514hgha5yvmbzi6nm1yx1rmbkh5fam09ybidjwpdwl2l4pxx";
   };
 
   nativeBuildInputs = [
@@ -27,12 +26,15 @@ stdenv.mkDerivation rec {
     polkit-qt
   ];
 
-  patchPhase = ''
+  postPatch = ''
     sed "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" \
       -i lxqt-admin-user/CMakeLists.txt
-  '';
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+    for f in lxqt-admin-{user,time}/CMakeLists.txt; do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
+  '';
 
   meta = with stdenv.lib; {
     description = "LXQt system administration tool";
diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
index 46f904d0ec7..f55fa579ff4 100644
--- a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, pcre, qt5, glib }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, glib }:
 
 stdenv.mkDerivation rec {
-  name = "lxqt-build-tools-${version}";
-  version = "0.5.0";
+  pname = "lxqt-build-tools";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
-    repo = "lxqt-build-tools";
+    repo = pname;
     rev = version;
-    sha256 = "0dcwzrijmn4sgivmy2zwz3xa4y69pwhranyw0m90g0pp55di2psz";
+    sha256 = "0i7m9s4g5rsw28vclc9nh0zcapx85cqfwxkx7rrw7wa12svy7pm2";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
 
-  buildInputs = [ qt5.qtbase glib pcre ];
+  buildInputs = [ qtbase glib pcre ];
 
   preConfigure = ''cmakeFlags+=" -DLXQT_ETC_XDG_DIR=$out/etc/xdg"'';
 
diff --git a/pkgs/desktops/lxqt/lxqt-config/default.nix b/pkgs/desktops/lxqt/lxqt-config/default.nix
index 3a167996ddb..d2c583b53fa 100644
--- a/pkgs/desktops/lxqt/lxqt-config/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-config/default.nix
@@ -1,15 +1,16 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase, qtx11extras, qttools, qtsvg, kwindowsystem, libkscreen, liblxqt, libqtxdg, xorg }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase,
+  qtx11extras, qttools, qtsvg, kwindowsystem, libkscreen, liblxqt,
+  libqtxdg, xorg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-config";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0r5vwkyz0c9b9py3wni4yzkmsvgs6psk9dp1fhfzvbjbknb21bfa";
+    sha256 = "1pp2pw43zh8kwi2cxk909wn6bw7kba95b6bv96l2gmzhdqpfw2a7";
   };
 
   nativeBuildInputs = [
@@ -32,13 +33,29 @@ stdenv.mkDerivation rec {
     xorg.libXScrnSaver
     xorg.libxcb
     xorg.libXcursor
+    xorg.xf86inputlibinput
+    xorg.xf86inputlibinput.dev
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     substituteInPlace src/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
+
+    for f in \
+      lxqt-config-file-associations/CMakeLists.txt \
+      lxqt-config-brightness/CMakeLists.txt \
+      lxqt-config-appearance/CMakeLists.txt \
+      lxqt-config-locale/CMakeLists.txt \
+      lxqt-config-monitor/CMakeLists.txt \
+      lxqt-config-input/CMakeLists.txt \
+      liblxqt-config-cursor/CMakeLists.txt \
+      src/CMakeLists.txt
+    do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
+
+    sed -i "/\''${XORG_LIBINPUT_INCLUDE_DIRS}/a ${xorg.xf86inputlibinput.dev}/include/xorg" lxqt-config-input/CMakeLists.txt
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix b/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
index 1877236bcdd..5382be304ae 100644
--- a/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, liblxqt, libqtxdg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-globalkeys";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1fmi0n5chnrpbgf7zwzc3hi55r85hkxaq5jylbwaahmxhnb5hdid";
+    sha256 = "14bfkh54mn3jyq8g9ipy3xmc3n9lmlqpvm26kpqig7567hbncv7n";
   };
 
   nativeBuildInputs = [
@@ -27,13 +26,14 @@ stdenv.mkDerivation rec {
     libqtxdg
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     for dir in autostart xdg; do
       substituteInPlace $dir/CMakeLists.txt \
         --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
     done
+
+    substituteInPlace config/CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-l10n/default.nix b/pkgs/desktops/lxqt/lxqt-l10n/default.nix
deleted file mode 100644
index 9a79ec16df0..00000000000
--- a/pkgs/desktops/lxqt/lxqt-l10n/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, fetchFromGitHub, cmake, qt5, lxqt }:
-
-stdenv.mkDerivation rec {
-  name = "lxqt-l10n-${version}";
-  version = "0.13.0";
-
-  src = fetchFromGitHub {
-    owner = "lxqt";
-    repo = "lxqt-l10n";
-    rev = version;
-    sha256 = "0q1hzj6sa4wc8sgqqqsqfldjpnvihacfq73agvc2li3q6qi5rr0k";
-  };
-
-  nativeBuildInputs = [
-    cmake
-    qt5.qttools
-    lxqt.lxqt-build-tools
-  ];
-
-  postPatch = ''
-    substituteInPlace CMakeLists.txt \
-      --replace "\''${LXQT_TRANSLATIONS_DIR}" "$out"/share/lxqt/translations
-  '';
-  
-  meta = with stdenv.lib; {
-    description = "Translations of LXQt";
-    homepage = https://github.com/lxqt/lxqt-l10n;
-    license = licenses.lgpl21Plus;
-    platforms = with platforms; unix;
-    maintainers = with maintainers; [ romildo ];
-  };
-}
diff --git a/pkgs/desktops/lxqt/lxqt-notificationd/default.nix b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
index 32a3c408258..53826f62bcc 100644
--- a/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg, qtx11extras }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-notificationd";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0vjpl3ipc0hrz255snkp99h6xrlid490ml8jb588rdpfina66sp1";
+    sha256 = "1nawcxy2qnrngcxvwjwmmh4fn7mhnfgy1g77rn90243jvy29wv5f";
   };
 
   nativeBuildInputs = [
@@ -20,6 +19,11 @@ stdenv.mkDerivation rec {
   postPatch = ''
     substituteInPlace autostart/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
+
+    for f in {config,src}/CMakeLists.txt; do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
   '';
 
   buildInputs = [
@@ -32,8 +36,6 @@ stdenv.mkDerivation rec {
     qtx11extras
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "The LXQt notification daemon";
     homepage = https://github.com/lxqt/lxqt-notificationd;
diff --git a/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
index 56ea7ec7241..f880aed63f8 100644
--- a/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtsvg, qtx11extras, kwindowsystem, liblxqt, libqtxdg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-openssh-askpass";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "19djmqwk4kj3rxs4h7a471ydcz87j5z4yv8a6pgblvqdkkn0ylk9";
+    sha256 = "19xcc6i7jg35780r4dfg4vwfp9x4pz5sqzagxnpzspz61jaj5ibv";
   };
 
   nativeBuildInputs = [
@@ -27,7 +26,10 @@ stdenv.mkDerivation rec {
     libqtxdg
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+  postPatch = ''
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+  '';
 
   meta = with stdenv.lib; {
     description = "GUI to query passwords on behalf of SSH agents";
diff --git a/pkgs/desktops/lxqt/lxqt-panel/default.nix b/pkgs/desktops/lxqt/lxqt-panel/default.nix
index 8cdbf9f9365..f691357f25f 100644
--- a/pkgs/desktops/lxqt/lxqt-panel/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-panel/default.nix
@@ -8,15 +8,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-panel";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "056khr3smyrdi26zpclwv1qrmk0zxr9cnk65ad9c0xavzk6ya3xz";
+    sha256 = "0jr7ylf6d35m0ckn884arjk4armknnw8iyph00gcphn5bqycbn8l";
   };
 
   nativeBuildInputs = [
@@ -50,8 +49,6 @@ stdenv.mkDerivation rec {
     libXdamage
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     for dir in  autostart menu; do
       substituteInPlace $dir/CMakeLists.txt \
@@ -59,6 +56,11 @@ stdenv.mkDerivation rec {
     done
     substituteInPlace panel/CMakeLists.txt \
       --replace "DESTINATION \''${LXQT_ETC_XDG_DIR}" "DESTINATION etc/xdg"
+
+    for f in cmake/BuildPlugin.cmake panel/CMakeLists.txt; do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-policykit/default.nix b/pkgs/desktops/lxqt/lxqt-policykit/default.nix
index dcf46d09b73..862e0c08ced 100644
--- a/pkgs/desktops/lxqt/lxqt-policykit/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-policykit/default.nix
@@ -5,15 +5,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-policykit";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1m9v4hl1hyd8rmlh6z2zy6287qfnavsm9khl526jf8f7bjgpifvd";
+    sha256 = "05k39819nsdyg2pp1vk6g2hdpxqp78h6bhb0hp5rclf9ap5fpvvc";
   };
 
   nativeBuildInputs = [
@@ -34,11 +33,12 @@ stdenv.mkDerivation rec {
     pcre
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     substituteInPlace autostart/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
+
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix b/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
index 3b56a489bee..9ebff5d4de5 100644
--- a/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, solid, kidletime, liblxqt, libqtxdg }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-powermanagement";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "04mx1nxqqqjg3wsql4ch4j1a4cbqfvpq0iwi6b9yhaf04n0dwrvn";
+    sha256 = "08xdnb54lji09izzzfip8fw0gp17qkx66jm6i04zby4whx4mqniv";
   };
 
   nativeBuildInputs = [
@@ -29,11 +28,14 @@ stdenv.mkDerivation rec {
     libqtxdg
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     substituteInPlace autostart/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
+
+    for f in {config,src}/CMakeLists.txt; do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix b/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
index 972d0a3cb37..82f393cf8d5 100644
--- a/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
@@ -5,15 +5,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-qtplugin";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "19y5dvbj7gwyh8glc6vi6hb5snvkd3jwvss6j0sn2sy2gp9g9ryb";
+    sha256 = "16n50lxnya03zcviw65sy5dyg9dsrn64k91mrqfvraf6d90md4al";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/lxqt/lxqt-runner/default.nix b/pkgs/desktops/lxqt/lxqt-runner/default.nix
index c0ce6321f6e..dc2d8c58caf 100644
--- a/pkgs/desktops/lxqt/lxqt-runner/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-runner/default.nix
@@ -2,15 +2,14 @@
 menu-cache, muparser, pcre }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-runner";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0w6r9lby35p0lf5klasa5l2lscx6dmv16kzfhl4lc6w2qfwjb9vi";
+    sha256 = "1qyacig9ksnjrhws8cpk6arlaxn7kl0z39l3c62ql3m89mibsm88";
   };
 
   nativeBuildInputs = [
@@ -33,11 +32,12 @@ stdenv.mkDerivation rec {
     pcre
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     substituteInPlace autostart/CMakeLists.txt \
       --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
+
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-session/default.nix b/pkgs/desktops/lxqt/lxqt-session/default.nix
index e369880b2b4..5b4d7b606c7 100644
--- a/pkgs/desktops/lxqt/lxqt-session/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-session/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase, qttools, qtsvg, qtx11extras, kwindowsystem, liblxqt, libqtxdg, xorg, xdg-user-dirs }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-session";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0ngcrkmfpahii4yibsh03b8v8af93hhqm42kk1nnhczc8dg49mhs";
+    sha256 = "0nla1ki23p1bwzw5hbmh9l8yg3b0f55kflgnvyfakmvpivjbz3k6";
   };
 
   nativeBuildInputs = [
@@ -31,13 +30,16 @@ stdenv.mkDerivation rec {
     xdg-user-dirs
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     for dir in autostart config; do
       substituteInPlace $dir/CMakeLists.txt \
         --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg"
     done
+
+    for f in lxqt-{config-session,leave,session}/CMakeLists.txt; do
+      substituteInPlace $f \
+        --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+    done
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/lxqt/lxqt-sudo/default.nix b/pkgs/desktops/lxqt/lxqt-sudo/default.nix
index 4dddd7de09b..7e3ca84109f 100644
--- a/pkgs/desktops/lxqt/lxqt-sudo/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-sudo/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, liblxqt, libqtxdg, sudo }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-sudo";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1gpn3dhmzabx0jrqxq63549sah03kf6bmdc9d9kmg6hyr5xg3i1h";
+    sha256 = "0l8fq06kfsrmvg2fr8lqdsxr6fwxmxsa9zwaa3fs9inzaylm0jkh";
   };
 
   nativeBuildInputs = [
@@ -28,7 +27,10 @@ stdenv.mkDerivation rec {
     sudo
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+  postPatch = ''
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LXQT_TRANSLATIONS_DIR}" "''${out}/share/lxqt/translations"
+  '';
 
   meta = with stdenv.lib; {
     description = "GUI frontend for sudo/su";
diff --git a/pkgs/desktops/lxqt/lxqt-themes/default.nix b/pkgs/desktops/lxqt/lxqt-themes/default.nix
index 1d2301d4a3b..02591b9eb86 100644
--- a/pkgs/desktops/lxqt/lxqt-themes/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-themes/default.nix
@@ -1,20 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, lxqt }:
+{ stdenv, fetchFromGitHub, cmake, lxqt-build-tools }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "lxqt-themes";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "026hbblxdbq48n9691b1z1xiak99khsk3wf09vn4iaj5zi7dwhw5";
+    sha256 = "09dkcgnf3lmfly8v90p6wjlj5rin83pbailvvpx2jr8a48a8zb9f";
   };
 
   nativeBuildInputs = [
     cmake
-    lxqt.lxqt-build-tools
+    lxqt-build-tools
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/lxqt/obconf-qt/default.nix b/pkgs/desktops/lxqt/obconf-qt/default.nix
index 5ddb87ab55d..a0d0a973ad7 100644
--- a/pkgs/desktops/lxqt/obconf-qt/default.nix
+++ b/pkgs/desktops/lxqt/obconf-qt/default.nix
@@ -1,28 +1,28 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, pcre, qt5, xorg, lxqt, openbox, hicolor-icon-theme }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, qttools,
+  qtx11extras, xorg, lxqt-build-tools, openbox, hicolor-icon-theme }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "obconf-qt";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0mixf35p7b563f77vnikk9b1wqhbdawp723sd30rfql76gkjwjcn";
+    sha256 = "00v5w8qr3vs0k91flij9lz7y1cpp2g8ivgnmmm43ymjfiz5j6l27";
   };
 
   nativeBuildInputs = [
     cmake
     pkgconfig
-    lxqt.lxqt-build-tools
+    lxqt-build-tools
   ];
 
   buildInputs = [
     pcre
-    qt5.qtbase
-    qt5.qttools
-    qt5.qtx11extras
+    qtbase
+    qttools
+    qtx11extras
     xorg.libpthreadstubs
     xorg.libXdmcp
     xorg.libSM
@@ -30,8 +30,6 @@ stdenv.mkDerivation rec {
     hicolor-icon-theme
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "The Qt port of obconf, the Openbox configuration tool";
     homepage = https://github.com/lxqt/obconf-qt;
diff --git a/pkgs/desktops/lxqt/pavucontrol-qt/default.nix b/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
index efd5fde1666..dcc3ead31bf 100644
--- a/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
+++ b/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt, libpulseaudio, pcre, qtbase, qttools, qtx11extras }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt, libpulseaudio,
+  pcre, qtbase, qttools, qtx11extras }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "pavucontrol-qt";
-  version = "0.4.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1bxqpasfvaagbq8azl7536z2zk2725xg7jkvad5xh95zq1gb4hgk";
+    sha256 = "1vyjm6phgbxglk65c889bd73b0p2ffb5bsc89dmb07qzllyrjb4h";
   };
 
   nativeBuildInputs = [
@@ -26,8 +26,6 @@ stdenv.mkDerivation rec {
     pcre
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "A Pulseaudio mixer in Qt (port of pavucontrol)";
     homepage = https://github.com/lxqt/pavucontrol-qt;
diff --git a/pkgs/desktops/lxqt/pcmanfm-qt/default.nix b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
index 99dace0e42e..aa7479b02f8 100644
--- a/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
@@ -1,35 +1,33 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qt5, libfm-qt, menu-cache, lxmenu-data }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, lxqt, qtbase, qttools,
+  qtx11extras, libfm-qt, menu-cache, lxmenu-data }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "pcmanfm-qt";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "0xnhdxx45fmbi5dqic3j2f7yq01s0xysimafj5zqs0a29zw3i4m0";
+    sha256 = "0hf4qyn12mpr6rrla9mf6ka5gb4y36amk7d14ayr7yka1r16p8lz";
   };
 
   nativeBuildInputs = [
     cmake
     pkgconfig
-    lxqt-build-tools
+    lxqt.lxqt-build-tools
   ];
 
   buildInputs = [
-    qt5.qtbase
-    qt5.qttools
-    qt5.qtx11extras
+    qtbase
+    qttools
+    qtx11extras
     libfm-qt
     libfm-qt
     menu-cache
     lxmenu-data
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   postPatch = ''
     for dir in autostart config; do
       substituteInPlace $dir/CMakeLists.txt \
diff --git a/pkgs/desktops/lxqt/qlipper/default.nix b/pkgs/desktops/lxqt/qlipper/default.nix
index e09c8bc09d5..f5bdcf064fd 100644
--- a/pkgs/desktops/lxqt/qlipper/default.nix
+++ b/pkgs/desktops/lxqt/qlipper/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, qt5 }:
+{ stdenv, fetchFromGitHub, cmake, qtbase, qttools }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ qt5.qtbase qt5.qttools ];
+  buildInputs = [ qtbase qttools ];
 
   meta = with stdenv.lib; {
     description = "Cross-platform clipboard history applet";
diff --git a/pkgs/desktops/lxqt/qps/default.nix b/pkgs/desktops/lxqt/qps/default.nix
index a8ee18daf3c..d46b7e14e33 100644
--- a/pkgs/desktops/lxqt/qps/default.nix
+++ b/pkgs/desktops/lxqt/qps/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchFromGitHub, cmake, qt5 }:
+{ stdenv, fetchFromGitHub, cmake, qtbase, qtx11extras, qttools,
+  lxqt-build-tools }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "qps";
-  version = "1.10.18";
+  version = "1.10.19";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1cq5z4w2n119z2bq0njn508g5582jljdx2n38cv5b3cf35k91a49";
+    sha256 = "1vyi1vw4z5j2sp9yhhv91wl2sbg4fh0djqslg1ssc7fww2ka6dx3";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake lxqt-build-tools ];
 
-  buildInputs = [ qt5.qtbase qt5.qtx11extras qt5.qttools ];
+  buildInputs = [ qtbase qtx11extras qttools ];
 
   meta = with stdenv.lib; {
     description = "The Qt process manager";
diff --git a/pkgs/desktops/lxqt/qterminal/default.nix b/pkgs/desktops/lxqt/qterminal/default.nix
index 3d5a25634d7..f9a2e5ff0a1 100644
--- a/pkgs/desktops/lxqt/qterminal/default.nix
+++ b/pkgs/desktops/lxqt/qterminal/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtermwidget, qt5 }:
+{ stdenv, fetchFromGitHub, cmake, lxqt-build-tools, qtermwidget,
+  qtbase, qttools, qtx11extras }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "qterminal";
-  version = "0.9.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1z9wlyj5i192jfq3dcxjf8wzx9x332f19c9ll7zv69cq21kyy9wn";
+    sha256 = "071qz248j9gcqzchnrz8xamm07g4r2xyrmnb0a2vjkjd63pk2r8f";
   };
 
   nativeBuildInputs = [
@@ -18,14 +18,12 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    qt5.qtbase
-    qt5.qttools
-    qt5.qtx11extras
+    qtbase
+    qttools
+    qtx11extras
     qtermwidget
   ];
 
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
-
   meta = with stdenv.lib; {
     description = "A lightweight Qt-based terminal emulator";
     homepage = https://github.com/lxqt/qterminal;
diff --git a/pkgs/desktops/lxqt/qtermwidget/0.7.1.nix b/pkgs/desktops/lxqt/qtermwidget/0.7.1.nix
deleted file mode 100644
index 93c93d2c6ba..00000000000
--- a/pkgs/desktops/lxqt/qtermwidget/0.7.1.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ stdenv, fetchFromGitHub, cmake, qt5 }:
-
-stdenv.mkDerivation rec {
-  name = "${pname}_0_7_1-${version}";
-  pname = "qtermwidget";
-  version = "0.7.1";
-
-  srcs = fetchFromGitHub {
-    owner = "lxqt";
-    repo = pname;
-    rev = version;
-    sha256 = "0awp33cnkpi9brpx01mz5hwj7j2lq1wdi8cabk3wassd99vvxdxz";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  buildInputs = [ qt5.qtbase ];
-
-  meta = with stdenv.lib; {
-    description = "A terminal emulator widget for Qt 5";
-    homepage = https://github.com/lxqt/qtermwidget;
-    license = licenses.gpl2;
-    platforms = with platforms; unix;
-    maintainers = with maintainers; [ romildo ];
-  };
-}
diff --git a/pkgs/desktops/lxqt/qtermwidget/default.nix b/pkgs/desktops/lxqt/qtermwidget/default.nix
index eae53cefc58..9e0798ecb52 100644
--- a/pkgs/desktops/lxqt/qtermwidget/default.nix
+++ b/pkgs/desktops/lxqt/qtermwidget/default.nix
@@ -1,22 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, qt5, lxqt }:
+{ stdenv, fetchFromGitHub, cmake, qtbase, qttools, lxqt-build-tools }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
   pname = "qtermwidget";
-  version = "0.9.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "05gbdjzgmcr3ljs9ba3qvh7a3v6yn6vakwfy8avld9gy5bdd76rg";
+    sha256 = "0wv8fssbc2w7kkpq9ngsa8wyjraggdhsbz36gyxyv8fy5m78jq0n";
   };
 
-  nativeBuildInputs = [ cmake lxqt.lxqt-build-tools ];
+  nativeBuildInputs = [ cmake lxqt-build-tools ];
 
-  buildInputs = [ qt5.qtbase qt5.qttools];
-
-  cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+  buildInputs = [ qtbase qttools];
 
   meta = with stdenv.lib; {
     description = "A terminal emulator widget for Qt 5";
diff --git a/pkgs/desktops/lxqt/screengrab/default.nix b/pkgs/desktops/lxqt/screengrab/default.nix
index 8890d3f4780..cc7f113b7d1 100644
--- a/pkgs/desktops/lxqt/screengrab/default.nix
+++ b/pkgs/desktops/lxqt/screengrab/default.nix
@@ -1,17 +1,21 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, libqtxdg, xorg }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, libqtxdg, xorg, autoPatchelfHook }:
 
 stdenv.mkDerivation rec {
-  name = "screengrab-${version}";
-  version = "1.98";
+  pname = "screengrab";
+  version = "1.100";
 
   src = fetchFromGitHub {
     owner = "lxqt";
-    repo = "screengrab";
+    repo = pname;
     rev = version;
-    sha256 = "1y3r29220z6y457cajpad3pjnr883smbvh0kai8hc5hh4k4kxs6v";
+    sha256 = "1iqrmf581x9ab6zzjxm2509gg6fkn7hwril4v0aki7n7dgxw1c4g";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+    autoPatchelfHook # fix libuploader.so and libextedit.so not found
+  ];
 
   buildInputs = [
     qtbase
diff --git a/pkgs/desktops/lxqt/update.sh b/pkgs/desktops/lxqt/update.sh
index bad78f7c1ff..f3dfc4d5975 100755
--- a/pkgs/desktops/lxqt/update.sh
+++ b/pkgs/desktops/lxqt/update.sh
@@ -7,7 +7,7 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
 root=../../..
 export NIXPKGS_ALLOW_UNFREE=1
 
-lxqt_version=0.13.0
+lxqt_version=0.14.0
 lxqtrepo=https://downloads.lxqt.org/${lxqt_version}.html
 
 version() {
@@ -28,7 +28,7 @@ update_lxqt() {
                  local pfile=$(EDITOR=echo nix edit -f. lxqt.$pname 2>/dev/null)
                  update-source-version lxqt.$pname "$pversion"
                  git add $pfile
-                 git commit -m "$pname: $pversionold -> $pversion"
+                 git commit -m "lxqt.$pname: $pversionold -> $pversion"
                 )
             fi
             echo
diff --git a/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
index 7c736df2c53..3494474c49c 100644
--- a/pkgs/desktops/pantheon/apps/elementary-files/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
@@ -5,7 +5,7 @@
 
 stdenv.mkDerivation rec {
   pname = "files";
-  version = "4.1.4";
+  version = "4.1.5";
 
   name = "elementary-${pname}-${version}";
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0nlmg3izbi4yh2sd69hh8avg76pipxn11l9a39xgqm55lvidlqmn";
+    sha256 = "0z0pisg7py2k6i31v18z5fgpj8x64m1s5clfq4vbbjrcjwx6dcx5";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
index f70186585ec..23fb8445838 100644
--- a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
+++ b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "icons";
-  version = "5.0.2";
+  version = "5.0.3";
 
   name = "elementary-icon-theme-${version}";
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "12j582f0kggv2lp935r75xg7q26zpl0f05s11xcs4qxazhj1ly2r";
+    sha256 = "0wpv7yirf44bfqfmyshzfw9605j1idm7c9jqg68k3nmymmd6iqzf";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/granite/02-datetime-clock-format-gsettings.patch b/pkgs/desktops/pantheon/granite/02-datetime-clock-format-gsettings.patch
deleted file mode 100644
index 7b7c9871133..00000000000
--- a/pkgs/desktops/pantheon/granite/02-datetime-clock-format-gsettings.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From 698e34dd6e8d98a1818ae00d3313b69a86340771 Mon Sep 17 00:00:00 2001
-From: Fabio Valentini <decathorpe@gmail.com>
-Date: Mon, 17 Dec 2018 14:58:14 +0100
-Subject: DateTime: include "clock-format" gsettings key here
-
----
- data/io.elementary.granite.gschema.xml | 15 +++++++++++++++
- data/meson.build                       |  4 ++++
- lib/DateTime.vala                      |  4 ++--
- meson.build                            | 11 +++++++++++
- meson/post_install.py                  |  5 +++++
- 5 files changed, 37 insertions(+), 2 deletions(-)
- create mode 100644 data/io.elementary.granite.gschema.xml
- create mode 100644 data/meson.build
-
-diff --git a/data/io.elementary.granite.gschema.xml b/data/io.elementary.granite.gschema.xml
-new file mode 100644
-index 0000000..1540fb0
---- /dev/null
-+++ b/data/io.elementary.granite.gschema.xml
-@@ -0,0 +1,15 @@
-+<?xml version="1.0" encoding="UTF-8"?>
-+<schemalist>
-+  <enum id="io.elementary.granite.clock-formats">
-+    <value nick="12h" value="0" />
-+    <value nick="24h" value="1" />
-+    <value nick="ISO8601" value="2" />
-+  </enum>
-+  <schema id="io.elementary.granite" path="/io/elementary/granite/">
-+    <key name="clock-format" enum="io.elementary.granite.clock-formats">
-+      <default>"12h"</default>
-+      <summary>Whether the clock displays in 12h or 24h format</summary>
-+      <description>Whether the clock displays in 12h or 24h format</description>
-+    </key>
-+  </schema>
-+</schemalist>
-diff --git a/data/meson.build b/data/meson.build
-new file mode 100644
-index 0000000..96cc3b1
---- /dev/null
-+++ b/data/meson.build
-@@ -0,0 +1,4 @@
-+install_data(
-+    rdnn + '.gschema.xml',
-+    install_dir: schema_dir
-+)
-diff --git a/lib/DateTime.vala b/lib/DateTime.vala
-index aea2ec6..3d81191 100644
---- a/lib/DateTime.vala
-+++ b/lib/DateTime.vala
-@@ -104,13 +104,13 @@ namespace Granite.DateTime {
-     }
- 
-     /**
--     * Gets the //clock-format// key from //org.gnome.desktop.interface// schema
-+     * Gets the //clock-format// key from //io.elementary.granite// schema
-      * and determines if the clock format is 12h based
-      *
-      * @return true if the clock format is 12h based, false otherwise.
-      */
-     private static bool is_clock_format_12h () {
--        var h24_settings = new Settings ("io.elementary.desktop.wingpanel.datetime");
-+        var h24_settings = new Settings ("io.elementary.granite");
-         var format = h24_settings.get_string ("clock-format");
-         return (format.contains ("12h"));
-     }
-diff --git a/meson.build b/meson.build
-index 8b98eeb..f0abcdf 100644
---- a/meson.build
-+++ b/meson.build
-@@ -4,6 +4,8 @@ project(
-     version: '5.2.2'
- )
- 
-+rdnn = 'io.elementary.' + meson.project_name()
-+
- if meson.get_compiler('vala').version().version_compare('<0.40.0')
-     error('vala compiler version 0.40.0 or newer is required.')
- endif
-@@ -52,10 +54,18 @@ icons_dir = join_paths(
-     'hicolor'
- )
- 
-+schema_dir = join_paths(
-+    get_option('prefix'),
-+    get_option('datadir'),
-+    'glib-2.0',
-+    'schemas'
-+)
-+
- pkgconfig = import('pkgconfig')
- i18n = import('i18n')
- 
- subdir('lib')
-+subdir('data')
- subdir('demo')
- subdir('icons')
- subdir('po')
-@@ -68,5 +78,6 @@ endif
- meson.add_install_script(
-     join_paths(meson.current_source_dir(), 'meson', 'post_install.py'),
-     '--iconsdir', icons_dir,
-+    '--schemadir', schema_dir,
- )
- 
-diff --git a/meson/post_install.py b/meson/post_install.py
-index 1864515..5313f96 100755
---- a/meson/post_install.py
-+++ b/meson/post_install.py
-@@ -6,11 +6,16 @@ import subprocess
- 
- parser = argparse.ArgumentParser()
- parser.add_argument("--iconsdir", action="store", required=True)
-+parser.add_argument("--schemadir", action="store", required=True)
- args = vars(parser.parse_args())
- 
- icons_dir = args["iconsdir"]
-+schema_dir = args["schemadir"]
- 
- if not os.environ.get('DESTDIR'):
-     print('Compiling icon cache ...')
-     subprocess.run(['gtk-update-icon-cache', icons_dir])
- 
-+    print('Compiling GSettings schemas ...')
-+    subprocess.run(['glib-compile-schemas', schema_dir])
-+
--- 
-2.20.1
-
diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix
index fe0e880ccb2..66ba331ddcd 100644
--- a/pkgs/desktops/pantheon/granite/default.nix
+++ b/pkgs/desktops/pantheon/granite/default.nix
@@ -2,28 +2,22 @@
 
 stdenv.mkDerivation rec {
   pname = "granite";
-  version = "5.2.2";
+  version = "5.2.3";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1zp0pp5v3j8k6ail724p7h5jj2zmznj0a2ybwfw5sspfdw5bfydh";
+    sha256 = "10ddq1s2w4jvpzq813cylmqhh8pggzaz890fy3kzg07275i98gah";
   };
 
   patches = [
-    # Add Meson support that hit after 5.2.2
-    (fetchpatch {
-      url = "https://github.com/elementary/granite/commit/2066b377226cf327cb2d5399b6b40a2d36d47b11.patch";
-      sha256 = "1bxjgq8wvl1sb79cwhmh9kwawnkkfn7c5q67cyz1fjxmamwyyi85";
-    })
-    (fetchpatch {
-      url = "https://github.com/elementary/granite/commit/f1b29f52e3aaf0f5d6bba44c42617da265f679c8.patch";
-      sha256 = "0cdp9ny6fj1lpcirab641p1qn1rbsvnsaa03hnr6zsdpim96jlvs";
-    })
     # Resolve the circular dependency between granite and the datetime wingpanel indicator
     # See: https://github.com/elementary/granite/pull/242
-    ./02-datetime-clock-format-gsettings.patch
+    (fetchpatch {
+      url = "https://src.fedoraproject.org/rpms/granite/raw/0550b44ed6400c9b1ff7e70871913747df2ff323/f/00-datetime-clock-format-gsettings.patch";
+      sha256 = "0i9yvdmn77x5fjdwd1raw6ym8js8yxa7w6ydc7syx7hcyls00dmq";
+    })
   ];
 
   passthru = {
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
index 541b30ec1b3..80153332934 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
     homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Mailwatch plugin for Xfce panel";
     platforms = platforms.linux;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
   };
 }
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
index 5331c29a454..8a602b8b4a1 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
     homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "MPD plugin for Xfce panel";
     platforms = platforms.linux;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
   };
 }
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
index 57cd48c6f27..73ab7782ebd 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "A simple XFCE panel plugin that lets the user run an alarm at a specified time or at the end of a specified countdown period";
     platforms = platforms.linux;
     license = licenses.gpl2;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
   };
 }
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
index f9d4b81d989..d1db77215d1 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
@@ -5,6 +5,5 @@ in
   jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk11.mac.jdk.hotspot;
   jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk11.mac.jre.hotspot;
   jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk11.mac.jdk.openj9;
-  # openj9 jre builds are currently missing: https://github.com/AdoptOpenJDK/openjdk-build/issues/796
-  #jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk11.mac.jre.openj9;
+  jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk11.mac.jre.openj9;
 }
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/sources.json b/pkgs/development/compilers/adoptopenjdk-bin/sources.json
index 391ea9abca9..0ed3d8c0049 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/sources.json
+++ b/pkgs/development/compilers/adoptopenjdk-bin/sources.json
@@ -4,17 +4,17 @@
       "jdk": {
         "hotspot": {
           "aarch64": {
-            "build": "13",
-            "sha256": "b66121b9a0c2e7176373e670a499b9d55344bcb326f67140ad6d0dc24d13d3e2",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.1%2B13/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.1_13.tar.gz",
-            "version": "11.0.1"
+            "build": "7",
+            "sha256": "95b14e954f96185d02afda1a3ab146011076a4d97b457c9333556bd5d9263c41",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B7/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.2_7.tar.gz",
+            "version": "11.0.2"
           },
           "packageType": "jdk",
           "vmType": "hotspot",
           "x86_64": {
-            "build": "7",
-            "sha256": "d89304a971e5186e80b6a48a9415e49583b7a5a9315ba5552d373be7782fc528",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B7/OpenJDK11U-jdk_x64_linux_hotspot_11.0.2_7.tar.gz",
+            "build": "9",
+            "sha256": "d02089d834f7702ac1a9776d8d0d13ee174d0656cf036c6b68b9ffb71a6f610e",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.2_9.tar.gz",
             "version": "11.0.2"
           }
         },
@@ -22,27 +22,27 @@
           "packageType": "jdk",
           "vmType": "openj9",
           "x86_64": {
-            "build": "13",
-            "sha256": "ef9bf07cba79082285a9d426ea4eb3e8df57561ce2afe07cc5f299a8fa203279",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.1%2B13/OpenJDK11U-jdk_x64_linux_openj9_jdk-11.0.1_13_openj9-0.11.0_11.0.1_13.tar.gz",
-            "version": "11.0.1"
+            "build": "9",
+            "sha256": "02de51ebe86897081f7998dd2f256e33fb8b15c70cf26715020795326cc50511",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jdk_x64_linux_openj9_11.0.2_9_openj9-0.12.0.tar.gz",
+            "version": "11.0.2"
           }
         }
       },
       "jre": {
         "hotspot": {
           "aarch64": {
-            "build": "28",
-            "sha256": "6fd756bda392e3fddb48382460daae263c6fb5708683a691c8d30af2eb870bb8",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11%2B28/OpenJDK11-jre_aarch64_linux_hotspot_11_28.tar.gz",
-            "version": "11"
+            "build": "7",
+            "sha256": "b101c86948742a5a580f94596654ef7d200f629cfc1ffdded10fb6a0cbe34c34",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B7/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.2_7.tar.gz",
+            "version": "11.0.2"
           },
           "packageType": "jre",
           "vmType": "hotspot",
           "x86_64": {
-            "build": "7",
-            "sha256": "59c34373eec16b53798aedac73776b19e43f396fdff8a2879e66dc4b0cfd73cc",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B7/OpenJDK11U-jre_x64_linux_hotspot_11.0.2_7.tar.gz",
+            "build": "9",
+            "sha256": "e762e4cd50cebd1c63dee2cf0d5737016e9e057520b67761df5ad2dc7bbc7d54",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.2_9.tar.gz",
             "version": "11.0.2"
           }
         },
@@ -50,10 +50,10 @@
           "packageType": "jre",
           "vmType": "openj9",
           "x86_64": {
-            "build": "28",
-            "sha256": "83a7c95e6b2150a739bdd5e8a6fe0315904fd13d8867c95db67c0318304a2c42",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11%2B28/OpenJDK11-jre_x64_linux_openj9_11_28.tar.gz",
-            "version": "11"
+            "build": "9",
+            "sha256": "9c6283485a9fa07c1dca882e6427d785c9f4a99d2e49e91ccefbc6147da27343",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jre_x64_linux_openj9_11.0.2_9_openj9-0.12.0.tar.gz",
+            "version": "11.0.2"
           }
         }
       }
@@ -64,20 +64,20 @@
           "packageType": "jdk",
           "vmType": "hotspot",
           "x86_64": {
-            "build": "13",
-            "sha256": "e219e7e2d586ed09ae65f4ec390fca5d5f0c37a61b47677648610194daf1aaa7",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.1%2B13/OpenJDK11U-jdk_x64_mac_hotspot_11.0.1_13.tar.gz",
-            "version": "11.0.1"
+            "build": "9",
+            "sha256": "fffd4ed283e5cd443760a8ec8af215c8ca4d33ec5050c24c1277ba64b5b5e81a",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jdk_x64_mac_hotspot_11.0.2_9.tar.gz",
+            "version": "11.0.2"
           }
         },
         "openj9": {
           "packageType": "jdk",
           "vmType": "openj9",
           "x86_64": {
-            "build": "13",
-            "sha256": "b8960753a66190fa81982682357a2449b4183f3e23c20a5e3b4cf01e2989846b",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.1%2B13/OpenJDK11U-jdk_x64_mac_openj9_jdk-11.0.1_13_openj9-0.11.0_11.0.1_13.tar.gz",
-            "version": "11.0.1"
+            "build": "9",
+            "sha256": "0589fea4f9012299267dd3c533417a37540a3db61ae86f411bda67195b3636f4",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jdk_x64_mac_openj9_11.0.2_9_openj9-0.12.0.tar.gz",
+            "version": "11.0.2"
           }
         }
       },
@@ -86,10 +86,20 @@
           "packageType": "jre",
           "vmType": "hotspot",
           "x86_64": {
-            "build": "28",
-            "sha256": "ef4dbfe5aed6ab2278fcc14db6cc73abbaab56e95f6ebb023790a7ebc6d7f30c",
-            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11%2B28/OpenJDK11-jre_x64_mac_hotspot_11_28.tar.gz",
-            "version": "11"
+            "build": "9",
+            "sha256": "7e70784f7833751b63cee9e197230877a4059b178a24858261f834ea39b29fd5",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jre_x64_mac_hotspot_11.0.2_9.tar.gz",
+            "version": "11.0.2"
+          }
+        },
+        "openj9": {
+          "packageType": "jre",
+          "vmType": "openj9",
+          "x86_64": {
+            "build": "9",
+            "sha256": "40d70bf570b2098b381b77ae62dfddfb8cf6fc500ed539d82b78405593a9c9e5",
+            "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.2%2B9/OpenJDK11U-jre_x64_mac_openj9_11.0.2_9_openj9-0.12.0.tar.gz",
+            "version": "11.0.2"
           }
         }
       }
diff --git a/pkgs/development/compilers/ats2/default.nix b/pkgs/development/compilers/ats2/default.nix
index 6da21d7f400..df61ea2b791 100644
--- a/pkgs/development/compilers/ats2/default.nix
+++ b/pkgs/development/compilers/ats2/default.nix
@@ -3,11 +3,11 @@
 , withContrib ? true }:
 
 let
-  versionPkg = "0.3.12" ;
+  versionPkg = "0.3.13" ;
 
   contrib = fetchurl {
-    url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-contrib-${versionPkg}.tgz" ;
-    sha256 = "6e53e3070f50600373b857a73a76196adffcabc3c0d3173eaaf9a5f50f4596f4";
+    url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-contrib-${versionPkg}.tgz";
+    sha256 = "5f64172b2df08c8563b01febc32b582b2d7b59c0c514bd2beb727e69bb8e24ee";
   };
 
   postInstallContrib = stdenv.lib.optionalString withContrib
@@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
   version = versionPkg;
 
   src = fetchurl {
-    url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-${version}.tgz";
-    sha256 = "63eb02b225a11752745e8f08691140ed764288ab4ceda3710670cde24835b0d8";
+    url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-gmp-${version}.tgz";
+    sha256 = "0056ff5bfa55c9b9831dce004e7b1b9e7a98d56a9d8ae49d827f9fd0ef823c23";
   };
 
   buildInputs = [ gmp ];
diff --git a/pkgs/development/compilers/coreclr/default.nix b/pkgs/development/compilers/coreclr/default.nix
index 05958d52336..8be482e2150 100644
--- a/pkgs/development/compilers/coreclr/default.nix
+++ b/pkgs/development/compilers/coreclr/default.nix
@@ -1,4 +1,4 @@
-{ stdenv
+{ config, stdenv
 , fetchFromGitHub
 , fetchpatch
 , which
@@ -14,7 +14,7 @@
 , liburcu
 , libuuid
 , libkrb5
-, debug ? false
+, debug ? config.coreclr.debug or false
 }:
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/compilers/gcl/2.6.13-pre.nix b/pkgs/development/compilers/gcl/2.6.13-pre.nix
index 2ea95b332fe..16450cf24ab 100644
--- a/pkgs/development/compilers/gcl/2.6.13-pre.nix
+++ b/pkgs/development/compilers/gcl/2.6.13-pre.nix
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     sed -e 's/<= obj-date/<= (if (= 0 obj-date) 1 obj-date)/' -i lsp/make.lisp
+  ''
+  # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=902475
+  + ''
+    substituteInPlace h/elf64_i386_reloc.h \
+      --replace 'case R_X86_64_PC32:' 'case R_X86_64_PC32: case R_X86_64_PLT32:'
   '';
 
   sourceRoot = "gcl/gcl";
diff --git a/pkgs/development/compilers/gcl/default.nix b/pkgs/development/compilers/gcl/default.nix
index 643dd4b7dbd..50d397d2cd4 100644
--- a/pkgs/development/compilers/gcl/default.nix
+++ b/pkgs/development/compilers/gcl/default.nix
@@ -21,6 +21,12 @@ stdenv.mkDerivation rec {
     sha256 = "00jbsn0qp8ki2w7dx8caha7g2hr9076xa6bg48j3qqqncff93zdh";
   })];
 
+  # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=902475
+  postPatch = ''
+    substituteInPlace h/elf64_i386_reloc.h \
+      --replace 'case R_X86_64_PC32:' 'case R_X86_64_PC32: case R_X86_64_PLT32:'
+  '';
+
   buildInputs = [
     mpfr m4 binutils emacs gmp
     libX11 xorgproto libXi
diff --git a/pkgs/development/compilers/gnu-cobol/default.nix b/pkgs/development/compilers/gnu-cobol/default.nix
index 3ac14565946..ae27964ae8f 100644
--- a/pkgs/development/compilers/gnu-cobol/default.nix
+++ b/pkgs/development/compilers/gnu-cobol/default.nix
@@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
     homepage = https://sourceforge.net/projects/open-cobol/;
     license = licenses.gpl3;
     maintainers = with maintainers; [ ericsagnes the-kenny ];
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/compilers/gnu-smalltalk/default.nix b/pkgs/development/compilers/gnu-smalltalk/default.nix
index 39d1652fc70..41c325c2b1a 100644
--- a/pkgs/development/compilers/gnu-smalltalk/default.nix
+++ b/pkgs/development/compilers/gnu-smalltalk/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, fetchurl, pkgconfig, libtool, zip, libffi, libsigsegv, readline, gmp,
-gnutls, gnome2, cairo, SDL, sqlite, emacsSupport ? false, emacs ? null }:
+{ config, stdenv, fetchurl, pkgconfig, libtool
+, zip, libffi, libsigsegv, readline, gmp
+, gnutls, gnome2, cairo, SDL, sqlite
+, emacsSupport ? config.emacsSupport or false, emacs ? null }:
 
 assert emacsSupport -> (emacs != null);
 
diff --git a/pkgs/development/compilers/go/1.10.nix b/pkgs/development/compilers/go/1.10.nix
index 867344e84da..5dce1529a8b 100644
--- a/pkgs/development/compilers/go/1.10.nix
+++ b/pkgs/development/compilers/go/1.10.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchFromGitHub, tzdata, iana-etc, go_bootstrap, runCommand, writeScriptBin
-, perl, which, pkgconfig, patch, procps, pcre, cacert, llvm, Security, Foundation }:
+, perl, which, pkgconfig, patch, procps, pcre, cacert, llvm, Security, Foundation
+, fetchpatch
+}:
 
 let
 
@@ -122,6 +124,11 @@ stdenv.mkDerivation rec {
     ./creds-test.patch
     ./go-1.9-skip-flaky-19608.patch
     ./go-1.9-skip-flaky-20072.patch
+    (fetchpatch {
+      name = "missing_cpuHog_in_pprof_output.diff";
+      url = "https://github.com/golang/go/commit/33110e2c.diff";
+      sha256 = "04vh9lflbpz9xjvymyzhd91gkxiiwwz4lhglzl3r8z0lk45p96qn";
+    })
   ];
 
   postPatch = optionalString stdenv.isDarwin ''
diff --git a/pkgs/development/compilers/llvm/4/libc++/default.nix b/pkgs/development/compilers/llvm/4/libc++/default.nix
index 6344304b84b..2b543b9d793 100644
--- a/pkgs/development/compilers/llvm/4/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/4/libc++/default.nix
@@ -44,11 +44,6 @@ stdenv.mkDerivation rec {
 
   linkCxxAbi = stdenv.isLinux;
 
-  postInstall = ''
-    mv $out/lib/libc++.a $out/lib/libc++_static.a
-    cp ${./libc++.a} $out/lib/libc++.a
-  '';
-
   setupHooks = [
     ../../../../../build-support/setup-hooks/role.bash
     ./setup-hook.sh
diff --git a/pkgs/development/compilers/llvm/4/libc++/libc++.a b/pkgs/development/compilers/llvm/4/libc++/libc++.a
deleted file mode 100644
index f676948115e..00000000000
--- a/pkgs/development/compilers/llvm/4/libc++/libc++.a
+++ /dev/null
@@ -1 +0,0 @@
-INPUT(-lc++_static -lc++abi)
diff --git a/pkgs/development/compilers/llvm/5/libc++/default.nix b/pkgs/development/compilers/llvm/5/libc++/default.nix
index 6dc81e10163..b182f1250e7 100644
--- a/pkgs/development/compilers/llvm/5/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/5/libc++/default.nix
@@ -38,11 +38,6 @@ stdenv.mkDerivation rec {
 
   linkCxxAbi = stdenv.isLinux;
 
-  postInstall = ''
-    mv $out/lib/libc++.a $out/lib/libc++_static.a
-    cp ${./libc++.a} $out/lib/libc++.a
-  '';
-
   setupHooks = [
     ../../../../../build-support/setup-hooks/role.bash
     ./setup-hook.sh
diff --git a/pkgs/development/compilers/llvm/5/libc++/libc++.a b/pkgs/development/compilers/llvm/5/libc++/libc++.a
deleted file mode 100644
index f676948115e..00000000000
--- a/pkgs/development/compilers/llvm/5/libc++/libc++.a
+++ /dev/null
@@ -1 +0,0 @@
-INPUT(-lc++_static -lc++abi)
diff --git a/pkgs/development/compilers/llvm/6/libc++/default.nix b/pkgs/development/compilers/llvm/6/libc++/default.nix
index b90b6b7b58c..3a165e9da7b 100644
--- a/pkgs/development/compilers/llvm/6/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/6/libc++/default.nix
@@ -38,11 +38,6 @@ stdenv.mkDerivation rec {
 
   linkCxxAbi = stdenv.isLinux;
 
-  postInstall = ''
-    mv $out/lib/libc++.a $out/lib/libc++_static.a
-    cp ${./libc++.a} $out/lib/libc++.a
-  '';
-
   setupHooks = [
     ../../../../../build-support/setup-hooks/role.bash
     ./setup-hook.sh
diff --git a/pkgs/development/compilers/llvm/6/libc++/libc++.a b/pkgs/development/compilers/llvm/6/libc++/libc++.a
deleted file mode 100644
index f676948115e..00000000000
--- a/pkgs/development/compilers/llvm/6/libc++/libc++.a
+++ /dev/null
@@ -1 +0,0 @@
-INPUT(-lc++_static -lc++abi)
diff --git a/pkgs/development/compilers/llvm/7/libc++/default.nix b/pkgs/development/compilers/llvm/7/libc++/default.nix
index 8a13f3eb590..d372984dac7 100644
--- a/pkgs/development/compilers/llvm/7/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/7/libc++/default.nix
@@ -36,11 +36,6 @@ stdenv.mkDerivation rec {
 
   linkCxxAbi = stdenv.isLinux;
 
-  postInstall = ''
-    mv $out/lib/libc++.a $out/lib/libc++_static.a
-    cp ${./libc++.a} $out/lib/libc++.a
-  '';
-
   setupHooks = [
     ../../../../../build-support/setup-hooks/role.bash
     ./setup-hook.sh
diff --git a/pkgs/development/compilers/llvm/7/libc++/libc++.a b/pkgs/development/compilers/llvm/7/libc++/libc++.a
deleted file mode 100644
index f676948115e..00000000000
--- a/pkgs/development/compilers/llvm/7/libc++/libc++.a
+++ /dev/null
@@ -1 +0,0 @@
-INPUT(-lc++_static -lc++abi)
diff --git a/pkgs/development/compilers/ocaml/4.08.nix b/pkgs/development/compilers/ocaml/4.08.nix
new file mode 100644
index 00000000000..c6d0a114974
--- /dev/null
+++ b/pkgs/development/compilers/ocaml/4.08.nix
@@ -0,0 +1,12 @@
+import ./generic.nix {
+  major_version = "4";
+  minor_version = "08";
+  patch_version = "0+beta1";
+  sha256 = "1jgvp4pyhrg27wqpsx88kacw3ymjiz44nms9lzbh5s8pp05z5f5f";
+
+  # If the executable is stripped it does not work
+  dontStrip = true;
+
+  # Breaks build with Clang
+  hardeningDisable = [ "strictoverflow" ];
+}
diff --git a/pkgs/development/compilers/ocaml/generic.nix b/pkgs/development/compilers/ocaml/generic.nix
index 7ada5b804e3..0085739147b 100644
--- a/pkgs/development/compilers/ocaml/generic.nix
+++ b/pkgs/development/compilers/ocaml/generic.nix
@@ -41,8 +41,10 @@ stdenv.mkDerivation (args // rec {
   };
 
   prefixKey = "-prefix ";
-  configureFlags = optionals useX11 [ "-x11lib" x11lib
-                                      "-x11include" x11inc ]
+  configureFlags = optionals useX11 (
+    if stdenv.lib.versionAtLeast version "4.08"
+    then [ "--x-libraries=${x11lib}" "--x-includes=${x11inc}"]
+    else [ "-x11lib" x11lib "-x11include" x11inc ])
   ++ optional flambdaSupport "-flambda"
   ;
 
diff --git a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
index 4d88f3b9772..8342c9fd335 100644
--- a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
@@ -17,7 +17,8 @@
 , installjdk ? true
 , pluginSupport ? true
 , installjce ? false
-, licenseAccepted ? false
+, config
+, licenseAccepted ? config.oraclejdk.accept_license or false
 , glib
 , libxml2
 , libav_0_8
diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix
index b7a2f602cc6..bd4b10ddec0 100644
--- a/pkgs/development/compilers/solc/default.nix
+++ b/pkgs/development/compilers/solc/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, fetchzip, fetchFromGitHub, boost, cmake, z3 }:
+{ stdenv, fetchzip, fetchFromGitHub, boost, cmake
+, z3Support ? true, z3 ? null
+}:
+
+assert z3Support -> z3 != null;
 
 let
   version = "0.5.3";
@@ -33,6 +37,8 @@ stdenv.mkDerivation {
   cmakeFlags = [
     "-DBoost_USE_STATIC_LIBS=OFF"
     "-DBUILD_SHARED_LIBS=ON"
+  ] ++ stdenv.lib.optionals (!z3Support) [
+    "-DUSE_Z3=OFF"
   ];
 
   doCheck = stdenv.hostPlatform.isLinux && stdenv.hostPlatform == stdenv.buildPlatform;
@@ -40,7 +46,8 @@ stdenv.mkDerivation {
                "./test/soltest -p -- --no-ipc --no-smt --testpath ../test";
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost z3 ];
+  buildInputs = [ boost ]
+    ++ stdenv.lib.optionals z3Support [ z3 ];
 
   outputs = [ "out" "dev" ];
 
diff --git a/pkgs/development/coq-modules/coquelicot/default.nix b/pkgs/development/coq-modules/coquelicot/default.nix
index baad637cbb7..e316a8b792d 100644
--- a/pkgs/development/coq-modules/coquelicot/default.nix
+++ b/pkgs/development/coq-modules/coquelicot/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, which, coq, ssreflect }:
 
 stdenv.mkDerivation {
-  name = "coq${coq.coq-version}-coquelicot-3.0.1";
+  name = "coq${coq.coq-version}-coquelicot-3.0.2";
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/file/37045/coquelicot-3.0.1.tar.gz";
-    sha256 = "0hsyhsy2lwqxxx2r8xgi5csmirss42lp9bkb9yy35mnya0w78c8r";
+    url = "https://gforge.inria.fr/frs/download.php/file/37523/coquelicot-3.0.2.tar.gz";
+    sha256 = "1biia7nfqf7vaqq5gmykl4rwjyvrcwss6r2jdf0in5pvp2rnrj2w";
   };
 
   nativeBuildInputs = [ which ];
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" "8.9" ];
   };
 
 }
diff --git a/pkgs/development/coq-modules/flocq/default.nix b/pkgs/development/coq-modules/flocq/default.nix
index 6c0be377bc0..09fbd580845 100644
--- a/pkgs/development/coq-modules/flocq/default.nix
+++ b/pkgs/development/coq-modules/flocq/default.nix
@@ -2,9 +2,9 @@
 
 let params =
   if stdenv.lib.versionAtLeast coq.coq-version "8.7" then {
-    version = "3.0.0";
-    uid = "37477";
-    sha256 = "1h05ji5cmyqyv2i1l83xgkm7vfvcnl8r1dzvbp5yncm1jr9kf6nn";
+    version = "3.1.0";
+    uid = "37901";
+    sha256 = "02szrgz9m0ac51la1lqpiv6i2g0zbgx9gz5rp0q1g00ajldyna5c";
   } else {
     version = "2.6.1";
     uid = "37454";
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" "8.9" ];
   };
 }
diff --git a/pkgs/development/coq-modules/interval/default.nix b/pkgs/development/coq-modules/interval/default.nix
index 6797a71703b..0b97358d863 100644
--- a/pkgs/development/coq-modules/interval/default.nix
+++ b/pkgs/development/coq-modules/interval/default.nix
@@ -1,12 +1,24 @@
 { stdenv, fetchurl, which, coq, coquelicot, flocq, mathcomp
 , bignums ? null }:
 
+let params =
+  if stdenv.lib.versionAtLeast coq.coq-version "8.7" then {
+    version = "3.4.0";
+    uid = "37524";
+    sha256 = "023j9sd64brqvjdidqkn5m8d7a93zd9r86ggh573z9nkjm2m7vvg";
+  } else {
+    version = "3.3.0";
+    uid = "37077";
+    sha256 = "08fdcf3hbwqphglvwprvqzgkg0qbimpyhnqsgv3gac4y1ap0f903";
+  }
+; in
+
 stdenv.mkDerivation {
-  name = "coq${coq.coq-version}-interval-3.3.0";
+  name = "coq${coq.coq-version}-interval-${params.version}";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/file/37077/interval-3.3.0.tar.gz";
-    sha256 = "08fdcf3hbwqphglvwprvqzgkg0qbimpyhnqsgv3gac4y1ap0f903";
+    url = "https://gforge.inria.fr/frs/download.php/file/${params.uid}/interval-${params.version}.tar.gz";
+    inherit (params) sha256;
   };
 
   nativeBuildInputs = [ which ];
@@ -26,7 +38,7 @@ stdenv.mkDerivation {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
   };
 
 
diff --git a/pkgs/development/coq-modules/mathcomp-analysis/default.nix b/pkgs/development/coq-modules/mathcomp-analysis/default.nix
index f90be596fef..8ff9cc5b830 100644
--- a/pkgs/development/coq-modules/mathcomp-analysis/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-analysis/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.8" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.8" "8.9" ];
   };
 }
diff --git a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
index fa4a2aaeddb..e1f58edc9cb 100644
--- a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ coq ];
   propagatedBuildInputs = [ mathcomp ];
 
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+  installFlags = "-f Makefile.coq COQLIB=$(out)/lib/coq/${coq.coq-version}/";
 
   meta = {
     description = "A small library to do epsilon - N reasonning";
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" "8.9" ];
   };
 }
diff --git a/pkgs/development/coq-modules/mathcomp-finmap/default.nix b/pkgs/development/coq-modules/mathcomp-finmap/default.nix
index a5d0d006a38..18584d28c68 100644
--- a/pkgs/development/coq-modules/mathcomp-finmap/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-finmap/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ coq ];
   propagatedBuildInputs = [ mathcomp ];
 
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+  installFlags = "-f Makefile.coq COQLIB=$(out)/lib/coq/${coq.coq-version}/";
 
   meta = {
     description = "A finset and finmap library";
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    compatibleCoqVersions = v: builtins.elem v [ "8.6" "8.7" "8.8" ];
+    compatibleCoqVersions = v: builtins.elem v [ "8.6" "8.7" "8.8" "8.9" ];
   };
 }
diff --git a/pkgs/development/coq-modules/paramcoq/default.nix b/pkgs/development/coq-modules/paramcoq/default.nix
new file mode 100644
index 00000000000..472d3aeb2d0
--- /dev/null
+++ b/pkgs/development/coq-modules/paramcoq/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchFromGitHub, coq }:
+
+let params =
+  {
+    "8.7" = {
+      version = "1.1.1+coq8.7";
+      sha256 = "1i7b5pkx46zf9il2xikbp3rhpnh3wdfbhw5yxcf9yk28ky9s0a0l";
+    };
+    "8.8" = {
+      version = "1.1.1";
+      sha256 = "0b07zvgm9cx6j2d9631zmqjs6sf30kiqg6k15xk3km7n80d53wfh";
+    };
+    "8.9" = {
+      version = "1.1.1+coq8.9";
+      sha256 = "002xabhjlph394vydw3dx8ipv5ry2nq3py4440bk9a18ljx0w6ll";
+    };
+  };
+  param = params."${coq.coq-version}";
+in
+
+stdenv.mkDerivation rec {
+  inherit (param) version;
+  name = "coq${coq.coq-version}-paramcoq-${version}";
+  src = fetchFromGitHub {
+    owner = "coq-community";
+    repo = "paramcoq";
+    rev = "v${version}";
+    inherit (param) sha256;
+  };
+
+  buildInputs = [ coq ]
+  ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ])
+  ;
+
+  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+
+  passthru = {
+    compatibleCoqVersions = v: builtins.hasAttr v params;
+  };
+
+  meta = {
+    description = "Coq plugin for parametricity";
+    inherit (src.meta) homepage;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (coq.meta) platforms;
+  };
+}
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 4391f7b6f46..426d23d6c7e 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -85,7 +85,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 = "06385r9rlncrrmzdfl8q600bw6plbvkmkwgl3llg595xrm711a97";
+      sha256 = "1v2v6cwy957y5rgclb66ia7bl5j5mx291s3lh2swa39q3420m6v0";
     };
   }).override {
     dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@@ -151,6 +151,10 @@ self: super: {
   # dontCheck due to https://github.com/haskell/vector/issues/138
   vector = dontCheck (if pkgs.stdenv.isi686 then appendConfigureFlag super.vector "--ghc-options=-msse2" else super.vector);
 
+  conduit-extra = if pkgs.stdenv.isDarwin
+    then super.conduit-extra.overrideAttrs (drv: { __darwinAllowLocalNetworking = true; })
+    else super.conduit-extra;
+
   # Fix Darwin build.
   halive = if pkgs.stdenv.isDarwin
     then addBuildDepend super.halive pkgs.darwin.apple_sdk.frameworks.AppKit
@@ -1219,4 +1223,12 @@ self: super: {
     })];
   });
 
+  # Use latest pandoc despite what LTS says.
+  # Test suite fails in both 2.5 and 2.6: https://github.com/jgm/pandoc/issues/5309.
+  pandoc = doDistribute (dontCheck super.pandoc_2_6);
+  pandoc-citeproc = self.pandoc-citeproc_0_16_1;
+
+  # https://github.com/qfpl/tasty-hedgehog/issues/24
+  tasty-hedgehog = dontCheck super.tasty-hedgehog;
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index cad85417011..c2fbb4d6126 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -95,7 +95,4 @@ self: super: {
   # GHC 8.2 doesn't have semigroups included by default
   ListLike = addBuildDepend super.ListLike self.semigroups;
 
-  # https://github.com/pikajude/stylish-cabal/issues/11
-  stylish-cabal = markBrokenVersion "0.4.1.0" super.stylish-cabal;
-
 }
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 bd51e4f6c85..2a72eced2ba 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -71,11 +71,6 @@ self: super: {
     yaml = self.yaml_0_11_0_0;
   };
 
-  # https://github.com/pikajude/stylish-cabal/issues/11
-  stylish-cabal = generateOptparseApplicativeCompletion "stylish-cabal" (super.stylish-cabal.overrideScope (self: super: {
-    haddock-library = dontHaddock (dontCheck self.haddock-library_1_5_0_1);
-  }));
-
   # cabal2nix doesn't list this because of a conditional on the GHC version.
   aeson = addBuildDepend super.aeson self.contravariant;
 
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 b6aae3d8e73..abfbe69568a 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -49,6 +49,7 @@ self: super: {
   data-clist = doJailbreak super.data-clist;  # won't cope with QuickCheck 2.12.x
   dates = doJailbreak super.dates; # base >=4.9 && <4.12
   Diff = dontCheck super.Diff;
+  equivalence = dontCheck super.equivalence; # test suite doesn't compile https://github.com/pa-ba/equivalence/issues/5
   HaTeX = doJailbreak super.HaTeX; # containers >=0.4 && <0.6 is too tight; https://github.com/Daniel-Diaz/HaTeX/issues/126
   hpc-coveralls = doJailbreak super.hpc-coveralls; # https://github.com/guillaume-nargeot/hpc-coveralls/issues/82
   http-api-data = doJailbreak super.http-api-data;
@@ -68,7 +69,4 @@ self: super: {
   # Break out of "yaml >=0.10.4.0 && <0.11": https://github.com/commercialhaskell/stack/issues/4485
   stack = doJailbreak super.stack;
 
-  # https://github.com/pikajude/stylish-cabal/issues/11
-  stylish-cabal = markBrokenVersion "0.4.1.0" super.stylish-cabal;
-
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghc-head.nix b/pkgs/development/haskell-modules/configuration-ghc-head.nix
index 1e7450a6bd1..2118be37534 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-head.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-head.nix
@@ -78,7 +78,4 @@ self: super: {
   # Fix build with ghc 8.6.x.
   git-annex = appendPatch super.git-annex ./patches/git-annex-fix-ghc-8.6.x-build.patch;
 
-  # https://github.com/pikajude/stylish-cabal/issues/11
-  stylish-cabal = markBrokenVersion "0.4.1.0" super.stylish-cabal;
-
 }
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 64262b12d65..feaf5507d1f 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -46,7 +46,7 @@ default-package-overrides:
   # Newer versions don't work in LTS-12.x
   - alsa-mixer < 0.3
   - cassava-megaparsec < 2
-  # LTS Haskell 13.6
+  # LTS Haskell 13.8
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -88,96 +88,96 @@ default-package-overrides:
   - alternative-vector ==0.0.0
   - alternators ==1.0.0.0
   - ALUT ==2.4.0.2
-  - amazonka ==1.6.0
-  - amazonka-apigateway ==1.6.0
-  - amazonka-application-autoscaling ==1.6.0
-  - amazonka-appstream ==1.6.0
-  - amazonka-athena ==1.6.0
-  - amazonka-autoscaling ==1.6.0
-  - amazonka-budgets ==1.6.0
-  - amazonka-certificatemanager ==1.6.0
-  - amazonka-cloudformation ==1.6.0
-  - amazonka-cloudfront ==1.6.0
-  - amazonka-cloudhsm ==1.6.0
-  - amazonka-cloudsearch ==1.6.0
-  - amazonka-cloudsearch-domains ==1.6.0
-  - amazonka-cloudtrail ==1.6.0
-  - amazonka-cloudwatch ==1.6.0
-  - amazonka-cloudwatch-events ==1.6.0
-  - amazonka-cloudwatch-logs ==1.6.0
-  - amazonka-codebuild ==1.6.0
-  - amazonka-codecommit ==1.6.0
-  - amazonka-codedeploy ==1.6.0
-  - amazonka-codepipeline ==1.6.0
-  - amazonka-cognito-identity ==1.6.0
-  - amazonka-cognito-idp ==1.6.0
-  - amazonka-cognito-sync ==1.6.0
-  - amazonka-config ==1.6.0
-  - amazonka-core ==1.6.0
-  - amazonka-datapipeline ==1.6.0
-  - amazonka-devicefarm ==1.6.0
-  - amazonka-directconnect ==1.6.0
-  - amazonka-discovery ==1.6.0
-  - amazonka-dms ==1.6.0
-  - amazonka-ds ==1.6.0
-  - amazonka-dynamodb ==1.6.0
-  - amazonka-dynamodb-streams ==1.6.0
-  - amazonka-ec2 ==1.6.0
-  - amazonka-ecr ==1.6.0
-  - amazonka-ecs ==1.6.0
-  - amazonka-efs ==1.6.0
-  - amazonka-elasticache ==1.6.0
-  - amazonka-elasticbeanstalk ==1.6.0
-  - amazonka-elasticsearch ==1.6.0
-  - amazonka-elastictranscoder ==1.6.0
-  - amazonka-elb ==1.6.0
-  - amazonka-elbv2 ==1.6.0
-  - amazonka-emr ==1.6.0
-  - amazonka-gamelift ==1.6.0
-  - amazonka-glacier ==1.6.0
-  - amazonka-health ==1.6.0
-  - amazonka-iam ==1.6.0
-  - amazonka-importexport ==1.6.0
-  - amazonka-inspector ==1.6.0
-  - amazonka-iot ==1.6.0
-  - amazonka-iot-dataplane ==1.6.0
-  - amazonka-kinesis ==1.6.0
-  - amazonka-kinesis-analytics ==1.6.0
-  - amazonka-kinesis-firehose ==1.6.0
-  - amazonka-kms ==1.6.0
-  - amazonka-lambda ==1.6.0
-  - amazonka-lightsail ==1.6.0
-  - amazonka-marketplace-analytics ==1.6.0
-  - amazonka-marketplace-metering ==1.6.0
-  - amazonka-ml ==1.6.0
-  - amazonka-opsworks ==1.6.0
-  - amazonka-opsworks-cm ==1.6.0
-  - amazonka-pinpoint ==1.6.0
-  - amazonka-polly ==1.6.0
-  - amazonka-rds ==1.6.0
-  - amazonka-redshift ==1.6.0
-  - amazonka-rekognition ==1.6.0
-  - amazonka-route53 ==1.6.0
-  - amazonka-route53-domains ==1.6.0
-  - amazonka-s3 ==1.6.0
-  - amazonka-sdb ==1.6.0
-  - amazonka-servicecatalog ==1.6.0
-  - amazonka-ses ==1.6.0
-  - amazonka-shield ==1.6.0
-  - amazonka-sms ==1.6.0
-  - amazonka-snowball ==1.6.0
-  - amazonka-sns ==1.6.0
-  - amazonka-sqs ==1.6.0
-  - amazonka-ssm ==1.6.0
-  - amazonka-stepfunctions ==1.6.0
-  - amazonka-storagegateway ==1.6.0
-  - amazonka-sts ==1.6.0
-  - amazonka-support ==1.6.0
-  - amazonka-swf ==1.6.0
-  - amazonka-test ==1.6.0
-  - amazonka-waf ==1.6.0
-  - amazonka-workspaces ==1.6.0
-  - amazonka-xray ==1.6.0
+  - amazonka ==1.6.1
+  - amazonka-apigateway ==1.6.1
+  - amazonka-application-autoscaling ==1.6.1
+  - amazonka-appstream ==1.6.1
+  - amazonka-athena ==1.6.1
+  - amazonka-autoscaling ==1.6.1
+  - amazonka-budgets ==1.6.1
+  - amazonka-certificatemanager ==1.6.1
+  - amazonka-cloudformation ==1.6.1
+  - amazonka-cloudfront ==1.6.1
+  - amazonka-cloudhsm ==1.6.1
+  - amazonka-cloudsearch ==1.6.1
+  - amazonka-cloudsearch-domains ==1.6.1
+  - amazonka-cloudtrail ==1.6.1
+  - amazonka-cloudwatch ==1.6.1
+  - amazonka-cloudwatch-events ==1.6.1
+  - amazonka-cloudwatch-logs ==1.6.1
+  - amazonka-codebuild ==1.6.1
+  - amazonka-codecommit ==1.6.1
+  - amazonka-codedeploy ==1.6.1
+  - amazonka-codepipeline ==1.6.1
+  - amazonka-cognito-identity ==1.6.1
+  - amazonka-cognito-idp ==1.6.1
+  - amazonka-cognito-sync ==1.6.1
+  - amazonka-config ==1.6.1
+  - amazonka-core ==1.6.1
+  - amazonka-datapipeline ==1.6.1
+  - amazonka-devicefarm ==1.6.1
+  - amazonka-directconnect ==1.6.1
+  - amazonka-discovery ==1.6.1
+  - amazonka-dms ==1.6.1
+  - amazonka-ds ==1.6.1
+  - amazonka-dynamodb ==1.6.1
+  - amazonka-dynamodb-streams ==1.6.1
+  - amazonka-ec2 ==1.6.1
+  - amazonka-ecr ==1.6.1
+  - amazonka-ecs ==1.6.1
+  - amazonka-efs ==1.6.1
+  - amazonka-elasticache ==1.6.1
+  - amazonka-elasticbeanstalk ==1.6.1
+  - amazonka-elasticsearch ==1.6.1
+  - amazonka-elastictranscoder ==1.6.1
+  - amazonka-elb ==1.6.1
+  - amazonka-elbv2 ==1.6.1
+  - amazonka-emr ==1.6.1
+  - amazonka-gamelift ==1.6.1
+  - amazonka-glacier ==1.6.1
+  - amazonka-health ==1.6.1
+  - amazonka-iam ==1.6.1
+  - amazonka-importexport ==1.6.1
+  - amazonka-inspector ==1.6.1
+  - amazonka-iot ==1.6.1
+  - amazonka-iot-dataplane ==1.6.1
+  - amazonka-kinesis ==1.6.1
+  - amazonka-kinesis-analytics ==1.6.1
+  - amazonka-kinesis-firehose ==1.6.1
+  - amazonka-kms ==1.6.1
+  - amazonka-lambda ==1.6.1
+  - amazonka-lightsail ==1.6.1
+  - amazonka-marketplace-analytics ==1.6.1
+  - amazonka-marketplace-metering ==1.6.1
+  - amazonka-ml ==1.6.1
+  - amazonka-opsworks ==1.6.1
+  - amazonka-opsworks-cm ==1.6.1
+  - amazonka-pinpoint ==1.6.1
+  - amazonka-polly ==1.6.1
+  - amazonka-rds ==1.6.1
+  - amazonka-redshift ==1.6.1
+  - amazonka-rekognition ==1.6.1
+  - amazonka-route53 ==1.6.1
+  - amazonka-route53-domains ==1.6.1
+  - amazonka-s3 ==1.6.1
+  - amazonka-sdb ==1.6.1
+  - amazonka-servicecatalog ==1.6.1
+  - amazonka-ses ==1.6.1
+  - amazonka-shield ==1.6.1
+  - amazonka-sms ==1.6.1
+  - amazonka-snowball ==1.6.1
+  - amazonka-sns ==1.6.1
+  - amazonka-sqs ==1.6.1
+  - amazonka-ssm ==1.6.1
+  - amazonka-stepfunctions ==1.6.1
+  - amazonka-storagegateway ==1.6.1
+  - amazonka-sts ==1.6.1
+  - amazonka-support ==1.6.1
+  - amazonka-swf ==1.6.1
+  - amazonka-test ==1.6.1
+  - amazonka-waf ==1.6.1
+  - amazonka-workspaces ==1.6.1
+  - amazonka-xray ==1.6.1
   - amqp ==0.18.1
   - annotated-wl-pprint ==0.7.0
   - ansi-terminal ==0.8.2
@@ -238,7 +238,7 @@ default-package-overrides:
   - avers ==0.0.17.1
   - avers-api ==0.1.0
   - avers-server ==0.1.0.1
-  - avro ==0.4.1.2
+  - avro ==0.4.2.0
   - avwx ==0.3.0.2
   - axel ==0.0.9
   - backprop ==0.2.6.1
@@ -253,7 +253,7 @@ default-package-overrides:
   - base64-string ==0.2
   - base-compat ==0.10.5
   - base-compat-batteries ==0.10.5
-  - basement ==0.0.8
+  - basement ==0.0.10
   - base-noprelude ==4.12.0.0
   - base-orphans ==0.8
   - base-prelude ==1.3
@@ -365,7 +365,7 @@ default-package-overrides:
   - cassava-records ==0.1.0.4
   - cast ==0.1.0.2
   - category ==0.2.2.0
-  - cayley-client ==0.4.8
+  - cayley-client ==0.4.9
   - cborg ==0.2.1.0
   - cborg-json ==0.2.1.0
   - cereal ==0.5.8.0
@@ -481,7 +481,7 @@ default-package-overrides:
   - cql-io ==1.0.1.1
   - crackNum ==2.3
   - credential-store ==0.1.2
-  - criterion ==1.5.3.0
+  - criterion ==1.5.4.0
   - criterion-measurement ==0.1.1.0
   - cron ==0.6.1
   - crypto-api ==0.13.3
@@ -557,8 +557,8 @@ default-package-overrides:
   - dataurl ==0.1.0.0
   - DAV ==1.3.3
   - dbcleaner ==0.1.3
-  - DBFunctor ==0.1.0.0
-  - dbus ==1.2.3
+  - DBFunctor ==0.1.1.1
+  - dbus ==1.2.4
   - debian-build ==0.10.1.2
   - debug ==0.1.1
   - debug-trace-var ==0.2.0
@@ -595,7 +595,7 @@ default-package-overrides:
   - digits ==0.3.1
   - di-monad ==1.3
   - directory-tree ==0.12.1
-  - direct-sqlite ==2.3.23
+  - direct-sqlite ==2.3.24
   - discount ==0.1.1
   - disk-free-space ==0.1.0.1
   - distributed-closure ==0.4.1
@@ -610,7 +610,7 @@ default-package-overrides:
   - doctemplates ==0.2.2.1
   - doctest ==0.16.0.1
   - doctest-discover ==0.2.0.0
-  - doctest-driver-gen ==0.3.0.0
+  - doctest-driver-gen ==0.3.0.1
   - do-list ==1.0.1
   - dom-parser ==3.1.0
   - dotenv ==0.8.0.0
@@ -749,7 +749,7 @@ default-package-overrides:
   - forma ==1.1.1
   - format-numbers ==0.1.0.0
   - formatting ==6.3.7
-  - foundation ==0.0.21
+  - foundation ==0.0.23
   - free ==5.1
   - freenect ==1.2.1
   - freer-simple ==1.2.1.0
@@ -776,7 +776,7 @@ default-package-overrides:
   - general-games ==1.1.1
   - generic-arbitrary ==0.1.0
   - generic-data ==0.3.0.0
-  - generic-deriving ==1.12.2
+  - generic-deriving ==1.12.3
   - generic-lens ==1.1.0.0
   - GenericPretty ==1.2.2
   - generic-random ==1.2.0.0
@@ -850,7 +850,7 @@ default-package-overrides:
   - gloss-rendering ==1.13.0.2
   - GLURaw ==2.0.0.4
   - GLUT ==2.7.0.14
-  - gnuplot ==0.5.5.3
+  - gnuplot ==0.5.6
   - goggles ==0.3.2
   - google-isbn ==1.0.3
   - google-oauth2-jwt ==0.3.1
@@ -880,7 +880,7 @@ default-package-overrides:
   - hamilton ==0.1.0.3
   - hamtsolo ==1.0.3
   - HandsomeSoup ==0.4.2
-  - hapistrano ==0.3.9.1
+  - hapistrano ==0.3.9.2
   - happy ==1.19.9
   - hasbolt ==0.1.3.2
   - hashable ==1.2.7.0
@@ -917,8 +917,8 @@ default-package-overrides:
   - HDBC-mysql ==0.7.1.0
   - HDBC-session ==0.1.2.0
   - heap ==1.0.4
-  - heaps ==0.3.6
-  - hebrew-time ==0.1.1
+  - heaps ==0.3.6.1
+  - hebrew-time ==0.1.2
   - hedgehog ==0.6.1
   - hedgehog-corpus ==0.1.0
   - hedis ==0.10.10
@@ -951,7 +951,7 @@ default-package-overrides:
   - hmatrix-morpheus ==0.1.1.2
   - hmatrix-vector-sized ==0.1.1.2
   - hmpfr ==0.4.4
-  - hoauth2 ==1.8.3
+  - hoauth2 ==1.8.4
   - Hoed ==0.5.1
   - hOpenPGP ==2.7.4.1
   - hopfli ==0.2.2.1
@@ -977,8 +977,8 @@ default-package-overrides:
   - hsdns ==1.7.1
   - hsebaysdk ==0.4.0.0
   - hsemail ==2
-  - hset ==2.2.0
   - HSet ==0.0.1
+  - hset ==2.2.0
   - hsexif ==0.6.1.6
   - hs-functors ==0.1.3.0
   - hs-GeoIP ==0.3
@@ -1089,7 +1089,7 @@ default-package-overrides:
   - imagesize-conduit ==1.1
   - Imlib ==0.1.2
   - immortal ==0.3
-  - include-file ==0.1.0.3
+  - include-file ==0.1.0.4
   - incremental-parser ==0.3.2.1
   - indentation-core ==0.0.0.2
   - indentation-parsec ==0.0.0.2
@@ -1110,7 +1110,7 @@ default-package-overrides:
   - intern ==0.9.2
   - interpolate ==0.2.0
   - interpolatedstring-perl6 ==1.0.1
-  - interpolation ==0.1.0.3
+  - interpolation ==0.1.1
   - interpolator ==0.1.1
   - IntervalMap ==0.6.1.0
   - intervals ==0.8.1
@@ -1216,7 +1216,7 @@ default-package-overrides:
   - libgraph ==1.14
   - libmpd ==0.9.0.9
   - libraft ==0.1.1.0
-  - libyaml ==0.1.0.0
+  - libyaml ==0.1.1.0
   - LibZip ==1.0.1
   - lifted-async ==0.10.0.3
   - lifted-base ==0.2.3.12
@@ -1321,7 +1321,7 @@ default-package-overrides:
   - mmap ==0.5.9
   - mmark ==0.0.6.1
   - mmark-cli ==0.0.5.0
-  - mmark-ext ==0.2.1.1
+  - mmark-ext ==0.2.1.2
   - mmorph ==1.1.2
   - mnist-idx ==0.1.2.8
   - mockery ==0.3.5
@@ -1481,7 +1481,7 @@ default-package-overrides:
   - parallel ==3.2.2.0
   - parallel-io ==0.3.3
   - paripari ==0.6.0.0
-  - parseargs ==0.2.0.8
+  - parseargs ==0.2.0.9
   - parsec ==3.1.13.0
   - parsec-class ==1.0.0.0
   - parsec-numbers ==0.1.0
@@ -1491,10 +1491,10 @@ default-package-overrides:
   - parsers ==0.12.9
   - partial-handler ==1.0.3
   - partial-isomorphisms ==0.2.2.1
-  - partial-semigroup ==0.5.0.0
+  - partial-semigroup ==0.5.1.0
   - path ==0.6.1
   - path-extra ==0.2.0
-  - path-io ==1.4.1
+  - path-io ==1.4.2
   - path-pieces ==0.2.1
   - path-text-utf8 ==0.0.1.2
   - pathtype ==0.8.1
@@ -1538,7 +1538,7 @@ default-package-overrides:
   - pipes-fastx ==0.3.0.0
   - pipes-fluid ==0.6.0.1
   - pipes-group ==1.0.12
-  - pipes-http ==1.0.5
+  - pipes-http ==1.0.6
   - pipes-misc ==0.5.0.0
   - pipes-network ==0.6.5
   - pipes-network-tls ==0.3
@@ -1606,13 +1606,13 @@ default-package-overrides:
   - protocol-radius ==0.0.1.1
   - protocol-radius-test ==0.0.1.0
   - proto-lens ==0.4.0.1
-  - proto-lens-arbitrary ==0.1.2.5
+  - proto-lens-arbitrary ==0.1.2.6
   - proto-lens-combinators ==0.4.0.1
-  - proto-lens-optparse ==0.1.1.4
+  - proto-lens-optparse ==0.1.1.5
   - proto-lens-protobuf-types ==0.4.0.1
   - proto-lens-protoc ==0.4.0.2
   - proto-lens-runtime ==0.4.0.2
-  - proto-lens-setup ==0.4.0.1
+  - proto-lens-setup ==0.4.0.2
   - protolude ==0.2.3
   - proxied ==0.3
   - psql-helpers ==0.1.0.0
@@ -1666,7 +1666,7 @@ default-package-overrides:
   - read-editor ==0.1.0.2
   - read-env-var ==1.0.0.0
   - rebase ==1.3
-  - record-dot-preprocessor ==0.1.4
+  - record-dot-preprocessor ==0.1.5
   - records-sop ==0.1.0.2
   - recursion-schemes ==5.1.1
   - reducers ==3.12.3
@@ -1844,9 +1844,9 @@ default-package-overrides:
   - skein ==1.0.9.4
   - skews ==0.1.0.1
   - skip-var ==0.1.1.0
-  - skylighting ==0.7.5
-  - skylighting-core ==0.7.5
-  - slack-web ==0.2.0.9
+  - skylighting ==0.7.6
+  - skylighting-core ==0.7.6
+  - slack-web ==0.2.0.10
   - smallcheck ==1.1.5
   - smoothie ==0.4.2.9
   - smtp-mail ==0.1.4.6
@@ -2024,7 +2024,7 @@ default-package-overrides:
   - th-expand-syns ==0.4.4.0
   - th-extras ==0.0.0.4
   - th-lift ==0.7.11
-  - th-lift-instances ==0.1.11
+  - th-lift-instances ==0.1.12
   - th-orphans ==0.13.6
   - th-printf ==0.6.0
   - thread-hierarchy ==0.3.0.1
@@ -2114,7 +2114,7 @@ default-package-overrides:
   - union-find ==0.2
   - uniplate ==1.6.12
   - uniprot-kb ==0.1.2.0
-  - uniq-deep ==1.1.0.0
+  - uniq-deep ==1.1.1
   - unique ==0
   - unit-constraint ==0.0.0
   - universe-base ==1.0.2.1
@@ -2165,7 +2165,7 @@ default-package-overrides:
   - vector-algorithms ==0.8.0.1
   - vector-binary-instances ==0.2.5.1
   - vector-buffer ==0.4.1
-  - vector-builder ==0.3.6
+  - vector-builder ==0.3.7.2
   - vector-bytes-instances ==0.1.1
   - vector-instances ==3.4
   - vector-mmap ==0.0.3
@@ -2183,7 +2183,7 @@ default-package-overrides:
   - void ==0.7.2
   - vty ==5.25.1
   - wai ==3.2.2
-  - wai-app-static ==3.1.6.2
+  - wai-app-static ==3.1.6.3
   - wai-cli ==0.1.1
   - wai-conduit ==3.0.0.4
   - wai-cors ==0.2.6
@@ -2286,19 +2286,19 @@ default-package-overrides:
   - xmonad-extras ==0.15.1
   - xss-sanitize ==0.3.6
   - xxhash-ffi ==0.2.0.0
-  - yam ==0.5.11
-  - yam-datasource ==0.5.11
+  - yam ==0.5.13
+  - yam-datasource ==0.5.13
   - yaml ==0.11.0.0
   - yeshql ==4.1.0.1
   - yeshql-core ==4.1.0.2
   - yeshql-hdbc ==4.1.0.2
   - yesod ==1.6.0
   - yesod-alerts ==0.1.2.0
-  - yesod-auth ==1.6.5
+  - yesod-auth ==1.6.6
   - yesod-auth-hashdb ==1.7.1
   - yesod-auth-oauth2 ==0.6.1.0
   - yesod-bin ==1.6.0.3
-  - yesod-core ==1.6.11
+  - yesod-core ==1.6.12
   - yesod-csp ==0.2.4.0
   - yesod-eventsource ==1.6.0
   - yesod-fb ==0.5.0
@@ -2306,7 +2306,7 @@ default-package-overrides:
   - yesod-form-bootstrap4 ==2.1.0
   - yesod-gitrepo ==0.3.0
   - yesod-gitrev ==0.2.0.0
-  - yesod-markdown ==0.12.6.0
+  - yesod-markdown ==0.12.6.1
   - yesod-newsfeed ==1.6.1.0
   - yesod-paginator ==1.1.0.1
   - yesod-persistent ==1.6.0.1
@@ -2362,7 +2362,6 @@ extra-packages:
   - haddock-api == 2.17.*               # required on GHC 8.0.x
   - haddock-library == 1.2.*            # required for haddock-api-2.16.x
   - haddock-library == 1.4.3            # required for haddock-api-2.17.x
-  - haddock-library == 1.5.*            # required for stylish-cabal-0.4.0.1
   - happy <1.19.6                       # newer versions break Agda
   - haskell-gi-overloading == 0.0       # gi-* packages use this dependency to disable overloading support
   - haskell-src-exts == 1.19.*          # required by hindent and structured-haskell-mode
@@ -2404,9 +2403,9 @@ extra-packages:
 
 package-maintainers:
   peti:
+    - cabal-install
     - cabal2nix
     - cabal2spec
-    - cabal-install
     - distribution-nixpkgs
     - funcmp
     - git-annex
@@ -2431,6 +2430,7 @@ package-maintainers:
     - stack
     - streamproc
     - structured-haskell-mode
+    - stylish-cabal
     - titlecase
     - xmonad
     - xmonad-contrib
@@ -3226,6 +3226,7 @@ dont-distribute-packages:
   broadcast-chan-tests:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   broadcast-chan:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   broccoli:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  brok:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   broker-haskell:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   bronyradiogermany-streaming:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   browscap:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3279,6 +3280,7 @@ dont-distribute-packages:
   c2ats:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   c2hsc:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   cabal-audit:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  cabal-bundle-clib:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   cabal-cargs:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   cabal-constraints:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   cabal-db:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3325,6 +3327,7 @@ dont-distribute-packages:
   caffegraph:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   cairo-appbase:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   cairo-canvas:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  cairo-core:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   cairo:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   cake3:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   cake:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3474,6 +3477,7 @@ dont-distribute-packages:
   cil:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   cinvoke:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   cio:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ciphersaber2:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   circlehs:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   citation-resolve:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   citeproc-hs-pandoc-filter:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3922,10 +3926,12 @@ dont-distribute-packages:
   data-util:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   data-variant:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   database-study:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  datadog-tracing:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   datadog:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   datafix:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   dataflow:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   datalog:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  datasets:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   DataTreeView:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   date-conversions:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   dates:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4586,6 +4592,7 @@ dont-distribute-packages:
   flite:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   float-binstring:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   floating-bits:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  floskell:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   flow-er:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   flow2dot:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   flowdock-api:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4740,6 +4747,7 @@ dont-distribute-packages:
   game-probability:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   gameclock:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Gamgine:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gamma:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   Ganymede:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   garepinoh:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   gargoyle-postgresql:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4846,6 +4854,7 @@ dont-distribute-packages:
   ghc-heap-view:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghc-imported-from:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghc-instances:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ghc-lib:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghc-man-completion:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghc-mod:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghc-parmake:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4878,6 +4887,7 @@ dont-distribute-packages:
   ghcjs-xhr:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   ghclive:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ght:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gi-cairo-again:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   gi-gstpbutils:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   gi-gsttag:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   gi-gtkosxapplication:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5243,6 +5253,7 @@ dont-distribute-packages:
   happstack-facebook:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   happstack-fay-ajax:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   happstack-fay:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  happstack-foundation:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   happstack-hamlet:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   happstack-heist:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   happstack-helpers:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5437,6 +5448,7 @@ dont-distribute-packages:
   haskus-utils-data:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskus-utils-variant:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskus-utils:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskus-web:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   haslo:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hasloGUI:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hasparql-client:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5725,6 +5737,7 @@ dont-distribute-packages:
   hmeap-utils:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmeap:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmenu:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hmep:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmk:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmm-hmatrix:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmm-lapack:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6256,6 +6269,7 @@ dont-distribute-packages:
   insert-ordered-containers:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   inserts:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   inspector-wrecker:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  instana-haskell-trace-sdk:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   instant-aeson:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   instant-bytes:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   instant-deepseq:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6472,7 +6486,9 @@ dont-distribute-packages:
   kansas-lava:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   karakuri:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   karps:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  katip-datadog:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   katip-elasticsearch:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  katip-logzio:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   katip-rollbar:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   katip-scalyr-scribe:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   katip-syslog:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6526,6 +6542,7 @@ dont-distribute-packages:
   krapsh:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Kriens:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   krpc:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ks-test:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   KSP:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   ktx:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   kure-your-boilerplate:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6652,6 +6669,7 @@ dont-distribute-packages:
   ldif:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   leaf:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   leaky:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  leanpub-wreq:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   leapseconds:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   learn-physics-examples:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   learn-physics:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6958,6 +6976,7 @@ dont-distribute-packages:
   MASMGen:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   master-plan:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   matchers:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  math-grads:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   mathblog:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   mathflow:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   mathlink:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7092,6 +7111,8 @@ dont-distribute-packages:
   ml-w:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   mlist:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mltool:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mmark-cli:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mmark-ext:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtf:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtl-base:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtl:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7648,6 +7669,7 @@ dont-distribute-packages:
   pareto:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Parry:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   parse-help:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  parseargs:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   parsec-free:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   parsec-parsers:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   parsec-pratt:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7971,6 +7993,7 @@ dont-distribute-packages:
   priority-sync:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   PriorityChansConverger:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   ProbabilityMonads:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  probable:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   proc:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   process-conduit:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   process-iterio:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8181,6 +8204,7 @@ dont-distribute-packages:
   rasa:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   rascal:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Rasenschach:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  rating-chgk-info:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   rattletrap:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   raven-haskell-scotty:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   raw-feldspar:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8249,6 +8273,7 @@ dont-distribute-packages:
   refh:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   reflection-extras:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   reflex-animation:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  reflex-dom-core:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   reflex-gloss-scene:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   reflex-gloss:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   reflex-orphans:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8474,6 +8499,7 @@ dont-distribute-packages:
   saferoute:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   sai-shape-syb:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   sajson:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  salak:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   Salsa:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   saltine-quickcheck:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   salvia-demo:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8502,6 +8528,8 @@ dont-distribute-packages:
   sax:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   SBench:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   sbvPlugin:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  sc2-lowlevel:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  sc2-proto:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   sc3-rdu:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   scalable-server:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   scaleimage:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8543,6 +8571,7 @@ dont-distribute-packages:
   scotty:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   scp-streams:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   scrabble-bot:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  scrapbook:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   scrape-changes:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   ScratchFs:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   script-monad:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8666,6 +8695,7 @@ dont-distribute-packages:
   servant-swagger-ui-redoc:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-swagger-ui:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-swagger:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-waargonaut:                             [ 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 ]
@@ -8739,6 +8769,7 @@ dont-distribute-packages:
   shorten-strings:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   ShortestPathProblems:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   showdown:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  shower:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   shpider:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   shuffle:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   si-clock:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8843,6 +8874,8 @@ dont-distribute-packages:
   sme:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   smerdyakov:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   smiles:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  smith-cli:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  smith-client:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   Smooth:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   smsaero:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   smt-lib:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8945,6 +8978,8 @@ dont-distribute-packages:
   sorting:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   sorty:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   sound-collage:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  sounddelay:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  soundgen:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   source-code-server:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   SourceGraph:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   sousit:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9075,6 +9110,7 @@ dont-distribute-packages:
   stb-truetype:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   stdata:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   stdf:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  stdio:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   steambrowser:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   stego-uuid:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   stemmer-german:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9144,7 +9180,6 @@ dont-distribute-packages:
   stt:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   stunts:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   stutter:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
-  stylish-cabal:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   stylized:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   sub-state:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   subhask:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9275,6 +9310,7 @@ dont-distribute-packages:
   target:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   task-distribution:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   task:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  taskell:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   tasty-auto:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   tasty-fail-fast:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   tasty-groundhog-converters:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9553,6 +9589,7 @@ dont-distribute-packages:
   tripLL:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   trivia:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tropical:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  truelevel:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   trurl:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   tsession-happstack:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   tsession:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9786,6 +9823,7 @@ dont-distribute-packages:
   vaultaire-common:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   vaultenv:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   vaultenv:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  vaultenv:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   vcard:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   vcatt:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   vcf:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9916,6 +9954,7 @@ dont-distribute-packages:
   wasm:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   watcher:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   watchit:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  WAVE:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   wavefront-obj:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   WaveFront:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   wavesurfer:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9971,6 +10010,7 @@ dont-distribute-packages:
   whiskers:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   whitespace:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   why3:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  wide-word:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   WikimediaParser:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   wikipedia4epub:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   wild-bind-indicator:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 2345bfbc5c0..fe07dd735f5 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -544,6 +544,19 @@ self: super: builtins.intersectAttrs super {
       '';
     });
 
+  # On Darwin, git-annex mis-detects options to `cp`, so we wrap the binary to
+  # ensure it uses Nixpkgs' coreutils.
+  git-annex = with pkgs;
+    if (!stdenv.isLinux) then
+      let path = stdenv.lib.makeBinPath [ coreutils ];
+      in overrideCabal (addBuildTool super.git-annex makeWrapper) (_drv: {
+        postFixup = ''
+          wrapProgram $out/bin/git-annex \
+            --prefix PATH : "${path}"
+        '';
+      })
+    else super.git-annex;
+
   # The test suite has undeclared dependencies on git.
   githash = dontCheck super.githash;
 
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index abfdb0801b2..73991a6b4f7 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -3515,28 +3515,26 @@ self: {
 
   "DBFunctor" = callPackage
     ({ mkDerivation, base, bytestring, cassava, cereal, containers
-     , deepseq, either, MissingH, text, transformers
+     , deepseq, either, MissingH, text, time, transformers
      , unordered-containers, vector
      }:
      mkDerivation {
        pname = "DBFunctor";
-       version = "0.1.0.0";
-       sha256 = "0add2hbk8jz8pmmk1in7z3rc4r7xgks0b5xqz113lzf4abnpiac7";
-       revision = "1";
-       editedCabalFile = "1gfadkmnf1c151kkcq41ca2vx36drp2kfhq74ybhvdz32kbrvwq3";
+       version = "0.1.1.1";
+       sha256 = "0n3qmgjf9ly5vpnsvh8rhwbd94l157d1asy95n8yqpmrb6xqc1k4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring cassava cereal containers deepseq either MissingH
-         text transformers unordered-containers vector
+         text time transformers unordered-containers vector
        ];
        executableHaskellDepends = [
          base bytestring cassava cereal containers deepseq either MissingH
-         text transformers unordered-containers vector
+         text time transformers unordered-containers vector
        ];
        testHaskellDepends = [
          base bytestring cassava cereal containers deepseq either MissingH
-         text transformers unordered-containers vector
+         text time transformers unordered-containers vector
        ];
        description = "DBFunctor - Functional Data Management => ETL/ELT Data Processing in Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -8916,8 +8914,8 @@ self: {
      }:
      mkDerivation {
        pname = "HaTeX";
-       version = "3.19.0.0";
-       sha256 = "0ja7w9l1pnf4pgbggr8cmsq0234cvsn75b9jzvd64jplhajpgn8z";
+       version = "3.20.0.0";
+       sha256 = "0rfrmv14kcgsanpsa6wzl445jmirwbd4l3if1kl1j81mqil5z58l";
        libraryHaskellDepends = [
          base bytestring containers hashable matrix parsec QuickCheck text
          transformers wl-pprint-extras
@@ -10555,8 +10553,8 @@ self: {
     ({ mkDerivation, base, parsec }:
      mkDerivation {
        pname = "JSONParser";
-       version = "0.1.0.2";
-       sha256 = "1fny73aplmcf15iyspad2h6qjxzfclsnhdwxji20fivsv7172jkj";
+       version = "0.1.0.3";
+       sha256 = "0nznnp9mr36npdzy8avbxbpm07mzm8mz4na1hfyv24g9iqmp31f8";
        libraryHaskellDepends = [ base parsec ];
        description = "Parse JSON";
        license = stdenv.lib.licenses.bsd3;
@@ -14952,19 +14950,21 @@ self: {
      }) {};
 
   "PyF" = callPackage
-    ({ mkDerivation, base, containers, formatting, haskell-src-meta
-     , hspec, megaparsec, process, python3, template-haskell, text
+    ({ mkDerivation, base, containers, deepseq, directory, filepath
+     , hashable, haskell-src-exts, haskell-src-meta, hspec, HUnit
+     , megaparsec, process, python3, template-haskell, temporary, text
      }:
      mkDerivation {
        pname = "PyF";
-       version = "0.6.1.1";
-       sha256 = "0pska6y3hvzlhlxjdvjr4lixmjq5yczf7ydqf0488hjdlc4hirll";
+       version = "0.7.1.0";
+       sha256 = "1zgf37q6jcvda28vfmbhlr1jvcgpq2ma4n67i2id02bmc86nk4x1";
        libraryHaskellDepends = [
-         base containers formatting haskell-src-meta megaparsec
+         base containers haskell-src-exts haskell-src-meta megaparsec
          template-haskell text
        ];
        testHaskellDepends = [
-         base formatting hspec process template-haskell text
+         base deepseq directory filepath hashable hspec HUnit process
+         template-haskell temporary text
        ];
        testToolDepends = [ python3 ];
        description = "Quasiquotations for a python like interpolated string formater";
@@ -17949,8 +17949,8 @@ self: {
        pname = "TestExplode";
        version = "0.1.0.0";
        sha256 = "0r4nwzwdila9p05g5y99rp06dbh1k2yl5jsc6yn6dwvxkvvdjcs1";
-       revision = "5";
-       editedCabalFile = "088x66qy58308nsdsif9zknh4787r3fvdxf6qxzc5vc8dib1j64z";
+       revision = "6";
+       editedCabalFile = "11855w0z8l8hs387rrnp9qgh3krlx6d7pd2bdrb72jcgkyvdhgjg";
        libraryHaskellDepends = [
          base containers directory fgl graphviz interpolatedstring-perl6 mtl
          process text
@@ -18808,6 +18808,7 @@ self: {
        ];
        description = "WAVE audio file IO library";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "WL500gPControl" = callPackage
@@ -19085,8 +19086,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "Win32";
-       version = "2.8.2.0";
-       sha256 = "1yi1mynxdy05hmq5hzqr9vyjgbr2k0dqjpma0mlk2vqli3nhvw5m";
+       version = "2.8.3.0";
+       sha256 = "0qsw3z11fsz12s7y9m4w226dlx037d1a0ak5whja4il5z7zbngsr";
        description = "A binding to Windows Win32 API";
        license = stdenv.lib.licenses.bsd3;
        platforms = stdenv.lib.platforms.none;
@@ -20652,21 +20653,24 @@ self: {
 
   "acid-state" = callPackage
     ({ mkDerivation, array, base, bytestring, cereal, containers
-     , criterion, directory, extensible-exceptions, filepath, mtl
-     , network, random, safecopy, stm, system-fileio, system-filepath
-     , template-haskell, unix
+     , criterion, deepseq, directory, filelock, filepath, hedgehog
+     , hspec, hspec-discover, mtl, network, random, safecopy, stm
+     , system-fileio, system-filepath, template-haskell, text
+     , th-expand-syns, time, unix
      }:
      mkDerivation {
        pname = "acid-state";
-       version = "0.14.3";
-       sha256 = "1d8hq8cj6h4crfnkmds6mhrhhg7r1b1byb8fybaj8khfa99sj0nm";
-       revision = "1";
-       editedCabalFile = "1sff496w6wpvs88jjk8306zvf0z1169g9n0y99sglqgzb03bw6gp";
+       version = "0.15.0";
+       sha256 = "0x1w7da9bcr23v97zri9bz5iw3hzy1x55b4i2di1cswnp50qxz60";
        libraryHaskellDepends = [
-         array base bytestring cereal containers directory
-         extensible-exceptions filepath mtl network safecopy stm
-         template-haskell unix
+         array base bytestring cereal containers directory filelock filepath
+         mtl network safecopy stm template-haskell th-expand-syns unix
        ];
+       testHaskellDepends = [
+         base cereal containers deepseq directory hedgehog hspec
+         hspec-discover mtl network safecopy template-haskell text time
+       ];
+       testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
          base criterion directory mtl random system-fileio system-filepath
        ];
@@ -22057,16 +22061,15 @@ self: {
      }:
      mkDerivation {
        pname = "aeson-gadt-th";
-       version = "0.1.2.0";
-       sha256 = "1rlcf37qb16cxrym9f0p1spmwplf521hkvdc4kl5af7q573dahkg";
+       version = "0.1.2.1";
+       sha256 = "0i5ld955dw6i5sf1j4cby6xfqf29r9gy1r6lh4901m6xcgh812jv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base dependent-sum template-haskell transformers
        ];
-       executableHaskellDepends = [
-         aeson base dependent-sum markdown-unlit
-       ];
+       executableHaskellDepends = [ aeson base dependent-sum ];
+       executableToolDepends = [ markdown-unlit ];
        description = "Derivation of Aeson instances for GADTs";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -23499,8 +23502,10 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "alist";
-       version = "0.1.0.3";
-       sha256 = "0asm8kp7xsqs1r5x65j4nhdbzs2sk1w5yh0f9g6sn6k03acg8gcr";
+       version = "0.1.0.5";
+       sha256 = "19771h6vxzxn0zj0r59qgc6lclks3ysxli21dziavmr784z2dbgn";
+       revision = "1";
+       editedCabalFile = "1lc1x072g6vkfifh11cfpw95wb0ly9ifs8xg3y1yrpqv4fyl8y0b";
        libraryHaskellDepends = [ base ];
        description = "lists with O(1) append";
        license = stdenv.lib.licenses.bsd3;
@@ -23974,17 +23979,17 @@ self: {
      , conduit-extra, directory, exceptions, http-client, http-conduit
      , http-types, ini, mmorph, monad-control, mtl, resourcet, retry
      , tasty, tasty-hunit, text, time, transformers, transformers-base
-     , transformers-compat, void
+     , transformers-compat, unliftio-core, void
      }:
      mkDerivation {
        pname = "amazonka";
-       version = "1.6.0";
-       sha256 = "07647x7lq9kaq6bqh38rvdiajji4ks6s7nvxv2xi4v4lhwn8j89p";
+       version = "1.6.1";
+       sha256 = "104ifvmwdc1w3y42qcbq57v579zcnmlfv3f0bsazbcqdxnvr9dzd";
        libraryHaskellDepends = [
          amazonka-core base bytestring conduit conduit-extra directory
          exceptions http-client http-conduit http-types ini mmorph
          monad-control mtl resourcet retry text time transformers
-         transformers-base transformers-compat void
+         transformers-base transformers-compat unliftio-core void
        ];
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Comprehensive Amazon Web Services SDK";
@@ -23997,8 +24002,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-alexa-business";
-       version = "1.6.0";
-       sha256 = "0r8qdcc4fxgpx7pgfkcah6pxq8dixaw167ph30a087rr74rfk0k1";
+       version = "1.6.1";
+       sha256 = "0k94d4i7fnrlf2zbvndw5bpl9g54ar03s43yzlygq1rg4qfwakhq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24014,8 +24019,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-apigateway";
-       version = "1.6.0";
-       sha256 = "1s2snyx9s23435wsan8hbi1vnql3n3rgh23ffv9d0n43pp7kxrjn";
+       version = "1.6.1";
+       sha256 = "11gkml1xp2h5j9idgk84h6nlz2fvszrrn9hmqjm4b76hj3a3v11v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24031,8 +24036,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-application-autoscaling";
-       version = "1.6.0";
-       sha256 = "1xqxlrw02r4w5h348ab04lrwp4cxk3sksx5xhmxr1macqb8sfdjm";
+       version = "1.6.1";
+       sha256 = "11njiad7rzx2vbzr6m3qwrvzqaplnp6h1zkd92mcc16chaial3ns";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24048,8 +24053,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-appstream";
-       version = "1.6.0";
-       sha256 = "1ps76yri9bnfkr4ya1yc9myrzpf44a01nrkd03kw8qidjcmnk47b";
+       version = "1.6.1";
+       sha256 = "1308gj35ibv54asgwng2rxsvwyz5gmcnfigikm1ib950a33zli36";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24065,8 +24070,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-appsync";
-       version = "1.6.0";
-       sha256 = "0yvi3gjzpb1i7ria8asc054p9jnxqilkb4gzd4pj40mjls28bxj5";
+       version = "1.6.1";
+       sha256 = "0py1hf3hjcyrck39s8b8nircz0zi80rq27b4snwmrbs5l5lhp23s";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24082,8 +24087,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-athena";
-       version = "1.6.0";
-       sha256 = "1nvprlnbr6wp96cykgnkbchp2n6vz6ngw2sxsvapds2n2swfxm4r";
+       version = "1.6.1";
+       sha256 = "17avw47p6jkfbwgr4hlv0kx10xbjgm2rfpdj26whjzwv1mpy83ip";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24099,8 +24104,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-autoscaling";
-       version = "1.6.0";
-       sha256 = "1lzqsn7bmq2yrdmn2hnic5cghmw7kxfmkvqcs8vrk2gg4cmi6lhv";
+       version = "1.6.1";
+       sha256 = "0569mjl9k4v0z740vhaz665zy5s3jzrvp562n4j6mkim9p0svd1g";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24116,8 +24121,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-autoscaling-plans";
-       version = "1.6.0";
-       sha256 = "068c1z74gm94gb34y5lvnn03q4l5bm7w7j2a81zyfacijvzzpbgn";
+       version = "1.6.1";
+       sha256 = "1xg9lcqjsdczy9gnssy78wbapypbdhnzs9kb3k779h5r8dv4rbx9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24133,8 +24138,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-batch";
-       version = "1.6.0";
-       sha256 = "0xh6fqaxgdsn4d7wb1j944npywn28p6srrsm3rpf7vbrc44gbc0y";
+       version = "1.6.1";
+       sha256 = "197wjj11y5qjapz6c9qpp92fkhsfbc8pm9f0pyw63k7cyr3vcrq6";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24150,8 +24155,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-budgets";
-       version = "1.6.0";
-       sha256 = "1dz4gi6qkkmfhz3yqj0pcjgsac4a2036bpiwayxdyzbzda2r5inc";
+       version = "1.6.1";
+       sha256 = "0wv25m25dnwsv3r8njjjg4ffy8d3r1xw5q56adhpifir0j2j1aw4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24167,8 +24172,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-certificatemanager";
-       version = "1.6.0";
-       sha256 = "0sma4rbylmj7dl0irab5vh32na52l1qb34xpa6l4icx1hp397pqz";
+       version = "1.6.1";
+       sha256 = "1wlyd1wn11ngq5pbh3mcg1acknsycyc9j41l7miwir5swxkpngc3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24184,8 +24189,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-certificatemanager-pca";
-       version = "1.6.0";
-       sha256 = "1ixczihy7f9hyhw0dxqzs5m3bgnkakzn4w0h792625738bhwv0ag";
+       version = "1.6.1";
+       sha256 = "1qcmbw2n6vw0a9ksbvqhf7qmlk5zlxifc4hg9wzr3zywmj4zygq0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24201,8 +24206,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloud9";
-       version = "1.6.0";
-       sha256 = "1i6npad6zszpx6bb47w1kppgds08z3mw5yx5jlbsl1a7y6ryv29v";
+       version = "1.6.1";
+       sha256 = "1ikkcd9i45zmfx7p25wf97pn52314xs0ga4lh3r32b8xrh2d9kq4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24218,8 +24223,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-clouddirectory";
-       version = "1.6.0";
-       sha256 = "0vbmqpn6f4723cq9cqv5hdxyiw6s12yr1xk6wfjpg5j3rqa930kx";
+       version = "1.6.1";
+       sha256 = "012nilk1j8jmp8bhcc5qff95g1ivsky05jwk4xpfh05j573cdaqz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24235,8 +24240,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudformation";
-       version = "1.6.0";
-       sha256 = "0dc3zb50vq3kkw65kkmrgz1vyjrzm1bmm3znj39i6slhfhjwiqhm";
+       version = "1.6.1";
+       sha256 = "1j5gsgswcflfrmry777drc7f7619azr1qffdz636y2vb8nsyl8z8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24252,8 +24257,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudfront";
-       version = "1.6.0";
-       sha256 = "18ilsfm3918x3lzwr0v470n7pkc2r1iknlmz8bqbxfgkiyc60slm";
+       version = "1.6.1";
+       sha256 = "0yd7vx90wnjid99gq4vypxfmgqjrfa4ws2s7x77qx1rl1pxh0ncc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24269,8 +24274,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudhsm";
-       version = "1.6.0";
-       sha256 = "0pqvliw77nk9c4ac3zhmbszlxcd13ibrg28rj31yi1lllcw708p4";
+       version = "1.6.1";
+       sha256 = "06d0w3h3njblqjh95crf6gslkdcjx29g1h66f6z0gqikrwiy5prl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24286,8 +24291,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudhsmv2";
-       version = "1.6.0";
-       sha256 = "0zpnzf062cmxaxvi36xfjk6q055xg6nh6ikralmnl6winnjjam6s";
+       version = "1.6.1";
+       sha256 = "1j7ns5daj4rsvc1f956wfy7hpshb7z8vffa6vyzvrfmw8kfspvfa";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24303,8 +24308,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudsearch";
-       version = "1.6.0";
-       sha256 = "1533ii94iyi7z0nsnldxmf0hgkpx01xz10mgsd7z9n5cfrak85yx";
+       version = "1.6.1";
+       sha256 = "1p3srndrj4kgwwz9021mfh91za8qgrhf4hzk02nva6awdp114j6h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24320,8 +24325,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudsearch-domains";
-       version = "1.6.0";
-       sha256 = "19vwiyrcc591cpaflv0ji8fg7xjx1vba1f4kv0gh9mgfk9px7w14";
+       version = "1.6.1";
+       sha256 = "07xihv4bay6vz9pw89y3issfmi7iicryzi1wh22sxw3qb1jnq6q4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24337,8 +24342,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudtrail";
-       version = "1.6.0";
-       sha256 = "090w96krmwd2h4l6s4hz04rfwwi4y6bifzfsw0hn7r62dbwrvnfr";
+       version = "1.6.1";
+       sha256 = "1abx1xp75fdnavxwxi2ak5gk3b2vc2380znv3mi28s72l8aprk2m";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24354,8 +24359,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudwatch";
-       version = "1.6.0";
-       sha256 = "0lgfvca9gsqd38ly7f6dvvivi34qbpbqqng3hb89cbdjcjri5j15";
+       version = "1.6.1";
+       sha256 = "0v9j950qlfhy4dz77kq0329877050lpwaqi5h5s00kxiqwbvcmjf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24371,8 +24376,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudwatch-events";
-       version = "1.6.0";
-       sha256 = "0kgcsbsxi6z84avfzmx9z1111h49yliyyiqww3b39if4dx1mxyqk";
+       version = "1.6.1";
+       sha256 = "0ikn7z6fp648qi5ch664wnym6v1mcq37khxw7fwfnfqnir13sclb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24388,8 +24393,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cloudwatch-logs";
-       version = "1.6.0";
-       sha256 = "0zgfhz5646s6hkzw2n686rwhz5g9l1mrakagq3ngaagvy15fgr40";
+       version = "1.6.1";
+       sha256 = "146llix63givxlry48la1m5c28q9008bmpfmbj3x5mwrgjxxxpv1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24405,8 +24410,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-codebuild";
-       version = "1.6.0";
-       sha256 = "1ax0am75zy8xddzkn36sc9dpda1j5d28pbrdddhlr98airbl7gzx";
+       version = "1.6.1";
+       sha256 = "1c56766yz3dj1zq643503mphdw7kb82kfn63ldi6f7i6dc5yyx8k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24422,8 +24427,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-codecommit";
-       version = "1.6.0";
-       sha256 = "0594d3frpxc2d9sw265dhph8q1gvzsx9n6l1vcgwglxbpwq2cbwa";
+       version = "1.6.1";
+       sha256 = "0cq73pd93la058sgpcvhmrqc5r4splh5x9w571fxrilmc08a6fdn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24439,8 +24444,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-codedeploy";
-       version = "1.6.0";
-       sha256 = "1py2sfnwgavqhb8z2ngxx6b3gh0f9r3l84r5w5dcn6l5p2dbj59k";
+       version = "1.6.1";
+       sha256 = "1yjlbcbzfp72621sj458b2lv35rf8fcr88ljb47mrp7ihb86zzrx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24456,8 +24461,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-codepipeline";
-       version = "1.6.0";
-       sha256 = "0hy05s7wl410319z2svppg6aqc00zsix6m4l8gniqq1i34iflvn4";
+       version = "1.6.1";
+       sha256 = "1jb5775n31yhbqahv8jiiz5i1qzvq5rls3f1jf35wnwjvzzzz85z";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24473,8 +24478,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-codestar";
-       version = "1.6.0";
-       sha256 = "1c0w48y9azn8im82lh8j98vh6zbkam7vkplf2wxw8azqc5a6746l";
+       version = "1.6.1";
+       sha256 = "1vf0cg2kby5bnb6j575c0mcldbqj577mkmfzsbwy3hnfv92rhipy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24490,8 +24495,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cognito-identity";
-       version = "1.6.0";
-       sha256 = "1mdnr66nq86ndh80ymgvh12crdqyqv212qkb2r2hzz6k23i31b1s";
+       version = "1.6.1";
+       sha256 = "0142kq7hfdala7bl9l1d5s0rkf50zz89qm6m0f3mpfp4iiaphxxr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24507,8 +24512,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cognito-idp";
-       version = "1.6.0";
-       sha256 = "1zqzx0l3g7kb22synk0hsy48zz320j906y7jnj7r7fqhrb48k2d9";
+       version = "1.6.1";
+       sha256 = "06zhx3rajqf0llc5xvyp9nd77pb0h5mfv8f83kbp9696yi7c6qnz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24524,8 +24529,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cognito-sync";
-       version = "1.6.0";
-       sha256 = "0dgldjisp3sxq3csnn7ffsh0bn1r2w32vlyz6dj6f7pkw7c11pjz";
+       version = "1.6.1";
+       sha256 = "0qyvj02y7c0lvw5axr50l22pvmzj8l6c8ivdlf6myrdmfb8gjj70";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24541,8 +24546,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-comprehend";
-       version = "1.6.0";
-       sha256 = "0gr4mz6n0cq8xiaq07bk9k8bg6di9kv17fnbgfvlvcrdjvvipw1g";
+       version = "1.6.1";
+       sha256 = "12ipg2qnyaw1y5azgq2b7vw9n17l877xiw7fa6xaxsmf3xfk6w1d";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24558,8 +24563,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-config";
-       version = "1.6.0";
-       sha256 = "1kf98bz7jikj3xh2k49lpf04i0p9y046x4mb93xwrywy0jy3xc2w";
+       version = "1.6.1";
+       sha256 = "0d38y292gwq7ix0gvrkznc7007jlr8an2wzrxn0rjca0f24vldpz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24575,8 +24580,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-connect";
-       version = "1.6.0";
-       sha256 = "0jkds33hh039mgqns9zssjk9fzg35fnmkdm32zf180088kxbkdi9";
+       version = "1.6.1";
+       sha256 = "0l0p3n1pa3jnq5srcc93w37bxqiv4i912y5a4vx6ghzgpv8y4k42";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24598,8 +24603,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-core";
-       version = "1.6.0";
-       sha256 = "1j9x17zhyxrg4ds5pdxfjdb4z7hpzn42cydx34j25h5d9avwbqdg";
+       version = "1.6.1";
+       sha256 = "0hx250dja1l4n4y5115w0qngzlqj8f6p861sdaykh0yjm4nzb621";
        libraryHaskellDepends = [
          aeson attoparsec base bifunctors bytestring case-insensitive
          conduit conduit-extra cryptonite deepseq exceptions hashable
@@ -24622,8 +24627,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cost-explorer";
-       version = "1.6.0";
-       sha256 = "0fvdz1x6wizad8xcssh3lyzyp9pk92k5hlajrwfp2gp2lb8a8p32";
+       version = "1.6.1";
+       sha256 = "1hrcg3ibs1wwbbpdhpkzplqg48jd0ckhpyv1c1lfkhdgbxzb9gwc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24639,8 +24644,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-cur";
-       version = "1.6.0";
-       sha256 = "0mzxyacabf6q237jdxlj5nwvbv9k7xn6kyk531p15839250j3m3y";
+       version = "1.6.1";
+       sha256 = "0rigrrr7malmj6l2zxxda3bvljpakjnh6k986nm7fl5dg7qyvq62";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24656,8 +24661,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-datapipeline";
-       version = "1.6.0";
-       sha256 = "1r9sbzc6z5md9z1yzb3sr41ih3kfjg5dx9z38p61rvv413bjs88v";
+       version = "1.6.1";
+       sha256 = "08mig2diwr6ryyvin3w9rj3w37lm02v85c3bhnz5k7649s255xvb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24673,8 +24678,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-devicefarm";
-       version = "1.6.0";
-       sha256 = "0sf56mzd6kbyhq927wys8ayp9mvr0rpisjs6rs3s8m62n2w786yq";
+       version = "1.6.1";
+       sha256 = "1v43k8vyal9zi91yad3518jlr5qj975l27hbdri7q7w9iax5pn5y";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24690,8 +24695,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-directconnect";
-       version = "1.6.0";
-       sha256 = "0ciqadw5kam6b51irx45kc3g03qh50pdp8d321v83b2yhv7bk1cd";
+       version = "1.6.1";
+       sha256 = "0nq4zax36am2y5p51g4giqln26nbjyykgprqa6z1hl8ls659jqfw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24707,8 +24712,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-discovery";
-       version = "1.6.0";
-       sha256 = "04wj34lm7amxjcg9bm77nsfjgx76n9b4scj8pspc44qldgbpmikv";
+       version = "1.6.1";
+       sha256 = "17a47yhqy7hs9vhj0iwby14irh732j2d00sm7zh3xpvipwrckaq2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24724,8 +24729,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-dms";
-       version = "1.6.0";
-       sha256 = "1ww0l7xi9ia6danlm4mdh5d3y38jv56g4dd1jw588hkn5bf1jpx7";
+       version = "1.6.1";
+       sha256 = "11zdwcl0cz7fpamc7a9smg6qjnkc3a77l1g8k9q5y0yprhbzcycc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24741,8 +24746,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ds";
-       version = "1.6.0";
-       sha256 = "12fkcqhckmrkmh5prfrjdc6dq5cm0g3wsm9pz60jzrmf724k7yh6";
+       version = "1.6.1";
+       sha256 = "1zy8sr49ls5qzijr7phsbc5xmxsc4hqc1dwrzkm5cmc69abhfj7v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24758,8 +24763,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-dynamodb";
-       version = "1.6.0";
-       sha256 = "0gwsgyjvqzyhzkfn73854s6hr55va6l6a3m074ajz5wqz3j4xx9k";
+       version = "1.6.1";
+       sha256 = "10hxbkq15l2hcyjjspi3kf05m3294ywk51vw82j3c1pii1n4h804";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24775,8 +24780,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-dynamodb-dax";
-       version = "1.6.0";
-       sha256 = "0z9k6vvicmsjbd09sf5jym87zsc8dwbzpkiinwx4gz4zwfwqkrw3";
+       version = "1.6.1";
+       sha256 = "0s8n60lkjigbgn8a63cpwq1pj6nvjyhrx5w6bx1nqfls8y5ik857";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24792,8 +24797,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-dynamodb-streams";
-       version = "1.6.0";
-       sha256 = "0zz590xdpjabic8m7if6a4pcfrdafqr66wcxnwn2758fyzfk5y5k";
+       version = "1.6.1";
+       sha256 = "0nfr9sqiirxb9a8j6ix2l1mhyrwx061q4h7lr57ar7arj9lanbgy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24809,8 +24814,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ec2";
-       version = "1.6.0";
-       sha256 = "1k2mm5ypkwr07iwc76b15q823sv5rq5jxfz4r7qckal8w72c4892";
+       version = "1.6.1";
+       sha256 = "1lxdi92x60bd7r41abcz20dabs07qxy0ipmxgryqmrxkrqj9jjmh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24826,8 +24831,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ecr";
-       version = "1.6.0";
-       sha256 = "0l44xxify9k87imc09wvn56xnmvgf3n2ydvs4s3iph6lnka8l222";
+       version = "1.6.1";
+       sha256 = "0n3kdkmmwasqg7gkhmszkhvzsfp90mjlhfwx02v12gpn83b5s39d";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24843,8 +24848,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ecs";
-       version = "1.6.0";
-       sha256 = "0gyy9iglv8744p3h249j0mdd5n4f756ci2048frpb51mx2mkb59h";
+       version = "1.6.1";
+       sha256 = "1fhv3b62anx1zlspmdi5l44qgsk4xd7s0p2vxczvzf82mcli21sm";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24860,8 +24865,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-efs";
-       version = "1.6.0";
-       sha256 = "1fxg86zzjyv5lvlmn2f2iph5rwcfmwk740i2jjs3xmh68hlmd116";
+       version = "1.6.1";
+       sha256 = "135isr1khawf2ap3ba791aynlm74hay7jddhrf6vsfscn1z087kl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24877,8 +24882,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elasticache";
-       version = "1.6.0";
-       sha256 = "0s9rfrv128dsir497g9r6pp68xgfl34rshlcfgyk95fqw8n4m9z4";
+       version = "1.6.1";
+       sha256 = "0q7bzr3xcc78163md6i1gzxhbqrb98x8clisp9vynhvw5vh8lbad";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24894,8 +24899,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elasticbeanstalk";
-       version = "1.6.0";
-       sha256 = "0siqna1fcxwpbdvjicyv09l2wcfddda8c47nmdd70ns7cdbhdp61";
+       version = "1.6.1";
+       sha256 = "0sczhwhckhgyf3dbmp0hnaikqkym94kyndyqzpsl9m8p0blgkm1a";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24911,8 +24916,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elasticsearch";
-       version = "1.6.0";
-       sha256 = "10rhbwic050ncinjklllygg3jnv169smkwdcr2xmxv3g3jpgqa9l";
+       version = "1.6.1";
+       sha256 = "04ya0s83gakhbkpgimmgjax09caww8y7cx1nm1j02fminifivycy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24928,8 +24933,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elastictranscoder";
-       version = "1.6.0";
-       sha256 = "02n1yg4vks5sc8mqm5prz2clgf7pyn9yf98mx1h1mk89gv4sf4mb";
+       version = "1.6.1";
+       sha256 = "0nzvjzb91jka0wiimvjh5hlfqw92bsn16m1dvgnk315p7pgfg06z";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24945,8 +24950,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elb";
-       version = "1.6.0";
-       sha256 = "0kbyz4czsfjfgfw49wqrkkk2ma4k333kd5xfcz9gf9ick8079jar";
+       version = "1.6.1";
+       sha256 = "178hpbk35vbc6lrmpjkdc57d8961bbv8nqn1bajxm65q3nwfqpjv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24962,8 +24967,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-elbv2";
-       version = "1.6.0";
-       sha256 = "1j92qr8sfsidax606pyzv1zn08c2rcij0853c5raq4xn55gd6lra";
+       version = "1.6.1";
+       sha256 = "0ybv5wwfn0cnd3qwk7r343jihq6m0h15f6xr2a2yxjs8wizr0h37";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24979,8 +24984,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-emr";
-       version = "1.6.0";
-       sha256 = "0kvpv655dk619lq2ahkljxdhscj22lyci3z9ybpsvzk1xrc79879";
+       version = "1.6.1";
+       sha256 = "1g475pn0sxf4widb2xqpsm4awvqj6glpdj3ryyqhp7i38wvcg4sb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -24996,8 +25001,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-fms";
-       version = "1.6.0";
-       sha256 = "1cgp5vd1ifrh16pziyi1yv6bwipd5njy9d0mvfq0l53zwv0f4cs0";
+       version = "1.6.1";
+       sha256 = "1nrgjqmm77difl82ixaif56waw89mx0m8p0hgblzfq47gi28n6mh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25013,8 +25018,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-gamelift";
-       version = "1.6.0";
-       sha256 = "1z2zfzpag9v8mb6wa479hfkhdqf84x5jyc6pl302vl688d5bvkgb";
+       version = "1.6.1";
+       sha256 = "1cp3w3xi5icwh9ss168hsz49rq0d4wqns8kbx1aar7lchm85bj69";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25030,8 +25035,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-glacier";
-       version = "1.6.0";
-       sha256 = "04zrw3rqly4qm5hkwddr0p73xyjx5vm5xsvcnmabmpxx3x6l61sk";
+       version = "1.6.1";
+       sha256 = "11q8ajyx8nf9lc7wr7vwpg1gvp4wwb83zyv17cdpr60g7mrwymav";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25047,8 +25052,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-glue";
-       version = "1.6.0";
-       sha256 = "1g01ql9kvlwy6qm2gblz7bdf8b76ifpwgk5c9r1xp5jcsi3dmwpj";
+       version = "1.6.1";
+       sha256 = "17z8bcgahxw7apanj9nm9srj47dxwshmkwm828jm49wpkcvk0akb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25064,8 +25069,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-greengrass";
-       version = "1.6.0";
-       sha256 = "0kzd5s8mz3sfdf20g64nkl7mnpbzr019y61gxr5z2jwc1yh9nj5k";
+       version = "1.6.1";
+       sha256 = "03l0igrx2za6004rxbhd047ww1csbffviii3q16csvxnj41kz8pg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25081,8 +25086,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-guardduty";
-       version = "1.6.0";
-       sha256 = "058mxwk8gjgnl8yjvxwgy033qknfnw1ib8qkz0649167x8wfibzx";
+       version = "1.6.1";
+       sha256 = "0v1xpykjgz3nqj5yil4f2m5rs4xcfflk9a4xckix0yp5gkbbd01x";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25098,8 +25103,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-health";
-       version = "1.6.0";
-       sha256 = "0yx6bdhkgf6fgrc8i6abbpwnxlzqdnmw6pqan02gz679jf7b25n2";
+       version = "1.6.1";
+       sha256 = "0xs6fsl7z8qq40vi79nasfxwlxxm2ljpzh4c1b77v6q1mkak7dd2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25115,8 +25120,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-iam";
-       version = "1.6.0";
-       sha256 = "0pchhnrfvry7v6gwn1rxx0hyd8xd2hdlzfcm1d02hgawg4x82dd3";
+       version = "1.6.1";
+       sha256 = "1mz7qdk19n3cs9iy5sf7h4g7a7sfimbb4lrk992f9ykmmyj0cl8x";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25153,8 +25158,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-importexport";
-       version = "1.6.0";
-       sha256 = "016dgp4s2669jd3db1f8ngynhjrkr77l981rmf3wc92fsyyg4l89";
+       version = "1.6.1";
+       sha256 = "13nxssqayp917g2ynmvva2mk0dqd724f891jx4z0cnlxrja2856f";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25170,8 +25175,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-inspector";
-       version = "1.6.0";
-       sha256 = "0gp1rkrm2xv13cdn3shr5824g942yn2dwqvw3ln78fz671g01vxw";
+       version = "1.6.1";
+       sha256 = "0x5nxw2nb64ahjw4hy8lp7w32mqsq0zj0skj116pa4yf6p1v7d38";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25187,8 +25192,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-iot";
-       version = "1.6.0";
-       sha256 = "1l16ib9p6qzs4079a02hg852f0g79yv75k0ky3jj3l3vr5lj22qq";
+       version = "1.6.1";
+       sha256 = "10y65lma8m8cyz753r3pkaayqfyhxs8103y63v0dardrvci3jxji";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25204,8 +25209,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-iot-analytics";
-       version = "1.6.0";
-       sha256 = "1n88xzq5m3g3xcxx6s5rkrp8cbxi8sbj2rri3c3ibyv5gcr75lhs";
+       version = "1.6.1";
+       sha256 = "1xwfz3s4sgd611bx045gjhnpjmh3c38i1hgvis968bx8ka47xbsk";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25221,8 +25226,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-iot-dataplane";
-       version = "1.6.0";
-       sha256 = "0hl7m3s6ck01k5h00q414sc3yzpr41gamj7pfr7wr97cwv03prmf";
+       version = "1.6.1";
+       sha256 = "0j0bqaw6nc3nhq6wbm1jlm7kdkf497xnba4yxk3q27gbx5zzjhvv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25238,8 +25243,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-iot-jobs-dataplane";
-       version = "1.6.0";
-       sha256 = "08glywxj06bzybvdrbgy1laazfsqzxbsa8558ds76jph99nkmvvl";
+       version = "1.6.1";
+       sha256 = "00s8hdhp6g5h1lilvpqawgy3l89hdn31374cgq8wcx09nmjj8san";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25255,8 +25260,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis";
-       version = "1.6.0";
-       sha256 = "0f1gwa92pcdrb1ijxinhq8vjspgigk5kcr37hnj6mzs6kv9437jl";
+       version = "1.6.1";
+       sha256 = "0rsipc64ia9hwcvw5bn0055bisq04kihnhzb4wzfvbgrzgrxrqsz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25272,8 +25277,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis-analytics";
-       version = "1.6.0";
-       sha256 = "1vl5yski9fqpwv9f4aq3i2zqkjgkmn3lnpm3phg59x3fb4w59yvy";
+       version = "1.6.1";
+       sha256 = "16bf0sqyrgphhbqi8lxzmgb818m7yajmdcwmzgz3w99zzad9qn5g";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25289,8 +25294,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis-firehose";
-       version = "1.6.0";
-       sha256 = "172ljz8ihcb8cx800xy0wpicdsqip52ng2ig1clk3h48r36la18j";
+       version = "1.6.1";
+       sha256 = "0bc7d36zs3b0nx2889hpnk45fcrn3dknn2c6gg19wk1k7zz0p8g4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25306,8 +25311,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis-video";
-       version = "1.6.0";
-       sha256 = "0d9nbkm76ccy1bglny6xqa6bd41g7vjl80jnxrv5aqr87h0b814n";
+       version = "1.6.1";
+       sha256 = "12v9jqr1x6gkxh7g3rzif24gv6wwh8f5rmf1bz6rbfai4sf75ixv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25323,8 +25328,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis-video-archived-media";
-       version = "1.6.0";
-       sha256 = "01g269c2gnfkz5rzznl8l5m7fwb9zxxlxrbj2j7084nv1imj30vh";
+       version = "1.6.1";
+       sha256 = "1qbms2rfgap2pn1ygd6ihjpqqpafhkpwn15z3vl5bslhk6f7bm0j";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25340,8 +25345,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kinesis-video-media";
-       version = "1.6.0";
-       sha256 = "1glmwl51d945ba8dxwyi9nflavx824nl7arm6f3j90z8cii7na41";
+       version = "1.6.1";
+       sha256 = "1a5mq474g5iy8lp6sfgbr2b20swz6snhbi982zjyhkybvn6lgqh4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25357,8 +25362,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-kms";
-       version = "1.6.0";
-       sha256 = "16cfkvl7n7drx0z6fr5j88lyg9rkg3bfly2zb2jx155lhcsk79bs";
+       version = "1.6.1";
+       sha256 = "11b2jnfdj2z3v65cbwwryr35n9pjf488mrs90j2prx6ijb1kwcvd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25374,8 +25379,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-lambda";
-       version = "1.6.0";
-       sha256 = "01lvr775kakpbr2p7126nw3022dyp5p41s98asf9fwkmda4jd5k4";
+       version = "1.6.1";
+       sha256 = "18yc1wk7dbyxjdqkdyp1hi45i8vc95imaj0xfr29yq5dbkqmyawp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25391,8 +25396,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-lex-models";
-       version = "1.6.0";
-       sha256 = "0hknmvp0cnvg2y8i7fdwmx76pwbw6v6pvmyw7w93qakfq7615l8z";
+       version = "1.6.1";
+       sha256 = "1dhxanxg748jqz8g6ixdca4jv2hgynpf6w6qdg293429zrj1f2ss";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25408,8 +25413,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-lex-runtime";
-       version = "1.6.0";
-       sha256 = "0bixnlb1gz2wn0ggcpxfglxj9w38lnm2xfahs07brsy099qivlka";
+       version = "1.6.1";
+       sha256 = "1ampjwlaqczcs2x1sqagn5cm2c6y9bgr2wp62idlnsv5ic5nqky2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25425,8 +25430,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-lightsail";
-       version = "1.6.0";
-       sha256 = "1sxcc0hbvngxxjg0mg2rb3wkdax8123qbak8k3z0h3igzxm4q6vl";
+       version = "1.6.1";
+       sha256 = "07lknfz41jc4vjd76ql32h6bbbhpb82wafj7w3ifwnxaz2h8wrvw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25442,8 +25447,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-marketplace-analytics";
-       version = "1.6.0";
-       sha256 = "0sjxrnzcrzgd75kd841r9hadpg9zqmxx4g5hqqqm2yy1x6q0sv2d";
+       version = "1.6.1";
+       sha256 = "0z8kl946ssilj4vb50a5pv21kyfd0fp1bs3l3xyxjc1ynypq5xbg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25459,8 +25464,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-marketplace-entitlement";
-       version = "1.6.0";
-       sha256 = "0npwzr4yc4ns989mi9jgdhxj7g2brhn9wyislp0r7wx6arsmhk17";
+       version = "1.6.1";
+       sha256 = "03ik11dkksw1m2jrd12cpgd3gjczcwcbmwl1xg6p9y2f5fyq056i";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25476,8 +25481,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-marketplace-metering";
-       version = "1.6.0";
-       sha256 = "0xszzcmaz2d5h8cbdqaar1f3am35h31k5w1wihy6fyf5r95f2bb7";
+       version = "1.6.1";
+       sha256 = "0dshx2nyhsywmx491cvzfcr3dz847q7mjdj9zwli9f6kzgldp2wj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25493,8 +25498,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mechanicalturk";
-       version = "1.6.0";
-       sha256 = "07z9w2i8dmq420wgsip0zm1x6asz446284skcywqbfmv7n73gmkv";
+       version = "1.6.1";
+       sha256 = "0cap5qkwwzgrkjxqg1rjmx8w9wa74p6h436w427yw53dxi6saxlh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25510,8 +25515,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mediaconvert";
-       version = "1.6.0";
-       sha256 = "04zml2hp8plb4ylspqi3y169daqc1fwx4lfb20wkifl54prbr7mk";
+       version = "1.6.1";
+       sha256 = "0zzdx21mjma5z04a4s6gf5h6wy8vv72a5m71h2hmr5f65asfi8k5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25527,8 +25532,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-medialive";
-       version = "1.6.0";
-       sha256 = "1plhi1nadmj5kl89z9l5wly524zy013p89xy9cbkda4l0axi1i0l";
+       version = "1.6.1";
+       sha256 = "0b85pp51xpgl0v83wkym807gfp91qmgq8y0m85ygpyks69gnbs14";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25544,8 +25549,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mediapackage";
-       version = "1.6.0";
-       sha256 = "0faji7pk4i26kp2f3xsn3jglgdr1dxjljwzap3ydy0xg30fjk9ai";
+       version = "1.6.1";
+       sha256 = "08ayhbd8w7aqgw4y89akax24gx90n56d4p8cfm4favga10j46zj3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25561,8 +25566,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mediastore";
-       version = "1.6.0";
-       sha256 = "19rvrh4l015pv869i8sj4fs9ygcnc0ziyx7vf1mpamkjqkx760xp";
+       version = "1.6.1";
+       sha256 = "1cdns9s4mrnpnziq7b431iwx3swcl55c20a0migf2kzbyzcv9a7z";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25578,8 +25583,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mediastore-dataplane";
-       version = "1.6.0";
-       sha256 = "1ldk1j4xs3m5igzzpsyrqqximdqm64wfa5dlhbiljjc4yhwkrh0m";
+       version = "1.6.1";
+       sha256 = "1sd73z4pqa1x25x3qp64yxz5wljhavbvlrj07g4222bz01p8rb3q";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25595,8 +25600,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-migrationhub";
-       version = "1.6.0";
-       sha256 = "0iwbk5iwg28a7jlz1bhspdky0ipf5gixp3dwavac0wl9nbffyw8i";
+       version = "1.6.1";
+       sha256 = "0gwmlr861g6f85wb46708wjvxixq2id6lxdk6vdkv838z1h60gl7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25612,8 +25617,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ml";
-       version = "1.6.0";
-       sha256 = "1zkdal599npbylic9sgvzpfss15ri9k61pp9xwhafbm7f5xjvhcx";
+       version = "1.6.1";
+       sha256 = "0wmqlx4k17m3zywkj39z3fv6jbmhhz9w7ax1g465gzizcswc1ixq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25629,8 +25634,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mobile";
-       version = "1.6.0";
-       sha256 = "0p9gyrn2hpk128g3nh7dmi2jm01lf6ydv407rwyj4zpkyl1k9vhh";
+       version = "1.6.1";
+       sha256 = "1jx32by2xlkfb57c2d981i4ibsy8a59sgr2xfgsngfjdmpg844lp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25646,8 +25651,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-mq";
-       version = "1.6.0";
-       sha256 = "1m4mybwfhhs4nm6q6h8zkay9ivdifncsa1j6zfqcl54zc763swp9";
+       version = "1.6.1";
+       sha256 = "0whgnswjvx8a8wj01wd65b41yza3110g1zqwmvs6srjx6zjs3ha0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25663,8 +25668,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-opsworks";
-       version = "1.6.0";
-       sha256 = "066rfarz6cbdcal6l5qn11pi3n2byzxbb6013crmdicfkcrp4hws";
+       version = "1.6.1";
+       sha256 = "15magxqrylyxdkqa5xyihq00nfh4pv0g7wl6gp9smvg5svq1c5qa";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25680,8 +25685,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-opsworks-cm";
-       version = "1.6.0";
-       sha256 = "1x28lxvjz6sdkzlghw94h97yw8ywypz0v3d0rqazvzvhbxsrp7jg";
+       version = "1.6.1";
+       sha256 = "0mya7swx8x4p7wz17p62jn8ixw4xi72w6691r4ay5gphl81pi1ai";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25697,8 +25702,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-organizations";
-       version = "1.6.0";
-       sha256 = "1v7sdjd58aka7yp9y7d8ap5izf4hpm4wf7qa10fy4h4ay180y61r";
+       version = "1.6.1";
+       sha256 = "1yx7hfnl6nnhdx3ryjvg8vkyj053m2a6zds61vrnl2kc0n890bcs";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25714,8 +25719,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-pinpoint";
-       version = "1.6.0";
-       sha256 = "01dh2vwigisbx4jrpaq76l1463v7qy1wx6brd1d7sdczpnmcvy5h";
+       version = "1.6.1";
+       sha256 = "11zw2xkn39c75frqpm67x2qpb63xzl25633ny0b3rbdpak8w4f5a";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25731,8 +25736,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-polly";
-       version = "1.6.0";
-       sha256 = "1l4ajm7ca0s4xwzs9brdhbjz1mhw8smmy7wzddhrxjr84vxdqgkp";
+       version = "1.6.1";
+       sha256 = "1vyckykw1in9qlz824k4zmn9xixlf2ak479vfcb1p872ri2pb25h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25748,8 +25753,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-pricing";
-       version = "1.6.0";
-       sha256 = "10xlxld5b45yvy30midf0i1drr3zimpl0fwvvz4z946mfpbdn7na";
+       version = "1.6.1";
+       sha256 = "1mh04sali41d8zchd8ibcvzv9vnfdlcwzz6p3n72wmczqaz2ps8v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25765,8 +25770,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-rds";
-       version = "1.6.0";
-       sha256 = "0kf23dgv1zirxp35g1czlfnzq9ccwr1a67yvqnl3nfvpacy634y7";
+       version = "1.6.1";
+       sha256 = "08cl73fczrf94k5z92w2cpf3ngrcqhb6xiygbh3vv4wh6l541lpw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25782,8 +25787,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-redshift";
-       version = "1.6.0";
-       sha256 = "0adkj055f7kb1klxnvl9n1p8l504jgcpdw1ibgc2xm786rlvjsj2";
+       version = "1.6.1";
+       sha256 = "051281bgr65xsyac3vy1zbjs3v3avw4f2wk1743cqdjnarg8bsl7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25799,8 +25804,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-rekognition";
-       version = "1.6.0";
-       sha256 = "1a1jynpr7bkzd5rs5p4781wrvnf1wivlzfjmn53jfdp545q44bj6";
+       version = "1.6.1";
+       sha256 = "1y7qm7k9y9w0lm09qpzi5p1jld3i78x0pr446q37li15m3pgn81y";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25816,8 +25821,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-resourcegroups";
-       version = "1.6.0";
-       sha256 = "0q0j22992r11i47ix7njjkhx5rrd0b1wkc2q4wrhs62dgsb86zzj";
+       version = "1.6.1";
+       sha256 = "0nyac5hyv97b0djhn7z7rjdi2gf7na66grccl040770mxkb77q0k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25833,8 +25838,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-resourcegroupstagging";
-       version = "1.6.0";
-       sha256 = "1306254b8rb8q7631jyccbayj3a7iv2lvg33l23qw184g5k3gs6j";
+       version = "1.6.1";
+       sha256 = "0dsghbhwxjq46bghgl1gnwdxcqbc5v3q9pfhap0asj9qjxq8hrwp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25850,8 +25855,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-route53";
-       version = "1.6.0";
-       sha256 = "05v3m8fcpxbhhsh8nm0m35c357cx94z6xn36c75jhjy4v4xpgvv8";
+       version = "1.6.1";
+       sha256 = "0wspqzdz0i07b4jg80w9vbzmd12pzv7l5dpjnhk2mvbdbgd44r3w";
        libraryHaskellDepends = [ amazonka-core base text ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25867,8 +25872,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-route53-autonaming";
-       version = "1.6.0";
-       sha256 = "15j5l2x0x5qb24r7mcj3qdlzfggk542libcq3sw6d5iwr2vm7l5a";
+       version = "1.6.1";
+       sha256 = "09cch0ks8gxb08cjilmcyj3phpvikl31bi1ygz73xddaba6ppr9c";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25884,8 +25889,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-route53-domains";
-       version = "1.6.0";
-       sha256 = "1sm5w4r6kb8fl3wikp9n2hda3bxwr83397s729s3dispbwpzwnzp";
+       version = "1.6.1";
+       sha256 = "1s529dzwf92scjwbvyvrcfcs9ma1yvcgrwla79fj74f38mscsarc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25901,8 +25906,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-s3";
-       version = "1.6.0";
-       sha256 = "0irz8vyklapjy3w3qasidpvq4hk2qwkmhrnrd23sf4yzs2xqx8gc";
+       version = "1.6.1";
+       sha256 = "0a3y2q3xmb249giwjvsgva26ky315bnsii6s9gqvhd5g9q9b1827";
        libraryHaskellDepends = [ amazonka-core base lens text ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25939,8 +25944,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sagemaker";
-       version = "1.6.0";
-       sha256 = "1cgfwc7f9krln680zn42nwmhxwfz945dd8mafpwk0qwdqi1i12cx";
+       version = "1.6.1";
+       sha256 = "0sxs1gan775gny8gq00vw30jqrn9rv46rqq0jglna7z1fadp0fyz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25956,8 +25961,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sagemaker-runtime";
-       version = "1.6.0";
-       sha256 = "1l4v7qw378qq8h4h61nag6al3dck2pz398kfahmk41y208fn04mc";
+       version = "1.6.1";
+       sha256 = "0iilc70i0lz3qrdklw2909v4yzwvcsazn0px5570p7qsp67imb79";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25973,8 +25978,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sdb";
-       version = "1.6.0";
-       sha256 = "1zdxbwzkvj1fi9lay3zyqxbb2vzviwc6h2gfmjh7invg68hqphmr";
+       version = "1.6.1";
+       sha256 = "0yiap66yqkr453dgkn9q74xmc1g6afqj6ghnhp795lf35igmid2k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -25990,8 +25995,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-secretsmanager";
-       version = "1.6.0";
-       sha256 = "12imwyz239iv6yw658iyvxc7rfkmc1jgyc722ykz6kagkjr03110";
+       version = "1.6.1";
+       sha256 = "0zr3nlzxjb1nhwipk67nirh0pnjfchirn677mr12109xx7qcfa8l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26007,8 +26012,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-serverlessrepo";
-       version = "1.6.0";
-       sha256 = "1vlbn7jislc33wp2kacc54z95xhgk7ap9zapwzjij847hwn4ib88";
+       version = "1.6.1";
+       sha256 = "13sc48wbsrkypvqxlrldbglziv1biaqqj4df49x1jlplypbl53vp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26024,8 +26029,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-servicecatalog";
-       version = "1.6.0";
-       sha256 = "0r7j8v5mn048hqlp2h2mv7lyld457k22i95mdriyqhrb3cxxzy0i";
+       version = "1.6.1";
+       sha256 = "0jzm0xsn52qh9ihjn73wgnkil6gnrxvp97x7d881nzyvg5yavmml";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26041,8 +26046,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ses";
-       version = "1.6.0";
-       sha256 = "00mxab03vhmmb0d5xfa00x4c0qz0vkfnfap1lz8kzbps73kk53bp";
+       version = "1.6.1";
+       sha256 = "1s7c2jvg8y2vi7lzy3wgp352xnf0bfnc36l6g771279l61nmfk05";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26058,8 +26063,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-shield";
-       version = "1.6.0";
-       sha256 = "1x7b8wvv50iqvdxydpnmvncz3yx3026vq4f9rg1pnqas5ddsi0xr";
+       version = "1.6.1";
+       sha256 = "06bml09gg5pq8vsj145jwbqpmbx6n07yx0ds030yhmahxyl732hv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26075,8 +26080,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sms";
-       version = "1.6.0";
-       sha256 = "0zx4rpq5k18lqv5x55hf30s30g8x6yrsbv55h13n1mw856fkakgw";
+       version = "1.6.1";
+       sha256 = "11ab1f09l7p33mvbgrxl5j09z6higs37a5v9d07hh94lvr5l7syn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26092,8 +26097,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-snowball";
-       version = "1.6.0";
-       sha256 = "09gf0balrk7hzmg9ynasz4jf3jywj57lyp0wiggixfh5jbz30jsk";
+       version = "1.6.1";
+       sha256 = "1lvw8ym5xlxjiyflg1xr2cqcvf4flamwpd6pgqzbnwzdkyv1zha8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26109,8 +26114,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sns";
-       version = "1.6.0";
-       sha256 = "0wvmwca48rqls0szbvdvfr796iq8i3kp5l8l7dcysn8k0d4ba5hx";
+       version = "1.6.1";
+       sha256 = "0dg72gkb3graaq2bh0dbpd4mx8scmx6zrk9q77rwzpxd80yab66v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26126,8 +26131,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sqs";
-       version = "1.6.0";
-       sha256 = "0cq4j16f12z4lzsi9clh3pzcad7zfpcg5z8af2ap0w18gmq3hf3l";
+       version = "1.6.1";
+       sha256 = "1m2313w5z0mdzhqdx7qkd6k9k5bxbb4dalg37v9jmbsidza7s1pf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26143,8 +26148,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-ssm";
-       version = "1.6.0";
-       sha256 = "06kh3id8l24rq5wvjakfz1w62fr3cyzl2axdsp7hcb8afr4q488i";
+       version = "1.6.1";
+       sha256 = "1bxh7hqsm2jfxza4dr2cami39sc2wzkck4yzqp7pk3ds3xggybcm";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26160,8 +26165,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-stepfunctions";
-       version = "1.6.0";
-       sha256 = "1gxci7x94jc7187wv8mrd8g8vy0ns9r6b8l0w5jxgmr8bma8xb4r";
+       version = "1.6.1";
+       sha256 = "04yhgmbj129kaj6dxl6ck9clai551j5kmfnwck6nbfpq3mi7dbv0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26177,8 +26182,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-storagegateway";
-       version = "1.6.0";
-       sha256 = "0gdl905h9d5g20npx4ihc0fajgcqn5vjnqiss7mhfcgha1k3f1kg";
+       version = "1.6.1";
+       sha256 = "0gvyh6qjfcr3ndv17rcjxnsa13dghwdd420cnc8xsafq54qbah8h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26194,8 +26199,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-sts";
-       version = "1.6.0";
-       sha256 = "04lsm5wpzrykkq94fcrkj4cwc5slzcwmzqvsgw9mnyprsrknn19n";
+       version = "1.6.1";
+       sha256 = "1fcg3hg88427h9fgqpxwa599gh19i1lc2wfjlf554cg92jxn88zf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26211,8 +26216,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-support";
-       version = "1.6.0";
-       sha256 = "1sakd3r8g9r0ms7mrnvzh679i26pamh1ranpp7a1fa2zjzpllhvz";
+       version = "1.6.1";
+       sha256 = "1fhrqwbv84np82nddkxxp7bkws2830yb3pz52nwng800vpahsbas";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26228,8 +26233,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-swf";
-       version = "1.6.0";
-       sha256 = "145aali4pqzra7r34g6ykbizwrqnapj6mwadqr31ylf1m5xl63hz";
+       version = "1.6.1";
+       sha256 = "0jklp28c7kanlkl6mciam2gj6b6w25fs7aidf83ndr3z9xqfd73v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26248,8 +26253,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-test";
-       version = "1.6.0";
-       sha256 = "0a6xfp97hijhqmhj9nv4aqax08ry8y809jpjhyj2819p01wvga26";
+       version = "1.6.1";
+       sha256 = "1a92y92gwn4143z73fwrm03vi5wdxgl2i1myvb8qsk9c621xa7km";
        libraryHaskellDepends = [
          aeson amazonka-core base bifunctors bytestring case-insensitive
          conduit conduit-extra groom http-client http-types process
@@ -26266,8 +26271,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-transcribe";
-       version = "1.6.0";
-       sha256 = "02z344bwkn3g37fh190qsk6aa3ihrnkkv8zmxlgpw3sjzcxpx8p5";
+       version = "1.6.1";
+       sha256 = "1pkbmir7fqci7nlz9ca5rbd0yx75kj9pa665k928ll1m34fng5iv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26283,8 +26288,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-translate";
-       version = "1.6.0";
-       sha256 = "08k0ilxfrbqbfhlwi1im515bc017njm6faj4wznqbqxdvdw6lv3v";
+       version = "1.6.1";
+       sha256 = "09rk9223yyi2anzxifcmm4qmxpd1ljg1q644jv1accrpgn1k1h89";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26300,8 +26305,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-waf";
-       version = "1.6.0";
-       sha256 = "105rpfal53qyjavknpkpiglndr8cgcsybl8iaw7zpn725g2rw2w8";
+       version = "1.6.1";
+       sha256 = "0sjian917kc7vzq34sbd4cifx5qwf9lkkrvhbsl1z2aqv0bzbhj5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26317,8 +26322,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-waf-regional";
-       version = "1.6.0";
-       sha256 = "01aff4b6gp0zbhmjfnmdciw6a20a6jb5bs94i59cppzm216vfmji";
+       version = "1.6.1";
+       sha256 = "1g57aa4zba01iq14njm529k9743lyx7n4v1ilg11qyycbihh2vgp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26334,8 +26339,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-workdocs";
-       version = "1.6.0";
-       sha256 = "0sjb55fj2hq0pndw5b81d3bgw5619px5mv8inni63cbhvlahyf3m";
+       version = "1.6.1";
+       sha256 = "1gahyswzfimm5kcsp6npnla48cmrihw6pxy66bql6zy60apy26h1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26351,8 +26356,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-workmail";
-       version = "1.6.0";
-       sha256 = "0ac7awszhihl73zqrpg8srw58dwxjral7rpwamx30m5s65qhnkq5";
+       version = "1.6.1";
+       sha256 = "1vb4p6l4jv6f5xrd7plxxqjpj9vsdqh83sdywr41p3ggynwg2vip";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26368,8 +26373,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-workspaces";
-       version = "1.6.0";
-       sha256 = "110wr4ah80lz9yjxsx3yng2mx5r2z361rs4k6sr4v6jiij6k9ksn";
+       version = "1.6.1";
+       sha256 = "1grpbka4baw81qz4sds52ag4nj4ial6kbjii11yrkyc6i9dki2g5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -26385,8 +26390,8 @@ self: {
      }:
      mkDerivation {
        pname = "amazonka-xray";
-       version = "1.6.0";
-       sha256 = "1w4ham3rzkyz8ns5xrnclyw0gvaswm6kyxjrfz6h19hs6rsh0lcg";
+       version = "1.6.1";
+       sha256 = "03fhlls2n1cih0z4fcs1bcsr1d97qnllcknq90dqmmr9fmmg131l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -27856,6 +27861,8 @@ self: {
        pname = "api-builder";
        version = "0.15.0.0";
        sha256 = "1bjqg484z9si3pyfwpvcakm0y71gca80bh6j1njc0qnjf2ddd3ad";
+       revision = "1";
+       editedCabalFile = "0sw6vdnzlqyv9n7gdhy1ibh7vrzfflc1cy2q558a4i23gn74k74s";
        libraryHaskellDepends = [
          aeson base bifunctors bytestring HTTP http-client http-client-tls
          http-types text tls transformers
@@ -28722,8 +28729,8 @@ self: {
      }:
      mkDerivation {
        pname = "arbor-monad-metric";
-       version = "1.1.0";
-       sha256 = "05924jv5m1jsx0l3px8m1a4hakadqvva5808lvfp6rpzssdjrwmb";
+       version = "1.1.1";
+       sha256 = "1ypacqjd7hf5s7r4w432v9yndxxb40w9kwhxhlqzc4wim798vj3h";
        libraryHaskellDepends = [
          base containers generic-lens lens mtl resourcet stm text
          transformers
@@ -28792,6 +28799,8 @@ self: {
        pname = "arbtt";
        version = "0.10.1";
        sha256 = "09n6v32yz612ag4acjd4jwnmv0ljarxi3b7v2mp4bj18c2gx1wbq";
+       revision = "1";
+       editedCabalFile = "0wnm1izr12yjh1kc7bhhj87sd7jwbh7qf6qpij0z84mlk58nq0mb";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -29575,6 +29584,8 @@ self: {
        pname = "ascii";
        version = "0.0.5.2";
        sha256 = "1kbf6iml4nvkzf78xqvxy67469vznd05ig8aprq7zx5vr9njliby";
+       revision = "1";
+       editedCabalFile = "0d04wmgahgbgi6y6p8887xs6bxcjdwjhkrrprahylw5y9b95fxi8";
        libraryHaskellDepends = [
          base blaze-builder bytestring case-insensitive hashable semigroups
          text
@@ -29807,6 +29818,44 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "asif_4_0_0" = callPackage
+    ({ mkDerivation, attoparsec, base, binary, bytestring, conduit
+     , conduit-combinators, conduit-extra, containers, cpu, directory
+     , either, exceptions, foldl, generic-lens, hedgehog, hspec, hw-bits
+     , hw-hspec-hedgehog, hw-ip, iproute, lens, network, old-locale
+     , optparse-applicative, profunctors, resourcet, temporary-resourcet
+     , text, thyme, transformers, vector
+     }:
+     mkDerivation {
+       pname = "asif";
+       version = "4.0.0";
+       sha256 = "1xf5x7jm01w30l2cwb3m9sv5qimnc2n6a6dhrykq81ajcf5ix0p6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base binary bytestring conduit conduit-combinators
+         conduit-extra containers cpu either exceptions foldl generic-lens
+         hw-bits hw-ip iproute lens network old-locale profunctors resourcet
+         temporary-resourcet text thyme transformers vector
+       ];
+       executableHaskellDepends = [
+         attoparsec base binary bytestring conduit conduit-combinators
+         conduit-extra containers cpu directory either exceptions foldl
+         generic-lens hw-bits hw-ip iproute lens network old-locale
+         optparse-applicative profunctors resourcet temporary-resourcet text
+         thyme transformers vector
+       ];
+       testHaskellDepends = [
+         attoparsec base binary bytestring conduit conduit-combinators
+         conduit-extra containers cpu either exceptions foldl generic-lens
+         hedgehog hspec hw-bits hw-hspec-hedgehog hw-ip iproute lens network
+         old-locale profunctors resourcet temporary-resourcet text thyme
+         transformers vector
+       ];
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "asil" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , data-binary-ieee754, directory, filepath, haskell-src-exts, mtl
@@ -30603,23 +30652,23 @@ self: {
 
   "atom-conduit" = callPackage
     ({ mkDerivation, base, blaze-builder, conduit, data-default
-     , filepath, lens-simple, mono-traversable, parsers
-     , quickcheck-instances, resourcet, safe-exceptions, tasty
+     , filepath, lens-simple, parsers, pretty-simple
+     , quickcheck-instances, refined, resourcet, safe-exceptions, tasty
      , tasty-golden, tasty-hunit, tasty-quickcheck, text, time, timerep
      , uri-bytestring, xml-conduit, xml-types
      }:
      mkDerivation {
        pname = "atom-conduit";
-       version = "0.5.0.3";
-       sha256 = "0hj9r6akwaxdhlaqnapfpa00d61vk4b7di67vn1h5jlscvzgrrc2";
+       version = "0.6.0.0";
+       sha256 = "1j88cnilxmybjc981a4z4hgsdq94gv386hc1zlbrm8zklq2rpgx2";
        libraryHaskellDepends = [
-         base blaze-builder conduit lens-simple mono-traversable parsers
+         base blaze-builder conduit lens-simple parsers refined
          safe-exceptions text time timerep uri-bytestring xml-conduit
          xml-types
        ];
        testHaskellDepends = [
          base blaze-builder conduit data-default filepath lens-simple
-         mono-traversable parsers quickcheck-instances resourcet
+         parsers pretty-simple quickcheck-instances refined resourcet
          safe-exceptions tasty tasty-golden tasty-hunit tasty-quickcheck
          text time uri-bytestring xml-conduit xml-types
        ];
@@ -30816,8 +30865,8 @@ self: {
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "3.2.4.5";
-       sha256 = "0nn43pzj57sjhsngidp47pacdi40sngdmfh47iwppgnn1anc7crp";
+       version = "3.2.4.6";
+       sha256 = "0cfh04fpn912cmz0pi71avhx6y6i3l5bzrcwwzxkas134yc22wng";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -31457,6 +31506,8 @@ self: {
        pname = "authenticate";
        version = "1.3.4";
        sha256 = "1f1gjggfq114h3nrlzg2svm0j5ghp6n9zlgb3fnq2pgpzpdndm9z";
+       revision = "1";
+       editedCabalFile = "0ipbmf633c0kmcwwb7d51ac8s4220nfyk5xghhq66mpgna77j2c2";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder bytestring case-insensitive
          conduit containers http-conduit http-types network-uri resourcet
@@ -31568,6 +31619,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "auto-update_0_1_4_1" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "auto-update";
+       version = "0.1.4.1";
+       sha256 = "1jfgxwicd0r31dcbcd83sj99v1w9mbg873xp7v7z21gmxhalpzrm";
+       libraryHaskellDepends = [ base ];
+       description = "Efficiently run periodic, on-demand actions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "autoexporter" = callPackage
     ({ mkDerivation, base, Cabal, directory, filepath }:
      mkDerivation {
@@ -31917,8 +31980,8 @@ self: {
      }:
      mkDerivation {
        pname = "avro";
-       version = "0.4.1.2";
-       sha256 = "07akc3ngfwsmm0fsvli8f4msc99yrx87mqlm96b896as4rwyziv2";
+       version = "0.4.2.0";
+       sha256 = "1hail3k27xsb4p4964429wv9s3hwvziwmn02hhy928mh5my1r8lp";
        libraryHaskellDepends = [
          aeson array base base16-bytestring bifunctors binary bytestring
          containers data-binary-ieee754 fail hashable mtl pure-zlib
@@ -33789,27 +33852,13 @@ self: {
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
        pname = "basement";
-       version = "0.0.8";
-       sha256 = "194jw567di4q2758943q9rrwkbf9gl261my7qc21i9xhyabipx67";
-       revision = "1";
-       editedCabalFile = "005w4d6bkx6xq1whgwna4rqmxc36vgjbvb8q35sh1z2s76l89ajy";
-       libraryHaskellDepends = [ base ghc-prim ];
-       description = "Foundation scrap box of array & string";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "basement_0_0_9" = callPackage
-    ({ mkDerivation, base, ghc-prim }:
-     mkDerivation {
-       pname = "basement";
-       version = "0.0.9";
-       sha256 = "0fx9zw20id9lmv5likmsy1xs9cy286zd284wcd721xwvl74bg040";
+       version = "0.0.10";
+       sha256 = "01gmqkwd8cizlsn24wb1ld358k40kbaw84579y0h5nl7f41iniz3";
        revision = "1";
-       editedCabalFile = "0f5syvnp7g108adssmsqz7v8pgaasknvbi88g1lnm1ygn65kwpv1";
+       editedCabalFile = "1n5wv093zx760rrd5vs5symj61fnr8pcbpzs0sbpl6n82qys3c8i";
        libraryHaskellDepends = [ base ghc-prim ];
        description = "Foundation scrap box of array & string";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "basen-bytestring" = callPackage
@@ -34368,10 +34417,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-core";
-       version = "0.7.2.2";
-       sha256 = "160ga0w0i1l4nbag6jg8wn3a3csid93x6fdd4j4pah2zk7dswc8j";
-       revision = "1";
-       editedCabalFile = "1fvds5arsm0h81fw4rf5fsg5sa9jfqn350amhhc247f0hhjy3csf";
+       version = "0.7.2.3";
+       sha256 = "1pas3hjj8x4yzwwqazydnvv59rjmddy70g6iip6fgm7sg4114rkh";
        libraryHaskellDepends = [
          aeson base bytestring containers dlist free ghc-prim hashable
          microlens mtl network-uri tagged text time vector-sized
@@ -34392,10 +34439,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-migrate";
-       version = "0.3.2.1";
-       sha256 = "0wwkyg87wf3qcj8c5j3ammdkmjacgzw35pgxbq75bvfkx8k5j69d";
-       revision = "1";
-       editedCabalFile = "1ghg6n0dj63i0am7wh0cg95hwyf29gnkm0llrw3wb5pj8f7937gv";
+       version = "0.3.2.2";
+       sha256 = "15vkxj93c3zhraj94v8n9sgkjlm6idawbzxqqgcx05yhy0dyh0c9";
        libraryHaskellDepends = [
          aeson base beam-core bytestring containers deepseq dependent-map
          dependent-sum free ghc-prim hashable haskell-src-exts mtl parallel
@@ -34432,8 +34477,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-postgres";
-       version = "0.3.2.2";
-       sha256 = "1wa2ajwrgha5wbbynh68jbqbivfvmr7habnn89yhhfh6gmxqj5yk";
+       version = "0.3.2.3";
+       sha256 = "17aplr20rclah3wk7b978zgn55fp61s8x7a5qf449nvfs97cs00b";
        libraryHaskellDepends = [
          aeson base beam-core beam-migrate bytestring case-insensitive
          conduit free hashable haskell-src-exts lifted-base monad-control
@@ -34452,8 +34497,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-sqlite";
-       version = "0.3.2.3";
-       sha256 = "01pz1i4k9pqya569kp7xic0g1lilwrjf0yvijq7bwgpara20y7ji";
+       version = "0.3.2.4";
+       sha256 = "14s1s7i9l95nbz4nis3fc4zh8cln6vj2p4y5bk235l088i4z6qfj";
        libraryHaskellDepends = [
          aeson attoparsec base beam-core beam-migrate bytestring dlist free
          hashable mtl network-uri scientific sqlite-simple text time unix
@@ -37703,16 +37748,14 @@ self: {
      }:
      mkDerivation {
        pname = "bitvec";
-       version = "0.1.1.0";
-       sha256 = "12wvilgmibkvbd1hb15ixyidkqdyadx8i8jwm9n50q9qjp4phmm5";
-       revision = "1";
-       editedCabalFile = "02y6rvmgvxhmw0mqq9b20hs75x42kkgsp2c3kppwmp4pspjipmjm";
+       version = "0.2.0.0";
+       sha256 = "024g2177c7br7spqqk6y61b3b7svyl9ghikx0rfydm0sl2dd9rii";
        libraryHaskellDepends = [ base primitive vector ];
        testHaskellDepends = [
          base HUnit primitive QuickCheck quickcheck-classes test-framework
          test-framework-hunit test-framework-quickcheck2 vector
        ];
-       description = "Unboxed vectors of bits / dense IntSets";
+       description = "Unboxed bit vectors";
        license = stdenv.lib.licenses.publicDomain;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -39860,8 +39903,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick-filetree";
-       version = "0.1.0.2";
-       sha256 = "0ppc2y407db7kx8hzrjbx3qhd4w39d5p4zra3bxsc99ny9aqbrmk";
+       version = "0.1.0.3";
+       sha256 = "06jifqnr3n6mzfh6f7rik6bw467ff26aydlqvm6g57msa19mxjnj";
        libraryHaskellDepends = [
          base brick comonad containers directory directory-tree filepath
          free vector vty
@@ -40163,6 +40206,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "brok" = callPackage
+    ({ mkDerivation, ansi-terminal, attoparsec, base, classy-prelude
+     , directory, file-embed, http-client, http-conduit, tasty
+     , tasty-discover, tasty-expected-failure, tasty-hunit, text, time
+     }:
+     mkDerivation {
+       pname = "brok";
+       version = "0.1.6.0";
+       sha256 = "15gvlkhb349328w9fngs2k87qpp2r6g9ilxv64df8mzx5y9nrx0k";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal attoparsec base classy-prelude directory file-embed
+         http-client http-conduit text time
+       ];
+       executableHaskellDepends = [ base classy-prelude file-embed ];
+       testHaskellDepends = [
+         base classy-prelude file-embed tasty tasty-discover
+         tasty-expected-failure tasty-hunit
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "Finds broken links in text files";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "broker-haskell" = callPackage
     ({ mkDerivation, base, broker, bytestring, hspec }:
      mkDerivation {
@@ -41581,6 +41650,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "bytestring-to-vector" = callPackage
+    ({ mkDerivation, base, byteorder, bytestring, QuickCheck, vector }:
+     mkDerivation {
+       pname = "bytestring-to-vector";
+       version = "0.3.0.1";
+       sha256 = "0ji836sl72wlhy6yay11kl86w0nrcdc1lafbi94bx9c8rpf5pyyc";
+       libraryHaskellDepends = [ base bytestring vector ];
+       testHaskellDepends = [
+         base byteorder bytestring QuickCheck vector
+       ];
+       description = "Convert between ByteString and Vector.Storable without copying";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "bytestring-tree-builder" = callPackage
     ({ mkDerivation, base, base-prelude, bytestring, criterion, deepseq
      , QuickCheck, quickcheck-instances, semigroups, tasty, tasty-hunit
@@ -42029,6 +42112,7 @@ self: {
        ];
        description = "Bundling C/C++ projects in Cabal package made easy";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "cabal-cargs" = callPackage
@@ -42098,8 +42182,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-debian";
-       version = "4.38.4";
-       sha256 = "15jgn6wx0w96l2s7xmyp0n9m5sdqfls8kpmfgvykrdpw3mj3bnr0";
+       version = "4.38.5";
+       sha256 = "0pqislgc38q57jf252aha7x71pbdw5nxinx3gcm4s7311m25fw1f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -42576,6 +42660,26 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "cabal-rpm_0_13" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, directory, filepath
+     , http-client, http-client-tls, http-conduit, process, simple-cmd
+     , time, unix
+     }:
+     mkDerivation {
+       pname = "cabal-rpm";
+       version = "0.13";
+       sha256 = "063y8f18zsw7slvmjr0w6r2ssvn3p1jb0cs81sihp4fw8371bd50";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring Cabal directory filepath http-client
+         http-client-tls http-conduit process simple-cmd time unix
+       ];
+       description = "RPM packaging tool for Haskell Cabal-based packages";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cabal-scripts" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -43276,8 +43380,8 @@ self: {
      }:
      mkDerivation {
        pname = "cairo-core";
-       version = "1.16.4";
-       sha256 = "1f4ps76mxgnk2y0gqk28kgs6qrslwccbisl6wrk2qwxd13cfwk86";
+       version = "1.16.6";
+       sha256 = "1rm3n46qlilnwxddnlz6gd3gglp7068h2fi90wm6xm6s9gpff2p8";
        setupHaskellDepends = [
          base bytestring Cabal directory filepath haskell-src-exts
          http-client http-client-tls hxt hxt-xpath
@@ -43285,8 +43389,9 @@ self: {
        libraryHaskellDepends = [ base monad-extras transformers ];
        libraryPkgconfigDepends = [ cairo ];
        libraryToolDepends = [ c2hs ];
-       description = "Cairo Haskell binding (core functions)";
+       description = "Cairo Haskell binding (partial)";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) cairo;};
 
   "cake" = callPackage
@@ -45018,8 +45123,8 @@ self: {
      }:
      mkDerivation {
        pname = "cayley-client";
-       version = "0.4.8";
-       sha256 = "09hrq1k8s8w7rawyn78hjagirs3yrkp79nn7p5w1l8amp27k5cdi";
+       version = "0.4.9";
+       sha256 = "05i032xqi4hplchf9dklxqi0fh5byw2ibyf1ba2wnxql2j7y177z";
        libraryHaskellDepends = [
          aeson attoparsec base binary bytestring exceptions http-client
          http-conduit lens lens-aeson mtl text transformers
@@ -45960,6 +46065,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "char-qq" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "char-qq";
+       version = "0.1.1.1";
+       sha256 = "01mbavg50g64bmlvjr499hzv1975imri2zwj91964g58xghfba9q";
+       libraryHaskellDepends = [ base template-haskell ];
+       description = "Quasiquoters for characters and codepoints";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "charade" = callPackage
     ({ mkDerivation, base, configurator, containers, filepath, heist
      , lens, mtl, QuickCheck, random, snap, snap-core, snap-extras
@@ -46370,8 +46486,8 @@ self: {
      }:
      mkDerivation {
        pname = "chell";
-       version = "0.4.0.2";
-       sha256 = "10ingy9qnbmc8cqh4i9pskcw43l0mzk8f3d76b3qz3fig5ary3j9";
+       version = "0.5";
+       sha256 = "1i845isfbk0yq852am9bqmxfpfkpnlha8nfidffsv4gw2p8gg6fg";
        libraryHaskellDepends = [
          ansi-terminal base bytestring options patience random
          template-haskell text transformers
@@ -46385,8 +46501,8 @@ self: {
     ({ mkDerivation, base, chell, HUnit }:
      mkDerivation {
        pname = "chell-hunit";
-       version = "0.2.1";
-       sha256 = "006l2j98gmgjrapyp00vz93hxlx9gwkdnxwh5nx293zp7vm27x00";
+       version = "0.3";
+       sha256 = "18p9rhs81b43jb95dqg650h3cajsw45w7cgsavkm18h0qhrz41kb";
        libraryHaskellDepends = [ base chell HUnit ];
        description = "HUnit support for the Chell testing library";
        license = stdenv.lib.licenses.mit;
@@ -46397,8 +46513,8 @@ self: {
     ({ mkDerivation, base, chell, QuickCheck, random }:
      mkDerivation {
        pname = "chell-quickcheck";
-       version = "0.2.5.1";
-       sha256 = "1iicsys9igx7m7n4l2b8djardmjy2ah5ibzp7kzs758h460fq53a";
+       version = "0.2.5.2";
+       sha256 = "0n8c57n88r2bx0bh8nabsz07m42rh23ahs3hgyzf8gr76l08zq03";
        libraryHaskellDepends = [ base chell QuickCheck random ];
        description = "QuickCheck support for the Chell testing library";
        license = stdenv.lib.licenses.mit;
@@ -47199,6 +47315,7 @@ self: {
        executableHaskellDepends = [ array base bytestring parseargs ];
        description = "Implementation of CipherSaber2 RC4 cryptography";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "circ" = callPackage
@@ -48362,12 +48479,15 @@ self: {
      }) {};
 
   "cli-setup" = callPackage
-    ({ mkDerivation, base, bytestring, directory, process }:
+    ({ mkDerivation, base, bytestring, directory, file-embed, process
+     }:
      mkDerivation {
        pname = "cli-setup";
-       version = "0.2.0.5";
-       sha256 = "08lqx6nvwbjydjrb2gnjis1bfq9xcrhqvilzmbkbzq17lxcaax2c";
-       libraryHaskellDepends = [ base bytestring directory process ];
+       version = "0.2.0.6";
+       sha256 = "10w251gvlyqvzg2ffs2mdfkd6lla8v0zkaibpnbaz5iy1cajr65z";
+       libraryHaskellDepends = [
+         base bytestring directory file-embed process
+       ];
        description = "Helper setup scripts for packaging command-line tools";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -50524,18 +50644,19 @@ self: {
      }) {};
 
   "comfort-array" = callPackage
-    ({ mkDerivation, base, deepseq, guarded-allocation, non-empty
-     , primitive, QuickCheck, storable-record, transformers, utility-ht
+    ({ mkDerivation, base, containers, deepseq, guarded-allocation
+     , non-empty, primitive, QuickCheck, storable-record, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "comfort-array";
-       version = "0.3";
-       sha256 = "0vwp11vcw6h9shrafqgpiqbdm2ni9ad18z2r644hspxcrs24r4d6";
+       version = "0.3.1";
+       sha256 = "1lbfx35v8qzi2wacqg47v6hw4kx2rxs5xml8mwb1fyqqxbzbv7n7";
        libraryHaskellDepends = [
-         base deepseq guarded-allocation non-empty primitive QuickCheck
-         storable-record transformers utility-ht
+         base containers deepseq guarded-allocation non-empty primitive
+         QuickCheck storable-record transformers utility-ht
        ];
-       testHaskellDepends = [ base QuickCheck ];
+       testHaskellDepends = [ base containers QuickCheck ];
        description = "Arrays where the index type is a function of the shape type";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -50881,15 +51002,12 @@ self: {
      }) {};
 
   "compactable" = callPackage
-    ({ mkDerivation, base, bifunctors, containers, transformers, vector
-     }:
+    ({ mkDerivation, base, containers, transformers, vector }:
      mkDerivation {
        pname = "compactable";
-       version = "0.1.2.2";
-       sha256 = "0jmc2b7mvqjwv54k7xnqydqf2qa7drr0l0f2vzd1a9pasbw5kx8x";
-       libraryHaskellDepends = [
-         base bifunctors containers transformers vector
-       ];
+       version = "0.1.2.3";
+       sha256 = "1qw47ps6bnp6xwaksqq7plry0ivsm18f0vf79yi1n755w6p49648";
+       libraryHaskellDepends = [ base containers transformers vector ];
        description = "A typeclass for structures which can be catMaybed, filtered, and partitioned";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -52378,8 +52496,8 @@ self: {
        pname = "conduit-extra";
        version = "1.2.3.2";
        sha256 = "1xihl8zrd6jyfnlmsrqshwwqc8176whs5im4jvxvk9038wl6cnqx";
-       revision = "1";
-       editedCabalFile = "10smqv7xrjj5vhpdfj9ha89dm8nw04cv09avg58c6y8yybbz5i01";
+       revision = "2";
+       editedCabalFile = "0x77alx5h3v07ra0l0l5b36rx5qb3vg2f5k711yvin1q40vwvhqg";
        libraryHaskellDepends = [
          async attoparsec base blaze-builder bytestring conduit directory
          exceptions filepath monad-control network primitive process
@@ -52428,6 +52546,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "conduit-extra_1_3_1" = callPackage
+    ({ mkDerivation, async, attoparsec, base, bytestring
+     , bytestring-builder, conduit, directory, exceptions, filepath
+     , gauge, hspec, network, primitive, process, QuickCheck, resourcet
+     , stm, streaming-commons, text, transformers, transformers-base
+     , typed-process, unliftio-core
+     }:
+     mkDerivation {
+       pname = "conduit-extra";
+       version = "1.3.1";
+       sha256 = "0zfdrpdc86kw2c3gzq5lxdy1qmy069qy7xcjjbnf4359igjyq69v";
+       libraryHaskellDepends = [
+         async attoparsec base bytestring conduit directory filepath network
+         primitive process resourcet stm streaming-commons text transformers
+         typed-process unliftio-core
+       ];
+       testHaskellDepends = [
+         async attoparsec base bytestring bytestring-builder conduit
+         directory exceptions filepath hspec process QuickCheck resourcet
+         stm streaming-commons text transformers transformers-base
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring bytestring-builder conduit gauge transformers
+       ];
+       description = "Batteries included conduit: adapters for common libraries";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "conduit-find" = callPackage
     ({ mkDerivation, attoparsec, base, conduit, conduit-combinators
      , conduit-extra, directory, doctest, either, exceptions, filepath
@@ -53422,14 +53569,13 @@ self: {
      }:
      mkDerivation {
        pname = "constraints-extras";
-       version = "0.2.3.1";
-       sha256 = "1invhgwvhsab9jj776aaa180xsk1cbnwygxfappasbis42l26ab9";
+       version = "0.2.3.3";
+       sha256 = "1399jah0lh127z56wv0h2c94s26fanw58x0x8imakjlj2dlg8km1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base constraints template-haskell ];
-       executableHaskellDepends = [
-         aeson base constraints markdown-unlit
-       ];
+       executableHaskellDepends = [ aeson base constraints ];
+       executableToolDepends = [ markdown-unlit ];
        description = "Utility package for constraints";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -53506,8 +53652,8 @@ self: {
      }:
      mkDerivation {
        pname = "consumers";
-       version = "2.1.2.0";
-       sha256 = "1fgnb4q5bbad6rmknclvwv79s593r054x7iafrhj3czrfzg94dfx";
+       version = "2.2.0.0";
+       sha256 = "0r7v5gfi7lw19h9chhn80fwnlgph5ak6n1vf153gq6l7bm10hacl";
        libraryHaskellDepends = [
          base containers exceptions extra hpqtypes lifted-base
          lifted-threads log-base monad-control monad-time mtl stm time
@@ -53733,14 +53879,12 @@ self: {
      }) {};
 
   "contiguous-fft" = callPackage
-    ({ mkDerivation, base, contiguous, prim-instances, primitive }:
+    ({ mkDerivation, base, contiguous, primitive, semirings }:
      mkDerivation {
        pname = "contiguous-fft";
-       version = "0.1.0.1";
-       sha256 = "07nv27gj4shh22azf1nl1yr7xvzy4hzmp66yjsgxywj50850i6dq";
-       libraryHaskellDepends = [
-         base contiguous prim-instances primitive
-       ];
+       version = "0.2.2.0";
+       sha256 = "0nnxr6yihb82c7in0hsb7k9jkjccx5040pvxj5gb06ahzz5ls5yn";
+       libraryHaskellDepends = [ base contiguous primitive semirings ];
        description = "dft of contiguous memory structures";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -53926,8 +54070,8 @@ self: {
      }:
      mkDerivation {
        pname = "control-iso";
-       version = "0.1.0.1";
-       sha256 = "1346x6fmdizqi7mxv13z97yjb58psga9mk0rqc6144fgk5i9y9v1";
+       version = "0.1.0.2";
+       sha256 = "0n4n2m4r06wcmsa98gvfrlfn92sbjg2arkdb4y00p9yfxq7a963d";
        libraryHaskellDepends = [
          base bytestring newtype-generics profunctors text
        ];
@@ -54280,6 +54424,8 @@ self: {
        pname = "convertible-text";
        version = "0.4.0.2";
        sha256 = "1wqpl9dms1rsd24d00f18l9sm601nm6kr7h4ig8y70jdzy8w73fz";
+       revision = "1";
+       editedCabalFile = "0fa9n4dpz5qli4svcgahl2amhbz42xmsynfhzm2sb4fv23l7w73g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -54842,14 +54988,16 @@ self: {
      }) {};
 
   "country-codes" = callPackage
-    ({ mkDerivation, aeson, base, HTF, HUnit, shakespeare, text }:
+    ({ mkDerivation, aeson, base, deepseq, HTF, HUnit, shakespeare
+     , text
+     }:
      mkDerivation {
        pname = "country-codes";
-       version = "0.1.3";
-       sha256 = "1dfihvawiqmd5v75781m75lyp8h73wqmd138wh9zakfbpz746a06";
+       version = "0.1.4";
+       sha256 = "1ilzknxzppldprxvq6lxc1cn2l91iipfh62i9brjqa0jaicidzz3";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ aeson base shakespeare text ];
+       libraryHaskellDepends = [ aeson base deepseq shakespeare text ];
        testHaskellDepends = [ aeson base HTF HUnit ];
        description = "ISO 3166 country codes and i18n names";
        license = stdenv.lib.licenses.bsd3;
@@ -54950,6 +55098,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "cpkg" = callPackage
+    ({ mkDerivation, base, binary, bytestring, bzlib
+     , composition-prelude, containers, cpphs, dhall, directory
+     , filemanip, filepath, hashable, hspec, hspec-megaparsec
+     , http-client, http-client-tls, lzma, megaparsec, microlens, mtl
+     , network-uri, optparse-applicative, prettyprinter, process
+     , recursion, tar, temporary, text, zip-archive, zlib
+     }:
+     mkDerivation {
+       pname = "cpkg";
+       version = "0.1.0.0";
+       sha256 = "1hfnmxcwlm6jnh0q1mm0bzi2xirqanz9ygijp3rzngv51m69n35q";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring bzlib composition-prelude containers dhall
+         directory filemanip filepath hashable http-client http-client-tls
+         lzma megaparsec microlens mtl network-uri prettyprinter process
+         recursion tar temporary text zip-archive zlib
+       ];
+       libraryToolDepends = [ cpphs ];
+       executableHaskellDepends = [
+         base directory optparse-applicative text
+       ];
+       testHaskellDepends = [ base hspec hspec-megaparsec megaparsec ];
+       description = "Build tool for C";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "cplex-hs" = callPackage
     ({ mkDerivation, base, containers, cplex, hashable, mtl, primitive
      , transformers, unordered-containers, vector
@@ -55828,8 +56005,8 @@ self: {
      }:
      mkDerivation {
        pname = "criterion";
-       version = "1.5.3.0";
-       sha256 = "17q4dj9sl9dp2gyknycc9kdp5y6ak4vlmbfqp1w0fwfy76aaj0mn";
+       version = "1.5.4.0";
+       sha256 = "1yh4dk4hi6d3jz2jmn8jc9i6jqb02w63g2rq3aagi16qfyanlqbg";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -57285,6 +57462,8 @@ self: {
        pname = "cubicbezier";
        version = "0.6.0.5";
        sha256 = "0n17nr20skrds3b9gzy0v86jgnqz8zbds796n9cl0z6rh9bq5jf5";
+       revision = "1";
+       editedCabalFile = "0dii4z0cl1ylvay1n5z90d6rbvnk9k30q81i6izhgxbgdawwhh33";
        libraryHaskellDepends = [
          base containers fast-math integration matrices microlens
          microlens-mtl microlens-th mtl vector vector-space
@@ -57610,8 +57789,8 @@ self: {
      }:
      mkDerivation {
        pname = "curry-base";
-       version = "1.0.0";
-       sha256 = "05j0wv2aj5979j5gq13bn317pd9gis96qjp6inqa08aafc4l3yya";
+       version = "1.1.0";
+       sha256 = "1hxac2mx7irphcyhljwivx1w6j6li0s7gl54yb50na6qpna7arqg";
        libraryHaskellDepends = [
          base containers directory extra filepath mtl parsec pretty time
          transformers
@@ -57629,8 +57808,8 @@ self: {
      }:
      mkDerivation {
        pname = "curry-frontend";
-       version = "1.0.1";
-       sha256 = "07khd3b5v8ys1vidz3gkxj91k4pwq5hn5zlyr99n0n1rm24vhbf8";
+       version = "1.0.3";
+       sha256 = "0dqmmvn6iziyzdmig1gbcpdpbpg1hjp57pldzcv03fm2bjhq0a4q";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -57680,18 +57859,19 @@ self: {
      }) {};
 
   "cursedcsv" = callPackage
-    ({ mkDerivation, base, bytestring, csv-enumerator, enumerator
-     , hscurses, mtl, natural-sort, parseargs, regex-tdfa, safe, unix
+    ({ mkDerivation, base, bytestring, conduit, conduit-extra
+     , csv-conduit, hscurses, mtl, natural-sort, parseargs, primitive
+     , regex-tdfa, safe, unix, vector
      }:
      mkDerivation {
        pname = "cursedcsv";
-       version = "0.1.2";
-       sha256 = "045lfyhpwjgcdw3wxj2klq0aqn555f5r4w95fr06vsq5pxspnnvc";
+       version = "0.1.3";
+       sha256 = "0q6pqsv0bvn30nlkfk285hilixa9hi3n3gzil0gb4gic2zpb55dk";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base bytestring csv-enumerator enumerator hscurses mtl natural-sort
-         parseargs regex-tdfa safe unix
+         base bytestring conduit conduit-extra csv-conduit hscurses mtl
+         natural-sort parseargs primitive regex-tdfa safe unix vector
        ];
        description = "Terminal tool for viewing tabular data";
        license = stdenv.lib.licenses.bsd3;
@@ -58155,6 +58335,8 @@ self: {
        pname = "darcs";
        version = "2.14.2";
        sha256 = "0zm2486gyhiga1amclbg92cd09bvki6vgh0ll75hv5kl72j61lb5";
+       revision = "1";
+       editedCabalFile = "0xl7j5cm704pbl2ms0dkydh7jvrz0ym76d725ifpg4h902m1zkhg";
        configureFlags = [ "-fforce-char8-encoding" "-flibrary" ];
        isLibrary = true;
        isExecutable = true;
@@ -60242,6 +60424,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "datadog-tracing" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers
+     , generic-random, hspec-golden-aeson, prettyprinter, QuickCheck
+     , quickcheck-text, refined, servant, servant-client, servant-server
+     , tasty, tasty-discover, tasty-hspec, text, time, warp
+     }:
+     mkDerivation {
+       pname = "datadog-tracing";
+       version = "1.0.1";
+       sha256 = "007cpk9iwxy4jgj6fr1yih090dxgbj9d6jpc6kf3610p0a14nlzq";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers generic-random prettyprinter
+         QuickCheck quickcheck-text refined servant servant-client text time
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers servant servant-server text warp
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers hspec-golden-aeson servant tasty
+         tasty-hspec text
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "Datadog tracing client and mock agent";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dataenc" = callPackage
     ({ mkDerivation, array, base, containers }:
      mkDerivation {
@@ -60375,20 +60586,33 @@ self: {
 
   "datasets" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, cassava
-     , data-default-class, directory, file-embed, filepath, hashable
-     , microlens, req, stringsearch, text, time, vector
+     , criterion, deepseq, directory, exceptions, file-embed, filepath
+     , hashable, hspec, JuicyPixels, microlens, mtl, mwc-random
+     , parallel, QuickCheck, req, safe-exceptions, streaming
+     , streaming-attoparsec, streaming-bytestring, streaming-cassava
+     , streaming-commons, stringsearch, tar, text, time, transformers
+     , vector, zlib
      }:
      mkDerivation {
        pname = "datasets";
-       version = "0.3.0";
-       sha256 = "0k09vixdg9dz8a5nc41h1wk8gzs0kn2rfjcki7akpqpvjg766k0i";
+       version = "0.4.0";
+       sha256 = "1ifml0gh7qm9anknqq0r0fi561b8zn7g1sqdlv718pyhx9y7g6i0";
        libraryHaskellDepends = [
-         aeson attoparsec base bytestring cassava data-default-class
-         directory file-embed filepath hashable microlens req stringsearch
-         text time vector
+         aeson attoparsec base bytestring cassava deepseq directory
+         exceptions file-embed filepath hashable JuicyPixels microlens mtl
+         mwc-random parallel req safe-exceptions streaming
+         streaming-attoparsec streaming-bytestring streaming-cassava
+         streaming-commons stringsearch tar text time transformers vector
+         zlib
+       ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       benchmarkHaskellDepends = [
+         base criterion deepseq directory filepath JuicyPixels mwc-random
+         req safe-exceptions streaming
        ];
        description = "Classical data sets for statistics and machine learning";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "dataurl" = callPackage
@@ -60725,8 +60949,8 @@ self: {
      }:
      mkDerivation {
        pname = "dbus";
-       version = "1.2.3";
-       sha256 = "04x0scjl9kyhh2wl02slfa7ykd2lmxbx6x7bp7wv8x4pwgd849zc";
+       version = "1.2.4";
+       sha256 = "1lzpvl4lfl84j56cdyn64gxm6zkgbjaczc41g235fikyx83vci88";
        libraryHaskellDepends = [
          base bytestring cereal conduit containers deepseq exceptions
          filepath lens network parsec random split template-haskell text
@@ -61271,29 +61495,32 @@ self: {
      }) {};
 
   "debian" = callPackage
-    ({ mkDerivation, base, bytestring, bzlib, containers, directory
-     , either, exceptions, filepath, HaXml, HUnit, ListLike, mtl
-     , network, network-uri, old-locale, parsec, pretty, process
-     , process-extras, pureMD5, regex-compat, regex-tdfa, SHA
-     , template-haskell, text, time, unix, Unixutils, utf8-string, zlib
+    ({ mkDerivation, base, bytestring, bzlib, Cabal, containers
+     , directory, either, exceptions, filepath, HaXml, hostname, HUnit
+     , lens, ListLike, mtl, network-uri, old-locale, parsec, pretty
+     , process, process-extras, pureMD5, QuickCheck, regex-compat
+     , regex-tdfa, SHA, syb, template-haskell, text, th-lift, th-orphans
+     , time, unix, Unixutils, utf8-string, zlib
      }:
      mkDerivation {
        pname = "debian";
-       version = "3.93.5";
-       sha256 = "0nncxa65lhdvypnx1j7v179v4pk2jfglxzs88p9cka2nr095hs55";
+       version = "3.95";
+       sha256 = "1qbg1kya1a8ysmbls44hcwqlv7kr9cnlpnxwqv4pixamraqhqx1i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring bzlib containers directory either exceptions
-         filepath HaXml HUnit ListLike mtl network network-uri old-locale
-         parsec pretty process process-extras pureMD5 regex-compat
-         regex-tdfa SHA template-haskell text time unix Unixutils
-         utf8-string zlib
+         base bytestring bzlib Cabal containers directory either exceptions
+         filepath HaXml hostname HUnit lens ListLike mtl network-uri
+         old-locale parsec pretty process process-extras pureMD5 QuickCheck
+         regex-compat regex-tdfa SHA syb template-haskell text th-lift
+         th-orphans time unix Unixutils utf8-string zlib
        ];
        executableHaskellDepends = [
          base directory filepath HaXml pretty process unix
        ];
-       testHaskellDepends = [ base HUnit parsec pretty regex-tdfa text ];
+       testHaskellDepends = [
+         base Cabal HUnit parsec pretty regex-tdfa text
+       ];
        description = "Modules for working with the Debian package system";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -61446,8 +61673,8 @@ self: {
     ({ mkDerivation, base, lens, random, transformers }:
      mkDerivation {
        pname = "debug-tracy";
-       version = "0.1.0.2";
-       sha256 = "057rh5gksfbnpxzqh9g3jai1hhmvk42jqgmqgq1qklakhfnbxs2w";
+       version = "0.1.0.3";
+       sha256 = "00rl7s1v12w8wa9cxfmbq327q0gdpwqd980pddap5pn4llcj4gmv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base lens random transformers ];
@@ -61513,8 +61740,8 @@ self: {
        pname = "decimal-literals";
        version = "0.1.0.0";
        sha256 = "0zsykb1ydihcd6x7v5xx1i0v5wn6a48g7ndzi68iwhivmj0qxyi7";
-       revision = "1";
-       editedCabalFile = "14qc6k8bjsixk5bzqwir1lbs1kqnl0a1py7779a63civv2ph5g5v";
+       revision = "3";
+       editedCabalFile = "0v53iwn2f5fhjhzf8zgzxrc1inp1bb0qjsghf1jlcp98az7avsjb";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Preprocessing decimal literals more or less as they are (instead of via fractions)";
@@ -61929,14 +62156,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "dejafu_1_12_0_0" = callPackage
+  "dejafu_2_0_0_0" = callPackage
     ({ mkDerivation, base, concurrency, containers, contravariant
      , deepseq, exceptions, leancheck, profunctors, random, transformers
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "1.12.0.0";
-       sha256 = "1nkpqd7alnw383lkhbfqxfj2apks2gw84bk59f2agmiry5pbcs3p";
+       version = "2.0.0.0";
+       sha256 = "1chl50yb0sydpvn1irfyc6vi6mcggjjk9vcip2mp973zf9a0i0v6";
        libraryHaskellDepends = [
          base concurrency containers contravariant deepseq exceptions
          leancheck profunctors random transformers
@@ -62283,8 +62510,8 @@ self: {
      }:
      mkDerivation {
        pname = "dependent-sum-aeson-orphans";
-       version = "0.1.0.0";
-       sha256 = "1rw9ialvyj1c3zjcqalwx6sc1fx1ra3p1wpfx8f65p8gzgj7m1yj";
+       version = "0.2.0.0";
+       sha256 = "0cb3yhrqn2mwa3spfz6sky9bh9kh92kl4959187d6kqvvhqqmafj";
        libraryHaskellDepends = [
          aeson base constraints constraints-extras dependent-map
          dependent-sum
@@ -63141,6 +63368,8 @@ self: {
        pname = "dhall-json";
        version = "1.2.6";
        sha256 = "0f18kn15v8pzkdayj2hql28fbba9i75msbi41yscik40lw2sg2cr";
+       revision = "1";
+       editedCabalFile = "1x6dgsqcgd8mvqwqq53aj8xgnfin6c66wn8vc7ikxiy0gilp686x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -63222,13 +63451,13 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-to-cabal";
-       version = "1.3.1.0";
-       sha256 = "0qqzzmkilxnii3p1rlrs20c1k6c5i7zld8cnzwssm2w9v8v7pkwj";
+       version = "1.3.2.0";
+       sha256 = "1cy7pqqfrmli3a8p24j0dgksfwhj08kjpbp31bdibnr8ix204jjc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring Cabal containers contravariant dhall hashable text
-         transformers vector
+         base bytestring Cabal containers contravariant dhall filepath
+         hashable text transformers vector
        ];
        executableHaskellDepends = [
          base bytestring Cabal dhall directory filepath microlens
@@ -63401,8 +63630,8 @@ self: {
        pname = "diagrams-boolean";
        version = "0.1.0";
        sha256 = "17mna7qwrwayx1nfdqq0v3kk6aamm6bqg9n6dqg4dp764g679cf0";
-       revision = "2";
-       editedCabalFile = "15nmf0y2j4qa2yvjxx7i1k9rqyjkqf3bjh8wj9xya7a7jcs3vyj9";
+       revision = "3";
+       editedCabalFile = "1cqibxx1a00m8nl9k48c0m0ln589rr4qw3f41xl1jk68b83r3x1k";
        libraryHaskellDepends = [ base cubicbezier diagrams-lib ];
        description = "deprecated, part of diagrams-contrib since 1.4";
        license = stdenv.lib.licenses.bsd3;
@@ -63443,10 +63672,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-builder";
-       version = "0.8.0.3";
-       sha256 = "1g8anclzfm88nd6z539g5f2h6yfb538hdl59sbiqv0vk1c4sr01s";
-       revision = "1";
-       editedCabalFile = "0cdnriavw7y0cr12n60vd0hwcyi09vkx5zjr47af3bj00lq1v9hk";
+       version = "0.8.0.4";
+       sha256 = "11vyybx6hia6s32skrykxr4d6s8yy93m2326945p07qmqwmwmr4w";
        configureFlags = [ "-fcairo" "-fps" "-frasterific" "-fsvg" ];
        isLibrary = true;
        isExecutable = true;
@@ -63596,8 +63823,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-haddock";
-       version = "0.4.0.2";
-       sha256 = "1f4sapi4zhb3nrlq92lr309c4aarnl29bzghnmsvs1kqmimq23y0";
+       version = "0.4.0.3";
+       sha256 = "1kv1m9hg2npm2k11svh0c27xknvh2j7x662wcbnpxnc44cxlqyak";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -64370,8 +64597,8 @@ self: {
      }:
      mkDerivation {
        pname = "digestive-functors-aeson";
-       version = "1.1.26";
-       sha256 = "173vdqd4d6p9gfs71ip07nzz5w33akrnp9wi19b8pnmi3fqck5nw";
+       version = "1.1.27";
+       sha256 = "05di6xs4y2cj8gv7piqk2x8lylbqdnipgb4zdzahqwpif4n74i7j";
        libraryHaskellDepends = [
          aeson base containers digestive-functors lens lens-aeson safe text
          vector
@@ -64569,6 +64796,8 @@ self: {
        pname = "dimensional";
        version = "1.3";
        sha256 = "0i4k7m134w3pczj8qllc59djdhisj92z78qrzap9v0f4rx8jb8r9";
+       revision = "1";
+       editedCabalFile = "1p6bn0xcxapm9r9b692l6kkijw0r41p1naiyx523pi5r0njs33k1";
        libraryHaskellDepends = [
          base deepseq exact-pi ieee754 numtype-dk semigroups vector
        ];
@@ -64841,8 +65070,10 @@ self: {
      }:
      mkDerivation {
        pname = "direct-sqlite";
-       version = "2.3.23";
-       sha256 = "0ywkah9gmjnx0zdlvinc2i898jsbdrw4ba315zkpijaaldp6znqz";
+       version = "2.3.24";
+       sha256 = "0xd6wcmshzadwqjgd9ddcfi76p0v2c18h49spl076h285kp3plj1";
+       revision = "1";
+       editedCabalFile = "0cfl7h43q2qib1qq8sipgcxcm3i9d6cp1diwmxv8n7ygx7awz6w6";
        libraryHaskellDepends = [ base bytestring semigroups text ];
        testHaskellDepends = [
          base base16-bytestring bytestring directory HUnit temporary text
@@ -65025,10 +65256,8 @@ self: {
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "0.7.1";
-       sha256 = "0cl40ph5qwpxa05q7jr67syq9dijxyzvmqzgw53wfri4800qxphn";
-       revision = "1";
-       editedCabalFile = "022rnkpy9frsn81d2m9n8r5crsjzjk679mfja5d65s5bzzg3plyj";
+       version = "0.8.0";
+       sha256 = "10lmn9wkrzzslwbxgw9l25hyxldprz1ig87glg681aibssh0p54m";
        libraryHaskellDepends = [
          aeson async base base64-bytestring bytestring containers
          data-default http-client iso8601-time JuicyPixels MonadRandom req
@@ -66238,8 +66467,8 @@ self: {
      }:
      mkDerivation {
        pname = "dmcc";
-       version = "1.1.0.0";
-       sha256 = "1lrscg4b13wd4gnkg3nsl2ala851lk03p9jxmlxmf2hbf4cl6cnc";
+       version = "1.1.0.1";
+       sha256 = "1agha3ppi1jh08pjn6s7jbfqqll0svwxpq2an69hcgl5kf01y0c7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -66736,8 +66965,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "doctest-driver-gen";
-       version = "0.3.0.0";
-       sha256 = "13m5f15076grwln29pnpqrq9h45cy46pagpk1qw3vzspp7k4ahk1";
+       version = "0.3.0.1";
+       sha256 = "1sa47c1wml8k00h4h1gzbckfzbr3w7k3j0lvr1x5z6fh05s5xbsn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
@@ -67996,8 +68225,8 @@ self: {
        pname = "dual-game";
        version = "0.1.0.1";
        sha256 = "1w69d7d2xbpi82n41gq08qdmldh834ka7qwvy159vsac556wwcfg";
-       revision = "1";
-       editedCabalFile = "0cd1kjlkbslyhchqp6p52rkxli88z65ky1345zxz67sr5hq9ia66";
+       revision = "2";
+       editedCabalFile = "077gbc640ab3846bijbiif89r3ska3aab7g2r9cd7dl9c7iy35w8";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -68107,8 +68336,8 @@ self: {
      }:
      mkDerivation {
        pname = "dumb-cas";
-       version = "0.1.2.0";
-       sha256 = "03zyv1p69lhxg3z86rlyywzh305kpld3a79kr6c5swsm3pw8mnh5";
+       version = "0.2.0.0";
+       sha256 = "1zcq9r2p5gjpfivprjp9hspqpayrj9in2jck5vf5ibxpc671isb4";
        libraryHaskellDepends = [
          base containers decimal-literals hashable template-haskell
          unordered-containers
@@ -68184,6 +68413,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dunai-test" = callPackage
+    ({ mkDerivation, base, dunai, normaldistribution, QuickCheck }:
+     mkDerivation {
+       pname = "dunai-test";
+       version = "0.1.0.0";
+       sha256 = "0jkn1740adzv9jwsp6qa0sxfxg6x5cvqlss1yjwcr1chsvpk2d1m";
+       libraryHaskellDepends = [
+         base dunai normaldistribution QuickCheck
+       ];
+       description = "Testing library for Dunai";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "duplo" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, base
      , base64-bytestring, bytestring, containers, directory
@@ -68630,8 +68872,8 @@ self: {
      }:
      mkDerivation {
        pname = "dynamodb-simple";
-       version = "0.6.0.0";
-       sha256 = "0dshi4binsfjrlw7sl1jxa09a1s4qkp3g48x6hchaipk6b1nx960";
+       version = "0.6.0.1";
+       sha256 = "00966z61119p2qammdiaxnfc5by0b12pj95745i792kqw647vygj";
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-dynamodb base bytestring
          conduit containers double-conversion exceptions generics-sop
@@ -69000,15 +69242,20 @@ self: {
      }) {};
 
   "eccrypto" = callPackage
-    ({ mkDerivation, base, bytestring, cereal, crypto-api, SHA, vector
+    ({ mkDerivation, base, base16-bytestring, bytestring, Cabal
+     , criterion, crypto-api, integer-gmp, MonadRandom, SHA
      }:
      mkDerivation {
        pname = "eccrypto";
-       version = "0.0.1";
-       sha256 = "1jcwlwbcd77536ii0wxalbdslzbvv224b07g3801pgjvr38xljpx";
+       version = "0.1.0";
+       sha256 = "1cyp313ifcdndafk91g6ivs6ab94jnddw1684d8bkmkr42kmn772";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base bytestring cereal crypto-api SHA vector
+         base bytestring crypto-api integer-gmp SHA
+       ];
+       testHaskellDepends = [ base base16-bytestring bytestring Cabal ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion MonadRandom
        ];
        description = "Elliptic Curve Cryptography for Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -69788,8 +70035,8 @@ self: {
      }:
      mkDerivation {
        pname = "ekg-bosun";
-       version = "1.0.14";
-       sha256 = "1dfdaff9ig60xacw7fb1r3xq85hrk3x06cr3lwmrxwz493n0vsxl";
+       version = "1.0.15";
+       sha256 = "1j6nvg4xi6v63lq3kpsirz4dvmh3xwl8515qkgvn5ybg0axpzwmm";
        libraryHaskellDepends = [
          aeson base ekg-core http-client lens network network-uri old-locale
          text time unordered-containers vector wreq
@@ -70530,6 +70777,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "elm2nix_0_1_1" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, async, base, binary
+     , bytestring, containers, data-default, directory, filepath, here
+     , mtl, optparse-applicative, process, req, text, transformers
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "elm2nix";
+       version = "0.1.1";
+       sha256 = "16b7vv7ndn8mpkg05rhljpmld2dazsgl9yqg8j3mza1f5x4f6jwp";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base binary bytestring containers data-default
+         directory filepath here mtl process req text transformers
+         unordered-containers
+       ];
+       executableHaskellDepends = [
+         ansi-wl-pprint base directory here optparse-applicative
+       ];
+       testHaskellDepends = [ base ];
+       description = "Turn your Elm project into buildable Nix project";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "elo" = callPackage
     ({ mkDerivation, base, tasty }:
      mkDerivation {
@@ -71679,16 +71952,30 @@ self: {
      }) {};
 
   "equational-reasoning" = callPackage
-    ({ mkDerivation, base, containers, singletons, template-haskell
-     , th-desugar, th-extras, void
+    ({ mkDerivation, base, containers, template-haskell, th-desugar
+     , th-extras, void
      }:
      mkDerivation {
        pname = "equational-reasoning";
-       version = "0.5.1.1";
-       sha256 = "12l0h86y3qxjr04y2908l9l5jh1q2hw5xhchxk7j8c216vlwv5ql";
+       version = "0.6.0.0";
+       sha256 = "1cf74r1zdb289x27linjg8di5gcsi1jg771gyb0rqaf5carl9b0f";
+       revision = "1";
+       editedCabalFile = "19dbxan77gsqy4v23npfbq5p3qwb6wz3r7mhs6290ghpfhzy8yp4";
        libraryHaskellDepends = [
-         base containers singletons template-haskell th-desugar th-extras
-         void
+         base containers template-haskell th-desugar th-extras void
+       ];
+       description = "Proof assistant for Haskell using DataKinds & PolyKinds";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "equational-reasoning-induction" = callPackage
+    ({ mkDerivation, base, singletons, template-haskell, th-extras }:
+     mkDerivation {
+       pname = "equational-reasoning-induction";
+       version = "0.6.0.0";
+       sha256 = "1pp1li32jcspjlfsblannf11q487715fwczf3srffbxyj802ini8";
+       libraryHaskellDepends = [
+         base singletons template-haskell th-extras
        ];
        description = "Proof assistant for Haskell using DataKinds & PolyKinds";
        license = stdenv.lib.licenses.bsd3;
@@ -71715,19 +72002,20 @@ self: {
      }) {};
 
   "equivalence" = callPackage
-    ({ mkDerivation, base, containers, mtl, QuickCheck, STMonadTrans
-     , template-haskell, test-framework, test-framework-quickcheck2
-     , transformers, transformers-compat
+    ({ mkDerivation, base, containers, fail, mtl, QuickCheck
+     , STMonadTrans, template-haskell, test-framework
+     , test-framework-quickcheck2, transformers, transformers-compat
      }:
      mkDerivation {
        pname = "equivalence";
-       version = "0.3.3";
-       sha256 = "02jhn8z1aqyxp3krylhfnwr7zzjcd17q9qriyd9653i92b7di3gf";
+       version = "0.3.4";
+       sha256 = "02s24624xnwq790mip5pj6828an36j8jbdj5kvx9bv5a7ap3vzn1";
        libraryHaskellDepends = [
-         base containers mtl STMonadTrans transformers transformers-compat
+         base containers fail mtl STMonadTrans transformers
+         transformers-compat
        ];
        testHaskellDepends = [
-         base containers mtl QuickCheck STMonadTrans template-haskell
+         base containers fail mtl QuickCheck STMonadTrans template-haskell
          test-framework test-framework-quickcheck2 transformers
          transformers-compat
        ];
@@ -74682,10 +74970,8 @@ self: {
     ({ mkDerivation, base, mtl, transformers }:
      mkDerivation {
        pname = "failable";
-       version = "0.1.1.0";
-       sha256 = "0wg4jhilnyqxs6kqikbli1ia6xl4hi4hipdc1pp1f2d2gxgg0afb";
-       revision = "1";
-       editedCabalFile = "05952427jqydy44yqsjad3xwy62k48f7ygyby28rg6s5l59966pz";
+       version = "1.1.0.0";
+       sha256 = "0fgvs1cs3big4771jy9svwg3pz58zplvnzrrgkqbwplhz6wilyq8";
        libraryHaskellDepends = [ base mtl transformers ];
        description = "A 'Failable' error monad class to unify failure across monads that can fail";
        license = stdenv.lib.licenses.bsd3;
@@ -75769,6 +76055,18 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "fedora-dists_1_0_1" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "fedora-dists";
+       version = "1.0.1";
+       sha256 = "107ykp3f1f35ghlxfv53mxl0wmj1jyr7xnil16gyg6gcyi0shbll";
+       libraryHaskellDepends = [ base ];
+       description = "Library for Fedora distribution versions";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fedora-haskell-tools" = callPackage
     ({ mkDerivation, base, csv, directory, filepath, HTTP, process
      , time, unix
@@ -76440,8 +76738,8 @@ self: {
      }:
      mkDerivation {
        pname = "fields-json";
-       version = "0.2.2.3";
-       sha256 = "0wqci95ad339nd3lfbhc6v55c7zdkq714hw8igq5fwvbd8kq11d0";
+       version = "0.2.2.4";
+       sha256 = "1335f0ywa2hmgza3kagxr8y5xl57jxsq7p7q19wbzcknlv3hwmms";
        libraryHaskellDepends = [
          base base64-bytestring containers json mtl utf8-string
        ];
@@ -76717,8 +77015,8 @@ self: {
        pname = "filepath-crypto";
        version = "0.1.0.0";
        sha256 = "1bj9haa4ignmk6c6gdiqb4rnwy395pwqdyfy4kgg0z16w0l39mw0";
-       revision = "7";
-       editedCabalFile = "0dniq1rzv6qb75svf2ya32r0116pjh9jlgly7106x3gyziq2cwh3";
+       revision = "8";
+       editedCabalFile = "1d4zrj5qqkqnx53fmdrw9dh2hwppc6mmykpxpddh4k84kln3mlym";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive cryptoids cryptoids-class
          cryptoids-types exceptions filepath sandi template-haskell
@@ -76756,6 +77054,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "filepattern" = callPackage
+    ({ mkDerivation, base, directory, extra, filepath, QuickCheck }:
+     mkDerivation {
+       pname = "filepattern";
+       version = "0.1.1";
+       sha256 = "0jwvbhjsn4k6kpkg0dvsm7p3a79vzp0ffr1w79wkmm7hzvf5pz7p";
+       libraryHaskellDepends = [ base directory extra filepath ];
+       testHaskellDepends = [ base directory extra filepath QuickCheck ];
+       description = "File path glob-like matching";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "fileplow" = callPackage
     ({ mkDerivation, base, binary-search, bytestring, hspec, mtl
      , QuickCheck, temporary, vector
@@ -78198,6 +78508,44 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "floskell" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
+     , criterion, data-default, deepseq, directory, exceptions, filepath
+     , ghc-prim, haskell-src-exts, hspec, monad-dijkstra, monad-loops
+     , mtl, optparse-applicative, text, transformers
+     , unordered-containers, utf8-string
+     }:
+     mkDerivation {
+       pname = "floskell";
+       version = "0.9.0";
+       sha256 = "0zx61l6gggblb74ydsamjdvsdm8s8gzb8bmcl8sdhrq7bdbdmbav";
+       revision = "1";
+       editedCabalFile = "160g42ikrrlm9kw5fahv5gzhfd1kqf7rwqdf0q5fl070ngl5ia7w";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers data-default haskell-src-exts
+         monad-dijkstra monad-loops mtl text transformers
+         unordered-containers utf8-string
+       ];
+       executableHaskellDepends = [
+         aeson aeson-pretty base bytestring directory filepath ghc-prim
+         haskell-src-exts optparse-applicative text unordered-containers
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq directory exceptions haskell-src-exts hspec
+         monad-loops mtl text utf8-string
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq directory exceptions ghc-prim
+         haskell-src-exts text utf8-string
+       ];
+       description = "A flexible Haskell source code pretty printer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "flow" = callPackage
     ({ mkDerivation, base, doctest, QuickCheck, template-haskell }:
      mkDerivation {
@@ -78383,8 +78731,8 @@ self: {
      }:
      mkDerivation {
        pname = "fltkhs";
-       version = "0.6.0.0";
-       sha256 = "1cbyp8rq9yzx6jrw68dbprkdyd8pkdqbxx08wajyg7bfks6j39cb";
+       version = "0.7.0.2";
+       sha256 = "025249sdh8w5v1rhykyrm0k3w5ci4lk34fhjr0bgws8gmimvk86f";
        configureFlags = [ "-fopengl" ];
        isLibrary = true;
        isExecutable = true;
@@ -78466,14 +78814,15 @@ self: {
      }:
      mkDerivation {
        pname = "fltkhs-themes";
-       version = "0.1.0.1";
-       sha256 = "03awhraincinrqr1zzb9c64mkb391isw3gb87csa1dkqk846wij6";
+       version = "0.1.0.4";
+       sha256 = "0hjx7v02w6dlizb16jpdndy12kp2cxp9y1fbl8asjybhwvqid5sc";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [
          base bytestring fltkhs load-font text vector
        ];
        librarySystemDepends = [ fontconfig ];
+       description = "A set of themed widgets that provides drop in replacements to the ones in FLTKHS";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) fontconfig;};
@@ -78848,6 +79197,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "foldl-exceptions" = callPackage
+    ({ mkDerivation, base, doctest, foldl, safe-exceptions }:
+     mkDerivation {
+       pname = "foldl-exceptions";
+       version = "1.0.0.0";
+       sha256 = "18aq907cdl80kpsb9ljymyd4l97sk7nl4qbwc90q7g8zdn3df3bn";
+       revision = "1";
+       editedCabalFile = "02dqzbrjkvhb66gabmmfsvw6yxz7905vphrbanbzlh5qyz9y0kc0";
+       libraryHaskellDepends = [ base foldl safe-exceptions ];
+       testHaskellDepends = [ base doctest ];
+       description = "Exception handling with FoldM";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "foldl-incremental" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion, deepseq
      , foldl, histogram-fill, mwc-random, pipes, QuickCheck, tasty
@@ -79704,10 +80067,10 @@ self: {
     ({ mkDerivation, base, basement, gauge, ghc-prim }:
      mkDerivation {
        pname = "foundation";
-       version = "0.0.21";
-       sha256 = "1q43y8wfj0wf9gdq2kzphwjwq6m5pvryy1lqgk954aq5z3ks1lsf";
+       version = "0.0.23";
+       sha256 = "0g043cqgzn082jfg5q5y1mi4c4pa3is00j01gvggvz8937v3cq52";
        revision = "1";
-       editedCabalFile = "07mzfc75wl7kn2lr2gmbx4i0a5gxyi9b066rz0x2pqxqav3fwqs0";
+       editedCabalFile = "1zdlh81dii11p3bw3ffm3sr69l7nlhj622mca81swj59klgmaxwh";
        libraryHaskellDepends = [ base basement ghc-prim ];
        testHaskellDepends = [ base basement ];
        benchmarkHaskellDepends = [ base basement gauge ];
@@ -79715,22 +80078,6 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "foundation_0_0_22" = callPackage
-    ({ mkDerivation, base, basement, gauge, ghc-prim }:
-     mkDerivation {
-       pname = "foundation";
-       version = "0.0.22";
-       sha256 = "1a66abjm0qy90i1kc0zik373gy83p14vxw0q7qx2yd8yqf2kf28j";
-       revision = "1";
-       editedCabalFile = "18kk8h7d0gr57p95b6y9ax6ngbj76gd68rc3br85sk90nl89zxjz";
-       libraryHaskellDepends = [ base basement ghc-prim ];
-       testHaskellDepends = [ base basement ];
-       benchmarkHaskellDepends = [ base basement gauge ];
-       description = "Alternative prelude with batteries and no dependencies";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
   "foundation-edge" = callPackage
     ({ mkDerivation, bytestring, foundation, text }:
      mkDerivation {
@@ -80001,17 +80348,17 @@ self: {
 
   "fraxl" = callPackage
     ({ mkDerivation, async, base, dependent-map, dependent-sum
-     , exceptions, free, mtl, time, transformers, type-aligned, vinyl
+     , exceptions, fastsum, free, mtl, time, transformers, type-aligned
      }:
      mkDerivation {
        pname = "fraxl";
-       version = "0.2.0.1";
-       sha256 = "1k5fcl6d9yxc2773x0vv7z8q1pq3mf6l29icr4yc4wxsxw4l3r7k";
+       version = "0.3.0.0";
+       sha256 = "1c57pb5ybhmkphr680pny36x732ky02dm59v6lwviizqpwf5jn1c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         async base dependent-map dependent-sum exceptions free mtl
-         transformers type-aligned vinyl
+         async base dependent-map dependent-sum exceptions fastsum free mtl
+         transformers type-aligned
        ];
        benchmarkHaskellDepends = [ base time ];
        description = "Cached and parallel data fetching";
@@ -80063,8 +80410,8 @@ self: {
      }:
      mkDerivation {
        pname = "free-algebras";
-       version = "0.0.7.0";
-       sha256 = "1aiifvfrz668lzxy41i82w19z6jc2xi9awhz6b07xv47f22qphgh";
+       version = "0.0.7.2";
+       sha256 = "0hljd9wsv516jcqp7pkacmadjchkd9sxq42pj5j1my95hvc5apfd";
        libraryHaskellDepends = [
          base constraints containers data-fix dlist free groups
          kan-extensions mtl natural-numbers transformers
@@ -81230,8 +81577,8 @@ self: {
     ({ mkDerivation, base, ShowF, type-unary }:
      mkDerivation {
        pname = "ftree";
-       version = "0.1.3";
-       sha256 = "1ma87jnwsgzlr7z6ac303i0qy9i2lywvjgb2zjv9qgnbkf18pg3m";
+       version = "0.1.5";
+       sha256 = "1gj7j6mpfgv7ra3v9pm8gbvzbdmcvjri4zzmllx84d138l983k6g";
        libraryHaskellDepends = [ base ShowF type-unary ];
        description = "Depth-typed functor-based trees, both top-down and bottom-up";
        license = stdenv.lib.licenses.bsd3;
@@ -81508,9 +81855,10 @@ self: {
     ({ mkDerivation, base, tagged }:
      mkDerivation {
        pname = "function-builder";
-       version = "0.1.1.0";
-       sha256 = "1qj78l8j6f9wnvapmkijhgby45g23r0w2wwwwlnkbnrvy869fr4p";
+       version = "0.3.0.1";
+       sha256 = "1pzfyn0aah38g90z1bxdld5b7ahb3x9ikvvxnvyfz11gcba62bck";
        libraryHaskellDepends = [ base tagged ];
+       testHaskellDepends = [ base tagged ];
        description = "Create poly variadic functions for monoidal results";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -82253,6 +82601,7 @@ self: {
        ];
        description = "Gamma function and related functions";
        license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gang-of-threads" = callPackage
@@ -83149,10 +83498,8 @@ self: {
      }:
      mkDerivation {
        pname = "generic-deriving";
-       version = "1.12.2";
-       sha256 = "1i7d6cpj9yhaqb79zays3nqchhaacacjz9bkc0zlwj73y5gvi22n";
-       revision = "1";
-       editedCabalFile = "0gr20ypr6s0183wmrhmia0zvpbn4dmfyr3wksrkrqj4i8nhj42fz";
+       version = "1.12.3";
+       sha256 = "14k6yilr8x3ymwmgv51rjkqnzgm64b538gi80lj3z8p6wfjdgvfv";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell th-abstraction
        ];
@@ -84197,6 +84544,8 @@ self: {
        pname = "geojson";
        version = "3.0.4";
        sha256 = "0dnk9cb7y8wgnx8wzzln635r9pijljd9h5rinl0s9g4bjhw0rcw5";
+       revision = "1";
+       editedCabalFile = "1dp2hmnh77il2nx809bbkhhq4bz7ycy38ai5bhyklagc4k5bxl1c";
        libraryHaskellDepends = [
          aeson base containers deepseq lens scientific semigroups text
          transformers validation
@@ -84389,6 +84738,8 @@ self: {
        pname = "gh-labeler";
        version = "0.1.0";
        sha256 = "05g3lk1ff87qmjlywi6p90mjyycx418idddavpi8i045gr51am4l";
+       revision = "1";
+       editedCabalFile = "052iphf765hkysw9p4224jnm29az4kcnx8ikfpl7axj3zs1j793r";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -84845,6 +85196,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ghc-lib" = callPackage
+    ({ mkDerivation, alex, array, base, binary, bytestring, containers
+     , deepseq, directory, filepath, ghc-prim, happy, haskeline, hpc
+     , pretty, process, time, transformers, unix
+     }:
+     mkDerivation {
+       pname = "ghc-lib";
+       version = "0.20190204";
+       sha256 = "1983wg1in81b2wvqgl8431rgfdzzafqzl2x5bzlanvhiv0vjwcqy";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base binary bytestring containers deepseq directory filepath
+         ghc-prim hpc pretty process time transformers unix
+       ];
+       libraryToolDepends = [ alex happy ];
+       executableHaskellDepends = [
+         array base bytestring containers deepseq directory filepath
+         ghc-prim haskeline process time transformers unix
+       ];
+       description = "The GHC API, decoupled from GHC versions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-make" = callPackage
     ({ mkDerivation, base, process, shake, unordered-containers }:
      mkDerivation {
@@ -85556,6 +85933,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ghcjs-base_0_2_0_0" = callPackage
+    ({ mkDerivation, aeson, array, attoparsec, base, binary, bytestring
+     , containers, deepseq, directory, dlist, ghc-prim, ghcjs-prim
+     , hashable, HUnit, integer-gmp, primitive, QuickCheck
+     , quickcheck-unicode, random, scientific, test-framework
+     , test-framework-hunit, test-framework-quickcheck2, text, time
+     , transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "ghcjs-base";
+       version = "0.2.0.0";
+       sha256 = "0wvmxr33a3bsv1mh8lb10haapvcykp9200ppbdpjiz2wihnb4mk8";
+       libraryHaskellDepends = [
+         aeson attoparsec base binary bytestring containers deepseq dlist
+         ghc-prim ghcjs-prim hashable integer-gmp primitive scientific text
+         time transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         array base bytestring deepseq directory ghc-prim ghcjs-prim HUnit
+         primitive QuickCheck quickcheck-unicode random test-framework
+         test-framework-hunit test-framework-quickcheck2 text
+       ];
+       description = "base library for GHCJS";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {ghcjs-prim = null;};
+
   "ghcjs-base-stub" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, containers, deepseq
      , ghc-prim, primitive, scientific, text, transformers
@@ -85904,6 +86309,7 @@ self: {
        ];
        description = "Bridge between packages gi-* and cairo-core";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gi-cairo-connector" = callPackage
@@ -86292,8 +86698,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk-declarative";
-       version = "0.4.1";
-       sha256 = "1hgrmmf2jk9mcrhq7ak95j9wc15lgv1jis8immvsjvhfqdayc212";
+       version = "0.4.2";
+       sha256 = "0ps400bw7vsb0g67b5k0hzka3li389mmlwvlivkhi7l5a1cz751j";
        libraryHaskellDepends = [
          base gi-glib gi-gobject gi-gtk haskell-gi haskell-gi-base
          haskell-gi-overloading mtl text unordered-containers vector
@@ -86312,8 +86718,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk-declarative-app-simple";
-       version = "0.4.0";
-       sha256 = "0pa6mjv386cvgvm8zywx3wdm5jwx0sm2rgxmybp9sxvyarbp6wqi";
+       version = "0.4.1";
+       sha256 = "0m6x1pwfzrd2d1jkj777i10f736fzbsj9cw5wdfglakf5j2flb8p";
        libraryHaskellDepends = [
          async base gi-gdk gi-glib gi-gobject gi-gtk gi-gtk-declarative
          haskell-gi haskell-gi-base haskell-gi-overloading pipes
@@ -86947,12 +87353,12 @@ self: {
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "7.20190129";
-       sha256 = "0gsi1ymv7dmx429vhv58979hfh23zrfvrsam6saf16ckh5hd0n81";
+       version = "7.20190219";
+       sha256 = "0161jszid9nih31q55zh8dldyfz5q0v4m2gw9dbb2hb1x47w3ww2";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
-         "-fpairing" "-fproduction" "-fs3" "-ftorrentparser" "-fwebapp"
-         "-fwebdav"
+         "-f-networkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
+         "-fwebapp" "-fwebdav"
        ];
        isLibrary = false;
        isExecutable = true;
@@ -86990,7 +87396,7 @@ self: {
        '';
        enableSharedExecutables = false;
        description = "manage files with git, without checking their contents into git";
-       license = stdenv.lib.licenses.gpl3;
+       license = stdenv.lib.licenses.agpl3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {inherit (pkgs) bup; inherit (pkgs) curl; inherit (pkgs) git; 
          inherit (pkgs) gnupg; inherit (pkgs) lsof; inherit (pkgs) openssh; 
@@ -87368,23 +87774,24 @@ self: {
 
   "github" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
-     , binary, binary-orphans, byteable, bytestring, containers
-     , cryptohash, deepseq, deepseq-generics, exceptions, file-embed
-     , hashable, hspec, hspec-discover, http-client, http-client-tls
+     , binary, binary-orphans, bytestring, containers, cryptohash-sha1
+     , deepseq, deepseq-generics, exceptions, file-embed, hashable
+     , hspec, hspec-discover, http-client, http-client-tls
      , http-link-header, http-types, iso8601-time, mtl, network-uri
-     , semigroups, text, time, tls, transformers, transformers-compat
-     , unordered-containers, vector, vector-instances
+     , semigroups, tagged, text, time, tls, transformers
+     , transformers-compat, unordered-containers, vector
+     , vector-instances
      }:
      mkDerivation {
        pname = "github";
-       version = "0.20";
-       sha256 = "0gyinmrdwbqd6h5bvlv5jkv2rfp48p11088w5ayms8h361ck3kdp";
+       version = "0.21";
+       sha256 = "1ck4mnvxzgbpzy1v7xgggfn69733hm2smhbivmcvdmxd104lzvsq";
        libraryHaskellDepends = [
          aeson base base-compat base16-bytestring binary binary-orphans
-         byteable bytestring containers cryptohash deepseq deepseq-generics
+         bytestring containers cryptohash-sha1 deepseq deepseq-generics
          exceptions hashable http-client http-client-tls http-link-header
-         http-types iso8601-time mtl network-uri semigroups text time tls
-         transformers transformers-compat unordered-containers vector
+         http-types iso8601-time mtl network-uri semigroups tagged text time
+         tls transformers transformers-compat unordered-containers vector
          vector-instances
        ];
        testHaskellDepends = [
@@ -87696,6 +88103,8 @@ self: {
        pname = "gitlib";
        version = "3.1.2";
        sha256 = "1r973cpkp4h8dfjrkqgyy31a3x4bbqi7zhpck09ix2a9i597b345";
+       revision = "1";
+       editedCabalFile = "09v2acn2cxagyfnn7914faz9nzzi2j48w8v55lj1fxwgspc44w8g";
        libraryHaskellDepends = [
          base base16-bytestring bytestring conduit conduit-combinators
          containers directory exceptions filepath hashable mtl resourcet
@@ -88312,10 +88721,8 @@ self: {
      }:
      mkDerivation {
        pname = "glirc";
-       version = "2.29";
-       sha256 = "04i6dzb6fgvx1vxpn8syzc9pa4mq2m62mrgq4iraqwgkzl54ahgx";
-       revision = "2";
-       editedCabalFile = "0s37m39c3vnwskvbsiziysm9ck7l30bfkp2jg0l49dhi8v01q6cs";
+       version = "2.30";
+       sha256 = "1ky0xwspnfknbjyf0fa459f38nwqakwq6fh7ady4rch8ck22phql";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -88721,8 +89128,8 @@ self: {
      }:
      mkDerivation {
        pname = "glue-common";
-       version = "0.6.1";
-       sha256 = "1s4fm4cf88n4fw7alqb4jigw1pjh242jr7a8d9p52qcgkqn9qnwy";
+       version = "0.6.2";
+       sha256 = "063y0q6iz4s5hqjc4cpd2y49w9zq6w3lcnvxlv73miysb9q16a4b";
        libraryHaskellDepends = [
          base hashable lifted-base monad-control text time transformers
          transformers-base unordered-containers
@@ -88746,8 +89153,8 @@ self: {
      }:
      mkDerivation {
        pname = "glue-core";
-       version = "0.6.1";
-       sha256 = "0fmqir0wcyhgl154rzg93qxdmxzfpi05mckzg7mihkh57fsy4pk0";
+       version = "0.6.2";
+       sha256 = "0z6il1ff3cgzk0bvgp2c1lp7qn4ws0nd2asm1x15cb8498iyqlaa";
        libraryHaskellDepends = [
          base glue-common hashable lifted-base monad-control text time
          transformers transformers-base unordered-containers
@@ -88771,8 +89178,8 @@ self: {
      }:
      mkDerivation {
        pname = "glue-ekg";
-       version = "0.6.1";
-       sha256 = "1pigh4s546mv4l2bnwrr6y8473bss0s8ydymr929bz2svrfyhlmz";
+       version = "0.6.2";
+       sha256 = "10a2ma35mk3plwcsn80ccc879ajz0ifyl8xqifn0kfz3dpk7g0y7";
        libraryHaskellDepends = [
          base ekg-core glue-common hashable lifted-base monad-control text
          time transformers transformers-base unordered-containers
@@ -88795,8 +89202,8 @@ self: {
      }:
      mkDerivation {
        pname = "glue-example";
-       version = "0.6.1";
-       sha256 = "1na0rnl0ac666man17xi4f5rg0zrw7f7ky44nfn2cag6398b109i";
+       version = "0.6.2";
+       sha256 = "182ky7k17wfc0cijyhib8j0ajw963yrbq9y91lsvvd7vnjfwds1x";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -88978,8 +89385,8 @@ self: {
      }:
      mkDerivation {
        pname = "gnuplot";
-       version = "0.5.5.3";
-       sha256 = "0105ajc5szgrh091x5fxdcydc96rdh75gg2snyfr2y2rhf120x2g";
+       version = "0.5.6";
+       sha256 = "1g6xgnlkh17avivn1rlq7l2nvs26dvrbx4rkfld0bf6kyqaqwrgp";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -89253,32 +89660,68 @@ self: {
     ({ mkDerivation, aeson, base, bytestring, case-insensitive, conduit
      , conduit-extra, cryptonite, directory, exceptions, filepath
      , gogol-core, http-client, http-conduit, http-media, http-types
-     , lens, memory, mime-types, monad-control, mtl, resourcet, text
-     , time, transformers, transformers-base, unordered-containers, x509
+     , lens, memory, mime-types, mtl, resourcet, text, time
+     , transformers, unliftio-core, unordered-containers, x509
      , x509-store
      }:
      mkDerivation {
        pname = "gogol";
-       version = "0.3.0";
-       sha256 = "0cb4kbdw8gyd8h0wkw8h55jabd7i1q523ki9ssjn19inb5pgjwv2";
+       version = "0.4.0";
+       sha256 = "1w6bxhgdsilv6z1q0m2qidv1in10i9p5biz733v2nqg2pflj8qgh";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive conduit conduit-extra
          cryptonite directory exceptions filepath gogol-core http-client
-         http-conduit http-media http-types lens memory mime-types
-         monad-control mtl resourcet text time transformers
-         transformers-base unordered-containers x509 x509-store
+         http-conduit http-media http-types lens memory mime-types mtl
+         resourcet text time transformers unliftio-core unordered-containers
+         x509 x509-store
        ];
        description = "Comprehensive Google Services SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-abusiveexperiencereport" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-abusiveexperiencereport";
+       version = "0.4.0";
+       sha256 = "0jlpybzl1p6jifrj3cdc5wndjg1ds15liz844wl3vmx45p5bj2mq";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Abusive Experience Report SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-acceleratedmobilepageurl" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-acceleratedmobilepageurl";
+       version = "0.4.0";
+       sha256 = "0bd34zw60bzx4h2iczz02ynn7vm2pma3b1x419nafr70jlil11bc";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Accelerated Mobile Pages (AMP) URL SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-accesscontextmanager" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-accesscontextmanager";
+       version = "0.4.0";
+       sha256 = "1rq8q9av1vj0v7y7av6y92isyf0rrr0v5dqihx2ryhsxcn9bly4m";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Access Context Manager SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-adexchange-buyer" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-adexchange-buyer";
-       version = "0.3.0";
-       sha256 = "1hn2cn3p7jkqvpy0qq3hakcnrns4j2j961zg4xbb8z4mjjj3fgm8";
+       version = "0.4.0";
+       sha256 = "056896r5iq343bam9qzd41x1iaqa0p31x20w6zspn3v9r8i1x76b";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Ad Exchange Buyer SDK";
        license = "unknown";
@@ -89289,20 +89732,44 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-adexchange-seller";
-       version = "0.3.0";
-       sha256 = "1r8pvad01qjdv040agfisnj0183la74p44hvppa0zzbjsybv5n99";
+       version = "0.4.0";
+       sha256 = "17pvmi371xx06qav5c4fsq5il9a54478jwjfk7wh1snifxwsg3dn";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Ad Exchange Seller SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-adexchangebuyer2" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-adexchangebuyer2";
+       version = "0.4.0";
+       sha256 = "0bsxix42viyg74yvw03bhn19c9rcav1hby63fjlcg9zvs9pqx9a2";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Ad Exchange Buyer API II SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-adexperiencereport" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-adexperiencereport";
+       version = "0.4.0";
+       sha256 = "0n9gg9rgwyj7x115dpp73gqsz61qjkph8iwlf51ak0dflvhpcirc";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Ad Experience Report SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-admin-datatransfer" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-admin-datatransfer";
-       version = "0.3.0";
-       sha256 = "1qjlhg4kgfy93rl2nzivvdhjpyaf4csm4nl097ny649dmxjjf1q9";
+       version = "0.4.0";
+       sha256 = "0i0zrz1wgwdqxisq47icaa9rz1vawgkwk80pg8lzraaf82scxsd2";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Admin Data Transfer SDK";
        license = "unknown";
@@ -89313,8 +89780,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-admin-directory";
-       version = "0.3.0";
-       sha256 = "0pb3ymvx6hw46i1iwrvc4zv7mkmjwjk8w4q6h91jph7kv98kpmpk";
+       version = "0.4.0";
+       sha256 = "0nikrrv152xnr4b8542vlmnqazq8cvq89mi004nzd8pfl0a7nz5m";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Admin Directory SDK";
        license = "unknown";
@@ -89337,8 +89804,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-admin-reports";
-       version = "0.3.0";
-       sha256 = "0fms60bb7vyn3kkrg5j53x7f2r5111xy922w7a3i7xb04lsbxv3j";
+       version = "0.4.0";
+       sha256 = "0ncx9knx8lnkbg0zcc5ak1ywgk1nqdqvplri247wxxlyn582xx2b";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Admin Reports SDK";
        license = "unknown";
@@ -89349,8 +89816,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-adsense";
-       version = "0.3.0";
-       sha256 = "0dispksc95m3ig409f44fl57jz4lqnhljhk6y957d520sf1arv53";
+       version = "0.4.0";
+       sha256 = "0ahw3mapm93krj2lkzvcxqg3n7v912drfqb40afjl9p572hppl0w";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google AdSense Management SDK";
        license = "unknown";
@@ -89361,8 +89828,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-adsense-host";
-       version = "0.3.0";
-       sha256 = "1rvglzr4a2lilknrdjla0s47gdkp5n2z6kpwcl0gfgdr00fbrcrw";
+       version = "0.4.0";
+       sha256 = "03pm68sksb2r51a7962bjypaf0ycbjsqwdyzl338v2l03jwp4d3w";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google AdSense Host SDK";
        license = "unknown";
@@ -89381,24 +89848,48 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-alertcenter" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-alertcenter";
+       version = "0.4.0";
+       sha256 = "0sb4r4xbcfmrygz92xy1b0qps32mvw4kxlgixzmx5lhabhmh19rg";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google G Suite Alert Center SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-analytics" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-analytics";
-       version = "0.3.0";
-       sha256 = "0myggz1cxq88q3s1sbw5v5zhcmrybjkqj9zd0ap6x4sa7qrp7dys";
+       version = "0.4.0";
+       sha256 = "0vbz4ydkkglradhmrs1s3ldz8isz65lvfw84imhrmfrnbj8mvwsr";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Analytics SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-analyticsreporting" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-analyticsreporting";
+       version = "0.4.0";
+       sha256 = "0wcnvdf02l3s81f53v33f6vy3ksnpcyhdls4jf6939x2pz7frrld";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Analytics Reporting SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-android-enterprise" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-android-enterprise";
-       version = "0.3.0";
-       sha256 = "0lnliq42ykmizlr8g43ic99lzk5rc7j1l3dl81xbymw0dq0frbcm";
+       version = "0.4.0";
+       sha256 = "0pq3krv5gncwpiblrkqsabrkqldjl1gardkf279qqc8z7qw74wn8";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play EMM SDK";
        license = "unknown";
@@ -89409,20 +89900,44 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-android-publisher";
-       version = "0.3.0";
-       sha256 = "1cf449zz6ahnqa71fqa25brj5h11xhbq4chw4hn2vczjwz8s6vrv";
+       version = "0.4.0";
+       sha256 = "0f9s1zss2i5xq67mv7wgvgbbba0fybqmnyr4vxjg28c2y5kvvggv";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play Developer SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-androiddeviceprovisioning" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-androiddeviceprovisioning";
+       version = "0.4.0";
+       sha256 = "0zynvy8720b26sp884da98cfnx9g7rcwgrj6n27lqmpw3lqmfh4r";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Android Device Provisioning Partner SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-androidmanagement" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-androidmanagement";
+       version = "0.4.0";
+       sha256 = "16xarhr93vpxawd7mg59zc53bl7xh63hpqjz869vhnf481vn4pmq";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Android Management SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-appengine" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-appengine";
-       version = "0.3.0";
-       sha256 = "131m4hqf84j4r2xjdbpsp95iww4sbxyw3lvn80pnddrzmvaj52hr";
+       version = "0.4.0";
+       sha256 = "14pf281j7q05dlz8i08m8082qixx1d5fjyi3zm19blsghx7hsn6a";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google App Engine Admin SDK";
        license = "unknown";
@@ -89433,10 +89948,10 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-apps-activity";
-       version = "0.3.0";
-       sha256 = "0ci85yml0sjjkwxcyfnb1xsw93zkvll0n6fb35kci1h07ywvl8d2";
+       version = "0.4.0";
+       sha256 = "1iv4q10h5n8mbkjgw2v7j9d9y4zvl0srpkw1kwd98h1chgg7hyhi";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Apps Activity SDK";
+       description = "Google Drive Activity SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -89445,8 +89960,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-apps-calendar";
-       version = "0.3.0";
-       sha256 = "0gjill8hdkhp385i0ay6isb8rm6zcxh6ymdb7389wv6nhzpf5p3x";
+       version = "0.4.0";
+       sha256 = "1dbxva37p8ww835y4sg1v01f12kr049ralsfqs3hkv516lsh7kxr";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Calendar SDK";
        license = "unknown";
@@ -89457,8 +89972,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-apps-licensing";
-       version = "0.3.0";
-       sha256 = "0l7yknlp4c2qh0a86q504a6h0gnb0s8jd4glii30qsnim52pijhp";
+       version = "0.4.0";
+       sha256 = "1sbbr7ihl415zx7axjwlvbfp646gr3fbb90n27wxh8pl4h2hlzkf";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Enterprise License Manager SDK";
        license = "unknown";
@@ -89469,8 +89984,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-apps-reseller";
-       version = "0.3.0";
-       sha256 = "119mlxr6yxmym9pgcmhix9m2s1s9i5zgh2pa3zzayk0jnqjjdpn4";
+       version = "0.4.0";
+       sha256 = "038qfmfpw3wi5v9x9wgbpv2agbjab8z5q0idwzfih8xjckfxd520";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Enterprise Apps Reseller SDK";
        license = "unknown";
@@ -89481,8 +89996,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-apps-tasks";
-       version = "0.3.0";
-       sha256 = "0mcnz2qiymjriqplypzl3gycn9cyc362a38962b4ci7g718wx74v";
+       version = "0.4.0";
+       sha256 = "1nfzl9hqsh2dwgxhwwx5w6yr6vvcbx0j72iprb42bp6hsv5lh5nx";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Tasks SDK";
        license = "unknown";
@@ -89493,8 +90008,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-appstate";
-       version = "0.3.0";
-       sha256 = "129f5gdiq5gbdi6dg6ddz1cq2m0jjp48q7vk5lkxrr82iig05jkw";
+       version = "0.4.0";
+       sha256 = "1z6k2kx20jgankjb1ynyhr0s9q8n2wln5ng8w0bd2gnflxnh26l7";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google App State SDK";
        license = "unknown";
@@ -89517,32 +90032,68 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-bigquery";
-       version = "0.3.0";
-       sha256 = "1zs497pxcpd87rhblg02bvi0wsqj16ym74v3kgm2mhwfw4spqv9z";
+       version = "0.4.0";
+       sha256 = "1c1gr2pwy9a0chysfi6v1imy15f5k689ys5lfnrgnl65ff0hqifq";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google BigQuery SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-bigquerydatatransfer" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-bigquerydatatransfer";
+       version = "0.4.0";
+       sha256 = "0gccvjc81c3kz88iy4kd7ihp57z5p2a83ma23c1rishfl2cr3p00";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google BigQuery Data Transfer SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-bigtableadmin" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-bigtableadmin";
+       version = "0.4.0";
+       sha256 = "10hcaalxhx2ds2drjqry27kk416q87hcd020nvfzsnj4hl0msl5q";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Bigtable Admin SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-billing" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-billing";
-       version = "0.3.0";
-       sha256 = "12scf28cj2rr0r4z1g0y4ik22gd3yh5sy2wdllydi05qv1cffqbf";
+       version = "0.4.0";
+       sha256 = "0ilfy5bn1wk95wg4496ap9szl9lp6sh1sdr9ngg6vral05jjf7ck";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Billing SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-binaryauthorization" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-binaryauthorization";
+       version = "0.4.0";
+       sha256 = "182ghkavwbi6y759235wrifwywyq2r7vc45xpgk979kcgk5jnjlk";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Binary Authorization SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-blogger" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-blogger";
-       version = "0.3.0";
-       sha256 = "08p1hjm29xsmvbb9dj7krr7i1wapn32g9wh283ia2zajys6zscl7";
+       version = "0.4.0";
+       sha256 = "16yv9rld0q2hi553k72c9z6854r7n8h3yx2hf8fam3zmkcr1qad4";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Blogger SDK";
        license = "unknown";
@@ -89553,20 +90104,32 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-books";
-       version = "0.3.0";
-       sha256 = "08g2ah36fk3a6val2p1wczd9b3h7zqp1a4ka7nrn3f9m04say5hs";
+       version = "0.4.0";
+       sha256 = "1zkz32mwarmfcjbqzjm3lpmdibfhgpra68cad2rh68bm2jkj71yf";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Books SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-chat" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-chat";
+       version = "0.4.0";
+       sha256 = "12af5z86s3xxhn8ci4aqls3h2q52msmnh5ygd0igmdq0vn0278ij";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Hangouts Chat SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-civicinfo" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-civicinfo";
-       version = "0.3.0";
-       sha256 = "0sgw2jgwki4nmyg9igavf8g2myxr8qnf4nif00jn236rg26pfr2d";
+       version = "0.4.0";
+       sha256 = "1cvb0wbmv7a78d3bannd2n3ymny90dbnn68d979qgd8nz45r0k5z";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Civic Information SDK";
        license = "unknown";
@@ -89577,14 +90140,86 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-classroom";
-       version = "0.3.0";
-       sha256 = "1bij8szdrxlcfz8xl5472k8rfl10ffnq7hlq38za2pmm9jfhn2dn";
+       version = "0.4.0";
+       sha256 = "0fyq54ddh2a8l0ai29x1dz4kcisx671mcg74p3c103iynfqnlyzr";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Classroom SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-cloudasset" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudasset";
+       version = "0.4.0";
+       sha256 = "0ki8r45p59hdakhdpz4sxxkfgnm908limvsd8z8afrnw5jg2h9ac";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Asset SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-clouderrorreporting" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-clouderrorreporting";
+       version = "0.4.0";
+       sha256 = "1ixc67805bv4klz1sxgjg83zydar1712n4zdpps6wnccl8rh0f3p";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Stackdriver Error Reporting SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudfunctions" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudfunctions";
+       version = "0.4.0";
+       sha256 = "1fz3yxhaffgn8414ak95qkliwwkd8k7kxv7kyx2sdahhk6f7gckw";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Functions SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudidentity" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudidentity";
+       version = "0.4.0";
+       sha256 = "1zfyc73xbdzwcmzn9pd8y118bwwgw02igd5knjwsvlv7jdjrsghh";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Identity SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudiot" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudiot";
+       version = "0.4.0";
+       sha256 = "0h30a94vj2g58y87l6k8amzxpxr71q94jli48pq81ddas78486i3";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud IoT SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudkms" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudkms";
+       version = "0.4.0";
+       sha256 = "14rhdja6wwrcdhh67avbi395n870rmyrnzfx7cqyfvvngpp4321v";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Key Management Service (KMS) SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-cloudmonitoring" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
@@ -89597,14 +90232,86 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-cloudprofiler" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudprofiler";
+       version = "0.4.0";
+       sha256 = "188c11fn4cqf32d6jp0dfql4cg4fwn85hlw59q54i2yvpkxmw666";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Stackdriver Profiler SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudscheduler" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudscheduler";
+       version = "0.4.0";
+       sha256 = "13yx14k78vmfdslhj5wcd8kqnh77dy0svc1d2hhbb6qazs523liq";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Scheduler SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudsearch" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudsearch";
+       version = "0.4.0";
+       sha256 = "01ra2xwqp33v1izmsx08xwxnif3qmgz51hsgmib1l409p425bzy0";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Search SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudshell" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudshell";
+       version = "0.4.0";
+       sha256 = "0j1f9b050vifnsdp8hby3sry77wfvx7856z92xal2adgv23qcrv1";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Shell SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-cloudtasks" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-cloudtasks";
+       version = "0.4.0";
+       sha256 = "02dg92n6q6j5fzvm018dsa09n1ks1dx1bh6sjl74d8wqksnzsnfr";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Tasks SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-cloudtrace" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-cloudtrace";
-       version = "0.3.0";
-       sha256 = "1r2whm4s5dwhg9davw9qpcabwhpasyfd7qkjw471xnpnwrq4vcb6";
+       version = "0.4.0";
+       sha256 = "0jgpx5aln442m1zgwp44c2hlwygjkvzlxyb9lh8jb1m4yvigwmrd";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Cloud Trace SDK";
+       description = "Google Stackdriver Trace SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-composer" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-composer";
+       version = "0.4.0";
+       sha256 = "0r28qibn9sin49gfnzqwkxd86lp4jczq3s10ry3j84rnjn6rnwf6";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Composer SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -89613,22 +90320,46 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-compute";
-       version = "0.3.0";
-       sha256 = "0v902dgjn0hzf42di0kr159p9scpnsha7wxap4fj933x5pv7c97s";
+       version = "0.4.0";
+       sha256 = "16cfb8z1aycc9zgdasfp1xxihdnb92wh0kg5gw7xkfbqxvh1gbfy";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Compute Engine SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-consumersurveys" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-consumersurveys";
+       version = "0.4.0";
+       sha256 = "0ssk3b4iq6977ivs3zki6i4bnvwcyr9sf6pay3yi17g9r4g3fxqc";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Consumer Surveys SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-container" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-container";
-       version = "0.3.0";
-       sha256 = "1vxl3k48mdfn3rnlld5rmgkjv30pfvg9agz6k2v9pbci5i9kbl8i";
+       version = "0.4.0";
+       sha256 = "1jx33ziy5lmdaxiipdd6hb3qzhy1zflc3jmzhjax9lsvla8j2krx";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Container Engine SDK";
+       description = "Google Kubernetes Engine SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-containeranalysis" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-containeranalysis";
+       version = "0.4.0";
+       sha256 = "0hqkm4xjbw927pazvcawa87kfyzk7x97k3ic85q8a8zy2gc30vsg";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Container Analysis SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -89637,10 +90368,10 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-containerbuilder";
-       version = "0.3.0";
-       sha256 = "15k8d8b58hggfw5izdmzkl44jkaiv1l0gfx237ciwmjjvaw5fdfy";
+       version = "0.4.0";
+       sha256 = "18ggnqngj564mbm3zm5ip8kpc1diwgvxbr51qz60jcymwlgrzk50";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Cloud Container Builder SDK";
+       description = "Google Cloud Build SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -89654,8 +90385,8 @@ self: {
      }:
      mkDerivation {
        pname = "gogol-core";
-       version = "0.3.0";
-       sha256 = "140chk0fb35zi7y0p908c7irwhqcgdw45iqpmrzzf2p238wlza7z";
+       version = "0.4.0";
+       sha256 = "1bfmdhlf5l612mwln1may5l2vqlps2k8hhxsbkx8h4n1gblriic2";
        libraryHaskellDepends = [
          aeson attoparsec base bifunctors bytestring case-insensitive
          conduit dlist exceptions hashable http-api-data http-client
@@ -89672,8 +90403,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-customsearch";
-       version = "0.3.0";
-       sha256 = "075r7j4z9i1jbw6hznrq3ndb23yrp9xpqmwq64laqmh4mw3c47zj";
+       version = "0.4.0";
+       sha256 = "1iq951qmm264w1lkq958fw90fcvzjsq4skz73kim4xvgiwr4q7kj";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google CustomSearch SDK";
        license = "unknown";
@@ -89684,8 +90415,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-dataflow";
-       version = "0.3.0";
-       sha256 = "1cvzhvfipjpvprhgw2rdw9xsrkyka7cdfdk9716x4admly221qcx";
+       version = "0.4.0";
+       sha256 = "0k2dlr938ilqbj56z5p75fs6yl8q6qbkfld7rbay1pnx9ss6yf67";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Dataflow SDK";
        license = "unknown";
@@ -89696,8 +90427,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-dataproc";
-       version = "0.3.0";
-       sha256 = "1b1s148xslz23ibcrx0gifim6kc5f3fsgfdnwh2n4bp0djvp8zy0";
+       version = "0.4.0";
+       sha256 = "0h3y503chr8srqjnk1hgvn4naayp09yvp0gf9np8da9mdxwk98c6";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Dataproc SDK";
        license = "unknown";
@@ -89708,8 +90439,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-datastore";
-       version = "0.3.0";
-       sha256 = "0wdxvslimfhfm0nw8qv88av14gxjpfif9rxxp3gv8png0qf1qs25";
+       version = "0.4.0";
+       sha256 = "018qjg7vwspd86fdzxsag732d1x81yag6h8bw5arq38cq50ak3fx";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Datastore SDK";
        license = "unknown";
@@ -89720,8 +90451,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-debugger";
-       version = "0.3.0";
-       sha256 = "05qjl7lg62xc5y6yycn98yk6d0qpk60caafw7q9drrgrdz5k7s7v";
+       version = "0.4.0";
+       sha256 = "1q3nsda0w6zkl0j49l1ry6mr030b65mzf6hylny1gxxdy2mypq3l";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Stackdriver Debugger SDK";
        license = "unknown";
@@ -89732,8 +90463,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-deploymentmanager";
-       version = "0.3.0";
-       sha256 = "01lc27xp2gry9fws5ysq46hld30fxh4lfr7p9lw4985ir82llb9s";
+       version = "0.4.0";
+       sha256 = "123m18nqjfgdmgrbl6b6kwppnq16bd7i3gn7mjdlrk6dm6wh84j0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Deployment Manager SDK";
        license = "unknown";
@@ -89744,32 +90475,68 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-dfareporting";
-       version = "0.3.0";
-       sha256 = "0dhayxwi4pjbj73gxflgk1gp3dvjw4vb07ai9nq22flac1xl1si7";
+       version = "0.4.0";
+       sha256 = "0jsv73zmdkm1lz0kk41yqayy07cfz4c2xn7q3vlg85ksv7jnn5ha";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google DCM/DFA Reporting And Trafficking SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-dialogflow" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-dialogflow";
+       version = "0.4.0";
+       sha256 = "1qma0gilizalyrwafw7rvpqmyc5vcsg4pds6f089qhxm42jwcmlk";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Dialogflow SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-digitalassetlinks" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-digitalassetlinks";
+       version = "0.4.0";
+       sha256 = "1lvgk9ba0l5i39zvswqbmwhhpsq0bijis6gp6n9wq30bgzf9a8vq";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Digital Asset Links SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-discovery" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-discovery";
-       version = "0.3.0";
-       sha256 = "1j2j3zxqq95cd50cdwsvyn633x61fwlghld8nhn1hy12g9l7xdf8";
+       version = "0.4.0";
+       sha256 = "1nvhmh95k1z9q4s1lfv078dlv33lm1qkwq5hkd0nysqaibfgql5x";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google APIs Discovery Service SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-dlp" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-dlp";
+       version = "0.4.0";
+       sha256 = "1hbd1bld98k7am5gr0569vsdzgd9w95nx3z40lhbr23f6fybv3w7";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Data Loss Prevention (DLP) SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-dns" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-dns";
-       version = "0.3.0";
-       sha256 = "18af36fx7w0ybcfiacfih7fyvri0rxlm4920yigmgsx551rgrm5l";
+       version = "0.4.0";
+       sha256 = "1y0n41pq031kcphpxvr4fzrvdgy4imfmkb5frazgb3acx874pqwc";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud DNS SDK";
        license = "unknown";
@@ -89780,8 +90547,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-doubleclick-bids";
-       version = "0.3.0";
-       sha256 = "0gqlxdnxf2hqdaczvd0gi3ch3p23lk9mjd0xk03h6lhr8c2mx60c";
+       version = "0.4.0";
+       sha256 = "1f1x12gcab5lz1yig3p7b9fxdwr1mj4c5r7w1c97awg4wa4qyv61";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google DoubleClick Bid Manager SDK";
        license = "unknown";
@@ -89792,8 +90559,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-doubleclick-search";
-       version = "0.3.0";
-       sha256 = "1wwsv0gbqcjd6xmz7pqjv9hyfg20hwwnxld46yjgiwsyadxrd54d";
+       version = "0.4.0";
+       sha256 = "0mzwg6njbdvn0y3qqnal919gsj5fi8fcdsn6f438dfg481g93igk";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google DoubleClick Search SDK";
        license = "unknown";
@@ -89804,20 +90571,44 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-drive";
-       version = "0.3.0";
-       sha256 = "1l353bwhkw1a3pv2ngjddgiilazq4qds3askkxxyajxzy5f19blz";
+       version = "0.4.0";
+       sha256 = "1k2ndnqrnc1y5ymic1g6jpigg2vg3k6y1j3mm413zh5p7lvx4ngy";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Drive SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-driveactivity" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-driveactivity";
+       version = "0.4.0";
+       sha256 = "0d4mbp7jryma7lr63cy819986q3plc4cgqfn217gydq7ajdzpqds";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Drive Activity SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-file" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-file";
+       version = "0.4.0";
+       sha256 = "161xmzxsjynnfd51df7q553bmdzgmyvddd2dn84b3hc82n3xj4km";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Filestore SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-firebase-dynamiclinks" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-firebase-dynamiclinks";
-       version = "0.3.0";
-       sha256 = "096rc42f6ajw7biys45zaz4wgwxyqh67js6ihj8aqi4w1b05j3zz";
+       version = "0.4.0";
+       sha256 = "0qckmvkrgwa79c0zg1dlr0ihz666yfg2kilanjir0yylax2w87lb";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Firebase Dynamic Links SDK";
        license = "unknown";
@@ -89828,20 +90619,56 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-firebase-rules";
-       version = "0.3.0";
-       sha256 = "0mrq1gp3s770lybwlzy126g8fx1kasqfh1qjd8lczga186972pqq";
+       version = "0.4.0";
+       sha256 = "0j8wd8vwbpiwkhijrlh9d4c004sqy0m99qxz9sv23nakmnmq04d0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Firebase Rules SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-firebasehosting" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-firebasehosting";
+       version = "0.4.0";
+       sha256 = "1g05b90fpyl2wqi3w0w6zp4qmzc82j4qvlja0ra5vnid129l5ll2";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Firebase Hosting SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-firebaseremoteconfig" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-firebaseremoteconfig";
+       version = "0.4.0";
+       sha256 = "0x6k93d8gdff2byjwk47z84rmdbsr676nml1638mvq6vwx1d4zv1";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Firebase Remote Config SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-firestore" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-firestore";
+       version = "0.4.0";
+       sha256 = "07x7ksyx91wisah8lmmq3p4cln1wx1wzbyc2cwb5wp0n78r83hdh";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Firestore SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-fitness" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-fitness";
-       version = "0.3.0";
-       sha256 = "1awl1c1z4bcph8b6wgw34vyly7r6svs9h276h8h97z427006p1mv";
+       version = "0.4.0";
+       sha256 = "0170r4pph2pfsp4phfq8sjj63cz6sn5nwlqsv8810zli4ghzrcsa";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Fitness SDK";
        license = "unknown";
@@ -89852,8 +90679,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-fonts";
-       version = "0.3.0";
-       sha256 = "0p2ckncnrdgkjqp67l0mygqp80nkp7w3p7plhmraxw2wrjpy15mv";
+       version = "0.4.0";
+       sha256 = "11cjwnil31sskinfzfgqcq1p5d8c7gzackba5ap5kydvs9l7k6hf";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Fonts Developer SDK";
        license = "unknown";
@@ -89876,8 +90703,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-fusiontables";
-       version = "0.3.0";
-       sha256 = "0icaa7zdblgs180gww0w4ffffim9fzb4qbl1pwjyvxa6b7vhrks7";
+       version = "0.4.0";
+       sha256 = "0rb3h779wy1rw1hh0y1sdvz8wg31dbsa0980wbj12jlna13qaw82";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Fusion Tables SDK";
        license = "unknown";
@@ -89888,8 +90715,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-games";
-       version = "0.3.0";
-       sha256 = "0r0x1g8wkq6vn4hk655wkl8fpfjlqppb0w9gscz99qsvv1gm16dz";
+       version = "0.4.0";
+       sha256 = "0asy79mx2aixh9fylzczr0d8wghzgkhf1xvssmc65w41gdw9w2gg";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play Game Services SDK";
        license = "unknown";
@@ -89900,8 +90727,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-games-configuration";
-       version = "0.3.0";
-       sha256 = "04g2kiyzhnyczxl6648gzl14wfszxiihyajvc7428whp54b3b4yg";
+       version = "0.4.0";
+       sha256 = "08g29wc9x872mq2179r9sq8sy7b8mbl4q2ak0z9wcknckn6ziq0c";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play Game Services Publishing SDK";
        license = "unknown";
@@ -89912,8 +90739,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-games-management";
-       version = "0.3.0";
-       sha256 = "192phwrhnsnanq3gf7ss3dsflvnkzf058r1jnb9vqf5035mckb4p";
+       version = "0.4.0";
+       sha256 = "1j43bfb0b4xmbjhzh732mncwqlz0j0vfx032kscfy4sx9hbb2kva";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play Game Services Management SDK";
        license = "unknown";
@@ -89924,8 +90751,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-genomics";
-       version = "0.3.0";
-       sha256 = "0d9i4jlv09fc4ry6qsdypkmx3faj6i5m9c6xv3xys1d06v4mzxkf";
+       version = "0.4.0";
+       sha256 = "1n0iqmfryqzslhq14h7sg2fxis8wbl0lkxbmcb6v51yi3cbp3ckv";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Genomics SDK";
        license = "unknown";
@@ -89936,8 +90763,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-gmail";
-       version = "0.3.0";
-       sha256 = "0h9z55bcdyp0as0jzv5wj89v71fz2n75pg8dhwg90iw1pp3rrg83";
+       version = "0.4.0";
+       sha256 = "0fwayrrd510jm1qvsnqckar3hhvq7s2sbpzqxkj4hpgh221rmi7f";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Gmail SDK";
        license = "unknown";
@@ -89948,8 +90775,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-groups-migration";
-       version = "0.3.0";
-       sha256 = "0c676dk7x62bdv8nr8wsk1icd7v93060zjbzwzl2xi46q0j59dmk";
+       version = "0.4.0";
+       sha256 = "1d3r5qkcj9370ykg54lcfh0qmj5fs0al6k8zdjpqybr1rpfb2pnn";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Groups Migration SDK";
        license = "unknown";
@@ -89960,8 +90787,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-groups-settings";
-       version = "0.3.0";
-       sha256 = "1xy466x9xcbi7scf7fpnc5cy47hgsmdcg17hqzys4bp86sdc6738";
+       version = "0.4.0";
+       sha256 = "0z7ljg2k99n0rmgy85sp1wqvmybl48y2cv91p5b2kz9jrn3bvg60";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Groups Settings SDK";
        license = "unknown";
@@ -89972,32 +90799,80 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-iam";
-       version = "0.3.0";
-       sha256 = "1fn8jx5hq4dxh2i1xf4cbmbsbjwxcplxxh7har1ai4z9ya1zghxs";
+       version = "0.4.0";
+       sha256 = "04r8igvai15rh61pskg6pa4zgrl5ik0v4xk3kqqp8z9i927h1k1d";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Identity and Access Management (IAM) SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-iamcredentials" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-iamcredentials";
+       version = "0.4.0";
+       sha256 = "0a5mx6fxp6k675bhysdpr2lg2i02y7x8a9w06gqqy77wa7p7a1jj";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google IAM Service Account Credentials SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-iap" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-iap";
+       version = "0.4.0";
+       sha256 = "0ri312mp793ki23bp5kdlhpww2xj56p3zh5j865jvbsphm0jccvz";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Identity-Aware Proxy SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-identity-toolkit" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-identity-toolkit";
-       version = "0.3.0";
-       sha256 = "1mdkzd5gb8nlaf5nj04fsl97ghyzpkmr4w93pcd5vsr8yxy3lkwz";
+       version = "0.4.0";
+       sha256 = "0sw4ddfbd9x3h2w76y7r3l1rjmqdw1zv1haacsi21ipv1ic5jgf3";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Identity Toolkit SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-indexing" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-indexing";
+       version = "0.4.0";
+       sha256 = "0l3g0lyldf6m83jzrpk3h0jvz6h6w9jah2ink9p7d9pszjvnwwq5";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Indexing SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-jobs" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-jobs";
+       version = "0.4.0";
+       sha256 = "0d0mr7fmikxkwxws77cnsf2mvs2g6lsa993bbxlzn2qpal9h9qrs";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Talent Solution SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-kgsearch" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-kgsearch";
-       version = "0.3.0";
-       sha256 = "0kldw64ff2p8h8mfdfbplxfk3jinxc8ibr33wa1qzpfzixb72v2n";
+       version = "0.4.0";
+       sha256 = "080391qg2vzw8ana00azdwjdrkwx0k7a1n0l341dgmdqcj0w02rh";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Knowledge Graph Search SDK";
        license = "unknown";
@@ -90008,8 +90883,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-language";
-       version = "0.3.0";
-       sha256 = "0ny2d5bv9dxn1w8rwzv5m7lr5g8akrxqvfhs15bwk87fxdainz5j";
+       version = "0.4.0";
+       sha256 = "0j0z2x4h3db2gr1pham390xx66rili6yi68slr9hydfj5brm9129";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Natural Language SDK";
        license = "unknown";
@@ -90028,12 +90903,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-libraryagent" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-libraryagent";
+       version = "0.4.0";
+       sha256 = "0b90mvy1wj6dv6403wvm5qh0qdzfdf3ck9h8cd0bvf95iraknxly";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Library Agent SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-logging" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-logging";
-       version = "0.3.0";
-       sha256 = "1i5q2qqr041qxn458a6300z07idbz17srix9kr2sm3mxbvc5h04g";
+       version = "0.4.0";
+       sha256 = "1ln3m7n0lksjd8sbdy3dvnrixq0gv86jh643chnpdif24yradkqp";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Stackdriver Logging SDK";
        license = "unknown";
@@ -90044,8 +90931,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-manufacturers";
-       version = "0.3.0";
-       sha256 = "0211aq7gjmpkhvcqf7fyrwrhdfsn8k5g1qw9gjsisxq0m873i6w0";
+       version = "0.4.0";
+       sha256 = "0qar60zzbnpnpy1154ccynwn2k0sdkmrvxvlscjswsqhgdpbrziw";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Manufacturer Center SDK";
        license = "unknown";
@@ -90080,8 +90967,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-mirror";
-       version = "0.3.0";
-       sha256 = "0ckh2bkjd8c7ybc2yc295wgn0z9kmp471kfkxkjl3swb9dab3fhm";
+       version = "0.4.0";
+       sha256 = "1vfwziz3jyhz7k96hdrrlvndxnnvqysl9bg0ipcss2h2aiha5yd0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Mirror SDK";
        license = "unknown";
@@ -90092,10 +90979,10 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-ml";
-       version = "0.3.0";
-       sha256 = "1qkk8v0yhdyphi5r18x4wawvhn0vwsfbz0gjvrf5mr0sdd80qhav";
+       version = "0.4.0";
+       sha256 = "198hid538lxwav21r0pxkb57rlb6wzzgyjfylc20m02p72790858";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Cloud Machine Learning SDK";
+       description = "Google Cloud Machine Learning Engine SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90104,8 +90991,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-monitoring";
-       version = "0.3.0";
-       sha256 = "03jslg15crnngarylydybb48vwq338hsb260mk4riahkg78kd7ga";
+       version = "0.4.0";
+       sha256 = "0k0fxnym1xg0jvvssys76xvdx39jicd6cd507qg47izww0vzv618";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Stackdriver Monitoring SDK";
        license = "unknown";
@@ -90116,20 +91003,32 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-oauth2";
-       version = "0.3.0";
-       sha256 = "0fdjq6kvh04csi29g4nagmji5vqprvwra2gas42n79rq2qhxfx5n";
+       version = "0.4.0";
+       sha256 = "07vjw6xwbrvihwhsy7v28gw9ww71skvscc0h21lgdibhksza2mzb";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google OAuth2 SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-oslogin" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-oslogin";
+       version = "0.4.0";
+       sha256 = "0k8g6lmclzhccdz5zyb4pnzv71d9cn429gi6px1jrls3w0ai8jih";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud OS Login SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-pagespeed" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-pagespeed";
-       version = "0.3.0";
-       sha256 = "1k6n60w4z77fyy5bnsab8bdgr490zfb753m3ljsc7vxwqqfiqhrx";
+       version = "0.4.0";
+       sha256 = "0jgkvkpk1lw7jcjc04n8p4dw7m1by4jzi6i0c3r72sjiflmvxds3";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google PageSpeed Insights SDK";
        license = "unknown";
@@ -90140,8 +91039,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-partners";
-       version = "0.3.0";
-       sha256 = "0xhhmsplvfmsi860skrgpzzz3lixa0qcx73w9cv6da679fh0ddfv";
+       version = "0.4.0";
+       sha256 = "1035fn0ifypfv69ks9z1c960g28vkwkcfix1d01cmkmzn4a0m0wa";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Partners SDK";
        license = "unknown";
@@ -90152,32 +91051,56 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-people";
-       version = "0.3.0";
-       sha256 = "0j2frq599kjrv0wl9bpmpglw51wcjid2ysmm50hhlpbv78z55sfv";
+       version = "0.4.0";
+       sha256 = "1x5vz0i722fj6ps7ggmjb2xnxbbyrln2s3940w575gb79c0lfji3";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google People SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-photoslibrary" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-photoslibrary";
+       version = "0.4.0";
+       sha256 = "0j2z2vfv05fmmkj8w4yw5xc13q0n2mmq9crahp3my3g74a5i23i4";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Photos Library SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-play-moviespartner" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-play-moviespartner";
-       version = "0.3.0";
-       sha256 = "0v1cs21y94m4ma414nann6k1mc0jfdyj5ariy9bm6hyqbd3c60zc";
+       version = "0.4.0";
+       sha256 = "0wrhx81pph7yw0a613k66l1p9h21y9vadi3ax8ah5ciy1vxnymh8";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Play Movies Partner SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-playcustomapp" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-playcustomapp";
+       version = "0.4.0";
+       sha256 = "1hb0498mm8fxl93bwjr633yi371kib27nrd7ba3nylrnv21bxp8k";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Play Custom App Publishing SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-plus" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-plus";
-       version = "0.3.0";
-       sha256 = "0qwswkjcv0i8m23y7dm9yrk343m3kdckg6srzi9q2jfip6h9hv8v";
+       version = "0.4.0";
+       sha256 = "0n546pnmvsfjp32xy2xcqlns1f06ipx0ll0kiblsalrq16gd2bcr";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google + SDK";
        license = "unknown";
@@ -90188,20 +91111,32 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-plus-domains";
-       version = "0.3.0";
-       sha256 = "0d0aijvdl2z9prv6qs6qriw54d6z9ljpl2nc5zwwk3647s62kvvi";
+       version = "0.4.0";
+       sha256 = "07nz7chwi9mls8i3h949p1ip7bfd39n61f1928x1ffik3kzrybpv";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google + Domains SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-poly" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-poly";
+       version = "0.4.0";
+       sha256 = "1ixidwaczgsys7pnj4pf67j61pa250nhvb9ip0fb9lb93l0ykijd";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Poly SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-prediction" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-prediction";
-       version = "0.3.0";
-       sha256 = "136jrwlwwygz4icl8c5c1bj1l7j9lypc5qxkygs6azc3x3l8ih6g";
+       version = "0.4.0";
+       sha256 = "06miyjhxvyp05nvdni56h4ldhs0ca3sl3n4nrx8fc6s2dam83q8b";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Prediction SDK";
        license = "unknown";
@@ -90212,8 +91147,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-proximitybeacon";
-       version = "0.3.0";
-       sha256 = "1f54km4v9mgil6p12vvziwv5v00d23l5rvk66yl4h614mh402m2v";
+       version = "0.4.0";
+       sha256 = "17gmd37mrg86afbx3rn4y4c48k8mi81dwrc4697rbhripviqf4fm";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Proximity Beacon SDK";
        license = "unknown";
@@ -90224,8 +91159,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-pubsub";
-       version = "0.3.0";
-       sha256 = "1c2qwqmq3bjfcd322kpyyxfdhsbyxq3r2v614v14dm0kr4cxqnik";
+       version = "0.4.0";
+       sha256 = "0cjdmfzhxk3rb55q2aza8vs0p1p51j1i5ypnafwcnhvx90910074";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Pub/Sub SDK";
        license = "unknown";
@@ -90236,22 +91171,46 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-qpxexpress";
-       version = "0.3.0";
-       sha256 = "10v82f2bkn4i0w8gq79skagksi13p5i3280cb50x206a8cy9j350";
+       version = "0.4.0";
+       sha256 = "02p4jncgfcr8jbwldjyc2zn7p6nwbjccw8la1dy9dy2c863pvjrj";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google QPX Express SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-redis" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-redis";
+       version = "0.4.0";
+       sha256 = "1jka9qfnhsrg3i7d7adcigwimffp3w3fm65dvz905d5sk0fkja0j";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Memorystore for Redis SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-remotebuildexecution" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-remotebuildexecution";
+       version = "0.4.0";
+       sha256 = "1p2llw3l79313hp3lmd2gvbfhxgyzw6g4yw08psi0zb3iqz5gqaj";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Remote Build Execution SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-replicapool" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-replicapool";
-       version = "0.3.0";
-       sha256 = "1kjkf7bykmz5wzndj7h0yzwfds56m34d0jvq7m1rkhp2qnn1v1jl";
+       version = "0.4.0";
+       sha256 = "1xdspcwbcfd48gf80i6dwnhllnbm4rh8c1wfk31gs52y5w3haxgd";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Compute Engine Instance Group Manager SDK";
+       description = "Google Replica Pool SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90260,8 +91219,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-replicapool-updater";
-       version = "0.3.0";
-       sha256 = "14gm5wfay5d079hn39fcjwxfsz8pd02cc60id7jsxxc4jbyxjq42";
+       version = "0.4.0";
+       sha256 = "0xw7js7b1w633z56bq7lz4kw7m2gz7c4my3gc868s4xv4a4hzsga";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Compute Engine Instance Group Updater SDK";
        license = "unknown";
@@ -90272,8 +91231,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-resourcemanager";
-       version = "0.3.0";
-       sha256 = "0n2j9liwx5zd2flzmrq2z2hahbbgw2wx53d6nqykvaf5g3vc6l6b";
+       version = "0.4.0";
+       sha256 = "04kvnzf20km94dx6znx3zravqi3khl3kws6y9rxwjivhiyim11dp";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Resource Manager SDK";
        license = "unknown";
@@ -90296,10 +91255,10 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-runtimeconfig";
-       version = "0.3.0";
-       sha256 = "004k1zy27gk98xh0h3c7ll3zxk2qif31znwnnyyxi30gmwlg19sj";
+       version = "0.4.0";
+       sha256 = "16nykcs4iknqnyj3p1wdqvdb5sbmg0mqf1qvm291q3vsf9hsapjb";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Cloud RuntimeConfig SDK";
+       description = "Google Cloud Runtime Configuration SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90308,10 +91267,10 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-safebrowsing";
-       version = "0.3.0";
-       sha256 = "0sxhc8l7ck20zbn2h7zgcywkygh0gp3mzg0mkgvx1qs4hp0nryvq";
+       version = "0.4.0";
+       sha256 = "1lw498y5dbb2yq9zigsw9cq5rkhzvvix94m4ir9d4ifa29xi9fmp";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Safe Browsing APIs SDK";
+       description = "Google Safe Browsing SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90320,10 +91279,46 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-script";
-       version = "0.3.0";
-       sha256 = "1l2bd93zndmi4zy28ygq63cz020q83viz2pyzy1j0hk0inji9k81";
+       version = "0.4.0";
+       sha256 = "08w8xln6wcvcp911vmfaixzgwfmg4jxazprkyrr8mwg4l45nr15s";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Apps Script Execution SDK";
+       description = "Google Apps Script SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-searchconsole" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-searchconsole";
+       version = "0.4.0";
+       sha256 = "1m49h2kcs2xkxk5hy3kvyi2s3wfylkdwkfh8ckkv0nfcjxz0nxvx";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Search Console URL Testing Tools SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-servicebroker" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-servicebroker";
+       version = "0.4.0";
+       sha256 = "15cd8hscgddwzafjcl5zj47qbv5pfs5x44h3h39315xyabps3l01";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Service Broker SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-serviceconsumermanagement" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-serviceconsumermanagement";
+       version = "0.4.0";
+       sha256 = "0mql8dlw07dmqrs98yb7wpgpz2dsa4y6npp9brakxpglnhqnncgi";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Service Consumer Management SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90332,8 +91327,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-servicecontrol";
-       version = "0.3.0";
-       sha256 = "0lfw9592arh01d3swxyp97glxqzc3cvcd3mn6pcm5q6dsjnda1hi";
+       version = "0.4.0";
+       sha256 = "08xy568njzlpgs7crrxizv0nv2j9jrm3f28mv2zc3pvpi6hvf6in";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Service Control SDK";
        license = "unknown";
@@ -90344,20 +91339,56 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-servicemanagement";
-       version = "0.3.0";
-       sha256 = "0qasq71k1bm9pm298sdivgnnr1sx9701nhmdn82lx8qglnxvd4v3";
+       version = "0.4.0";
+       sha256 = "1z9km7g6550kpwb9g0x43960xra2p0zaqc5kiy0pxzg84spwx300";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Service Management SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-servicenetworking" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-servicenetworking";
+       version = "0.4.0";
+       sha256 = "15f09ixf7lw0knb3vclj27fp8y7x818rhpkdvs2a22crsk7wai31";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Service Networking SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-serviceusage" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-serviceusage";
+       version = "0.4.0";
+       sha256 = "1dc56jlz9qyq3x2acpgb55hjdxdgq73bgik9yc57h0cr237g46pp";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Service Usage SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-serviceuser" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-serviceuser";
+       version = "0.4.0";
+       sha256 = "04akaaw9in2s1q4mf6w7isg3p8ck5mg904lanmidbsz01x70mflq";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Service User SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-sheets" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-sheets";
-       version = "0.3.0";
-       sha256 = "1kj179262lada2dh3pq129kc6p0rdzppxhmyglin5p2nnlzmkm9d";
+       version = "0.4.0";
+       sha256 = "12v7lrp6b0jiv7rcicxw7p9b7jr768wamhddvglib98ravcjr5n3";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Sheets SDK";
        license = "unknown";
@@ -90368,8 +91399,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-shopping-content";
-       version = "0.3.0";
-       sha256 = "05q68x2krghnv0j7f7bizhqpjgni2lqm03bp74ydcy7f2y675i55";
+       version = "0.4.0";
+       sha256 = "1pkh3f7yjh9g1crqkxpxl6fac4ca9rlnf6d4v2nhmjrjr8spwrmr";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Content API for Shopping SDK";
        license = "unknown";
@@ -90380,8 +91411,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-siteverification";
-       version = "0.3.0";
-       sha256 = "0pi4ljv20p5xjw11p99hksn8qz284pjv9f36i7hsdlf5bjd3v1dh";
+       version = "0.4.0";
+       sha256 = "1z4f8lmw5pgzj5h6pdayrgs83yhxbslkhp2c69ykl4n85qzsrdvk";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Site Verification SDK";
        license = "unknown";
@@ -90392,34 +91423,70 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-slides";
-       version = "0.3.0";
-       sha256 = "1bqyq767c4w8m2w9i78vn6psnv68687l0kwf6kbmn150gvg9c1mb";
+       version = "0.4.0";
+       sha256 = "0br96z0lvdqbbd4jr9qjisjx83a8w76hrqs68pxiyrpkdkq5vd81";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Slides SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-sourcerepo" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-sourcerepo";
+       version = "0.4.0";
+       sha256 = "1r57m08ggz8j9r6wya7wkhvnb8answ7mkvm9vsw7sp6vh6bfqn30";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Source Repositories SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-spanner" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-spanner";
+       version = "0.4.0";
+       sha256 = "1zk0078ig63rmqdxm02bw4x8a4a0dmlqw8f3cmay0w85991m0kkz";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Spanner SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-spectrum" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-spectrum";
-       version = "0.3.0";
-       sha256 = "0b596ajxy6ph28l46wnh03cr264ry4yki197bxls8spvzf8pwf5b";
+       version = "0.4.0";
+       sha256 = "1x8z4h7g7a60pkdb4j7j85i0wvn4vpi3zjm2g0m91gzghgwankx0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Spectrum Database SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-speech" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-speech";
+       version = "0.4.0";
+       sha256 = "1syq64vrdbvyi3ch4ppz2aczf37nc0whns00hv8rg7v2w6mwa3kf";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Speech SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-sqladmin" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-sqladmin";
-       version = "0.3.0";
-       sha256 = "164w0sqy75m1dsvi64kyrihy647j2gm0k7kar46m9wvym1gvcr3r";
+       version = "0.4.0";
+       sha256 = "1vqwylh42bi1rz8fykrpkdfsy06d901mnz5k8bikbq3fv5hc853m";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Cloud SQL Administration SDK";
+       description = "Google Cloud SQL Admin SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90428,8 +91495,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-storage";
-       version = "0.3.0";
-       sha256 = "18n4grbbwwg0ymh0gp6qhqdw7v9x81y70lxmslql0w9dlirg959v";
+       version = "0.4.0";
+       sha256 = "1cn41jzrwxyxwmb96wgb42pbslhh3rnydnyc6yvi37n6ngp49gab";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Storage JSON SDK";
        license = "unknown";
@@ -90440,20 +91507,44 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-storage-transfer";
-       version = "0.3.0";
-       sha256 = "0iwal6slja14gbdw2xjs79y3c6l56c1hvv0gyip3b3pz5i2xh4zb";
+       version = "0.4.0";
+       sha256 = "0vdqqlv0c45k0xp1plxj8jzrb5xbkj258v7q50zi1jijv0rqnj2i";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Storage Transfer SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-streetviewpublish" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-streetviewpublish";
+       version = "0.4.0";
+       sha256 = "0gyxs1kawqvbz851hd587zw999vbggv0z4hc5glc3saskl41nvpf";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Street View Publish SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-surveys" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-surveys";
+       version = "0.4.0";
+       sha256 = "1x15hdm3p7zfqadb5xnms0d6cp1gg1kk0xc81zls4hg6ryzpw43k";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Surveys SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-tagmanager" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-tagmanager";
-       version = "0.3.0";
-       sha256 = "0hsplk3yvkdglv38pl9cckc6csh23adasyvfdzw08kfbk8b1llgp";
+       version = "0.4.0";
+       sha256 = "0faihzsl4i4h7ns618c1dsih9a9xplvpixmnivpxyq4z18c7mzip";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Tag Manager SDK";
        license = "unknown";
@@ -90472,14 +91563,74 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-testing" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-testing";
+       version = "0.4.0";
+       sha256 = "1qfv2qi7l2dqv7bqj1ajbmpi77a4gcr2hywjyk2s3ixyv8m97j8g";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Testing SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-texttospeech" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-texttospeech";
+       version = "0.4.0";
+       sha256 = "18jxvrfr90jza5k75bmnf8g2z06z5m7c14hjshi39vf8x45sh8bv";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Text-to-Speech SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-toolresults" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-toolresults";
+       version = "0.4.0";
+       sha256 = "1kh3vyzgg21sy4pl9gxx06g2pvyd4n6b6m0slq0wi160zhwnbm3b";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Tool Results SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-tpu" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-tpu";
+       version = "0.4.0";
+       sha256 = "0wf8arqp75rzs862s9b6jg9s2g39kmrw60mgx1n5fn13vj88i931";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud TPU SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-tracing" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-tracing";
+       version = "0.4.0";
+       sha256 = "10k5fr7m8m60z5bd87y54j68kq09ybh95mnaw5fzy44xr3w7jbwy";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Tracing SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-translate" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-translate";
-       version = "0.3.0";
-       sha256 = "0bwmymiz1whc2rffxzlkva72j5cq51y8gxfl7lq5bg668p3grcvk";
+       version = "0.4.0";
+       sha256 = "0vkls4digsig95d54fzc6s222h9zvyqrivnyksyir6d897awfagn";
        libraryHaskellDepends = [ base gogol-core ];
-       description = "Google Translate SDK";
+       description = "Google Cloud Translation SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -90488,8 +91639,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-urlshortener";
-       version = "0.3.0";
-       sha256 = "1hmwk3pfxzyv0hxn33jms7c72yl8pnqnbfpza53ljq0abd749fcv";
+       version = "0.4.0";
+       sha256 = "05in4ydrjd9xjijb1mvzyn1z2caijg1jyby3lmd11i8bmwdjllq3";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google URL Shortener SDK";
        license = "unknown";
@@ -90508,12 +91659,36 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-vault" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-vault";
+       version = "0.4.0";
+       sha256 = "16jrgigvhcl05fykxfh6qa4zdbibdf9rhig2i367h121k28l56lw";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google G Suite Vault SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "gogol-videointelligence" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-videointelligence";
+       version = "0.4.0";
+       sha256 = "0xpayfcxcaq3lgbnr1q5yl8nx635kly6y1cdc18dq9a7y79fhxzb";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Cloud Video Intelligence SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-vision" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-vision";
-       version = "0.3.0";
-       sha256 = "1ssdz7cv3v3hz024m3djv4asj6lpd4c7a3dzrnxm9ipfbfmjb5f9";
+       version = "0.4.0";
+       sha256 = "0w5jini2yhm33pa38mkqkw2lpxjrxal9q6h1dh6kmr2lh489lcb0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Cloud Vision SDK";
        license = "unknown";
@@ -90524,20 +91699,32 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-webmaster-tools";
-       version = "0.3.0";
-       sha256 = "0rkpjwnb064i7256j0q8gnkynny596qrg79h2wviadmifz9gyixp";
+       version = "0.4.0";
+       sha256 = "1ahjxr2m4x3bn5hjk7sygkpwnh7cy75cw7jap3p8qr9akqc5pb48";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google Search Console SDK";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gogol-websecurityscanner" = callPackage
+    ({ mkDerivation, base, gogol-core }:
+     mkDerivation {
+       pname = "gogol-websecurityscanner";
+       version = "0.4.0";
+       sha256 = "1z6dk8a538ljkba82k9x8jlvwb9qxhc1wfm5h9fgyhwa671fhj3y";
+       libraryHaskellDepends = [ base gogol-core ];
+       description = "Google Web Security Scanner SDK";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol-youtube" = callPackage
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-youtube";
-       version = "0.3.0";
-       sha256 = "1sv7djr2x73n3w0cbxncyzz64kxn7pwydcyznqipni7xv6hi5s1j";
+       version = "0.4.0";
+       sha256 = "1vi8mmiagfq4i34q7hcw85mz02l7pjd9ri8g5vk62b8n1kki46lf";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google YouTube Data SDK";
        license = "unknown";
@@ -90548,8 +91735,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-youtube-analytics";
-       version = "0.3.0";
-       sha256 = "10888jai56jpw6snssclldmxn2my9vadrqm14dmrhl6sr3mabdbh";
+       version = "0.4.0";
+       sha256 = "1hq2g199i8wpr7br21ijsryk2dgv5rr7zryv5xsrql04mqiwq9d0";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google YouTube Analytics SDK";
        license = "unknown";
@@ -90560,8 +91747,8 @@ self: {
     ({ mkDerivation, base, gogol-core }:
      mkDerivation {
        pname = "gogol-youtube-reporting";
-       version = "0.3.0";
-       sha256 = "0j8xalrigh3rvxb8z009s6bs34nw68kwjvczm1hlx1fcifgjrp4f";
+       version = "0.4.0";
+       sha256 = "060bha9j7fsyhbq94md5c26dg2xqfzsfkw0jmqv3shsbjd1k4993";
        libraryHaskellDepends = [ base gogol-core ];
        description = "Google YouTube Reporting SDK";
        license = "unknown";
@@ -91865,8 +93052,8 @@ self: {
      }:
      mkDerivation {
        pname = "graphite";
-       version = "0.9.8.0";
-       sha256 = "1ylpa2kkbdhfgiq7g1kdlvjzs2ln3ag8pssp0widzz1p0is8ldm1";
+       version = "0.10.0.0";
+       sha256 = "0cgsn0nwixgcamg9yp4qsz88dmm3rdmkcl7ahlnpvksgw7llnxa8";
        libraryHaskellDepends = [
          base bytestring cassava containers deepseq graphviz hashable
          process QuickCheck random semigroups text unordered-containers
@@ -93072,8 +94259,8 @@ self: {
      }:
      mkDerivation {
        pname = "gtk";
-       version = "0.15.1";
-       sha256 = "1hhx6qcbd0qlwvi1d98vkmshrq1j7wiia0i3pwdidvfrjkn3aa7j";
+       version = "0.15.2";
+       sha256 = "179h4vpbv15hkl8h4k4jy5amnv1z6zv74qls0m7l2kv6sh36csar";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal gtk2hs-buildtools ];
        libraryHaskellDepends = [
@@ -95084,8 +96271,8 @@ self: {
      }:
      mkDerivation {
        pname = "hackport";
-       version = "0.5.6";
-       sha256 = "0im76n8487q08rmw8bn536qncrdhz9pjir5cxlf2myh7prrrrczs";
+       version = "0.6";
+       sha256 = "1fi3f90jd7s10iw1lcqhy8vfv27794sfsp7bjlb9rgab7jqf3wqv";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -95175,8 +96362,8 @@ self: {
     ({ mkDerivation, base, filepath, haddock-api }:
      mkDerivation {
        pname = "haddock";
-       version = "2.21.0";
-       sha256 = "1dkqhclhnjx6786vsmkw6k75kkq06cv1xcxkivm34l5pgnkwwqq8";
+       version = "2.22.0";
+       sha256 = "1k42z2zh550rl93c8pa9cg2xsanp6wvb031xvan6cmngnplmdib6";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base haddock-api ];
@@ -95256,8 +96443,8 @@ self: {
      }:
      mkDerivation {
        pname = "haddock-api";
-       version = "2.21.0";
-       sha256 = "0j6ixhq64nhjmq2ymhzdgz49ixdbffrrh8a96awl89d2kwdv3bnw";
+       version = "2.22.0";
+       sha256 = "149q4zlf4m7wcrr4af2n2flh0jxjsypshbc229vsj1m0kmz4z014";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base bytestring Cabal containers deepseq directory filepath
@@ -95327,29 +96514,6 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "haddock-library_1_5_0_1" = callPackage
-    ({ mkDerivation, base, base-compat, bytestring, containers, deepseq
-     , directory, filepath, hspec, hspec-discover, optparse-applicative
-     , QuickCheck, transformers, tree-diff
-     }:
-     mkDerivation {
-       pname = "haddock-library";
-       version = "1.5.0.1";
-       sha256 = "1cmbg8l5xrwpliclwy3l057raypjqy0hsg1h1743ahaj8gq10b7z";
-       libraryHaskellDepends = [
-         base bytestring containers deepseq transformers
-       ];
-       testHaskellDepends = [
-         base base-compat bytestring containers deepseq directory filepath
-         hspec optparse-applicative QuickCheck transformers tree-diff
-       ];
-       testToolDepends = [ hspec-discover ];
-       doHaddock = false;
-       description = "Library exposing some functionality of Haddock";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
   "haddock-library" = callPackage
     ({ mkDerivation, base, base-compat, bytestring, containers, deepseq
      , hspec, hspec-discover, parsec, QuickCheck, text, transformers
@@ -95587,8 +96751,8 @@ self: {
      }:
      mkDerivation {
        pname = "haiji";
-       version = "0.2.1.0";
-       sha256 = "054iyikik4n2qkpbpc4p1jikj7z6vgvcjhm3ay9mi9zwmz0mb3f8";
+       version = "0.2.1.2";
+       sha256 = "0jzyf5mqmigsjmif1nxysqk2rg1ad9d3590qmw71gx6d83qm4w2z";
        libraryHaskellDepends = [
          aeson attoparsec base data-default mtl scientific tagged
          template-haskell text transformers unordered-containers vector
@@ -96230,10 +97394,10 @@ self: {
      }:
      mkDerivation {
        pname = "hal";
-       version = "0.1.2";
-       sha256 = "0fflx0xism12cfdifwpiv0caxkm4f46yqhcwyrdwrdmq6q0pxdk2";
+       version = "0.2.0";
+       sha256 = "19binbpgkx04gx2apqa59rm32d8jr4m2v9xxfc2fd9v28gaa7cw2";
        revision = "1";
-       editedCabalFile = "09ng464s88dsfdwk4zdzi0yagy5mm41035p4glwiyhdqxc5n60yg";
+       editedCabalFile = "1pp82nv1r61rlykhllgldm2x6wvp8w4xjflx31bnba2444sn92mm";
        libraryHaskellDepends = [
          aeson base bytestring containers envy exceptions http-conduit
          http-types mtl text time
@@ -96879,8 +98043,8 @@ self: {
      }:
      mkDerivation {
        pname = "hapistrano";
-       version = "0.3.9.1";
-       sha256 = "0s2xhisyjx3d9rgzqcc09l2x3a8fkc5d7rdcrrcrgwz6vxcdv0pv";
+       version = "0.3.9.2";
+       sha256 = "04a0r5q6vlwxkp1gwp10fmi22brb77w02psz44zbvqbm02jf7vhd";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -97276,6 +98440,7 @@ self: {
        ];
        description = "Glue code for using Happstack with acid-state, web-routes, reform, and HSP";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "happstack-hamlet" = callPackage
@@ -100073,6 +101238,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-src-meta_0_8_1" = callPackage
+    ({ mkDerivation, base, containers, haskell-src-exts, HUnit, pretty
+     , syb, template-haskell, test-framework, test-framework-hunit
+     , th-orphans
+     }:
+     mkDerivation {
+       pname = "haskell-src-meta";
+       version = "0.8.1";
+       sha256 = "0cainxgsa206fc2ij5gv1zaaazvqwzp5bavimrvwbscpnscnm89n";
+       libraryHaskellDepends = [
+         base haskell-src-exts pretty syb template-haskell th-orphans
+       ];
+       testHaskellDepends = [
+         base containers haskell-src-exts HUnit pretty syb template-haskell
+         test-framework test-framework-hunit
+       ];
+       description = "Parse source to template-haskell abstract syntax";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-src-meta-mwotton" = callPackage
     ({ mkDerivation, base, containers, ghc-prim, haskell-src-exts
      , pretty, syb, template-haskell
@@ -101432,8 +102618,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "0.9.3";
-       sha256 = "17k51kh9vi2bkf6hfn50wpqsnc0qrclvphqy8wcmsz0n2ik8rb7h";
+       version = "0.10.1";
+       sha256 = "0z9qsjnzkvzgf0asrdigyph4i3623hkq10542xh0kjq56hnglcn2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102130,6 +103316,7 @@ self: {
        ];
        description = "Haskus web";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haskyapi" = callPackage
@@ -103061,8 +104248,8 @@ self: {
        pname = "haxr";
        version = "3000.11.3";
        sha256 = "1ab422ngg63w91a71j17swzzdxk0y2053fijml0illarcrd77cnj";
-       revision = "1";
-       editedCabalFile = "0h71nvlia8k7ykhywxbx79xj30g6ld0gqqmrdhyp3aip8ly6cb6y";
+       revision = "2";
+       editedCabalFile = "1spv34kjfnpk0j8wap73qwkkqzshb2lvwrg7c3rfpy712ndbsl2h";
        libraryHaskellDepends = [
          array base base-compat base64-bytestring blaze-builder bytestring
          HaXml HsOpenSSL http-streams http-types io-streams mtl mtl-compat
@@ -104105,18 +105292,12 @@ self: {
      }) {};
 
   "heaps" = callPackage
-    ({ mkDerivation, base, Cabal, cabal-doctest, directory, doctest
-     , filepath
-     }:
+    ({ mkDerivation, base }:
      mkDerivation {
        pname = "heaps";
-       version = "0.3.6";
-       sha256 = "1cnxgmxxvl053yv93vcz5fnla4iir5g9wr697n88ysdyybbkq70q";
-       revision = "3";
-       editedCabalFile = "0k6wsm1hwn3vaxdvw8p7cidxg7p8zply2ig4w4qrbpyjhl6dj9x9";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       version = "0.3.6.1";
+       sha256 = "0vg39qm8g69n10ys9v9knnaq5dqdjndj6ffy0xb78bwrr3rm5mci";
        libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base directory doctest filepath ];
        description = "Asymptotically optimal Brodal/Okasaki heaps";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -104275,18 +105456,13 @@ self: {
      }) {};
 
   "hebrew-time" = callPackage
-    ({ mkDerivation, base, HUnit, QuickCheck, test-framework
-     , test-framework-hunit, test-framework-quickcheck2, time
-     }:
+    ({ mkDerivation, base, hspec, QuickCheck, time }:
      mkDerivation {
        pname = "hebrew-time";
-       version = "0.1.1";
-       sha256 = "0ckridxf4rvhhp0k1mckbbbpzfs32l4mwg7n9mrmsggldpl7x6f7";
+       version = "0.1.2";
+       sha256 = "0as6fhk0vw5dxh44r8c916kf6ly51d36cng11y848wwshamy45j3";
        libraryHaskellDepends = [ base time ];
-       testHaskellDepends = [
-         base HUnit QuickCheck test-framework test-framework-hunit
-         test-framework-quickcheck2 time
-       ];
+       testHaskellDepends = [ base hspec QuickCheck time ];
        description = "Hebrew dates and prayer times";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -104336,8 +105512,8 @@ self: {
        pname = "hedgehog";
        version = "0.6.1";
        sha256 = "0xz10ycdm5vk9nrcym1fi83k19frfwqz18bz8bnpzwvaj0j41yfj";
-       revision = "2";
-       editedCabalFile = "1l0iw2jqdvxgfysfvp1x0s2pq3kyvpapjdjkx9pi4bkxpjpkvbza";
+       revision = "3";
+       editedCabalFile = "11ifv3yymhrzin3cmlrw298lyggqc1sxmbw6n5kpjrv8cnkw28x6";
        libraryHaskellDepends = [
          ansi-terminal async base bytestring concurrent-output containers
          directory exceptions lifted-async mmorph monad-control mtl
@@ -104380,6 +105556,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hedgehog-classes" = callPackage
+    ({ mkDerivation, aeson, base, containers, hedgehog, pretty-show
+     , transformers, wl-pprint-annotated
+     }:
+     mkDerivation {
+       pname = "hedgehog-classes";
+       version = "0.1.1.0";
+       sha256 = "1fi4n7g6daf9a8dzc876830jqdlc6pl5nyb9q7q9rffiv43sbmv2";
+       revision = "2";
+       editedCabalFile = "0m1ajqbg5k9k7xmgq5xm7s6l3lckr634bfsnbm9ydkr0cgs8rwcc";
+       libraryHaskellDepends = [
+         aeson base containers hedgehog pretty-show transformers
+         wl-pprint-annotated
+       ];
+       testHaskellDepends = [ aeson base containers hedgehog ];
+       description = "Hedgehog will eat your typeclass bugs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hedgehog-corpus" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -104470,7 +105665,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hedis_0_11_0" = callPackage
+  "hedis_0_12_0" = callPackage
     ({ mkDerivation, async, base, bytestring, bytestring-lexing
      , deepseq, doctest, errors, HTTP, HUnit, mtl, network, network-uri
      , resource-pool, scanner, stm, test-framework, test-framework-hunit
@@ -104478,8 +105673,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.11.0";
-       sha256 = "070m9jrv1jczrxscbrr0fln45harw2y9rcj9qnp4d9sj7m597vvy";
+       version = "0.12.0";
+       sha256 = "0p4blmyilc4piw9riripsix5v61r24y4ikr58b9gwwnvxdm99190";
        libraryHaskellDepends = [
          async base bytestring bytestring-lexing deepseq errors HTTP mtl
          network network-uri resource-pool scanner stm text time tls
@@ -104615,6 +105810,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hedn_0_2_0_1" = callPackage
+    ({ mkDerivation, base, containers, deepseq, deriving-compat
+     , hedgehog, megaparsec, parser-combinators, prettyprinter
+     , scientific, template-haskell, text, time, uuid-types, vector
+     }:
+     mkDerivation {
+       pname = "hedn";
+       version = "0.2.0.1";
+       sha256 = "16yi4x6g27zabgqwd4xckp5zibxq882919mmyyr95g56r7pm8v1j";
+       libraryHaskellDepends = [
+         base containers deepseq deriving-compat megaparsec
+         parser-combinators prettyprinter scientific template-haskell text
+         time uuid-types vector
+       ];
+       testHaskellDepends = [
+         base containers hedgehog megaparsec text time uuid-types vector
+       ];
+       description = "EDN parsing and encoding";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hedra" = callPackage
     ({ mkDerivation, base, doctest, haskeline, random }:
      mkDerivation {
@@ -105921,23 +107138,23 @@ self: {
 
   "heyting-algebras" = callPackage
     ({ mkDerivation, base, containers, free-algebras, hashable
-     , lattices, QuickCheck, tagged, tasty, tasty-quickcheck
-     , universe-base, unordered-containers
+     , lattices, QuickCheck, semiring-simple, tagged, tasty
+     , tasty-quickcheck, universe-base, unordered-containers
      }:
      mkDerivation {
        pname = "heyting-algebras";
-       version = "0.0.1.2";
-       sha256 = "132r0k0m8b7f8rkyay57k42kjl7nyzqv7942njkz6nwnhjg8i6ag";
+       version = "0.0.2.0";
+       sha256 = "027gdi1lqlj3xcsl4zzfflfswlz76an7in63xvjsx0gs9pxqny1j";
        libraryHaskellDepends = [
-         base containers free-algebras hashable lattices QuickCheck tagged
-         universe-base unordered-containers
+         base containers free-algebras hashable lattices semiring-simple
+         tagged universe-base unordered-containers
        ];
        testHaskellDepends = [
          base containers lattices QuickCheck tasty tasty-quickcheck
          universe-base
        ];
        description = "Heyting and Boolean algebras";
-       license = stdenv.lib.licenses.mpl20;
+       license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
@@ -106672,8 +107889,8 @@ self: {
        pname = "hidden-char";
        version = "0.1.0.2";
        sha256 = "167l83cn37mkq394pbanybz1kghnbim1m74fxskws1nclxr9747a";
-       revision = "2";
-       editedCabalFile = "1d0k297hxff31k0x5xbli6l7c151d2y9wq4w0x0prgagjc0l7z5n";
+       revision = "3";
+       editedCabalFile = "0f6qghr4i3ar993pjlswdd2rl671lrnxj8740i2yhn89z410vzsa";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        description = "Provides cross-platform getHiddenChar function";
@@ -106740,7 +107957,7 @@ self: {
 
   "hierarchical-spectral-clustering" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, cassava
-     , clustering, containers, eigen, fgl, filepath
+     , clustering, containers, directory, eigen, fgl, filepath
      , hierarchical-clustering, hmatrix, lens, managed, modularity, mtl
      , optparse-generic, safe, sparse-linear-algebra
      , spectral-clustering, streaming, streaming-bytestring
@@ -106749,8 +107966,8 @@ self: {
      }:
      mkDerivation {
        pname = "hierarchical-spectral-clustering";
-       version = "0.2.2.0";
-       sha256 = "0c0lv9vr8srb6bipjx70m7p5mr91hfhnymv8brwj6hllq4cp576m";
+       version = "0.3.0.1";
+       sha256 = "15k1mmfh5iklivz1w8fx0y9w7qivhvkj16xll9m0i9k1p8irlzwj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -106761,8 +107978,8 @@ self: {
          vector
        ];
        executableHaskellDepends = [
-         aeson aeson-pretty base bytestring cassava containers filepath
-         hmatrix lens optparse-generic safe text text-show vector
+         aeson aeson-pretty base bytestring cassava containers directory
+         filepath hmatrix lens optparse-generic safe text text-show vector
        ];
        description = "Hierarchical spectral clustering of a graph";
        license = stdenv.lib.licenses.gpl3;
@@ -107419,8 +108636,8 @@ self: {
      }:
      mkDerivation {
        pname = "hinterface";
-       version = "0.8.3";
-       sha256 = "10pm7hdir81f46d081rk3pc6nnlxhpksmd7qrh1vwyvad4nf9p55";
+       version = "0.9.0";
+       sha256 = "0hkz9p3ljfqvmf07pkkijav3lppvwvyp5hvlqbqcfplmv9n84wdb";
        libraryHaskellDepends = [
          array async base binary bytestring containers cryptonite deepseq
          exceptions lifted-async lifted-base memory monad-control
@@ -107963,8 +109180,8 @@ self: {
      }:
      mkDerivation {
        pname = "hjugement";
-       version = "2.0.0.20181030";
-       sha256 = "063d484ns520prgvb2b1szq33wx569fgbgrzvfrgpfcznra638fi";
+       version = "2.0.1.20190208";
+       sha256 = "10921dk9y460dmgy5dhkfxcsc96cxkw2xxziykizp8zhmzrdlwz6";
        libraryHaskellDepends = [
          base containers hashable unordered-containers
        ];
@@ -108070,8 +109287,8 @@ self: {
      }:
      mkDerivation {
        pname = "hleap";
-       version = "0.1.2.7";
-       sha256 = "1qpfwg69dzwzaf09q3pzkzwanzc9kb5zx733ck27g5xdsi79slsf";
+       version = "0.2.0.0";
+       sha256 = "0hh9r884kjw8gi7mcg74kzixzxxwzs1h67mg9z108kmlmnb742ry";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -108491,6 +109708,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hlivy" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-client
+     , http-types, lens, mtl, resourcet, text, transformers
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "hlivy";
+       version = "1.0.1";
+       sha256 = "1h3gi8i1c0793da1rpw01mqnrri23nca3m67n56id6ys3ld9901b";
+       libraryHaskellDepends = [
+         aeson base bytestring exceptions http-client http-types lens mtl
+         resourcet text transformers unordered-containers
+       ];
+       description = "Client library for the Apache Livy REST API";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "hlogger" = callPackage
     ({ mkDerivation, base, old-locale, time }:
      mkDerivation {
@@ -108531,6 +109765,8 @@ self: {
        pname = "hlrdb";
        version = "0.2.0.1";
        sha256 = "0rrpn3gsh2ck3skpc9d6mdprcac8xdxxc71m8y5jfi0yzh6priga";
+       revision = "1";
+       editedCabalFile = "0464nxq1q7cccfcm0wi9l3gjgppbpzg4vgm61g21x0l8fnvyv42q";
        libraryHaskellDepends = [
          base base64-bytestring bytestring cryptonite hashable hedis
          hlrdb-core memory random store time unordered-containers
@@ -108546,8 +109782,8 @@ self: {
      }:
      mkDerivation {
        pname = "hlrdb-core";
-       version = "0.1.2.2";
-       sha256 = "0qh4p354xzmcd6d6imv9qyflxj9g80rmbdyhf9bscjrqam0dy24b";
+       version = "0.1.3.0";
+       sha256 = "1rjvhgy1bv5kzf8xkmpjndzclq16gc1ihalzn3swg8iyh91pqh89";
        libraryHaskellDepends = [
          base bytestring hashable hedis lens mtl profunctors random time
          unordered-containers
@@ -109040,6 +110276,7 @@ self: {
        testHaskellDepends = [ base HUnit vector ];
        description = "HMEP Multi Expression Programming – a genetic programming variant";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hmidi" = callPackage
@@ -109224,20 +110461,20 @@ self: {
      }) {};
 
   "hnetcdf" = callPackage
-    ({ mkDerivation, base, c2hs, containers, directory, either, errors
+    ({ mkDerivation, base, c2hs, containers, directory, errors
      , filepath, HUnit, netcdf, QuickCheck, repa, test-framework
      , test-framework-hunit, test-framework-quickcheck2, transformers
      , vector
      }:
      mkDerivation {
        pname = "hnetcdf";
-       version = "0.4.0.0";
-       sha256 = "15fpn895r2sa6n8pahv2frcp6qkxbpmam7hd03y4i65jhkf9vskh";
+       version = "0.5.0.0";
+       sha256 = "1if09rnm6px1ba2pqvpvaxgvch0knjp9s4dbx0a5l1x10n52c340";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base containers either errors filepath repa transformers vector
+         base containers filepath repa transformers vector
        ];
        librarySystemDepends = [ netcdf ];
        libraryToolDepends = [ c2hs ];
@@ -109426,8 +110663,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoauth2";
-       version = "1.8.3";
-       sha256 = "1mx0ifkcji8d30f4ar50jraj1sz91n6v803yfb4zaj9wppw2iz57";
+       version = "1.8.4";
+       sha256 = "0k7ibzd5q4bh46m6b46x155n09dd474375k4605d7fl034i16lsx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -111477,8 +112714,8 @@ self: {
      }:
      mkDerivation {
        pname = "hpqtypes-extras";
-       version = "1.7.0.0";
-       sha256 = "07cfmaai4d2wb37qqir4apxfbad9n1hb5yj4zpx5aappl213d96f";
+       version = "1.7.1.0";
+       sha256 = "0fxa92lvw61d48dbgk24bcx2kjbw8k8gpzbbi7z2d8k3z2b9alfk";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers cryptohash
          data-default exceptions fields-json hpqtypes lifted-base log-base
@@ -116827,6 +118064,8 @@ self: {
        pname = "http-client";
        version = "0.5.14";
        sha256 = "0irnvrxlsr9f7ybvzbpv24zbq3lhxjzh6bavjnl527020jbl0l4f";
+       revision = "1";
+       editedCabalFile = "0xw5ac4cvcd4hcwl7j12adi7sgffjryqhk0x992k3qs1cxyv5028";
        libraryHaskellDepends = [
          array base blaze-builder bytestring case-insensitive containers
          cookie deepseq exceptions filepath ghc-prim http-types memory
@@ -116843,7 +118082,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "http-client_0_6_1" = callPackage
+  "http-client_0_6_1_1" = callPackage
     ({ mkDerivation, array, async, base, blaze-builder, bytestring
      , case-insensitive, containers, cookie, deepseq, directory
      , exceptions, filepath, ghc-prim, hspec, http-types, memory
@@ -116852,8 +118091,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-client";
-       version = "0.6.1";
-       sha256 = "0ryj5far7744c297ji9aaqcm56rpm2fyma8mbghli086nq4xiryl";
+       version = "0.6.1.1";
+       sha256 = "0dyrk1c90fj9z5fy68hngqlzxa1sd8abkh7y0higbd15sb1yml6x";
        libraryHaskellDepends = [
          array base blaze-builder bytestring case-insensitive containers
          cookie deepseq exceptions filepath ghc-prim http-types memory
@@ -117046,6 +118285,8 @@ self: {
        pname = "http-client-tls";
        version = "0.3.5.3";
        sha256 = "0qj3pcpgbsfsc4m52dz35khhl4hf1i0nmcpa445z82d9567vy6j7";
+       revision = "1";
+       editedCabalFile = "0llb5k8mz1h6zyv1nd433wwgyjsw7n8x0b1fwib312iiws43sz69";
        libraryHaskellDepends = [
          base bytestring case-insensitive connection containers cryptonite
          data-default-class exceptions http-client http-types memory network
@@ -118195,6 +119436,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hunit-dejafu_2_0_0_0" = callPackage
+    ({ mkDerivation, base, dejafu, exceptions, HUnit }:
+     mkDerivation {
+       pname = "hunit-dejafu";
+       version = "2.0.0.0";
+       sha256 = "0j48wg6nq90hgl3jfdiy020az5m8vcpbnfvxcpjci3vzd24c4gx9";
+       libraryHaskellDepends = [ base dejafu exceptions HUnit ];
+       description = "Deja Fu support for the HUnit test framework";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hunit-gui" = callPackage
     ({ mkDerivation, base, cairo, gtk, haskell98, HUnit }:
      mkDerivation {
@@ -118820,20 +120073,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-hspec-hedgehog_0_1_0_5" = callPackage
-    ({ mkDerivation, base, call-stack, hedgehog, hspec, HUnit
-     , transformers
+  "hw-hspec-hedgehog_0_1_0_7" = callPackage
+    ({ mkDerivation, base, call-stack, hedgehog, hspec, hspec-discover
+     , HUnit, transformers
      }:
      mkDerivation {
        pname = "hw-hspec-hedgehog";
-       version = "0.1.0.5";
-       sha256 = "0kznqpliqnahyayi1q08mfz4qwhqvz54hb8cv6r2ps3lyjnpmlfk";
-       revision = "2";
-       editedCabalFile = "0rnmwi88yj0xdnywwzswhcwgs6pj5s1m3vpgvbz31r4jpz8mvfkh";
+       version = "0.1.0.7";
+       sha256 = "0445b5ycr622qjann2yyri8ghkhkw0vqaqn2rlar9wq2ni3b85rv";
        libraryHaskellDepends = [
          base call-stack hedgehog hspec HUnit transformers
        ];
        testHaskellDepends = [ base hedgehog hspec ];
+       testToolDepends = [ hspec-discover ];
        description = "Interoperability between hspec and hedgehog";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -119081,25 +120333,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-mquery_0_2_0_0" = callPackage
+  "hw-mquery_0_2_0_1" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, dlist, hedgehog, hspec
-     , hspec-discover, hw-hspec-hedgehog, lens, QuickCheck, semigroups
+     , hspec-discover, hw-hspec-hedgehog, lens, semigroups
      }:
      mkDerivation {
        pname = "hw-mquery";
-       version = "0.2.0.0";
-       sha256 = "006p6j77gd68mrdfwghx29wxyyxam3khicgkaadi8b97aza3nz3f";
+       version = "0.2.0.1";
+       sha256 = "04jkhnljyirbjg1b693bacfnaa3i854rg1dgy3mifr7sbmk0xgnn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          ansi-wl-pprint base dlist lens semigroups
        ];
-       executableHaskellDepends = [
-         ansi-wl-pprint base dlist lens semigroups
-       ];
+       executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         ansi-wl-pprint base dlist hedgehog hspec hw-hspec-hedgehog lens
-         QuickCheck semigroups
+         base dlist hedgehog hspec hw-hspec-hedgehog lens
        ];
        testToolDepends = [ hspec-discover ];
        description = "Monadic query DSL";
@@ -121978,34 +123227,34 @@ self: {
      }) {};
 
   "imm" = callPackage
-    ({ mkDerivation, aeson, atom-conduit, base, blaze-html
-     , blaze-markup, bytestring, case-insensitive, conduit, connection
-     , containers, directory, dyre, fast-logger, filepath, hashable
-     , HaskellNet, HaskellNet-SSL, http-client, http-client-tls
-     , http-types, lifted-base, microlens, mime-mail, monad-control
-     , monad-time, mono-traversable, monoid-subclasses, mtl, network
-     , opml-conduit, optparse-applicative, prettyprinter
-     , prettyprinter-ansi-terminal, rss-conduit, safe-exceptions, stm
+    ({ mkDerivation, aeson, atom-conduit, base, base-noprelude
+     , blaze-html, blaze-markup, bytestring, case-insensitive, conduit
+     , connection, containers, directory, dyre, fast-logger, filepath
+     , hashable, HaskellNet, HaskellNet-SSL, http-client
+     , http-client-tls, http-types, microlens, mime-mail, monad-time
+     , monoid-subclasses, mtl, network, opml-conduit
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , refined, relude, rss-conduit, safe-exceptions, stm
      , streaming-bytestring, streaming-with, streamly, text, time
      , timerep, tls, transformers-base, uri-bytestring, xml, xml-conduit
      , xml-types
      }:
      mkDerivation {
        pname = "imm";
-       version = "1.4.0.0";
-       sha256 = "0dz7zss373gc80xlng11agsr2yx51l0pdab72605w9rpn0znplrg";
+       version = "1.5.0.0";
+       sha256 = "005idmw68z28pfj8q6x6al809w5hd83m0jykg5m8m1xy9fv1plja";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson atom-conduit base blaze-html blaze-markup bytestring
-         case-insensitive conduit connection containers directory dyre
-         fast-logger filepath hashable HaskellNet HaskellNet-SSL http-client
-         http-client-tls http-types lifted-base microlens mime-mail
-         monad-control monad-time mono-traversable monoid-subclasses mtl
-         network opml-conduit optparse-applicative prettyprinter
-         prettyprinter-ansi-terminal rss-conduit safe-exceptions stm
-         streaming-bytestring streaming-with streamly text time timerep tls
-         transformers-base uri-bytestring xml xml-conduit xml-types
+         aeson atom-conduit base-noprelude blaze-html blaze-markup
+         bytestring case-insensitive conduit connection containers directory
+         dyre fast-logger filepath hashable HaskellNet HaskellNet-SSL
+         http-client http-client-tls http-types microlens mime-mail
+         monad-time monoid-subclasses mtl network opml-conduit
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal
+         refined relude rss-conduit safe-exceptions stm streaming-bytestring
+         streaming-with streamly text time timerep tls transformers-base
+         uri-bytestring xml xml-conduit xml-types
        ];
        executableHaskellDepends = [ base ];
        description = "Execute arbitrary actions for each unread element of RSS/Atom feeds";
@@ -122361,13 +123610,14 @@ self: {
      }) {};
 
   "include-file" = callPackage
-    ({ mkDerivation, base, bytestring, criterion, random
+    ({ mkDerivation, base, bytestring, Cabal, criterion, random
      , template-haskell
      }:
      mkDerivation {
        pname = "include-file";
-       version = "0.1.0.3";
-       sha256 = "0a9xwd5ihrw5z8i8mvfmghdjk9nnhif97jdp7jamyzvivhxiz3r0";
+       version = "0.1.0.4";
+       sha256 = "0vk6l5gpd4nv2bw47vlwnxb42vgfigx6672aw2xqbvf55d4967sv";
+       setupHaskellDepends = [ base bytestring Cabal random ];
        libraryHaskellDepends = [
          base bytestring random template-haskell
        ];
@@ -123342,8 +124592,8 @@ self: {
      }:
      mkDerivation {
        pname = "instana-haskell-trace-sdk";
-       version = "0.1.0.0";
-       sha256 = "1px0p990sr2l7l7h8k5l24bjvi4ag5i3v78vwlhgzykpfsxwq3bg";
+       version = "0.2.0.0";
+       sha256 = "1yl8k10win4r06rfqxl1vfp4zb78lijrzsn6zpmlqycnpfm00zp0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -123363,6 +124613,7 @@ self: {
        ];
        description = "SDK for adding custom Instana tracing support to Haskell applications";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "instance-control" = callPackage
@@ -123810,6 +125061,37 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "interp" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, hspec
+     , megaparsec, mtl, optparse-applicative, parser-combinators
+     , random-fu, rvar, semigroups, text, transformers
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "interp";
+       version = "1.0.0.2";
+       sha256 = "036j44vrvgvxvnlj57mkg4h8cc6dycxfrszmgai70mybr3bxvhd5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers hspec megaparsec mtl
+         optparse-applicative parser-combinators random-fu rvar semigroups
+         text transformers unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers hspec megaparsec mtl
+         optparse-applicative parser-combinators random-fu rvar semigroups
+         text transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers hspec megaparsec mtl
+         optparse-applicative parser-combinators random-fu rvar semigroups
+         text transformers unordered-containers vector
+       ];
+       description = "Tracery-like randomized text interpolation";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "interpol" = callPackage
     ({ mkDerivation, base, haskell-src-exts, HUnit, regex-posix, syb
      , test-framework, test-framework-hunit
@@ -123904,8 +125186,8 @@ self: {
     ({ mkDerivation, array, base, containers, QuickCheck, utility-ht }:
      mkDerivation {
        pname = "interpolation";
-       version = "0.1.0.3";
-       sha256 = "0j9hdzi59lqq92773f8h17awrm9ghr45k876qc7krq87pgbr95z2";
+       version = "0.1.1";
+       sha256 = "0rpzilzcld0xwcfz9pkhq9sx9qd8ysz9yy3znpdslk4ia8i507y7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base utility-ht ];
@@ -124215,8 +125497,10 @@ self: {
      }:
      mkDerivation {
        pname = "invertible-grammar";
-       version = "0.1.1";
-       sha256 = "1vqv0q3096hfclakh7xk1hkwdbpghvllbzd795sgdf438zshr419";
+       version = "0.1.2";
+       sha256 = "1nf7dchcxs8wwd2hgfpf04qd63ws22pafjwb5911lq7da8k1y57j";
+       revision = "1";
+       editedCabalFile = "1qk0pi8n45mbzwr6i6sly59b74njk0akzm6k0vnr262lqahy0hdl";
        libraryHaskellDepends = [
          base bifunctors containers mtl prettyprinter profunctors semigroups
          tagged template-haskell text transformers
@@ -124895,10 +126179,8 @@ self: {
      }:
      mkDerivation {
        pname = "irc-core";
-       version = "2.5.0";
-       sha256 = "124zfp6s8hj7z3m873145bnr0z8xlkbr1qgj2hvasd2qs2zrb8y8";
-       revision = "1";
-       editedCabalFile = "06n7shnd8ij4wlzm5xhxdqv26b3am8mgbqfcvsqppk6hgmmyvggq";
+       version = "2.6.0";
+       sha256 = "07w8nyvscc2d643dq02bl533c2kwx8zw8j1b1dizfwhixwnzgphq";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring bytestring hashable primitive
          text time vector
@@ -125338,8 +126620,8 @@ self: {
      }:
      mkDerivation {
        pname = "isobmff";
-       version = "0.13.0.0";
-       sha256 = "032lcpdifrryi4ryz3gwzh9l5927amcpr8xk8jbjwz0mj3z857d5";
+       version = "0.14.0.0";
+       sha256 = "1kc77bcp4k4n8j6lx09rq5q4mn21fv7wp059gsg86krb48a09cjx";
        libraryHaskellDepends = [
          base bytestring data-default function-builder mtl pretty-types
          singletons tagged template-haskell text time type-spec vector
@@ -126210,10 +127492,8 @@ self: {
     ({ mkDerivation, base, Cabal }:
      mkDerivation {
        pname = "jailbreak-cabal";
-       version = "1.3.3";
-       sha256 = "076h7nbf94zfwvfijcpv03r3s2nyynb2y9v354m4bxqz3anhib3b";
-       revision = "3";
-       editedCabalFile = "0f4gqssh2ayl089zzl8m5rwa66x430dg1q5hfwcfd56r6xr6wi1l";
+       version = "1.3.4";
+       sha256 = "0xvjdn61a8gxqj4jkdql9dyb3jk6lbx9i1w7hc27f2rqrwmfgq68";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base Cabal ];
@@ -126706,10 +127986,8 @@ self: {
      }:
      mkDerivation {
        pname = "jmacro";
-       version = "0.6.15";
-       sha256 = "1b3crf16szj11pcgrg3912xq072vnv0myq6mzg0ypaabdzn3zr7s";
-       revision = "2";
-       editedCabalFile = "0r16y3sk22vgrciaadrdzjd768mnh08s019ffgk5jma782nz9v7d";
+       version = "0.6.16";
+       sha256 = "1kyrvxg5fwwrwv72aby694ar071yl2xmnfkjyrwi5wbc7hsb8rda";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -126917,8 +128195,8 @@ self: {
     ({ mkDerivation, base, criterion, haskeline, hspec, HUnit }:
      mkDerivation {
        pname = "jord";
-       version = "0.5.0.0";
-       sha256 = "19rjqdvgbsgl62z3d2ggb5m7c5fassr7b3h5gsv9dp1zdp76sbbc";
+       version = "0.6.0.0";
+       sha256 = "17nac3r71fz0acna1229r5ga5jdi4khnfljf23jblay6rphba7i6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
@@ -127089,10 +128367,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle";
-       version = "0.9.5.0";
-       sha256 = "1b1d8dvj5lqpn0k6ay90jdgm0a05vbchxy4l3r9s4fn4mx56jp9z";
-       revision = "1";
-       editedCabalFile = "1f77rxrmd0rqdz81dqaw5rxxcrsjw7ibw5qp93lkgw6yj531ki99";
+       version = "0.9.6.0";
+       sha256 = "1ym0h00icxh4dwy3xwvxh985hr3ly7r147vm7spzb44xfn532pa8";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring bytestring containers
          deepseq exceptions filepath ghc-prim http-types lens primitive
@@ -127110,8 +128386,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-clib";
-       version = "0.9.0.0";
-       sha256 = "10ycmp3pnkh18d8xv44gj392h7xzfmnyl0qkfv0qx0p7pn9vn6zz";
+       version = "0.9.6.0";
+       sha256 = "0nfdn5s11rzzma5s4rajs1477sy0xsa7wc19q00xfbpfkdq48193";
        libraryHaskellDepends = [
          aeson base bytestring data-default jsaddle text
        ];
@@ -127121,15 +128397,15 @@ self: {
      }) {};
 
   "jsaddle-dom" = callPackage
-    ({ mkDerivation, base, base-compat, jsaddle, lens, text
+    ({ mkDerivation, base, base-compat, exceptions, jsaddle, lens, text
      , transformers
      }:
      mkDerivation {
        pname = "jsaddle-dom";
-       version = "0.9.2.0";
-       sha256 = "14m752vj4lpdwa0cbziz1wynjf836f3khrmfdz702c0d0als3j0q";
+       version = "0.9.3.1";
+       sha256 = "0ifbddp4vjpbl89bwczfp7ivnhfayg8317l8qk6h84p9vd1km44z";
        libraryHaskellDepends = [
-         base base-compat jsaddle lens text transformers
+         base base-compat exceptions jsaddle lens text transformers
        ];
        description = "DOM library that uses jsaddle to support both GHCJS and GHC";
        license = stdenv.lib.licenses.mit;
@@ -127152,23 +128428,24 @@ self: {
 
   "jsaddle-warp" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, deepseq
-     , doctest, filepath, foreign-store, ghc-prim, http-types, jsaddle
-     , lens, network, primitive, process, QuickCheck, ref-tf, stm, text
-     , time, transformers, wai, wai-websockets, warp, webdriver
-     , websockets
+     , doctest, exceptions, filepath, foreign-store, ghc-prim
+     , http-types, jsaddle, lens, network, primitive, process
+     , QuickCheck, random, ref-tf, stm, text, time, transformers
+     , unliftio-core, wai, wai-websockets, warp, webdriver, websockets
      }:
      mkDerivation {
        pname = "jsaddle-warp";
-       version = "0.9.5.0";
-       sha256 = "18rvs0m8407piavqvv95dp4bfcgn73c22xjcb75fax0bhf0s6aak";
+       version = "0.9.6.0";
+       sha256 = "0j34cix4g5zfbbac6cggcp224s69ijirifg69js8lh3x8n5sgpg5";
        libraryHaskellDepends = [
          aeson base bytestring containers foreign-store http-types jsaddle
          stm text time transformers wai wai-websockets warp websockets
        ];
        testHaskellDepends = [
-         aeson base bytestring containers deepseq doctest filepath ghc-prim
-         http-types jsaddle lens network primitive process QuickCheck ref-tf
-         stm text time transformers wai wai-websockets warp webdriver
+         aeson base bytestring containers deepseq doctest exceptions
+         filepath foreign-store ghc-prim http-types jsaddle lens network
+         primitive process QuickCheck random ref-tf stm text time
+         transformers unliftio-core wai wai-websockets warp webdriver
          websockets
        ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
@@ -127184,8 +128461,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-webkit2gtk";
-       version = "0.9.4.0";
-       sha256 = "0mw43kmamp1spw6zfdbm76apn79n7y9inb0c1c8fkfczbjd8b759";
+       version = "0.9.6.0";
+       sha256 = "0daw67lxqbbw643mvna5dr9xqrqacqp2i3gqpkarb2xadq5da2lq";
        libraryHaskellDepends = [
          aeson base bytestring directory gi-gio gi-glib gi-gtk
          gi-javascriptcore gi-webkit2 haskell-gi-base haskell-gi-overloading
@@ -127217,14 +128494,15 @@ self: {
 
   "jsaddle-wkwebview" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, data-default
-     , jsaddle
+     , directory, jsaddle, text
      }:
      mkDerivation {
        pname = "jsaddle-wkwebview";
-       version = "0.9.4.0";
-       sha256 = "05braj7m2z0r5vqq1y1sp6kh11b8z269lvznysmsqay31wccbyvx";
+       version = "0.9.6.0";
+       sha256 = "1i5pmwj9ijd3rm1gvyp8n64q1gr1qnijj4ry6mk4h8lij4d9ic67";
        libraryHaskellDepends = [
-         aeson base bytestring containers data-default jsaddle
+         aeson base bytestring containers data-default directory jsaddle
+         text
        ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = stdenv.lib.licenses.mit;
@@ -128427,8 +129705,8 @@ self: {
      }:
      mkDerivation {
        pname = "jvm-binary";
-       version = "0.2.0";
-       sha256 = "1pq4v3xzbb9673rvr8qbvyln155v5ric712pf08vvkw1aihwgpa4";
+       version = "0.3.0";
+       sha256 = "0qbhxd13hmzmr5mn20rcm63sxy4wm1y794b7vznz028j2krlyv5w";
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers data-binary-ieee754
          deepseq deriving-compat mtl template-haskell text vector
@@ -128577,8 +129855,8 @@ self: {
      }:
      mkDerivation {
        pname = "kafka-device";
-       version = "0.2.1.2";
-       sha256 = "0fs6k04cchlsmrcn2sm9sdq07waia4ff8hhhqx24yjjab5ai2798";
+       version = "1.0.0.0";
+       sha256 = "1bcd7fm42vly9hlfzv0cjzx2g4hrqp66nrypki75f2c8lqfzcr11";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128596,8 +129874,8 @@ self: {
     ({ mkDerivation, base, GLUT, kafka-device, OpenGL }:
      mkDerivation {
        pname = "kafka-device-glut";
-       version = "0.2.1.2";
-       sha256 = "0in1hwmhbj41cvcwysbzbda7idbdpnlq2zggw2smlxjv078zp939";
+       version = "1.0.0.0";
+       sha256 = "0pkvar1rf0gv7h5a95h28jaifpwknfdvxvcv4s7f5vdrs0376j3k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base GLUT kafka-device OpenGL ];
@@ -128613,8 +129891,8 @@ self: {
      }:
      mkDerivation {
        pname = "kafka-device-joystick";
-       version = "0.2.1.2";
-       sha256 = "17plqjbl2jh185yjbphgw1viim7w52ib8sjv1g93i460ggpwsyp0";
+       version = "1.0.0.0";
+       sha256 = "0vm1a61brvhr5digsw480210cq7s6y2yp80j6907425y1r4165q4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128632,8 +129910,8 @@ self: {
     ({ mkDerivation, aeson, base, hleap, kafka-device, websockets }:
      mkDerivation {
        pname = "kafka-device-leap";
-       version = "0.2.1.2";
-       sha256 = "14wn3ywa462nf4snjl78bnxjf9jfqj39zkiay2z594yplqp2qsy1";
+       version = "1.0.0.0";
+       sha256 = "1xkkkq1plzjf20p6gfnk8nc809rp57ihffggvgzsgq8dwybzfssg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128653,8 +129931,8 @@ self: {
      }:
      mkDerivation {
        pname = "kafka-device-spacenav";
-       version = "0.2.1.2";
-       sha256 = "0drpf4frlnf17qa92rppjdnxpsks8v3q0h3jad5lyvcvmpssrw1r";
+       version = "1.0.0.0";
+       sha256 = "0m382s7q3w21pl62fjh6pw9w4dwi6cmpc8s4xnzivwjj91hynryb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128672,8 +129950,8 @@ self: {
     ({ mkDerivation, base, kafka-device, vrpn }:
      mkDerivation {
        pname = "kafka-device-vrpn";
-       version = "0.2.1.2";
-       sha256 = "0zmiyfvdn16rd2jg44xvdpfm08fi8ivv0af6hdhc46l5q4zd9p4s";
+       version = "1.0.0.0";
+       sha256 = "13l32gfpz5l2xi42xvvyzj9g1kqsbd3jkx2498lacwx4kgvlm2rd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base kafka-device vrpn ];
@@ -128983,22 +130261,81 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "katip_0_8_0_0" = callPackage
+    ({ mkDerivation, aeson, async, auto-update, base, blaze-builder
+     , bytestring, containers, criterion, deepseq, directory, either
+     , filepath, hostname, microlens, microlens-th, monad-control, mtl
+     , old-locale, quickcheck-instances, regex-tdfa, resourcet
+     , safe-exceptions, scientific, semigroups, stm, string-conv, tasty
+     , tasty-golden, tasty-hunit, tasty-quickcheck, template-haskell
+     , text, time, time-locale-compat, transformers, transformers-base
+     , transformers-compat, unix, unliftio-core, unordered-containers
+     }:
+     mkDerivation {
+       pname = "katip";
+       version = "0.8.0.0";
+       sha256 = "0964vw38cws9fn22r4zgkd9m97rfzxbb5m8l46bym81izh56fy6s";
+       libraryHaskellDepends = [
+         aeson async auto-update base bytestring containers either hostname
+         microlens microlens-th monad-control mtl old-locale resourcet
+         safe-exceptions scientific semigroups stm string-conv
+         template-haskell text time transformers transformers-base
+         transformers-compat unix unliftio-core unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers directory microlens
+         quickcheck-instances regex-tdfa safe-exceptions stm tasty
+         tasty-golden tasty-hunit tasty-quickcheck template-haskell text
+         time time-locale-compat unordered-containers
+       ];
+       benchmarkHaskellDepends = [
+         aeson async base blaze-builder criterion deepseq directory filepath
+         safe-exceptions text time transformers unix
+       ];
+       description = "A structured logging framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "katip-datadog" = callPackage
+    ({ mkDerivation, aeson, async, attoparsec, base, binary, bytestring
+     , conduit, conduit-extra, connection, containers, katip, network
+     , resource-pool, retry, safe-exceptions, tasty, tasty-hunit, text
+     , time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "katip-datadog";
+       version = "0.1.0.0";
+       sha256 = "04gj1svwlndid1j0c14q82y42gad40l0wn2mr5mbhc9b921mncsl";
+       libraryHaskellDepends = [
+         aeson base binary bytestring connection katip network resource-pool
+         retry safe-exceptions text time
+       ];
+       testHaskellDepends = [
+         aeson async attoparsec base conduit conduit-extra containers katip
+         safe-exceptions tasty tasty-hunit text unordered-containers
+       ];
+       description = "Datadog scribe for the Katip logging framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "katip-elasticsearch" = callPackage
     ({ mkDerivation, aeson, async, base, bloodhound, bytestring
-     , containers, criterion, deepseq, enclosed-exceptions, exceptions
-     , http-client, http-types, katip, lens, lens-aeson
-     , quickcheck-instances, random, retry, scientific, semigroups, stm
-     , stm-chans, tagged, tasty, tasty-hunit, tasty-quickcheck, text
-     , time, transformers, unordered-containers, uuid, vector
+     , containers, criterion, deepseq, exceptions, http-client
+     , http-types, katip, lens, lens-aeson, quickcheck-instances, random
+     , retry, safe-exceptions, scientific, semigroups, stm, stm-chans
+     , tagged, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , transformers, unordered-containers, uuid, vector
      }:
      mkDerivation {
        pname = "katip-elasticsearch";
-       version = "0.5.1.1";
-       sha256 = "199xqrvzb5158zcz5p8njxflnb0f32ca1mdyqjd2xq3d8jn3maj0";
+       version = "0.6.0.0";
+       sha256 = "05pvmx2p2h34qig392z6k0ar3dk6cc3vgzsvxhijwp5xfja52ha4";
        libraryHaskellDepends = [
-         aeson async base bloodhound bytestring enclosed-exceptions
-         exceptions http-client http-types katip retry scientific semigroups
-         stm stm-chans text time transformers unordered-containers uuid
+         aeson async base bloodhound bytestring exceptions http-client
+         http-types katip retry safe-exceptions scientific semigroups stm
+         stm-chans text time transformers unordered-containers uuid
        ];
        testHaskellDepends = [
          aeson base bloodhound bytestring containers http-client http-types
@@ -129028,6 +130365,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "katip-logzio" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, errors, hedgehog
+     , hostname, http-client, http-client-tls, http-types, katip, retry
+     , safe-exceptions, scientific, scotty, stm, tasty, tasty-hedgehog
+     , tasty-hunit, template-haskell, text, time, unix
+     , unordered-containers, uri-bytestring, vector, warp
+     }:
+     mkDerivation {
+       pname = "katip-logzio";
+       version = "0.1.0.0";
+       sha256 = "09i11zk9rdhq60d8sllc9w971mkc65lngn02rwfa89m7h95sm8wc";
+       libraryHaskellDepends = [
+         aeson async base bytestring errors http-client http-client-tls
+         http-types katip retry safe-exceptions scientific stm text time
+         unix unordered-containers uri-bytestring
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring hedgehog hostname http-types katip
+         safe-exceptions scientific scotty stm tasty tasty-hedgehog
+         tasty-hunit template-haskell text time unix unordered-containers
+         uri-bytestring vector warp
+       ];
+       description = "Logz.IO scribe for the Katip logging framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "katip-rollbar" = callPackage
     ({ mkDerivation, aeson, async, base, hostname, http-client, katip
      , rollbar-hs, stm-chans, text, time
@@ -129764,6 +131128,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "keycloak-hs" = callPackage
+    ({ mkDerivation, aeson, aeson-casing, base, base64-bytestring
+     , bytestring, containers, exceptions, hslogger, http-api-data
+     , http-client, http-types, jwt, lens, mtl, string-conversions, text
+     , word8, wreq
+     }:
+     mkDerivation {
+       pname = "keycloak-hs";
+       version = "0.0.0.4";
+       sha256 = "1b4h0qn5gmc3h7k301f6fg4dh56w91fbi6jmk06mh8mqwg15qbdl";
+       libraryHaskellDepends = [
+         aeson aeson-casing base base64-bytestring bytestring containers
+         exceptions hslogger http-api-data http-client http-types jwt lens
+         mtl string-conversions text word8 wreq
+       ];
+       testHaskellDepends = [ base ];
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "keycode" = callPackage
     ({ mkDerivation, base, containers, ghc-prim, template-haskell }:
      mkDerivation {
@@ -130430,6 +131813,7 @@ self: {
        libraryHaskellDepends = [ base gamma random-fu roots vector ];
        description = "Kolmogorov distribution and Kolmogorov-Smirnov test";
        license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ksystools" = callPackage
@@ -131569,6 +132953,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "language-asn" = callPackage
+    ({ mkDerivation, base, bytestring, contravariant, hashable, pretty
+     , primitive, text, vector
+     }:
+     mkDerivation {
+       pname = "language-asn";
+       version = "0.1.0.0";
+       sha256 = "0pjzcnw5d9j8nif0w8ibh3rnsgpv710ng8w8hsrcsbq7qm02sp7f";
+       libraryHaskellDepends = [
+         base bytestring contravariant hashable pretty primitive text vector
+       ];
+       description = "ASN.1 encoding and decoding";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "language-asn1" = callPackage
     ({ mkDerivation, base, parsec, syb }:
      mkDerivation {
@@ -131794,6 +133193,8 @@ self: {
        pname = "language-docker";
        version = "8.0.0";
        sha256 = "00zryknsc0717ysq8g1ip5dm70v8b33lfrscbzpdcw5dd2j32k7n";
+       revision = "1";
+       editedCabalFile = "0pzlrc2rgsr6533spij42kpr8kgsvi6sc3c1yzs06n47lsxzjb1f";
        libraryHaskellDepends = [
          base bytestring containers free megaparsec mtl prettyprinter split
          template-haskell text th-lift time
@@ -132436,8 +133837,10 @@ self: {
      }:
      mkDerivation {
        pname = "language-python";
-       version = "0.5.4";
-       sha256 = "0agizcpsisv5lfh15n2m0brcbs626a84zc5r3s43qsvvbs7514xs";
+       version = "0.5.6";
+       sha256 = "10xjxyhfamywpydjrimfyk2379inqyi7k7ps41v0pi657ipvbgkr";
+       revision = "1";
+       editedCabalFile = "0394np5jdxz83qd2mzj0wlvdrp65rxifga4121jq18359r6pcf7f";
        libraryHaskellDepends = [
          array base containers monads-tf pretty transformers utf8-string
        ];
@@ -132670,25 +134073,25 @@ self: {
   "lapack" = callPackage
     ({ mkDerivation, base, blas-ffi, boxes, ChasingBottoms
      , comfort-array, data-ref, deepseq, fixed-length
-     , guarded-allocation, lapack-ffi, lazyio, netlib-ffi, non-empty
-     , QuickCheck, quickcheck-transformer, random, semigroups, tfp
-     , transformers, unique-logic-tf, utility-ht
+     , guarded-allocation, lapack-ffi, lazyio, monoid-transformer
+     , netlib-ffi, non-empty, QuickCheck, quickcheck-transformer, random
+     , semigroups, tfp, transformers, unique-logic-tf, utility-ht
      }:
      mkDerivation {
        pname = "lapack";
-       version = "0.2.1";
-       sha256 = "1m6n36cjk69maqrb2alya8ki2kndvpfjn2nyb8p4k5333x4ka6xm";
+       version = "0.2.4";
+       sha256 = "16rgcxinkrkv1h35pfyrgg9xihkhpk3i2xd5f3xw29b1hahsb9hv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base blas-ffi boxes comfort-array deepseq fixed-length
-         guarded-allocation lapack-ffi lazyio netlib-ffi non-empty tfp
-         transformers utility-ht
+         guarded-allocation lapack-ffi lazyio netlib-ffi non-empty
+         semigroups tfp transformers utility-ht
        ];
        testHaskellDepends = [
-         base ChasingBottoms comfort-array data-ref netlib-ffi non-empty
-         QuickCheck quickcheck-transformer random semigroups tfp
-         transformers unique-logic-tf utility-ht
+         base ChasingBottoms comfort-array data-ref monoid-transformer
+         netlib-ffi non-empty QuickCheck quickcheck-transformer random
+         semigroups tfp transformers unique-logic-tf utility-ht
        ];
        description = "Numerical Linear Algebra using LAPACK";
        license = stdenv.lib.licenses.bsd3;
@@ -133314,10 +134717,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "lazysplines";
-       version = "0.2";
-       sha256 = "0r6z3b6yaxsnz8cbfr815q97jlzsjrqszb2vvzwjyqbh6qqw006y";
-       revision = "1";
-       editedCabalFile = "0781158jza2q6zdd7z0szsnsw1kvsbhiijivbi61rridjgv1yq23";
+       version = "0.3";
+       sha256 = "13ll6w4g0pv2bq5dsyiz4v9ywsdax6pjzb1d64fsqvq1zqr490ix";
        libraryHaskellDepends = [ base ];
        description = "Differential solving with lazy splines";
        license = stdenv.lib.licenses.bsd3;
@@ -133500,12 +134901,12 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "leancheck_0_9_0" = callPackage
+  "leancheck_0_9_1" = callPackage
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.9.0";
-       sha256 = "12s3pwihb6i5anv5zm8xvlz6gq4bfk0nrgvkmg83my1sg5pcknl4";
+       version = "0.9.1";
+       sha256 = "03n9apqkfs8vjm0s1ajfpg02zsvdm091di0860gyqa58cd3qbkdb";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
        description = "Enumerative property-based testing";
@@ -133581,6 +134982,7 @@ self: {
        ];
        description = "Use the Leanpub API via Wreq";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "leapseconds" = callPackage
@@ -135117,11 +136519,11 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "libraft_0_2_0_0" = callPackage
-    ({ mkDerivation, atomic-write, attoparsec, base, base16-bytestring
-     , bytestring, cereal, concurrency, containers, cryptohash-sha256
-     , dejafu, directory, exceptions, file-embed, haskeline
-     , hunit-dejafu, lifted-base, monad-control, mtl, network
+  "libraft_0_3_0_0" = callPackage
+    ({ mkDerivation, async, atomic-write, attoparsec, base
+     , base16-bytestring, bytestring, cereal, concurrency, containers
+     , cryptohash-sha256, dejafu, directory, exceptions, file-embed
+     , haskeline, hunit-dejafu, lifted-base, monad-control, mtl, network
      , network-simple, parsec, postgresql-simple, process, protolude
      , QuickCheck, quickcheck-state-machine, random, repline, stm, tasty
      , tasty-dejafu, tasty-discover, tasty-expected-failure, tasty-hunit
@@ -135130,33 +136532,33 @@ self: {
      }:
      mkDerivation {
        pname = "libraft";
-       version = "0.2.0.0";
-       sha256 = "0lm2b9n1xlpzsxcvnhc3bkcgzbrwxb1l0ffjjqa55hn42dw8ng1d";
+       version = "0.3.0.0";
+       sha256 = "0mfp5m4kz3hfj96c2056wpm9rgn3frrry5jfvswq9bch3092bm2l";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         atomic-write attoparsec base base16-bytestring bytestring cereal
-         concurrency containers cryptohash-sha256 directory exceptions
-         file-embed haskeline lifted-base monad-control mtl network
-         network-simple parsec postgresql-simple protolude random repline
-         text time transformers transformers-base word8
+         async atomic-write attoparsec base base16-bytestring bytestring
+         cereal concurrency containers cryptohash-sha256 dejafu directory
+         exceptions file-embed haskeline lifted-base monad-control mtl
+         network network-simple parsec postgresql-simple protolude random
+         repline stm text time transformers transformers-base word8
        ];
        executableHaskellDepends = [
-         atomic-write attoparsec base base16-bytestring bytestring cereal
-         concurrency containers cryptohash-sha256 directory exceptions
-         file-embed haskeline lifted-base monad-control mtl network
-         network-simple parsec postgresql-simple protolude random repline
-         stm text time transformers transformers-base word8
+         async atomic-write attoparsec base base16-bytestring bytestring
+         cereal concurrency containers cryptohash-sha256 dejafu directory
+         exceptions file-embed haskeline lifted-base monad-control mtl
+         network network-simple parsec postgresql-simple protolude random
+         repline stm text time transformers transformers-base word8
        ];
        testHaskellDepends = [
-         atomic-write attoparsec base base16-bytestring bytestring cereal
-         concurrency containers cryptohash-sha256 dejafu directory
+         async atomic-write attoparsec base base16-bytestring bytestring
+         cereal concurrency containers cryptohash-sha256 dejafu directory
          exceptions file-embed haskeline hunit-dejafu lifted-base
          monad-control mtl network network-simple parsec postgresql-simple
          process protolude QuickCheck quickcheck-state-machine random
-         repline tasty tasty-dejafu tasty-discover tasty-expected-failure
-         tasty-hunit tasty-quickcheck text time transformers
-         transformers-base tree-diff word8
+         repline stm tasty tasty-dejafu tasty-discover
+         tasty-expected-failure tasty-hunit tasty-quickcheck text time
+         transformers transformers-base tree-diff word8
        ];
        testToolDepends = [ tasty-discover ];
        description = "Raft consensus algorithm";
@@ -135466,8 +136868,8 @@ self: {
     ({ mkDerivation, base, bytestring, conduit, resourcet }:
      mkDerivation {
        pname = "libyaml";
-       version = "0.1.0.0";
-       sha256 = "01vgzf05ad1v8h65n12fwd2whldnqhlv7cbcaf08m3ck2viqimlw";
+       version = "0.1.1.0";
+       sha256 = "0psznm9c3yjsyj9aj8m2svvv9m2v0x90hnwarcx5sbswyi3l00va";
        libraryHaskellDepends = [ base bytestring conduit resourcet ];
        description = "Low-level, streaming YAML interface";
        license = stdenv.lib.licenses.bsd3;
@@ -135497,8 +136899,8 @@ self: {
      }:
      mkDerivation {
        pname = "licensor";
-       version = "0.2.2";
-       sha256 = "0kxcsw1ds9q8apsmhbnwcz76kxfhabv08b8myadbflwm4wj0szlz";
+       version = "0.3.0";
+       sha256 = "1flrn42jvvcv95s9k3qqgk9fw4ybqhazz6ga0hri052wd8nx97ka";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -136059,15 +137461,17 @@ self: {
      }) {};
 
   "linear-circuit" = callPackage
-    ({ mkDerivation, base, comfort-graph, containers, hmatrix
-     , non-empty, QuickCheck, transformers, utility-ht
+    ({ mkDerivation, base, comfort-array, comfort-graph, containers
+     , lapack, netlib-ffi, non-empty, QuickCheck, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "linear-circuit";
-       version = "0.0";
-       sha256 = "0gmrf9nkgi74b3pw0b53m9y4nszlvazg4qz822csk8578l6skb4d";
+       version = "0.1";
+       sha256 = "0rvmnk8fwyns645rs8s0nwyfcyk2nc0z8jk03raasrk4kv3f26z3";
        libraryHaskellDepends = [
-         base comfort-graph containers hmatrix utility-ht
+         base comfort-array comfort-graph containers lapack netlib-ffi
+         transformers utility-ht
        ];
        testHaskellDepends = [
          base comfort-graph containers non-empty QuickCheck transformers
@@ -139564,6 +140968,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "lucid-extras_0_2_2" = callPackage
+    ({ mkDerivation, aeson, base, blaze-builder, bytestring, directory
+     , lucid, text
+     }:
+     mkDerivation {
+       pname = "lucid-extras";
+       version = "0.2.2";
+       sha256 = "0zi48ly2729rs3rsbnwj3z5zk9zgzmva0d3dvp448726r62ryfc3";
+       libraryHaskellDepends = [
+         aeson base blaze-builder bytestring lucid text
+       ];
+       testHaskellDepends = [ base directory lucid ];
+       description = "Generate more HTML with Lucid - Bootstrap, Rdash, Vega-Lite, Leaflet JS, Email";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lucid-foundation" = callPackage
     ({ mkDerivation, base, hspec, lucid, QuickCheck
      , quickcheck-instances, text
@@ -140379,8 +141800,8 @@ self: {
      }:
      mkDerivation {
        pname = "madlang";
-       version = "4.0.2.14";
-       sha256 = "1fpqs3cyb0iwld53gljkzsz7xhwamkd4g2irk7j3z6pxvn36bhin";
+       version = "4.0.2.15";
+       sha256 = "0fv2p6f6gj9jg72kmlf56nymvs3sf6hn98jh4q0ighn6k5dkhbf3";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
@@ -140491,15 +141912,17 @@ self: {
      }) {};
 
   "magico" = callPackage
-    ({ mkDerivation, base, hmatrix, transformers, utility-ht }:
+    ({ mkDerivation, base, comfort-array, lapack, transformers
+     , utility-ht
+     }:
      mkDerivation {
        pname = "magico";
-       version = "0.0.1.2";
-       sha256 = "17vr7bn7w7wyh7v3gw4lv7nj0qzv2b8cn9f9drjlb08ahxqgqg08";
+       version = "0.0.2";
+       sha256 = "0hm160w9d89qhfzq84mpb6gm6586pcxdwa7njxww21g6b0l49qmw";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base hmatrix transformers utility-ht
+         base comfort-array lapack transformers utility-ht
        ];
        description = "Compute solutions for Magico puzzle";
        license = stdenv.lib.licenses.bsd3;
@@ -142050,6 +143473,23 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "math-grads" = callPackage
+    ({ mkDerivation, aeson, array, base, containers, hspec, linear
+     , matrix, mtl, random, vector
+     }:
+     mkDerivation {
+       pname = "math-grads";
+       version = "0.1.5.1";
+       sha256 = "0bq08gh1fv83glx4i2gs560cynl2dv1610kby7vlvjnhg0kkyjgl";
+       libraryHaskellDepends = [
+         aeson array base containers linear matrix mtl random vector
+       ];
+       testHaskellDepends = [ array base containers hspec random ];
+       description = "Library containing graph data structures and graph algorithms";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mathblog" = callPackage
     ({ mkDerivation, base, bytestring, ConfigFile, containers
      , data-default, deepseq, directory, either, filepath, fsnotify
@@ -143670,6 +145110,8 @@ self: {
        pname = "mercury-api";
        version = "0.1.0.2";
        sha256 = "0ybpc1kai85rflgdr80jd8cvwxaxmbphv82nz2p17502jrmdfkhg";
+       revision = "1";
+       editedCabalFile = "00qvar25y8fkr5vgavjkpy24nck8njy92fiq9fxfzl0yk2c1dr0g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -143962,8 +145404,8 @@ self: {
      }:
      mkDerivation {
        pname = "metar-http";
-       version = "0.0.1";
-       sha256 = "0xpi9x1c05py659a94ldksn3z5xz9ws069gp1swam1fllg8xbxj6";
+       version = "0.0.3";
+       sha256 = "04skay08n5z0ibqw53yrxaxx5ysmbphbanmbai3znnrn7mf7q1xh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -144799,8 +146241,8 @@ self: {
      }:
      mkDerivation {
        pname = "milena";
-       version = "0.5.2.4";
-       sha256 = "104mvrjf5dk3afqvqc6p1p8ww6dqc1ygi59pgc4yk2zzzllbiczz";
+       version = "0.5.3.0";
+       sha256 = "0n46w570i9nrh0c71gl58phbsb8g05b9gcxvkcdx94yms41wsjh1";
        libraryHaskellDepends = [
          base bytestring cereal containers digest lens lifted-base
          monad-control mtl murmur-hash network random resource-pool
@@ -144850,6 +146292,8 @@ self: {
        pname = "mime-mail";
        version = "0.4.14";
        sha256 = "0gmapbjci8nclwm8syg5xfci4nj8cpchb9ry1b7gwhcp9kaw6cln";
+       revision = "1";
+       editedCabalFile = "14zadyz63gjpf58h6v36w3jwwpxpg86czw19r4211wprqfclvr92";
        libraryHaskellDepends = [
          base base64-bytestring blaze-builder bytestring filepath process
          random text
@@ -145360,6 +146804,8 @@ self: {
        pname = "mismi-p";
        version = "0.0.3";
        sha256 = "115wc7gmy76a99p4rcp6fdz0w6c1z5kjn98ffxkkzx760nj5xvy9";
+       revision = "1";
+       editedCabalFile = "1nhb8lz21qn4rmgwn0b8vr771fcpykg13zvp7qsrsz5jvd3ylifg";
        libraryHaskellDepends = [ base text ];
        description = "A commmon prelude for the mismi project";
        license = stdenv.lib.licenses.bsd3;
@@ -145745,6 +147191,7 @@ self: {
        ];
        description = "Command line interface to the MMark markdown processor";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mmark-ext" = callPackage
@@ -145754,8 +147201,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmark-ext";
-       version = "0.2.1.1";
-       sha256 = "01av7d9n75mg9yzkxszrvbxjbsv4n0gsdmg3n2620zn40j5lwmcq";
+       version = "0.2.1.2";
+       sha256 = "1s44vznj8hkk7iymnzczbglxnw1q84gmm8q9yiwh0jkiw4kdi91c";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base foldl ghc-syntax-highlighter lucid microlens mmark modern-uri
@@ -145765,6 +147212,7 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Commonly useful extensions for the MMark markdown processor";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mmorph" = callPackage
@@ -145781,19 +147229,20 @@ self: {
      }) {};
 
   "mmtf" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, data-msgpack
-     , hspec, http-conduit, QuickCheck, text
+    ({ mkDerivation, array, base, binary, bytestring, containers
+     , data-msgpack, deepseq, hspec, http-conduit, QuickCheck, text
      }:
      mkDerivation {
        pname = "mmtf";
-       version = "0.1.2.0";
-       sha256 = "0z3x3cz4lgsnbpbi9ra179wdi3xqq0h46a6x76mq8k76c0jms51y";
+       version = "0.1.3.1";
+       sha256 = "1xkgj8x8ql5a51r6dfnfw9538hrr6ylp6nvgqbpcwf3xdzln0hic";
        libraryHaskellDepends = [
-         base binary bytestring containers data-msgpack http-conduit text
+         array base binary bytestring containers data-msgpack deepseq
+         http-conduit text
        ];
        testHaskellDepends = [
-         base binary bytestring containers data-msgpack hspec http-conduit
-         QuickCheck text
+         array base binary bytestring containers data-msgpack deepseq hspec
+         http-conduit QuickCheck text
        ];
        description = "Macromolecular Transmission Format implementation";
        license = stdenv.lib.licenses.bsd3;
@@ -146014,8 +147463,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "modular-arithmetic";
-       version = "1.2.1.4";
-       sha256 = "1nlv5bwyfppw6qz6j2z1cvgzpixciv5gygpcvqlfnmmv410il4si";
+       version = "1.2.1.5";
+       sha256 = "0nrnjyqpyy2c5479wjw5ihkwmiingpw60isdladfgi1cis36pq5f";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest ];
        description = "A type for integers modulo some constant";
@@ -146814,6 +148263,8 @@ self: {
        pname = "monad-mersenne-random";
        version = "0.1";
        sha256 = "03kbqbgv4npzfzn90jk4p17y8kb62sslby6q36819qkif1j76lq6";
+       revision = "1";
+       editedCabalFile = "1kyfaridmi15wcib9gxns6v252pdhgsbyi303sqrvwhwpx9n3rl4";
        libraryHaskellDepends = [ base mersenne-random-pure64 ];
        description = "An efficient random generator monad, based on the Mersenne Twister";
        license = stdenv.lib.licenses.bsd3;
@@ -148601,8 +150052,8 @@ self: {
      }:
      mkDerivation {
        pname = "mpi-hs";
-       version = "0.5.1.1";
-       sha256 = "0vvbvck5hd3ca1l1bdcnkkb5p2xf9gj9ljf8v130x0fx3zhxjp13";
+       version = "0.5.1.2";
+       sha256 = "0v31d8i8z6ixg0vl2fk8wscnsl76y096a16650mfpbifwh9ax71m";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -149324,8 +150775,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "multi-instance";
-       version = "0.0.0.3";
-       sha256 = "197jrq0r7va89z2hzhna0v4xmrranq1lgv4ncmbzlzliis6j7m22";
+       version = "0.0.0.4";
+       sha256 = "0lcwxwdirjkacir6y01hzz8pfvk1fv1nq08w3pvvzmmmnydjcgjk";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest ];
        description = "Typeclasses augmented with a phantom type parameter";
@@ -149683,6 +151134,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "multipool-postgresql-simple" = callPackage
+    ({ mkDerivation, base, bytestring, mtl, multipool
+     , postgresql-simple, resource-pool, unliftio-core
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "multipool-postgresql-simple";
+       version = "0.1.0.2";
+       sha256 = "0hm31i06pvx0yj5in44wqsxrghjb4m1rkf9ccmdy0x2g7643rlv5";
+       libraryHaskellDepends = [
+         base bytestring mtl multipool postgresql-simple resource-pool
+         unliftio-core unordered-containers
+       ];
+       testHaskellDepends = [
+         base bytestring mtl multipool postgresql-simple resource-pool
+         unliftio-core unordered-containers
+       ];
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "multirec" = callPackage
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
@@ -149729,6 +151200,8 @@ self: {
        pname = "multiset";
        version = "0.3.4.1";
        sha256 = "05iynv54mgfwil7l81ni8mrhhb5vz3fdls13vm2m3dnwqgp7vzxh";
+       revision = "1";
+       editedCabalFile = "1ddnvzpa9h21p013dwzf0iv2fvvf8mba6vaccf4anamvwa327kcl";
        libraryHaskellDepends = [ base containers deepseq ];
        testHaskellDepends = [ base doctest Glob ];
        description = "The Data.MultiSet container type";
@@ -152243,8 +153716,8 @@ self: {
      }:
      mkDerivation {
        pname = "net-mqtt";
-       version = "0.2.2.0";
-       sha256 = "1pmjlj90jzyg7ypzaiyw4cl8qv6h5l7923b3zhfwsvi07c2lwi1h";
+       version = "0.2.4.0";
+       sha256 = "130dsj8qvf3yi29saz1l52dy15gsj2vr8hd118br137l1zf2g3g0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -152742,14 +154215,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "network_3_0_0_1" = callPackage
+  "network_3_0_1_0" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, directory, hspec
      , hspec-discover, HUnit, unix
      }:
      mkDerivation {
        pname = "network";
-       version = "3.0.0.1";
-       sha256 = "03f7gi3skz2ivack73wgn0zsppxwscl6j6xvwjal6i7y3rzajiam";
+       version = "3.0.1.0";
+       sha256 = "1dk1dabj779sppjl8vbi4kw8l5da5yfc7x5yn0mjy9zrzlfwqq3l";
        libraryHaskellDepends = [ base bytestring deepseq unix ];
        testHaskellDepends = [ base bytestring directory hspec HUnit ];
        testToolDepends = [ hspec-discover ];
@@ -152836,8 +154309,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-api-support";
-       version = "0.3.4";
-       sha256 = "0zzb5jxb6zxwq88qwldzy7qy5b4arz4vnn82ilcz2214w21bhzlp";
+       version = "0.3.5";
+       sha256 = "0d7s7v5df9w1cflprighaqfj6p6nd565fbbklypnh8226pfivf0k";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring case-insensitive http-client
          http-client-tls http-types text time tls
@@ -152854,8 +154327,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-arbitrary";
-       version = "0.4.0.2";
-       sha256 = "0n7h1vfh4iwcni8v92hkfvwdqcnv928c1pxj5mrcrvfggpq97a1a";
+       version = "0.4.0.7";
+       sha256 = "1bqdp7g40dxjin5530sb7mv9ga7qi86ppm4y41wfdyv26kl8lc7f";
        libraryHaskellDepends = [
          base bytestring http-media http-types network-uri QuickCheck
        ];
@@ -154073,8 +155546,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export";
-       version = "1.6.4";
-       sha256 = "13q2699mamkqfkklk6wgm9jzsb650lrbiqsf8sg66yvhgrxmmk0i";
+       version = "1.7.0.1";
+       sha256 = "0gaj4v8hzjjljr5v3l1by6rhin2k8a2wsaff61s5g77gdkcmi2i5";
        libraryHaskellDepends = [
          async base binary bytestring deepseq monad-loops template-haskell
          unix
@@ -155013,8 +156486,8 @@ self: {
     ({ mkDerivation, base, primitive, vector }:
      mkDerivation {
        pname = "nonlinear-optimization";
-       version = "0.3.10";
-       sha256 = "11dq7fvysdb0szkg58f2wmx2vg6sa9qfj9kfv7wv6fl3386dnp7f";
+       version = "0.3.11";
+       sha256 = "1hia8vpxafp8w3arsxwlb1inp81fs53i05r7x5zgvas56jywd2cf";
        libraryHaskellDepends = [ base primitive vector ];
        description = "Various iterative algorithms for optimization of nonlinear functions";
        license = "GPL";
@@ -156654,20 +158127,20 @@ self: {
      }) {};
 
   "odpic-raw" = callPackage
-    ({ mkDerivation, base, bytestring, c2hs, conduit, Decimal, hspec
-     , odpic, resourcet, time
+    ({ mkDerivation, base, binary, bytestring, c2hs, conduit, hspec
+     , odpic, resourcet, scientific, time
      }:
      mkDerivation {
        pname = "odpic-raw";
-       version = "0.3.0";
-       sha256 = "0s4n82kddl4xwjaj98xmgisip68l2ib6ca7z4nqfy8lzchvmls6j";
+       version = "0.4.0";
+       sha256 = "0kdsmjksy2dcsc1dgwx8r8fcv1czap06fy8n3wlg29759md1bchm";
        libraryHaskellDepends = [
-         base bytestring conduit Decimal resourcet time
+         base binary bytestring conduit resourcet scientific time
        ];
        librarySystemDepends = [ odpic ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [
-         base bytestring conduit Decimal hspec resourcet time
+         base binary bytestring conduit hspec resourcet scientific time
        ];
        description = "Oracle Database Bindings";
        license = stdenv.lib.licenses.mit;
@@ -156978,14 +158451,14 @@ self: {
      }:
      mkDerivation {
        pname = "omnicodec";
-       version = "0.7";
-       sha256 = "18xkwsinfjvd20249bm3z0qvsi51j776ifqa6vkrrl186pwa8im7";
+       version = "0.8";
+       sha256 = "0a25pmg2w8wqjddp0xv11k5ffhmap07y7a5lax2dwzyc7hjn001i";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring cmdargs conduit sandi transformers
        ];
-       description = "data encoding and decoding command line utilities";
+       description = "Data encoding and decoding command line utilities";
        license = "unknown";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -157902,6 +159375,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "openssh-protocol" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, hedgehog
+     , integer-logarithms, text, time, vector
+     }:
+     mkDerivation {
+       pname = "openssh-protocol";
+       version = "0.0.1";
+       sha256 = "1rjr6a098zbshmsdm2c58i02h6r7xx38whz5lnb3zbmii09ljirc";
+       libraryHaskellDepends = [
+         base bytestring cereal integer-logarithms text time vector
+       ];
+       testHaskellDepends = [ base cereal hedgehog time ];
+       description = "Haskell implementation of openssh protocol primitives";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "openssl-createkey" = callPackage
     ({ mkDerivation, base, directory, HsOpenSSL, time, unix }:
      mkDerivation {
@@ -158315,6 +159804,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "opml-conduit_0_7_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, conduit
+     , conduit-combinators, containers, data-default, lens-simple
+     , monoid-subclasses, mtl, parsers, QuickCheck, quickcheck-instances
+     , refined, resourcet, safe-exceptions, semigroups, tasty
+     , tasty-hunit, tasty-quickcheck, text, time, timerep
+     , uri-bytestring, xml-conduit, xml-types
+     }:
+     mkDerivation {
+       pname = "opml-conduit";
+       version = "0.7.0.0";
+       sha256 = "126w0fcvx59812001dypfhfzd0mglj0dccdi2k25mzf27vdwfwpf";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base case-insensitive conduit conduit-combinators containers
+         lens-simple monoid-subclasses refined safe-exceptions semigroups
+         text time timerep uri-bytestring xml-conduit xml-types
+       ];
+       testHaskellDepends = [
+         base bytestring conduit conduit-combinators containers data-default
+         lens-simple mtl parsers QuickCheck quickcheck-instances refined
+         resourcet semigroups tasty tasty-hunit tasty-quickcheck text time
+         uri-bytestring xml-conduit
+       ];
+       description = "Streaming parser/renderer for the OPML 2.0 format.";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "opn" = callPackage
     ({ mkDerivation, base, directory, filepath, ini, network-uri
      , optparse-applicative, process, text, unordered-containers
@@ -158993,6 +160511,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "oset" = callPackage
+    ({ mkDerivation, base, containers, hspec, hspec-discover }:
+     mkDerivation {
+       pname = "oset";
+       version = "0.4.0.1";
+       sha256 = "0b6i52472367b47bqflh5jhpi4i052826jmsg4vkdn0cpbv455sv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers ];
+       executableHaskellDepends = [ base containers ];
+       testHaskellDepends = [ base containers hspec ];
+       testToolDepends = [ hspec-discover ];
+       description = "An insertion-order-preserving set";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "osm-conduit" = callPackage
     ({ mkDerivation, base, conduit, exceptions, hspec, resourcet, text
      , transformers, xml-conduit, xml-types
@@ -159775,6 +161309,8 @@ self: {
        pname = "pandoc";
        version = "2.6";
        sha256 = "046vya7ivngv0hp5chnfxc1dm5n3krbgm0883ph45l31c7liyxma";
+       revision = "1";
+       editedCabalFile = "1m0xna696r38g2nk7whhyzh52lyyg0vsr236n8dafbwqj0k66652";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -159801,8 +161337,8 @@ self: {
          base bytestring containers criterion mtl text time weigh
        ];
        postInstall = ''
-         mkdir -p $out/share
-         mv $data/*/*/man $out/share/
+         mkdir -p $out/share/man/man1
+         mv "man/"*.1 $out/share/man/man1/
        '';
        description = "Conversion between markup formats";
        license = stdenv.lib.licenses.gpl2;
@@ -159845,30 +161381,30 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "pandoc-citeproc_0_16" = callPackage
+  "pandoc-citeproc_0_16_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, attoparsec, base, bytestring
      , Cabal, containers, data-default, directory, filepath, hs-bibutils
-     , mtl, old-locale, pandoc, pandoc-types, parsec, process, rfc5051
-     , setenv, split, syb, tagsoup, temporary, text, time
-     , unordered-containers, vector, xml-conduit, yaml
+     , libyaml, mtl, network, old-locale, pandoc, pandoc-types, parsec
+     , process, rfc5051, safe, setenv, split, syb, tagsoup, temporary
+     , text, time, unordered-containers, vector, xml-conduit, yaml
      }:
      mkDerivation {
        pname = "pandoc-citeproc";
-       version = "0.16";
-       sha256 = "1fs1dr7cgkzy0sb68fx85x6l5j1hx9sgkiyxzdfi90hpqnm207sy";
+       version = "0.16.1";
+       sha256 = "0vn3kydzyx7r9zhhk4bgp8ljyi8a65fjlik52d6d536wz3p2pwd3";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [
          aeson base bytestring containers data-default directory filepath
-         hs-bibutils mtl old-locale pandoc pandoc-types parsec rfc5051
-         setenv split syb tagsoup text time unordered-containers vector
-         xml-conduit yaml
+         hs-bibutils mtl network old-locale pandoc pandoc-types parsec
+         rfc5051 setenv split syb tagsoup text time unordered-containers
+         vector xml-conduit yaml
        ];
        executableHaskellDepends = [
-         aeson aeson-pretty attoparsec base bytestring filepath pandoc
-         pandoc-types syb text yaml
+         aeson aeson-pretty attoparsec base bytestring filepath libyaml
+         pandoc pandoc-types safe syb text yaml
        ];
        testHaskellDepends = [
          aeson base bytestring containers directory filepath mtl pandoc
@@ -159907,8 +161443,8 @@ self: {
        pname = "pandoc-crossref";
        version = "0.3.4.0";
        sha256 = "15vfqpfkw4wnsg98804l5ylqbc926s2j5z4ik5zhval4d3kiamgz";
-       revision = "1";
-       editedCabalFile = "06ic2286am3jpmlb6jxnrx0y9c7rh5rs3l0chv1s5ahharp341g9";
+       revision = "2";
+       editedCabalFile = "18mnjhv578n5xz6yjzw1mymndscv8qxi6y41scljzwqs557ird7g";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -159996,6 +161532,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "pandoc-highlighting-extensions" = callPackage
+    ({ mkDerivation, base, data-default-class, pandoc, skylighting-core
+     , skylighting-extensions, skylighting-modding, text
+     }:
+     mkDerivation {
+       pname = "pandoc-highlighting-extensions";
+       version = "1.0.0.0";
+       sha256 = "0y01jhxx9qyirpzdx32212ls434xck6a8wfq9qqynz8a0xwcbprf";
+       libraryHaskellDepends = [
+         base data-default-class pandoc skylighting-core
+         skylighting-extensions skylighting-modding text
+       ];
+       description = "Syntax highlighting customization for Pandoc";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "pandoc-include" = callPackage
     ({ mkDerivation, base, directory, pandoc, pandoc-types, text }:
      mkDerivation {
@@ -160251,8 +161803,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "pandora";
-       version = "0.1.1";
-       sha256 = "0x2pfvvpn7r99238ma3q6fnirx6zh2pzz86b4fijll2k7wqxkl94";
+       version = "0.1.3";
+       sha256 = "067x0kklbqfi65hy9rq593z1fwr62sp0d01ili2wywkwq2m2dq32";
        description = "A box of patterns and paradigms";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -161174,15 +162726,16 @@ self: {
     ({ mkDerivation, base, containers, process }:
      mkDerivation {
        pname = "parseargs";
-       version = "0.2.0.8";
-       sha256 = "1mppvhk78g60xpx5bxkazh4ma2wplr4z6cyinf6lf32xq4294y3v";
+       version = "0.2.0.9";
+       sha256 = "1a95h2ggrfpy2y6g24jih6w917cvz7f7dxl81mwyyqrsxvf9siiw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
        executableHaskellDepends = [ base containers ];
        testHaskellDepends = [ base process ];
-       description = "Full-featured command-line argument parsing library";
+       description = "Parse command-line arguments";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "parsec_3_1_13_0" = callPackage
@@ -161682,8 +163235,8 @@ self: {
     ({ mkDerivation, base, doctest, hedgehog }:
      mkDerivation {
        pname = "partial-semigroup";
-       version = "0.5.0.0";
-       sha256 = "03wfizykalpnv2i2qmj2vm27ajs1s8kmzy7ynsh8b2l43nafixqm";
+       version = "0.5.1.0";
+       sha256 = "15rg80dgawmjz0gzfsspbb0b1045l6w5vvhwd4dgr7vv4hwj9gs9";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest hedgehog ];
        description = "A partial binary associative operator";
@@ -161694,8 +163247,8 @@ self: {
     ({ mkDerivation, base, hedgehog, partial-semigroup }:
      mkDerivation {
        pname = "partial-semigroup-hedgehog";
-       version = "0.5.0.0";
-       sha256 = "17j27i0b971abz2j51a9nr599bqnwb65d2p1445a5s62hcz2jdzl";
+       version = "0.6.0.0";
+       sha256 = "1qd9bg9qv0n80asfkrycvqwv92cdyy590871ypgkl82kx8x7qgbf";
        libraryHaskellDepends = [ base hedgehog partial-semigroup ];
        description = "Property testing for partial semigroups using Hedgehog";
        license = stdenv.lib.licenses.asl20;
@@ -162024,10 +163577,8 @@ self: {
      }:
      mkDerivation {
        pname = "path-io";
-       version = "1.4.1";
-       sha256 = "0v5zwdsy8dd2ljidjm2rr8wfpvjlgk1g7c5xf40ddzjn9ghykk2p";
-       revision = "1";
-       editedCabalFile = "1qb9b3rvzpdm6xp2xljmp2izz0x26bj3zvai22iyl914pzph3181";
+       version = "1.4.2";
+       sha256 = "0jqx3mi4an4kb3kg78n1p3xrz832yrfrnvj795b0xhkv6h1z5ir3";
        libraryHaskellDepends = [
          base containers directory dlist exceptions filepath path temporary
          time transformers unix-compat
@@ -163200,8 +164751,8 @@ self: {
      }:
      mkDerivation {
        pname = "peregrin";
-       version = "0.2.0";
-       sha256 = "16399ncmps8nnx3vry1my17s3scqrwrgzgm63879h6353gqz2nk3";
+       version = "0.3.0";
+       sha256 = "0jhvd69avl5wy2fcsx93ng2yll97gagylwd264dv7qjaa4m6hqs2";
        libraryHaskellDepends = [ base bytestring postgresql-simple text ];
        testHaskellDepends = [
          base hspec pg-harness-client postgresql-simple resource-pool text
@@ -164327,8 +165878,8 @@ self: {
     ({ mkDerivation, base, bytestring, HTTP }:
      mkDerivation {
        pname = "pg-harness-client";
-       version = "0.5.0";
-       sha256 = "0bqvrhkiwmqqp6w82d9xz7s31yjv2i0c3md0pc4fgvyr4gj2r2ki";
+       version = "0.6.0";
+       sha256 = "06gqra5q20sc13slh5vz95bi1vq0ai43qfh7npcyv258zwv40qnh";
        libraryHaskellDepends = [ base bytestring HTTP ];
        description = "Client library for pg-harness-server";
        license = stdenv.lib.licenses.bsd2;
@@ -164340,8 +165891,8 @@ self: {
      }:
      mkDerivation {
        pname = "pg-harness-server";
-       version = "0.5.1";
-       sha256 = "0l7g99wh2znn3y3ma862j6yrmxdl9bjg2p4qaqf4iijxqxcrb1lq";
+       version = "0.6.1";
+       sha256 = "1943rjcj4hbqdpg6vy7pcpq6575iag7bm15z2pdz4r8gfhq9z8an";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -165857,10 +167408,8 @@ self: {
      }:
      mkDerivation {
        pname = "pipes-http";
-       version = "1.0.5";
-       sha256 = "0m9hy9j6nnq2zngz1axbarjc1cwyxw7z36x40qw8yqz1dm39d8a9";
-       revision = "1";
-       editedCabalFile = "015psgj5wl67p0qdc00nrn717gv354gii70c57n1px5j81b0z5cl";
+       version = "1.0.6";
+       sha256 = "00579dpb7mh8nli5gfr100w0mrn6nvqhbj50qzxc2m5cvw4gncd2";
        libraryHaskellDepends = [
          base bytestring http-client http-client-tls pipes
        ];
@@ -167221,12 +168770,13 @@ self: {
      }) {};
 
   "plur" = callPackage
-    ({ mkDerivation, base, semigroups }:
+    ({ mkDerivation, base, hedgehog, hedgehog-classes, semigroups }:
      mkDerivation {
        pname = "plur";
-       version = "0.1.0.0";
-       sha256 = "0xak3xsq57x3h0n6i3pps938ba00sn5a2dy9jh9m01sraqqk3c24";
+       version = "0.2.0.0";
+       sha256 = "0yvi84s6nj0p2phmpxx662j27g617sisaljh4gnvcjzpmgw4wzwm";
        libraryHaskellDepends = [ base semigroups ];
+       testHaskellDepends = [ base hedgehog hedgehog-classes ];
        description = "Plurality monad: Zero, one, or at least two";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -168038,8 +169588,8 @@ self: {
      }:
      mkDerivation {
        pname = "pontarius-xmpp";
-       version = "0.5.5";
-       sha256 = "044fhp9fa2fp0aka972wmlmfq05k63dc1xb6fqrbwcyaamlprdsp";
+       version = "0.5.6";
+       sha256 = "0r4q8vsl4a51dgfqzgi3ljndiw9k9yr4561prck1nzxbcl2d7c70";
        setupHaskellDepends = [ base Cabal filepath ];
        libraryHaskellDepends = [
          attoparsec base base64-bytestring binary bytestring conduit
@@ -168507,8 +170057,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "possible";
-       version = "0.1.0.5";
-       sha256 = "1iiyz3yf5rwcdawrbawdrx3fwrhb1s62ram6yavfwkvc7j9rfvzx";
+       version = "0.1.0.6";
+       sha256 = "1r3xg8yni440h0yzcq5a4w27l3877y7bdvx70jf6agcyqhsl4ppj";
        libraryHaskellDepends = [ base ];
        description = "Three valued Data.Maybe";
        license = stdenv.lib.licenses.bsd3;
@@ -168784,26 +170334,25 @@ self: {
 
   "postgresql-orm" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring
-     , bytestring-builder, directory, filepath, ghc-prim, mtl
-     , old-locale, postgresql-simple, process, text, time, transformers
-     , unix, unordered-containers, vector
+     , bytestring-builder, directory, filepath, ghc-prim
+     , haskell-src-exts, mtl, old-locale, postgresql-simple, process
+     , temporary, text, time, transformers, unix, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "postgresql-orm";
-       version = "0.5.0";
-       sha256 = "0kxg5z0s82ipcmynpxisq0a3rbhg630rk0xgyrqjcimxh7094n2y";
+       version = "0.5.1";
+       sha256 = "0fqas5ycxx43lvc8zm6ljh3lqgrhwrn712r2ijyjswdqrmf7wl53";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring bytestring-builder directory
-         filepath ghc-prim mtl old-locale postgresql-simple process text
-         time transformers unix unordered-containers vector
-       ];
-       executableHaskellDepends = [
-         base blaze-builder bytestring bytestring-builder directory filepath
-         ghc-prim mtl old-locale postgresql-simple process time
+         filepath ghc-prim haskell-src-exts mtl old-locale postgresql-simple
+         process temporary text time transformers unix unordered-containers
+         vector
        ];
+       executableHaskellDepends = [ base filepath ];
        description = "An ORM (Object Relational Mapping) and migrations DSL for PostgreSQL";
        license = "GPL";
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -169211,8 +170760,8 @@ self: {
      }:
      mkDerivation {
        pname = "postmark";
-       version = "0.2.6";
-       sha256 = "0x8nvxhw6wwq9w9dl16gvh6j6la224s2ldakx694518amqd4avrx";
+       version = "0.2.7";
+       sha256 = "0y8bflkqf8sdp77irkm18apnajwx5b4pl7qr2i8s9x0zg0vcyr9c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -170342,6 +171891,8 @@ self: {
        pname = "pretty-terminal";
        version = "0.1.0.0";
        sha256 = "0rr5mwg4j2zw0k1p2y042z5769l53vlxn5c9bf23jw7whi6gfxlf";
+       revision = "1";
+       editedCabalFile = "1ncs74ycnpkcqazhz3iqi2cx9nr88vg8i457ynmf7a5jxf35s4z9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base text ];
@@ -171045,6 +172596,8 @@ self: {
        pname = "probable";
        version = "0.1.3";
        sha256 = "196m3v30818q034x7jdnqdwfqffx5pfj64yyw0q2blhwzkhc0f9n";
+       revision = "2";
+       editedCabalFile = "01cah34a5bzqlf76aqpc3038gxq7iy4krrzrj788c11ybawq0mgn";
        libraryHaskellDepends = [
          base mtl mwc-random primitive statistics transformers vector
        ];
@@ -171053,6 +172606,7 @@ self: {
        ];
        description = "Easy and reasonably efficient probabilistic programming and random generation";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "proc" = callPackage
@@ -171870,6 +173424,8 @@ self: {
        pname = "prometheus";
        version = "2.1.1";
        sha256 = "09g3xi6x6m6h15p3ibwyabfq15rhcaphq7ix2w23aphjwc64ll97";
+       revision = "1";
+       editedCabalFile = "1jbs0p3ji5jz0qglkdw6gpr6x3i7ig044rcz58mcil04bsswymgq";
        libraryHaskellDepends = [
          atomic-primops base bytestring containers http-client http-types
          network-uri text transformers wai warp
@@ -172253,14 +173809,38 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "proto-lens_0_5_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, ghc-prim
+     , lens-family, parsec, pretty, primitive, profunctors, QuickCheck
+     , tagged, test-framework, test-framework-quickcheck2, text
+     , transformers, vector, void
+     }:
+     mkDerivation {
+       pname = "proto-lens";
+       version = "0.5.0.0";
+       sha256 = "1h0ng6vymdswapc88c84rp7d4l2l19d9kg7v10a0zbj093k9m98s";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bytestring containers deepseq ghc-prim lens-family parsec
+         pretty primitive profunctors tagged text transformers vector void
+       ];
+       testHaskellDepends = [
+         base bytestring QuickCheck test-framework
+         test-framework-quickcheck2 vector
+       ];
+       description = "A lens-based implementation of protocol buffers in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "proto-lens-arbitrary" = callPackage
     ({ mkDerivation, base, bytestring, containers, lens-family
      , proto-lens, QuickCheck, text
      }:
      mkDerivation {
        pname = "proto-lens-arbitrary";
-       version = "0.1.2.5";
-       sha256 = "13cd9r9r2g913p3d3m7ljgv97wsdlr0v6js1r7k2w6npclgj13hd";
+       version = "0.1.2.6";
+       sha256 = "1ij221zy2m7g9wp05ksk7labminvp6zynylfh4bc7z50qmhbwgr3";
        libraryHaskellDepends = [
          base bytestring containers lens-family proto-lens QuickCheck text
        ];
@@ -172311,8 +173891,8 @@ self: {
     ({ mkDerivation, base, optparse-applicative, proto-lens, text }:
      mkDerivation {
        pname = "proto-lens-optparse";
-       version = "0.1.1.4";
-       sha256 = "1dn5cjwbagcykh1fv99v6mmj7mlnl46nqlwpz1878fy7vl7i8lzh";
+       version = "0.1.1.5";
+       sha256 = "0p8acjhvaca9bz7hmifi2p39dbzis8gm6f91fz1bn36s0xzb42f2";
        libraryHaskellDepends = [
          base optparse-applicative proto-lens text
        ];
@@ -172355,6 +173935,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) protobuf;};
 
+  "proto-lens-protobuf-types_0_5_0_0" = callPackage
+    ({ mkDerivation, base, Cabal, lens-family, proto-lens
+     , proto-lens-runtime, proto-lens-setup, protobuf, text
+     }:
+     mkDerivation {
+       pname = "proto-lens-protobuf-types";
+       version = "0.5.0.0";
+       sha256 = "1j37g1w6b7hph61x7hrvvs7sp5kzl24slmbnlyn8a7z04kbhgr90";
+       setupHaskellDepends = [ base Cabal proto-lens-setup ];
+       libraryHaskellDepends = [
+         base lens-family proto-lens proto-lens-runtime text
+       ];
+       libraryToolDepends = [ protobuf ];
+       description = "Basic protocol buffer message types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) protobuf;};
+
   "proto-lens-protoc_0_2_2_3" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers
      , data-default-class, directory, filepath, haskell-src-exts
@@ -172404,6 +174002,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) protobuf;};
 
+  "proto-lens-protoc_0_5_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath
+     , haskell-src-exts, lens-family, pretty, proto-lens, protobuf, text
+     }:
+     mkDerivation {
+       pname = "proto-lens-protoc";
+       version = "0.5.0.0";
+       sha256 = "0r6il4gvvcggxxbz2hq1kkw1qwk1rspqcb2j04ngd06pmvicw78n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers filepath haskell-src-exts lens-family pretty
+         proto-lens text
+       ];
+       libraryToolDepends = [ protobuf ];
+       executableHaskellDepends = [
+         base bytestring containers lens-family proto-lens text
+       ];
+       description = "Protocol buffer compiler for the proto-lens library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) protobuf;};
+
   "proto-lens-runtime" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, filepath
      , lens-family, lens-labels, proto-lens, text
@@ -172420,14 +174041,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "proto-lens-runtime_0_5_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, filepath
+     , lens-family, proto-lens, text, vector
+     }:
+     mkDerivation {
+       pname = "proto-lens-runtime";
+       version = "0.5.0.0";
+       sha256 = "0hd1hcrirnj92nkd15l1m081wvxas62az3zijg1cr4lf93rg9hgc";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq filepath lens-family proto-lens
+         text vector
+       ];
+       doHaddock = false;
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "proto-lens-setup" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, deepseq
      , directory, filepath, process, proto-lens-protoc, temporary, text
      }:
      mkDerivation {
        pname = "proto-lens-setup";
-       version = "0.4.0.1";
-       sha256 = "1x8lj5z2ih20757m0di0lg4kn3s3g90qpjpv5wkzj2xf097cwqjp";
+       version = "0.4.0.2";
+       sha256 = "1zqlkkzdg9myfy2myv0y19zmsjsvcd5rcimf6f48gnijl3001i8v";
        libraryHaskellDepends = [
          base bytestring Cabal containers deepseq directory filepath process
          proto-lens-protoc temporary text
@@ -174296,8 +175934,8 @@ self: {
      }:
      mkDerivation {
        pname = "qrcode-core";
-       version = "0.8.0";
-       sha256 = "1rfrigh6ny305d3xq33cbpjjnhk0bsc2m00ic0y27jvyz73k8k43";
+       version = "0.9.0";
+       sha256 = "1kbd88p0px9p8w9v9jgxv03xsl2b7ksjsf6m5c5xffpmjilij9b4";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive containers dlist primitive
          text vector
@@ -175733,6 +177371,8 @@ self: {
        pname = "radian";
        version = "0.1";
        sha256 = "150vb9wk73avh8rrsz92y1fcwlm30w4k23lbdncb8ivinqhdi4pv";
+       revision = "1";
+       editedCabalFile = "1mkk17rrg2z6s1qkzz7qcm6q6qvgmcmvii9rzjzgn73m1x1l5rim";
        libraryHaskellDepends = [ base profunctors ];
        testHaskellDepends = [ base HUnit lens ];
        description = "Isomorphisms for measurements that use radians";
@@ -176960,6 +178600,33 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rating-chgk-info" = callPackage
+    ({ mkDerivation, aeson, base-noprelude, bytestring, cassava
+     , containers, gauge, http-client, iconv, lens, network
+     , optparse-generic, relude, servant, servant-client, servant-js
+     , servant-server, servant-swagger, swagger2, text, time, vector
+     , wai, warp, wreq
+     }:
+     mkDerivation {
+       pname = "rating-chgk-info";
+       version = "0.3.6.3";
+       sha256 = "0mwivwh33lmm7a0h2kc06n3453vbbkxzhjvm0xrb8qrrjk8mi1df";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base-noprelude bytestring cassava containers http-client
+         iconv lens network optparse-generic relude servant servant-client
+         servant-js servant-server servant-swagger swagger2 text time vector
+         wai warp wreq
+       ];
+       executableHaskellDepends = [ base-noprelude relude text time ];
+       testHaskellDepends = [ base-noprelude relude ];
+       benchmarkHaskellDepends = [ base-noprelude gauge relude ];
+       description = "Client for rating.chgk.info API and CSV tables (documentation in Russian)";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rating-systems" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -177014,7 +178681,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "rattletrap_6_2_1" = callPackage
+  "rattletrap_6_2_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
      , bytestring, clock, containers, filepath, http-client
      , http-client-tls, HUnit, template-haskell, temporary, text
@@ -177022,8 +178689,8 @@ self: {
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "6.2.1";
-       sha256 = "0pygwgq5q6mvpbkis2xiw6ac65fn8q9452qql5dc21p4mi27bwka";
+       version = "6.2.2";
+       sha256 = "06gbvkg6wn7dql954bzbw8l1460hk2f9055404q0a949qlmmqb3p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -178110,8 +179777,10 @@ self: {
     ({ mkDerivation, base, extra, filepath }:
      mkDerivation {
        pname = "record-dot-preprocessor";
-       version = "0.1.4";
-       sha256 = "1mj39kdnf3978cc51hh1fnnr0ax3gnqw4fan0f099b7li5y2xlwx";
+       version = "0.1.5";
+       sha256 = "1vap09g7gh9nsr4x4bfysx3ha8kc9vpx252j0fdmffbivyj5d2wl";
+       revision = "1";
+       editedCabalFile = "1hggzp6fh071f2d11pn1y2rgczgxgvcfw86717gpxsm34kr60pgb";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base extra filepath ];
@@ -178968,6 +180637,7 @@ self: {
        ];
        description = "Functional Reactive Web Apps with Reflex";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "reflex-dom-fragment-shader-canvas" = callPackage
@@ -181130,7 +182800,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "req_2_0_0" = callPackage
+  "req_2_0_1" = callPackage
     ({ mkDerivation, aeson, authenticate-oauth, base, blaze-builder
      , bytestring, case-insensitive, connection, hspec, hspec-core
      , hspec-discover, http-api-data, http-client, http-client-tls
@@ -181139,8 +182809,8 @@ self: {
      }:
      mkDerivation {
        pname = "req";
-       version = "2.0.0";
-       sha256 = "0avwvslsb689p9afbh3k0zwmqwkrqagicz26xcyfjsd5648mh3wr";
+       version = "2.0.1";
+       sha256 = "1mfm6yy23l64kqbxvp1yn3yqf7fl46as87rz4yazg7f5x13bas3r";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson authenticate-oauth base blaze-builder bytestring
@@ -181215,6 +182885,8 @@ self: {
        pname = "req-url-extra";
        version = "0.1.0.0";
        sha256 = "113xsf37kra3k3jhf2wh37rsgphxz24rsn3dy8zw1cwzsim2dpmk";
+       revision = "2";
+       editedCabalFile = "0srj9fcbm9y8ddqgs8wc6caxamhgnic54y8qpxwnqdxrggdfkk67";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base modern-uri req ];
@@ -181226,6 +182898,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "req-url-extra_0_1_1_0" = callPackage
+    ({ mkDerivation, aeson, base, hspec, modern-uri, req, text }:
+     mkDerivation {
+       pname = "req-url-extra";
+       version = "0.1.1.0";
+       sha256 = "0jchywnpygwi0nsqfzqnfafwiajvqirmkrv4cr4bg50g3bs6c5s8";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base modern-uri req ];
+       executableHaskellDepends = [ aeson base modern-uri req text ];
+       testHaskellDepends = [ base hspec modern-uri req ];
+       description = "Provides URI/URL helper functions for use with Req";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "reqcatcher" = callPackage
     ({ mkDerivation, base, http-client, http-types, HUnit, lens
      , network, tasty, tasty-hunit, text, wai, warp, wreq
@@ -181369,16 +183057,14 @@ self: {
      }) {};
 
   "resistor-cube" = callPackage
-    ({ mkDerivation, base, hmatrix, transformers, utility-ht }:
+    ({ mkDerivation, base, comfort-array, lapack }:
      mkDerivation {
        pname = "resistor-cube";
-       version = "0.0.0.3";
-       sha256 = "1b9lzdmd852dvy1in7b1zvcj19blnbmdi01cygrbpc7l4bm1rx09";
+       version = "0.0.1";
+       sha256 = "0gx2b45wyp61pqf0cwnmq1fznyvl6s3xcq9l38vggf9g90gs4fvz";
        isLibrary = false;
        isExecutable = true;
-       executableHaskellDepends = [
-         base hmatrix transformers utility-ht
-       ];
+       executableHaskellDepends = [ base comfort-array lapack ];
        description = "Compute total resistance of a cube of resistors";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -182567,8 +184253,8 @@ self: {
      }:
      mkDerivation {
        pname = "ridley";
-       version = "0.3.1.2";
-       sha256 = "15hc1j0bkdb0wbivxl73rgrk4hl598d96yv0fhpsgls74alarniq";
+       version = "0.3.1.3";
+       sha256 = "0j7wvzk2x3xpvwwfkz1bll9awfrlbn1lcl50hm582plnl2pgddq0";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          async base containers ekg-core ekg-prometheus-adapter inline-c
@@ -182592,8 +184278,8 @@ self: {
      }:
      mkDerivation {
        pname = "ridley-extras";
-       version = "0.1.0.1";
-       sha256 = "01fl5mq9rp7nipxqi38k2bcdi8hiix02gf2sw8mr1xvvwdm925l2";
+       version = "0.1.0.2";
+       sha256 = "0ckc9amxp6picp1xmpxgplnxsn39p5h6j0y8h3mj5ik3720qn6c8";
        libraryHaskellDepends = [
          base ekg-prometheus-adapter microlens mtl prometheus ridley shelly
          text transformers
@@ -183440,26 +185126,72 @@ self: {
 
   "ron" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, binary, bytestring
-     , containers, criterion, deepseq, Diff, directory, errors, extra
-     , filepath, hashable, hedn, mtl, network-info, safe
-     , template-haskell, text, time, transformers, unordered-containers
-     , vector
+     , containers, criterion, deepseq, hashable, integer-gmp, mtl
+     , template-haskell, text, time, unordered-containers
      }:
      mkDerivation {
        pname = "ron";
-       version = "0.4";
-       sha256 = "1y4nzsgc47aiirv387iwb0bmyr31pprian57ka2fwybw5dvlx84x";
+       version = "0.5";
+       sha256 = "1czcpcc52sv1m4wj66wsbjscb5g2wrg22spvi1qsxgpjjs3grj1f";
        libraryHaskellDepends = [
-         aeson attoparsec base binary bytestring containers Diff directory
-         errors extra filepath hashable hedn mtl network-info safe
-         template-haskell text time transformers unordered-containers vector
+         aeson attoparsec base binary bytestring containers hashable
+         integer-gmp mtl template-haskell text time unordered-containers
        ];
-       benchmarkHaskellDepends = [ base criterion deepseq ];
-       description = "RON, RON-RDT, and RON-Schema";
+       benchmarkHaskellDepends = [ base criterion deepseq integer-gmp ];
+       description = "RON";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ron-rdt" = callPackage
+    ({ mkDerivation, base, containers, Diff, hashable, integer-gmp, mtl
+     , ron, text, time, transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "ron-rdt";
+       version = "0.5";
+       sha256 = "0djqbr5wiillk0ksbhvnswrxq3jz8cfd7m2kw0g1207kd29vvbd3";
+       libraryHaskellDepends = [
+         base containers Diff hashable integer-gmp mtl ron text time
+         transformers unordered-containers
+       ];
+       description = "Replicated Data Types (RON-RDT)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "ron-schema" = callPackage
+    ({ mkDerivation, base, bytestring, containers, hedn, integer-gmp
+     , megaparsec, mtl, ron, ron-rdt, template-haskell, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "ron-schema";
+       version = "0.5";
+       sha256 = "13i7hnl3l890r5y106b957nlvv3v2h6l2gmkq77pizlqlyv73jzi";
+       libraryHaskellDepends = [
+         base bytestring containers hedn integer-gmp megaparsec mtl ron
+         ron-rdt template-haskell text transformers
+       ];
+       description = "RON-Schema";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "ron-storage" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , integer-gmp, mtl, network-info, ron, ron-rdt, text, transformers
+     }:
+     mkDerivation {
+       pname = "ron-storage";
+       version = "0.5";
+       sha256 = "17gq7pxnniigvg7jk6kn87fd5m9bg0glv0mrahhralsb3zdp4klq";
+       libraryHaskellDepends = [
+         base bytestring containers directory filepath integer-gmp mtl
+         network-info ron ron-rdt text transformers
+       ];
+       description = "RON Storage";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "roots" = callPackage
     ({ mkDerivation, base, tagged }:
      mkDerivation {
@@ -184111,17 +185843,16 @@ self: {
   "rss-conduit" = callPackage
     ({ mkDerivation, atom-conduit, base, blaze-builder, bytestring
      , conduit, conduit-combinators, containers, data-default
-     , dublincore-xml-conduit, lens-simple, mono-traversable, QuickCheck
-     , quickcheck-instances, resourcet, safe, safe-exceptions
-     , singletons, tasty, tasty-hunit, tasty-quickcheck, text, time
-     , timerep, uri-bytestring, vinyl, xml-conduit, xml-types
+     , dublincore-xml-conduit, filepath, lens-simple, mono-traversable
+     , QuickCheck, quickcheck-instances, resourcet, safe
+     , safe-exceptions, singletons, tasty, tasty-golden, tasty-hunit
+     , tasty-quickcheck, text, time, timerep, uri-bytestring, vinyl
+     , xml-conduit, xml-types
      }:
      mkDerivation {
        pname = "rss-conduit";
-       version = "0.4.3.0";
-       sha256 = "003crn6pczr8x3r0j9nkx22gqwq0fvy4mkksmng8vp7qbvycvzvz";
-       revision = "1";
-       editedCabalFile = "0dnp7a1xi344qhdqmr3hsnai7id4d87rll0wsww3wcfh2bh0nm6q";
+       version = "0.4.3.1";
+       sha256 = "09bf66hk1kv5jn01wwqicmjvhzl4cvkn7qlf9bh5jyq3g17vybsq";
        libraryHaskellDepends = [
          atom-conduit base conduit conduit-combinators containers
          dublincore-xml-conduit lens-simple safe safe-exceptions singletons
@@ -184129,10 +185860,11 @@ self: {
        ];
        testHaskellDepends = [
          atom-conduit base blaze-builder bytestring conduit
-         conduit-combinators data-default dublincore-xml-conduit lens-simple
-         mono-traversable QuickCheck quickcheck-instances resourcet
-         safe-exceptions singletons tasty tasty-hunit tasty-quickcheck text
-         time uri-bytestring vinyl xml-conduit xml-types
+         conduit-combinators data-default dublincore-xml-conduit filepath
+         lens-simple mono-traversable QuickCheck quickcheck-instances
+         resourcet safe-exceptions singletons tasty tasty-golden tasty-hunit
+         tasty-quickcheck text time uri-bytestring vinyl xml-conduit
+         xml-types
        ];
        description = "Streaming parser/renderer for the RSS standard";
        license = stdenv.lib.licenses.publicDomain;
@@ -185207,6 +186939,7 @@ self: {
        ];
        description = "Configuration Loader";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "salak_0_2_3" = callPackage
@@ -185518,8 +187251,10 @@ self: {
      }:
      mkDerivation {
        pname = "sandi";
-       version = "0.4.3";
-       sha256 = "0ji1zn9nkh8rdm0m9zpxdnz5zw0q0qypzyp2k9fn6j9v08r17p3n";
+       version = "0.5";
+       sha256 = "1ndgai8idlxyccvkz5zsgq06v58blc30i6hkky5b1sf5x6gs2h29";
+       revision = "1";
+       editedCabalFile = "1aj9i1ir6ks3bdb47yvqlxv2azrz09p69ggr73m0cxvir9rd0y5j";
        libraryHaskellDepends = [ base bytestring conduit exceptions ];
        testHaskellDepends = [
          base bytestring tasty tasty-hunit tasty-quickcheck tasty-th
@@ -185923,6 +187658,90 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "sc2-lowlevel" = callPackage
+    ({ mkDerivation, base, bytestring, containers, data-default-class
+     , directory, filepath, freer-simple, lens, lens-labels, network
+     , optparse-applicative, process, proto-lens, sc2-proto, sc2-support
+     , text, websockets
+     }:
+     mkDerivation {
+       pname = "sc2-lowlevel";
+       version = "0.1.0.0";
+       sha256 = "1hgayxpgixhd3v5ngg4lz4pfnarvbb20ycjs0ys55prmdcpp3424";
+       libraryHaskellDepends = [
+         base bytestring containers data-default-class directory filepath
+         freer-simple lens lens-labels network optparse-applicative process
+         proto-lens sc2-proto sc2-support text websockets
+       ];
+       description = "Low-level Starcraft II API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "sc2-proto" = callPackage
+    ({ mkDerivation, base, Cabal, filepath, gitrev, proto-lens-protoc
+     , proto-lens-runtime, proto-lens-setup, protoc
+     }:
+     mkDerivation {
+       pname = "sc2-proto";
+       version = "0.1.0.2";
+       sha256 = "0v80jh0l9rfvzxm1n1rvyv06kkhwa3gr4xq8vvsl2m9nmvbdvhzy";
+       setupHaskellDepends = [
+         base Cabal filepath proto-lens-protoc proto-lens-setup
+       ];
+       libraryHaskellDepends = [
+         base filepath gitrev proto-lens-runtime
+       ];
+       libraryToolDepends = [ proto-lens-protoc protoc ];
+       description = "A protocol buffer model for the Starcraft II bot API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {protoc = null;};
+
+  "sc2-support" = callPackage
+    ({ mkDerivation, aeson, base, directory, filepath, lens
+     , lens-labels, template-haskell, text
+     }:
+     mkDerivation {
+       pname = "sc2-support";
+       version = "0.1.0.0";
+       sha256 = "0f7rz16bl075fnb92sbczw23xx225qayw9ybfvr8019p3lkm0yij";
+       libraryHaskellDepends = [
+         aeson base directory filepath lens lens-labels template-haskell
+         text
+       ];
+       description = "Support and utility library for sc2hs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "sc2hs" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, etc
+     , filepath, freer-simple, gitrev, lens, lens-labels, proto-lens
+     , sc2-lowlevel, sc2-proto, sc2-support, text
+     }:
+     mkDerivation {
+       pname = "sc2hs";
+       version = "0.1.0.0";
+       sha256 = "01g6py46mry4yzmzbimqb2777byh8lm4mb26mnm3zj8d7r76lam7";
+       revision = "1";
+       editedCabalFile = "0v6lcaahycqd5sw8rykvxw9gjf18ch2vybn7p85b3vqw81qiz0wh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers directory etc filepath freer-simple
+         gitrev lens lens-labels proto-lens sc2-lowlevel sc2-proto
+         sc2-support text
+       ];
+       executableHaskellDepends = [
+         base bytestring containers directory etc filepath freer-simple
+         gitrev lens lens-labels proto-lens sc2-lowlevel sc2-proto
+         sc2-support text
+       ];
+       description = "An interface to the Starcraft II bot API";
+       license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sc3-rdu" = callPackage
     ({ mkDerivation, base, hsc3, hsc3-db }:
      mkDerivation {
@@ -186027,6 +187846,23 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "scalpel_0_6_0" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, data-default
+     , http-client, http-client-tls, scalpel-core, tagsoup, text
+     }:
+     mkDerivation {
+       pname = "scalpel";
+       version = "0.6.0";
+       sha256 = "0jbrfcgljl8kbcwi2zqx1jp3c3dpxrkc94za44x56kcz68n89hlz";
+       libraryHaskellDepends = [
+         base bytestring case-insensitive data-default http-client
+         http-client-tls scalpel-core tagsoup text
+       ];
+       description = "A high level web scraping library for Haskell";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "scalpel-core" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion
      , data-default, fail, HUnit, regex-base, regex-tdfa, tagsoup, text
@@ -186046,6 +187882,26 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "scalpel-core_0_6_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, criterion
+     , data-default, fail, HUnit, pointedlist, regex-base, regex-tdfa
+     , tagsoup, text, vector
+     }:
+     mkDerivation {
+       pname = "scalpel-core";
+       version = "0.6.0";
+       sha256 = "1qf0gnidyh8zk0acj99vn6hsj37m410lrm50sqpiv1i36rpmmsqh";
+       libraryHaskellDepends = [
+         base bytestring containers data-default fail pointedlist regex-base
+         regex-tdfa tagsoup text vector
+       ];
+       testHaskellDepends = [ base HUnit regex-base regex-tdfa tagsoup ];
+       benchmarkHaskellDepends = [ base criterion tagsoup text ];
+       description = "A high level web scraping library for Haskell";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "scan" = callPackage
     ({ mkDerivation, base, parsec }:
      mkDerivation {
@@ -186273,8 +188129,8 @@ self: {
      }:
      mkDerivation {
        pname = "schematic";
-       version = "0.4.2.0";
-       sha256 = "0k63pnv8mip8kn623s5n7w24bd4spjmi1a9h280nf7wd1q8z72n4";
+       version = "0.5.0.0";
+       sha256 = "0mq38m08gj90gyk38lj4vyyfz0d6qrpxlpqjizqvyj4k3hqqy4ka";
        libraryHaskellDepends = [
          aeson base bytestring containers hjsonschema mtl profunctors
          regex-tdfa regex-tdfa-text scientific singletons smallcheck tagged
@@ -186947,6 +188803,7 @@ self: {
        ];
        description = "Automatically derive Kotlin class to query servant webservices";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "scrape-changes" = callPackage
@@ -189187,6 +191044,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-avro" = callPackage
+    ({ mkDerivation, avro, base, hspec, http-client, QuickCheck
+     , servant, servant-client, servant-server, text, warp
+     }:
+     mkDerivation {
+       pname = "servant-avro";
+       version = "0.1.0.0";
+       sha256 = "1q7fxgnyqpbg0zrk2kdrsx3g1sj5nz6xns2g54lvfwl8ksjyv8lg";
+       libraryHaskellDepends = [ avro base servant ];
+       testHaskellDepends = [
+         avro base hspec http-client QuickCheck servant servant-client
+         servant-server text warp
+       ];
+       description = "Avro content type for Servant";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "servant-blaze" = callPackage
     ({ mkDerivation, base, blaze-html, http-media, servant
      , servant-server, wai, warp
@@ -190810,6 +192684,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "servant-waargonaut" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, http-media
+     , http-types, lens, servant, servant-server, tasty, tasty-wai, text
+     , transformers, waargonaut, wai, wl-pprint-annotated
+     }:
+     mkDerivation {
+       pname = "servant-waargonaut";
+       version = "0.5.0.1";
+       sha256 = "05j4d99nl5165fr5799fpfw9xxadn77gmx1zcvsi075piacf0s2k";
+       libraryHaskellDepends = [
+         attoparsec base bytestring http-media lens servant text waargonaut
+         wl-pprint-annotated
+       ];
+       testHaskellDepends = [
+         attoparsec base bytestring http-media http-types lens servant
+         servant-server tasty tasty-wai text transformers waargonaut wai
+         wl-pprint-annotated
+       ];
+       description = "Servant Integration for Waargonaut JSON Package";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-websockets" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, conduit
      , exceptions, resourcet, servant-server, text, wai, wai-websockets
@@ -190838,8 +192735,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-xml";
-       version = "1.0.1.2";
-       sha256 = "16zyvxscplgb08jljg7k728lq17b8xmrri6xbq47j74namp2n55z";
+       version = "1.0.1.3";
+       sha256 = "0f033s1nmhw5xsmnvj3rqmrw6zd0ywbr7v6v9dxlx9daim4jps1v";
        libraryHaskellDepends = [
          base bytestring http-media servant xmlbf xmlbf-xeno
        ];
@@ -191326,8 +193223,8 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "set-of";
-       version = "0.1.0.1";
-       sha256 = "13liv3nh6c8hbkjr119x6zvibkrkah0zslk283d2zl6qw7w7sngm";
+       version = "0.1.0.2";
+       sha256 = "0npsxff611frdb2a5xbyd4ipn3qb8ji6a1yygxid7pk7qsx0spj1";
        libraryHaskellDepends = [ base containers ];
        description = "Sets of fixed size, with typelits";
        license = stdenv.lib.licenses.bsd3;
@@ -191555,8 +193452,8 @@ self: {
      }:
      mkDerivation {
        pname = "sexp-grammar";
-       version = "2.0.1";
-       sha256 = "0znzxih07yhm0gjbwzm3gdvmrjm2676g7sqjicawc86fwww1rgms";
+       version = "2.0.2";
+       sha256 = "1cmn5y72wp9dlzqzrv4rmfb1zm3zw517la0kf0vgyv3nhsn58397";
        libraryHaskellDepends = [
          array base bytestring containers deepseq invertible-grammar
          prettyprinter recursion-schemes scientific semigroups text
@@ -191606,6 +193503,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "sexpr-parser" = callPackage
+    ({ mkDerivation, base, bytestring, hspec, megaparsec, process }:
+     mkDerivation {
+       pname = "sexpr-parser";
+       version = "0.1.1.2";
+       sha256 = "183l1d8kjzv2is7kdaa83jbr46w61fn2g7yrvc3wjmwsnrylfj29";
+       revision = "3";
+       editedCabalFile = "0sv07n6s023z2dl6n89kx26nnc3nrkpmbbfj4sqcrj6i3q4k06g4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base megaparsec ];
+       executableHaskellDepends = [ base bytestring megaparsec process ];
+       testHaskellDepends = [ base hspec megaparsec ];
+       description = "Simple s-expression parser";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "sext" = callPackage
     ({ mkDerivation, base, bytestring, tasty, tasty-hunit
      , template-haskell, text, vector
@@ -191866,31 +193780,31 @@ self: {
 
   "shake" = callPackage
     ({ mkDerivation, base, binary, bytestring, deepseq, directory
-     , extra, filepath, hashable, heaps, js-flot, js-jquery, primitive
-     , process, QuickCheck, random, time, transformers, unix
+     , extra, filepath, filepattern, hashable, heaps, js-flot, js-jquery
+     , primitive, process, QuickCheck, random, time, transformers, unix
      , unordered-containers, utf8-string
      }:
      mkDerivation {
        pname = "shake";
-       version = "0.17.4";
-       sha256 = "1akmhmkyzf689mf2z7k14az5p4kr5h66dapa00mwv7jmanyxzbdy";
+       version = "0.17.6";
+       sha256 = "17vyd7qd9x2ild3mpwbqhsy9270bl5pdpjrhracs9p83isw4sa1k";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base binary bytestring deepseq directory extra filepath hashable
-         heaps js-flot js-jquery primitive process random time transformers
-         unix unordered-containers utf8-string
+         base binary bytestring deepseq directory extra filepath filepattern
+         hashable heaps js-flot js-jquery primitive process random time
+         transformers unix unordered-containers utf8-string
        ];
        executableHaskellDepends = [
-         base binary bytestring deepseq directory extra filepath hashable
-         heaps js-flot js-jquery primitive process random time transformers
-         unix unordered-containers utf8-string
+         base binary bytestring deepseq directory extra filepath filepattern
+         hashable heaps js-flot js-jquery primitive process random time
+         transformers unix unordered-containers utf8-string
        ];
        testHaskellDepends = [
-         base binary bytestring deepseq directory extra filepath hashable
-         heaps js-flot js-jquery primitive process QuickCheck random time
-         transformers unix unordered-containers utf8-string
+         base binary bytestring deepseq directory extra filepath filepattern
+         hashable heaps js-flot js-jquery primitive process QuickCheck
+         random time transformers unix unordered-containers utf8-string
        ];
        description = "Build system library, like Make, but more accurate dependencies";
        license = stdenv.lib.licenses.bsd3;
@@ -192646,8 +194560,8 @@ self: {
     ({ mkDerivation, base, hspec, megaparsec, text }:
      mkDerivation {
        pname = "shellwords";
-       version = "0.1.2.1";
-       sha256 = "0r4a3m16bn60xg08439ikq99m6xz8vl3yxqmp7dij1xxijx8wwzn";
+       version = "0.1.2.2";
+       sha256 = "0d99ix0gffch5vnbnkd48zlah6lgbn4pj1z58k07g90rickrv4sl";
        libraryHaskellDepends = [ base megaparsec text ];
        testHaskellDepends = [ base hspec ];
        description = "Parse strings into words, like a shell would";
@@ -192819,8 +194733,8 @@ self: {
      }:
      mkDerivation {
        pname = "shimmer";
-       version = "0.1.3.3";
-       sha256 = "067ih976xfarfnyrj2hqg27n4agb46hpv9a541qz2vj9rqj6ckl6";
+       version = "0.1.3.4";
+       sha256 = "1py65pz0kmp8fh102gqy4zvmdppyhpdg8h185nbx15zx4qq60i1c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -193056,6 +194970,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "shower" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, megaparsec
+     , pretty, process, tasty, tasty-golden, temporary
+     }:
+     mkDerivation {
+       pname = "shower";
+       version = "0.1";
+       sha256 = "1jnj0v8h01sb5znc3rlfrplkyis9aflxgwg01l9a5293l19jgs4r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base megaparsec pretty ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base containers directory filepath process tasty tasty-golden
+         temporary
+       ];
+       description = "Clean up the formatting of 'show' output";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "shpider" = callPackage
     ({ mkDerivation, base, bytestring, containers, curl, mtl
      , regex-posix, tagsoup, tagsoup-parsec, time, url, web-encodings
@@ -193532,6 +195467,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "simple-cmd_0_1_3" = callPackage
+    ({ mkDerivation, base, directory, filepath, process }:
+     mkDerivation {
+       pname = "simple-cmd";
+       version = "0.1.3";
+       sha256 = "04bbdfmfy08fl07f0pqzp31jy4fdky4d9hazyxpqla8m3rs49xa9";
+       libraryHaskellDepends = [ base directory filepath process ];
+       description = "Simple String-based process commands";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "simple-cmd-args" = callPackage
+    ({ mkDerivation, base, optparse-applicative }:
+     mkDerivation {
+       pname = "simple-cmd-args";
+       version = "0.1.0";
+       sha256 = "1cwh2ikk1iccbm5yq7hihk3yhfg4zbxsi8q1jpjavzlcs18sfnll";
+       libraryHaskellDepends = [ base optparse-applicative ];
+       description = "Simple command args parsing and execution";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "simple-conduit" = callPackage
     ({ mkDerivation, base, bifunctors, bytestring, CC-delcont
      , chunked-data, conduit, conduit-combinators, conduit-extra
@@ -194016,8 +195974,8 @@ self: {
     ({ mkDerivation, base, process }:
      mkDerivation {
        pname = "simple-smt";
-       version = "0.9.3";
-       sha256 = "17v8zpiiha8kyb4xbrqdnfibf1dwzf9lbhxj9kffvl948ygxdp8x";
+       version = "0.9.4";
+       sha256 = "0sbwgyw2a5p85yddvmvzk85709qjqny3xgps7zg9k17m9d5bwdm0";
        libraryHaskellDepends = [ base process ];
        description = "A simple way to interact with an SMT solver process";
        license = stdenv.lib.licenses.bsd3;
@@ -194580,8 +196538,8 @@ self: {
      }:
      mkDerivation {
        pname = "siren-json";
-       version = "0.3.0.0";
-       sha256 = "096a4ls4kqpslqsh499ykh7mkvnz3q7n00w1par69kmj4x3g9v0j";
+       version = "0.3.1.1";
+       sha256 = "0idkblh14jz1l2miphb07lynpw8n1bshxf3q37chclc25wr156zk";
        libraryHaskellDepends = [
          aeson base bytestring containers http-media http-types network-uri
          network-uri-json text unordered-containers
@@ -195010,8 +196968,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.7.5";
-       sha256 = "080kmpqaqh76qqjml34rfm7m6pchdmd2519g6y3kdb3x5vj01qbx";
+       version = "0.7.6";
+       sha256 = "0dzwk8603xd7wasxw0hg7pr18kfdb4f6gjqh42j6ldbn89w00d4f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -195034,8 +196992,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting-core";
-       version = "0.7.5";
-       sha256 = "129q860xk59n8dxsxl7prk0jk3ddl96r9i6r4lsk5l9pbpms41pp";
+       version = "0.7.6";
+       sha256 = "02jhla474vpr56dn0573j29lngqi2v167n7bxlra20ywlgbj5mn7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -195056,6 +197014,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "skylighting-extensions" = callPackage
+    ({ mkDerivation, base, containers, skylighting, skylighting-modding
+     , text
+     }:
+     mkDerivation {
+       pname = "skylighting-extensions";
+       version = "1.0.0.0";
+       sha256 = "1wi9vai606gf25m3q4p4ilwm8d2m7p5xk0wczq34h9pamfhcaqic";
+       libraryHaskellDepends = [
+         base containers skylighting skylighting-modding text
+       ];
+       description = "Customized Skylighting syntax highlighters";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "skylighting-modding" = callPackage
+    ({ mkDerivation, base, containers, skylighting-core, text }:
+     mkDerivation {
+       pname = "skylighting-modding";
+       version = "1.0.0.0";
+       sha256 = "11wmasn3hhva7jxmrjigbgvhrsnwvrx1ksbhjhdp46ii2jnyk0i3";
+       libraryHaskellDepends = [ base containers skylighting-core text ];
+       description = "Utilities for modifying Skylighting syntaxes";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "skype4hs" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, lifted-base
      , monad-control, mtl, stm, text, time, transformers-base, word8
@@ -195180,30 +197164,6 @@ self: {
      }:
      mkDerivation {
        pname = "slack-web";
-       version = "0.2.0.9";
-       sha256 = "1lw7haxp27h6q13763cq1h7ilfv7281q0k794ir66sv2l79jq7a2";
-       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;
-     }) {};
-
-  "slack-web_0_2_0_10" = 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.10";
        sha256 = "0dcvy6x08xm3kgxh65p7kvp7r4f1n819g933vna37sjwy94mmqh1";
        libraryHaskellDepends = [
@@ -195538,8 +197498,8 @@ self: {
      }:
      mkDerivation {
        pname = "smallcheck-series";
-       version = "0.6";
-       sha256 = "0liq8xdnpqfk0rhl0hf0njmy9lqycwipna0gyfk0jg2642wn65f1";
+       version = "0.6.1";
+       sha256 = "07kjbci4wxi6g9m0k0fqpxm8p2kxspyrcmg175vb3bp008vqb931";
        libraryHaskellDepends = [
          base bytestring containers logict smallcheck text transformers
        ];
@@ -195729,6 +197689,54 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "smith-cli" = callPackage
+    ({ mkDerivation, attoparsec, base, base64-bytestring, bytestring
+     , cereal, crypto-pubkey-openssh, crypto-pubkey-types, directory
+     , filepath, HsOpenSSL, network, openssh-protocol
+     , optparse-applicative, smith-client, text, transformers
+     , transformers-bifunctors, unix
+     }:
+     mkDerivation {
+       pname = "smith-cli";
+       version = "0.0.1";
+       sha256 = "1iqqzzq7wxasq7s1fkar6ydz1mnqb0krc0g49lq9i8qx71c7ylqq";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         attoparsec base base64-bytestring bytestring cereal
+         crypto-pubkey-openssh crypto-pubkey-types directory filepath
+         HsOpenSSL network openssh-protocol optparse-applicative
+         smith-client text transformers transformers-bifunctors unix
+       ];
+       description = "Command line tool for <https://smith.st/ Smith>.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "smith-client" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , directory, filepath, hedgehog, http-client, http-client-tls
+     , http-types, jose, oauth2-jwt-bearer, text, transformers
+     , transformers-bifunctors
+     }:
+     mkDerivation {
+       pname = "smith-client";
+       version = "0.0.1";
+       sha256 = "1szg4pcqjxa36bd9b1b8pmk2z0482qr86daxmkdnvapslc4l9xnw";
+       libraryHaskellDepends = [
+         aeson base bytestring directory filepath http-client
+         http-client-tls http-types jose oauth2-jwt-bearer text transformers
+         transformers-bifunctors
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive hedgehog http-types text
+         transformers
+       ];
+       description = "API client for <https://smith.st/ Smith>.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "smoothie" = callPackage
     ({ mkDerivation, aeson, base, linear, text, vector }:
      mkDerivation {
@@ -196342,7 +198350,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "snap-server_1_1_1_0" = callPackage
+  "snap-server_1_1_1_1" = callPackage
     ({ mkDerivation, attoparsec, base, base16-bytestring, blaze-builder
      , bytestring, bytestring-builder, case-insensitive, clock
      , containers, criterion, deepseq, directory, filepath, HsOpenSSL
@@ -196354,10 +198362,8 @@ self: {
      }:
      mkDerivation {
        pname = "snap-server";
-       version = "1.1.1.0";
-       sha256 = "0kjdsdgpxxsp5r4gpx8wdq5qn1b1y80mgkl9ahjbhlahjf5xyf6k";
-       revision = "2";
-       editedCabalFile = "1p39ngr6ynmhwgln2cappkgmb5mfxn23i6qwwid6gak62wipldk4";
+       version = "1.1.1.1";
+       sha256 = "0lw475wp0lnrbgc3jcfif3qjjc3pmrh2k74d8cgpnc1304g6a2s5";
        configureFlags = [ "-fopenssl" ];
        isLibrary = true;
        isExecutable = true;
@@ -197003,8 +199009,8 @@ self: {
      }:
      mkDerivation {
        pname = "snaplet-redis";
-       version = "0.1.5";
-       sha256 = "12c4pgh2axnvd7hnyf0xpnsidfss39siys3nzwafdmm0p5wf67bx";
+       version = "0.1.6";
+       sha256 = "09ba0jmbjk121c2cvnd83328w9h2d5rzwvmpxs2pi93x6jqpd9qw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -197421,21 +199427,18 @@ self: {
      }) {};
 
   "snmp" = callPackage
-    ({ mkDerivation, asn1-encoding, asn1-parse, asn1-types, async, base
-     , binary, bytestring, cipher-aes, cipher-des, containers
-     , crypto-cipher-types, cryptohash, mtl, network, network-info
-     , random, securemem, text, time
+    ({ mkDerivation, base, bytestring, containers, cryptonite, ip
+     , language-asn, memory, network, stm, vector
      }:
      mkDerivation {
        pname = "snmp";
-       version = "0.2.1.1";
-       sha256 = "1944ffsmw4hamjpzb9prlcnz6l9lgggbsgi6ilj0v84r8bydcdq7";
+       version = "0.3.0.0";
+       sha256 = "1lpmwl74hg1x5065r1jhgi6rfmyasjmhqaghnckg6rzii0nxym9d";
        libraryHaskellDepends = [
-         asn1-encoding asn1-parse asn1-types async base binary bytestring
-         cipher-aes cipher-des containers crypto-cipher-types cryptohash mtl
-         network network-info random securemem text time
+         base bytestring containers cryptonite ip language-asn memory
+         network stm vector
        ];
-       description = "API for write snmp client";
+       description = "SNMP protocol library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -197687,6 +199690,8 @@ self: {
        pname = "socket-activation";
        version = "0.1.0.2";
        sha256 = "0fxl9v1mvlv31bhyjl8k1l4f4lr9n0gvcnsfr2m65m3c557pp7mr";
+       revision = "1";
+       editedCabalFile = "0bvm8ik8fp0v5gjw6q4h767zgs1i4ydckdypvqa85sarc985hkmp";
        libraryHaskellDepends = [ base network transformers unix ];
        description = "systemd socket activation library";
        license = stdenv.lib.licenses.bsd3;
@@ -198144,6 +200149,7 @@ self: {
        executableHaskellDepends = [ base containers parseargs WAVE ];
        description = "Audio delay line";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "soundgen" = callPackage
@@ -198157,6 +200163,7 @@ self: {
        executableHaskellDepends = [ base split WAVE ];
        description = "sound generator";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "source-code-server" = callPackage
@@ -198754,16 +200761,17 @@ self: {
      }) {};
 
   "spectral-clustering" = callPackage
-    ({ mkDerivation, base, clustering, eigen, hmatrix, hmatrix-svdlibc
-     , mwc-random, safe, sparse-linear-algebra, statistics, vector
+    ({ mkDerivation, base, clustering, containers, eigen, hmatrix
+     , hmatrix-svdlibc, mwc-random, safe, sparse-linear-algebra
+     , statistics, vector
      }:
      mkDerivation {
        pname = "spectral-clustering";
-       version = "0.2.2.3";
-       sha256 = "017pf2sqw2p1ipflamlwsgkqsk83qm0y7sw672nkg4zvyck1arwc";
+       version = "0.3.0.1";
+       sha256 = "08q0wbpy0s1lvfyff0h8fxd54shhhvgy9zm298x2n022lvvap893";
        libraryHaskellDepends = [
-         base clustering eigen hmatrix hmatrix-svdlibc mwc-random safe
-         sparse-linear-algebra statistics vector
+         base clustering containers eigen hmatrix hmatrix-svdlibc mwc-random
+         safe sparse-linear-algebra statistics vector
        ];
        description = "Library for spectral clustering";
        license = stdenv.lib.licenses.gpl3;
@@ -200212,8 +202220,8 @@ self: {
        pname = "stack";
        version = "1.9.3";
        sha256 = "01lbr9gp3djr5bzlchzb2rdw20855aganmczvq76fzzjyway64cf";
-       revision = "4";
-       editedCabalFile = "15mdzgxl82j1yyhxazr4sjr1qpnc83wcf5h4c7lf7iydz60jri79";
+       revision = "6";
+       editedCabalFile = "1gz2p16jdbx27kd7p7xfbplviqvv9ybhzjfyjaxh9f9z9gj0n8gr";
        configureFlags = [
          "-fdisable-git-info" "-fhide-dependency-versions"
          "-fsupported-build"
@@ -201686,6 +203694,33 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "stdio" = callPackage
+    ({ mkDerivation, base, case-insensitive, deepseq, exceptions
+     , ghc-prim, hashable, hspec, hspec-discover, HUnit, integer-gmp
+     , libuv, primitive, QuickCheck, quickcheck-instances, scientific
+     , stm, template-haskell, time, word8
+     }:
+     mkDerivation {
+       pname = "stdio";
+       version = "0.1.1.0";
+       sha256 = "1sspnrflqac9clf9h6zwnhlvsw52xx97dlxyl6lhw6czy2qy813d";
+       revision = "1";
+       editedCabalFile = "1xdw84i0nlc3iz3i01li9p44raxn265kqjd284ifbf83vvhbp897";
+       libraryHaskellDepends = [
+         base case-insensitive deepseq exceptions ghc-prim hashable
+         integer-gmp primitive scientific stm template-haskell time word8
+       ];
+       libraryPkgconfigDepends = [ libuv ];
+       libraryToolDepends = [ hspec-discover ];
+       testHaskellDepends = [
+         base hashable hspec HUnit integer-gmp primitive QuickCheck
+         quickcheck-instances scientific word8
+       ];
+       description = "A simple and high performance IO toolkit for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) libuv;};
+
   "steambrowser" = callPackage
     ({ mkDerivation, base, directory, parsec, transformers }:
      mkDerivation {
@@ -201847,6 +203882,8 @@ self: {
        pname = "stitch";
        version = "0.6.0.0";
        sha256 = "1pk2snnvdn9f7xpnhgffzdqxps4spgvmcrbhjdfwpjxrlnxgviq9";
+       revision = "1";
+       editedCabalFile = "0w4d5m5682nv1aas7d47rk1ddgdxc3rvc0qz1dsmxkajfqi1axpk";
        libraryHaskellDepends = [ base containers text transformers ];
        testHaskellDepends = [ base Cabal hspec text ];
        benchmarkHaskellDepends = [ base criterion ];
@@ -202790,23 +204827,24 @@ self: {
      }) {};
 
   "streaming-base64" = callPackage
-    ({ mkDerivation, base, safe-exceptions, streaming
-     , streaming-bytestring, tasty, tasty-hunit, transformers
+    ({ mkDerivation, base, base-compat-batteries, filepath
+     , safe-exceptions, streaming, streaming-bytestring, streaming-with
+     , tasty, tasty-golden, transformers
      }:
      mkDerivation {
        pname = "streaming-base64";
-       version = "0.1.0.0";
-       sha256 = "0w6xj80z1z21pgxadwc48w15a08g94i4g7qkgv5gvq46kpl44bq6";
-       revision = "1";
-       editedCabalFile = "0mc71ncw2mw3yfryk0g2iq86wba7i3khy8fbsjaz5dr22hkkzh9r";
+       version = "0.1.1.0";
+       sha256 = "0yyjdld05i4bfx73maf5vzdrp7hx65784sv7bnnw4xfal1k20vlj";
        libraryHaskellDepends = [
-         base safe-exceptions streaming streaming-bytestring transformers
+         base base-compat-batteries safe-exceptions streaming
+         streaming-bytestring transformers
        ];
        testHaskellDepends = [
-         base streaming-bytestring tasty tasty-hunit
+         base base-compat-batteries filepath streaming-bytestring
+         streaming-with tasty tasty-golden
        ];
        description = "Streaming conversion from/to base64";
-       license = stdenv.lib.licenses.cc0;
+       license = stdenv.lib.licenses.publicDomain;
      }) {};
 
   "streaming-benchmarks" = callPackage
@@ -203173,8 +205211,8 @@ self: {
      }:
      mkDerivation {
        pname = "streaming-utils";
-       version = "0.1.4.7";
-       sha256 = "0j4d0rnaq09rzf6706ysqi3j049mk1vk1254m0ha19dgynm3npfp";
+       version = "0.2.0.0";
+       sha256 = "05cgcypwxrhhf3xyxggwiz0v3193hf8h7vripqjam38f8ji3lxhk";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring http-client http-client-tls
          json-stream mtl network network-simple pipes resourcet streaming
@@ -204286,8 +206324,8 @@ self: {
      }:
      mkDerivation {
        pname = "stylish-cabal";
-       version = "0.4.1.0";
-       sha256 = "0yxxw22n2k4dpcxyzq140vg3l6338549qds1v3ggkwsykmz3469s";
+       version = "0.5.0.0";
+       sha256 = "0gfvbp7x8fik91f2w7m0ps14m1h3wg3a1acx9zn7pks8xpndnd1d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -204302,7 +206340,7 @@ self: {
        doHaddock = false;
        description = "Format Cabal files";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
   "stylish-haskell" = callPackage
@@ -207122,17 +209160,18 @@ self: {
      , filepath, gi-cairo, gi-cairo-connector, gi-cairo-render, gi-gdk
      , gi-gdkpixbuf, gi-gdkx11, gi-glib, gi-gtk, gi-gtk-hs, gi-pango
      , gtk-sni-tray, gtk-strut, gtk3, haskell-gi, haskell-gi-base
-     , hslogger, HStringTemplate, HTTP, multimap, network, network-uri
-     , old-locale, optparse-applicative, parsec, process, rate-limit
-     , regex-compat, safe, scotty, split, status-notifier-item, stm
-     , template-haskell, text, time, time-locale-compat, time-units
-     , transformers, transformers-base, tuple, unix, utf8-string, X11
-     , xdg-basedir, xml, xml-helpers, xmonad
+     , hslogger, HStringTemplate, http-client, http-client-tls
+     , http-types, multimap, network, network-uri, old-locale
+     , optparse-applicative, parsec, process, rate-limit, regex-compat
+     , safe, scotty, split, status-notifier-item, stm, template-haskell
+     , text, time, time-locale-compat, time-units, transformers
+     , transformers-base, tuple, unix, utf8-string, X11, xdg-basedir
+     , xml, xml-helpers, xmonad
      }:
      mkDerivation {
        pname = "taffybar";
-       version = "3.1.1";
-       sha256 = "1n8i15qnz3chls9y7mxhhpwmk9cl5ymd4p9s3hlqavnfxim7lnpj";
+       version = "3.1.2";
+       sha256 = "11k34kcxh2v8k7pr2nm1kib097n4l3klza6q8w9qp2dm31iww8y1";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -207141,9 +209180,10 @@ self: {
          dyre either enclosed-exceptions filepath gi-cairo
          gi-cairo-connector gi-cairo-render gi-gdk gi-gdkpixbuf gi-gdkx11
          gi-glib gi-gtk gi-gtk-hs gi-pango gtk-sni-tray gtk-strut haskell-gi
-         haskell-gi-base hslogger HStringTemplate HTTP multimap network
-         network-uri old-locale parsec process rate-limit regex-compat safe
-         scotty split status-notifier-item stm template-haskell text time
+         haskell-gi-base hslogger HStringTemplate http-client
+         http-client-tls http-types multimap network network-uri old-locale
+         parsec process rate-limit regex-compat safe scotty split
+         status-notifier-item stm template-haskell text time
          time-locale-compat time-units transformers transformers-base tuple
          unix utf8-string X11 xdg-basedir xml xml-helpers xmonad
        ];
@@ -208014,6 +210054,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "taskell" = callPackage
+    ({ mkDerivation, aeson, base, brick, bytestring, classy-prelude
+     , config-ini, containers, directory, file-embed, fold-debounce
+     , http-client, http-conduit, http-types, lens, mtl, tasty
+     , tasty-discover, tasty-expected-failure, tasty-hunit
+     , template-haskell, text, time, vty
+     }:
+     mkDerivation {
+       pname = "taskell";
+       version = "1.3.5.0";
+       sha256 = "13ln9djap9kzm0s82r01qrygsg7w5pm6wvy25i7b6lakqy4az0x3";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base brick bytestring classy-prelude config-ini containers
+         directory file-embed fold-debounce http-client http-conduit
+         http-types lens mtl template-haskell text time vty
+       ];
+       executableHaskellDepends = [ base classy-prelude ];
+       testHaskellDepends = [
+         aeson base classy-prelude containers file-embed lens tasty
+         tasty-discover tasty-expected-failure tasty-hunit text time
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "A command-line kanban board/task manager";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "taskpool" = callPackage
     ({ mkDerivation, async, base, containers, fgl, hspec, stm
      , transformers
@@ -208116,6 +210185,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "tasty-dejafu_2_0_0_0" = callPackage
+    ({ mkDerivation, base, dejafu, random, tagged, tasty }:
+     mkDerivation {
+       pname = "tasty-dejafu";
+       version = "2.0.0.0";
+       sha256 = "1jy1rh26xr64kwvywcfmb55x088hbrg8dhcixy9lhw76xrzjpkia";
+       libraryHaskellDepends = [ base dejafu random tagged tasty ];
+       description = "Deja Fu support for the Tasty test framework";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tasty-discover" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, Glob
      , hedgehog, tasty, tasty-hedgehog, tasty-hspec, tasty-hunit
@@ -208238,8 +210319,8 @@ self: {
        pname = "tasty-hedgehog-coverage";
        version = "0.1.0.0";
        sha256 = "1d2hnhkpk71k0xjw63jsn6fa4ih01xqn4dgdbflp6yrs0zw6p95c";
-       revision = "1";
-       editedCabalFile = "1p3d9w24q39fnljv9m5a8anpv3j3cvazbca4d3hqrjx5w06ik42f";
+       revision = "2";
+       editedCabalFile = "10fzklan91gyd3bs5qgyv83v7xflxdfcjlvqgcv15bzwplzngclx";
        libraryHaskellDepends = [
          base containers hedgehog mtl tagged tasty tasty-hedgehog text
          transformers wl-pprint-annotated
@@ -208260,8 +210341,8 @@ self: {
        pname = "tasty-hspec";
        version = "1.1.5.1";
        sha256 = "0i9kdzjpk750sa078jj3iyhp72k0177zk7vxl131r6dkyz09x27y";
-       revision = "1";
-       editedCabalFile = "18k4p273qnvfmk5cbm89rjqr0v03v0q22q7bbl7z3bxpwnnkmhqf";
+       revision = "2";
+       editedCabalFile = "1xrb7gyidbgbd1c94c1wa5dazsllp23xi4w7flsws09r267q8qpc";
        libraryHaskellDepends = [
          base hspec hspec-core QuickCheck tasty tasty-quickcheck
          tasty-smallcheck
@@ -208460,8 +210541,8 @@ self: {
     ({ mkDerivation, base, QuickCheck, tasty, tasty-quickcheck }:
      mkDerivation {
        pname = "tasty-quickcheck-laws";
-       version = "0.0.1";
-       sha256 = "0hlp1l2my0wydvlxqb8kvqyy1avcnx47brj16ikann83r6za67dp";
+       version = "0.0.3";
+       sha256 = "0p316gdna56xzqm6d6mjkxncssgk2wnljq1a927bjxjhvibyiml8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base QuickCheck tasty tasty-quickcheck ];
@@ -209157,8 +211238,8 @@ self: {
     ({ mkDerivation, base, base-prelude, template-haskell }:
      mkDerivation {
        pname = "template-haskell-compat-v0208";
-       version = "0.1.1";
-       sha256 = "1dgxfcz68h583r15vc3zmj2fchsv5v4n2v55fz2ccw6sl3kyvlp3";
+       version = "0.1.1.1";
+       sha256 = "0il2bm5bwa4majddlzckc6jlcwx4w1kmymz9szj11hwjchgd1w3l";
        libraryHaskellDepends = [ base base-prelude template-haskell ];
        description = "A backwards compatibility layer for Template Haskell newer than 2.8";
        license = stdenv.lib.licenses.mit;
@@ -209732,8 +211813,8 @@ self: {
      }:
      mkDerivation {
        pname = "term-rewriting";
-       version = "0.3.0.1";
-       sha256 = "0fa2yqdhw93r7byx47z050sq2yc0arfsvwnzl4jp1vyhdzarfwqd";
+       version = "0.4.0.1";
+       sha256 = "14mgpwhpfa0w5xgwsqa5nklagw6scs51cjwin7d34gx8bkvw9m13";
        libraryHaskellDepends = [
          ansi-wl-pprint array base containers mtl multiset parsec
          union-find-array
@@ -209809,8 +211890,8 @@ self: {
      }:
      mkDerivation {
        pname = "terminal";
-       version = "0.1.0.0";
-       sha256 = "15km89sb94aqnyjvl1i63nqchqszd9hpa46sxrv2wbbn1dajcfbx";
+       version = "0.2.0.0";
+       sha256 = "0zvlqgsbr0xwc3flcvxq0sgccr2qshidfpxnx78lgvq90avaaczj";
        libraryHaskellDepends = [
          async base bytestring exceptions prettyprinter stm text
          transformers
@@ -212005,7 +214086,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "th-lift-instances" = callPackage
+  "th-lift-instances_0_1_11" = callPackage
     ({ mkDerivation, base, bytestring, containers, QuickCheck
      , template-haskell, text, th-lift, vector
      }:
@@ -212021,14 +214102,33 @@ self: {
        ];
        description = "Lift instances for template-haskell for common data types";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "th-lift-instances" = callPackage
+    ({ mkDerivation, base, bytestring, containers, QuickCheck
+     , template-haskell, text, vector
+     }:
+     mkDerivation {
+       pname = "th-lift-instances";
+       version = "0.1.12";
+       sha256 = "1kjfwfmkn7r35qlsa0n4la3103jlfbjf3ia1pvsgizgrwxr1zjid";
+       libraryHaskellDepends = [
+         base bytestring containers template-haskell text vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers QuickCheck template-haskell text vector
+       ];
+       description = "Lift instances for template-haskell for common data types";
+       license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "th-nowq" = callPackage
     ({ mkDerivation, base, markdown-unlit, template-haskell, time }:
      mkDerivation {
        pname = "th-nowq";
-       version = "0.1.0.2";
-       sha256 = "1r9qwj3aw5adxzgxb1kgr9s1scrqclf4jfmlhv8nz1dhbqwg84h1";
+       version = "0.1.0.3";
+       sha256 = "08lcy7b9r3mrnl8scjrzcmh3m840rqwb6cr6lasc8sjngf0d55x9";
        libraryHaskellDepends = [ base template-haskell time ];
        testHaskellDepends = [ base markdown-unlit ];
        testToolDepends = [ markdown-unlit ];
@@ -213559,8 +215659,8 @@ self: {
     ({ mkDerivation, base, process, time }:
      mkDerivation {
        pname = "timeconsole";
-       version = "0.1.0.3";
-       sha256 = "1h0aq9l7ff5nzlq873g37q999pjfnpfq3v9zblx5wfgfq101cbj7";
+       version = "0.1.0.4";
+       sha256 = "0kk16hpf7adb2bz4bs3rr4gv6gdw3jki3bz7ln5034b3hrzbf0a1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base process time ];
@@ -214319,6 +216419,8 @@ self: {
        pname = "tls";
        version = "1.4.1";
        sha256 = "1y083724mym28n6xfaz7pcc7zqxdhjpaxpbvzxfbs25qq2px3smv";
+       revision = "1";
+       editedCabalFile = "0qk07miindqvynhgsqj8jjk1d6i95lbgwipanwnn4vh1707z8xhv";
        libraryHaskellDepends = [
          asn1-encoding asn1-types async base bytestring cereal cryptonite
          data-default-class memory mtl network transformers x509 x509-store
@@ -214514,6 +216616,8 @@ self: {
        pname = "to-string-class";
        version = "0.1.2";
        sha256 = "0l2hj0cbc0dhd7m5bn6xqgzkdf2z4knirmv8c65hsjig9mpsvsxf";
+       revision = "1";
+       editedCabalFile = "1p5q59gswv86pk7hxpg1n81q4szhwx8rwfx5hsibdz9i9mgz2bbs";
        libraryHaskellDepends = [ base ];
        description = "Converting string-like types to Strings";
        license = stdenv.lib.licenses.bsd3;
@@ -215027,13 +217131,13 @@ self: {
      , plots, safe, scientific, sparse-linear-algebra
      , spectral-clustering, split, statistics, streaming
      , streaming-bytestring, streaming-cassava, streaming-utils
-     , streaming-with, SVGFonts, terminal-progress-bar, text, text-show
-     , transformers, vector, vector-algorithms
+     , streaming-with, SVGFonts, temporary, terminal-progress-bar, text
+     , text-show, transformers, vector, vector-algorithms, zlib
      }:
      mkDerivation {
        pname = "too-many-cells";
-       version = "0.1.2.1";
-       sha256 = "08ckcp8gyhq8nhr5l7qbmyl8csz5kl22qmwapwzi4jiffwwi9yca";
+       version = "0.1.3.0";
+       sha256 = "0p73crss0jdn7qbz7qvhpvs988g0w6x819f9gyyx21lnkvm1qlhn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -215044,7 +217148,8 @@ self: {
          inline-r lens managed matrix-market-attoparsec mltool modularity
          mtl palette parallel plots safe scientific sparse-linear-algebra
          split statistics streaming streaming-bytestring streaming-cassava
-         streaming-with SVGFonts text text-show vector vector-algorithms
+         streaming-with SVGFonts temporary text text-show vector
+         vector-algorithms zlib
        ];
        executableHaskellDepends = [
          aeson base birch-beer bytestring cassava colour containers
@@ -215060,32 +217165,34 @@ self: {
      }) {};
 
   "toodles" = callPackage
-    ({ mkDerivation, aeson, base, blaze-html, cmdargs, directory, extra
-     , hspec, hspec-expectations, megaparsec, MissingH, regex-posix
-     , servant, servant-blaze, servant-server, strict, text, wai, warp
+    ({ mkDerivation, aeson, base, base64-bytestring, blaze-html
+     , bytestring, cmdargs, directory, extra, hspec, hspec-expectations
+     , megaparsec, MissingH, process, regex-posix, RSA, servant
+     , servant-blaze, servant-server, strict, text, time, wai, warp
      , yaml
      }:
      mkDerivation {
        pname = "toodles";
-       version = "1.0.3";
-       sha256 = "1nzrfdbwz5ykiim76jr3v1666acrhh76k4q4gwix9bixcm8al2zf";
+       version = "1.1.1";
+       sha256 = "0n1z99f2zr2xj55y90ll9dvqq51sv4r4zyhjx7qilqw34djzfn88";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson base blaze-html cmdargs directory extra hspec
-         hspec-expectations megaparsec MissingH regex-posix servant
-         servant-blaze servant-server strict text wai warp yaml
+         aeson base base64-bytestring blaze-html bytestring cmdargs
+         directory extra megaparsec MissingH process regex-posix RSA servant
+         servant-blaze servant-server strict text time wai warp yaml
        ];
        executableHaskellDepends = [
-         aeson base blaze-html cmdargs directory extra hspec
-         hspec-expectations megaparsec MissingH regex-posix servant
-         servant-blaze servant-server strict text wai warp yaml
+         aeson base base64-bytestring blaze-html bytestring cmdargs
+         directory extra megaparsec MissingH process regex-posix RSA servant
+         servant-blaze servant-server strict text time wai warp yaml
        ];
        testHaskellDepends = [
-         aeson base blaze-html cmdargs directory extra hspec
-         hspec-expectations megaparsec MissingH regex-posix servant
-         servant-blaze servant-server strict text wai warp yaml
+         aeson base base64-bytestring blaze-html bytestring cmdargs
+         directory extra hspec hspec-expectations megaparsec MissingH
+         process regex-posix servant servant-blaze servant-server strict
+         text time wai warp yaml
        ];
        description = "Manage the TODO entries in your code";
        license = stdenv.lib.licenses.mit;
@@ -215944,8 +218051,8 @@ self: {
        pname = "transformers-lift";
        version = "0.2.0.1";
        sha256 = "17g03r5hpnygx0c9ybr9za6208ay0cjvz47rkyplv1r9zcivzn0b";
-       revision = "2";
-       editedCabalFile = "16gpca2wfa7w2b5kzfvqsjjyd61pkv0wyi2mk5b34367p4chnsc5";
+       revision = "3";
+       editedCabalFile = "0rkbjlpn460gn93qr0l7025ggkgj46j6pkcil6m2chkzk91cpk9i";
        libraryHaskellDepends = [
          base transformers writer-cps-transformers
        ];
@@ -216197,6 +218304,8 @@ self: {
        pname = "travis";
        version = "0.1.0.1";
        sha256 = "1mndbvdciz8g7z3xr3wr6l6hyyiz6kqx7xlkvwr0r52ig0kxrlzf";
+       revision = "1";
+       editedCabalFile = "13fx4ywabq78qcsb64ia59krz03zdf9329v4h8s22cvnvbdia5nk";
        libraryHaskellDepends = [
          aeson base bytestring http-conduit transformers
        ];
@@ -216729,6 +218838,7 @@ self: {
        executableHaskellDepends = [ base containers parseargs WAVE ];
        description = "Audio file compressor-limiter";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "trurl" = callPackage
@@ -220439,8 +222549,8 @@ self: {
     ({ mkDerivation, base, bytestring, containers }:
      mkDerivation {
        pname = "uniq-deep";
-       version = "1.1.0.0";
-       sha256 = "13nkn1yqlyh33c2rsw0iz2gkj2mybliykm4hr9rm037rrf8kz5gq";
+       version = "1.1.1";
+       sha256 = "1krkvyvsqsm2l34zsd0ggsvrmrvwrhskqfmcb71hyw1ryixd2hn6";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base bytestring containers ];
@@ -220557,8 +222667,8 @@ self: {
      }:
      mkDerivation {
        pname = "units";
-       version = "2.4.1";
-       sha256 = "1xvr2sivvmwpvqrpckqlkl8qr8h45aqimkwiq9m2ab45slnwwqwb";
+       version = "2.4.1.1";
+       sha256 = "0359h9pjjsw3ivl40kv51rd0pp0j1phyqqjfiv2bxa37mm3fxmr2";
        libraryHaskellDepends = [
          base containers deepseq lens linear mtl multimap singletons syb
          template-haskell th-desugar units-parser vector-space
@@ -220770,8 +222880,8 @@ self: {
        pname = "universe-instances-extended";
        version = "1.0.0.1";
        sha256 = "15y9f0hbxqsksclxrssj4h08y0yb3nm9clqasjw6nsmi04kjfnv6";
-       revision = "2";
-       editedCabalFile = "1di3jk3ciikjrxzr76i0mqqza26mclnbxxak7ybkk4l06yqanj38";
+       revision = "3";
+       editedCabalFile = "1f7mzwn97kmnm1p1hscz5mzly700q2pw5awwdzzsxfkxv3law7xn";
        libraryHaskellDepends = [
          adjunctions base comonad universe-instances-base void
        ];
@@ -222183,6 +224293,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "useragents" = callPackage
+    ({ mkDerivation, base, random-fu, text }:
+     mkDerivation {
+       pname = "useragents";
+       version = "1.0.0";
+       sha256 = "1n4n4mhikzgx2a9qq8rify5wwhngnz0qip32fnhshham5yyldmy6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base random-fu text ];
+       executableHaskellDepends = [ base random-fu text ];
+       description = "A collection of user agents";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "userid" = callPackage
     ({ mkDerivation, aeson, base, boomerang, cereal, safecopy
      , web-routes, web-routes-th
@@ -222777,8 +224901,8 @@ self: {
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
        pname = "uulib";
-       version = "0.9.23";
-       sha256 = "1v9gwy1zdkyc8f36n52p127gz1r95ykaqklshg0abiai4xnr1yy6";
+       version = "0.9.24";
+       sha256 = "10j40q1b1fkx0fv56cn0kkilbqhyh6xxya536xlbx365lnc1rk0i";
        libraryHaskellDepends = [ base ghc-prim ];
        description = "Haskell Utrecht Tools Library";
        license = stdenv.lib.licenses.bsd3;
@@ -223851,8 +225975,8 @@ self: {
      }:
      mkDerivation {
        pname = "vector-builder";
-       version = "0.3.6";
-       sha256 = "06d2pa1fb3ydrl7l6rjazqyxv5i73v65x2f5fp0ypjxfbm6jsmn8";
+       version = "0.3.7.2";
+       sha256 = "04dri31fqcwlhprvw9vl6qsgj8f7q4ms0rc2bfqcaqj1a2kr3cdf";
        libraryHaskellDepends = [ base base-prelude semigroups vector ];
        testHaskellDepends = [
          attoparsec QuickCheck quickcheck-instances rerebase tasty
@@ -223862,25 +225986,6 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "vector-builder_0_3_7" = callPackage
-    ({ mkDerivation, attoparsec, base, base-prelude, QuickCheck
-     , quickcheck-instances, rerebase, semigroups, tasty, tasty-hunit
-     , tasty-quickcheck, vector
-     }:
-     mkDerivation {
-       pname = "vector-builder";
-       version = "0.3.7";
-       sha256 = "06n33dzszqx2yzf9q9n0ap0avb0ljfyx8b6mp7k80vmakxfxdxds";
-       libraryHaskellDepends = [ base base-prelude semigroups vector ];
-       testHaskellDepends = [
-         attoparsec QuickCheck quickcheck-instances rerebase tasty
-         tasty-hunit tasty-quickcheck
-       ];
-       description = "Vector builder";
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
   "vector-bytes-instances" = callPackage
     ({ mkDerivation, base, bytes, tasty, tasty-quickcheck, vector }:
      mkDerivation {
@@ -224167,8 +226272,8 @@ self: {
        pname = "vector-space-points";
        version = "0.2.1.2";
        sha256 = "0jqiy7b3hy21c0imqxbzvcx0hxy33bh97bv47bpv099dx32d7spy";
-       revision = "4";
-       editedCabalFile = "1bw8l4nlxsx2nlam9kry60k75vszfx9zxr8zj0mcb3r0r7s178mx";
+       revision = "5";
+       editedCabalFile = "1284ds38z70696vsh695hx74nyslmgaqfv4lz0wadvmzcrw0hwb4";
        libraryHaskellDepends = [ base vector-space ];
        description = "A type for points, as distinct from vectors";
        license = stdenv.lib.licenses.bsd3;
@@ -224740,6 +226845,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "vinyl-generics" = callPackage
+    ({ mkDerivation, aeson, base, generics-sop, hspec, hspec-core
+     , QuickCheck, records-sop, text, vinyl
+     }:
+     mkDerivation {
+       pname = "vinyl-generics";
+       version = "0.1.0.0";
+       sha256 = "1rxv1wgckq5a3c65lvniizmv5f55gbnngxx76wa93h8lgrhf6ac0";
+       libraryHaskellDepends = [ base generics-sop records-sop vinyl ];
+       testHaskellDepends = [
+         aeson base generics-sop hspec hspec-core QuickCheck records-sop
+         text vinyl
+       ];
+       description = "Convert plain records to vinyl (and vice versa), generically";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "vinyl-gl" = callPackage
     ({ mkDerivation, base, containers, GLUtil, HUnit, linear, OpenGL
      , tagged, test-framework, test-framework-hunit, transformers
@@ -225155,21 +227277,21 @@ self: {
      }) {};
 
   "vrpn" = callPackage
-    ({ mkDerivation, base, vrpn }:
+    ({ mkDerivation, base, quat, vrpn }:
      mkDerivation {
        pname = "vrpn";
-       version = "0.2.1.4";
-       sha256 = "11iiwzhb9dqhk83p9gcnj4q2ya5m35bnic30a23z3l9lhsnn49b4";
+       version = "0.3.0.0";
+       sha256 = "1wyp8dnjag53qlbiz83d21046190kf8hv2izqk1alrniva4vz1kp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
-       librarySystemDepends = [ vrpn ];
+       librarySystemDepends = [ quat vrpn ];
        executableHaskellDepends = [ base ];
-       executableSystemDepends = [ vrpn ];
+       executableSystemDepends = [ quat vrpn ];
        description = "Bindings to VRPN";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) vrpn;};
+     }) {quat = null; inherit (pkgs) vrpn;};
 
   "vt-utils" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring
@@ -225537,8 +227659,10 @@ self: {
      }:
      mkDerivation {
        pname = "wai-app-static";
-       version = "3.1.6.2";
-       sha256 = "0gnwq6ad5m8w8sqq4dzpz23l5rjdphfsf8h9h27lrvv1prkabc6h";
+       version = "3.1.6.3";
+       sha256 = "0s6bpz5gmjy797bnnw1y5mwy9761h46bjp1srnrh7cxlnvm93c4c";
+       revision = "2";
+       editedCabalFile = "17wd7cxqwimhww53qihchrr62hnzirggk86migi9bcwv4wjykmqc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -225578,6 +227702,27 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "wai-cli_0_2_1" = callPackage
+    ({ mkDerivation, ansi-terminal, base, http-types, iproute
+     , monads-tf, network, options, socket-activation, stm
+     , streaming-commons, unix, wai, wai-extra, warp, warp-tls
+     }:
+     mkDerivation {
+       pname = "wai-cli";
+       version = "0.2.1";
+       sha256 = "1r4lxbjzb5qzn7y0kanlgm8s9a3j1j93cvs74s2bmcc82ysc3x9f";
+       revision = "1";
+       editedCabalFile = "1h0ip8r0zdm0xzaprfiyfdm40286apyvn6psqnx7pif8acfhpq8m";
+       libraryHaskellDepends = [
+         ansi-terminal base http-types iproute monads-tf network options
+         socket-activation stm streaming-commons unix wai wai-extra warp
+         warp-tls
+       ];
+       description = "Command line runner for Wai apps (using Warp) with TLS, CGI, socket activation & graceful shutdown";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wai-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, http-types
      , transformers, wai
@@ -225720,6 +227865,8 @@ self: {
        pname = "wai-extra";
        version = "3.0.25";
        sha256 = "0caz1miwnyjqg6gdfgv7ibyfdyjzlq2i8v07zhan1nniv9pj3w6y";
+       revision = "1";
+       editedCabalFile = "1i26cmmh1qc4krni21ixfhpp12bvkpxiplhdhk8qsksyp31zqmv4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -228955,6 +231102,7 @@ self: {
        ];
        description = "Data types for large but fixed width signed and unsigned integers";
        license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wigner-symbols" = callPackage
@@ -229004,6 +231152,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "wikicfp-scraper_0_1_0_10" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, filepath, hspec
+     , scalpel-core, text, time
+     }:
+     mkDerivation {
+       pname = "wikicfp-scraper";
+       version = "0.1.0.10";
+       sha256 = "1j6aizgsf387pm6ajr6zjj1l4nnaq8mryq4vr09jji91ix9zhnw7";
+       libraryHaskellDepends = [
+         attoparsec base bytestring scalpel-core text time
+       ];
+       testHaskellDepends = [ base bytestring filepath hspec time ];
+       description = "Scrape WikiCFP web site";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wikipedia4epub" = callPackage
     ({ mkDerivation, base, bytestring, directory, epub, filepath
      , haskell98, HTTP, network, regex-base, regex-posix, tagsoup, url
@@ -229437,8 +231602,8 @@ self: {
      }:
      mkDerivation {
        pname = "wkt-geom";
-       version = "0.0.5";
-       sha256 = "1l762yyga2lxs2m42rq9zr4k1kkpp39w9z2qgmkcg5yj9p4pqg9w";
+       version = "0.0.8";
+       sha256 = "123y2xl22gmg28dcj244gk9bsbw0chz32gim48dz4bmqnkmvl7wl";
        libraryHaskellDepends = [
          base base16-bytestring binary bytestring containers geojson
          scientific trifecta utf8-string vector
@@ -229844,6 +232009,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "wordlist" = callPackage
+    ({ mkDerivation, base, MonadRandom, optparse-applicative, text
+     , vector
+     }:
+     mkDerivation {
+       pname = "wordlist";
+       version = "0.1.0.2";
+       sha256 = "1p3pzacg4s0hx4gq2slm1bgkvr8fh3q1iqlpidbc3pc9whclr173";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base optparse-applicative text ];
+       executableHaskellDepends = [
+         base MonadRandom optparse-applicative text vector
+       ];
+       description = "Command-line tool to get random words";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "wordpass" = callPackage
     ({ mkDerivation, base, containers, deepseq, directory, filepath
      , optparse-applicative, QuickCheck, text, unix-compat, vector
@@ -231120,8 +233303,8 @@ self: {
     ({ mkDerivation, base, containers, mtl, pretty, xml }:
      mkDerivation {
        pname = "xcb-types";
-       version = "0.9.0";
-       sha256 = "14bxm6djq4571w313q0qj3v2mfrb2ji2cy0sgl5fh5bsbk2m5i3g";
+       version = "0.10.0";
+       sha256 = "1168vg2f3qd5yiwg2fcps0ciqpwns6scyk89bd07ws3qh6kayqfr";
        libraryHaskellDepends = [ base containers mtl pretty xml ];
        description = "Parses XML files used by the XCB project";
        license = stdenv.lib.licenses.bsd3;
@@ -231136,8 +233319,8 @@ self: {
      }:
      mkDerivation {
        pname = "xcffib";
-       version = "0.6.0";
-       sha256 = "1cwwj68lfz51npkll4w024555rq9ra86xh4j9ksd1fqgadzf4rwn";
+       version = "0.7.0";
+       sha256 = "1b9qp3z0j3qpxwh8kczkarbqa0hb6x8wxm6by6j49qhd7fn6dkin";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -231273,6 +233456,8 @@ self: {
        pname = "xeno";
        version = "0.3.5.1";
        sha256 = "1bdvj5ql0q9i8vb3429d8kl3hyk45r37s23rm76mhwhazhqxcm60";
+       revision = "1";
+       editedCabalFile = "0d9w9x6lwhvshy4dbvd80ckb9p0g4vcmzy6kvwai9rqmszf89cnh";
        libraryHaskellDepends = [
          array base bytestring deepseq hspec mtl mutable-containers vector
        ];
@@ -232307,6 +234492,8 @@ self: {
        pname = "xmlbf";
        version = "0.4.1";
        sha256 = "0xfw9z1l3ja4qq0lj9i2n81fdh43ggprsy8rm71pcdacnpl056hq";
+       revision = "1";
+       editedCabalFile = "0j5yvsz0ib5w80wp1gc0li376adw8l861xvf5paa2hdq55jkxvi6";
        libraryHaskellDepends = [
          base bytestring containers text transformers unordered-containers
        ];
@@ -233268,31 +235455,32 @@ self: {
      }) {};
 
   "yam" = callPackage
-    ({ mkDerivation, base, base16-bytestring, binary, bytestring
+    ({ mkDerivation, aeson, base, base16-bytestring, binary, bytestring
      , data-default, fast-logger, hspec, http-client, http-types, lens
-     , monad-logger, mtl, mwc-random, QuickCheck, reflection, salak
-     , scientific, servant-client, servant-server, servant-swagger
-     , servant-swagger-ui, swagger2, text, unliftio-core
-     , unordered-containers, vault, vector, wai, warp
+     , menshen, monad-logger, mtl, mwc-random, QuickCheck, reflection
+     , salak, scientific, servant-client, servant-server
+     , servant-swagger, servant-swagger-ui, swagger2, text
+     , unliftio-core, unordered-containers, vault, vector, wai, warp
      }:
      mkDerivation {
        pname = "yam";
-       version = "0.5.11";
-       sha256 = "0k9y8zg1sbdxb6c3fdmlz0dswb8yam5x812avfw6rg3as8sp1pcf";
+       version = "0.5.13";
+       sha256 = "1l671m59vkgqv4acvg8x49wkfbzdy17bww3p3b5a8l8md1ab258r";
        libraryHaskellDepends = [
-         base base16-bytestring binary bytestring data-default fast-logger
-         http-client http-types lens monad-logger mtl mwc-random reflection
-         salak scientific servant-client servant-server servant-swagger
-         servant-swagger-ui swagger2 text unliftio-core unordered-containers
-         vault vector wai warp
-       ];
-       testHaskellDepends = [
-         base base16-bytestring binary bytestring data-default fast-logger
-         hspec http-client http-types lens monad-logger mtl mwc-random
-         QuickCheck reflection salak scientific servant-client
+         aeson base base16-bytestring binary bytestring data-default
+         fast-logger http-client http-types lens menshen monad-logger mtl
+         mwc-random reflection salak scientific servant-client
          servant-server servant-swagger servant-swagger-ui swagger2 text
          unliftio-core unordered-containers vault vector wai warp
        ];
+       testHaskellDepends = [
+         aeson base base16-bytestring binary bytestring data-default
+         fast-logger hspec http-client http-types lens menshen monad-logger
+         mtl mwc-random QuickCheck reflection salak scientific
+         servant-client servant-server servant-swagger servant-swagger-ui
+         swagger2 text unliftio-core unordered-containers vault vector wai
+         warp
+       ];
        description = "Yam Web";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -233343,8 +235531,8 @@ self: {
      }:
      mkDerivation {
        pname = "yam-datasource";
-       version = "0.5.11";
-       sha256 = "170xpd1kw403g9zds795zbxkaz0qy7lfgzppx4q0ri42ky59z8pl";
+       version = "0.5.13";
+       sha256 = "0vbw575g7qdha9siiyrnv3kpjw6ysz09m4qady90s9j75ymzdgnm";
        libraryHaskellDepends = [
          base conduit persistent resource-pool resourcet unliftio-core yam
        ];
@@ -234334,8 +236522,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.6.5";
-       sha256 = "1crpqcx8zynwmas4ja5yv1jg4xvcv0hw7h11d5m8vld4fcs9dpdr";
+       version = "1.6.6";
+       sha256 = "0ibmv3ghxrrjjjqb9jg4wnwr7w4hl4lsvwic13ys8fihg40ln6ka";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup bytestring conduit
@@ -234893,8 +237081,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.6.11";
-       sha256 = "1cpl8g2sdvv751vvs68169w9nki43h6rmj2i2wqkfzijwgd8djwr";
+       version = "1.6.12";
+       sha256 = "1zyvjbphzkhch4wv8lj019dd3jnyicdj514fhy1ggwqkff3kyblj";
        libraryHaskellDepends = [
          aeson auto-update base blaze-html blaze-markup byteable bytestring
          case-insensitive cereal clientsession conduit conduit-extra
@@ -235295,6 +237483,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "yesod-gitrev_0_2_1" = callPackage
+    ({ mkDerivation, aeson, base, githash, template-haskell, yesod-core
+     }:
+     mkDerivation {
+       pname = "yesod-gitrev";
+       version = "0.2.1";
+       sha256 = "0wd6xvq9aa11n8y4hna0a5ivqfxnbg8w2bq5lramm895xs7c8d7w";
+       libraryHaskellDepends = [
+         aeson base githash template-haskell yesod-core
+       ];
+       testHaskellDepends = [ base yesod-core ];
+       description = "A subsite for displaying git information";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-goodies" = callPackage
     ({ mkDerivation, base, blaze-html, bytestring, directory, HTTP
      , old-locale, pandoc, pureMD5, text, time, yesod, yesod-form
@@ -235415,8 +237619,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-markdown";
-       version = "0.12.6.0";
-       sha256 = "005brhqz52q6r03fx7ka2i1r2b1s2j7nis5a2ycdmr0mw5mb2scm";
+       version = "0.12.6.1";
+       sha256 = "00f235w631rdw5kkrkb0xqvpw18k4faiv6sjzbbn5jzzi5asscyj";
        libraryHaskellDepends = [
          base blaze-html blaze-markup bytestring directory pandoc persistent
          shakespeare text xss-sanitize yesod-core yesod-form
@@ -237797,6 +240001,8 @@ self: {
        pname = "zip-archive";
        version = "0.4";
        sha256 = "06fs9959w807iy4xmngpnv1rps5sr1kqr2pd7b3iw6xfjlfskgjz";
+       revision = "1";
+       editedCabalFile = "1y4i0xblglhkj6nv2p0r2xgw8gqrhnsamkh7d389z68sf9zpgl6c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
diff --git a/pkgs/development/interpreters/clojurescript/lumo/package.json b/pkgs/development/interpreters/clojurescript/lumo/package.json
index 358595ef1eb..cfffdc890d1 100644
--- a/pkgs/development/interpreters/clojurescript/lumo/package.json
+++ b/pkgs/development/interpreters/clojurescript/lumo/package.json
@@ -36,7 +36,7 @@
     "rollup-plugin-node-resolve": "3.4.0",
     "rollup-plugin-replace": "2.1.0",
     "webpack": "^4.25.1",
-    "webpack-cli": "^3.1.2",
+    "webpack-cli": "^3.2.3",
     "which-promise": "^1.0.0"
   }
 }
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix
index 39f8d251410..d26ad077c14 100644
--- a/pkgs/development/interpreters/php/default.nix
+++ b/pkgs/development/interpreters/php/default.nix
@@ -2,7 +2,7 @@
 { lib, stdenv, fetchurl, flex, bison, autoconf
 , mysql, libxml2, readline, zlib, curl, postgresql, gettext
 , openssl, pcre, pcre2, pkgconfig, sqlite, config, libjpeg, libpng, freetype
-, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash
+, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, unixODBC
 , uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2, libzip
 }:
 
@@ -28,6 +28,7 @@ let
   , curlSupport ? config.php.curl or true
   , gettextSupport ? config.php.gettext or true
   , pcntlSupport ? config.php.pcntl or true
+  , pdo_odbcSupport ? config.php.pdo_odbc or true
   , postgresqlSupport ? config.php.postgresql or true
   , pdo_pgsqlSupport ? config.php.pdo_pgsql or true
   , readlineSupport ? config.php.readline or true
@@ -88,6 +89,7 @@ let
         ++ optional readlineSupport readline
         ++ optional sqliteSupport sqlite
         ++ optional postgresqlSupport postgresql
+        ++ optional pdo_odbcSupport unixODBC
         ++ optional pdo_pgsqlSupport postgresql
         ++ optional pdo_mysqlSupport mysqlBuildInputs
         ++ optional mysqliSupport mysqlBuildInputs
@@ -141,6 +143,7 @@ let
       ++ optional readlineSupport "--with-readline=${readline.dev}"
       ++ optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
       ++ optional postgresqlSupport "--with-pgsql=${postgresql}"
+      ++ optional pdo_odbcSupport "--with-pdo-odbc=unixODBC,${unixODBC}"
       ++ optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
       ++ optional pdo_mysqlSupport "--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else mysql.connector-c}"
       ++ optionals mysqliSupport [
diff --git a/pkgs/development/libraries/aws-c-common/default.nix b/pkgs/development/libraries/aws-c-common/default.nix
new file mode 100644
index 00000000000..dd200304ab6
--- /dev/null
+++ b/pkgs/development/libraries/aws-c-common/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "aws-c-common";
+  version = "0.3.2";
+
+  src = fetchFromGitHub {
+    owner = "awslabs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "169ha105qgcvj93hf1bhlya2nlwh8g5fvypd6whfjs9k0hqddi0c";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [
+    "-Wno-nullability-extension"
+    "-Wno-typedef-redefinition"
+  ];
+
+  meta = with lib; {
+    description = "AWS SDK for C common core";
+    homepage = https://github.com/awslabs/aws-c-common;
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ orivej eelco ];
+  };
+}
diff --git a/pkgs/development/libraries/aws-c-event-stream/default.nix b/pkgs/development/libraries/aws-c-event-stream/default.nix
new file mode 100644
index 00000000000..47363e12a68
--- /dev/null
+++ b/pkgs/development/libraries/aws-c-event-stream/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchFromGitHub, cmake, aws-c-common, aws-checksums }:
+
+stdenv.mkDerivation rec {
+  pname = "aws-c-event-stream";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "awslabs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0anjynfghk3inysy21wqvhxha33xsswh3lm8pr7nx7cpj6cmr37m";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ aws-c-common aws-checksums ];
+
+  cmakeFlags = [
+    "-DCMAKE_MODULE_PATH=${aws-c-common}/lib/cmake"
+  ];
+
+  meta = with lib; {
+    description = "C99 implementation of the vnd.amazon.eventstream content-type";
+    homepage = https://github.com/awslabs/aws-c-event-stream;
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ orivej eelco ];
+  };
+}
diff --git a/pkgs/development/libraries/aws-checksums/default.nix b/pkgs/development/libraries/aws-checksums/default.nix
new file mode 100644
index 00000000000..0e47398b346
--- /dev/null
+++ b/pkgs/development/libraries/aws-checksums/default.nix
@@ -0,0 +1,23 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "aws-checksums";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "awslabs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1r21sfs1ik6cb8bz17w6gp6y2xa9rbjxjka0p6airb3qds094iv5";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    description = "HW accelerated CRC32c and CRC32";
+    homepage = https://github.com/awslabs/aws-checksums;
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ orivej eelco ];
+  };
+}
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index a5517a2522d..9ba611b0f96 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -1,4 +1,5 @@
 { lib, stdenv, fetchFromGitHub, cmake, curl, openssl, zlib
+, aws-c-common, aws-c-event-stream, aws-checksums
 , CoreAudio, AudioToolbox
 , # Allow building a limited set of APIs, e.g. ["s3" "ec2"].
   apis ? ["*"]
@@ -6,22 +7,15 @@
   customMemoryManagement ? true
 }:
 
-let
-  loaderVar =
-    if stdenv.isLinux
-      then "LD_LIBRARY_PATH"
-      else if stdenv.isDarwin
-        then "DYLD_LIBRARY_PATH"
-        else throw "Unsupported system!";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   name = "aws-sdk-cpp-${version}";
-  version = "1.6.52";
+  version = "1.7.53";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-sdk-cpp";
     rev = version;
-    sha256 = "17hyq6rv1xl3f70p2pfkkxm86gbfimq2pwpakv1wv3xjibmppbrf";
+    sha256 = "0ybccffz5nrhp4n4nyb6ykrk9fdi0vqqqhjkaxx3l0xvmqx9rbrv";
   };
 
   # FIXME: might be nice to put different APIs in different outputs
@@ -30,43 +24,35 @@ in stdenv.mkDerivation rec {
   separateDebugInfo = stdenv.isLinux;
 
   nativeBuildInputs = [ cmake curl ];
-  buildInputs = [ zlib curl openssl ]
-    ++ lib.optionals (stdenv.isDarwin &&
+
+  buildInputs = [
+    curl openssl zlib
+    aws-c-common aws-c-event-stream aws-checksums
+  ] ++ lib.optionals (stdenv.isDarwin &&
                         ((builtins.elem "text-to-speech" apis) ||
                          (builtins.elem "*" apis)))
          [ CoreAudio AudioToolbox ];
 
-  cmakeFlags =
-       lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0"
+  cmakeFlags = [
+    "-DBUILD_DEPS=OFF"
+    "-DCMAKE_SKIP_BUILD_RPATH=OFF"
+  ] ++ lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0"
     ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "-DENABLE_TESTING=OFF"
     ++ lib.optional (apis != ["*"])
       "-DBUILD_ONLY=${lib.concatStringsSep ";" apis}";
 
-  enableParallelBuilding = true;
-
-  # Behold the escaping nightmare below on loaderVar o.O
-  preBuild =
-    ''
-      # Ensure that the unit tests can find the *.so files.
-      for i in testing-resources aws-cpp-sdk-*; do
-        export ${loaderVar}=$(pwd)/$i:''${${loaderVar}}
-      done
-    '';
-
   preConfigure =
     ''
       rm aws-cpp-sdk-core-tests/aws/auth/AWSCredentialsProviderTest.cpp
     '';
 
-  NIX_CFLAGS_COMPILE = [ "-Wno-error=noexcept-type" ];
-
   __darwinAllowLocalNetworking = true;
 
-  meta = {
+  meta = with lib; {
     description = "A C++ interface for Amazon Web Services";
     homepage = https://github.com/awslabs/aws-sdk-cpp;
-    license = lib.licenses.asl20;
-    platforms = lib.platforms.linux ++ lib.platforms.darwin;
-    maintainers = [ lib.maintainers.eelco ];
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ eelco orivej ];
   };
 }
diff --git a/pkgs/development/libraries/boehm-gc/default.nix b/pkgs/development/libraries/boehm-gc/default.nix
index d6f7b46079f..1a2c75ecf91 100644
--- a/pkgs/development/libraries/boehm-gc/default.nix
+++ b/pkgs/development/libraries/boehm-gc/default.nix
@@ -31,7 +31,12 @@ stdenv.mkDerivation rec {
   configureFlags =
     [ "--enable-cplusplus" ]
     ++ lib.optional enableLargeConfig "--enable-large-config"
-    ++ lib.optional (stdenv.hostPlatform.libc == "musl") "--disable-static";
+    ++ lib.optional (stdenv.hostPlatform.libc == "musl") "--disable-static"
+    # Configure script can't detect whether C11 atomic intrinsics are available
+    # when cross-compiling, so it links to libatomic_ops, which has to be
+    # propagated to all dependencies. To avoid this, assume that the intrinsics
+    # are available.
+    ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--with-libatomic-ops=none";
 
   doCheck = true; # not cross;
 
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index 8f7a04cbb68..845b09053ad 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -1,8 +1,10 @@
-{ stdenv, fetchurl, pkgconfig, libiconv
+{ config, stdenv, fetchurl, fetchpatch, pkgconfig, libiconv
 , libintl, expat, zlib, libpng, pixman, fontconfig, freetype, xorg
 , gobjectSupport ? true, glib
 , xcbSupport ? true # no longer experimental since 1.12
-, glSupport ? true, libGL ? null # libGLU_combined is no longer a big dependency
+, libGLSupported
+, glSupport ? config.cairo.gl or (libGLSupported && stdenv.isLinux && !stdenv.isAarch32 && !stdenv.isMips)
+, libGL ? null # libGLU_combined is no longer a big dependency
 , pdfSupport ? true
 , darwin
 }:
@@ -20,6 +22,19 @@ in stdenv.mkDerivation rec {
     sha256 = "0c930mk5xr2bshbdljv005j3j8zr47gqmkry3q6qgvqky6rjjysy";
   };
 
+  patches = [
+    # Fixes CVE-2018-19876; see Nixpkgs issue #55384
+    # CVE information: https://nvd.nist.gov/vuln/detail/CVE-2018-19876
+    # Upstream PR: https://gitlab.freedesktop.org/cairo/cairo/merge_requests/5
+    #
+    # This patch is the merged commit from the above PR.
+    (fetchpatch {
+      name   = "CVE-2018-19876.patch";
+      url    = "https://gitlab.freedesktop.org/cairo/cairo/commit/6edf572ebb27b00d3c371ba5ae267e39d27d5b6d.patch";
+      sha256 = "112hgrrsmcwxh1r52brhi5lksq4pvrz4xhkzcf2iqp55jl2pb7n1";
+    })
+  ];
+
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev"; # very small
 
diff --git a/pkgs/development/libraries/catch2/default.nix b/pkgs/development/libraries/catch2/default.nix
index 5a9815208d2..54f1c459212 100644
--- a/pkgs/development/libraries/catch2/default.nix
+++ b/pkgs/development/libraries/catch2/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "catch2-${version}";
-  version = "2.5.0";
+  version = "2.6.0";
 
   src = fetchFromGitHub {
     owner = "catchorg";
     repo = "Catch2";
     rev = "v${version}";
-    sha256="0pmkqx5b3vy2ppz0h3ijd8v1387yfgykpw2kz0zzwr9mdv9adw7a";
+    sha256="1p2y6fhxfmb48nl03xdg62nfrwssaaiw10vzr194z6srcj90n2r7";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/fcppt/default.nix b/pkgs/development/libraries/fcppt/default.nix
index 49e929821f7..a37ebe7c5e0 100644
--- a/pkgs/development/libraries/fcppt/default.nix
+++ b/pkgs/development/libraries/fcppt/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchFromGitHub, cmake, boost, brigand }:
+{ stdenv, fetchFromGitHub, cmake, boost, brigand, catch2 }:
 
 stdenv.mkDerivation rec {
   name = "fcppt-${version}";
-  version = "2.9.0";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "freundlich";
     repo = "fcppt";
     rev = version;
-    sha256 = "0zyqgmi1shjbwin1lx428v7vbi6jnywb1d47dascdn89r5gz6klv";
+    sha256 = "0l78fjhy9nl3afrf0da9da4wzp1sx3kcyc2j6b71i60kvk44v4in";
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost ];
+  buildInputs = [ boost catch2 ];
 
-  cmakeFlags = [ "-DENABLE_EXAMPLES=false" "-DENABLE_TEST=false" "-DBrigand_INCLUDE_DIR=${brigand}/include" ];
+  cmakeFlags = [ "-DENABLE_EXAMPLES=false" "-DENABLE_CATCH=true" "-DENABLE_TEST=true" "-DBrigand_INCLUDE_DIR=${brigand}/include" ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index 9821357de3b..738411d398d 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -6,7 +6,7 @@
 
 callPackage ./generic.nix (args // rec {
   version = "${branch}";
-  branch = "4.1";
-  sha256 = "19d16dhb4gx3akhbqd8844awx1axxli91bsjwsm4qp2a4i1zp15n";
+  branch = "4.1.1";
+  sha256 = "0n5hz98gcyznj8lnqma6c9004vhcdzv67a4angnd1k6ai8xhxd0c";
   darwinFrameworks = [ Cocoa CoreMedia ];
 })
diff --git a/pkgs/development/libraries/gexiv2/default.nix b/pkgs/development/libraries/gexiv2/default.nix
index 74311525f1e..350f38d8703 100644
--- a/pkgs/development/libraries/gexiv2/default.nix
+++ b/pkgs/development/libraries/gexiv2/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gexiv2";
-  version = "0.10.9";
+  version = "0.10.10";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1vf0zv92p9hybdhn7zx53h3ia53ph97a21xz8rfk877xlr5261l8";
+    sha256 = "1qbcwq89g4r67k1dj4laqj441pj4195c8hzhxn8vc6mmg8adg6kx";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection vala gtk-doc docbook_xsl docbook_xml_dtd_43 ];
diff --git a/pkgs/development/libraries/git2/0.27.nix b/pkgs/development/libraries/git2/0.27.nix
index 93948a1b0d6..510f53f24b1 100644
--- a/pkgs/development/libraries/git2/0.27.nix
+++ b/pkgs/development/libraries/git2/0.27.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.27.7";
+  version = "0.27.8";
   name = "libgit2-${version}";
 
   src = fetchFromGitHub {
     owner = "libgit2";
     repo = "libgit2";
     rev = "v${version}";
-    sha256 = "1q3mp7xjpbmdsnk4sdzf2askbb4pgbxcmr1h7y7zk2738dndwkha";
+    sha256 = "0wzx8nkyy9m7mx6cks58chjd4289vjsw97mxm9w6f1ggqsfnmbr9";
   };
 
   cmakeFlags = [ "-DTHREADSAFE=ON" ];
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 7e99a0c18d7..cb4571265af 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -94,7 +94,8 @@ stdenv.mkDerivation ({
       })
     ]
     ++ lib.optional stdenv.isx86_64 ./fix-x64-abi.patch
-    ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch;
+    ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch
+    ++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch;
 
   postPatch =
     ''
diff --git a/pkgs/development/libraries/glibc/darwin-cross-build.patch b/pkgs/development/libraries/glibc/darwin-cross-build.patch
new file mode 100644
index 00000000000..7b224924104
--- /dev/null
+++ b/pkgs/development/libraries/glibc/darwin-cross-build.patch
@@ -0,0 +1,103 @@
+enable cross-compilation of glibc on Darwin (build=Darwin, host=Linux)
+* increase ulimit for open files: macOS default of 256 is too low for glibc build system
+* use host version of ar, which is given by environment variable
+* build system uses stamp.os and stamp.oS files, which only differ in case;
+  this fails on macOS, so replace .oS with .o_S
+* libintl.h does not exist (and is not needed) on macOS
+
+--- glibc-2.27/Makefile.in	2018-02-01 17:17:18.000000000 +0100
++++ glibc-2.27/Makefile.in	2019-02-15 17:38:27.022965553 +0100
+@@ -6,9 +6,11 @@
+ .PHONY: all install bench
+ 
+ all .DEFAULT:
+-	$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
++	ulimit -n 1024; \
++	$(MAKE) -r AR=$$AR PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
+ 
+ install:
++	ulimit -n 1024; \
+ 	LC_ALL=C; export LC_ALL; \
+ 	$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
+ 
+--- glibc-2.27/Makerules	2018-02-01 17:17:18.000000000 +0100
++++ glibc-2.27/Makerules	2019-02-15 17:43:11.196039000 +0100
+@@ -915,8 +915,8 @@
+ ifndef objects
+ 
+ # Create the stamp$o files to keep the parent makefile happy.
+-subdir_lib: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o)
+-$(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o):
++subdir_lib: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o))
++$(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o)):
+ 	$(make-target-directory)
+ 	rm -f $@; > $@
+ else
+@@ -927,7 +927,7 @@
+ # The parent will then actually add them all to the archive in the
+ # archive rule, below.
+ define o-iterator-doit
+-$(objpfx)stamp$o: $(o-objects); $$(do-stamp)
++$(objpfx)stamp$(subst .oS,.o_S,$o): $(o-objects); $$(do-stamp)
+ endef
+ define do-stamp
+ $(make-target-directory)
+@@ -943,14 +943,14 @@
+ # on the stamp files built above.
+ define o-iterator-doit
+ $(common-objpfx)$(patsubst %,$(libtype$o),c): \
+-		$(subdirs-stamp-o) $(common-objpfx)stamp$o; $$(do-makelib)
++		$(subdirs-stamp-o) $(common-objpfx)stamp$(subst .oS,.o_S,$o); $$(do-makelib)
+ endef
+ define do-makelib
+ cd $(common-objdir) && \
+ $(AR) $(CREATE_ARFLAGS) $(@F) `cat $(patsubst $(common-objpfx)%,%,$^)`
+ endef
+ subdirs-stamps := $(foreach d,$(subdirs),$(common-objpfx)$d/stamp%)
+-subdirs-stamp-o = $(subst %,$o,$(subdirs-stamps))
++subdirs-stamp-o = $(subst %,$(subst .oS,.o_S,$o),$(subdirs-stamps))
+ ifndef subdir
+ $(subdirs-stamps): subdir_lib;
+ endif
+@@ -961,7 +961,7 @@
+ # This makes all the object files.
+ .PHONY: objects objs libobjs extra-objs
+ objects objs: libobjs extra-objs
+-libobjs: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o)
++libobjs: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o))
+ extra-objs: $(addprefix $(objpfx),$(extra-objs))
+ 
+ # Canned sequence for building an extra library archive.
+@@ -1615,7 +1615,7 @@
+ 	$(rmobjs)
+ define rmobjs
+ $(foreach o,$(object-suffixes-for-libc),
+--rm -f $(objpfx)stamp$o $(o-objects))
++-rm -f $(objpfx)stamp$(subst .oS,.o_S,$o) $(o-objects))
+ endef
+ 
+ # Also remove the dependencies and generated source files.
+--- glibc-2.27/sunrpc/rpc_main.c	2019-02-15 17:32:43.710244513 +0100
++++ glibc-2.27/sunrpc/rpc_main.c	2019-02-15 17:23:57.139617796 +0100
+@@ -38,7 +38,9 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
++#ifndef __APPLE__
+ #include <libintl.h>
++#endif
+ #include <locale.h>
+ #include <ctype.h>
+ #include <sys/types.h>
+--- glibc-2.27/sunrpc/rpc_scan.c	2019-02-15 17:32:54.845490606 +0100
++++ glibc-2.27/sunrpc/rpc_scan.c	2019-02-15 17:24:54.288066644 +0100
+@@ -37,7 +37,9 @@
+ #include <stdio.h>
+ #include <ctype.h>
+ #include <string.h>
++#ifndef __APPLE__
+ #include <libintl.h>
++#endif
+ #include "rpc_scan.h"
+ #include "rpc_parse.h"
+ #include "rpc_util.h"
diff --git a/pkgs/development/libraries/gnutls-kdh/generic.nix b/pkgs/development/libraries/gnutls-kdh/generic.nix
index d1d3c8575b0..75c71632aeb 100644
--- a/pkgs/development/libraries/gnutls-kdh/generic.nix
+++ b/pkgs/development/libraries/gnutls-kdh/generic.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
-, guileBindings, guile, perl, gmp, autogen, libidn, p11-kit, unbound, libiconv
+{ config, lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, perl, gmp, autogen, libidn, p11-kit, unbound, libiconv
+, guileBindings ? config.gnutls.guile or false, guile
 , tpmSupport ? true, trousers, nettools, gperftools, gperf, gettext, automake
 , yacc, texinfo
 
diff --git a/pkgs/development/libraries/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix
index 7dc45edd636..086c0560cc4 100644
--- a/pkgs/development/libraries/gnutls/generic.nix
+++ b/pkgs/development/libraries/gnutls/generic.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
-, guileBindings, guile, perl, gmp, autogen, libidn, p11-kit, libiconv
+{ config, lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, perl, gmp, autogen, libidn, p11-kit, libiconv
+, guileBindings ? config.gnutls.guile or false, guile
 , tpmSupport ? false, trousers, which, nettools, libunistring
 , unbound, dns-root-data, gettext
 
diff --git a/pkgs/development/libraries/gtk+/2.x.nix b/pkgs/development/libraries/gtk+/2.x.nix
index c7638ea5fe5..8dad69eb998 100644
--- a/pkgs/development/libraries/gtk+/2.x.nix
+++ b/pkgs/development/libraries/gtk+/2.x.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchurl, pkgconfig, gettext, glib, atk, pango, cairo, perl, xorg
+{ config, stdenv, fetchurl, pkgconfig, gettext, glib, atk, pango, cairo, perl, xorg
 , gdk_pixbuf, xlibsWrapper, gobject-introspection
 , xineramaSupport ? stdenv.isLinux
-, cupsSupport ? true, cups ? null
+, cupsSupport ? config.gtk2.cups or stdenv.isLinux, cups ? null
 , gdktarget ? if stdenv.isDarwin then "quartz" else "x11"
 , AppKit, Cocoa
 , fetchpatch
diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix
index bb0c21f7739..579fca06ffb 100644
--- a/pkgs/development/libraries/gtk+/3.x.nix
+++ b/pkgs/development/libraries/gtk+/3.x.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, fetchpatch, pkgconfig, gettext, perl, makeWrapper, shared-mime-info, isocodes
-, expat, glib, cairo, pango, gdk_pixbuf, atk, at-spi2-atk, gobject-introspection
-, xorg, epoxy, json-glib, libxkbcommon, gmp, gnome3
+, expat, glib, cairo, pango, gdk_pixbuf, atk, at-spi2-atk, gobject-introspection, fribidi
+, xorg, epoxy, json-glib, libxkbcommon, gmp, gnome3, autoreconfHook
 , x11Support ? stdenv.isLinux
 , waylandSupport ? stdenv.isLinux, mesa_noglu, wayland, wayland-protocols
 , xineramaSupport ? stdenv.isLinux
@@ -13,20 +13,20 @@ assert cupsSupport -> cups != null;
 with stdenv.lib;
 
 let
-  version = "3.24.4";
+  version = "3.24.5";
 in
 stdenv.mkDerivation rec {
   name = "gtk+3-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk+/${stdenv.lib.versions.majorMinor version}/gtk+-${version}.tar.xz";
-    sha256 = "176bl1pm5d5xkhmiwldzw833akna7shp59glkl6cjz580bzmjkyq";
+    sha256 = "0bxhvnixc1hjxbzx063lghmix0wmv282khsqmckdxhrb606zpr8b";
   };
 
   outputs = [ "out" "dev" ];
   outputBin = "dev";
 
-  nativeBuildInputs = [ pkgconfig gettext gobject-introspection perl makeWrapper ];
+  nativeBuildInputs = [ pkgconfig gettext gobject-introspection perl makeWrapper autoreconfHook ];
 
   patches = [
     ./3.0-immodules.cache.patch
@@ -35,6 +35,11 @@ stdenv.mkDerivation rec {
       url = "https://bug757142.bugzilla-attachments.gnome.org/attachment.cgi?id=344123";
       sha256 = "0g6fhqcv8spfy3mfmxpyji93k8d4p4q4fz1v9a1c1cgcwkz41d7p";
     })
+    (fetchpatch {
+      name = "fix-fribidi-linking.patch";
+      url = https://github.com/gnome/gtk/compare/3.24.5..47e4a111c2666961ab47b6df48460d3c9075d92d.patch;
+      sha256 = "0ky4kmgcywg0qlwndn9aw083bkwnkr49bnlsz0ii93fxzvbiqglr";
+    })
   ] ++ optionals stdenv.isDarwin [
     # X11 module requires <gio/gdesktopappinfo.h> which is not installed on Darwin
     # let’s drop that dependency in similar way to how other parts of the library do it
@@ -45,7 +50,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxkbcommon epoxy json-glib isocodes ]
     ++ optional stdenv.isDarwin AppKit;
   propagatedBuildInputs = with xorg; with stdenv.lib;
-    [ expat glib cairo pango gdk_pixbuf atk at-spi2-atk gnome3.gsettings-desktop-schemas
+    [ expat glib cairo pango gdk_pixbuf atk at-spi2-atk gnome3.gsettings-desktop-schemas fribidi
       libXrandr libXrender libXcomposite libXi libXcursor libSM libICE ]
     ++ optional stdenv.isDarwin Cocoa  # explicitly propagated, always needed
     ++ optionals waylandSupport [ mesa_noglu wayland wayland-protocols ]
diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix
index c15a42e3f40..b1c9f59b019 100644
--- a/pkgs/development/libraries/intel-media-driver/default.nix
+++ b/pkgs/development/libraries/intel-media-driver/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "intel-media-driver-${version}";
-  version = "18.4.0";
+  version = "18.4.1";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "media-driver";
     rev    = "intel-media-${version}";
-    sha256 = "0mvb1dq2014gc60lz22dag230flqw859dcqi08hdmmci30qgw88x";
+    sha256 = "192rfv6dk9jagx0q92jq6n1slc1pllgcc7rm85fgachq9rjl7szh";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 3d236ab5851..a0bd7d86454 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind-light }:
 
 stdenv.mkDerivation rec {
-  name = "libdrm-2.4.96";
+  name = "libdrm-2.4.97";
 
   src = fetchurl {
     url = "https://dri.freedesktop.org/libdrm/${name}.tar.bz2";
-    sha256 = "14xkip83qgljjaahzq40qgl60j54q7k00la1hbf5kk5lgg7ilmhd";
+    sha256 = "08yimlp6jir1rs5ajgdx74xa5qdzcqahpdzdk0rmkmhh7vdcrl3p";
   };
 
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/libgxps/default.nix b/pkgs/development/libraries/libgxps/default.nix
index 3b7f29de573..30e5e247ab2 100644
--- a/pkgs/development/libraries/libgxps/default.nix
+++ b/pkgs/development/libraries/libgxps/default.nix
@@ -1,36 +1,22 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, glib, gobject-introspection, cairo
-, libarchive, freetype, libjpeg, libtiff, gnome3, fetchpatch
+, libarchive, freetype, libjpeg, libtiff, gnome3, lcms2
 }:
 
 stdenv.mkDerivation rec {
   pname = "libgxps";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "412b1343bd31fee41f7204c47514d34c563ae34dafa4cc710897366bd6cd0fae";
+    sha256 = "157s4c9gjjss6yd7qp7n4q6s72gz1k4ilsx4xjvp357azk49z4qs";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "CVE-2018-10733-1.patch";
-      url = https://gitlab.gnome.org/GNOME/libgxps/commit/b458226e162fe1ffe7acb4230c114a52ada5131b.patch;
-      sha256 = "0pqg9iwkg69qknj7vkgn26c32fndy55byxivd4km0vjfhfyx69hd";
-    })
-    (fetchpatch {
-      name = "CVE-2018-10733-2.patch";
-      url = https://gitlab.gnome.org/GNOME/libgxps/commit/133fe2a96e020d4ca65c6f64fb28a404050ebbfd.patch;
-      sha256 = "19n01x8zs05wf801mkz4mypvapph7h941md3hr3rj0ry6r88pkir";
-    })
-  ];
-
   nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection ];
-  buildInputs = [ glib cairo freetype libjpeg libtiff ];
+  buildInputs = [ glib cairo freetype libjpeg libtiff lcms2 ];
   propagatedBuildInputs = [ libarchive ];
 
   mesonFlags = [
     "-Denable-test=false"
-    "-Dwith-liblcms2=false"
   ];
 
   passthru = {
diff --git a/pkgs/development/libraries/libiodbc/default.nix b/pkgs/development/libraries/libiodbc/default.nix
index faa070b3468..ad55c6cb18f 100644
--- a/pkgs/development/libraries/libiodbc/default.nix
+++ b/pkgs/development/libraries/libiodbc/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, gtk2, Carbon, useGTK ? false }:
+{ config, stdenv, fetchurl, pkgconfig, gtk2, Carbon
+, useGTK ? config.libiodbc.gtk or false }:
 
 stdenv.mkDerivation rec {
   name = "libiodbc-3.52.12";
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index 9fc7d771202..765f03d9825 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -18,6 +18,16 @@ in stdenv.mkDerivation rec {
     url = "mirror://sourceforge/libpng/libpng-${version}.tar.xz";
     sha256 = "06d35a3xz2a0kph82r56hqm1fn8fbwrqs07xzmr93dx63x695szc";
   };
+  patches = [
+    (fetchurl { # https://github.com/glennrp/libpng/issues/266
+      url = "https://salsa.debian.org/debian/libpng1.6/raw/0e1348f3d/debian/patches/272.patch";
+      sha256 = "1d36khgryq2p27bdx10xrr4kcjr7cdfdj2zhdcjzznpnpns97s6n";
+    })
+    (fetchurl { # https://github.com/glennrp/libpng/issues/275
+      url = "https://salsa.debian.org/debian/libpng1.6/raw/853d1977/debian/patches/CVE-2019-7317.patch";
+      sha256 = "0c8qc176mqh08kcxlnx40rzdggchihkrlzqw6qg6lf0c9ygkf55k";
+    })
+  ];
   postPatch = whenPatched "gunzip < ${patch_src} | patch -Np1";
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/development/libraries/libqalculate/default.nix b/pkgs/development/libraries/libqalculate/default.nix
index 6a6adf06dba..96b926d3d2b 100644
--- a/pkgs/development/libraries/libqalculate/default.nix
+++ b/pkgs/development/libraries/libqalculate/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "libqalculate-${version}";
-  version = "2.8.2";
+  version = "2.9.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "libqalculate";
     rev = "v${version}";
-    sha256 = "10d3dcq8zprj1bnhq6gl9smpbv7fq0nx3jw9s3f8lkl3bavc34ca";
+    sha256 = "1w4fbcc6hh63dp88fy4wvys6i1ydj7ya50r1l69a64qbzby1w32i";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/pkgs/development/libraries/librealsense/default.nix b/pkgs/development/libraries/librealsense/default.nix
index d19d5ac1fbf..875e0a97ae2 100644
--- a/pkgs/development/libraries/librealsense/default.nix
+++ b/pkgs/development/libraries/librealsense/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "librealsense-${version}";
-  version = "2.17.1";
+  version = "2.18.0";
 
   src = fetchFromGitHub {
     owner = "IntelRealSense";
     repo = "librealsense";
     rev = "v${version}";
-    sha256 = "0nxb1vyq7gimv61w0gba2ilbnnmnjac94bk1ikcmdgkymdfwn6zj";
+    sha256 = "09s0rhjpvaa89767m58wk1bqcmdkjk7brwj32k083f2wsdbbzb11";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libtensorflow/default.nix b/pkgs/development/libraries/libtensorflow/default.nix
index f41f6303e01..98096371e40 100644
--- a/pkgs/development/libraries/libtensorflow/default.nix
+++ b/pkgs/development/libraries/libtensorflow/default.nix
@@ -1,7 +1,7 @@
-{ stdenv
+{ config, stdenv
 , fetchurl
 , patchelf
-, cudaSupport ? false, symlinkJoin, cudatoolkit, cudnn, nvidia_x11
+, cudaSupport ? config.cudaSupport or false, symlinkJoin, cudatoolkit, cudnn, nvidia_x11
 }:
 with stdenv.lib;
 let
diff --git a/pkgs/development/libraries/libxmlb/default.nix b/pkgs/development/libraries/libxmlb/default.nix
index cce73ba89bc..bdf210a061a 100644
--- a/pkgs/development/libraries/libxmlb/default.nix
+++ b/pkgs/development/libraries/libxmlb/default.nix
@@ -22,6 +22,10 @@ stdenv.mkDerivation rec {
     "-Dgtkdoc=true"
   ];
 
+  preCheck = ''
+    export XDG_DATA_DIRS=$XDG_DATA_DIRS:${shared-mime-info}/share
+  '';
+
   doCheck = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/opencascade-occt/default.nix b/pkgs/development/libraries/opencascade-occt/default.nix
new file mode 100644
index 00000000000..d57c10b41e9
--- /dev/null
+++ b/pkgs/development/libraries/opencascade-occt/default.nix
@@ -0,0 +1,42 @@
+{ stdenv
+, fetchurl
+, cmake
+, tcl
+, tk
+, vtk
+, mesa_glu
+, libXext
+, libXmu
+, libXi
+, doxygen
+}:
+
+let version = "7.3.0p2";
+    commit = "V${builtins.replaceStrings ["."] ["_"] version}";
+
+in stdenv.mkDerivation {
+
+  name = "opencascade-occt-${version}";
+
+  src = fetchurl {
+    name = "occt-${commit}.tar.gz";
+    url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
+    sha256 = "0nc9k1nqpj0n99pr7qkva79irmqhh007dffwghiyzs031zhd7i6w";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ tcl tk vtk mesa_glu libXext libXmu libXi doxygen ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
+    homepage = "https://www.opencascade.org/";
+    license = licenses.lgpl21;  # essentially...
+    # The special exception defined in the file OCCT_LGPL_EXCEPTION.txt
+    # are basically about making the license a little less share-alike.
+    maintainers = with maintainers; [ amiloradovsky ];
+    platforms = platforms.all;
+  };
+
+}
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
index cca820e2f37..f1e82c166a1 100644
--- a/pkgs/development/libraries/opencv/3.x.nix
+++ b/pkgs/development/libraries/opencv/3.x.nix
@@ -8,13 +8,13 @@
 , enablePNG       ? true, libpng
 , enableTIFF      ? true, libtiff
 , enableWebP      ? true, libwebp
-, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
+, enableEXR ?     !stdenv.isDarwin, openexr, ilmbase
 , enableJPEG2K    ? true, jasper
 , enableEigen     ? true, eigen
 , enableOpenblas  ? true, openblas
 , enableContrib   ? true
 
-, enableCuda      ? (config.cudaSupport or false), cudatoolkit
+, enableCuda      ? config.cudaSupport or false, cudatoolkit
 
 , enableUnfree    ? false
 , enableIpp       ? false
diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix
index 3f21ee15bf3..8addc150555 100644
--- a/pkgs/development/libraries/opencv/4.x.nix
+++ b/pkgs/development/libraries/opencv/4.x.nix
@@ -8,13 +8,13 @@
 , enablePNG       ? true, libpng
 , enableTIFF      ? true, libtiff
 , enableWebP      ? true, libwebp
-, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
+, enableEXR ?     !stdenv.isDarwin, openexr, ilmbase
 , enableJPEG2K    ? true, jasper
 , enableEigen     ? true, eigen
 , enableOpenblas  ? true, openblas
 , enableContrib   ? true
 
-, enableCuda      ? (config.cudaSupport or false), cudatoolkit
+, enableCuda      ? config.cudaSupport or false, cudatoolkit
 
 , enableUnfree    ? false
 , enableIpp       ? false
diff --git a/pkgs/development/libraries/opensubdiv/default.nix b/pkgs/development/libraries/opensubdiv/default.nix
index 614df6fb063..57f1c9830a6 100644
--- a/pkgs/development/libraries/opensubdiv/default.nix
+++ b/pkgs/development/libraries/opensubdiv/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
+{ config, lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
 , libGL, glew, ocl-icd, python3
-, cudaSupport ? false, cudatoolkit
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
 , darwin
 }:
 
diff --git a/pkgs/development/libraries/pcaudiolib/default.nix b/pkgs/development/libraries/pcaudiolib/default.nix
index efaf2cfd429..2050e5cdfe7 100644
--- a/pkgs/development/libraries/pcaudiolib/default.nix
+++ b/pkgs/development/libraries/pcaudiolib/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, lib, fetchFromGitHub, autoconf, automake, which, libtool, pkgconfig,
-  alsaLib, portaudio, 
-  pulseaudioSupport ? true, libpulseaudio }:
+{ config, stdenv, lib, fetchFromGitHub
+, autoconf, automake, which, libtool, pkgconfig
+, portaudio, alsaLib
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio }:
 
 stdenv.mkDerivation rec {
   name = "pcaudiolib-${version}";
diff --git a/pkgs/development/libraries/physics/rivet/default.nix b/pkgs/development/libraries/physics/rivet/default.nix
index 30f8ad8e8a3..01214878cd8 100644
--- a/pkgs/development/libraries/physics/rivet/default.nix
+++ b/pkgs/development/libraries/physics/rivet/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "rivet-${version}";
-  version = "2.6.2";
+  version = "2.7.0";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/rivet/Rivet-${version}.tar.bz2";
-    sha256 = "0yp3mllr2b4bhsmixjmmpl2n4x78bgw74a9xy2as4f10q3alkplx";
+    sha256 = "12mlj2j1glidjhiaxlr25qz2vfb865wip1vwwg8vlyd3yzisf533";
   };
 
   patches = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     substituteInPlace analyses/Makefile.in \
       --replace "!(tmp)" ""
     substituteInPlace bin/rivet-buildplugin.in \
-      --replace '"which"' '"${which}/bin/which"' \
+      --replace 'which' '"${which}/bin/which"' \
       --replace 'mycxx=' 'mycxx=${stdenv.cc}/bin/${if stdenv.cc.isClang or false then "clang++" else "g++"}  #' \
       --replace 'mycxxflags="' "mycxxflags=\"-std=c++11 $NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK "
   '';
diff --git a/pkgs/development/libraries/pybind11/default.nix b/pkgs/development/libraries/pybind11/default.nix
index d7bca0de249..0a8972d4876 100644
--- a/pkgs/development/libraries/pybind11/default.nix
+++ b/pkgs/development/libraries/pybind11/default.nix
@@ -1,23 +1,29 @@
-{ stdenv, fetchFromGitHub, cmake, python }:
+{ stdenv, fetchFromGitHub, cmake, catch, python, eigen }:
 
 stdenv.mkDerivation rec {
   name = "pybind-${version}";
-  version = "2.2.2";
+  version = "2.2.4";
+
   src = fetchFromGitHub {
     owner = "pybind";
     repo = "pybind11";
     rev = "v${version}";
-    sha256 = "0x71i1n5d02hjbdcnkscrwxs9pb8kplmdpqddhsimabfp84fip48";
+    sha256 = "0pa79ymcasv8br5ifbx7878id5py2jpjac3i20cqxr6gs9l6ivlv";
   };
 
   nativeBuildInputs = [ cmake ];
+  checkInputs = with python.pkgs; [ catch eigen pytest numpy scipy ];
+
+  # Disable test_cmake_build test, as it fails in sandbox
+  # https://github.com/pybind/pybind11/issues/1355
+  patches = [ ./no_test_cmake_build.patch ];
 
-  # disable tests as some tests (test_embed/test_interpreter) are failing at the moment
-  cmakeFlags = [
-     "-DPYTHON_EXECUTABLE=${python.interpreter}"
-     "-DPYBIND11_TEST=0"
+  doCheck = true;
+
+  cmakeFlags = [ 
+    "-DPYTHON_EXECUTABLE=${python.interpreter}" 
+    "-DPYBIND11_TEST=${if doCheck then "ON" else "OFF"}"
   ];
-  doCheck = false;
 
   meta = {
     homepage = https://github.com/pybind/pybind11;
@@ -31,5 +37,4 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [ yuriaisaka ];
   };
-
 }
diff --git a/pkgs/development/libraries/pybind11/no_test_cmake_build.patch b/pkgs/development/libraries/pybind11/no_test_cmake_build.patch
new file mode 100644
index 00000000000..c5d6ecc4481
--- /dev/null
+++ b/pkgs/development/libraries/pybind11/no_test_cmake_build.patch
@@ -0,0 +1,7 @@
+--- a/tests/CMakeLists.txt	2019-01-28 14:13:55.822119328 +0100
++++ b/tests/CMakeLists.txt	2019-01-28 14:14:06.741161928 +0100
+@@ -233,4 +233,3 @@
+ add_subdirectory(test_embed)
+ 
+ # Test CMake build using functions and targets from subdirectory or installed location
+-add_subdirectory(test_cmake_build)
diff --git a/pkgs/development/libraries/qt-3/default.nix b/pkgs/development/libraries/qt-3/default.nix
index 3f3e9158622..dc05251478c 100644
--- a/pkgs/development/libraries/qt-3/default.nix
+++ b/pkgs/development/libraries/qt-3/default.nix
@@ -6,7 +6,8 @@
 , cursorSupport ? true, libXcursor ? null
 , threadSupport ? true
 , mysqlSupport ? false, mysql ? null
-, openglSupport ? false, libGLU_combined ? null, libXmu ? null
+, libGLSupported
+, openglSupport ? libGLSupported, libGLU_combined ? null, libXmu ? null
 , xlibsWrapper, xorgproto, zlib, libjpeg, libpng, which
 }:
 
diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix
index 59dab2beabd..b6e24c63222 100644
--- a/pkgs/development/libraries/qt-5/5.11/default.nix
+++ b/pkgs/development/libraries/qt-5/5.11/default.nix
@@ -62,8 +62,8 @@ let
     qtscript = [ ./qtscript.patch ];
     qtserialport = [ ./qtserialport.patch ];
     qttools = [ ./qttools.patch ];
-    qtwebengine =
-         optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
+    qtwebengine = [ ./qtwebengine-no-build-skip.patch ]
+      ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
       ++ optional stdenv.isDarwin ./qtwebengine-darwin-sdk-10.10.patch;
     qtwebkit = [ ./qtwebkit.patch ];
   };
@@ -94,7 +94,9 @@ let
       };
 
       qtcharts = callPackage ../modules/qtcharts.nix {};
-      qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+      qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+        inherit cf-private;
+      };
       qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
       qtdoc = callPackage ../modules/qtdoc.nix {};
       qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+ 
+ !isEmpty(skipBuildReason) {
+     SUBDIRS =
+-    log($${skipBuildReason}$${EOL})
++    error($${skipBuildReason}$${EOL})
+     log(QtWebEngine will not be built.$${EOL})
+ }
+ 
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index 22535deb767..4b002837c3d 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -60,6 +60,7 @@ let
     qtdeclarative = [ ./qtdeclarative.patch ];
     qtscript = [ ./qtscript.patch ];
     qtserialport = [ ./qtserialport.patch ];
+    qtwebengine = [ ./qtwebengine-no-build-skip.patch ];
     qtwebkit = [ ./qtwebkit.patch ];
   };
 
@@ -89,7 +90,9 @@ let
       };
 
       qtcharts = callPackage ../modules/qtcharts.nix {};
-      qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+      qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+        inherit cf-private;
+      };
       qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
       qtdoc = callPackage ../modules/qtdoc.nix {};
       qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+ 
+ !isEmpty(skipBuildReason) {
+     SUBDIRS =
+-    log($${skipBuildReason}$${EOL})
++    error($${skipBuildReason}$${EOL})
+     log(QtWebEngine will not be built.$${EOL})
+ }
+ 
diff --git a/pkgs/development/libraries/qt-5/5.6/default.nix b/pkgs/development/libraries/qt-5/5.6/default.nix
index bf0ae42ea1f..e493fc169ab 100644
--- a/pkgs/development/libraries/qt-5/5.6/default.nix
+++ b/pkgs/development/libraries/qt-5/5.6/default.nix
@@ -29,6 +29,7 @@ existing packages here and modify it as necessary.
   stdenv, fetchurl, fetchpatch, makeSetupHook,
   bison, cups ? null, harfbuzz, libGL, perl,
   gstreamer, gst-plugins-base,
+  cf-private,
 
   # options
   developerBuild ? false,
@@ -132,7 +133,9 @@ let
       /* qtactiveqt = not packaged */
       /* qtandroidextras = not packaged */
       /* qtcanvas3d = not packaged */
-      qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+      qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+        inherit cf-private;
+      };
       qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
       qtdoc = callPackage ../modules/qtdoc.nix {};
       qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix
index 68c6745bcb5..589f175efd9 100644
--- a/pkgs/development/libraries/qt-5/5.9/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/default.nix
@@ -43,6 +43,7 @@ let
     qtscript = [ ./qtscript.patch ];
     qtserialport = [ ./qtserialport.patch ];
     qttools = [ ./qttools.patch ];
+    qtwebengine = [ ./qtwebengine-no-build-skip.patch ];
     qtwebkit = [ ./qtwebkit.patch ];
     qtvirtualkeyboard = [
       (fetchpatch {
@@ -91,7 +92,9 @@ let
       };
 
       qtcharts = callPackage ../modules/qtcharts.nix {};
-      qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+      qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+        inherit cf-private;
+      };
       qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
       qtdoc = callPackage ../modules/qtdoc.nix {};
       qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+ 
+ !isEmpty(skipBuildReason) {
+     SUBDIRS =
+-    log($${skipBuildReason}$${EOL})
++    error($${skipBuildReason}$${EOL})
+     log(QtWebEngine will not be built.$${EOL})
+ }
+ 
diff --git a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
index d866edb052b..17e7f0ee7cf 100644
--- a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
@@ -1,8 +1,8 @@
-{ qtModule, qtbase, qtdeclarative, bluez }:
+{ qtModule, stdenv, qtbase, qtdeclarative, bluez, cf-private }:
 
 qtModule {
   name = "qtconnectivity";
   qtInputs = [ qtbase qtdeclarative ];
-  buildInputs = [ bluez ];
+  buildInputs = if stdenv.isDarwin then [ cf-private ] else [ bluez ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 68439f5921d..f4a97b7cf85 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -74,6 +74,14 @@ let
     if blas64_ != null
       then blas64_
       else hasPrefix "x86_64" stdenv.hostPlatform.system;
+  # Convert flag values to format OpenBLAS's build expects.
+  # `toString` is almost what we need other than bools,
+  # which we need to map {true -> 1, false -> 0}
+  # (`toString` produces empty string `""` for false instead of `0`)
+  mkMakeFlagValue = val:
+    if !builtins.isBool val then toString val
+    else if val then "1" else "0";
+  mkMakeFlagsFromConfig = mapAttrsToList (var: val: "${var}=${mkMakeFlagValue val}");
 in
 stdenv.mkDerivation rec {
   name = "openblas-${version}";
@@ -109,7 +117,7 @@ stdenv.mkDerivation rec {
     buildPackages.stdenv.cc
   ];
 
-  makeFlags = mapAttrsToList (var: val: "${var}=${toString val}") (config // {
+  makeFlags = mkMakeFlagsFromConfig (config // {
     FC = "${stdenv.cc.targetPrefix}gfortran";
     CC = "${stdenv.cc.targetPrefix}${if stdenv.cc.isClang then "clang" else "cc"}";
     PREFIX = placeholder "out";
diff --git a/pkgs/development/libraries/science/math/sympow/default.nix b/pkgs/development/libraries/science/math/sympow/default.nix
index f421755b618..080cab86ca4 100644
--- a/pkgs/development/libraries/science/math/sympow/default.nix
+++ b/pkgs/development/libraries/science/math/sympow/default.nix
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     })
     (fetchpatch {
       name = "fix_pointer_initialization2.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/sympow-datafiles.patch?h=packages/sympow";
+      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/sympow-datafiles.patch?h=packages/sympow&id=5088e641a45b23d0385d8e63be65315129b4cf58";
       sha256 = "1m0vz048layb47r1jjf7fplw650ccc9x0w3l322iqmppzmv3022a";
     })
   ];
diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix
new file mode 100644
index 00000000000..0ea8107cad1
--- /dev/null
+++ b/pkgs/development/libraries/tpm2-tss/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, lib, fetchurl
+, cmocka, doxygen, ibm-sw-tpm2, iproute, openssl, perl, pkgconfig, procps
+, uthash, which }:
+
+stdenv.mkDerivation rec {
+  pname = "tpm2-tss";
+  version = "2.2.0";
+
+  src = fetchurl {
+    url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
+    sha256 = "10r5wgrq21p0y700gh5iirh26pc5gsaib2b8b2nzmbr27apiw4y9";
+  };
+
+  nativeBuildInputs = [
+    doxygen perl pkgconfig
+    # For unit tests and integration tests.
+    ibm-sw-tpm2 iproute procps which
+  ];
+  buildInputs = [
+    openssl
+    # For unit tests and integration tests.
+    cmocka uthash
+  ];
+
+  postPatch = "patchShebangs script";
+
+  configureFlags = [
+    "--enable-unit"
+    "--enable-integration"
+  ];
+
+  doCheck = true;
+
+  postInstall = ''
+    # Do not install the upstream udev rules, they rely on specific
+    # users/groups which aren't guaranteed to exist on the system.
+    rm -R $out/lib/udev
+  '';
+
+  meta = with lib; {
+    description = "OSS implementation of the TCG TPM2 Software Stack (TSS2)";
+    homepage = https://github.com/tpm2-software/tpm2-tss;
+    license = licenses.bsd2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ delroth ];
+  };
+}
diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix
index 25cbde63129..8a5a5dc070e 100644
--- a/pkgs/development/libraries/wayland/default.nix
+++ b/pkgs/development/libraries/wayland/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
     sha256 = "1xajhxad43izq9f7sbww1hlg42nayijy8xnp21kgpk09c6sw4wjf";
   };
 
+  separateDebugInfo = true;
+
   configureFlags = [
     "--disable-documentation"
   ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
diff --git a/pkgs/development/libraries/wxwidgets/2.8/default.nix b/pkgs/development/libraries/wxwidgets/2.8/default.nix
index 6d2e25709b5..1b08bb090b4 100644
--- a/pkgs/development/libraries/wxwidgets/2.8/default.nix
+++ b/pkgs/development/libraries/wxwidgets/2.8/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xorgproto
 , gstreamer, gst-plugins-base, GConf, libX11, cairo
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
 , compat24 ? false, compat26 ? true, unicode ? true,
 }:
 
diff --git a/pkgs/development/libraries/wxwidgets/2.9/default.nix b/pkgs/development/libraries/wxwidgets/2.9/default.nix
index 426f5cf92a1..1938b15efbb 100644
--- a/pkgs/development/libraries/wxwidgets/2.9/default.nix
+++ b/pkgs/development/libraries/wxwidgets/2.9/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xorgproto
 , gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
 , compat24 ? false, compat26 ? true, unicode ? true
 , Carbon ? null, Cocoa ? null, Kernel ? null, QuickTime ? null, AGL ? null
 }:
diff --git a/pkgs/development/libraries/wxwidgets/3.0/default.nix b/pkgs/development/libraries/wxwidgets/3.0/default.nix
index 45bf5f779c2..948b261fe45 100644
--- a/pkgs/development/libraries/wxwidgets/3.0/default.nix
+++ b/pkgs/development/libraries/wxwidgets/3.0/default.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchFromGitHub, fetchurl, fetchpatch, pkgconfig
 , gtk2, gtk3, libXinerama, libSM, libXxf86vm
 , xorgproto, gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
 , compat24 ? false, compat26 ? true, unicode ? true
 , withGtk2 ? true
 , withWebKit ? false, webkitgtk24x-gtk2 ? null, webkitgtk ? null
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index 2d7289ca664..cf331f01456 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.9" "1k7m7m9jld96k16ansfw2w3c354pvd8ibhnrb6dw012g06fw7sfd";
+  xapian_1_4 = generic "1.4.10" "1f4vf1w1yvsn9mn462q6snc8wkmfpifp8wrlzs4aqi45w0kr6rk8";
 }
diff --git a/pkgs/development/libraries/xgboost/default.nix b/pkgs/development/libraries/xgboost/default.nix
index ad1cc2efc87..b4c79d7f816 100644
--- a/pkgs/development/libraries/xgboost/default.nix
+++ b/pkgs/development/libraries/xgboost/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchgit, cmake
-, cudaSupport ? false, cudatoolkit
+{ config, stdenv, lib, fetchgit, cmake
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
 , ncclSupport ? false, nccl
 , llvmPackages
 }:
diff --git a/pkgs/development/libraries/zeroc-ice/default.nix b/pkgs/development/libraries/zeroc-ice/default.nix
index 063d64c6905..82b53402fc7 100644
--- a/pkgs/development/libraries/zeroc-ice/default.nix
+++ b/pkgs/development/libraries/zeroc-ice/default.nix
@@ -29,7 +29,8 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "prefix=$(out)" "OPTIMIZE=yes" ];
 
-  enableParallelBuilding = true;
+  # cannot find -lIceXML (linking bin/transformdb)
+  #enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     homepage = http://www.zeroc.com/ice.html;
diff --git a/pkgs/development/libraries/zlog/default.nix b/pkgs/development/libraries/zlog/default.nix
index 21d8a7babb3..d3dc41371de 100644
--- a/pkgs/development/libraries/zlog/default.nix
+++ b/pkgs/development/libraries/zlog/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     homepage = http://hardysimpson.github.com/zlog;
     license = licenses.lgpl21;
     platforms = platforms.linux; # cannot test on something else
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
   };
 
 }
diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix
index 92560105422..8d57f737c34 100644
--- a/pkgs/development/mobile/androidenv/default.nix
+++ b/pkgs/development/mobile/androidenv/default.nix
@@ -1,6 +1,6 @@
-{ pkgs ? import <nixpkgs> {}
+{ config, pkgs ? import <nixpkgs> {}
 , pkgs_i686 ? import <nixpkgs> { system = "i686-linux"; }
-, licenseAccepted ? false
+, licenseAccepted ? config.android_sdk.accept_license or false
 }:
 
 rec {
diff --git a/pkgs/development/node-packages/node-packages-v10.json b/pkgs/development/node-packages/node-packages-v10.json
index b7297e3209e..69c781c1d98 100644
--- a/pkgs/development/node-packages/node-packages-v10.json
+++ b/pkgs/development/node-packages/node-packages-v10.json
@@ -1,5 +1,6 @@
 [
-  "asar"
+  "@angular/cli"
+, "asar"
 , "azure-functions-core-tools"
 , "bower"
 , "bower2nix"
@@ -90,6 +91,7 @@
 , "pulp"
 , "react-tools"
 , "react-native-cli"
+, "reveal.js"
 , "s3http"
 , "scuttlebot"
 , "semver"
diff --git a/pkgs/development/node-packages/node-packages-v10.nix b/pkgs/development/node-packages/node-packages-v10.nix
index a8ed30e10f3..7f2b73da2d9 100644
--- a/pkgs/development/node-packages/node-packages-v10.nix
+++ b/pkgs/development/node-packages/node-packages-v10.nix
@@ -58,13 +58,13 @@ let
         sha512 = "OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==";
       };
     };
-    "@babel/core-7.2.2" = {
+    "@babel/core-7.3.3" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.2.2";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.2.2.tgz";
-        sha512 = "59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.3.3.tgz";
+        sha512 = "w445QGI2qd0E0GlSnq6huRZWPMmQGCp5gd5ZWS4hagn0EiwzxD5QMFkpchyusAyVC1n27OKXzQ0/88aVU9n4xQ==";
       };
     };
     "@babel/generator-7.0.0-beta.38" = {
@@ -76,13 +76,13 @@ let
         sha512 = "aOHQPhsEyaB6p2n+AK981+onHoc+Ork9rcAQVSUJR33wUkGiWRpu6/C685knRyIZVsKeSdG5Q4xMiYeFUhuLzA==";
       };
     };
-    "@babel/generator-7.3.2" = {
+    "@babel/generator-7.3.3" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.3.2";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.3.2.tgz";
-        sha512 = "f3QCuPppXxtZOEm5GWPra/uYUjmNQlu9pbAD8D/9jze4pTY83rTtB1igTBSwvkeNlC5gR24zFFkz+2WHLFQhqQ==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.3.3.tgz";
+        sha512 = "aEADYwRRZjJyMnKN7llGIlircxTCofm3dtV5pmY6ob18MSIuipHpA2yZWkPlycwu5HJcx/pADS3zssd8eY7/6A==";
       };
     };
     "@babel/helper-annotate-as-pure-7.0.0" = {
@@ -292,13 +292,13 @@ let
         sha512 = "UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==";
       };
     };
-    "@babel/parser-7.3.2" = {
+    "@babel/parser-7.3.3" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.3.2";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.3.2.tgz";
-        sha512 = "QzNUC2RO1gadg+fs21fi0Uu0OuGNzRKEmgCxoLNzbCdoprLwjfmZwzUrpUNfJPaVRwBpDY47A17yYEGWyRelnQ==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.3.3.tgz";
+        sha512 = "xsH1CJoln2r74hR+y7cg2B5JCPaTh+Hd+EbBRk9nWGSNspuo6krjhX0Om6RnRQuIvFq8wVXCLKH3kwKDYhanSg==";
       };
     };
     "@babel/plugin-external-helpers-7.0.0" = {
@@ -319,13 +319,13 @@ let
         sha512 = "+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==";
       };
     };
-    "@babel/plugin-proposal-class-properties-7.3.0" = {
+    "@babel/plugin-proposal-class-properties-7.3.3" = {
       name = "_at_babel_slash_plugin-proposal-class-properties";
       packageName = "@babel/plugin-proposal-class-properties";
-      version = "7.3.0";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.3.0.tgz";
-        sha512 = "wNHxLkEKTQ2ay0tnsam2z7fGZUi+05ziDJflEt3AZTP3oXLKHJp9HqhfroB/vdMvt3sda9fAbq7FsG8QPDrZBg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.3.3.tgz";
+        sha512 = "XO9eeU1/UwGPM8L+TjnQCykuVcXqaO5J1bkRPIygqZ/A2L1xVMJ9aZXrY31c0U4H2/LHKL4lbFQLsxktSrc/Ng==";
       };
     };
     "@babel/plugin-proposal-json-strings-7.2.0" = {
@@ -454,13 +454,13 @@ let
         sha512 = "vDTgf19ZEV6mx35yiPJe4fS02mPQUUcBNwWQSZFXSzTSbsJFQvHt7DqyS3LK8oOWALFOsJ+8bbqBgkirZteD5Q==";
       };
     };
-    "@babel/plugin-transform-classes-7.2.2" = {
+    "@babel/plugin-transform-classes-7.3.3" = {
       name = "_at_babel_slash_plugin-transform-classes";
       packageName = "@babel/plugin-transform-classes";
-      version = "7.2.2";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.2.2.tgz";
-        sha512 = "gEZvgTy1VtcDOaQty1l10T3jQmJKlNVxLDCs+3rCVPr6nMkODLELxViq5X9l+rfxbie3XrfrMCYYY6eX3aOcOQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.3.3.tgz";
+        sha512 = "n0CLbsg7KOXsMF4tSTLCApNMoXk0wOPb0DYfsOO1e7SfIb9gOyfbpKI2MZ+AXfqvlfzq2qsflJ1nEns48Caf2w==";
       };
     };
     "@babel/plugin-transform-computed-properties-7.2.0" = {
@@ -607,13 +607,13 @@ let
         sha512 = "VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==";
       };
     };
-    "@babel/plugin-transform-parameters-7.2.0" = {
+    "@babel/plugin-transform-parameters-7.3.3" = {
       name = "_at_babel_slash_plugin-transform-parameters";
       packageName = "@babel/plugin-transform-parameters";
-      version = "7.2.0";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.2.0.tgz";
-        sha512 = "kB9+hhUidIgUoBQ0MsxMewhzr8i60nMa2KgeJKQWYrqQpqcBYtnpR+JgkadZVZoaEZ/eKu9mclFaVwhRpLNSzA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.3.3.tgz";
+        sha512 = "IrIP25VvXWu/VlBWTpsjGptpomtIkYrN/3aDp4UKm7xK6UxZY88kcJ1UwETbzHAlwN21MnNfwlar0u8y3KpiXw==";
       };
     };
     "@babel/plugin-transform-react-jsx-7.3.0" = {
@@ -769,13 +769,13 @@ let
         sha512 = "SAtyEjmA7KiEoL2eAOAUM6M9arQJGWxJKK0S9x0WyPOosHS420RXoxPhn57u/8orRnK8Kxm0nHQQNTX203cP1Q==";
       };
     };
-    "@babel/types-7.3.2" = {
+    "@babel/types-7.3.3" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.3.2";
+      version = "7.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.3.2.tgz";
-        sha512 = "3Y6H8xlUlpbGR+XvawiH0UXehqydTmNmEpozWcXymqwcrwYAl5KMvKtQ+TF6f6E08V6Jur7v/ykdDSF+WDEIXQ==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.3.3.tgz";
+        sha512 = "2tACZ80Wg09UnPg5uGAOUvvInaqLk3l/IAhQzlxLQOIXacr6bMsra5SH6AWw/hIDRCSbCdHP2KzSOD+cT7TzMQ==";
       };
     };
     "@calebboyd/semaphore-1.3.1" = {
@@ -886,49 +886,49 @@ let
         sha1 = "890ae7c5d8c877f6d384860215ace9d7ec945bda";
       };
     };
-    "@iarna/toml-2.2.1" = {
+    "@iarna/toml-2.2.2" = {
       name = "_at_iarna_slash_toml";
       packageName = "@iarna/toml";
-      version = "2.2.1";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.1.tgz";
-        sha512 = "I2EjI9TbEFJNLziNPFfpo64PNanOaK17iL2kTW/jGlGOa4bvHw4VEied83kOEB7NJjXf1KfvmsQ2aEjy3xjiGg==";
+        url = "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.2.tgz";
+        sha512 = "xm/Wpip5LRK1y1ZlzQLC/pDHlk0e1lNpQgOqWamfZSAU9pbTBHJFLM8wS4EB7LOc3EySARf9lZoGVX7cO26tJQ==";
       };
     };
-    "@ionic/cli-framework-1.6.0" = {
+    "@ionic/cli-framework-1.6.1" = {
       name = "_at_ionic_slash_cli-framework";
       packageName = "@ionic/cli-framework";
-      version = "1.6.0";
+      version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/cli-framework/-/cli-framework-1.6.0.tgz";
-        sha512 = "9R57tpsCFq62l5kt7ZAgimRK1Hk2XDhlqNM4/0ugpgX8EIMFW05dUlCwtKmg3Sya48LpHEhoO63Z+KH+cGpSpw==";
+        url = "https://registry.npmjs.org/@ionic/cli-framework/-/cli-framework-1.6.1.tgz";
+        sha512 = "lj2QyM4PtV8t00LkspQPAOtTUHBahWTfrA1V5DpJUWvndiExxUOeEsEMJpUCwZgFtNjTtXQALTzPNpAwdHaksw==";
       };
     };
-    "@ionic/discover-1.0.11" = {
+    "@ionic/discover-1.0.12" = {
       name = "_at_ionic_slash_discover";
       packageName = "@ionic/discover";
-      version = "1.0.11";
+      version = "1.0.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/discover/-/discover-1.0.11.tgz";
-        sha512 = "E2CYZsR2noHtUjYceUNP6w1DMYnjPqITyC8Ewiz1iaNWgEntr7xvt1/XbkMlnswn9QKNSItNL6iWY0Q91N+k2A==";
+        url = "https://registry.npmjs.org/@ionic/discover/-/discover-1.0.12.tgz";
+        sha512 = "HDMleKI387g0t+w8uC6aFL45YCN/CK3sGwvw8gxXa/IvFDU2J/BK+3c1hOlGWsZ06xnMwd8dBejcCGbabpqlxw==";
       };
     };
-    "@ionic/utils-fs-1.0.0" = {
+    "@ionic/utils-fs-1.1.0" = {
       name = "_at_ionic_slash_utils-fs";
       packageName = "@ionic/utils-fs";
-      version = "1.0.0";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-1.0.0.tgz";
-        sha512 = "cOCO1dcugDL38Hu1HAofvC/bsIE/mCp3Uz4bTjtrhJF7T0T0OC6hHOOlacUz2HTvxfn3ZJqa3uhcy6/GYTJZsQ==";
+        url = "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-1.1.0.tgz";
+        sha512 = "r8odH1OLEYVioGZlwF3xUm7ZkyBaG9/VZoT9tXlXeytdAWad2se+vVotn4Fnyz5vwGU7CUgymdkBvDjyAVAtyw==";
       };
     };
-    "@ionic/utils-network-0.0.6" = {
+    "@ionic/utils-network-0.0.7" = {
       name = "_at_ionic_slash_utils-network";
       packageName = "@ionic/utils-network";
-      version = "0.0.6";
+      version = "0.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ionic/utils-network/-/utils-network-0.0.6.tgz";
-        sha512 = "1aHXzL1PPJDdXLwicu5+Zv0QfWIrKxqGvat4A8zruAjm4oLvIOli5DnUb61VqP2ocAhiI3t39jxtBq9Fb/Gl9w==";
+        url = "https://registry.npmjs.org/@ionic/utils-network/-/utils-network-0.0.7.tgz";
+        sha512 = "JR9VPZcUGhDJdASRgM2Xu7UHmEEFX31nFJwu7afKYkJXV4o/34dQyZkVGd5XJG68Gm5jwOiRbOVluooXKF33gg==";
       };
     };
     "@kbrandwijk/swagger-to-graphql-2.4.3" = {
@@ -940,481 +940,481 @@ let
         sha512 = "CNVsCrMge/jq6DCT5buNZ8PACY9RTvPJbCNoIcndfkJOCsNxOx9dnc5qw4pHZdHi8GS6l3qlgkuFKp33iD8J2Q==";
       };
     };
-    "@lerna/add-3.11.0" = {
+    "@lerna/add-3.13.0" = {
       name = "_at_lerna_slash_add";
       packageName = "@lerna/add";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/add/-/add-3.11.0.tgz";
-        sha512 = "A2u889e+GeZzL28jCpcN53iHq2cPWVnuy5tv5nvG/MIg0PxoAQOUvphexKsIbqzVd9Damdmv5W0u9kS8y8TTow==";
+        url = "https://registry.npmjs.org/@lerna/add/-/add-3.13.0.tgz";
+        sha512 = "5srUGfZHjqa5BW3JODHpzbH1ayweGqqrxH8qOzf/E/giNfzigdfyCSkbGh/iiLTXGu7BBE+3/OFfycoqYbalgg==";
       };
     };
-    "@lerna/batch-packages-3.11.0" = {
+    "@lerna/batch-packages-3.13.0" = {
       name = "_at_lerna_slash_batch-packages";
       packageName = "@lerna/batch-packages";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/batch-packages/-/batch-packages-3.11.0.tgz";
-        sha512 = "ETO3prVqDZs/cpZo00ij61JEZ8/ADJx1OG/d/KtTdHlyRfQsb09Xzf0w+boimqa8fIqhpM3o5FV9GKd6GQ3iFQ==";
+        url = "https://registry.npmjs.org/@lerna/batch-packages/-/batch-packages-3.13.0.tgz";
+        sha512 = "TgLBTZ7ZlqilGnzJ3xh1KdAHcySfHytgNRTdG9YomfriTU6kVfp1HrXxKJYVGs7ClPUNt2CTFEOkw0tMBronjw==";
       };
     };
-    "@lerna/bootstrap-3.11.0" = {
+    "@lerna/bootstrap-3.13.0" = {
       name = "_at_lerna_slash_bootstrap";
       packageName = "@lerna/bootstrap";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-3.11.0.tgz";
-        sha512 = "MqwviGJTy86joqSX2A3fmu2wXLBXc23tHJp5Xu4bVhynPegDnRrA3d9UI80UM3JcuYIQsxT4t2q2LNsZ4VdZKQ==";
+        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-3.13.0.tgz";
+        sha512 = "wdwBzvwEdzGERwpiY6Zu/T+tntCfXeXrL9cQIxP+K2M07jL5M00ZRdDoFcP90sGn568AjhvRhD2ExA5wPECSgA==";
       };
     };
-    "@lerna/changed-3.11.1" = {
+    "@lerna/changed-3.13.0" = {
       name = "_at_lerna_slash_changed";
       packageName = "@lerna/changed";
-      version = "3.11.1";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/changed/-/changed-3.11.1.tgz";
-        sha512 = "A21h3DvMjDwhksmCmTQ1+3KPHg7gHVHFs3zC5lR9W+whYlm0JI2Yp70vYnqMv2hPAcJx+2tlCrqJkzCFkNQdqg==";
+        url = "https://registry.npmjs.org/@lerna/changed/-/changed-3.13.0.tgz";
+        sha512 = "BNUVfEzhrY+XEQJI0fFxEAN7JrguXMGNX5rqQ2KWyGQB4fZ1mv4FStJRjK0K/gcCvdHnuR65uexc/acxBnBi9w==";
       };
     };
-    "@lerna/check-working-tree-3.11.0" = {
+    "@lerna/check-working-tree-3.13.0" = {
       name = "_at_lerna_slash_check-working-tree";
       packageName = "@lerna/check-working-tree";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-3.11.0.tgz";
-        sha512 = "uWKKmX4BKdK57MyX3rGNHNz4JmFP3tHnaIDDVeuSlgK5KwncPFyRXi3E9H0eiq6DUvDDLtztNOfWeGP2IY656Q==";
+        url = "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-3.13.0.tgz";
+        sha512 = "dsdO15NXX5To+Q53SYeCrBEpiqv4m5VkaPZxbGQZNwoRen1MloXuqxSymJANQn+ZLEqarv5V56gydebeROPH5A==";
       };
     };
-    "@lerna/child-process-3.3.0" = {
+    "@lerna/child-process-3.13.0" = {
       name = "_at_lerna_slash_child-process";
       packageName = "@lerna/child-process";
-      version = "3.3.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/child-process/-/child-process-3.3.0.tgz";
-        sha512 = "q2d/OPlNX/cBXB6Iz1932RFzOmOHq6ZzPjqebkINNaTojHWuuRpvJJY4Uz3NGpJ3kEtPDvBemkZqUBTSO5wb1g==";
+        url = "https://registry.npmjs.org/@lerna/child-process/-/child-process-3.13.0.tgz";
+        sha512 = "0iDS8y2jiEucD4fJHEzKoc8aQJgm7s+hG+0RmDNtfT0MM3n17pZnf5JOMtS1FJp+SEXOjMKQndyyaDIPFsnp6A==";
       };
     };
-    "@lerna/clean-3.11.0" = {
+    "@lerna/clean-3.13.0" = {
       name = "_at_lerna_slash_clean";
       packageName = "@lerna/clean";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/clean/-/clean-3.11.0.tgz";
-        sha512 = "sHyMYv56MIVMH79+5vcxHVdgmd8BcsihI+RL2byW+PeoNlyDeGMjTRmnzLmbSD7dkinHGoa5cghlXy9GGIqpRw==";
+        url = "https://registry.npmjs.org/@lerna/clean/-/clean-3.13.0.tgz";
+        sha512 = "eFkqVsOmybUIjak2NyGfk78Mo8rNyNiSDFh2+HGpias3PBdEbkGYtFi/JMBi9FvqCsBSiVnHCTUcnZdLzMz69w==";
       };
     };
-    "@lerna/cli-3.11.0" = {
+    "@lerna/cli-3.13.0" = {
       name = "_at_lerna_slash_cli";
       packageName = "@lerna/cli";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/cli/-/cli-3.11.0.tgz";
-        sha512 = "dn2m2PgUxcb2NyTvwfYOFZf8yN5CMf1uKxht3ajQYdDjRgFi5pUQt/DmdguOZ3CMJkENa0i3yPOmrxGPXLD2aw==";
+        url = "https://registry.npmjs.org/@lerna/cli/-/cli-3.13.0.tgz";
+        sha512 = "HgFGlyCZbYaYrjOr3w/EsY18PdvtsTmDfpUQe8HwDjXlPeCCUgliZjXLOVBxSjiOvPeOSwvopwIHKWQmYbwywg==";
       };
     };
-    "@lerna/collect-updates-3.11.0" = {
+    "@lerna/collect-updates-3.13.0" = {
       name = "_at_lerna_slash_collect-updates";
       packageName = "@lerna/collect-updates";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-3.11.0.tgz";
-        sha512 = "O0Y18OC2P6j9/RFq+u5Kdq7YxsDd+up3ZRoW6+i0XHWktqxXA9P4JBQppkpYtJVK2yH8QyOzuVLQgtL0xtHdYA==";
+        url = "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-3.13.0.tgz";
+        sha512 = "uR3u6uTzrS1p46tHQ/mlHog/nRJGBqskTHYYJbgirujxm6FqNh7Do+I1Q/7zSee407G4lzsNxZdm8IL927HemQ==";
       };
     };
-    "@lerna/command-3.11.0" = {
+    "@lerna/command-3.13.0" = {
       name = "_at_lerna_slash_command";
       packageName = "@lerna/command";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/command/-/command-3.11.0.tgz";
-        sha512 = "N+Z5kauVHSb2VhSIfQexG2VlCAAQ9xYKwVTxYh0JFOFUnZ/QPcoqx4VjynDXASFXXDgcXs4FLaGsJxq83Mf5Zg==";
+        url = "https://registry.npmjs.org/@lerna/command/-/command-3.13.0.tgz";
+        sha512 = "34Igk99KKeDt1ilzHooVUamMegArFz8AH9BuJivIKBps1E2A5xkwRd0mJFdPENzLxOqBJlt+cnL7LyvaIM6tRQ==";
       };
     };
-    "@lerna/conventional-commits-3.11.0" = {
+    "@lerna/conventional-commits-3.13.0" = {
       name = "_at_lerna_slash_conventional-commits";
       packageName = "@lerna/conventional-commits";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-3.11.0.tgz";
-        sha512 = "ix1Ki5NiZdk2eMlCWNgLchWPKQTgkJdLeNjneep6OCF3ydSINizReGbFvCftRivun641cOHWswgWMsIxbqhMQw==";
+        url = "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-3.13.0.tgz";
+        sha512 = "BeAgcNXuocmLhPxnmKU2Vy8YkPd/Uo+vu2i/p3JGsUldzrPC8iF3IDxH7fuXpEFN2Nfogu7KHachd4tchtOppA==";
       };
     };
-    "@lerna/create-3.11.0" = {
+    "@lerna/create-3.13.0" = {
       name = "_at_lerna_slash_create";
       packageName = "@lerna/create";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/create/-/create-3.11.0.tgz";
-        sha512 = "1izS82QML+H/itwEu1GPrcoXyugFaP9z9r6KuIQRQq8RtmNCGEmK85aiOw6mukyRcRziq2akALgFDyrundznPQ==";
+        url = "https://registry.npmjs.org/@lerna/create/-/create-3.13.0.tgz";
+        sha512 = "0Vrl6Z1NEQFKd1uzWBFWii59OmMNKSNXxgKYoh3Ulu/ekMh90BgnLJ0a8tE34KK4lG5mVTQDlowKFEF+jZfYOA==";
       };
     };
-    "@lerna/create-symlink-3.11.0" = {
+    "@lerna/create-symlink-3.13.0" = {
       name = "_at_lerna_slash_create-symlink";
       packageName = "@lerna/create-symlink";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-3.11.0.tgz";
-        sha512 = "UDR32uos8FIEc1keMKxXj5goZAHpCbpUd4u/btHXymUL9WqIym3cgz2iMr3ZNdZtjdMyUoHup5Dp0zjSgKCaEA==";
+        url = "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-3.13.0.tgz";
+        sha512 = "PTvg3jAAJSAtLFoZDsuTMv1wTOC3XYIdtg54k7uxIHsP8Ztpt+vlilY/Cni0THAqEMHvfiToel76Xdta4TU21Q==";
       };
     };
-    "@lerna/describe-ref-3.11.0" = {
+    "@lerna/describe-ref-3.13.0" = {
       name = "_at_lerna_slash_describe-ref";
       packageName = "@lerna/describe-ref";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-3.11.0.tgz";
-        sha512 = "lX/NVMqeODg4q/igN06L/KjtVUpW1oawh6IgOINy2oqm4RUR+1yDpsdVu3JyZZ4nHB572mJfbW56dl8qoxEVvQ==";
+        url = "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-3.13.0.tgz";
+        sha512 = "UJefF5mLxLae9I2Sbz5RLYGbqbikRuMqdgTam0MS5OhXnyuuKYBUpwBshCURNb1dPBXTQhSwc7+oUhORx8ojCg==";
       };
     };
-    "@lerna/diff-3.11.0" = {
+    "@lerna/diff-3.13.0" = {
       name = "_at_lerna_slash_diff";
       packageName = "@lerna/diff";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/diff/-/diff-3.11.0.tgz";
-        sha512 = "r3WASQix31ApA0tlkZejXhS8Z3SEg6Jw9YnKDt9V6wLjEUXGLauUDMrgx1YWu3cs9KB8/hqheRyRI7XAXGJS1w==";
+        url = "https://registry.npmjs.org/@lerna/diff/-/diff-3.13.0.tgz";
+        sha512 = "fyHRzRBiqXj03YbGY5/ume1N0v0wrWVB7XPHPaQs/e/eCgMpcmoQGQoW5r97R+xaEoy3boByr/ham4XHZv02ZQ==";
       };
     };
-    "@lerna/exec-3.11.0" = {
+    "@lerna/exec-3.13.0" = {
       name = "_at_lerna_slash_exec";
       packageName = "@lerna/exec";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/exec/-/exec-3.11.0.tgz";
-        sha512 = "oIkI+Hj74kpsnHhw0qJj12H4XMPSlDbBsshLWY+f3BiwKhn6wkXoQZ1FC8/OVNHM67GtSRv4bkcOaM4ucHm9Hw==";
+        url = "https://registry.npmjs.org/@lerna/exec/-/exec-3.13.0.tgz";
+        sha512 = "Dc8jr1jL6YrfbI1sUZ3+px00HwcZLKykl7AC8A+vvCzYLa4MeK3UJ7CPg4kvBN1mX7yhGrSDSfxG0bJriHU5nA==";
       };
     };
-    "@lerna/filter-options-3.11.0" = {
+    "@lerna/filter-options-3.13.0" = {
       name = "_at_lerna_slash_filter-options";
       packageName = "@lerna/filter-options";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-3.11.0.tgz";
-        sha512 = "z0krgC/YBqz7i6MGHBsPLvsQ++XEpPdGnIkSpcN0Cjp5J67K9vb5gJ2hWp1c1bitNh3xiwZ69voGqN+DYk1mUg==";
+        url = "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-3.13.0.tgz";
+        sha512 = "SRp7DCo9zrf+7NkQxZMkeyO1GRN6GICoB9UcBAbXhLbWisT37Cx5/6+jh49gYB63d/0/WYHSEPMlheUrpv1Srw==";
       };
     };
-    "@lerna/filter-packages-3.11.0" = {
+    "@lerna/filter-packages-3.13.0" = {
       name = "_at_lerna_slash_filter-packages";
       packageName = "@lerna/filter-packages";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-3.11.0.tgz";
-        sha512 = "bnukkW1M0uMKWqM/m/IHou2PKRyk4fDAksAj3diHc1UVQkH2j8hXOfLl9+CgHA/cnTrf6/LARg8hKujqduqHyA==";
+        url = "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-3.13.0.tgz";
+        sha512 = "RWiZWyGy3Mp7GRVBn//CacSnE3Kw82PxE4+H6bQ3pDUw/9atXn7NRX+gkBVQIYeKamh7HyumJtyOKq3Pp9BADQ==";
       };
     };
-    "@lerna/get-npm-exec-opts-3.11.0" = {
+    "@lerna/get-npm-exec-opts-3.13.0" = {
       name = "_at_lerna_slash_get-npm-exec-opts";
       packageName = "@lerna/get-npm-exec-opts";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.11.0.tgz";
-        sha512 = "EDxsbuq2AbB3LWwH/4SOcn4gWOnoIYrSHfITWo7xz/SbEKeHtiva99l424ZRWUJqLPGIpQiMTlmOET2ZEI8WZg==";
+        url = "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz";
+        sha512 = "Y0xWL0rg3boVyJk6An/vurKzubyJKtrxYv2sj4bB8Mc5zZ3tqtv0ccbOkmkXKqbzvNNF7VeUt1OJ3DRgtC/QZw==";
       };
     };
-    "@lerna/get-packed-3.7.0" = {
+    "@lerna/get-packed-3.13.0" = {
       name = "_at_lerna_slash_get-packed";
       packageName = "@lerna/get-packed";
-      version = "3.7.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-3.7.0.tgz";
-        sha512 = "yuFtjsUZIHjeIvIYQ/QuytC+FQcHwo3peB+yGBST2uWCLUCR5rx6knoQcPzbxdFDCuUb5IFccFGd3B1fHFg3RQ==";
+        url = "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-3.13.0.tgz";
+        sha512 = "EgSim24sjIjqQDC57bgXD9l22/HCS93uQBbGpkzEOzxAVzEgpZVm7Fm1t8BVlRcT2P2zwGnRadIvxTbpQuDPTg==";
       };
     };
-    "@lerna/github-client-3.11.0" = {
+    "@lerna/github-client-3.13.0" = {
       name = "_at_lerna_slash_github-client";
       packageName = "@lerna/github-client";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/github-client/-/github-client-3.11.0.tgz";
-        sha512 = "yPMBhzShuth3uJo0kKu84RvgjSZgOYNT8fKfhZmzTeVGuPbYBKlK+UQ6jjpb6E9WW2BVdiUCrFhqIsbK5Lqe7A==";
+        url = "https://registry.npmjs.org/@lerna/github-client/-/github-client-3.13.0.tgz";
+        sha512 = "4/003z1g7shg21nl06ku5/yqYbQfNsQkeWuWEd+mjiTtGH6OhzJ8XcmBOq6mhZrfDAlA4OLeXypd1QIK1Y7arA==";
       };
     };
-    "@lerna/global-options-3.10.6" = {
+    "@lerna/global-options-3.13.0" = {
       name = "_at_lerna_slash_global-options";
       packageName = "@lerna/global-options";
-      version = "3.10.6";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/global-options/-/global-options-3.10.6.tgz";
-        sha512 = "k5Xkq1M/uREFC2R9uwN5gcvIgjj4iOXo0YyeEXCMWBiW3j2GL9xN4d1MmAIcrYlAzVYh6kLlWaFWl/rNIneHIw==";
+        url = "https://registry.npmjs.org/@lerna/global-options/-/global-options-3.13.0.tgz";
+        sha512 = "SlZvh1gVRRzYLVluz9fryY1nJpZ0FHDGB66U9tFfvnnxmueckRQxLopn3tXj3NU1kc3QANT2I5BsQkOqZ4TEFQ==";
       };
     };
-    "@lerna/has-npm-version-3.10.0" = {
+    "@lerna/has-npm-version-3.13.0" = {
       name = "_at_lerna_slash_has-npm-version";
       packageName = "@lerna/has-npm-version";
-      version = "3.10.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-3.10.0.tgz";
-        sha512 = "N4RRYxGeivuaKgPDzrhkQOQs1Sg4tOnxnEe3akfqu1wDA4Ng5V6Y2uW3DbkAjFL3aNJhWF5Vbf7sBsGtfgDQ8w==";
+        url = "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-3.13.0.tgz";
+        sha512 = "Oqu7DGLnrMENPm+bPFGOHnqxK8lCnuYr6bk3g/CoNn8/U0qgFvHcq6Iv8/Z04TsvleX+3/RgauSD2kMfRmbypg==";
       };
     };
-    "@lerna/import-3.11.0" = {
+    "@lerna/import-3.13.0" = {
       name = "_at_lerna_slash_import";
       packageName = "@lerna/import";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/import/-/import-3.11.0.tgz";
-        sha512 = "WgF0We+4k/MrC1vetT8pt3/SSJPMvXhyPYmL2W9rcvch3zV0IgLyso4tEs8gNbwZorDVEG1KcM+x8TG4v1nV5Q==";
+        url = "https://registry.npmjs.org/@lerna/import/-/import-3.13.0.tgz";
+        sha512 = "uQ+hoYEC6/B8VqQ9tecA1PVCFiqwN+DCrdIBY/KX3Z5vip94Pc8H/u+Q2dfBymkT6iXnvmPR/6hsMkpMOjBQDg==";
       };
     };
-    "@lerna/init-3.11.0" = {
+    "@lerna/init-3.13.0" = {
       name = "_at_lerna_slash_init";
       packageName = "@lerna/init";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/init/-/init-3.11.0.tgz";
-        sha512 = "JZC5jpCVJgK34grye52kGWjrYCyh4LB8c0WBLaS8MOUt6rxTtPqubwvCDKPOF2H0Se6awsgEfX4wWNuqiQVpRQ==";
+        url = "https://registry.npmjs.org/@lerna/init/-/init-3.13.0.tgz";
+        sha512 = "4MBaNaitr9rfzwHK4d0Y19WIzqL5RTk719tIlVtw+IRE2qF9/ioovNIZuoeISyi84mTKehsFtPsHoxFIulZUhQ==";
       };
     };
-    "@lerna/link-3.11.0" = {
+    "@lerna/link-3.13.0" = {
       name = "_at_lerna_slash_link";
       packageName = "@lerna/link";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/link/-/link-3.11.0.tgz";
-        sha512 = "QN+kxRWb6P9jrKpE2t6K9sGnFpqy1KOEjf68NpGhmp+J9Yt6Kvz9kG43CWoqg4Zyqqgqgn3NVV2Z7zSDNhdH0g==";
+        url = "https://registry.npmjs.org/@lerna/link/-/link-3.13.0.tgz";
+        sha512 = "0PAZM1kVCmtJfiQUzy6TT1aemIg9pxejGxFBYMB+IAxR5rcgLlZago1R52/8HyNGa07bLv0B6CkRgrdQ/9bzCg==";
       };
     };
-    "@lerna/list-3.11.0" = {
+    "@lerna/list-3.13.0" = {
       name = "_at_lerna_slash_list";
       packageName = "@lerna/list";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/list/-/list-3.11.0.tgz";
-        sha512 = "hBAwZzEzF1LQOOB2/5vQkal/nSriuJbLY39BitIGkUxifsmu7JK0k3LYrwe1sxXv5SMf2HDaTLr+Z23mUslhaQ==";
+        url = "https://registry.npmjs.org/@lerna/list/-/list-3.13.0.tgz";
+        sha512 = "nKSqGs4ZJe7zB6SJmBEb7AfGLzqDOwJwbucC3XVgkjrXlrX4AW4+qnPiGpEdz8OFmzstkghQrWUUJvsEpNVTjw==";
       };
     };
-    "@lerna/listable-3.11.0" = {
+    "@lerna/listable-3.13.0" = {
       name = "_at_lerna_slash_listable";
       packageName = "@lerna/listable";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/listable/-/listable-3.11.0.tgz";
-        sha512 = "nCrtGSS3YiAlh5dU5mmTAU9aLRlmIUn2FnahqsksN2uQ5O4o+614tneDuO298/eWLZo00eGw69EFngaQEl8quw==";
+        url = "https://registry.npmjs.org/@lerna/listable/-/listable-3.13.0.tgz";
+        sha512 = "liYJ/WBUYP4N4MnSVZuLUgfa/jy3BZ02/1Om7xUY09xGVSuNVNEeB8uZUMSC+nHqFHIsMPZ8QK9HnmZb1E/eTA==";
       };
     };
-    "@lerna/log-packed-3.11.0" = {
+    "@lerna/log-packed-3.13.0" = {
       name = "_at_lerna_slash_log-packed";
       packageName = "@lerna/log-packed";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-3.11.0.tgz";
-        sha512 = "TH//81TzSTMuNzJIQE7zqu+ymI5rH25jdEdmbYEWmaJ+T42GMQXKxP8cj2m+fWRaDML8ta0uzBOm5PKHdgoFYQ==";
+        url = "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-3.13.0.tgz";
+        sha512 = "Rmjrcz+6aM6AEcEVWmurbo8+AnHOvYtDpoeMMJh9IZ9SmZr2ClXzmD7wSvjTQc8BwOaiWjjC/ukcT0UYA2m7wg==";
       };
     };
-    "@lerna/npm-conf-3.7.0" = {
+    "@lerna/npm-conf-3.13.0" = {
       name = "_at_lerna_slash_npm-conf";
       packageName = "@lerna/npm-conf";
-      version = "3.7.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-3.7.0.tgz";
-        sha512 = "+WSMDfPKcKzMfqq283ydz9RRpOU6p9wfx0wy4hVSUY/6YUpsyuk8SShjcRtY8zTM5AOrxvFBuuV90H4YpZ5+Ng==";
+        url = "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-3.13.0.tgz";
+        sha512 = "Jg2kANsGnhg+fbPEzE0X9nX5oviEAvWj0nYyOkcE+cgWuT7W0zpnPXC4hA4C5IPQGhwhhh0IxhWNNHtjTuw53g==";
       };
     };
-    "@lerna/npm-dist-tag-3.11.0" = {
+    "@lerna/npm-dist-tag-3.13.0" = {
       name = "_at_lerna_slash_npm-dist-tag";
       packageName = "@lerna/npm-dist-tag";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-3.11.0.tgz";
-        sha512 = "WqZcyDb+wiqAKRFcYEK6R8AQfspyro85zGGHyjYw6ZPNgJX3qhwtQ+MidDmOesi2p5/0GfeVSWega+W7fPzVpg==";
+        url = "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-3.13.0.tgz";
+        sha512 = "mcuhw34JhSRFrbPn0vedbvgBTvveG52bR2lVE3M3tfE8gmR/cKS/EJFO4AUhfRKGCTFn9rjaSEzlFGYV87pemQ==";
       };
     };
-    "@lerna/npm-install-3.11.0" = {
+    "@lerna/npm-install-3.13.0" = {
       name = "_at_lerna_slash_npm-install";
       packageName = "@lerna/npm-install";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-3.11.0.tgz";
-        sha512 = "iNKEgFvFHMmBqn9AnFye2rv7CdUBlYciwWSTNtpfVqtOnoL/lg+4A774oL4PDoxTCGmougztyxMkqLVSBYXTpw==";
+        url = "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-3.13.0.tgz";
+        sha512 = "qNyfts//isYQxore6fsPorNYJmPVKZ6tOThSH97tP0aV91zGMtrYRqlAoUnDwDdAjHPYEM16hNujg2wRmsqqIw==";
       };
     };
-    "@lerna/npm-publish-3.11.0" = {
+    "@lerna/npm-publish-3.13.0" = {
       name = "_at_lerna_slash_npm-publish";
       packageName = "@lerna/npm-publish";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.11.0.tgz";
-        sha512 = "wgbb55gUXRlP8uTe60oW6c06ZhquaJu9xbi2vWNpb5Fmjh/KbZ2iNm9Kj2ciZlvb8D+k4Oc3qV7slBGxyMm8wg==";
+        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.13.0.tgz";
+        sha512 = "y4WO0XTaf9gNRkI7as6P2ItVDOxmYHwYto357fjybcnfXgMqEA94c3GJ++jU41j0A9vnmYC6/XxpTd9sVmH9tA==";
       };
     };
-    "@lerna/npm-run-script-3.11.0" = {
+    "@lerna/npm-run-script-3.13.0" = {
       name = "_at_lerna_slash_npm-run-script";
       packageName = "@lerna/npm-run-script";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-3.11.0.tgz";
-        sha512 = "cLnTMrRQlK/N5bCr6joOFMBfRyW2EbMdk3imtjHk0LwZxsvQx3naAPUB/2RgNfC8fGf/yHF/0bmBrpb5sa2IlA==";
+        url = "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-3.13.0.tgz";
+        sha512 = "hiL3/VeVp+NFatBjkGN8mUdX24EfZx9rQlSie0CMgtjc7iZrtd0jCguLomSCRHYjJuvqgbp+LLYo7nHVykfkaQ==";
       };
     };
-    "@lerna/output-3.11.0" = {
+    "@lerna/output-3.13.0" = {
       name = "_at_lerna_slash_output";
       packageName = "@lerna/output";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/output/-/output-3.11.0.tgz";
-        sha512 = "xHYGcEaZZ4cR0Jw368QgUgFvV27a6ZO5360BMNGNsjCjuY0aOPQC5+lBhgfydJtJteKjDna853PSjBK3uMhEjw==";
+        url = "https://registry.npmjs.org/@lerna/output/-/output-3.13.0.tgz";
+        sha512 = "7ZnQ9nvUDu/WD+bNsypmPG5MwZBwu86iRoiW6C1WBuXXDxM5cnIAC1m2WxHeFnjyMrYlRXM9PzOQ9VDD+C15Rg==";
       };
     };
-    "@lerna/pack-directory-3.11.0" = {
+    "@lerna/pack-directory-3.13.0" = {
       name = "_at_lerna_slash_pack-directory";
       packageName = "@lerna/pack-directory";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-3.11.0.tgz";
-        sha512 = "bgA3TxZx5AyZeqUadSPspktdecW7nIpg/ODq0o0gKFr7j+DC9Fqu8vQa2xmFSKsXDtOYkCV0jox6Ox9XSFSM3A==";
+        url = "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-3.13.0.tgz";
+        sha512 = "p5lhLPvpRptms08uSTlDpz8R2/s8Z2Vi0Hc8+yIAP74YD8gh/U9Diku9EGkkgkLfV+P0WhnEO8/Gq/qzNVbntA==";
       };
     };
-    "@lerna/package-3.11.0" = {
+    "@lerna/package-3.13.0" = {
       name = "_at_lerna_slash_package";
       packageName = "@lerna/package";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/package/-/package-3.11.0.tgz";
-        sha512 = "hMzBhFEubhg+Tis5C8skwIfgOk+GTl0qudvzfPU9gQqLV8u4/Hs6mka6N0rKgbUb4VFVc5MJVe1eZ6Rv+kJAWw==";
+        url = "https://registry.npmjs.org/@lerna/package/-/package-3.13.0.tgz";
+        sha512 = "kSKO0RJQy093BufCQnkhf1jB4kZnBvL7kK5Ewolhk5gwejN+Jofjd8DGRVUDUJfQ0CkW1o6GbUeZvs8w8VIZDg==";
       };
     };
-    "@lerna/package-graph-3.11.0" = {
+    "@lerna/package-graph-3.13.0" = {
       name = "_at_lerna_slash_package-graph";
       packageName = "@lerna/package-graph";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-3.11.0.tgz";
-        sha512 = "ICYiOZvCfcmeH1qfzOkFYh0t0QA56OddQfI3ydxCiWi5G+UupJXnCIWSTh3edTAtw/kyxhCOWny/PJsG4CQfjA==";
+        url = "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-3.13.0.tgz";
+        sha512 = "3mRF1zuqFE1HEFmMMAIggXy+f+9cvHhW/jzaPEVyrPNLKsyfJQtpTNzeI04nfRvbAh+Gd2aNksvaW/w3xGJnnw==";
       };
     };
-    "@lerna/project-3.11.0" = {
+    "@lerna/project-3.13.0" = {
       name = "_at_lerna_slash_project";
       packageName = "@lerna/project";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/project/-/project-3.11.0.tgz";
-        sha512 = "j3DGds+q/q2YNpoBImaEsMpkWgu5gP0IGKz1o1Ju39NZKrTPza+ARIzEByL4Jqu87tcoOj7RbZzhhrBP8JBbTg==";
+        url = "https://registry.npmjs.org/@lerna/project/-/project-3.13.0.tgz";
+        sha512 = "hxRvln8Dks3T4PBALC9H3Kw6kTne70XShfqSs4oJkMqFyDj4mb5VCUN6taCDXyF8fu75d02ETdTFZhhBgm1x6w==";
       };
     };
-    "@lerna/prompt-3.11.0" = {
+    "@lerna/prompt-3.13.0" = {
       name = "_at_lerna_slash_prompt";
       packageName = "@lerna/prompt";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/prompt/-/prompt-3.11.0.tgz";
-        sha512 = "SB/wvyDPQASze9txd+8/t24p6GiJuhhL30zxuRwvVwER5lIJR7kaXy1KhQ7kUAKPlNTVfCBm3GXReIMl4jhGhw==";
+        url = "https://registry.npmjs.org/@lerna/prompt/-/prompt-3.13.0.tgz";
+        sha512 = "P+lWSFokdyvYpkwC3it9cE0IF2U5yy2mOUbGvvE4iDb9K7TyXGE+7lwtx2thtPvBAfIb7O13POMkv7df03HJeA==";
       };
     };
-    "@lerna/publish-3.11.1" = {
+    "@lerna/publish-3.13.0" = {
       name = "_at_lerna_slash_publish";
       packageName = "@lerna/publish";
-      version = "3.11.1";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/publish/-/publish-3.11.1.tgz";
-        sha512 = "UOvmSivuqzWoiTqoYWk+liPDZvC6O7NrT8DwoG2peRvjIPs5RKYMubwXPOrBBVVE+yX/vR6V1Y3o6vf3av52dg==";
+        url = "https://registry.npmjs.org/@lerna/publish/-/publish-3.13.0.tgz";
+        sha512 = "WuO7LWWQ+8F+ig48RtUxWrVdOfpqDBOv6fXz0/2heQf/rJQoJDTzJZ0rk5ymaGCFz1Av2CbP0zoP7PAQQ2BeKg==";
       };
     };
-    "@lerna/pulse-till-done-3.11.0" = {
+    "@lerna/pulse-till-done-3.13.0" = {
       name = "_at_lerna_slash_pulse-till-done";
       packageName = "@lerna/pulse-till-done";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-3.11.0.tgz";
-        sha512 = "nMwBa6S4+VI/ketN92oj1xr8y74Fz4ul2R5jdbrRqLLEU/IMBWIqn6NRM2P+OQBoLpPZ2MdWENLJVFNN8X1Q+A==";
+        url = "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz";
+        sha512 = "1SOHpy7ZNTPulzIbargrgaJX387csN7cF1cLOGZiJQA6VqnS5eWs2CIrG8i8wmaUavj2QlQ5oEbRMVVXSsGrzA==";
       };
     };
-    "@lerna/resolve-symlink-3.11.0" = {
+    "@lerna/resolve-symlink-3.13.0" = {
       name = "_at_lerna_slash_resolve-symlink";
       packageName = "@lerna/resolve-symlink";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-3.11.0.tgz";
-        sha512 = "lDer8zPXS36iL4vJdZwOk6AnuUjDXswoTWdYkl+HdAKXp7cBlS+VeGmcFIJS4R3mSSZE20h1oEDuH8h8GGORIQ==";
+        url = "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-3.13.0.tgz";
+        sha512 = "Lc0USSFxwDxUs5JvIisS8JegjA6SHSAWJCMvi2osZx6wVRkEDlWG2B1JAfXUzCMNfHoZX0/XX9iYZ+4JIpjAtg==";
       };
     };
-    "@lerna/rimraf-dir-3.11.0" = {
+    "@lerna/rimraf-dir-3.13.0" = {
       name = "_at_lerna_slash_rimraf-dir";
       packageName = "@lerna/rimraf-dir";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-3.11.0.tgz";
-        sha512 = "roy4lKel7BMNLfFvyzK0HI251mgI9EwbpOccR2Waz0V22d0gaqLKzfVrzovat9dVHXrKNxAhJ5iKkKeT93IunQ==";
+        url = "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-3.13.0.tgz";
+        sha512 = "kte+pMemulre8cmPqljxIYjCmdLByz8DgHBHXB49kz2EiPf8JJ+hJFt0PzEubEyJZ2YE2EVAx5Tv5+NfGNUQyQ==";
       };
     };
-    "@lerna/run-3.11.0" = {
+    "@lerna/run-3.13.0" = {
       name = "_at_lerna_slash_run";
       packageName = "@lerna/run";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run/-/run-3.11.0.tgz";
-        sha512 = "8c2yzbKJFzgO6VTOftWmB0fOLTL7G1GFAG5UTVDSk95Z2Gnjof3I/Xkvtbzq8L+DIOLpr+Tpj3fRBjZd8rONlA==";
+        url = "https://registry.npmjs.org/@lerna/run/-/run-3.13.0.tgz";
+        sha512 = "KSpEStp5SVzNB7+3V5WnyY4So8aEyDhBYvhm7cJr5M7xesKf/IE5KFywcI+JPYzyqnIOGXghfzBf9nBZRHlEUQ==";
       };
     };
-    "@lerna/run-lifecycle-3.11.0" = {
+    "@lerna/run-lifecycle-3.13.0" = {
       name = "_at_lerna_slash_run-lifecycle";
       packageName = "@lerna/run-lifecycle";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-3.11.0.tgz";
-        sha512 = "3xeeVz9s3Dh2ljKqJI/Fl+gkZD9Y8JblAN62f4WNM76d/zFlgpCXDs62OpxNjEuXujA7YFix0sJ+oPKMm8mDrw==";
+        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-3.13.0.tgz";
+        sha512 = "oyiaL1biZdjpmjh6X/5C4w07wNFyiwXSSHH5GQB4Ay4BPwgq9oNhCcxRoi0UVZlZ1YwzSW8sTwLgj8emkIo3Yg==";
       };
     };
-    "@lerna/run-parallel-batches-3.0.0" = {
+    "@lerna/run-parallel-batches-3.13.0" = {
       name = "_at_lerna_slash_run-parallel-batches";
       packageName = "@lerna/run-parallel-batches";
-      version = "3.0.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run-parallel-batches/-/run-parallel-batches-3.0.0.tgz";
-        sha512 = "Mj1ravlXF7AkkewKd9YFq9BtVrsStNrvVLedD/b2wIVbNqcxp8lS68vehXVOzoL/VWNEDotvqCQtyDBilCodGw==";
+        url = "https://registry.npmjs.org/@lerna/run-parallel-batches/-/run-parallel-batches-3.13.0.tgz";
+        sha512 = "bICFBR+cYVF1FFW+Tlm0EhWDioTUTM6dOiVziDEGE1UZha1dFkMYqzqdSf4bQzfLS31UW/KBd/2z8jy2OIjEjg==";
       };
     };
-    "@lerna/symlink-binary-3.11.0" = {
+    "@lerna/symlink-binary-3.13.0" = {
       name = "_at_lerna_slash_symlink-binary";
       packageName = "@lerna/symlink-binary";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-3.11.0.tgz";
-        sha512 = "5sOED+1O8jI+ckDS6DRUKtAtbKo7lbxFIJs6sWWEu5qKzM5e21O6E2wTWimJkad8nJ1SJAuyc8DC8M8ki4kT4w==";
+        url = "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-3.13.0.tgz";
+        sha512 = "obc4Y6jxywkdaCe+DB0uTxYqP0IQ8mFWvN+k/YMbwH4G2h7M7lCBWgPy8e7xw/50+1II9tT2sxgx+jMus1sTJg==";
       };
     };
-    "@lerna/symlink-dependencies-3.11.0" = {
+    "@lerna/symlink-dependencies-3.13.0" = {
       name = "_at_lerna_slash_symlink-dependencies";
       packageName = "@lerna/symlink-dependencies";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-3.11.0.tgz";
-        sha512 = "XKNX8oOgcOmiKHUn7qT5GvvmKP3w5otZPOjRixUDUILWTc3P8nO5I1VNILNF6IE5ajNw6yiXOWikSxc6KuFqBQ==";
+        url = "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-3.13.0.tgz";
+        sha512 = "7CyN5WYEPkbPLbqHBIQg/YiimBzb5cIGQB0E9IkLs3+racq2vmUNQZn38LOaazQacAA83seB+zWSxlI6H+eXSg==";
       };
     };
-    "@lerna/timer-3.5.0" = {
+    "@lerna/timer-3.13.0" = {
       name = "_at_lerna_slash_timer";
       packageName = "@lerna/timer";
-      version = "3.5.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/timer/-/timer-3.5.0.tgz";
-        sha512 = "TAb99hqQN6E3JBGtG9iyZNPq1/DbmqgBOeNrKtdJsGvIeX/NGLgUDWMrj2h04V4O+jpBFmSf6HIld6triKmxCA==";
+        url = "https://registry.npmjs.org/@lerna/timer/-/timer-3.13.0.tgz";
+        sha512 = "RHWrDl8U4XNPqY5MQHkToWS9jHPnkLZEt5VD+uunCKTfzlxGnRCr3/zVr8VGy/uENMYpVP3wJa4RKGY6M0vkRw==";
       };
     };
-    "@lerna/validation-error-3.11.0" = {
+    "@lerna/validation-error-3.13.0" = {
       name = "_at_lerna_slash_validation-error";
       packageName = "@lerna/validation-error";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-3.11.0.tgz";
-        sha512 = "/mS4o6QYm4OXUqfPJnW1mKudGhvhLe9uiQ9eK2cgSxkCAVq9G2Sl/KVohpnqAgeRI3nXordGxHS745CdAhg7pA==";
+        url = "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-3.13.0.tgz";
+        sha512 = "SiJP75nwB8GhgwLKQfdkSnDufAaCbkZWJqEDlKOUPUvVOplRGnfL+BPQZH5nvq2BYSRXsksXWZ4UHVnQZI/HYA==";
       };
     };
-    "@lerna/version-3.11.1" = {
+    "@lerna/version-3.13.0" = {
       name = "_at_lerna_slash_version";
       packageName = "@lerna/version";
-      version = "3.11.1";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/version/-/version-3.11.1.tgz";
-        sha512 = "+lFq4D8BpchIslIz6jyUY6TZO1kuAgQ+G1LjaYwUBiP2SzXVWgPoPoq/9dnaSq38Hhhvlf7FF6i15d+q8gk1xQ==";
+        url = "https://registry.npmjs.org/@lerna/version/-/version-3.13.0.tgz";
+        sha512 = "YdLC208tExVpV77pdXpokGt9MAtTE7Kt93a2jcfjqiMoAI1VmXgGA+7drgBSTVtzfjXExPgi2//hJjI5ObckXA==";
       };
     };
-    "@lerna/write-log-file-3.11.0" = {
+    "@lerna/write-log-file-3.13.0" = {
       name = "_at_lerna_slash_write-log-file";
       packageName = "@lerna/write-log-file";
-      version = "3.11.0";
+      version = "3.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-3.11.0.tgz";
-        sha512 = "skpTDMDOkQAN4lCeAoI6/rPhbNE431eD0i6Ts3kExUOrYTr0m5CIwVtMZ31Flpky0Jfh4ET6rOl5SDNMLbf4VA==";
+        url = "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-3.13.0.tgz";
+        sha512 = "RibeMnDPvlL8bFYW5C8cs4mbI3AHfQef73tnJCQ/SgrXZHehmHnsyWUiE7qDQCAo+B1RfTapvSyFF69iPj326A==";
       };
     };
     "@mrmlnc/readdir-enhanced-2.2.1" = {
@@ -1435,13 +1435,13 @@ let
         sha512 = "shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==";
       };
     };
-    "@octokit/endpoint-3.1.2" = {
+    "@octokit/endpoint-3.1.3" = {
       name = "_at_octokit_slash_endpoint";
       packageName = "@octokit/endpoint";
-      version = "3.1.2";
+      version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-3.1.2.tgz";
-        sha512 = "iRx4kDYybAv9tOrHDBE6HwlgiFi8qmbZl8SHliZWtxbUFuXLZXh2yv8DxGIK9wzD9J0wLDMZneO8vNYJNUSJ9Q==";
+        url = "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-3.1.3.tgz";
+        sha512 = "vAWzeoj9Lzpl3V3YkWKhGzmDUoMfKpyxJhpq74/ohMvmLXDoEuAGnApy/7TRi3OmnjyX2Lr+e9UGGAD0919ohA==";
       };
     };
     "@octokit/plugin-enterprise-rest-2.1.1" = {
@@ -1462,13 +1462,13 @@ let
         sha512 = "5YRqYNZOAaL7+nt7w3Scp6Sz4P2g7wKFP9npx1xdExMomk8/M/ICXVLYVam2wzxeY0cIc6wcKpjC5KI4jiNbGw==";
       };
     };
-    "@octokit/rest-16.15.0" = {
+    "@octokit/rest-16.16.0" = {
       name = "_at_octokit_slash_rest";
       packageName = "@octokit/rest";
-      version = "16.15.0";
+      version = "16.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.15.0.tgz";
-        sha512 = "Un+e7rgh38RtPOTe453pT/KPM/p2KZICimBmuZCd2wEo8PacDa4h6RqTPZs+f2DPazTTqdM7QU4LKlUjgiBwWw==";
+        url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.16.0.tgz";
+        sha512 = "Q6L5OwQJrdJ188gLVmUHLKNXBoeCU0DynKPYW8iZQQoGNGws2hkP/CePVNlzzDgmjuv7o8dCrJgecvDcIHccTA==";
       };
     };
     "@parcel/fs-1.11.0" = {
@@ -1624,22 +1624,22 @@ let
         sha512 = "ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==";
       };
     };
-    "@snyk/dep-graph-1.1.2" = {
+    "@snyk/dep-graph-1.4.0" = {
       name = "_at_snyk_slash_dep-graph";
       packageName = "@snyk/dep-graph";
-      version = "1.1.2";
+      version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.1.2.tgz";
-        sha512 = "mCoAFKtmezBL61JOzLMzqqd/sXXxp0iektEwf4zw+sM3zuG4Tnmhf8OqNO6Wscn84bMIfLlI/nvECdxvSS7MTw==";
+        url = "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.4.0.tgz";
+        sha512 = "dz4Fo4L9sN0Rt8hMe+zMYZ4mAiljtyIeWvujLyCxhIT5iHSlceUYlba5TDsOFuKyuZKkuhVjORWY1oFEuRzCcA==";
       };
     };
-    "@snyk/gemfile-1.1.0" = {
+    "@snyk/gemfile-1.2.0" = {
       name = "_at_snyk_slash_gemfile";
       packageName = "@snyk/gemfile";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.1.0.tgz";
-        sha512 = "mLwF+ccuvRZMS0SxUAxA3dAp8mB3m2FxIsBIUWFTYvzxl+E4XTZb8uFrUqXHbcxhZH1Z8taHohNTbzXZn3M8ag==";
+        url = "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.2.0.tgz";
+        sha512 = "nI7ELxukf7pT4/VraL4iabtNNMz8mUo7EXlqCFld8O5z6mIMLX9llps24iPpaIZOwArkY3FWA+4t+ixyvtTSIA==";
       };
     };
     "@szmarczak/http-timer-1.1.2" = {
@@ -1867,13 +1867,13 @@ let
         sha512 = "nMRqS+mL1TOnIJrL6LKJcNZPB8V3eTfRo9FQA2b5gDvrHurC8XbSA86KNe0dShlEL7ReWJv/OU9NL7Z0dnqWTg==";
       };
     };
-    "@types/node-11.9.3" = {
+    "@types/node-11.9.4" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "11.9.3";
+      version = "11.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-11.9.3.tgz";
-        sha512 = "DMiqG51GwES/c4ScBY0u5bDlH44+oY8AeYHjY1SGCWidD7h08o1dfHue/TGK7REmif2KiJzaUskO+Q0eaeZ2fQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-11.9.4.tgz";
+        sha512 = "Zl8dGvAcEmadgs1tmSPcvwzO1YRsz38bVJQvH1RvRqSR9/5n61Q1ktcDL0ht3FXWR+ZpVmXVwN1LuH4Ax23NsA==";
       };
     };
     "@types/node-8.10.40" = {
@@ -1984,15 +1984,6 @@ let
         sha512 = "9efXj/83sw9Cq0is52NusQRf0u810KhNo38sAyBd7wlh2DZqU84thse7FvK+npppYkOz244zR0SNtwR2n41kgg==";
       };
     };
-    "@webassemblyjs/ast-1.7.11" = {
-      name = "_at_webassemblyjs_slash_ast";
-      packageName = "@webassemblyjs/ast";
-      version = "1.7.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz";
-        sha512 = "ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==";
-      };
-    };
     "@webassemblyjs/ast-1.8.1" = {
       name = "_at_webassemblyjs_slash_ast";
       packageName = "@webassemblyjs/ast";
@@ -2002,13 +1993,13 @@ let
         sha512 = "gDrC14Ae2b4gP9vYdCzx6ytY4LuYoH3I0h0QzU9RPifGPgjXz8F3s5g9632P7Wf39vQQg6XQ0Bfv29rc5RoTmw==";
       };
     };
-    "@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.11";
+    "@webassemblyjs/ast-1.8.3" = {
+      name = "_at_webassemblyjs_slash_ast";
+      packageName = "@webassemblyjs/ast";
+      version = "1.8.3";
       src = fetchurl {
-        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==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.3.tgz";
+        sha512 = "xy3m06+Iu4D32+6soz6zLnwznigXJRuFNTovBX2M4GqVqLb0dnyWLbPnpcXvUSdEN+9DVyDeaq2jyH1eIL2LZQ==";
       };
     };
     "@webassemblyjs/floating-point-hex-parser-1.8.1" = {
@@ -2020,13 +2011,13 @@ let
         sha512 = "g50x4xV7o2b39pB+uppF3kibFXhb9Dl4Jj3fj18eqWPGBgabreIwQmw3B5Uc6Y7Ec7ZZJ8TrUe79swN3iBaPDQ==";
       };
     };
-    "@webassemblyjs/helper-api-error-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-api-error";
-      packageName = "@webassemblyjs/helper-api-error";
-      version = "1.7.11";
+    "@webassemblyjs/floating-point-hex-parser-1.8.3" = {
+      name = "_at_webassemblyjs_slash_floating-point-hex-parser";
+      packageName = "@webassemblyjs/floating-point-hex-parser";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz";
-        sha512 = "7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.3.tgz";
+        sha512 = "vq1TISG4sts4f0lDwMUM0f3kpe0on+G3YyV5P0IySHFeaLKRYZ++n2fCFfG4TcCMYkqFeTUYFxm75L3ddlk2xA==";
       };
     };
     "@webassemblyjs/helper-api-error-1.8.1" = {
@@ -2038,13 +2029,13 @@ let
         sha512 = "79RidFwQOl8vG+Wv1uQWfCw4JQO5XR8iQcNGKLum3oPsSG8jkuEK5ILT6NxT3MNOa+xwSd3d+YqVFB1V0/W7/w==";
       };
     };
-    "@webassemblyjs/helper-buffer-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-buffer";
-      packageName = "@webassemblyjs/helper-buffer";
-      version = "1.7.11";
+    "@webassemblyjs/helper-api-error-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-api-error";
+      packageName = "@webassemblyjs/helper-api-error";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz";
-        sha512 = "MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.3.tgz";
+        sha512 = "BmWEynI4FnZbjk8CaYZXwcv9a6gIiu+rllRRouQUo73hglanXD3AGFJE7Q4JZCoVE0p5/jeX6kf5eKa3D4JxwQ==";
       };
     };
     "@webassemblyjs/helper-buffer-1.8.1" = {
@@ -2056,13 +2047,13 @@ let
         sha512 = "ex3cnmE6V0JfCBIesxF70vsPvh/QNOfaIsL5N0lkiJjVDl65YjH/WZxLe0nTuIuvVQhZH7DdRzUm0G9g12YACg==";
       };
     };
-    "@webassemblyjs/helper-code-frame-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-code-frame";
-      packageName = "@webassemblyjs/helper-code-frame";
-      version = "1.7.11";
+    "@webassemblyjs/helper-buffer-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-buffer";
+      packageName = "@webassemblyjs/helper-buffer";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz";
-        sha512 = "T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.3.tgz";
+        sha512 = "iVIMhWnNHoFB94+/2l7LpswfCsXeMRnWfExKtqsZ/E2NxZyUx9nTeKK/MEMKTQNEpyfznIUX06OchBHQ+VKi/Q==";
       };
     };
     "@webassemblyjs/helper-code-frame-1.8.1" = {
@@ -2074,31 +2065,31 @@ let
         sha512 = "vSs2ObU/pbPXrvMqfpEUnvTcvlhwHT3ochBdekn+cv5zYR1wtmAIj+UXrmzbkBQYff/yTrZgaeqkFaT3fLLOrA==";
       };
     };
-    "@webassemblyjs/helper-compiler-1.8.1" = {
+    "@webassemblyjs/helper-code-frame-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-code-frame";
+      packageName = "@webassemblyjs/helper-code-frame";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.3.tgz";
+        sha512 = "K1UxoJML7GKr1QXR+BG7eXqQkvu+eEeTjlSl5wUFQ6W6vaOc5OwSxTcb3oE9x/3+w4NHhrIKD4JXXCZmLdL2cg==";
+      };
+    };
+    "@webassemblyjs/helper-compiler-1.8.3" = {
       name = "_at_webassemblyjs_slash_helper-compiler";
       packageName = "@webassemblyjs/helper-compiler";
-      version = "1.8.1";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-compiler/-/helper-compiler-1.8.1.tgz";
-        sha512 = "/x+BvIasYsvlHWoDDPpl3eNoVk+cK9jqtAAw2EXKCtT69MMPHRiSfI8LFnPF/aGwlfnLhiDi2W7Q4/L6fiJNdA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-compiler/-/helper-compiler-1.8.3.tgz";
+        sha512 = "yDhlzgS/g3eJWPu4NKwnyas9+3mFPmPlKvjkXX3C/ZNJDWkRz4AzeLjdph1Y8GpvKYlbBaWSN8/aIIFWADj81g==";
       };
     };
-    "@webassemblyjs/helper-flatten-ast-1.8.1" = {
+    "@webassemblyjs/helper-flatten-ast-1.8.3" = {
       name = "_at_webassemblyjs_slash_helper-flatten-ast";
       packageName = "@webassemblyjs/helper-flatten-ast";
-      version = "1.8.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-flatten-ast/-/helper-flatten-ast-1.8.1.tgz";
-        sha512 = "kcocdS4pP9PpZg2Npu1CfNa3GmVYfTNdtoiqwQZttpSWgJ9sMh2e+HSU9bGqO4XFfwPND3c7OcBBIZkXoZgCKg==";
-      };
-    };
-    "@webassemblyjs/helper-fsm-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-fsm";
-      packageName = "@webassemblyjs/helper-fsm";
-      version = "1.7.11";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz";
-        sha512 = "nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-flatten-ast/-/helper-flatten-ast-1.8.3.tgz";
+        sha512 = "/z+Qus3FdaJnmpyTH0JWUSvwku8EJErdKQXdRXaamOnKnLE/DNoT4iAuaGXDa7eHL/qgXIYdpeqJRrb0tj7uWA==";
       };
     };
     "@webassemblyjs/helper-fsm-1.8.1" = {
@@ -2110,13 +2101,13 @@ let
         sha512 = "WeXD3ZkKi2wpAXqPW+COawoNb0Vcu3OGoaQv8/cL3VpTfGO85ZN30h/6CjUHLISGZtpZxQu3D7AuJmI/rlEqAw==";
       };
     };
-    "@webassemblyjs/helper-module-context-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-module-context";
-      packageName = "@webassemblyjs/helper-module-context";
-      version = "1.7.11";
+    "@webassemblyjs/helper-fsm-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-fsm";
+      packageName = "@webassemblyjs/helper-fsm";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz";
-        sha512 = "JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.3.tgz";
+        sha512 = "387zipfrGyO77/qm7/SDUiZBjQ5KGk4qkrVIyuoubmRNIiqn3g+6ijY8BhnlGqsCCQX5bYKOnttJobT5xoyviA==";
       };
     };
     "@webassemblyjs/helper-module-context-1.8.1" = {
@@ -2128,13 +2119,13 @@ let
         sha512 = "657xpRy6lptA7oCIgOKQAHElsgAXliqutMPLjoEL2T5Uyp1cIDUH7axmphu7bb5U+ZUpwApnZHvdvyJYGDOxsQ==";
       };
     };
-    "@webassemblyjs/helper-wasm-bytecode-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
-      packageName = "@webassemblyjs/helper-wasm-bytecode";
-      version = "1.7.11";
+    "@webassemblyjs/helper-module-context-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-module-context";
+      packageName = "@webassemblyjs/helper-module-context";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz";
-        sha512 = "cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.3.tgz";
+        sha512 = "lPLFdQfaRssfnGEJit5Sk785kbBPPPK4ZS6rR5W/8hlUO/5v3F+rN8XuUcMj/Ny9iZiyKhhuinWGTUuYL4VKeQ==";
       };
     };
     "@webassemblyjs/helper-wasm-bytecode-1.8.1" = {
@@ -2146,13 +2137,13 @@ let
         sha512 = "MDdqmxj6ea1qfHBLKVHaF2+IyWLQtw8+bvRaeZc4MtcO7dNBz/2cZZ/GCFN9kGTJVvhe37tkeCi2JAB3evoU2w==";
       };
     };
-    "@webassemblyjs/helper-wasm-section-1.7.11" = {
-      name = "_at_webassemblyjs_slash_helper-wasm-section";
-      packageName = "@webassemblyjs/helper-wasm-section";
-      version = "1.7.11";
+    "@webassemblyjs/helper-wasm-bytecode-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
+      packageName = "@webassemblyjs/helper-wasm-bytecode";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz";
-        sha512 = "8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.3.tgz";
+        sha512 = "R1nJW7bjyJLjsJQR5t3K/9LJ0QWuZezl8fGa49DZq4IVaejgvkbNlKEQxLYTC579zgT4IIIVHb5JA59uBPHXyw==";
       };
     };
     "@webassemblyjs/helper-wasm-section-1.8.1" = {
@@ -2164,13 +2155,13 @@ let
         sha512 = "FlNdlARr+mcP8XL+wg6bXqgC+0ZwnltqXExw63e9cgK84bAdTwKnfX9k6CKg8qvK5e/d9dUmk0dkVrkyEpKx5w==";
       };
     };
-    "@webassemblyjs/ieee754-1.7.11" = {
-      name = "_at_webassemblyjs_slash_ieee754";
-      packageName = "@webassemblyjs/ieee754";
-      version = "1.7.11";
+    "@webassemblyjs/helper-wasm-section-1.8.3" = {
+      name = "_at_webassemblyjs_slash_helper-wasm-section";
+      packageName = "@webassemblyjs/helper-wasm-section";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz";
-        sha512 = "Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.3.tgz";
+        sha512 = "P6F7D61SJY73Yz+fs49Q3+OzlYAZP86OfSpaSY448KzUy65NdfzDmo2NPVte+Rw4562MxEAacvq/mnDuvRWOcg==";
       };
     };
     "@webassemblyjs/ieee754-1.8.1" = {
@@ -2182,13 +2173,13 @@ let
         sha512 = "Pq3IQR3uay+rFC0qIgg6xvD+uu0a9QEWDCRihHuU9wmOBFW3Lda/ObnO0HjC7XUJ8A9h4xExaa1w5TsSk+DxIQ==";
       };
     };
-    "@webassemblyjs/leb128-1.7.11" = {
-      name = "_at_webassemblyjs_slash_leb128";
-      packageName = "@webassemblyjs/leb128";
-      version = "1.7.11";
+    "@webassemblyjs/ieee754-1.8.3" = {
+      name = "_at_webassemblyjs_slash_ieee754";
+      packageName = "@webassemblyjs/ieee754";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.11.tgz";
-        sha512 = "vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.3.tgz";
+        sha512 = "UD4HuLU99hjIvWz1pD68b52qsepWQlYCxDYVFJQfHh3BHyeAyAlBJ+QzLR1nnS5J6hAzjki3I3AoJeobNNSZlg==";
       };
     };
     "@webassemblyjs/leb128-1.8.1" = {
@@ -2200,13 +2191,13 @@ let
         sha512 = "Ir8M3hgTzFLEOKmMMH44neM6sLESfEoSCjNsOInETxbSpPY1MKOsFSAxCUaeXhjtLQfflCCdjgSsU+2veP6SGw==";
       };
     };
-    "@webassemblyjs/utf8-1.7.11" = {
-      name = "_at_webassemblyjs_slash_utf8";
-      packageName = "@webassemblyjs/utf8";
-      version = "1.7.11";
+    "@webassemblyjs/leb128-1.8.3" = {
+      name = "_at_webassemblyjs_slash_leb128";
+      packageName = "@webassemblyjs/leb128";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.11.tgz";
-        sha512 = "C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.3.tgz";
+        sha512 = "XXd3s1BmkC1gpGABuCRLqCGOD6D2L+Ma2BpwpjrQEHeQATKWAQtxAyU9Z14/z8Ryx6IG+L4/NDkIGHrccEhRUg==";
       };
     };
     "@webassemblyjs/utf8-1.8.1" = {
@@ -2218,31 +2209,31 @@ let
         sha512 = "I5QQEb5ajQ99ARiyDrVQM/2nvyFFG0tF1TX2Ql7dOjw5GRT6P4FF+gRk7OeAUtI1CLyffUNWbIvpJz13crGSxw==";
       };
     };
-    "@webassemblyjs/validation-1.8.1" = {
+    "@webassemblyjs/utf8-1.8.3" = {
+      name = "_at_webassemblyjs_slash_utf8";
+      packageName = "@webassemblyjs/utf8";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.3.tgz";
+        sha512 = "Wv/WH9Zo5h5ZMyfCNpUrjFsLZ3X1amdfEuwdb7MLdG3cPAjRS6yc6ElULlpjLiiBTuzvmLhr3ENsuGyJ3wyCgg==";
+      };
+    };
+    "@webassemblyjs/validation-1.8.3" = {
       name = "_at_webassemblyjs_slash_validation";
       packageName = "@webassemblyjs/validation";
-      version = "1.8.1";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.8.1.tgz";
-        sha512 = "IPKOkd7eL9pET+XDElEwTGjm8cM/3pzHftiB24Xl0bzTJUxqAFlsECf1T1YGZuJEsxsSbaFPjquXlp+gUyWOkQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.8.3.tgz";
+        sha512 = "UH0JDAy3Wyx9R3+VqCsCUQqkQJqVYIis7Suck++FoIRKPPOdM0cHBzLshVIDpF7mmLcw0k3Crfs6Hczb2gO3qw==";
       };
     };
-    "@webassemblyjs/wasm-edit-1.7.11" = {
+    "@webassemblyjs/wasm-edit-1.8.3" = {
       name = "_at_webassemblyjs_slash_wasm-edit";
       packageName = "@webassemblyjs/wasm-edit";
-      version = "1.7.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz";
-        sha512 = "FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==";
-      };
-    };
-    "@webassemblyjs/wasm-gen-1.7.11" = {
-      name = "_at_webassemblyjs_slash_wasm-gen";
-      packageName = "@webassemblyjs/wasm-gen";
-      version = "1.7.11";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz";
-        sha512 = "U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.3.tgz";
+        sha512 = "nB19eUx3Yhi1Vvv3yev5r+bqQixZprMtaoCs1brg9Efyl8Hto3tGaUoZ0Yb4Umn/gQCyoEGFfUxPLp1/8+Jvnw==";
       };
     };
     "@webassemblyjs/wasm-gen-1.8.1" = {
@@ -2254,22 +2245,22 @@ let
         sha512 = "xOgoGf6rR6gHlhlNlU0EfMIgDAjbLCO2cNdEIKdGfKj2/fc02pbAyS3gYJ6EWAzSnL/XpAOf3Q/trp/EUeikug==";
       };
     };
-    "@webassemblyjs/wasm-opt-1.7.11" = {
-      name = "_at_webassemblyjs_slash_wasm-opt";
-      packageName = "@webassemblyjs/wasm-opt";
-      version = "1.7.11";
+    "@webassemblyjs/wasm-gen-1.8.3" = {
+      name = "_at_webassemblyjs_slash_wasm-gen";
+      packageName = "@webassemblyjs/wasm-gen";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz";
-        sha512 = "XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.3.tgz";
+        sha512 = "sDNmu2nLBJZ/huSzlJvd9IK8B1EjCsOl7VeMV9VJPmxKYgTJ47lbkSP+KAXMgZWGcArxmcrznqm7FrAPQ7vVGg==";
       };
     };
-    "@webassemblyjs/wasm-parser-1.7.11" = {
-      name = "_at_webassemblyjs_slash_wasm-parser";
-      packageName = "@webassemblyjs/wasm-parser";
-      version = "1.7.11";
+    "@webassemblyjs/wasm-opt-1.8.3" = {
+      name = "_at_webassemblyjs_slash_wasm-opt";
+      packageName = "@webassemblyjs/wasm-opt";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz";
-        sha512 = "6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.3.tgz";
+        sha512 = "j8lmQVFR+FR4/645VNgV4R/Jz8i50eaPAj93GZyd3EIJondVshE/D9pivpSDIXyaZt+IkCodlzOoZUE4LnQbeA==";
       };
     };
     "@webassemblyjs/wasm-parser-1.8.1" = {
@@ -2281,13 +2272,13 @@ let
         sha512 = "k63WJZdIjTQgZt+cn8rsIEvW0aNKttGip6ygTE/ZPXKZsMTk0G5xyw+MQxphbvt/GYbNu5DdxGN/7WGybO95TA==";
       };
     };
-    "@webassemblyjs/wast-parser-1.7.11" = {
-      name = "_at_webassemblyjs_slash_wast-parser";
-      packageName = "@webassemblyjs/wast-parser";
-      version = "1.7.11";
+    "@webassemblyjs/wasm-parser-1.8.3" = {
+      name = "_at_webassemblyjs_slash_wasm-parser";
+      packageName = "@webassemblyjs/wasm-parser";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz";
-        sha512 = "lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.3.tgz";
+        sha512 = "NBI3SNNtRoy4T/KBsRZCAWUzE9lI94RH2nneLwa1KKIrt/2zzcTavWg6oY05ArCbb/PZDk3OUi63CD1RYtN65w==";
       };
     };
     "@webassemblyjs/wast-parser-1.8.1" = {
@@ -2299,13 +2290,13 @@ let
         sha512 = "iXjhXGhZeZIAnWkHD2G4ZOx8x5GYux5dwHuQL/AU8jb2H3BxolxVvNdpDmBTQPKDAgAAEeCFDnftNf4xNR9KMQ==";
       };
     };
-    "@webassemblyjs/wast-printer-1.7.11" = {
-      name = "_at_webassemblyjs_slash_wast-printer";
-      packageName = "@webassemblyjs/wast-printer";
-      version = "1.7.11";
+    "@webassemblyjs/wast-parser-1.8.3" = {
+      name = "_at_webassemblyjs_slash_wast-parser";
+      packageName = "@webassemblyjs/wast-parser";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz";
-        sha512 = "m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.3.tgz";
+        sha512 = "gZPst4CNcmGtKC1eYQmgCx6gwQvxk4h/nPjfPBbRoD+Raw3Hs+BS3yhrfgyRKtlYP+BJ8LcY9iFODEQofl2qbg==";
       };
     };
     "@webassemblyjs/wast-printer-1.8.1" = {
@@ -2317,6 +2308,15 @@ let
         sha512 = "YYRBpDCBLeYJBO+sVapLRkEE/+wrjv1O03IEybkqyls3sCZqhu3ZXjJwMSMCgFEyYP2MrdZvqL/dz2RBnULTbA==";
       };
     };
+    "@webassemblyjs/wast-printer-1.8.3" = {
+      name = "_at_webassemblyjs_slash_wast-printer";
+      packageName = "@webassemblyjs/wast-printer";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.3.tgz";
+        sha512 = "DTA6kpXuHK4PHu16yAD9QVuT1WZQRT7079oIFFmFSjqjLWGXS909I/7kiLTn931mcj7wGsaUNungjwNQ2lGQ3Q==";
+      };
+    };
     "@xtuc/ieee754-1.2.0" = {
       name = "_at_xtuc_slash_ieee754";
       packageName = "@xtuc/ieee754";
@@ -2335,6 +2335,15 @@ let
         sha512 = "FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==";
       };
     };
+    "@xtuc/long-4.2.2" = {
+      name = "_at_xtuc_slash_long";
+      packageName = "@xtuc/long";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz";
+        sha512 = "NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==";
+      };
+    };
     "@yarnpkg/lockfile-1.1.0" = {
       name = "_at_yarnpkg_slash_lockfile";
       packageName = "@yarnpkg/lockfile";
@@ -2947,6 +2956,15 @@ let
         sha512 = "SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==";
       };
     };
+    "ansi-colors-3.2.3" = {
+      name = "ansi-colors";
+      packageName = "ansi-colors";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz";
+        sha512 = "LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==";
+      };
+    };
     "ansi-cyan-0.1.1" = {
       name = "ansi-cyan";
       packageName = "ansi-cyan";
@@ -3172,40 +3190,40 @@ let
         sha1 = "ee49736b639b4f108b6e9e626c6da99306b41692";
       };
     };
-    "apollo-cache-1.1.25" = {
+    "apollo-cache-1.1.26" = {
       name = "apollo-cache";
       packageName = "apollo-cache";
-      version = "1.1.25";
+      version = "1.1.26";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache/-/apollo-cache-1.1.25.tgz";
-        sha512 = "9HhI/tVEHAeGaJJvi1Vpf6PzXUCA0PqNbigi2G3uOc180JjxbcaBvEbKXMEDb/UyTXkFWzI4PiPDuDQFqmIMSA==";
+        url = "https://registry.npmjs.org/apollo-cache/-/apollo-cache-1.1.26.tgz";
+        sha512 = "JKFHijwkhXpcQ3jOat+ctwiXyjDhQgy0p6GSaj7zG+or+ZSalPqUnPzFRgRwFLVbYxBKJgHCkWX+2VkxWTZzQQ==";
       };
     };
-    "apollo-cache-control-0.5.0" = {
+    "apollo-cache-control-0.5.1" = {
       name = "apollo-cache-control";
       packageName = "apollo-cache-control";
-      version = "0.5.0";
+      version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.5.0.tgz";
-        sha512 = "zu26CFj7CboxLB6cckZQEiSUGXIr8MViEGIC5Vesz2yd37sjtevMfRwQhxFuK0HinR0T/WC3dz2k5cj+33vQQQ==";
+        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.5.1.tgz";
+        sha512 = "82hzX7/fFiu5dODLS8oGieEE4jLjMIhIkQ4JTsWj9drv8PZJltl0xqORtU2jA/FottjxfYab8+ebi3BgGPOaqw==";
       };
     };
-    "apollo-cache-inmemory-1.4.2" = {
+    "apollo-cache-inmemory-1.4.3" = {
       name = "apollo-cache-inmemory";
       packageName = "apollo-cache-inmemory";
-      version = "1.4.2";
+      version = "1.4.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache-inmemory/-/apollo-cache-inmemory-1.4.2.tgz";
-        sha512 = "fDVmj5j1e3W+inyuSwjIcMgbQ4edcFgmiKTBMFAEKAq0jg33X7FrbDX8JT2t5Vuf75Mva50JDlt5wXdu7C6WuA==";
+        url = "https://registry.npmjs.org/apollo-cache-inmemory/-/apollo-cache-inmemory-1.4.3.tgz";
+        sha512 = "p9KGtEZ9Mlb+FS0UEaxR8WvKOijYV0c+TXlhC/XZ3/ltYvP1zL3b1ozSOLGR9SawN2895Fc7QDV5nzPpihV0rA==";
       };
     };
-    "apollo-client-2.4.12" = {
+    "apollo-client-2.4.13" = {
       name = "apollo-client";
       packageName = "apollo-client";
-      version = "2.4.12";
+      version = "2.4.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-client/-/apollo-client-2.4.12.tgz";
-        sha512 = "E5ClFSB9btJLYibLKwLDSCg+w9tI+25eZgXOM+DClawu7of4d/xhuV/xvpuZpsMP3qwrp0QPacBnfG4tUJs3/w==";
+        url = "https://registry.npmjs.org/apollo-client/-/apollo-client-2.4.13.tgz";
+        sha512 = "7mBdW/CW1qHB8Mj4EFAG3MTtbRc6S8aUUntUdrKfRWV1rZdWa0NovxsgVD/R4HZWZjRQ2UOM4ENsHdM5g1uXOQ==";
       };
     };
     "apollo-codegen-0.20.2" = {
@@ -3280,31 +3298,31 @@ let
         sha512 = "0/h5hce2FIGn6Y4+EHMeMINQxFwcgjw1vU+xV3KGaaEgyEAEQ3/n9pyz43M8mOm/JVgg8Eb4CtM1AtCkRQuFGw==";
       };
     };
-    "apollo-datasource-0.3.0" = {
+    "apollo-datasource-0.3.1" = {
       name = "apollo-datasource";
       packageName = "apollo-datasource";
-      version = "0.3.0";
+      version = "0.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.3.0.tgz";
-        sha512 = "+jWs3ezhx4lcAAPIHtlj0Zoiv2tvwfzn7feHuhxub3xFwkJm39T8hPjb3aMQCsuS7TukBD+F5ndgVob5hL/5Nw==";
+        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.3.1.tgz";
+        sha512 = "qdEUeonc9pPZvYwXK36h2NZoT7Pddmy0HYOzdV0ON5pcG1YtNmUyyYi83Q60V5wTWjuaCjyJ9hOY6wr0BMvQuA==";
       };
     };
-    "apollo-engine-reporting-1.0.1" = {
+    "apollo-engine-reporting-1.0.2" = {
       name = "apollo-engine-reporting";
       packageName = "apollo-engine-reporting";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-1.0.1.tgz";
-        sha512 = "FZqlfo6s//AWlJzKu8Qn9vsCiTQizw4xf4ykptyo6jas3SZCT0tNK1cCSsSKIJwUOr5TY5/+wyzkcPWOmpX2xg==";
+        url = "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-1.0.2.tgz";
+        sha512 = "g6JkO5WaMuqXfn3WoZMQyyFzpxfHsw/f7P7XTHSEqTSd/M4uk7/uih/xcqmgBGt4ET30KbaGFz2l4FJzO06A5w==";
       };
     };
-    "apollo-engine-reporting-protobuf-0.2.0" = {
+    "apollo-engine-reporting-protobuf-0.2.1" = {
       name = "apollo-engine-reporting-protobuf";
       packageName = "apollo-engine-reporting-protobuf";
-      version = "0.2.0";
+      version = "0.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.2.0.tgz";
-        sha512 = "qI+GJKN78UMJ9Aq/ORdiM2qymZ5yswem+/VDdVFocq+/e1QqxjnpKjQWISkswci5+WtpJl9SpHBNxG98uHDKkA==";
+        url = "https://registry.npmjs.org/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.2.1.tgz";
+        sha512 = "5pYR84uWeylRS2OJowtkTczT3bWTwOErWtfnkRKccUi/wZ/AZJBP+D5HKNzM7xoFcz9XvrJyS+wBTz1oBi0Jiw==";
       };
     };
     "apollo-env-0.3.3" = {
@@ -3316,13 +3334,13 @@ let
         sha512 = "VsUX14bfQCJpKmTyYNBTeLrdeFabjmpSPVQ2y4IKnwqaxVqZuRca3WFE8ercszO1tLwS6HMM7mFw+IIbtQXo/w==";
       };
     };
-    "apollo-graphql-0.1.0" = {
+    "apollo-graphql-0.1.1" = {
       name = "apollo-graphql";
       packageName = "apollo-graphql";
-      version = "0.1.0";
+      version = "0.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.1.0.tgz";
-        sha512 = "Mi5GqZJz1A/0i8SEm9EVHWe/LkGbYzV5wzobUY+1Q0SI1NdFtRgqHZUdHU0hz1jDnL+dpRqK1huVmtOO/DGa/A==";
+        url = "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.1.1.tgz";
+        sha512 = "UImgDIeB0n0fryYqtdz0CwJ9uDtXwg/3Q6rXzRAqgqBYz46VkmWa7nu2LX9GmDtiXB5VUOVCtyMEnvFwC3o27g==";
       };
     };
     "apollo-link-1.2.8" = {
@@ -3388,22 +3406,22 @@ let
         sha512 = "KwHVnhKKDUA5PmmzpiqkyahjBcwGdf2eFlTZg4DIwgH1R0KcBmn/A6rkZnmClBbUNgV6t+kR46dW2fyx64Jm3A==";
       };
     };
-    "apollo-server-caching-0.3.0" = {
+    "apollo-server-caching-0.3.1" = {
       name = "apollo-server-caching";
       packageName = "apollo-server-caching";
-      version = "0.3.0";
+      version = "0.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.3.0.tgz";
-        sha512 = "dHwWUsRZu7I1yUfzTwPJgOigMsftgp8w3X96Zdch1ICWN7cM6aNxks9tTnLd+liUSEzdYLlTmEy5VUturF2IAw==";
+        url = "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.3.1.tgz";
+        sha512 = "mfxzikYXbB/OoEms77AGYwRh7FF3Oim5v5XWAL+VL49FrkbZt5lopVa4bABi7Mz8Nt3Htl9EBJN8765s/yh8IA==";
       };
     };
-    "apollo-server-core-2.4.1" = {
+    "apollo-server-core-2.4.2" = {
       name = "apollo-server-core";
       packageName = "apollo-server-core";
-      version = "2.4.1";
+      version = "2.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.4.1.tgz";
-        sha512 = "9T7M1tU3m6/kRWBT0bDZtcH6whLVIFGcs47i8EuveKR6jof7OYCe46xs4JS13iVHPo3ITGYXRW0pmsx2zVPuIg==";
+        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.4.2.tgz";
+        sha512 = "IOWhqjjI1sH38sj7ycjke0dXXEgaqOkb2hDpLBTSiVWKBIqFfo4gchWK5wcWW9jReDpf/+G2wogH+UvONs2ejg==";
       };
     };
     "apollo-server-env-2.2.0" = {
@@ -3424,31 +3442,31 @@ let
         sha512 = "gV9EZG2tovFtT1cLuCTavnJu2DaKxnXPRNGSTo+SDI6IAk6cdzyW0Gje5N2+3LybI0Wq5KAbW6VLei31S4MWmg==";
       };
     };
-    "apollo-server-express-2.4.1" = {
+    "apollo-server-express-2.4.2" = {
       name = "apollo-server-express";
       packageName = "apollo-server-express";
-      version = "2.4.1";
+      version = "2.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.4.1.tgz";
-        sha512 = "0Bz8DMZ7nmrvhkCBt0gX9fyFMBKk+s9cz/BYjuCNnzMWtHkOQXdcQg454bEzSBLxlX6fOntMSPxCtv8uYHE6Og==";
+        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.4.2.tgz";
+        sha512 = "Q5/unCAi6a2dT39LQaIiLC1d8O4fmBDU2CrRhVhPWP8I344xPgNOcrs7MsNN7Ecb56UGbgDKxBoWowFG65ulKw==";
       };
     };
-    "apollo-server-plugin-base-0.3.1" = {
+    "apollo-server-plugin-base-0.3.2" = {
       name = "apollo-server-plugin-base";
       packageName = "apollo-server-plugin-base";
-      version = "0.3.1";
+      version = "0.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.3.1.tgz";
-        sha512 = "ESrrsKfW1ONn+zHXkkINZSDf6Cb7+ohGfNVN8GDAJPfG8VowN18v34NEt0bsnDdT6YtqSMaQx/+385OdviiBuw==";
+        url = "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.3.2.tgz";
+        sha512 = "yzXrkVSPBoux2uPgbTGROGh7W0axRWopMZM+KT9aF9H/+yMCwtt0EhGOGyNUDMOFA4rT3z+cLVvYuZr1rSQWcg==";
       };
     };
-    "apollo-tracing-0.5.0" = {
+    "apollo-tracing-0.5.1" = {
       name = "apollo-tracing";
       packageName = "apollo-tracing";
-      version = "0.5.0";
+      version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.5.0.tgz";
-        sha512 = "j0icEhLYf0xS6Q/iCXA2j9KfpYw0a/XvLSUio7fm5yUwtXP2Pp11x5BtK1dI8sLMiaOqUrREz2XjV4PKLzQPuA==";
+        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.5.1.tgz";
+        sha512 = "5gb8OWzkGaJFsmQdyMyZnOjcq6weMTkqJSGj0hfR7uX99X4SBFAzZV4nTeK4z0XkXO2I12xSTJoS4gxbFjgeaA==";
       };
     };
     "apollo-upload-client-10.0.0" = {
@@ -3460,13 +3478,13 @@ let
         sha512 = "N0SENiEkZXoY4nl9xxrXFcj/cL0AVkSNQ4aYXSaruCBWE0aKpK6aCe4DBmiEHrK3FAsMxZPEJxBRIWNbsXT8dw==";
       };
     };
-    "apollo-utilities-1.1.2" = {
+    "apollo-utilities-1.1.3" = {
       name = "apollo-utilities";
       packageName = "apollo-utilities";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.1.2.tgz";
-        sha512 = "EjDx8vToK+zkWIxc76ZQY/irRX52puNg04xf/w8R0kVTDAgHuVfnFVC01O5vE25kFnIaa5em0pFI0p9b6YMkhQ==";
+        url = "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.1.3.tgz";
+        sha512 = "pF9abhiClX5gfj/WFWZh8DiI33nOLGxRhXH9ZMquaM1V8bhq1WLFPt2QjShWH3kGQVeIGUK+FQefnhe+ZaaAYg==";
       };
     };
     "app-builder-5.2.0" = {
@@ -4351,13 +4369,13 @@ let
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.401.0" = {
+    "aws-sdk-2.405.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.401.0";
+      version = "2.405.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.401.0.tgz";
-        sha512 = "mOI4gzKoP/g8Q0ToAaqTh7TijGG9PvGVVUkKmurXqBKy7GTPmy4JizfVkTrM+iBg7RAsx5H2lBxBFpdEFBa5fg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.405.0.tgz";
+        sha512 = "krgJBy/5FFGFjlOoODLH4ryXqUSQKz6He6QdIboKXvjIEV2CNxsoB+tFaThKD3SZmFcRxoWjho7R17dIlswTtQ==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -6682,22 +6700,22 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-db-1.0.30000936" = {
+    "caniuse-db-1.0.30000938" = {
       name = "caniuse-db";
       packageName = "caniuse-db";
-      version = "1.0.30000936";
+      version = "1.0.30000938";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000936.tgz";
-        sha512 = "gOrcU8d+h5AdrO/Mhnj35vttNvAed2taqzrYDfhJE/qVnLxAaGb1doWlRF7iDex+EQPhkwAHc07RBwixnxpFDQ==";
+        url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000938.tgz";
+        sha512 = "1lbcoAGPQFUYOdY7sxpsl8ZDBfn5cyn80XuYnZwk7N4Qp7Behw7uxZCH5jjH2qWTV2WM6hgjvDVpP/uV3M/l9g==";
       };
     };
-    "caniuse-lite-1.0.30000936" = {
+    "caniuse-lite-1.0.30000938" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30000936";
+      version = "1.0.30000938";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000936.tgz";
-        sha512 = "orX4IdpbFhdNO7bTBhSbahp1EBpqzBc+qrvTRVUFfZgA4zta7TdM6PN5ZxkEUgDnz36m+PfWGcdX7AVfFWItJw==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000938.tgz";
+        sha512 = "ekW8NQ3/FvokviDxhdKLZZAx7PptXNwxKgXtnR5y+PR3hckwuP3yJ1Ir+4/c97dsHNqtAyfKUGdw8P4EYzBNgw==";
       };
     };
     "capture-stack-trace-1.0.1" = {
@@ -7051,13 +7069,13 @@ let
         sha1 = "798e689778151c8076b4b360e5edd28cda2bb468";
       };
     };
-    "chokidar-2.1.1" = {
+    "chokidar-2.1.2" = {
       name = "chokidar";
       packageName = "chokidar";
-      version = "2.1.1";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chokidar/-/chokidar-2.1.1.tgz";
-        sha512 = "gfw3p2oQV2wEt+8VuMlNsPjCxDxvvgnm/kz+uATu805mWVF8IJN7uz9DN7iBz+RMJISmiVbCOBFs9qBGMjtPfQ==";
+        url = "https://registry.npmjs.org/chokidar/-/chokidar-2.1.2.tgz";
+        sha512 = "IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==";
       };
     };
     "chownr-0.0.2" = {
@@ -7321,15 +7339,6 @@ let
         sha1 = "2d1ef7f218a0e786e214540562d4bd177fe32d97";
       };
     };
-    "cli-table3-0.5.1" = {
-      name = "cli-table3";
-      packageName = "cli-table3";
-      version = "0.5.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz";
-        sha512 = "7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==";
-      };
-    };
     "cli-truncate-1.1.0" = {
       name = "cli-truncate";
       packageName = "cli-truncate";
@@ -8014,15 +8023,6 @@ let
         sha512 = "b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==";
       };
     };
-    "commander-2.15.1" = {
-      name = "commander";
-      packageName = "commander";
-      version = "2.15.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz";
-        sha512 = "VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==";
-      };
-    };
     "commander-2.17.1" = {
       name = "commander";
       packageName = "commander";
@@ -8194,13 +8194,13 @@ let
         sha1 = "524a9f10903f3a813389b0225d27c48bb751890f";
       };
     };
-    "compressible-2.0.15" = {
+    "compressible-2.0.16" = {
       name = "compressible";
       packageName = "compressible";
-      version = "2.0.15";
+      version = "2.0.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz";
-        sha512 = "4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==";
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.16.tgz";
+        sha512 = "JQfEOdnI7dASwCuSPWIeVYwc/zMsu/+tRhoUvEfXz2gxOA2DNjmG5vhtFdBlhWPPGo+RdT9S3tgc/uH5qgDiiA==";
       };
     };
     "compression-1.5.2" = {
@@ -8554,22 +8554,22 @@ let
         sha1 = "3243397ae93a71d655b3026834a51590b958b9e8";
       };
     };
-    "conventional-changelog-angular-5.0.2" = {
+    "conventional-changelog-angular-5.0.3" = {
       name = "conventional-changelog-angular";
       packageName = "conventional-changelog-angular";
-      version = "5.0.2";
+      version = "5.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.2.tgz";
-        sha512 = "yx7m7lVrXmt4nKWQgWZqxSALEiAKZhOAcbxdUaU9575mB0CzXVbgrgpfSnSP7OqWDUTYGD0YVJ0MSRdyOPgAwA==";
+        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.3.tgz";
+        sha512 = "YD1xzH7r9yXQte/HF9JBuEDfvjxxwDGGwZU1+ndanbY0oFgA+Po1T9JDSpPLdP0pZT6MhCAsdvFKC4TJ4MTJTA==";
       };
     };
-    "conventional-changelog-core-3.1.5" = {
+    "conventional-changelog-core-3.1.6" = {
       name = "conventional-changelog-core";
       packageName = "conventional-changelog-core";
-      version = "3.1.5";
+      version = "3.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.5.tgz";
-        sha512 = "iwqAotS4zk0wA4S84YY1JCUG7X3LxaRjJxuUo6GI4dZuIy243j5nOg/Ora35ExT4DOiw5dQbMMQvw2SUjh6moQ==";
+        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.6.tgz";
+        sha512 = "5teTAZOtJ4HLR6384h50nPAaKdDr+IaU0rnD2Gg2C3MS7hKsEPH8pZxrDNqam9eOSPQg9tET6uZY79zzgSz+ig==";
       };
     };
     "conventional-changelog-preset-loader-2.0.2" = {
@@ -8581,13 +8581,13 @@ let
         sha512 = "pBY+qnUoJPXAXXqVGwQaVmcye05xi6z231QM98wHWamGAmu/ghkBprQAwmF5bdmyobdVxiLhPY3PrCfSeUNzRQ==";
       };
     };
-    "conventional-changelog-writer-4.0.2" = {
+    "conventional-changelog-writer-4.0.3" = {
       name = "conventional-changelog-writer";
       packageName = "conventional-changelog-writer";
-      version = "4.0.2";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.2.tgz";
-        sha512 = "d8/FQY/fix2xXEBUhOo8u3DCbyEw3UOQgYHxLsPDw+wHUDma/GQGAGsGtoH876WyNs32fViHmTOUrgRKVLvBug==";
+        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.3.tgz";
+        sha512 = "bIlpSiQtQZ1+nDVHEEh798Erj2jhN/wEjyw9sfxY9es6h7pREE5BNJjfv0hXGH/FTrAsEpHUq4xzK99eePpwuA==";
       };
     };
     "conventional-commits-filter-2.0.1" = {
@@ -8878,13 +8878,13 @@ let
         sha512 = "RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==";
       };
     };
-    "core-js-2.6.4" = {
+    "core-js-2.6.5" = {
       name = "core-js";
       packageName = "core-js";
-      version = "2.6.4";
+      version = "2.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.4.tgz";
-        sha512 = "05qQ5hXShcqGkPZpXEFLIpxayZscVD2kuMBZewxiIPPEagukO4mqgPA9CWhUvFBJfy3ODdK2p9xyHh7FTU9/7A==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz";
+        sha512 = "klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==";
       };
     };
     "core-js-3.0.0-beta.13" = {
@@ -8950,13 +8950,13 @@ let
         sha512 = "6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==";
       };
     };
-    "cosmiconfig-5.0.7" = {
+    "cosmiconfig-5.1.0" = {
       name = "cosmiconfig";
       packageName = "cosmiconfig";
-      version = "5.0.7";
+      version = "5.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.0.7.tgz";
-        sha512 = "PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA==";
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.1.0.tgz";
+        sha512 = "kCNPvthka8gvLtzAxQXvWo4FxqRB+ftRZyPZNuab5ngvM9Y7yw7hbEysglptLgpkGX9nAOKTBVkHUAe8xtYR6Q==";
       };
     };
     "couch-login-0.1.20" = {
@@ -9346,13 +9346,13 @@ let
         sha1 = "83834230cc9f74c457de59eebd1543feeb83b7ec";
       };
     };
-    "css-what-2.1.2" = {
+    "css-what-2.1.3" = {
       name = "css-what";
       packageName = "css-what";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz";
-        sha512 = "wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==";
+        url = "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz";
+        sha512 = "a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==";
       };
     };
     "cssauron-1.4.0" = {
@@ -9391,13 +9391,13 @@ let
         sha1 = "4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38";
       };
     };
-    "cssnano-4.1.9" = {
+    "cssnano-4.1.10" = {
       name = "cssnano";
       packageName = "cssnano";
-      version = "4.1.9";
+      version = "4.1.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cssnano/-/cssnano-4.1.9.tgz";
-        sha512 = "osEbYy4kzaNY3nkd92Uf3hy5Jqb5Aztuv+Ze3Z6DjRhyntZDlb3YljiYDdJ05k167U86CZpSR+rbuJYN7N3oBQ==";
+        url = "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz";
+        sha512 = "5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==";
       };
     };
     "cssnano-preset-default-4.0.7" = {
@@ -10219,13 +10219,13 @@ let
         sha512 = "R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==";
       };
     };
-    "deepmerge-3.1.0" = {
+    "deepmerge-3.2.0" = {
       name = "deepmerge";
       packageName = "deepmerge";
-      version = "3.1.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/deepmerge/-/deepmerge-3.1.0.tgz";
-        sha512 = "/TnecbwXEdycfbsM2++O3eGiatEFHjjNciHEwJclM+T5Kd94qD1AP+2elP/Mq0L5b9VZJao5znR01Mz6eX8Seg==";
+        url = "https://registry.npmjs.org/deepmerge/-/deepmerge-3.2.0.tgz";
+        sha512 = "6+LuZGU7QCNUnAJyX8cIrlzoEgggTM6B7mm+znKOX4t5ltluT9KLjN6g61ECMS0LTsLW7yDpNoxhix5FZcrIow==";
       };
     };
     "default-browser-id-1.0.4" = {
@@ -10895,6 +10895,15 @@ let
         sha512 = "35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==";
       };
     };
+    "doctrine-3.0.0" = {
+      name = "doctrine";
+      packageName = "doctrine";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz";
+        sha512 = "yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==";
+      };
+    };
     "dom-serialize-2.2.1" = {
       name = "dom-serialize";
       packageName = "dom-serialize";
@@ -10913,13 +10922,13 @@ let
         sha1 = "9589827f1e32d22c37c829adabd59b3247af8eaf";
       };
     };
-    "dom-serializer-0.1.0" = {
+    "dom-serializer-0.1.1" = {
       name = "dom-serializer";
       packageName = "dom-serializer";
-      version = "0.1.0";
+      version = "0.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz";
-        sha1 = "073c697546ce0780ce23be4a28e293e40bc30c82";
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz";
+        sha512 = "l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==";
       };
     };
     "dom-walk-0.1.1" = {
@@ -11931,13 +11940,13 @@ let
         sha1 = "a08cdde84ccdbf34d027a1451bc91d4bcd28a613";
       };
     };
-    "es6-promise-4.2.5" = {
+    "es6-promise-4.2.6" = {
       name = "es6-promise";
       packageName = "es6-promise";
-      version = "4.2.5";
+      version = "4.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz";
-        sha512 = "n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg==";
+        url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz";
+        sha512 = "aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==";
       };
     };
     "es6-promisify-5.0.0" = {
@@ -12093,13 +12102,13 @@ let
         sha512 = "D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==";
       };
     };
-    "eslint-5.13.0" = {
+    "eslint-5.14.1" = {
       name = "eslint";
       packageName = "eslint";
-      version = "5.13.0";
+      version = "5.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-5.13.0.tgz";
-        sha512 = "nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-5.14.1.tgz";
+        sha512 = "CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==";
       };
     };
     "eslint-plugin-no-unsafe-innerhtml-1.0.16" = {
@@ -12147,13 +12156,13 @@ let
         sha512 = "qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==";
       };
     };
-    "esm-3.2.4" = {
+    "esm-3.2.5" = {
       name = "esm";
       packageName = "esm";
-      version = "3.2.4";
+      version = "3.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esm/-/esm-3.2.4.tgz";
-        sha512 = "wOuWtQCkkwD1WKQN/k3RsyGSSN+AmiUzdKftn8vaC+uV9JesYmQlODJxgXaaRz0LaaFIlUxZaUu5NPiUAjKAAA==";
+        url = "https://registry.npmjs.org/esm/-/esm-3.2.5.tgz";
+        sha512 = "rukU6Nd3agbHQCJWV4rrlZxqpbO3ix8qhUxK1BhKALGS2E465O0BFwgCOqJjNnYfO/I2MwpUBmPsW8DXoe8tcA==";
       };
     };
     "espree-3.5.4" = {
@@ -12174,13 +12183,13 @@ let
         sha512 = "I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==";
       };
     };
-    "espree-5.0.0" = {
+    "espree-5.0.1" = {
       name = "espree";
       packageName = "espree";
-      version = "5.0.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-5.0.0.tgz";
-        sha512 = "1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==";
+        url = "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz";
+        sha512 = "qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==";
       };
     };
     "esprima-2.7.3" = {
@@ -12255,6 +12264,15 @@ let
         sha512 = "XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig==";
       };
     };
+    "estree-walker-0.6.0" = {
+      name = "estree-walker";
+      packageName = "estree-walker";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.0.tgz";
+        sha512 = "peq1RfVAVzr3PU/jL31RaOjUKLoZJpObQWJJ+LgfcxDUifyLZ1RjPQZTl0pzj2uJ45b7A7XpyppXvxdEqzo4rw==";
+      };
+    };
     "esutils-2.0.2" = {
       name = "esutils";
       packageName = "esutils";
@@ -13065,13 +13083,13 @@ let
         sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
       };
     };
-    "fast-redact-1.4.3" = {
+    "fast-redact-1.4.4" = {
       name = "fast-redact";
       packageName = "fast-redact";
-      version = "1.4.3";
+      version = "1.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-redact/-/fast-redact-1.4.3.tgz";
-        sha512 = "x4qQsA2zOcVuUBHv80EURely8MiAOTR3Z6T1Od82LzFbthhq7DXVUdxwfxtvP9hNCvd+rdcY9qMipK0YDTwWCw==";
+        url = "https://registry.npmjs.org/fast-redact/-/fast-redact-1.4.4.tgz";
+        sha512 = "QOQZ8sDDQPZMJ6x6zlm6hLZ2cjPDqfN3R/AYnAbM+yy8VNPvOnVXdUF/E/xbMv7g44c1krhWuzgjH2u0V5Vhsg==";
       };
     };
     "fast-safe-stringify-1.2.3" = {
@@ -13218,6 +13236,15 @@ let
         sha1 = "c392990c3e684783d838b8c84a45d8a048458361";
       };
     };
+    "file-entry-cache-5.0.1" = {
+      name = "file-entry-cache";
+      packageName = "file-entry-cache";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz";
+        sha512 = "bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==";
+      };
+    };
     "file-type-3.9.0" = {
       name = "file-type";
       packageName = "file-type";
@@ -13578,6 +13605,15 @@ let
         sha512 = "lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==";
       };
     };
+    "flat-4.1.0" = {
+      name = "flat";
+      packageName = "flat";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz";
+        sha512 = "Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==";
+      };
+    };
     "flat-cache-1.3.4" = {
       name = "flat-cache";
       packageName = "flat-cache";
@@ -13587,6 +13623,15 @@ let
         sha512 = "VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==";
       };
     };
+    "flat-cache-2.0.1" = {
+      name = "flat-cache";
+      packageName = "flat-cache";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz";
+        sha512 = "LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==";
+      };
+    };
     "flat-tree-1.6.0" = {
       name = "flat-tree";
       packageName = "flat-tree";
@@ -13749,13 +13794,13 @@ let
         sha512 = "3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==";
       };
     };
-    "follow-redirects-1.6.1" = {
+    "follow-redirects-1.7.0" = {
       name = "follow-redirects";
       packageName = "follow-redirects";
-      version = "1.6.1";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.6.1.tgz";
-        sha512 = "t2JCjbzxQpWvbhts3l6SH1DKzSrx8a+SsaVf4h6bG4kOXUuPYS/kg2Lr4gQSb7eemaHqJkOThF1BGyjlUkO1GQ==";
+        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz";
+        sha512 = "m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==";
       };
     };
     "for-each-0.3.3" = {
@@ -15119,13 +15164,13 @@ let
         sha512 = "C5zDzLqvfPAgTtP8AUPIt9keDabrdRAqSWjj2OPRKrKxI9Fb65I36s1uCs1UUBFnSWTdO7hyHi7z1ZbwKMKF6Q==";
       };
     };
-    "graphql-anywhere-4.1.27" = {
+    "graphql-anywhere-4.1.28" = {
       name = "graphql-anywhere";
       packageName = "graphql-anywhere";
-      version = "4.1.27";
+      version = "4.1.28";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-anywhere/-/graphql-anywhere-4.1.27.tgz";
-        sha512 = "ErASfs9siEMrmroHU0V4heh6cIdA8K/SoYpahJFgEM6YDAwUZuycTAKIrMaK8XJI37sHZWcujF/ySuYnIkP5vw==";
+        url = "https://registry.npmjs.org/graphql-anywhere/-/graphql-anywhere-4.1.28.tgz";
+        sha512 = "NtLN0qmu2AasvZ31kwWte1UOw1mYRbfuSICbcVTshA2S5/BNZ7IVMl0X4wA2HPHc3mxN6rvrU4rS3+/Is2QsVw==";
       };
     };
     "graphql-cli-prepare-1.4.19" = {
@@ -15155,31 +15200,22 @@ let
         sha512 = "uNhyMqj30M4KLkD/gGEEr6cPuVX/jtm0C9O5Bj9V2jFhN5IdHXWJx+fC/p/xxh82iOuR8uibKNCXzwA7R6F6IA==";
       };
     };
-    "graphql-config-extension-prisma-0.2.5" = {
+    "graphql-config-extension-prisma-0.3.0" = {
       name = "graphql-config-extension-prisma";
       packageName = "graphql-config-extension-prisma";
-      version = "0.2.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-config-extension-prisma/-/graphql-config-extension-prisma-0.2.5.tgz";
-        sha512 = "7Qh3TzZS3hwZpJbTNfTHXBM6UbzV7DMik9Mc95Rz76yTAs7Wr83xBFsH4Ap1NWlqBgANfO3cLLI4YomDJmO5SA==";
-      };
-    };
-    "graphql-extensions-0.5.0" = {
-      name = "graphql-extensions";
-      packageName = "graphql-extensions";
-      version = "0.5.0";
+      version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.5.0.tgz";
-        sha512 = "2i0rpe4/D8jZj6XmxXGLFDAsGLhkFrSdpS5WfvTAzoXOc52hUAxNdsbgRQGeKMFhmanqA6FDXxO/s+BtPHChVA==";
+        url = "https://registry.npmjs.org/graphql-config-extension-prisma/-/graphql-config-extension-prisma-0.3.0.tgz";
+        sha512 = "bOufkkog0cSfHJ9gVD3Wy+KHmkSTHWcFfPaV/NVpIvfJx15gU0/CzuC6lcTjioWmn+UGzYdoqmP7OrJAWT57sw==";
       };
     };
-    "graphql-extensions-0.5.1" = {
+    "graphql-extensions-0.5.2" = {
       name = "graphql-extensions";
       packageName = "graphql-extensions";
-      version = "0.5.1";
+      version = "0.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.5.1.tgz";
-        sha512 = "zuXdJ+zbtm05UNwgTPHP40qh0p7Eqf+vfWiZ+K6ZmYoQXwrWOebR5pwNSS3SVxv7LORtnzJA0CCMTjs+CbIxnA==";
+        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.5.2.tgz";
+        sha512 = "D/FAvjYEZ8GM3vfALxRvItozy5iLUfzyoauE2lli+0OuUBCAZDLP0fgqeTFK93NnQX/XSjBVGhcuDWBB7JesEw==";
       };
     };
     "graphql-import-0.4.5" = {
@@ -15794,15 +15830,6 @@ let
         sha1 = "2c05ffaef90b68e860f3fd2b54ef580989277ee2";
       };
     };
-    "he-1.1.1" = {
-      name = "he";
-      packageName = "he";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/he/-/he-1.1.1.tgz";
-        sha1 = "93410fd21b009735151f8868c2f271f3427e23fd";
-      };
-    };
     "he-1.2.0" = {
       name = "he";
       packageName = "he";
@@ -16010,13 +16037,13 @@ let
         sha512 = "eTEUzz8VdWYp+w/KUdb99kwao4reR64epUySyZkQeepcyzPQ2n2EPWzibf6QDxmkGy10Kr+CKxYqI3izSbmhJQ==";
       };
     };
-    "htmlparser2-3.10.0" = {
+    "htmlparser2-3.10.1" = {
       name = "htmlparser2";
       packageName = "htmlparser2";
-      version = "3.10.0";
+      version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz";
-        sha512 = "J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==";
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz";
+        sha512 = "IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==";
       };
     };
     "htmlparser2-3.7.3" = {
@@ -16091,13 +16118,13 @@ let
         sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
       };
     };
-    "http-errors-1.7.1" = {
+    "http-errors-1.7.2" = {
       name = "http-errors";
       packageName = "http-errors";
-      version = "1.7.1";
+      version = "1.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.1.tgz";
-        sha512 = "jWEUgtZWGSMba9I1N3gc1HmvpBUaNC9vDdA46yScAdp+C5rdEuKWUBLWTQpW9FwSWSbYYs++b6SDCxf9UEJzfw==";
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz";
+        sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
       };
     };
     "http-headers-3.0.2" = {
@@ -16262,13 +16289,13 @@ let
         sha512 = "er9ZPrOypGpDVMNC3l08JT1rLx/Q6RJnFu6z0iGXvdDxudAtJ90hgoIQfl6qdyjC8pD2t1KXaKRwRSdznhX66A==";
       };
     };
-    "hyperdrive-http-4.3.4" = {
+    "hyperdrive-http-4.4.0" = {
       name = "hyperdrive-http";
       packageName = "hyperdrive-http";
-      version = "4.3.4";
+      version = "4.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hyperdrive-http/-/hyperdrive-http-4.3.4.tgz";
-        sha512 = "wSFcEmkocLRzk+0DjPRXSp1U+Pl8V5GShV6Clx63ptSmtsaNHgKuy5VY77lCtLPBW4AZIzn9P/Pmyeb58Q0NfQ==";
+        url = "https://registry.npmjs.org/hyperdrive-http/-/hyperdrive-http-4.4.0.tgz";
+        sha512 = "utyYm6uIJ0AqSVLHVgk2VdEjy77f2X8YxAqnfLO/TqVfQDc44nI131mS4/mpmigYk24qwyelvg7y9CEPXfbVnA==";
       };
     };
     "hyperdrive-network-speed-2.1.0" = {
@@ -17144,6 +17171,15 @@ let
         sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
       };
     };
+    "is-buffer-2.0.3" = {
+      name = "is-buffer";
+      packageName = "is-buffer";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz";
+        sha512 = "U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==";
+      };
+    };
     "is-callable-1.1.4" = {
       name = "is-callable";
       packageName = "is-callable";
@@ -17666,15 +17702,6 @@ let
         sha512 = "Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==";
       };
     };
-    "is-relative-url-2.0.0" = {
-      name = "is-relative-url";
-      packageName = "is-relative-url";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-relative-url/-/is-relative-url-2.0.0.tgz";
-        sha1 = "72902d7fe04b3d4792e7db15f9db84b7204c9cef";
-      };
-    };
     "is-resolvable-1.1.0" = {
       name = "is-resolvable";
       packageName = "is-resolvable";
@@ -19359,15 +19386,6 @@ let
         sha1 = "bf967ba0dd31faaf09ab5bdb3676ad7f2aa18493";
       };
     };
-    "link-check-4.4.4" = {
-      name = "link-check";
-      packageName = "link-check";
-      version = "4.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/link-check/-/link-check-4.4.4.tgz";
-        sha512 = "yvowNBZEMOFH9nGLiJ5/YV68PBMVTo4opC2SzcACO8g4gSPTB9Rwa5GIziOX9Z5Er3Yf01DHoOyVV2LeApIw8w==";
-      };
-    };
     "linkify-it-2.1.0" = {
       name = "linkify-it";
       packageName = "linkify-it";
@@ -21042,15 +21060,6 @@ let
         sha512 = "7pxkHuvqTOu3iwVGmDPeYjQg+AIS9VQxzyLP9JCg9lBjgPAJXGEkChK6A2iFuj3tS0GV3HG2u5AMNhcQqwxpJw==";
       };
     };
-    "markdown-link-extractor-1.2.0" = {
-      name = "markdown-link-extractor";
-      packageName = "markdown-link-extractor";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.2.0.tgz";
-        sha512 = "1unDsoZSSiF5oGFu/2y8M3E2I2YhWT/jiKGTQxa1IAmkC1OcyHo9OYNu3qCuVSj5Ty87+mFtgQxJPUfc08WirA==";
-      };
-    };
     "markdown-table-0.4.0" = {
       name = "markdown-table";
       packageName = "markdown-table";
@@ -21069,15 +21078,6 @@ let
         sha512 = "ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==";
       };
     };
-    "marked-0.4.0" = {
-      name = "marked";
-      packageName = "marked";
-      version = "0.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/marked/-/marked-0.4.0.tgz";
-        sha512 = "tMsdNBgOsrUophCAFQl0XPe6Zqk/uy9gnue+jIIKhykO51hxyu6uNx7zBPy0+y/WKYVZZMspV9YeXLNdKk+iYw==";
-      };
-    };
     "matchdep-2.0.0" = {
       name = "matchdep";
       packageName = "matchdep";
@@ -21582,15 +21582,6 @@ let
         sha512 = "BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==";
       };
     };
-    "mime-db-1.37.0" = {
-      name = "mime-db";
-      packageName = "mime-db";
-      version = "1.37.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
-        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
-      };
-    };
     "mime-db-1.38.0" = {
       name = "mime-db";
       packageName = "mime-db";
@@ -21618,13 +21609,13 @@ let
         sha512 = "lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==";
       };
     };
-    "mime-types-2.1.21" = {
+    "mime-types-2.1.22" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.21";
+      version = "2.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
-        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz";
+        sha512 = "aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==";
       };
     };
     "mimelib-0.3.1" = {
@@ -22239,13 +22230,13 @@ let
         sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
       };
     };
-    "multiserver-3.1.2" = {
+    "multiserver-3.2.0" = {
       name = "multiserver";
       packageName = "multiserver";
-      version = "3.1.2";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/multiserver/-/multiserver-3.1.2.tgz";
-        sha512 = "6jXoKH0vGfm5NxwaSkReuD+3VB9mq25WYsdMgB7YC43XboVCufhmFQ724DVz0Jx8Z8RNPKvjVfCiuXpsKgwV0Q==";
+        url = "https://registry.npmjs.org/multiserver/-/multiserver-3.2.0.tgz";
+        sha512 = "cJ9nnh/+aMwOpegTPSLC1zFRFJKn6f3va6WI0WPV84R55Llh8TinhpH8ZrpYfRofETykRWIvWhX6sQRZg04F1Q==";
       };
     };
     "multiserver-address-1.0.1" = {
@@ -22945,6 +22936,15 @@ let
         sha512 = "Li9NfZTL83/URoUEWly+iHJeOcZRBYUaeIL4MImnB4r21oe/xpkR6JRHjdNjLf1rMtO0tgPyOvuGW4Beytaaow==";
       };
     };
+    "node-environment-flags-1.0.4" = {
+      name = "node-environment-flags";
+      packageName = "node-environment-flags";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.4.tgz";
+        sha512 = "M9rwCnWVLW7PX+NUWe3ejEdiLYinRpsEre9hMkU/6NS4h+EEulYaDH1gCEZ2gyXsmw+RXYDaV2JkkTNcsPDJ0Q==";
+      };
+    };
     "node-fetch-1.7.3" = {
       name = "node-fetch";
       packageName = "node-fetch";
@@ -24782,13 +24782,13 @@ let
         sha1 = "79b302fc144cdfbb4ab6feba7040e6a5d99c79c7";
       };
     };
-    "pacote-9.4.1" = {
+    "pacote-9.5.0" = {
       name = "pacote";
       packageName = "pacote";
-      version = "9.4.1";
+      version = "9.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pacote/-/pacote-9.4.1.tgz";
-        sha512 = "YKSRsQqmeHxgra0KCdWA2FtVxDPUlBiCdmew+mSe44pzlx5t1ViRMWiQg18T+DREA+vSqYfKzynaToFR4hcKHw==";
+        url = "https://registry.npmjs.org/pacote/-/pacote-9.5.0.tgz";
+        sha512 = "aUplXozRbzhaJO48FaaeClmN+2Mwt741MC6M3bevIGZwdCaP7frXzbUOfOWa91FPHoLITzG0hYaKY363lxO3bg==";
       };
     };
     "pad-0.0.5" = {
@@ -24872,13 +24872,13 @@ let
         sha1 = "fedd4d2bf193a77745fe71e371d73c3307d9c751";
       };
     };
-    "parse-asn1-5.1.3" = {
+    "parse-asn1-5.1.4" = {
       name = "parse-asn1";
       packageName = "parse-asn1";
-      version = "5.1.3";
+      version = "5.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.3.tgz";
-        sha512 = "VrPoetlz7B/FqjBLD2f5wBVZvsZVLnRUrxVLfRYhGXCODa/NWE4p3Wp+6+aV3ZPL3KM7/OZmxDIwwijD7yuucg==";
+        url = "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz";
+        sha512 = "Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==";
       };
     };
     "parse-entities-1.2.0" = {
@@ -25673,13 +25673,13 @@ let
         sha512 = "klfGoOsP6sJH7ON796G4xoUSx2fkpFgKHO4YVVO2zmz31jR+etzc/QzGJILaOIiCD6HTCFgkPx+XN8nk+ruqPw==";
       };
     };
-    "pirates-4.0.0" = {
+    "pirates-4.0.1" = {
       name = "pirates";
       packageName = "pirates";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pirates/-/pirates-4.0.0.tgz";
-        sha512 = "8t5BsXy1LUIjn3WWOlOuFDuKswhQb/tkak641lvBgmPOBUQHXveORtlMCp6OdPV1dtuTaEahKA8VNz6uLfKBtA==";
+        url = "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz";
+        sha512 = "WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==";
       };
     };
     "pkg-dir-2.0.0" = {
@@ -26592,13 +26592,13 @@ let
         sha512 = "XZrf2080oR81mY8/OC8al68HiwBm0nXlFE727JIia0ZbNqwuV4MyRYk6E0+OIa6/9KEYxZrcAmoBs3EW1cCvnA==";
       };
     };
-    "prisma-yml-1.20.0-beta.18" = {
+    "prisma-yml-1.26.6" = {
       name = "prisma-yml";
       packageName = "prisma-yml";
-      version = "1.20.0-beta.18";
+      version = "1.26.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prisma-yml/-/prisma-yml-1.20.0-beta.18.tgz";
-        sha512 = "wI/lOQrD78de2+ZNzJlbEYcYiUANtpdyT0VzAS+YbF5+1/O+shOnpwYsBtjrVL5Er0RwMkwH7j+oZQM61ENBMQ==";
+        url = "https://registry.npmjs.org/prisma-yml/-/prisma-yml-1.26.6.tgz";
+        sha512 = "dWBTeQbyWr/4d97ZKjxFPvIHytnNlBsNzgsJC1eew3qoZ9A8vtRIFhsnPiD3kYIf67w56i2QO2O5Infe2FzMww==";
       };
     };
     "prismjs-1.15.0" = {
@@ -26790,13 +26790,13 @@ let
         sha1 = "26a5d6ee8c7dee4cb12208305acfb93ba382a9ee";
       };
     };
-    "prop-types-15.7.1" = {
+    "prop-types-15.7.2" = {
       name = "prop-types";
       packageName = "prop-types";
-      version = "15.7.1";
+      version = "15.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prop-types/-/prop-types-15.7.1.tgz";
-        sha512 = "f8Lku2z9kERjOCcnDOPm68EBJAO2K00Q5mSgPAUE/gJuBgsYLbVy6owSrtcHj90zt8PvW+z0qaIIgsIhHOa1Qw==";
+        url = "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz";
+        sha512 = "8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==";
       };
     };
     "properties-1.2.1" = {
@@ -28050,13 +28050,13 @@ let
         sha1 = "fa9e319ffdeeeb35b27296ef0f3d374dac2f52a7";
       };
     };
-    "react-is-16.8.1" = {
+    "react-is-16.8.2" = {
       name = "react-is";
       packageName = "react-is";
-      version = "16.8.1";
+      version = "16.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-is/-/react-is-16.8.1.tgz";
-        sha512 = "ioMCzVDWvCvKD8eeT+iukyWrBGrA3DiFYkXfBsVYIRdaREZuBjENG+KjrikavCLasozqRWTwFUagU/O4vPpRMA==";
+        url = "https://registry.npmjs.org/react-is/-/react-is-16.8.2.tgz";
+        sha512 = "D+NxhSR2HUCjYky1q1DwpNUD44cDpUXzSmmFyC3ug1bClcU/iDNy0YNn1iwme28fn+NFhpA13IndOd42CrFb+Q==";
       };
     };
     "read-1.0.7" = {
@@ -28482,13 +28482,13 @@ let
         sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
       };
     };
-    "regexp-tree-0.1.1" = {
+    "regexp-tree-0.1.5" = {
       name = "regexp-tree";
       packageName = "regexp-tree";
-      version = "0.1.1";
+      version = "0.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.1.tgz";
-        sha512 = "HwRjOquc9QOwKTgbxvZTcddS5mlNlwePMQ3NFL8broajMLD5CXDAqas8Y5yxJH5QtZp5iRor3YCILd5pz71Cgw==";
+        url = "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.5.tgz";
+        sha512 = "nUmxvfJyAODw+0B13hj8CFVAxhe7fDEAgJgaotBu3nnR+IgGgZq59YedJP5VYTlkEfqjuK6TuRpnymKdatLZfQ==";
       };
     };
     "regexp.prototype.flags-1.2.0" = {
@@ -28806,31 +28806,31 @@ let
         sha1 = "5d36bb57961c673aa5b788dbc8141fdf23b44e08";
       };
     };
-    "request-promise-4.2.2" = {
+    "request-promise-4.2.4" = {
       name = "request-promise";
       packageName = "request-promise";
-      version = "4.2.2";
+      version = "4.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz";
-        sha1 = "d1ea46d654a6ee4f8ee6a4fea1018c22911904b4";
+        url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.4.tgz";
+        sha512 = "8wgMrvE546PzbR5WbYxUQogUnUDfM0S7QIFZMID+J73vdFARkFy+HElj4T+MWYhpXwlLp0EQ8Zoj8xUA0he4Vg==";
       };
     };
-    "request-promise-core-1.1.1" = {
+    "request-promise-core-1.1.2" = {
       name = "request-promise-core";
       packageName = "request-promise-core";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz";
-        sha1 = "3eee00b2c5aa83239cfb04c5700da36f81cd08b6";
+        url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz";
+        sha512 = "UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==";
       };
     };
-    "request-promise-native-1.0.5" = {
+    "request-promise-native-1.0.7" = {
       name = "request-promise-native";
       packageName = "request-promise-native";
-      version = "1.0.5";
+      version = "1.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.5.tgz";
-        sha1 = "5281770f68e0c9719e5163fd3fab482215f4fda5";
+        url = "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz";
+        sha512 = "rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==";
       };
     };
     "requestretry-3.1.0" = {
@@ -28932,15 +28932,6 @@ let
         sha512 = "3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==";
       };
     };
-    "resolve-1.7.1" = {
-      name = "resolve";
-      packageName = "resolve";
-      version = "1.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz";
-        sha512 = "c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==";
-      };
-    };
     "resolve-cwd-2.0.0" = {
       name = "resolve-cwd";
       packageName = "resolve-cwd";
@@ -29328,13 +29319,13 @@ let
         sha512 = "SxrAIgpH/B5/W4SeULgreOemxcpEgKs2gcD42zXw50bhqGWmcnlXneVInQpAqzA/cIly4bJrOpeelmB9p4YXSQ==";
       };
     };
-    "rollup-pluginutils-2.3.3" = {
+    "rollup-pluginutils-2.4.1" = {
       name = "rollup-pluginutils";
       packageName = "rollup-pluginutils";
-      version = "2.3.3";
+      version = "2.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.3.tgz";
-        sha512 = "2XZwja7b6P5q4RZ5FhyX1+f46xi1Z3qBKigLRZ6VTZjwbN0K1IFGMlwm06Uu0Emcre2Z63l77nq/pzn+KxIEoA==";
+        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.4.1.tgz";
+        sha512 = "wesMQ9/172IJDIW/lYWm0vW0LiKe5Ekjws481R7z9WTRtmO59cqyM/2uUlxvf6yzm/fElFmHUobeQOYz46dZJw==";
       };
     };
     "root-check-1.0.0" = {
@@ -30102,6 +30093,15 @@ let
         sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
       };
     };
+    "setprototypeof-1.1.1" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
+        sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
+      };
+    };
     "sha.js-2.4.11" = {
       name = "sha.js";
       packageName = "sha.js";
@@ -30651,13 +30651,13 @@ let
         sha512 = "SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==";
       };
     };
-    "snyk-1.127.0" = {
+    "snyk-1.134.2" = {
       name = "snyk";
       packageName = "snyk";
-      version = "1.127.0";
+      version = "1.134.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk/-/snyk-1.127.0.tgz";
-        sha512 = "+Q5coBgxXa/4sapCc4QvledVGKb1j1g85793AcSY7uDVuNeSgYInPrDHv4t2Xe7boYMBXbNqjhuazQ0DwRcBzg==";
+        url = "https://registry.npmjs.org/snyk/-/snyk-1.134.2.tgz";
+        sha512 = "WGR3TTZxXOdALEEcQtADFEOHaanhbzwLvS6gyg5vF6Akj7qRAwIIXYBUycbNdAax1mylAsXCzR352dkTwKD9lg==";
       };
     };
     "snyk-config-2.2.0" = {
@@ -30669,6 +30669,15 @@ let
         sha512 = "mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==";
       };
     };
+    "snyk-config-2.2.1" = {
+      name = "snyk-config";
+      packageName = "snyk-config";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.1.tgz";
+        sha512 = "eCsFKHHE4J2DpD/1NzAtCmkmVDK310OXRtmoW0RlLnld1ESprJ5A/QRJ5Zxx1JbA8gjuwERY5vfUFA8lEJeopA==";
+      };
+    };
     "snyk-docker-plugin-1.12.3" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
@@ -30678,13 +30687,13 @@ let
         sha512 = "ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q==";
       };
     };
-    "snyk-docker-plugin-1.21.2" = {
+    "snyk-docker-plugin-1.22.0" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
-      version = "1.21.2";
+      version = "1.22.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.21.2.tgz";
-        sha512 = "pOa+3Dj6pBbJSx8NvjT74qGFHr2faIPNPdZm8k6p1JxZgy27OyJdBPJdFgj2ucpPAHAnKJpcIIeiPz4h5zUahQ==";
+        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.22.0.tgz";
+        sha512 = "bykxNtfeWQNFjF6gv8u8w+TOa4fdr+teLm+DkvYlWkdlvaw5m4yywRI5USve4X6S9p4G+Fw4/wfjXx7LgCcxrQ==";
       };
     };
     "snyk-go-plugin-1.6.0" = {
@@ -30777,6 +30786,24 @@ let
         sha512 = "3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==";
       };
     };
+    "snyk-nuget-plugin-1.7.2" = {
+      name = "snyk-nuget-plugin";
+      packageName = "snyk-nuget-plugin";
+      version = "1.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.7.2.tgz";
+        sha512 = "zmYD9veH7OeIqGnZHiGv8c8mKtmYrxo2o7P4lNUkpHdCMMsar7moRJxGgO9WlcIrwAGjIhMdP9fUvJ+jVDEteQ==";
+      };
+    };
+    "snyk-paket-parser-1.4.3" = {
+      name = "snyk-paket-parser";
+      packageName = "snyk-paket-parser";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.4.3.tgz";
+        sha512 = "6m736zGVoeT/zS9KEtlmqTSPEPjAfLe8iYoQ3AwbyxDhzuLY49lTaV67MyZtGwjhi1x4KBe+XOgeWwyf6Avf/A==";
+      };
+    };
     "snyk-php-plugin-1.5.1" = {
       name = "snyk-php-plugin";
       packageName = "snyk-php-plugin";
@@ -31047,13 +31074,13 @@ let
         sha512 = "+2r83WaRT3PXYoO/1z+RDEBE7Z2f9YcdQnJ0K/ncXXbV5gJ6wYfNAebYFYiiUjM6E4JyXnPY8cimwyvFYHVUUA==";
       };
     };
-    "socks-2.3.1" = {
+    "socks-2.3.2" = {
       name = "socks";
       packageName = "socks";
-      version = "2.3.1";
+      version = "2.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socks/-/socks-2.3.1.tgz";
-        sha512 = "srMrPbfQnLOVRDv/sQvBeM4rvFvKT4ErhdcXejaLHLQFPmCMt5XPF0TeE9Uv3iVa+GpXDevs1VgqZgwykr78Yw==";
+        url = "https://registry.npmjs.org/socks/-/socks-2.3.2.tgz";
+        sha512 = "pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ==";
       };
     };
     "socks-proxy-agent-3.0.1" = {
@@ -31110,13 +31137,13 @@ let
         sha512 = "UMmCHovws/sxIBZsIRhIl8uRPou/RFDD0vVop81T1hG106NLLgqajKKuHAOtAP6hflnZ0UrVA2VFwddTd/NQyA==";
       };
     };
-    "sodium-native-2.2.6" = {
+    "sodium-native-2.3.0" = {
       name = "sodium-native";
       packageName = "sodium-native";
-      version = "2.2.6";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sodium-native/-/sodium-native-2.2.6.tgz";
-        sha512 = "PgtGv6TdyoES2jmniigUWTHks4vzette0CNoOyn8LpTfSUoTDJGJv4X123zXrr/zdmUPij0IPAmWLwSp+U22ig==";
+        url = "https://registry.npmjs.org/sodium-native/-/sodium-native-2.3.0.tgz";
+        sha512 = "TYId1m2iLXXot2Q3KA6u8Ti9pmL24T2cm8nb9OUGFFmTxdw4I+vnkjcPVA4LT1acw+A86iJkEn+8iV51jcTWUg==";
       };
     };
     "sodium-universal-2.0.0" = {
@@ -31560,13 +31587,13 @@ let
         sha512 = "/4nFP7yj1JD5jrwX9bHG2nipBefl++xXXbNWD14eL+Ohs3X8kdmJeBKnHgiIF7Je4HQOI31OmEIdyyLKum5niQ==";
       };
     };
-    "ssb-ebt-5.3.11" = {
+    "ssb-ebt-5.4.1" = {
       name = "ssb-ebt";
       packageName = "ssb-ebt";
-      version = "5.3.11";
+      version = "5.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-5.3.11.tgz";
-        sha512 = "ivGANboEZHRwf/qD6g4+R3LoRYRBVITmGk0mHl/Y1e6VPGywtSJXi0Q270CQFTdcUc5inhAQ7PPnSVhbzFN+SQ==";
+        url = "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-5.4.1.tgz";
+        sha512 = "ddXLpLmVHSChKb66vkGBxV/GI0hlqaYho0rfw83ZmdQAqMjavlvtj/JPL8EMToN+eIq6iAagmSXX2p+a6GvM5g==";
       };
     };
     "ssb-friends-3.1.13" = {
@@ -31830,13 +31857,13 @@ let
         sha512 = "Qe8QntFrrpWTnHwvwj2FZTgv+PKIsp0B9VxLzLLbSpPXWOgRgc5LVj/aTiSfK1RqIeF9jeC1UeOH8Q8y60A7og==";
       };
     };
-    "static-eval-2.0.0" = {
+    "static-eval-2.0.1" = {
       name = "static-eval";
       packageName = "static-eval";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/static-eval/-/static-eval-2.0.0.tgz";
-        sha512 = "6flshd3F1Gwm+Ksxq463LtFd1liC77N/PX1FVVc3OzL3hAmo2fwHFbuArkcfi7s9rTNsLEhcRmXGFZhlgy40uw==";
+        url = "https://registry.npmjs.org/static-eval/-/static-eval-2.0.1.tgz";
+        sha512 = "1JJ8ADJ7UB//CRqocI6j4WxGvSqQHX14Fz0gXDNvRA6Y1JIAI/lMNdqn1lpnaA6ugQ0fMH0uBB955DkwhKActw==";
       };
     };
     "static-extend-0.1.2" = {
@@ -32577,13 +32604,13 @@ let
         sha1 = "dd802425e0f53dc4a6e7aca3752901a1ccda7af5";
       };
     };
-    "stylehacks-4.0.2" = {
+    "stylehacks-4.0.3" = {
       name = "stylehacks";
       packageName = "stylehacks";
-      version = "4.0.2";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.2.tgz";
-        sha512 = "AZwvn2b3aNKK1yp+VgNPOuC2jIJOvh9PAiCq2gjDBW1WkQxQUksR1RugOJRIOhMYTGHZeoMcMQKp3/qaS3evNg==";
+        url = "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz";
+        sha512 = "7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==";
       };
     };
     "subarg-1.0.0" = {
@@ -32739,22 +32766,22 @@ let
         sha512 = "Ts0Mu/A1S1aZxEJNG88I4Oc9rcZSBFNac5e27yh4j2mqbhZSSzR1Ah79EYwSn9Zuh7lrlGD2cVGzw1RKGzyLSg==";
       };
     };
-    "supports-color-5.4.0" = {
+    "supports-color-5.5.0" = {
       name = "supports-color";
       packageName = "supports-color";
-      version = "5.4.0";
+      version = "5.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz";
-        sha512 = "zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==";
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
       };
     };
-    "supports-color-5.5.0" = {
+    "supports-color-6.0.0" = {
       name = "supports-color";
       packageName = "supports-color";
-      version = "5.5.0";
+      version = "6.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
-        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz";
+        sha512 = "on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==";
       };
     };
     "supports-color-6.1.0" = {
@@ -32992,13 +33019,13 @@ let
         sha1 = "2e7ce0a31df09f8d6851664a71842e0ca5057af7";
       };
     };
-    "tape-4.10.0" = {
+    "tape-4.10.1" = {
       name = "tape";
       packageName = "tape";
-      version = "4.10.0";
+      version = "4.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tape/-/tape-4.10.0.tgz";
-        sha512 = "3PgdF0vcZ1t7HEYbpTXdo58KXi19QCGcZfj07A53M2DH14P2Fw3cB3f9pF7e/Br2z+PQm7xlvhjzHH3D8ti99g==";
+        url = "https://registry.npmjs.org/tape/-/tape-4.10.1.tgz";
+        sha512 = "G0DywYV1jQeY3axeYnXUOt6ktnxS9OPJh97FGR3nrua8lhWi1zPflLxcAHavZ7Jf3qUfY7cxcVIVFa4mY2IY1w==";
       };
     };
     "tar-0.1.17" = {
@@ -35935,13 +35962,13 @@ let
         sha1 = "f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8";
       };
     };
-    "webassemblyjs-1.8.1" = {
+    "webassemblyjs-1.8.3" = {
       name = "webassemblyjs";
       packageName = "webassemblyjs";
-      version = "1.8.1";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.8.1.tgz";
-        sha512 = "YkDZ3S0F13Bb69q75SVMLwg807QIubGNX42xq/XYeksF6UuXjSyWFKxGFqth7jvD+B8oJqjWbSoLpOiENyHyPg==";
+        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.8.3.tgz";
+        sha512 = "HBAmsgCj2NmMe3u5zV4/pJDSDyHYSsY75kg5cdox/aE1jS5hPUi41Z+DuIeSJOjjikOGY/t71ygAifmFr07ZFg==";
       };
     };
     "webidl-conversions-2.0.1" = {
@@ -35962,13 +35989,13 @@ let
         sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==";
       };
     };
-    "webpack-4.29.3" = {
+    "webpack-4.29.5" = {
       name = "webpack";
       packageName = "webpack";
-      version = "4.29.3";
+      version = "4.29.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-4.29.3.tgz";
-        sha512 = "xPJvFeB+8tUflXFq+OgdpiSnsCD5EANyv56co5q8q8+YtEasn5Sj3kzY44mta+csCIEB0vneSxnuaHkOL2h94A==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-4.29.5.tgz";
+        sha512 = "DuWlYUT982c7XVHodrLO9quFbNpVq5FNxLrMUfYUTlgKW0+yPimynYf1kttSQpEneAL1FH3P3OLNgkyImx8qIQ==";
       };
     };
     "webpack-cli-3.2.3" = {
@@ -36403,6 +36430,15 @@ let
         sha1 = "5fc03828e264cea3fe91455476f7a3c566cb0757";
       };
     };
+    "write-1.0.3" = {
+      name = "write";
+      packageName = "write";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write/-/write-1.0.3.tgz";
+        sha512 = "/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==";
+      };
+    };
     "write-file-atomic-1.3.4" = {
       name = "write-file-atomic";
       packageName = "write-file-atomic";
@@ -36493,13 +36529,13 @@ let
         sha512 = "jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==";
       };
     };
-    "ws-6.1.3" = {
+    "ws-6.1.4" = {
       name = "ws";
       packageName = "ws";
-      version = "6.1.3";
+      version = "6.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ws/-/ws-6.1.3.tgz";
-        sha512 = "tbSxiT+qJI223AP4iLfQbkbxkwdFcneYinM2+x46Gx2wgvbaOMO36czfdfVUBRTHvzAMRhDd98sA5d/BuWbQdg==";
+        url = "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz";
+        sha512 = "eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==";
       };
     };
     "wtf-8-1.0.0" = {
@@ -36989,6 +37025,15 @@ let
         sha512 = "yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==";
       };
     };
+    "yargs-unparser-1.5.0" = {
+      name = "yargs-unparser";
+      packageName = "yargs-unparser";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.5.0.tgz";
+        sha512 = "HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==";
+      };
+    };
     "yauzl-2.10.0" = {
       name = "yauzl";
       packageName = "yauzl";
@@ -37204,8 +37249,8 @@ in
       sources."jsonfile-2.4.0"
       sources."jsprim-1.4.1"
       sources."klaw-1.3.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -37287,7 +37332,7 @@ in
       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-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-string-regexp-1.0.5"
       sources."fs.realpath-1.0.0"
@@ -37588,7 +37633,7 @@ in
       sources."os-browserify-0.3.0"
       sources."pako-1.0.8"
       sources."parents-1.0.1"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."path-browserify-0.0.1"
       sources."path-is-absolute-1.0.1"
       sources."path-parse-1.0.6"
@@ -37834,8 +37879,8 @@ in
         ];
       })
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -38109,9 +38154,9 @@ in
       sources."color-name-1.1.3"
       sources."colors-1.3.3"
       sources."commander-2.19.0"
-      sources."debug-3.1.0"
+      sources."debug-3.2.6"
       sources."escape-string-regexp-1.0.5"
-      sources."follow-redirects-1.6.1"
+      sources."follow-redirects-1.7.0"
       sources."has-flag-3.0.0"
       sources."humanize-plus-1.8.2"
       sources."is-buffer-1.1.6"
@@ -38119,7 +38164,7 @@ in
       sources."lodash-3.10.1"
       sources."log-symbols-2.2.0"
       sources."mimic-fn-1.2.0"
-      sources."ms-2.0.0"
+      sources."ms-2.1.1"
       sources."number-is-nan-1.0.1"
       sources."onetime-2.0.1"
       sources."ora-1.4.0"
@@ -38157,14 +38202,14 @@ in
       sources."colorspace-1.1.1"
       sources."commander-2.19.0"
       sources."core-util-is-1.0.2"
-      sources."debug-3.1.0"
+      sources."debug-3.2.6"
       sources."diagnostics-1.1.1"
       sources."enabled-1.0.2"
       sources."env-variable-0.0.5"
       sources."eventemitter3-3.1.0"
       sources."fast-safe-stringify-2.0.6"
       sources."fecha-2.3.3"
-      sources."follow-redirects-1.6.1"
+      sources."follow-redirects-1.7.0"
       sources."http-proxy-1.17.0"
       sources."inherits-2.0.3"
       sources."is-arrayish-0.3.2"
@@ -38172,14 +38217,10 @@ in
       sources."isarray-1.0.0"
       sources."kuler-1.0.1"
       sources."lodash-4.17.11"
-      (sources."logform-1.10.0" // {
-        dependencies = [
-          sources."ms-2.1.1"
-        ];
-      })
+      sources."logform-1.10.0"
       sources."lynx-0.2.0"
       sources."mersenne-0.0.4"
-      sources."ms-2.0.0"
+      sources."ms-2.1.1"
       sources."one-time-0.0.4"
       sources."process-nextick-args-2.0.0"
       sources."readable-stream-2.3.6"
@@ -38307,7 +38348,7 @@ in
       sources."color-name-1.1.3"
       sources."combine-source-map-0.8.0"
       sources."combined-stream-1.0.7"
-      sources."compressible-2.0.15"
+      sources."compressible-2.0.16"
       sources."compression-1.7.3"
       sources."concat-map-0.0.1"
       (sources."concat-stream-1.5.2" // {
@@ -38516,8 +38557,8 @@ in
       sources."methods-1.1.2"
       sources."miller-rabin-4.0.1"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.0.4"
@@ -38555,7 +38596,7 @@ in
       sources."package-json-4.0.1"
       sources."pako-0.2.9"
       sources."parents-1.0.1"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."parseurl-1.3.2"
       sources."path-browserify-0.0.1"
       sources."path-is-absolute-1.0.1"
@@ -39075,7 +39116,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.1"
-      sources."@types/node-11.9.3"
+      sources."@types/node-11.9.4"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -39141,8 +39182,8 @@ in
       sources."lru-cache-4.1.5"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       sources."ms-2.1.1"
@@ -39304,7 +39345,7 @@ in
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."cross-spawn-5.1.0"
       sources."escape-string-regexp-1.0.5"
       sources."fs-extra-4.0.3"
@@ -39360,10 +39401,10 @@ in
   dat = nodeEnv.buildNodePackage {
     name = "dat";
     packageName = "dat";
-    version = "13.11.4";
+    version = "13.11.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/dat/-/dat-13.11.4.tgz";
-      sha512 = "+OSlh8PNLlCxLzOC8DVaQ1LgDPynCtarvuK6R76Cr7i2EbkdRBZkodPZMpWXYiTxIijt+nyWMLGn5HXhFsxhzg==";
+      url = "https://registry.npmjs.org/dat/-/dat-13.11.5.tgz";
+      sha512 = "ORD9AdA61EiiuO5hoPkQgDgaJruAykPHXl0r9cRsIzKgGM/BCe7g957REaxCr2nilT+YWhlTloitAPc2B03DSg==";
     };
     dependencies = [
       sources."abstract-random-access-1.1.2"
@@ -39400,7 +39441,11 @@ in
           sources."varint-4.0.1"
         ];
       })
-      sources."bittorrent-dht-7.10.0"
+      (sources."bittorrent-dht-7.10.0" // {
+        dependencies = [
+          sources."debug-3.2.6"
+        ];
+      })
       sources."blake2b-2.1.3"
       sources."blake2b-wasm-1.1.7"
       sources."body-0.1.0"
@@ -39443,12 +39488,12 @@ in
       sources."crypto-random-string-1.0.0"
       sources."cycle-1.0.3"
       sources."dashdash-1.14.1"
-      (sources."dat-dns-3.1.0" // {
+      sources."dat-dns-3.1.0"
+      (sources."dat-doctor-2.1.1" // {
         dependencies = [
-          sources."debug-4.1.1"
+          sources."debug-3.2.6"
         ];
       })
-      sources."dat-doctor-2.1.1"
       sources."dat-encoding-5.0.1"
       sources."dat-ignore-2.1.1"
       (sources."dat-json-1.0.2" // {
@@ -39456,26 +39501,18 @@ in
           sources."dat-encoding-4.0.2"
         ];
       })
-      (sources."dat-link-resolve-2.3.0" // {
-        dependencies = [
-          sources."debug-4.1.1"
-        ];
-      })
+      sources."dat-link-resolve-2.3.0"
       (sources."dat-log-1.2.0" // {
         dependencies = [
           sources."neat-log-2.4.0"
         ];
       })
-      (sources."dat-node-3.5.14" // {
-        dependencies = [
-          sources."debug-4.1.1"
-        ];
-      })
+      sources."dat-node-3.5.14"
       sources."dat-registry-4.0.0"
       sources."dat-secret-storage-4.0.1"
       sources."dat-storage-1.1.1"
       sources."dat-swarm-defaults-1.0.2"
-      sources."debug-3.2.6"
+      sources."debug-4.1.1"
       sources."decompress-response-3.3.0"
       sources."deep-equal-0.2.2"
       sources."deep-extend-0.6.0"
@@ -39489,11 +39526,7 @@ in
           sources."thunky-0.1.0"
         ];
       })
-      (sources."discovery-swarm-5.1.4" // {
-        dependencies = [
-          sources."debug-4.1.1"
-        ];
-      })
+      sources."discovery-swarm-5.1.4"
       (sources."dns-discovery-6.2.3" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -39560,8 +39593,12 @@ in
         ];
       })
       sources."hyperdrive-9.14.2"
-      sources."hyperdrive-http-4.3.4"
-      sources."hyperdrive-network-speed-2.1.0"
+      sources."hyperdrive-http-4.4.0"
+      (sources."hyperdrive-network-speed-2.1.0" // {
+        dependencies = [
+          sources."debug-3.2.6"
+        ];
+      })
       sources."i-0.3.6"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
@@ -39630,8 +39667,8 @@ in
       sources."merkle-tree-stream-3.0.3"
       sources."micromatch-2.3.11"
       sources."mime-2.4.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-response-1.0.1"
       sources."min-document-2.19.0"
       sources."minimatch-3.0.4"
@@ -39740,7 +39777,7 @@ in
       sources."siphash24-1.1.1"
       sources."slice-ansi-1.0.0"
       sources."sodium-javascript-0.5.5"
-      sources."sodium-native-2.2.6"
+      sources."sodium-native-2.3.0"
       sources."sodium-universal-2.0.0"
       sources."sorted-array-functions-1.2.0"
       sources."sorted-indexof-1.0.0"
@@ -39924,8 +39961,8 @@ in
       sources."merge-descriptors-0.0.2"
       sources."methods-1.1.2"
       sources."mime-1.2.11"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-0.0.10"
       sources."ms-0.7.0"
       sources."nan-2.12.1"
@@ -40011,7 +40048,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.2"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.401.0"
+      sources."aws-sdk-2.405.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.8.0"
       sources."base64-js-1.3.0"
@@ -40052,8 +40089,8 @@ in
       sources."jsprim-1.4.1"
       sources."lodash-4.17.11"
       sources."lossless-json-1.0.3"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-0.0.10"
       sources."oauth-sign-0.9.0"
       sources."optimist-0.6.1"
@@ -40210,9 +40247,10 @@ in
       sources."filename-regex-2.0.1"
       sources."fill-range-2.2.4"
       sources."finalhandler-1.1.1"
-      (sources."follow-redirects-1.6.1" // {
+      (sources."follow-redirects-1.7.0" // {
         dependencies = [
-          sources."debug-3.1.0"
+          sources."debug-3.2.6"
+          sources."ms-2.1.1"
         ];
       })
       sources."for-in-1.0.2"
@@ -40740,8 +40778,8 @@ in
       sources."map-visit-1.0.0"
       sources."math-random-1.0.4"
       sources."micromatch-2.3.11"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       (sources."mixin-deep-1.3.1" // {
@@ -40868,8 +40906,12 @@ in
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
       sources."request-2.88.0"
-      sources."request-promise-4.2.2"
-      sources."request-promise-core-1.1.1"
+      sources."request-promise-4.2.4"
+      (sources."request-promise-core-1.1.2" // {
+        dependencies = [
+          sources."lodash-4.17.11"
+        ];
+      })
       sources."resolve-url-0.2.1"
       sources."ret-0.1.15"
       (sources."rimraf-2.6.3" // {
@@ -41049,7 +41091,7 @@ in
       sources."concat-map-0.0.1"
       sources."conf-1.4.0"
       sources."convert-source-map-1.6.0"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."cross-spawn-5.1.0"
       sources."currently-unhandled-0.4.1"
       sources."debug-2.6.9"
@@ -41159,9 +41201,9 @@ in
       sources."pkg-up-2.0.0"
       sources."prepend-http-1.0.4"
       sources."private-0.1.8"
-      sources."prop-types-15.7.1"
+      sources."prop-types-15.7.2"
       sources."pseudomap-1.0.2"
-      sources."react-is-16.8.1"
+      sources."react-is-16.8.2"
       sources."read-pkg-1.1.0"
       (sources."read-pkg-up-1.0.1" // {
         dependencies = [
@@ -41236,10 +41278,10 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "5.13.0";
+    version = "5.14.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-5.13.0.tgz";
-      sha512 = "nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-5.14.1.tgz";
+      sha512 = "CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==";
     };
     dependencies = [
       sources."@babel/code-frame-7.0.0"
@@ -41257,7 +41299,6 @@ in
       sources."callsites-3.0.0"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
-      sources."circular-json-0.3.3"
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.2.0"
       sources."color-convert-1.9.3"
@@ -41266,13 +41307,13 @@ in
       sources."cross-spawn-6.0.5"
       sources."debug-4.1.1"
       sources."deep-is-0.1.3"
-      sources."doctrine-2.1.0"
+      sources."doctrine-3.0.0"
       sources."emoji-regex-7.0.3"
       sources."escape-string-regexp-1.0.5"
       sources."eslint-scope-4.0.0"
       sources."eslint-utils-1.3.1"
       sources."eslint-visitor-keys-1.0.0"
-      sources."espree-5.0.0"
+      sources."espree-5.0.1"
       sources."esprima-4.0.1"
       sources."esquery-1.0.1"
       sources."esrecurse-4.2.1"
@@ -41283,13 +41324,13 @@ in
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
       sources."figures-2.0.0"
-      sources."file-entry-cache-2.0.0"
-      sources."flat-cache-1.3.4"
+      sources."file-entry-cache-5.0.1"
+      sources."flat-cache-2.0.1"
+      sources."flatted-2.0.0"
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.3"
       sources."globals-11.11.0"
-      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
@@ -41319,7 +41360,6 @@ in
       sources."mute-stream-0.0.7"
       sources."natural-compare-1.4.0"
       sources."nice-try-1.0.5"
-      sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."optionator-0.8.2"
@@ -41367,7 +41407,7 @@ in
       sources."which-1.3.1"
       sources."wordwrap-1.0.0"
       sources."wrappy-1.0.2"
-      sources."write-0.2.1"
+      sources."write-1.0.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -41402,7 +41442,6 @@ in
       sources."callsites-3.0.0"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
-      sources."circular-json-0.3.3"
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.2.0"
       sources."color-convert-1.9.3"
@@ -41411,14 +41450,14 @@ in
       sources."cross-spawn-6.0.5"
       sources."debug-4.1.1"
       sources."deep-is-0.1.3"
-      sources."doctrine-2.1.0"
+      sources."doctrine-3.0.0"
       sources."emoji-regex-7.0.3"
       sources."escape-string-regexp-1.0.5"
-      sources."eslint-5.13.0"
+      sources."eslint-5.14.1"
       sources."eslint-scope-4.0.0"
       sources."eslint-utils-1.3.1"
       sources."eslint-visitor-keys-1.0.0"
-      sources."espree-5.0.0"
+      sources."espree-5.0.1"
       sources."esprima-4.0.1"
       sources."esquery-1.0.1"
       sources."esrecurse-4.2.1"
@@ -41429,13 +41468,13 @@ in
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
       sources."figures-2.0.0"
-      sources."file-entry-cache-2.0.0"
-      sources."flat-cache-1.3.4"
+      sources."file-entry-cache-5.0.1"
+      sources."flat-cache-2.0.1"
+      sources."flatted-2.0.0"
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.3"
       sources."globals-11.11.0"
-      sources."graceful-fs-4.1.15"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
@@ -41466,7 +41505,6 @@ in
       sources."nanolru-1.0.0"
       sources."natural-compare-1.4.0"
       sources."nice-try-1.0.5"
-      sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."optionator-0.8.2"
@@ -41516,7 +41554,7 @@ in
       sources."which-1.3.1"
       sources."wordwrap-1.0.0"
       sources."wrappy-1.0.2"
-      sources."write-0.2.1"
+      sources."write-1.0.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -41530,15 +41568,15 @@ in
   emojione = nodeEnv.buildNodePackage {
     name = "emojione";
     packageName = "emojione";
-    version = "4.0.0";
+    version = "4.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/emojione/-/emojione-4.0.0.tgz";
-      sha512 = "ATFSRHrK838NoTUE96j9rpmS1R4a/qpK1maQURGdFtarpWloEttjjIBBWbSFqsUxC0Vot6P2WXmSlotvZoegxw==";
+      url = "https://registry.npmjs.org/emojione/-/emojione-4.5.0.tgz";
+      sha512 = "Tq55Y3UgPOnayFDN+Qd6QMP0rpoH10a1nhSFN27s8gXW3qymgFIHiXys2ECYYAI134BafmI3qP9ni2rZOe9BjA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
       description = "EmojiOne is a complete set of emojis designed for the web. It includes libraries to easily convert unicode characters to shortnames (:smile:) and shortnames to our custom emoji images. PNG formats provided for the emoji images.";
-      homepage = http://www.emojione.com/;
+      homepage = https://www.emojione.com/;
     };
     production = true;
     bypassCache = true;
@@ -41583,7 +41621,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."ecc-jsbn-0.1.2"
       sources."error-ex-1.3.2"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."escape-string-regexp-1.0.5"
       sources."exit-hook-1.1.1"
       sources."extend-3.0.2"
@@ -41636,8 +41674,8 @@ in
       sources."loud-rejection-1.6.0"
       sources."map-obj-1.0.1"
       sources."meow-3.7.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -42377,6 +42415,7 @@ in
       sources."chloride-2.2.10"
       sources."chloride-test-1.2.2"
       sources."commander-2.19.0"
+      sources."debug-4.1.1"
       sources."deep-equal-1.0.1"
       sources."deep-extend-0.6.0"
       sources."diff-3.5.0"
@@ -42409,8 +42448,8 @@ in
       sources."libsodium-wrappers-0.7.4"
       sources."looper-4.0.0"
       sources."lrucache-1.0.3"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
         dependencies = [
@@ -42419,8 +42458,9 @@ in
       })
       sources."moment-2.24.0"
       sources."moo-0.4.3"
+      sources."ms-2.1.1"
       sources."multicb-1.2.2"
-      sources."multiserver-3.1.2"
+      sources."multiserver-3.2.0"
       sources."multiserver-address-1.0.1"
       sources."multiserver-scopes-1.0.0"
       sources."muxrpc-6.4.2"
@@ -42492,7 +42532,7 @@ in
       sources."separator-escape-0.0.0"
       sources."sha.js-2.4.5"
       sources."smart-buffer-4.0.2"
-      sources."socks-2.3.1"
+      sources."socks-2.3.2"
       sources."sodium-browserify-1.2.4"
       (sources."sodium-browserify-tweetnacl-0.2.3" // {
         dependencies = [
@@ -42500,7 +42540,7 @@ in
         ];
       })
       sources."sodium-chloride-1.1.2"
-      sources."sodium-native-2.2.6"
+      sources."sodium-native-2.3.0"
       sources."split-buffer-1.0.0"
       sources."ssb-avatar-0.2.0"
       sources."ssb-client-4.6.3"
@@ -42565,10 +42605,10 @@ in
   graphql-cli = nodeEnv.buildNodePackage {
     name = "graphql-cli";
     packageName = "graphql-cli";
-    version = "3.0.9";
+    version = "3.0.10";
     src = fetchurl {
-      url = "https://registry.npmjs.org/graphql-cli/-/graphql-cli-3.0.9.tgz";
-      sha512 = "V0lI0WlRk7U437NNT5WojjLxz8eYfKO/7cftQBPHU/feD1KjCevCQ5qLnDr/lL/sscBBcyk+YpNH8rBZ2CiHig==";
+      url = "https://registry.npmjs.org/graphql-cli/-/graphql-cli-3.0.10.tgz";
+      sha512 = "K5O4njRjxwWxAylSgHHqnctGgUQyjVG5pwJenhQWkaDnmDp3qFZ/+5NjCpp/bJ8RGbmYTjBeieCg77ZjL3O5Tg==";
     };
     dependencies = [
       sources."@babel/generator-7.0.0-beta.38"
@@ -42663,7 +42703,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.3.1"
       sources."cookie-signature-1.0.6"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
       sources."cosmiconfig-4.0.0"
       sources."create-error-class-3.0.2"
@@ -42707,7 +42747,7 @@ in
       sources."end-of-stream-1.4.1"
       sources."errno-0.1.7"
       sources."error-ex-1.3.2"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -42779,7 +42819,7 @@ in
         ];
       })
       sources."graphql-config-extension-graphcool-1.0.11"
-      sources."graphql-config-extension-prisma-0.2.5"
+      sources."graphql-config-extension-prisma-0.3.0"
       sources."graphql-import-0.4.5"
       sources."graphql-playground-html-1.6.12"
       sources."graphql-playground-middleware-express-1.7.11"
@@ -42902,8 +42942,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -42973,7 +43013,7 @@ in
       sources."pify-2.3.0"
       sources."prepend-http-1.0.4"
       sources."prisma-json-schema-0.1.3"
-      (sources."prisma-yml-1.20.0-beta.18" // {
+      (sources."prisma-yml-1.26.6" // {
         dependencies = [
           sources."ajv-5.5.2"
           sources."debug-3.2.6"
@@ -43016,8 +43056,8 @@ in
       sources."registry-url-3.1.0"
       sources."replaceall-0.1.6"
       sources."request-2.88.0"
-      sources."request-promise-4.2.2"
-      sources."request-promise-core-1.1.1"
+      sources."request-promise-4.2.4"
+      sources."request-promise-core-1.1.2"
       sources."require-directory-2.1.1"
       sources."require-from-string-2.0.2"
       sources."require-main-filename-1.0.1"
@@ -43493,7 +43533,7 @@ in
       sources."buffer-from-1.1.1"
       sources."cache-base-1.0.1"
       sources."camelcase-3.0.0"
-      (sources."chokidar-2.1.1" // {
+      (sources."chokidar-2.1.2" // {
         dependencies = [
           sources."normalize-path-3.0.0"
         ];
@@ -44241,8 +44281,8 @@ in
       sha512 = "Zn+mo0NNXIW7+pWfdIZx49IfmuVI4I1UPjZhXFvc0Rq7fHul//gbVASrnxtiTbOOCNvD4JKVvKkpo4BNDzHi6w==";
     };
     dependencies = [
-      sources."@snyk/dep-graph-1.1.2"
-      sources."@snyk/gemfile-1.1.0"
+      sources."@snyk/dep-graph-1.4.0"
+      sources."@snyk/gemfile-1.2.0"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
       sources."agent-base-4.2.1"
@@ -44305,7 +44345,7 @@ in
       sources."core-js-2.3.0"
       sources."core-util-is-1.0.2"
       sources."create-error-class-3.0.2"
-      sources."cross-spawn-5.1.0"
+      sources."cross-spawn-6.0.5"
       sources."crypto-random-string-1.0.0"
       sources."csslint-1.0.5"
       sources."dashdash-1.14.1"
@@ -44318,10 +44358,10 @@ in
       sources."degenerator-1.0.4"
       sources."delayed-stream-1.0.0"
       sources."depd-1.1.2"
+      sources."diff-4.0.1"
       sources."dockerfile-ast-0.0.12"
-      (sources."dom-serializer-0.1.0" // {
+      (sources."dom-serializer-0.1.1" // {
         dependencies = [
-          sources."domelementtype-1.1.3"
           sources."entities-1.1.2"
         ];
       })
@@ -44333,14 +44373,14 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."email-validator-2.0.4"
       sources."entities-1.0.0"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.11.0"
       sources."esprima-3.1.3"
       sources."estraverse-4.2.0"
       sources."esutils-2.0.2"
-      sources."execa-0.7.0"
+      sources."execa-0.10.0"
       sources."exit-0.1.2"
       sources."extend-3.0.2"
       sources."external-editor-2.2.0"
@@ -44378,11 +44418,6 @@ in
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."has-flag-3.0.0"
-      (sources."hasbin-1.2.3" // {
-        dependencies = [
-          sources."async-1.5.2"
-        ];
-      })
       sources."hosted-git-info-2.7.1"
       (sources."htmlparser2-3.8.3" // {
         dependencies = [
@@ -44469,10 +44504,10 @@ in
       sources."lodash.set-4.3.2"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-4.1.5"
-      sources."macos-release-1.1.0"
+      sources."macos-release-2.0.0"
       sources."make-dir-1.3.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -44495,6 +44530,7 @@ in
         ];
       })
       sources."netmask-1.0.6"
+      sources."nice-try-1.0.5"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
@@ -44503,7 +44539,7 @@ in
       sources."opn-5.4.0"
       sources."optionator-0.8.2"
       sources."os-locale-1.4.0"
-      sources."os-name-2.0.1"
+      sources."os-name-3.0.0"
       sources."os-tmpdir-1.0.2"
       sources."p-finally-1.0.0"
       sources."pac-proxy-agent-2.0.2"
@@ -44565,15 +44601,16 @@ in
       sources."shelljs-0.3.0"
       sources."signal-exit-3.0.2"
       sources."smart-buffer-1.1.15"
-      sources."snyk-1.127.0"
-      sources."snyk-config-2.2.0"
-      sources."snyk-docker-plugin-1.21.2"
+      sources."snyk-1.134.2"
+      sources."snyk-config-2.2.1"
+      sources."snyk-docker-plugin-1.22.0"
       sources."snyk-go-plugin-1.6.1"
       sources."snyk-gradle-plugin-2.1.3"
       sources."snyk-module-1.9.1"
       sources."snyk-mvn-plugin-2.0.1"
       sources."snyk-nodejs-lockfile-parser-1.11.0"
-      sources."snyk-nuget-plugin-1.6.5"
+      sources."snyk-nuget-plugin-1.7.2"
+      sources."snyk-paket-parser-1.4.3"
       sources."snyk-php-plugin-1.5.2"
       sources."snyk-policy-1.13.3"
       sources."snyk-python-plugin-1.9.1"
@@ -44597,7 +44634,12 @@ in
       sources."supports-color-5.5.0"
       sources."temp-dir-1.0.0"
       sources."tempfile-2.0.0"
-      sources."term-size-1.2.0"
+      (sources."term-size-1.2.0" // {
+        dependencies = [
+          sources."cross-spawn-5.1.0"
+          sources."execa-0.7.0"
+        ];
+      })
       sources."then-fs-2.0.0"
       sources."through-2.3.8"
       sources."thunkify-2.1.2"
@@ -44613,12 +44655,6 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."type-check-0.3.2"
-      (sources."undefsafe-2.0.2" // {
-        dependencies = [
-          sources."debug-2.6.9"
-          sources."ms-2.0.0"
-        ];
-      })
       sources."unique-string-1.0.0"
       sources."unpipe-1.0.0"
       sources."unzip-response-2.0.1"
@@ -44631,8 +44667,8 @@ in
       sources."vscode-languageserver-types-3.14.0"
       sources."which-1.3.1"
       sources."widest-line-2.0.1"
-      sources."win-release-1.1.1"
       sources."window-size-0.1.4"
+      sources."windows-release-3.1.0"
       sources."wordwrap-1.0.0"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
@@ -44711,10 +44747,10 @@ in
       sources."async-1.5.2"
       sources."colors-1.0.3"
       sources."corser-2.0.1"
-      sources."debug-3.1.0"
+      sources."debug-3.2.6"
       sources."ecstatic-3.3.1"
       sources."eventemitter3-3.1.0"
-      sources."follow-redirects-1.6.1"
+      sources."follow-redirects-1.7.0"
       sources."he-1.2.0"
       sources."http-proxy-1.17.0"
       sources."mime-1.6.0"
@@ -44724,7 +44760,7 @@ in
           sources."minimist-0.0.8"
         ];
       })
-      sources."ms-2.0.0"
+      sources."ms-2.1.1"
       sources."opener-1.4.3"
       (sources."optimist-0.6.1" // {
         dependencies = [
@@ -44734,6 +44770,7 @@ in
       (sources."portfinder-1.0.20" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."ms-2.0.0"
         ];
       })
       sources."qs-2.3.3"
@@ -44754,16 +44791,16 @@ in
   ionic = nodeEnv.buildNodePackage {
     name = "ionic";
     packageName = "ionic";
-    version = "4.10.2";
+    version = "4.10.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ionic/-/ionic-4.10.2.tgz";
-      sha512 = "z8fEKPB7barrSUzGnBsnsb1lzp8LB2otdQ7SE8OuTDgKCVY/VIXlJ9h6/SAxDE/vGKGGgkN9pMfb0ppeNXwYtw==";
+      url = "https://registry.npmjs.org/ionic/-/ionic-4.10.3.tgz";
+      sha512 = "tjx8EoNsTcOhDpRTGYL5+noAotjbLMbV2gDORhHdHbIxSHcrmbhPhwG+nrdamaveqrLEqBaLHlgRPI6EAJLSQQ==";
     };
     dependencies = [
-      sources."@ionic/cli-framework-1.6.0"
-      sources."@ionic/discover-1.0.11"
-      sources."@ionic/utils-fs-1.0.0"
-      sources."@ionic/utils-network-0.0.6"
+      sources."@ionic/cli-framework-1.6.1"
+      sources."@ionic/discover-1.0.12"
+      sources."@ionic/utils-fs-1.1.0"
+      sources."@ionic/utils-network-0.0.7"
       sources."@types/node-8.10.40"
       sources."agent-base-4.2.1"
       (sources."ansi-align-2.0.0" // {
@@ -44822,7 +44859,7 @@ in
       sources."duplexer3-0.1.4"
       sources."elementtree-0.1.7"
       sources."emoji-regex-7.0.3"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.11.0"
@@ -44933,8 +44970,8 @@ in
       sources."make-dir-1.3.0"
       sources."methods-1.1.2"
       sources."mime-2.4.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -45084,7 +45121,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.2"
-      sources."ws-6.1.3"
+      sources."ws-6.1.4"
       sources."xdg-basedir-3.0.0"
       sources."xregexp-2.0.0"
       sources."xtend-4.0.1"
@@ -45353,9 +45390,8 @@ in
       sources."console-browserify-1.1.0"
       sources."core-util-is-1.0.2"
       sources."date-now-0.1.4"
-      (sources."dom-serializer-0.1.0" // {
+      (sources."dom-serializer-0.1.1" // {
         dependencies = [
-          sources."domelementtype-1.1.3"
           sources."entities-1.1.2"
         ];
       })
@@ -45532,8 +45568,8 @@ in
       sources."lodash-4.17.11"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."ms-2.1.1"
       sources."native-promise-only-0.8.1"
       sources."path-loader-1.0.9"
@@ -45594,7 +45630,7 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."combined-stream-1.0.7"
-      sources."compressible-2.0.15"
+      sources."compressible-2.0.16"
       sources."compression-1.7.3"
       sources."configstore-3.1.2"
       sources."connect-pause-0.1.1"
@@ -45708,8 +45744,8 @@ in
       })
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimist-1.2.0"
       sources."morgan-1.9.1"
@@ -45914,7 +45950,7 @@ in
       sources."bytes-3.0.0"
       sources."cache-base-1.0.1"
       sources."callsite-1.0.0"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."circular-json-0.5.9"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -45944,7 +45980,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.3.1"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
       sources."custom-event-1.0.1"
       sources."date-format-1.2.0"
@@ -46022,9 +46058,10 @@ in
         ];
       })
       sources."flatted-2.0.0"
-      (sources."follow-redirects-1.6.1" // {
+      (sources."follow-redirects-1.7.0" // {
         dependencies = [
-          sources."debug-3.1.0"
+          sources."debug-3.2.6"
+          sources."ms-2.1.1"
         ];
       })
       sources."for-in-1.0.2"
@@ -46089,8 +46126,8 @@ in
       sources."media-typer-0.3.0"
       sources."micromatch-3.1.10"
       sources."mime-2.4.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mixin-deep-1.3.1"
@@ -46417,7 +46454,7 @@ in
       sources."core-util-is-1.0.2"
       sources."cross-spawn-6.0.5"
       sources."css-select-1.2.0"
-      sources."css-what-2.1.2"
+      sources."css-what-2.1.3"
       sources."cssom-0.3.6"
       sources."cssstyle-0.2.37"
       sources."cycle-1.0.3"
@@ -46427,11 +46464,7 @@ in
       sources."deep-is-0.1.3"
       sources."defaults-1.0.3"
       sources."delayed-stream-1.0.0"
-      (sources."dom-serializer-0.1.0" // {
-        dependencies = [
-          sources."domelementtype-1.1.3"
-        ];
-      })
+      sources."dom-serializer-0.1.1"
       sources."domelementtype-1.3.1"
       sources."domhandler-2.3.0"
       sources."domutils-1.5.1"
@@ -46492,8 +46525,8 @@ in
       sources."log-symbols-2.2.0"
       sources."map-age-cleaner-0.1.3"
       sources."mem-4.1.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -46633,71 +46666,71 @@ in
   lerna = nodeEnv.buildNodePackage {
     name = "lerna";
     packageName = "lerna";
-    version = "3.11.1";
+    version = "3.13.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/lerna/-/lerna-3.11.1.tgz";
-      sha512 = "7an/cia9u6qVTts5PQ/adFq8QSgE7gzG1pUHhH+XKVU1seDKQ99JLu61n3/euv2qeQF+ww4WLKnFHIPa5+LJSQ==";
+      url = "https://registry.npmjs.org/lerna/-/lerna-3.13.0.tgz";
+      sha512 = "MHaqqwfAdYIo0rAE0oOZRQ8eKbKyW035akLf0pz3YlWbdXKH91lxXRLj0BpbEytUz7hDbsv0FNNtXz9u5eTNFg==";
     };
     dependencies = [
-      sources."@lerna/add-3.11.0"
-      sources."@lerna/batch-packages-3.11.0"
-      sources."@lerna/bootstrap-3.11.0"
-      sources."@lerna/changed-3.11.1"
-      sources."@lerna/check-working-tree-3.11.0"
-      sources."@lerna/child-process-3.3.0"
-      sources."@lerna/clean-3.11.0"
-      sources."@lerna/cli-3.11.0"
-      sources."@lerna/collect-updates-3.11.0"
-      sources."@lerna/command-3.11.0"
-      sources."@lerna/conventional-commits-3.11.0"
-      sources."@lerna/create-3.11.0"
-      sources."@lerna/create-symlink-3.11.0"
-      sources."@lerna/describe-ref-3.11.0"
-      sources."@lerna/diff-3.11.0"
-      sources."@lerna/exec-3.11.0"
-      sources."@lerna/filter-options-3.11.0"
-      sources."@lerna/filter-packages-3.11.0"
-      sources."@lerna/get-npm-exec-opts-3.11.0"
-      sources."@lerna/get-packed-3.7.0"
-      sources."@lerna/github-client-3.11.0"
-      sources."@lerna/global-options-3.10.6"
-      sources."@lerna/has-npm-version-3.10.0"
-      sources."@lerna/import-3.11.0"
-      sources."@lerna/init-3.11.0"
-      sources."@lerna/link-3.11.0"
-      sources."@lerna/list-3.11.0"
-      sources."@lerna/listable-3.11.0"
-      sources."@lerna/log-packed-3.11.0"
-      sources."@lerna/npm-conf-3.7.0"
-      sources."@lerna/npm-dist-tag-3.11.0"
-      sources."@lerna/npm-install-3.11.0"
-      sources."@lerna/npm-publish-3.11.0"
-      sources."@lerna/npm-run-script-3.11.0"
-      sources."@lerna/output-3.11.0"
-      sources."@lerna/pack-directory-3.11.0"
-      sources."@lerna/package-3.11.0"
-      sources."@lerna/package-graph-3.11.0"
-      sources."@lerna/project-3.11.0"
-      sources."@lerna/prompt-3.11.0"
-      sources."@lerna/publish-3.11.1"
-      sources."@lerna/pulse-till-done-3.11.0"
-      sources."@lerna/resolve-symlink-3.11.0"
-      sources."@lerna/rimraf-dir-3.11.0"
-      sources."@lerna/run-3.11.0"
-      sources."@lerna/run-lifecycle-3.11.0"
-      sources."@lerna/run-parallel-batches-3.0.0"
-      sources."@lerna/symlink-binary-3.11.0"
-      sources."@lerna/symlink-dependencies-3.11.0"
-      sources."@lerna/timer-3.5.0"
-      sources."@lerna/validation-error-3.11.0"
-      sources."@lerna/version-3.11.1"
-      sources."@lerna/write-log-file-3.11.0"
+      sources."@lerna/add-3.13.0"
+      sources."@lerna/batch-packages-3.13.0"
+      sources."@lerna/bootstrap-3.13.0"
+      sources."@lerna/changed-3.13.0"
+      sources."@lerna/check-working-tree-3.13.0"
+      sources."@lerna/child-process-3.13.0"
+      sources."@lerna/clean-3.13.0"
+      sources."@lerna/cli-3.13.0"
+      sources."@lerna/collect-updates-3.13.0"
+      sources."@lerna/command-3.13.0"
+      sources."@lerna/conventional-commits-3.13.0"
+      sources."@lerna/create-3.13.0"
+      sources."@lerna/create-symlink-3.13.0"
+      sources."@lerna/describe-ref-3.13.0"
+      sources."@lerna/diff-3.13.0"
+      sources."@lerna/exec-3.13.0"
+      sources."@lerna/filter-options-3.13.0"
+      sources."@lerna/filter-packages-3.13.0"
+      sources."@lerna/get-npm-exec-opts-3.13.0"
+      sources."@lerna/get-packed-3.13.0"
+      sources."@lerna/github-client-3.13.0"
+      sources."@lerna/global-options-3.13.0"
+      sources."@lerna/has-npm-version-3.13.0"
+      sources."@lerna/import-3.13.0"
+      sources."@lerna/init-3.13.0"
+      sources."@lerna/link-3.13.0"
+      sources."@lerna/list-3.13.0"
+      sources."@lerna/listable-3.13.0"
+      sources."@lerna/log-packed-3.13.0"
+      sources."@lerna/npm-conf-3.13.0"
+      sources."@lerna/npm-dist-tag-3.13.0"
+      sources."@lerna/npm-install-3.13.0"
+      sources."@lerna/npm-publish-3.13.0"
+      sources."@lerna/npm-run-script-3.13.0"
+      sources."@lerna/output-3.13.0"
+      sources."@lerna/pack-directory-3.13.0"
+      sources."@lerna/package-3.13.0"
+      sources."@lerna/package-graph-3.13.0"
+      sources."@lerna/project-3.13.0"
+      sources."@lerna/prompt-3.13.0"
+      sources."@lerna/publish-3.13.0"
+      sources."@lerna/pulse-till-done-3.13.0"
+      sources."@lerna/resolve-symlink-3.13.0"
+      sources."@lerna/rimraf-dir-3.13.0"
+      sources."@lerna/run-3.13.0"
+      sources."@lerna/run-lifecycle-3.13.0"
+      sources."@lerna/run-parallel-batches-3.13.0"
+      sources."@lerna/symlink-binary-3.13.0"
+      sources."@lerna/symlink-dependencies-3.13.0"
+      sources."@lerna/timer-3.13.0"
+      sources."@lerna/validation-error-3.13.0"
+      sources."@lerna/version-3.13.0"
+      sources."@lerna/write-log-file-3.13.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
-      sources."@octokit/endpoint-3.1.2"
+      sources."@octokit/endpoint-3.1.3"
       sources."@octokit/plugin-enterprise-rest-2.1.1"
       sources."@octokit/request-2.3.0"
-      sources."@octokit/rest-16.15.0"
+      sources."@octokit/rest-16.16.0"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."agent-base-4.2.1"
@@ -46810,17 +46843,17 @@ 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.2"
-      sources."conventional-changelog-core-3.1.5"
+      sources."conventional-changelog-angular-5.0.3"
+      sources."conventional-changelog-core-3.1.6"
       sources."conventional-changelog-preset-loader-2.0.2"
-      sources."conventional-changelog-writer-4.0.2"
+      sources."conventional-changelog-writer-4.0.3"
       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"
-      sources."cosmiconfig-5.0.7"
+      sources."cosmiconfig-5.1.0"
       sources."cross-spawn-6.0.5"
       sources."currently-unhandled-0.4.1"
       sources."cyclist-0.2.2"
@@ -46837,7 +46870,7 @@ in
       })
       sources."decode-uri-component-0.2.0"
       sources."dedent-0.7.0"
-      sources."deepmerge-3.1.0"
+      sources."deepmerge-3.2.0"
       sources."defaults-1.0.3"
       sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
@@ -46853,7 +46886,7 @@ in
       sources."end-of-stream-1.4.1"
       sources."err-code-1.1.2"
       sources."error-ex-1.3.2"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
@@ -47101,8 +47134,8 @@ in
       sources."meow-4.0.1"
       sources."merge2-1.2.3"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -47193,7 +47226,7 @@ in
       sources."p-reduce-1.0.0"
       sources."p-try-2.0.0"
       sources."p-waterfall-1.0.0"
-      sources."pacote-9.4.1"
+      sources."pacote-9.5.0"
       sources."parallel-transform-1.1.0"
       sources."parse-github-repo-url-1.4.1"
       sources."parse-json-4.0.0"
@@ -47464,7 +47497,7 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "A tool for managing JavaScript projects with multiple packages.";
-      homepage = https://lernajs.io/;
+      homepage = "https://github.com/lerna/lerna#readme";
       license = "MIT";
     };
     production = true;
@@ -47515,8 +47548,8 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."oauth-sign-0.9.0"
@@ -47614,7 +47647,7 @@ in
         ];
       })
       sources."cache-base-1.0.1"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       (sources."class-utils-0.3.6" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -47735,8 +47768,8 @@ in
       sources."map-visit-1.0.0"
       sources."micromatch-3.1.10"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mixin-deep-1.3.1"
       sources."morgan-1.9.1"
       sources."ms-2.0.0"
@@ -48131,8 +48164,8 @@ in
       sources."methods-1.1.2"
       sources."micromatch-2.3.11"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-1.2.0"
       (sources."mixin-deep-1.3.1" // {
         dependencies = [
@@ -48386,7 +48419,7 @@ in
       sources."uuid-3.3.2"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
-      sources."ws-6.1.3"
+      sources."ws-6.1.4"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."yeast-0.1.2"
     ];
@@ -48406,8 +48439,8 @@ in
     src = ../interpreters/clojurescript/lumo;
     dependencies = [
       sources."@babel/code-frame-7.0.0"
-      sources."@babel/core-7.2.2"
-      sources."@babel/generator-7.3.2"
+      sources."@babel/core-7.3.3"
+      sources."@babel/generator-7.3.3"
       sources."@babel/helper-annotate-as-pure-7.0.0"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.1.0"
       sources."@babel/helper-call-delegate-7.1.0"
@@ -48430,10 +48463,10 @@ in
       sources."@babel/helper-wrap-function-7.2.0"
       sources."@babel/helpers-7.3.1"
       sources."@babel/highlight-7.0.0"
-      sources."@babel/parser-7.3.2"
+      sources."@babel/parser-7.3.3"
       sources."@babel/plugin-external-helpers-7.0.0"
       sources."@babel/plugin-proposal-async-generator-functions-7.2.0"
-      sources."@babel/plugin-proposal-class-properties-7.3.0"
+      sources."@babel/plugin-proposal-class-properties-7.3.3"
       sources."@babel/plugin-proposal-json-strings-7.2.0"
       sources."@babel/plugin-proposal-object-rest-spread-7.3.2"
       sources."@babel/plugin-proposal-optional-catch-binding-7.2.0"
@@ -48446,7 +48479,7 @@ in
       sources."@babel/plugin-transform-async-to-generator-7.2.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.2.0"
       sources."@babel/plugin-transform-block-scoping-7.2.0"
-      sources."@babel/plugin-transform-classes-7.2.2"
+      sources."@babel/plugin-transform-classes-7.3.3"
       sources."@babel/plugin-transform-computed-properties-7.2.0"
       sources."@babel/plugin-transform-destructuring-7.3.2"
       sources."@babel/plugin-transform-dotall-regex-7.2.0"
@@ -48462,7 +48495,7 @@ in
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.3.0"
       sources."@babel/plugin-transform-new-target-7.0.0"
       sources."@babel/plugin-transform-object-super-7.2.0"
-      sources."@babel/plugin-transform-parameters-7.2.0"
+      sources."@babel/plugin-transform-parameters-7.3.3"
       sources."@babel/plugin-transform-regenerator-7.0.0"
       sources."@babel/plugin-transform-runtime-7.2.0"
       sources."@babel/plugin-transform-shorthand-properties-7.2.0"
@@ -48476,7 +48509,7 @@ in
       sources."@babel/runtime-7.3.1"
       sources."@babel/template-7.2.2"
       sources."@babel/traverse-7.2.3"
-      sources."@babel/types-7.3.2"
+      sources."@babel/types-7.3.3"
       sources."@calebboyd/semaphore-1.3.1"
       sources."@comandeer/babel-plugin-banner-4.1.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
@@ -48484,27 +48517,27 @@ in
       sources."@sindresorhus/is-0.7.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/estree-0.0.39"
-      sources."@types/node-11.9.3"
-      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."@types/node-11.9.4"
+      sources."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-buffer-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/helper-wasm-section-1.8.3"
+      sources."@webassemblyjs/ieee754-1.8.3"
+      sources."@webassemblyjs/leb128-1.8.3"
+      sources."@webassemblyjs/utf8-1.8.3"
+      sources."@webassemblyjs/wasm-edit-1.8.3"
+      sources."@webassemblyjs/wasm-gen-1.8.3"
+      sources."@webassemblyjs/wasm-opt-1.8.3"
+      sources."@webassemblyjs/wasm-parser-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
       sources."@xtuc/ieee754-1.2.0"
-      sources."@xtuc/long-4.2.1"
+      sources."@xtuc/long-4.2.2"
       sources."ace.improved-0.2.1"
       sources."acorn-6.1.0"
       sources."acorn-dynamic-import-4.0.0"
@@ -48512,7 +48545,7 @@ in
       sources."ajv-errors-1.0.1"
       sources."ajv-keywords-3.4.0"
       sources."amdefine-1.0.1"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
       (sources."anymatch-2.0.0" // {
         dependencies = [
@@ -48582,10 +48615,8 @@ in
       sources."atob-2.1.2"
       (sources."babel-code-frame-6.26.0" // {
         dependencies = [
-          sources."ansi-regex-2.1.1"
           sources."chalk-1.1.3"
           sources."js-tokens-3.0.2"
-          sources."strip-ansi-3.0.1"
         ];
       })
       sources."babel-core-7.0.0-bridge.0"
@@ -48605,15 +48636,7 @@ in
       sources."babel-jest-23.6.0"
       sources."babel-loader-8.0.5"
       sources."babel-messages-6.23.0"
-      (sources."babel-plugin-istanbul-4.1.6" // {
-        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."babel-plugin-istanbul-4.1.6"
       sources."babel-plugin-jest-hoist-23.2.0"
       sources."babel-plugin-minify-builtins-0.5.0"
       sources."babel-plugin-minify-constant-folding-0.5.0"
@@ -48701,13 +48724,12 @@ in
       })
       (sources."cacheable-request-2.1.4" // {
         dependencies = [
-          sources."get-stream-3.0.0"
           sources."lowercase-keys-1.0.0"
         ];
       })
       sources."call-me-maybe-1.0.1"
       sources."camelcase-5.0.0"
-      sources."caniuse-lite-1.0.30000936"
+      sources."caniuse-lite-1.0.30000938"
       sources."caw-2.0.1"
       (sources."chalk-2.4.2" // {
         dependencies = [
@@ -48716,7 +48738,7 @@ in
         ];
       })
       sources."cherow-1.6.9"
-      (sources."chokidar-2.1.1" // {
+      (sources."chokidar-2.1.2" // {
         dependencies = [
           sources."array-unique-0.3.2"
           sources."braces-2.3.2"
@@ -48757,8 +48779,12 @@ in
       })
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-1.3.1"
-      sources."cli-table3-0.5.1"
-      sources."cliui-4.1.0"
+      (sources."cliui-4.1.0" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
       sources."clone-2.1.2"
       sources."clone-buffer-1.0.0"
       sources."clone-response-1.0.2"
@@ -48768,7 +48794,6 @@ in
       sources."collection-visit-1.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."colors-1.3.3"
       sources."commander-2.8.1"
       sources."commondir-1.0.1"
       sources."component-emitter-1.2.1"
@@ -48781,7 +48806,7 @@ in
       sources."convert-source-map-1.6.0"
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
       sources."create-ecdh-4.0.3"
       sources."create-hash-1.2.0"
@@ -48843,7 +48868,6 @@ in
       sources."domain-browser-1.2.0"
       (sources."download-7.1.0" // {
         dependencies = [
-          sources."get-stream-3.0.0"
           sources."got-8.3.2"
           sources."pify-3.0.0"
         ];
@@ -48864,11 +48888,15 @@ in
       sources."eslint-visitor-keys-1.0.0"
       sources."esrecurse-4.2.1"
       sources."estraverse-4.2.0"
-      sources."estree-walker-0.5.2"
+      sources."estree-walker-0.6.0"
       sources."esutils-2.0.2"
       sources."events-3.0.0"
       sources."evp_bytestokey-1.0.3"
-      sources."execa-1.0.0"
+      (sources."execa-1.0.0" // {
+        dependencies = [
+          sources."get-stream-4.1.0"
+        ];
+      })
       sources."expand-brackets-0.1.5"
       sources."expand-range-1.8.2"
       sources."expand-tilde-2.0.2"
@@ -48950,7 +48978,7 @@ in
       sources."filenamify-2.1.0"
       sources."fill-range-2.2.4"
       sources."find-cache-dir-2.0.0"
-      sources."find-up-3.0.0"
+      sources."find-up-2.1.0"
       (sources."findup-sync-2.0.0" // {
         dependencies = [
           sources."arr-diff-4.0.0"
@@ -49007,7 +49035,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-caller-file-1.0.3"
       sources."get-proxy-2.1.0"
-      sources."get-stream-4.1.0"
+      sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
       sources."glob-7.1.3"
       sources."glob-base-0.3.0"
@@ -49026,6 +49054,7 @@ in
         dependencies = [
           sources."@sindresorhus/is-0.14.0"
           sources."cacheable-request-6.0.0"
+          sources."get-stream-4.1.0"
           sources."http-cache-semantics-4.0.3"
           sources."normalize-url-3.3.0"
           sources."p-cancelable-1.0.0"
@@ -49034,11 +49063,7 @@ in
       sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
       sources."has-1.0.3"
-      (sources."has-ansi-2.0.0" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-        ];
-      })
+      sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
       sources."has-symbol-support-x-1.4.2"
       sources."has-symbols-1.0.0"
@@ -49075,11 +49100,7 @@ in
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."interpret-1.2.0"
-      (sources."into-stream-3.1.0" // {
-        dependencies = [
-          sources."p-is-promise-1.1.0"
-        ];
-      })
+      sources."into-stream-3.1.0"
       sources."invariant-2.2.4"
       sources."invert-kv-2.0.0"
       (sources."is-accessor-descriptor-1.0.0" // {
@@ -49107,7 +49128,7 @@ in
       sources."is-extendable-0.1.1"
       sources."is-extglob-1.0.0"
       sources."is-finite-1.0.2"
-      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-fullwidth-code-point-1.0.0"
       sources."is-glob-2.0.1"
       sources."is-module-1.0.0"
       sources."is-natural-number-4.0.1"
@@ -49151,7 +49172,7 @@ in
           sources."json5-1.0.1"
         ];
       })
-      sources."locate-path-3.0.0"
+      sources."locate-path-2.0.0"
       sources."lodash-4.17.11"
       sources."lodash.isplainobject-4.0.6"
       sources."lodash.some-4.6.0"
@@ -49165,12 +49186,17 @@ in
           sources."pify-3.0.0"
         ];
       })
+      sources."mamacro-0.0.3"
       sources."map-age-cleaner-0.1.3"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."math-random-1.0.4"
       sources."md5.js-1.3.5"
-      sources."mem-4.1.0"
+      (sources."mem-4.1.0" // {
+        dependencies = [
+          sources."p-is-promise-2.0.0"
+        ];
+      })
       sources."memory-fs-0.4.1"
       sources."merge2-1.2.3"
       sources."micromatch-2.3.11"
@@ -49273,15 +49299,15 @@ in
       sources."p-defer-1.0.0"
       sources."p-event-2.3.1"
       sources."p-finally-1.0.0"
-      sources."p-is-promise-2.0.0"
-      sources."p-limit-2.1.0"
-      sources."p-locate-3.0.0"
+      sources."p-is-promise-1.1.0"
+      sources."p-limit-1.3.0"
+      sources."p-locate-2.0.0"
       sources."p-timeout-2.0.1"
-      sources."p-try-2.0.0"
+      sources."p-try-1.0.0"
       sources."pako-1.0.8"
       sources."parallel-transform-1.1.0"
       sources."paredit.js-0.3.4"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."parse-glob-3.0.4"
       sources."parse-json-2.2.0"
       sources."parse-passwd-1.0.0"
@@ -49298,7 +49324,15 @@ in
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      sources."pkg-dir-3.0.0"
+      (sources."pkg-dir-3.0.0" // {
+        dependencies = [
+          sources."find-up-3.0.0"
+          sources."locate-path-3.0.0"
+          sources."p-limit-2.1.0"
+          sources."p-locate-3.0.0"
+          sources."p-try-2.0.0"
+        ];
+      })
       sources."posix-character-classes-0.1.1"
       sources."posix-getopt-git://github.com/anmonteiro/node-getopt#master"
       sources."prepend-http-2.0.0"
@@ -49391,7 +49425,7 @@ in
       sources."regenerator-transform-0.13.3"
       sources."regex-cache-0.4.4"
       sources."regex-not-1.0.2"
-      sources."regexp-tree-0.1.1"
+      sources."regexp-tree-0.1.5"
       sources."regexpu-core-4.4.0"
       sources."regjsgen-0.5.0"
       (sources."regjsparser-0.6.0" // {
@@ -49434,10 +49468,54 @@ in
       sources."rollup-0.67.0"
       sources."rollup-plugin-babel-4.0.3"
       sources."rollup-plugin-babel-minify-6.1.1"
-      sources."rollup-plugin-commonjs-9.2.0"
+      (sources."rollup-plugin-commonjs-9.2.0" // {
+        dependencies = [
+          sources."estree-walker-0.5.2"
+        ];
+      })
       sources."rollup-plugin-node-resolve-3.4.0"
       sources."rollup-plugin-replace-2.1.0"
-      sources."rollup-pluginutils-2.3.3"
+      (sources."rollup-pluginutils-2.4.1" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          sources."braces-2.3.2"
+          sources."debug-2.6.9"
+          sources."define-property-1.0.0"
+          (sources."expand-brackets-2.1.4" // {
+            dependencies = [
+              sources."define-property-0.2.5"
+            ];
+          })
+          sources."extend-shallow-2.0.1"
+          sources."extglob-2.0.4"
+          sources."fill-range-4.0.0"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."isobject-3.0.1"
+          sources."kind-of-6.0.2"
+          sources."micromatch-3.1.10"
+          sources."ms-2.0.0"
+        ];
+      })
       sources."run-queue-1.0.3"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
@@ -49524,9 +49602,15 @@ in
       sources."stream-http-2.8.3"
       sources."stream-shift-1.0.0"
       sources."strict-uri-encode-1.1.0"
-      sources."string-width-2.1.1"
+      (sources."string-width-2.1.1" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
       sources."string_decoder-1.1.1"
-      sources."strip-ansi-4.0.0"
+      sources."strip-ansi-3.0.1"
       sources."strip-bom-2.0.0"
       sources."strip-dirs-2.1.0"
       sources."strip-eof-1.0.0"
@@ -49611,7 +49695,7 @@ in
       sources."vm-browserify-0.0.4"
       sources."watchpack-1.6.0"
       sources."wcwidth-1.0.1"
-      (sources."webpack-4.29.3" // {
+      (sources."webpack-4.29.5" // {
         dependencies = [
           sources."arr-diff-4.0.0"
           sources."array-unique-0.3.2"
@@ -49680,17 +49764,22 @@ in
       sources."worker-farm-1.6.0"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."is-fullwidth-code-point-1.0.0"
           sources."string-width-1.0.2"
-          sources."strip-ansi-3.0.1"
         ];
       })
       sources."wrappy-1.0.2"
       sources."xtend-4.0.1"
       sources."y18n-4.0.0"
       sources."yallist-3.0.3"
-      sources."yargs-12.0.5"
+      (sources."yargs-12.0.5" // {
+        dependencies = [
+          sources."find-up-3.0.0"
+          sources."locate-path-3.0.0"
+          sources."p-limit-2.1.0"
+          sources."p-locate-3.0.0"
+          sources."p-try-2.0.0"
+        ];
+      })
       sources."yargs-parser-11.1.1"
       sources."yauzl-2.10.0"
     ];
@@ -49722,94 +49811,6 @@ in
     production = true;
     bypassCache = true;
   };
-  markdown-link-check = nodeEnv.buildNodePackage {
-    name = "markdown-link-check";
-    packageName = "markdown-link-check";
-    version = "3.7.2";
-    src = fetchurl {
-      url = "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.7.2.tgz";
-      sha512 = "rt6d75iz0Bw9LHmN+DT1a7kiVrkK3gsGhPVB/PwwZDq8LHlILQToC/hwq9tE2CUDg8OdZOV1+7j8vuG9Mu4sIQ==";
-    };
-    dependencies = [
-      sources."ajv-6.9.1"
-      sources."ansi-styles-3.2.1"
-      sources."asn1-0.2.4"
-      sources."assert-plus-1.0.0"
-      sources."async-2.6.2"
-      sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.8.0"
-      sources."bcrypt-pbkdf-1.0.2"
-      sources."caseless-0.12.0"
-      sources."chalk-2.4.2"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
-      sources."combined-stream-1.0.7"
-      sources."commander-2.19.0"
-      sources."core-util-is-1.0.2"
-      sources."dashdash-1.14.1"
-      sources."delayed-stream-1.0.0"
-      sources."ecc-jsbn-0.1.2"
-      sources."escape-string-regexp-1.0.5"
-      sources."extend-3.0.2"
-      sources."extsprintf-1.3.0"
-      sources."fast-deep-equal-2.0.1"
-      sources."fast-json-stable-stringify-2.0.0"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.3.3"
-      sources."getpass-0.1.7"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.3"
-      sources."has-flag-3.0.0"
-      sources."http-signature-1.2.0"
-      sources."is-absolute-url-2.1.0"
-      sources."is-relative-url-2.0.0"
-      sources."is-typedarray-1.0.0"
-      sources."isemail-3.2.0"
-      sources."isstream-0.1.2"
-      sources."jsbn-0.1.1"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsprim-1.4.1"
-      sources."link-check-4.4.4"
-      sources."lodash-4.17.11"
-      sources."markdown-link-extractor-1.2.0"
-      sources."marked-0.4.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
-      sources."ms-2.1.1"
-      sources."oauth-sign-0.9.0"
-      sources."performance-now-2.1.0"
-      sources."progress-2.0.3"
-      sources."psl-1.1.31"
-      sources."punycode-2.1.1"
-      sources."qs-6.5.2"
-      sources."request-2.88.0"
-      sources."safe-buffer-5.1.2"
-      sources."safer-buffer-2.1.2"
-      sources."sshpk-1.16.1"
-      sources."supports-color-5.5.0"
-      (sources."tough-cookie-2.4.3" // {
-        dependencies = [
-          sources."punycode-1.4.1"
-        ];
-      })
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
-      sources."uri-js-4.2.2"
-      sources."uuid-3.3.2"
-      sources."verror-1.10.0"
-    ];
-    buildInputs = globalBuildInputs;
-    meta = {
-      description = "checks the all of the hyperlinks in a markdown text to determine if they are alive or dead";
-      homepage = "https://github.com/tcort/markdown-link-check#readme";
-      license = "ISC";
-    };
-    production = true;
-    bypassCache = true;
-  };
   mathjax = nodeEnv.buildNodePackage {
     name = "mathjax";
     packageName = "mathjax";
@@ -50314,8 +50315,8 @@ in
       sources."memoizee-0.4.14"
       sources."micromatch-3.1.10"
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-2.0.10"
       sources."minimist-1.2.0"
       (sources."mixin-deep-1.3.1" // {
@@ -50590,35 +50591,350 @@ in
   mocha = nodeEnv.buildNodePackage {
     name = "mocha";
     packageName = "mocha";
-    version = "5.2.0";
+    version = "6.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz";
-      sha512 = "2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==";
+      url = "https://registry.npmjs.org/mocha/-/mocha-6.0.0.tgz";
+      sha512 = "A7g9k3yr8oJaXn2IItFnfgjyxFc/LTe6Wwv7FczP+e8G74o9xYNSbMYmCf1ouldRojLrFcOb+z75P6Ak0GX6ug==";
     };
     dependencies = [
+      sources."ansi-colors-3.2.3"
+      sources."ansi-regex-3.0.0"
+      sources."ansi-styles-3.2.1"
+      sources."argparse-1.0.10"
+      sources."arr-diff-4.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."arr-union-3.1.0"
+      sources."array-unique-0.3.2"
+      sources."assign-symbols-1.0.0"
+      sources."atob-2.1.2"
       sources."balanced-match-1.0.0"
+      (sources."base-0.11.2" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+        ];
+      })
       sources."brace-expansion-1.1.11"
+      (sources."braces-2.3.2" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
       sources."browser-stdout-1.3.1"
-      sources."commander-2.15.1"
+      sources."cache-base-1.0.1"
+      sources."camelcase-5.0.0"
+      (sources."chalk-2.4.2" // {
+        dependencies = [
+          sources."supports-color-5.5.0"
+        ];
+      })
+      (sources."class-utils-0.3.6" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."cliui-4.1.0"
+      sources."code-point-at-1.1.0"
+      sources."collection-visit-1.0.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."component-emitter-1.2.1"
       sources."concat-map-0.0.1"
-      sources."debug-3.1.0"
+      sources."copy-descriptor-0.1.1"
+      sources."cross-spawn-6.0.5"
+      sources."debug-3.2.6"
+      sources."decamelize-1.2.0"
+      sources."decode-uri-component-0.2.0"
+      sources."define-properties-1.1.3"
+      sources."define-property-2.0.2"
+      sources."detect-file-1.0.0"
       sources."diff-3.5.0"
+      sources."end-of-stream-1.4.1"
+      sources."es-abstract-1.13.0"
+      sources."es-to-primitive-1.2.0"
       sources."escape-string-regexp-1.0.5"
+      sources."esprima-4.0.1"
+      sources."execa-1.0.0"
+      (sources."expand-brackets-2.1.4" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."expand-tilde-2.0.2"
+      (sources."extend-shallow-3.0.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      (sources."extglob-2.0.4" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      (sources."fill-range-4.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."find-up-3.0.0"
+      sources."findup-sync-2.0.0"
+      (sources."flat-4.1.0" // {
+        dependencies = [
+          sources."is-buffer-2.0.3"
+        ];
+      })
+      sources."for-in-1.0.2"
+      sources."fragment-cache-0.2.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.2"
+      sources."function-bind-1.1.1"
+      sources."get-caller-file-1.0.3"
+      sources."get-stream-4.1.0"
+      sources."get-value-2.0.6"
+      sources."glob-7.1.3"
+      sources."global-modules-1.0.0"
+      sources."global-prefix-1.0.2"
       sources."growl-1.10.5"
+      sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."he-1.1.1"
+      sources."has-symbols-1.0.0"
+      sources."has-value-1.0.0"
+      (sources."has-values-1.0.0" // {
+        dependencies = [
+          sources."kind-of-4.0.0"
+        ];
+      })
+      sources."he-1.2.0"
+      sources."homedir-polyfill-1.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
+      sources."ini-1.3.5"
+      sources."invert-kv-2.0.0"
+      sources."is-accessor-descriptor-1.0.0"
+      sources."is-buffer-1.1.6"
+      sources."is-callable-1.1.4"
+      sources."is-data-descriptor-1.0.0"
+      sources."is-date-object-1.0.1"
+      sources."is-descriptor-1.0.2"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-glob-3.1.0"
+      (sources."is-number-3.0.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."is-plain-object-2.0.4"
+      sources."is-regex-1.0.4"
+      sources."is-stream-1.1.0"
+      sources."is-symbol-1.0.2"
+      sources."is-windows-1.0.2"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isobject-3.0.1"
+      sources."js-yaml-3.12.0"
+      sources."kind-of-6.0.2"
+      sources."lcid-2.0.0"
+      sources."locate-path-3.0.0"
+      sources."lodash-4.17.11"
+      sources."log-symbols-2.2.0"
+      sources."map-age-cleaner-0.1.3"
+      sources."map-cache-0.2.2"
+      sources."map-visit-1.0.0"
+      sources."mem-4.1.0"
+      sources."micromatch-3.1.10"
+      sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
+      (sources."mixin-deep-1.3.1" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
       sources."mkdirp-0.5.1"
-      sources."ms-2.0.0"
+      sources."ms-2.1.1"
+      sources."nanomatch-1.2.13"
+      sources."nice-try-1.0.5"
+      sources."node-environment-flags-1.0.4"
+      sources."npm-run-path-2.0.2"
+      sources."number-is-nan-1.0.1"
+      (sources."object-copy-0.1.0" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."is-accessor-descriptor-0.1.6"
+          sources."is-data-descriptor-0.1.4"
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."object-keys-1.1.0"
+      sources."object-visit-1.0.1"
+      sources."object.assign-4.1.0"
+      sources."object.getownpropertydescriptors-2.0.3"
+      sources."object.pick-1.3.0"
       sources."once-1.4.0"
+      sources."os-locale-3.1.0"
+      sources."p-defer-1.0.0"
+      sources."p-finally-1.0.0"
+      sources."p-is-promise-2.0.0"
+      sources."p-limit-2.1.0"
+      sources."p-locate-3.0.0"
+      sources."p-try-2.0.0"
+      sources."parse-passwd-1.0.0"
+      sources."pascalcase-0.1.1"
+      sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."supports-color-5.4.0"
+      sources."path-key-2.0.1"
+      sources."posix-character-classes-0.1.1"
+      sources."pump-3.0.0"
+      sources."regex-not-1.0.2"
+      sources."repeat-element-1.1.3"
+      sources."repeat-string-1.6.1"
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-1.0.1"
+      sources."resolve-dir-1.0.1"
+      sources."resolve-url-0.2.1"
+      sources."ret-0.1.15"
+      sources."safe-regex-1.1.0"
+      sources."semver-5.6.0"
+      sources."set-blocking-2.0.0"
+      (sources."set-value-2.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
+      sources."signal-exit-3.0.2"
+      (sources."snapdragon-0.8.2" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+          sources."ms-2.0.0"
+        ];
+      })
+      (sources."snapdragon-node-2.1.1" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+        ];
+      })
+      (sources."snapdragon-util-3.0.1" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."source-map-0.5.7"
+      sources."source-map-resolve-0.5.2"
+      sources."source-map-url-0.4.0"
+      sources."split-string-3.1.0"
+      sources."sprintf-js-1.0.3"
+      (sources."static-extend-0.1.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."string-width-2.1.1"
+      sources."strip-ansi-4.0.0"
+      sources."strip-eof-1.0.0"
+      sources."strip-json-comments-2.0.1"
+      sources."supports-color-6.0.0"
+      (sources."to-object-path-0.3.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."to-regex-3.0.2"
+      sources."to-regex-range-2.1.1"
+      (sources."union-value-1.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+          sources."set-value-0.4.3"
+        ];
+      })
+      (sources."unset-value-1.0.0" // {
+        dependencies = [
+          (sources."has-value-0.3.1" // {
+            dependencies = [
+              sources."isobject-2.1.0"
+            ];
+          })
+          sources."has-values-0.1.4"
+        ];
+      })
+      sources."urix-0.1.0"
+      sources."use-3.1.1"
+      sources."which-1.3.1"
+      sources."which-module-2.0.0"
+      sources."wide-align-1.1.3"
+      (sources."wrap-ansi-2.1.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."is-fullwidth-code-point-1.0.0"
+          sources."string-width-1.0.2"
+          sources."strip-ansi-3.0.1"
+        ];
+      })
       sources."wrappy-1.0.2"
+      sources."y18n-4.0.0"
+      sources."yargs-12.0.5"
+      sources."yargs-parser-11.1.1"
+      sources."yargs-unparser-1.5.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -50659,8 +50975,8 @@ in
       sources."lodash-4.17.11"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."ms-2.1.1"
       sources."native-promise-only-0.8.1"
       sources."path-loader-1.0.9"
@@ -50810,8 +51126,8 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-0.0.8"
       sources."minipass-2.3.5"
       sources."minizlib-1.2.1"
@@ -50957,8 +51273,8 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -51168,8 +51484,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       (sources."mkdirp-0.5.1" // {
@@ -51455,7 +51771,7 @@ in
       sources."camelcase-4.1.0"
       sources."capture-stack-trace-1.0.1"
       sources."chalk-2.4.2"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."ci-info-1.6.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -51847,7 +52163,7 @@ in
       sources."crc-3.4.4"
       sources."cron-1.5.0"
       sources."css-select-1.2.0"
-      sources."css-what-2.1.2"
+      sources."css-what-2.1.3"
       sources."d-1.0.0"
       sources."dashdash-1.14.1"
       sources."debug-2.6.9"
@@ -51862,11 +52178,7 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      (sources."dom-serializer-0.1.0" // {
-        dependencies = [
-          sources."domelementtype-1.1.3"
-        ];
-      })
+      sources."dom-serializer-0.1.1"
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.5.1"
@@ -51885,7 +52197,7 @@ in
       sources."es5-ext-0.10.47"
       sources."es6-iterator-2.0.3"
       sources."es6-map-0.1.5"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."es6-set-0.1.5"
       sources."es6-symbol-3.1.1"
@@ -51941,7 +52253,7 @@ in
       })
       sources."hash-sum-1.0.2"
       sources."help-me-1.1.0"
-      sources."htmlparser2-3.10.0"
+      sources."htmlparser2-3.10.1"
       sources."http-errors-1.6.3"
       sources."http-signature-1.2.0"
       (sources."https-proxy-agent-2.2.1" // {
@@ -52014,8 +52326,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       (sources."mimelib-0.3.1" // {
         dependencies = [
           sources."addressparser-1.0.1"
@@ -52203,10 +52515,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "6.7.0";
+    version = "6.8.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-6.7.0.tgz";
-      sha512 = "OtxCLzx+pcsjMGrjZpBp214ZjxzHcAe3zLYIlaVpRYqFHff6bgggyTLf2OZPO8lfxN0RHLJnFFUU016JCzM/Ww==";
+      url = "https://registry.npmjs.org/npm/-/npm-6.8.0.tgz";
+      sha512 = "xMH6V0OCSJ5ZET6yWPI3BmJSqMMCuVJSIcLx3LSH/SrratFSt6EDuCuGRFMQYty98Q1l6x/7vKmfURosoyWgrA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -52302,8 +52614,8 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.3.5"
@@ -52953,7 +53265,7 @@ in
           sources."normalize-path-2.1.1"
         ];
       })
-      sources."compressible-2.0.15"
+      sources."compressible-2.0.16"
       sources."compression-1.5.2"
       sources."concat-map-0.0.1"
       (sources."connect-2.30.2" // {
@@ -53068,7 +53380,7 @@ in
       })
       sources."has-cors-1.1.0"
       sources."hat-0.0.3"
-      sources."http-errors-1.7.1"
+      sources."http-errors-1.7.2"
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.11"
       sources."ieee754-1.1.12"
@@ -53122,8 +53434,8 @@ in
       })
       sources."methods-1.1.2"
       sources."mime-1.3.4"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -53227,7 +53539,7 @@ in
           sources."statuses-1.2.1"
         ];
       })
-      sources."setprototypeof-1.1.0"
+      sources."setprototypeof-1.1.1"
       sources."simple-concat-1.0.0"
       sources."simple-get-2.8.1"
       sources."simple-peer-6.4.4"
@@ -53356,13 +53668,13 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.0.0"
-      (sources."@babel/core-7.2.2" // {
+      (sources."@babel/core-7.3.3" // {
         dependencies = [
           sources."json5-2.1.0"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.3.2" // {
+      (sources."@babel/generator-7.3.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -53389,7 +53701,7 @@ in
       sources."@babel/helper-wrap-function-7.2.0"
       sources."@babel/helpers-7.3.1"
       sources."@babel/highlight-7.0.0"
-      sources."@babel/parser-7.3.2"
+      sources."@babel/parser-7.3.3"
       sources."@babel/plugin-proposal-async-generator-functions-7.2.0"
       sources."@babel/plugin-proposal-json-strings-7.2.0"
       sources."@babel/plugin-proposal-object-rest-spread-7.3.2"
@@ -53405,7 +53717,7 @@ in
       sources."@babel/plugin-transform-async-to-generator-7.2.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.2.0"
       sources."@babel/plugin-transform-block-scoping-7.2.0"
-      sources."@babel/plugin-transform-classes-7.2.2"
+      sources."@babel/plugin-transform-classes-7.3.3"
       sources."@babel/plugin-transform-computed-properties-7.2.0"
       sources."@babel/plugin-transform-destructuring-7.3.2"
       sources."@babel/plugin-transform-dotall-regex-7.2.0"
@@ -53422,7 +53734,7 @@ in
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.3.0"
       sources."@babel/plugin-transform-new-target-7.0.0"
       sources."@babel/plugin-transform-object-super-7.2.0"
-      sources."@babel/plugin-transform-parameters-7.2.0"
+      sources."@babel/plugin-transform-parameters-7.3.3"
       sources."@babel/plugin-transform-react-jsx-7.3.0"
       sources."@babel/plugin-transform-regenerator-7.0.0"
       sources."@babel/plugin-transform-shorthand-properties-7.2.0"
@@ -53435,8 +53747,8 @@ in
       sources."@babel/runtime-7.3.1"
       sources."@babel/template-7.2.2"
       sources."@babel/traverse-7.2.3"
-      sources."@babel/types-7.3.2"
-      sources."@iarna/toml-2.2.1"
+      sources."@babel/types-7.3.3"
+      sources."@iarna/toml-2.2.2"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@parcel/fs-1.11.0"
@@ -53542,12 +53854,11 @@ in
       sources."caller-callsite-2.0.0"
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
-      sources."camelcase-5.0.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-db-1.0.30000936"
-      sources."caniuse-lite-1.0.30000936"
+      sources."caniuse-db-1.0.30000938"
+      sources."caniuse-lite-1.0.30000938"
       sources."chalk-2.4.2"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."cipher-base-1.0.4"
       (sources."clap-1.2.3" // {
         dependencies = [
@@ -53561,12 +53872,9 @@ in
       sources."class-utils-0.3.6"
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-1.3.1"
-      sources."cli-table3-0.5.1"
-      sources."cliui-4.1.0"
       sources."clone-2.1.2"
       sources."clones-1.2.0"
       sources."coa-2.0.2"
-      sources."code-point-at-1.1.0"
       sources."collection-visit-1.0.0"
       sources."color-3.1.0"
       sources."color-convert-1.9.3"
@@ -53579,7 +53887,7 @@ in
           sources."color-string-0.3.0"
         ];
       })
-      sources."colors-1.3.3"
+      sources."colors-1.1.2"
       sources."command-exists-1.2.8"
       sources."commander-2.19.0"
       sources."component-emitter-1.2.1"
@@ -53590,9 +53898,9 @@ in
       sources."constants-browserify-1.0.0"
       sources."convert-source-map-1.6.0"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
-      sources."cosmiconfig-5.0.7"
+      sources."cosmiconfig-5.1.0"
       sources."create-ecdh-4.0.3"
       sources."create-hash-1.2.0"
       sources."create-hmac-1.1.7"
@@ -53609,9 +53917,9 @@ in
       })
       sources."css-unit-converter-1.1.1"
       sources."css-url-regex-1.1.0"
-      sources."css-what-2.1.2"
+      sources."css-what-2.1.3"
       sources."cssesc-2.0.0"
-      sources."cssnano-4.1.9"
+      sources."cssnano-4.1.10"
       sources."cssnano-preset-default-4.0.7"
       sources."cssnano-util-get-arguments-4.0.0"
       sources."cssnano-util-get-match-4.0.0"
@@ -53656,11 +53964,7 @@ in
       sources."des.js-1.0.0"
       sources."destroy-1.0.4"
       sources."diffie-hellman-5.0.3"
-      (sources."dom-serializer-0.1.0" // {
-        dependencies = [
-          sources."domelementtype-1.1.3"
-        ];
-      })
+      sources."dom-serializer-0.1.1"
       sources."domain-browser-1.2.0"
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
@@ -53674,7 +53978,6 @@ in
       sources."electron-to-chromium-1.3.113"
       sources."elliptic-6.4.1"
       sources."encodeurl-1.0.2"
-      sources."end-of-stream-1.4.1"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
       sources."es-abstract-1.13.0"
@@ -53688,7 +53991,6 @@ in
       sources."etag-1.8.1"
       sources."events-3.0.0"
       sources."evp_bytestokey-1.0.3"
-      sources."execa-1.0.0"
       (sources."expand-brackets-2.1.4" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -53706,7 +54008,6 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."filesize-3.6.1"
       sources."fill-range-4.0.0"
-      sources."find-up-3.0.0"
       sources."flatten-1.0.2"
       sources."for-in-1.0.2"
       sources."foreach-2.0.5"
@@ -53715,9 +54016,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fsevents-1.2.7"
       sources."function-bind-1.1.1"
-      sources."get-caller-file-1.0.3"
       sources."get-port-3.2.0"
-      sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
       sources."glob-7.1.3"
       (sources."glob-parent-3.1.0" // {
@@ -53762,7 +54061,6 @@ in
             ];
           })
           sources."coa-1.0.4"
-          sources."colors-1.1.2"
           sources."cssnano-3.10.0"
           sources."csso-2.3.2"
           sources."esprima-2.7.3"
@@ -53801,7 +54099,7 @@ in
           sources."supports-color-3.2.3"
         ];
       })
-      (sources."htmlparser2-3.10.0" // {
+      (sources."htmlparser2-3.10.1" // {
         dependencies = [
           sources."readable-stream-3.1.1"
         ];
@@ -53816,7 +54114,6 @@ in
       sources."inherits-2.0.3"
       sources."ini-1.3.5"
       sources."invariant-2.2.4"
-      sources."invert-kv-2.0.0"
       sources."is-absolute-url-2.1.0"
       (sources."is-accessor-descriptor-1.0.0" // {
         dependencies = [
@@ -53842,7 +54139,6 @@ in
       sources."is-directory-0.3.1"
       sources."is-extendable-0.1.1"
       sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-2.0.0"
       sources."is-glob-4.0.0"
       sources."is-number-3.0.0"
       sources."is-obj-1.0.1"
@@ -53850,7 +54146,6 @@ in
       sources."is-plain-object-2.0.4"
       sources."is-regex-1.0.4"
       sources."is-resolvable-1.1.0"
-      sources."is-stream-1.1.0"
       sources."is-svg-3.0.0"
       sources."is-symbol-1.0.2"
       sources."is-url-1.2.4"
@@ -53872,24 +54167,21 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json5-1.0.1"
       sources."kind-of-3.2.2"
-      sources."lcid-2.0.0"
       sources."levn-0.3.0"
-      sources."locate-path-3.0.0"
       sources."lodash-4.17.11"
       sources."lodash.clone-4.5.0"
+      sources."lodash.get-4.4.2"
       sources."lodash.memoize-4.1.2"
       sources."lodash.uniq-4.5.0"
       sources."log-symbols-2.2.0"
       sources."loose-envify-1.4.0"
       sources."lru-cache-4.1.5"
       sources."magic-string-0.22.5"
-      sources."map-age-cleaner-0.1.3"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."math-expression-evaluator-1.2.17"
       sources."md5.js-1.3.5"
       sources."mdn-data-1.1.4"
-      sources."mem-4.1.0"
       (sources."merge-source-map-1.0.4" // {
         dependencies = [
           sources."source-map-0.5.7"
@@ -53940,10 +54232,8 @@ in
       sources."normalize-path-3.0.0"
       sources."normalize-range-0.1.2"
       sources."normalize-url-3.3.0"
-      sources."npm-run-path-2.0.2"
       sources."nth-check-1.0.2"
       sources."num2fraction-1.2.2"
-      sources."number-is-nan-1.0.1"
       sources."object-assign-4.1.1"
       sources."object-copy-0.1.0"
       sources."object-inspect-1.4.1"
@@ -53960,23 +54250,15 @@ in
       sources."ora-2.1.0"
       sources."os-browserify-0.3.0"
       sources."os-homedir-1.0.2"
-      sources."os-locale-3.1.0"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
-      sources."p-defer-1.0.0"
-      sources."p-finally-1.0.0"
-      sources."p-is-promise-2.0.0"
-      sources."p-limit-2.1.0"
-      sources."p-locate-3.0.0"
-      sources."p-try-2.0.0"
       sources."pako-0.2.9"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."parse-json-4.0.0"
       sources."parseurl-1.3.2"
       sources."pascalcase-0.1.1"
       sources."path-browserify-0.0.0"
       sources."path-dirname-1.0.2"
-      sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
@@ -54123,7 +54405,6 @@ in
       sources."proto-list-1.2.4"
       sources."pseudomap-1.0.2"
       sources."public-encrypt-4.0.3"
-      sources."pump-3.0.0"
       sources."punycode-1.4.1"
       sources."q-1.5.1"
       sources."query-string-4.3.4"
@@ -54159,7 +54440,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."regexp-tree-0.1.1"
+      sources."regexp-tree-0.1.5"
       sources."regexpu-core-4.4.0"
       sources."regjsgen-0.5.0"
       (sources."regjsparser-0.6.0" // {
@@ -54170,8 +54451,6 @@ in
       sources."remove-trailing-separator-1.1.0"
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
-      sources."require-directory-2.1.1"
-      sources."require-main-filename-1.0.1"
       sources."resolve-1.10.0"
       sources."resolve-from-3.0.0"
       sources."resolve-url-0.2.1"
@@ -54194,7 +54473,6 @@ in
       })
       sources."serialize-to-js-1.2.2"
       sources."serve-static-1.13.2"
-      sources."set-blocking-2.0.0"
       sources."set-value-2.0.0"
       sources."setimmediate-1.0.5"
       sources."setprototypeof-1.1.0"
@@ -54235,28 +54513,22 @@ in
       })
       sources."sprintf-js-1.0.3"
       sources."stable-0.1.8"
-      sources."static-eval-2.0.0"
+      sources."static-eval-2.0.1"
       sources."static-extend-0.1.2"
       sources."static-module-2.2.5"
       sources."statuses-1.4.0"
       sources."stream-browserify-2.0.2"
       sources."stream-http-2.8.3"
       sources."strict-uri-encode-1.1.0"
-      sources."string-width-2.1.1"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-4.0.0"
-      sources."strip-eof-1.0.0"
-      (sources."stylehacks-4.0.2" // {
+      (sources."stylehacks-4.0.3" // {
         dependencies = [
           sources."postcss-selector-parser-3.1.1"
         ];
       })
       sources."supports-color-5.5.0"
-      (sources."svgo-1.1.1" // {
-        dependencies = [
-          sources."colors-1.1.2"
-        ];
-      })
+      sources."svgo-1.1.1"
       (sources."terser-3.16.1" // {
         dependencies = [
           sources."commander-2.17.1"
@@ -54323,23 +54595,11 @@ in
       sources."wcwidth-1.0.1"
       sources."whet.extend-0.9.9"
       sources."which-1.3.1"
-      sources."which-module-2.0.0"
       sources."wordwrap-1.0.0"
-      (sources."wrap-ansi-2.1.0" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."is-fullwidth-code-point-1.0.0"
-          sources."string-width-1.0.2"
-          sources."strip-ansi-3.0.1"
-        ];
-      })
       sources."wrappy-1.0.2"
       sources."ws-5.2.2"
       sources."xtend-4.0.1"
-      sources."y18n-4.0.0"
       sources."yallist-2.1.2"
-      sources."yargs-12.0.5"
-      sources."yargs-parser-11.1.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -54456,7 +54716,7 @@ in
       sources."builtin-status-codes-3.0.0"
       sources."cache-base-1.0.1"
       sources."cached-path-relative-1.0.2"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."cipher-base-1.0.4"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -54665,7 +54925,7 @@ in
       sources."os-tmpdir-1.0.2"
       sources."pako-0.2.9"
       sources."parents-1.0.1"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."pascalcase-0.1.1"
       sources."path-browserify-0.0.1"
       sources."path-dirname-1.0.2"
@@ -54955,6 +55215,23 @@ in
     production = true;
     bypassCache = true;
   };
+  reveal = nodeEnv.buildNodePackage {
+    name = "reveal";
+    packageName = "reveal";
+    version = "0.0.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/reveal/-/reveal-0.0.4.tgz";
+      sha1 = "1c1428193359fb03bc029139062ea29f8f691d85";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The HTML presentation framework";
+      homepage = https://github.com/ForbesLindesay/reveal;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+  };
   s3http = nodeEnv.buildNodePackage {
     name = "s3http";
     packageName = "s3http";
@@ -55035,8 +55312,8 @@ in
       sources."keypress-0.1.0"
       sources."methods-0.1.0"
       sources."mime-1.2.11"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mkdirp-0.3.5"
       sources."ms-2.1.1"
       sources."multiparty-2.2.0"
@@ -55439,7 +55716,12 @@ in
       sources."multiblob-1.13.3"
       sources."multiblob-http-0.4.2"
       sources."multicb-1.2.2"
-      sources."multiserver-3.1.2"
+      (sources."multiserver-3.2.0" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.1"
+        ];
+      })
       sources."multiserver-address-1.0.1"
       sources."multiserver-scopes-1.0.0"
       sources."muxrpc-6.4.2"
@@ -55673,7 +55955,7 @@ in
       sources."remove-trailing-separator-1.1.0"
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
-      sources."resolve-1.7.1"
+      sources."resolve-1.10.0"
       sources."resolve-url-0.2.1"
       sources."restore-cursor-1.0.1"
       sources."resumer-0.0.0"
@@ -55734,7 +56016,7 @@ in
         ];
       })
       sources."snapdragon-util-3.0.1"
-      sources."socks-2.3.1"
+      sources."socks-2.3.2"
       sources."sodium-browserify-1.2.4"
       (sources."sodium-browserify-tweetnacl-0.2.3" // {
         dependencies = [
@@ -55742,7 +56024,7 @@ in
         ];
       })
       sources."sodium-chloride-1.1.2"
-      sources."sodium-native-2.2.6"
+      sources."sodium-native-2.3.0"
       sources."source-map-0.5.7"
       sources."source-map-resolve-0.5.2"
       sources."source-map-url-0.4.0"
@@ -55757,7 +56039,7 @@ in
       sources."ssb-client-4.6.3"
       sources."ssb-config-2.3.9"
       sources."ssb-db-18.6.5"
-      sources."ssb-ebt-5.3.11"
+      sources."ssb-ebt-5.4.1"
       sources."ssb-friends-3.1.13"
       sources."ssb-keys-7.1.5"
       sources."ssb-links-3.0.4"
@@ -55798,7 +56080,7 @@ in
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
       sources."supports-color-2.0.0"
-      (sources."tape-4.10.0" // {
+      (sources."tape-4.10.1" // {
         dependencies = [
           sources."glob-7.1.3"
         ];
@@ -55935,7 +56217,7 @@ in
       })
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."compressible-2.0.15"
+      sources."compressible-2.0.16"
       sources."compression-1.7.3"
       sources."concat-map-0.0.1"
       sources."content-disposition-0.5.2"
@@ -55959,8 +56241,8 @@ in
       sources."isexe-2.0.0"
       sources."json-schema-traverse-0.4.1"
       sources."lru-cache-4.1.5"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
       sources."ms-2.0.0"
@@ -56130,8 +56412,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."moment-2.7.0"
@@ -56620,14 +56902,14 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.127.0";
+    version = "1.134.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.127.0.tgz";
-      sha512 = "+Q5coBgxXa/4sapCc4QvledVGKb1j1g85793AcSY7uDVuNeSgYInPrDHv4t2Xe7boYMBXbNqjhuazQ0DwRcBzg==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.134.2.tgz";
+      sha512 = "WGR3TTZxXOdALEEcQtADFEOHaanhbzwLvS6gyg5vF6Akj7qRAwIIXYBUycbNdAax1mylAsXCzR352dkTwKD9lg==";
     };
     dependencies = [
-      sources."@snyk/dep-graph-1.1.2"
-      sources."@snyk/gemfile-1.1.0"
+      sources."@snyk/dep-graph-1.4.0"
+      sources."@snyk/gemfile-1.2.0"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
       sources."agent-base-4.2.1"
@@ -56676,7 +56958,7 @@ in
       sources."core-js-2.3.0"
       sources."core-util-is-1.0.2"
       sources."create-error-class-3.0.2"
-      sources."cross-spawn-5.1.0"
+      sources."cross-spawn-6.0.5"
       sources."crypto-random-string-1.0.0"
       sources."data-uri-to-buffer-1.2.0"
       sources."debug-3.2.6"
@@ -56685,18 +56967,19 @@ in
       sources."deep-is-0.1.3"
       sources."degenerator-1.0.4"
       sources."depd-1.1.2"
+      sources."diff-4.0.1"
       sources."dockerfile-ast-0.0.12"
       sources."dot-prop-4.2.0"
       sources."duplexer3-0.1.4"
       sources."email-validator-2.0.4"
-      sources."es6-promise-4.2.5"
+      sources."es6-promise-4.2.6"
       sources."es6-promisify-5.0.0"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.11.0"
       sources."esprima-3.1.3"
       sources."estraverse-4.2.0"
       sources."esutils-2.0.2"
-      sources."execa-0.7.0"
+      sources."execa-0.10.0"
       sources."extend-3.0.2"
       sources."external-editor-2.2.0"
       sources."fast-levenshtein-2.0.6"
@@ -56721,7 +57004,6 @@ in
       sources."graceful-fs-4.1.15"
       sources."graphlib-2.1.7"
       sources."has-flag-3.0.0"
-      sources."hasbin-1.2.3"
       sources."hosted-git-info-2.7.1"
       sources."http-errors-1.6.3"
       (sources."http-proxy-agent-2.1.0" // {
@@ -56786,7 +57068,7 @@ in
       sources."lodash.set-4.3.2"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-4.1.5"
-      sources."macos-release-1.1.0"
+      sources."macos-release-2.0.0"
       sources."make-dir-1.3.0"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
@@ -56806,13 +57088,14 @@ in
         ];
       })
       sources."netmask-1.0.6"
+      sources."nice-try-1.0.5"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
       sources."onetime-2.0.1"
       sources."opn-5.4.0"
       sources."optionator-0.8.2"
       sources."os-locale-1.4.0"
-      sources."os-name-2.0.1"
+      sources."os-name-3.0.0"
       sources."os-tmpdir-1.0.2"
       sources."p-finally-1.0.0"
       sources."pac-proxy-agent-2.0.2"
@@ -56864,14 +57147,15 @@ in
       sources."shebang-regex-1.0.0"
       sources."signal-exit-3.0.2"
       sources."smart-buffer-1.1.15"
-      sources."snyk-config-2.2.0"
-      sources."snyk-docker-plugin-1.21.2"
+      sources."snyk-config-2.2.1"
+      sources."snyk-docker-plugin-1.22.0"
       sources."snyk-go-plugin-1.6.1"
       sources."snyk-gradle-plugin-2.1.3"
       sources."snyk-module-1.9.1"
       sources."snyk-mvn-plugin-2.0.1"
       sources."snyk-nodejs-lockfile-parser-1.11.0"
-      sources."snyk-nuget-plugin-1.6.5"
+      sources."snyk-nuget-plugin-1.7.2"
+      sources."snyk-paket-parser-1.4.3"
       sources."snyk-php-plugin-1.5.2"
       sources."snyk-policy-1.13.3"
       sources."snyk-python-plugin-1.9.1"
@@ -56894,7 +57178,12 @@ in
       sources."supports-color-5.5.0"
       sources."temp-dir-1.0.0"
       sources."tempfile-2.0.0"
-      sources."term-size-1.2.0"
+      (sources."term-size-1.2.0" // {
+        dependencies = [
+          sources."cross-spawn-5.1.0"
+          sources."execa-0.7.0"
+        ];
+      })
       sources."then-fs-2.0.0"
       sources."through-2.3.8"
       sources."thunkify-2.1.2"
@@ -56903,12 +57192,6 @@ in
       sources."toml-2.3.6"
       sources."tslib-1.9.3"
       sources."type-check-0.3.2"
-      (sources."undefsafe-2.0.2" // {
-        dependencies = [
-          sources."debug-2.6.9"
-          sources."ms-2.0.0"
-        ];
-      })
       sources."unique-string-1.0.0"
       sources."unpipe-1.0.0"
       sources."unzip-response-2.0.1"
@@ -56919,8 +57202,8 @@ in
       sources."vscode-languageserver-types-3.14.0"
       sources."which-1.3.1"
       sources."widest-line-2.0.1"
-      sources."win-release-1.1.1"
       sources."window-size-0.1.4"
+      sources."windows-release-3.1.0"
       sources."wordwrap-1.0.0"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
@@ -56996,8 +57279,8 @@ in
       sources."has-cors-1.1.0"
       sources."indexof-0.0.1"
       sources."isarray-2.0.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."ms-2.1.1"
       sources."negotiator-0.6.1"
       sources."object-component-0.0.3"
@@ -57017,7 +57300,7 @@ in
         ];
       })
       sources."to-array-0.1.4"
-      sources."ws-6.1.3"
+      sources."ws-6.1.4"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."yeast-0.1.2"
     ];
@@ -57069,18 +57352,14 @@ in
       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.2"
+      sources."css-what-2.1.3"
       (sources."csso-3.5.1" // {
         dependencies = [
           sources."css-tree-1.0.0-alpha.29"
         ];
       })
       sources."define-properties-1.1.3"
-      (sources."dom-serializer-0.1.0" // {
-        dependencies = [
-          sources."domelementtype-1.1.3"
-        ];
-      })
+      sources."dom-serializer-0.1.1"
       sources."domelementtype-1.3.1"
       sources."domutils-1.7.0"
       sources."entities-1.1.2"
@@ -57198,7 +57477,7 @@ in
       sources."capture-stack-trace-1.0.1"
       sources."chalk-1.1.3"
       sources."charenc-0.0.2"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."ci-info-1.6.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -57235,7 +57514,7 @@ in
       sources."content-type-1.0.4"
       sources."cookiejar-2.1.2"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
       sources."create-error-class-3.0.2"
       (sources."cross-spawn-5.1.0" // {
@@ -57453,8 +57732,8 @@ in
       sources."methods-1.1.2"
       sources."micromatch-3.1.10"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mixin-deep-1.3.1"
@@ -58303,10 +58582,10 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.4.41";
+    version = "1.4.42";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.4.41.tgz";
-      sha512 = "vNXjGm61EiFiHkZDpXEmBybzU9r6wioO1bop9hmhNe+KYiWKCv9VySJ66EDE0tj9L2IxVI26zDFRE6kn+RLjQQ==";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.4.42.tgz";
+      sha512 = "7fPkV5B5V9uiXBwRHJHLctvCR5FgdfVBoHw0qcuxk0mvYLB9zKITztViOCr4ilKDFVpGGZ95+r8VfvKLTCnXRg==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -58511,8 +58790,8 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -58868,8 +59147,8 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
@@ -59022,7 +59301,7 @@ in
       sources."@types/express-serve-static-core-4.16.1"
       sources."@types/long-4.0.0"
       sources."@types/mime-2.0.1"
-      sources."@types/node-11.9.3"
+      sources."@types/node-11.9.4"
       sources."@types/range-parser-1.2.3"
       sources."@types/serve-static-1.13.2"
       sources."@types/ws-6.0.1"
@@ -59048,19 +59327,15 @@ in
           sources."normalize-path-2.1.1"
         ];
       })
-      sources."apollo-cache-1.1.25"
-      (sources."apollo-cache-control-0.5.0" // {
-        dependencies = [
-          sources."graphql-extensions-0.5.0"
-        ];
-      })
-      sources."apollo-cache-inmemory-1.4.2"
-      sources."apollo-client-2.4.12"
-      sources."apollo-datasource-0.3.0"
-      sources."apollo-engine-reporting-1.0.1"
-      sources."apollo-engine-reporting-protobuf-0.2.0"
+      sources."apollo-cache-1.1.26"
+      sources."apollo-cache-control-0.5.1"
+      sources."apollo-cache-inmemory-1.4.3"
+      sources."apollo-client-2.4.13"
+      sources."apollo-datasource-0.3.1"
+      sources."apollo-engine-reporting-1.0.2"
+      sources."apollo-engine-reporting-protobuf-0.2.1"
       sources."apollo-env-0.3.3"
-      sources."apollo-graphql-0.1.0"
+      sources."apollo-graphql-0.1.1"
       sources."apollo-link-1.2.8"
       sources."apollo-link-context-1.0.14"
       sources."apollo-link-dedup-1.0.15"
@@ -59068,19 +59343,15 @@ in
       sources."apollo-link-persisted-queries-0.2.2"
       sources."apollo-link-state-0.4.2"
       sources."apollo-link-ws-1.0.14"
-      sources."apollo-server-caching-0.3.0"
-      sources."apollo-server-core-2.4.1"
+      sources."apollo-server-caching-0.3.1"
+      sources."apollo-server-core-2.4.2"
       sources."apollo-server-env-2.2.0"
       sources."apollo-server-errors-2.2.0"
-      sources."apollo-server-express-2.4.1"
-      sources."apollo-server-plugin-base-0.3.1"
-      (sources."apollo-tracing-0.5.0" // {
-        dependencies = [
-          sources."graphql-extensions-0.5.0"
-        ];
-      })
+      sources."apollo-server-express-2.4.2"
+      sources."apollo-server-plugin-base-0.3.2"
+      sources."apollo-tracing-0.5.1"
       sources."apollo-upload-client-10.0.0"
-      sources."apollo-utilities-1.1.2"
+      sources."apollo-utilities-1.1.3"
       sources."argparse-1.0.10"
       sources."arr-diff-4.0.0"
       sources."arr-flatten-1.1.0"
@@ -59120,6 +59391,7 @@ in
         dependencies = [
           sources."debug-2.6.9"
           sources."http-errors-1.6.3"
+          sources."setprototypeof-1.1.0"
         ];
       })
       sources."boxen-1.3.0"
@@ -59142,7 +59414,7 @@ in
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."ci-info-1.6.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -59223,7 +59495,7 @@ in
         ];
       })
       sources."deep-extend-0.6.0"
-      sources."deepmerge-3.1.0"
+      sources."deepmerge-3.2.0"
       sources."defaults-1.0.3"
       sources."define-properties-1.1.3"
       sources."define-property-2.0.2"
@@ -59255,7 +59527,7 @@ in
       sources."es-to-primitive-1.2.0"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
-      sources."esm-3.2.4"
+      sources."esm-3.2.5"
       sources."esprima-4.0.1"
       sources."etag-1.8.1"
       sources."event-pubsub-4.3.0"
@@ -59288,6 +59560,7 @@ in
       (sources."express-4.16.4" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."setprototypeof-1.1.0"
           sources."statuses-1.4.0"
         ];
       })
@@ -59367,8 +59640,8 @@ in
       sources."graceful-fs-4.1.15"
       sources."graceful-readlink-1.0.1"
       sources."graphql-14.1.1"
-      sources."graphql-anywhere-4.1.27"
-      sources."graphql-extensions-0.5.1"
+      sources."graphql-anywhere-4.1.28"
+      sources."graphql-extensions-0.5.2"
       sources."graphql-subscriptions-1.0.0"
       sources."graphql-tag-2.10.1"
       sources."graphql-tools-4.0.4"
@@ -59391,7 +59664,7 @@ in
       sources."hash.js-1.1.7"
       sources."hoek-6.1.2"
       sources."homedir-polyfill-1.0.1"
-      sources."http-errors-1.7.1"
+      sources."http-errors-1.7.2"
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.23"
       sources."ieee754-1.1.12"
@@ -59490,8 +59763,8 @@ in
         ];
       })
       sources."mime-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.0.4"
@@ -59619,6 +59892,7 @@ in
       (sources."raw-body-2.3.3" // {
         dependencies = [
           sources."http-errors-1.6.3"
+          sources."setprototypeof-1.1.0"
         ];
       })
       sources."rc-1.2.8"
@@ -59641,8 +59915,8 @@ in
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
       sources."request-2.88.0"
-      sources."request-promise-core-1.1.1"
-      sources."request-promise-native-1.0.5"
+      sources."request-promise-core-1.1.2"
+      sources."request-promise-native-1.0.7"
       sources."resolve-1.10.0"
       sources."resolve-url-0.2.1"
       sources."restore-cursor-2.0.0"
@@ -59669,12 +59943,13 @@ in
         dependencies = [
           sources."debug-2.6.9"
           sources."http-errors-1.6.3"
+          sources."setprototypeof-1.1.0"
           sources."statuses-1.4.0"
         ];
       })
       sources."serve-static-1.13.2"
       sources."set-value-2.0.0"
-      sources."setprototypeof-1.1.0"
+      sources."setprototypeof-1.1.1"
       sources."sha.js-2.4.11"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
@@ -59866,7 +60141,7 @@ in
       sources."widest-line-2.0.1"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.2"
-      sources."ws-6.1.3"
+      sources."ws-6.1.4"
       sources."xdg-basedir-3.0.0"
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
@@ -59894,32 +60169,32 @@ in
   "@webassemblyjs/cli" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_cli";
     packageName = "@webassemblyjs/cli";
-    version = "1.8.1";
+    version = "1.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.8.1.tgz";
-      sha512 = "QVyEtxu2SfI4tkzZmw6YdYOeqS99y7cm31JSSXVGthc6d5A+GFIPNYKMEcTlYg7dOMghq1OVGihO5Fhp9z7BEg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.8.3.tgz";
+      sha512 = "7/DlFYNCI/UEkngJSseIA7dUiy67dNBFUm6BD0ejZWJvJGFxG7GqICKnIshXgYo5nYzQCIgROZ40jR/D94ZdAQ==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.8.1"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.1"
-      sources."@webassemblyjs/helper-api-error-1.8.1"
-      sources."@webassemblyjs/helper-code-frame-1.8.1"
-      sources."@webassemblyjs/helper-compiler-1.8.1"
-      sources."@webassemblyjs/helper-flatten-ast-1.8.1"
-      sources."@webassemblyjs/helper-fsm-1.8.1"
-      sources."@webassemblyjs/helper-module-context-1.8.1"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.1"
-      sources."@webassemblyjs/ieee754-1.8.1"
-      sources."@webassemblyjs/leb128-1.8.1"
-      sources."@webassemblyjs/utf8-1.8.1"
-      sources."@webassemblyjs/validation-1.8.1"
-      sources."@webassemblyjs/wasm-parser-1.8.1"
-      sources."@webassemblyjs/wast-parser-1.8.1"
-      sources."@webassemblyjs/wast-printer-1.8.1"
+      sources."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-compiler-1.8.3"
+      sources."@webassemblyjs/helper-flatten-ast-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/ieee754-1.8.3"
+      sources."@webassemblyjs/leb128-1.8.3"
+      sources."@webassemblyjs/utf8-1.8.3"
+      sources."@webassemblyjs/validation-1.8.3"
+      sources."@webassemblyjs/wasm-parser-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
       sources."@xtuc/ieee754-1.2.0"
-      sources."@xtuc/long-4.2.1"
+      sources."@xtuc/long-4.2.2"
       sources."mamacro-0.0.3"
-      sources."webassemblyjs-1.8.1"
+      sources."webassemblyjs-1.8.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -59932,32 +60207,32 @@ in
   "@webassemblyjs/repl" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_repl";
     packageName = "@webassemblyjs/repl";
-    version = "1.8.1";
+    version = "1.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.8.1.tgz";
-      sha512 = "tYNlXRptruS7ZxbR0iSj0w+YLm7yhkpQt0zIveBy95vv1Pvzdv+AXxpENOS0niLtzYYyxE42Avbrr+2Ajr8gmg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.8.3.tgz";
+      sha512 = "Yzn3nOKQv5UOk0W7socTGfG/QYOEBrS7yJfZxH9ZUkqDQEwqB//E1/KBgP7zVNnIPewNQ+huwxGpUMdsYIeG0g==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.8.1"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.1"
-      sources."@webassemblyjs/helper-api-error-1.8.1"
-      sources."@webassemblyjs/helper-code-frame-1.8.1"
-      sources."@webassemblyjs/helper-compiler-1.8.1"
-      sources."@webassemblyjs/helper-flatten-ast-1.8.1"
-      sources."@webassemblyjs/helper-fsm-1.8.1"
-      sources."@webassemblyjs/helper-module-context-1.8.1"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.1"
-      sources."@webassemblyjs/ieee754-1.8.1"
-      sources."@webassemblyjs/leb128-1.8.1"
-      sources."@webassemblyjs/utf8-1.8.1"
-      sources."@webassemblyjs/validation-1.8.1"
-      sources."@webassemblyjs/wasm-parser-1.8.1"
-      sources."@webassemblyjs/wast-parser-1.8.1"
-      sources."@webassemblyjs/wast-printer-1.8.1"
+      sources."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-compiler-1.8.3"
+      sources."@webassemblyjs/helper-flatten-ast-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/ieee754-1.8.3"
+      sources."@webassemblyjs/leb128-1.8.3"
+      sources."@webassemblyjs/utf8-1.8.3"
+      sources."@webassemblyjs/validation-1.8.3"
+      sources."@webassemblyjs/wasm-parser-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
       sources."@xtuc/ieee754-1.2.0"
-      sources."@xtuc/long-4.2.1"
+      sources."@xtuc/long-4.2.2"
       sources."mamacro-0.0.3"
-      sources."webassemblyjs-1.8.1"
+      sources."webassemblyjs-1.8.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -60006,33 +60281,33 @@ in
   "@webassemblyjs/wasm-text-gen" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wasm-text-gen";
     packageName = "@webassemblyjs/wasm-text-gen";
-    version = "1.8.1";
+    version = "1.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.8.1.tgz";
-      sha512 = "MUydT8wqGX7TAL3C8EqTC9zhHdWMfoxb+DD+EZjvDpfg7d0B0tTR1PRMCK2f3UnPzuzzQaRizczVmk/B/EHxsg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.8.3.tgz";
+      sha512 = "lPLruy11K0+/PHy+MmuICeYtv2wolOablgirZZlBT2KI1Q9R2qgL8xAVshMebU/iLyh0lNmVVfnu/JpBzB6R5g==";
     };
     dependencies = [
       sources."@babel/code-frame-7.0.0"
-      sources."@babel/generator-7.3.2"
+      sources."@babel/generator-7.3.3"
       sources."@babel/highlight-7.0.0"
-      sources."@babel/parser-7.3.2"
+      sources."@babel/parser-7.3.3"
       sources."@babel/template-7.2.2"
-      sources."@babel/types-7.3.2"
-      sources."@webassemblyjs/ast-1.8.1"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.1"
-      sources."@webassemblyjs/helper-api-error-1.8.1"
-      sources."@webassemblyjs/helper-code-frame-1.8.1"
-      sources."@webassemblyjs/helper-fsm-1.8.1"
-      sources."@webassemblyjs/helper-module-context-1.8.1"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.1"
-      sources."@webassemblyjs/ieee754-1.8.1"
-      sources."@webassemblyjs/leb128-1.8.1"
-      sources."@webassemblyjs/utf8-1.8.1"
-      sources."@webassemblyjs/wasm-parser-1.8.1"
-      sources."@webassemblyjs/wast-parser-1.8.1"
-      sources."@webassemblyjs/wast-printer-1.8.1"
+      sources."@babel/types-7.3.3"
+      sources."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/ieee754-1.8.3"
+      sources."@webassemblyjs/leb128-1.8.3"
+      sources."@webassemblyjs/utf8-1.8.3"
+      sources."@webassemblyjs/wasm-parser-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
       sources."@xtuc/ieee754-1.2.0"
-      sources."@xtuc/long-4.2.1"
+      sources."@xtuc/long-4.2.2"
       sources."ansi-styles-3.2.1"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
@@ -60044,6 +60319,7 @@ in
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
       sources."lodash-4.17.11"
+      sources."mamacro-0.0.3"
       sources."source-map-0.5.7"
       sources."supports-color-5.5.0"
       sources."to-fast-properties-2.0.0"
@@ -60060,22 +60336,23 @@ in
   "@webassemblyjs/wast-refmt" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wast-refmt";
     packageName = "@webassemblyjs/wast-refmt";
-    version = "1.8.1";
+    version = "1.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.8.1.tgz";
-      sha512 = "AFsjo6DKSnmL/3j2W7lUfB6pcmiFawXnQxpMhI0t8DhGsg50FRn7MFR+ZUMstECci+ZzVqERFCTwideJW1phrA==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.8.3.tgz";
+      sha512 = "rclaRL+cYHD23lszpAiduB7sPsGBjya9o1bGj5dgPbaCVsUsJ6Wv9BnvIeKxtMFhFkphQNhuJkPCD074U8Tj3Q==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.8.1"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.1"
-      sources."@webassemblyjs/helper-api-error-1.8.1"
-      sources."@webassemblyjs/helper-code-frame-1.8.1"
-      sources."@webassemblyjs/helper-fsm-1.8.1"
-      sources."@webassemblyjs/helper-module-context-1.8.1"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.1"
-      sources."@webassemblyjs/wast-parser-1.8.1"
-      sources."@webassemblyjs/wast-printer-1.8.1"
-      sources."@xtuc/long-4.2.1"
+      sources."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
+      sources."@xtuc/long-4.2.2"
+      sources."mamacro-0.0.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -60088,32 +60365,32 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "4.29.3";
+    version = "4.29.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-4.29.3.tgz";
-      sha512 = "xPJvFeB+8tUflXFq+OgdpiSnsCD5EANyv56co5q8q8+YtEasn5Sj3kzY44mta+csCIEB0vneSxnuaHkOL2h94A==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-4.29.5.tgz";
+      sha512 = "DuWlYUT982c7XVHodrLO9quFbNpVq5FNxLrMUfYUTlgKW0+yPimynYf1kttSQpEneAL1FH3P3OLNgkyImx8qIQ==";
     };
     dependencies = [
-      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."@webassemblyjs/ast-1.8.3"
+      sources."@webassemblyjs/floating-point-hex-parser-1.8.3"
+      sources."@webassemblyjs/helper-api-error-1.8.3"
+      sources."@webassemblyjs/helper-buffer-1.8.3"
+      sources."@webassemblyjs/helper-code-frame-1.8.3"
+      sources."@webassemblyjs/helper-fsm-1.8.3"
+      sources."@webassemblyjs/helper-module-context-1.8.3"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.8.3"
+      sources."@webassemblyjs/helper-wasm-section-1.8.3"
+      sources."@webassemblyjs/ieee754-1.8.3"
+      sources."@webassemblyjs/leb128-1.8.3"
+      sources."@webassemblyjs/utf8-1.8.3"
+      sources."@webassemblyjs/wasm-edit-1.8.3"
+      sources."@webassemblyjs/wasm-gen-1.8.3"
+      sources."@webassemblyjs/wasm-opt-1.8.3"
+      sources."@webassemblyjs/wasm-parser-1.8.3"
+      sources."@webassemblyjs/wast-parser-1.8.3"
+      sources."@webassemblyjs/wast-printer-1.8.3"
       sources."@xtuc/ieee754-1.2.0"
-      sources."@xtuc/long-4.2.1"
+      sources."@xtuc/long-4.2.2"
       sources."acorn-6.1.0"
       sources."acorn-dynamic-import-4.0.0"
       sources."ajv-6.9.1"
@@ -60169,7 +60446,7 @@ in
       sources."builtin-status-codes-3.0.0"
       sources."cacache-11.3.2"
       sources."cache-base-1.0.1"
-      sources."chokidar-2.1.1"
+      sources."chokidar-2.1.2"
       sources."chownr-1.1.1"
       sources."chrome-trace-event-1.0.0"
       sources."cipher-base-1.0.4"
@@ -60320,6 +60597,7 @@ in
       sources."locate-path-3.0.0"
       sources."lru-cache-5.1.1"
       sources."make-dir-1.3.0"
+      sources."mamacro-0.0.3"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."md5.js-1.3.5"
@@ -60374,7 +60652,7 @@ in
       sources."p-try-2.0.0"
       sources."pako-1.0.8"
       sources."parallel-transform-1.1.0"
-      sources."parse-asn1-5.1.3"
+      sources."parse-asn1-5.1.4"
       sources."pascalcase-0.1.1"
       sources."path-browserify-0.0.0"
       sources."path-dirname-1.0.2"
@@ -61176,7 +61454,7 @@ in
       })
       sources."winreg-1.2.4"
       sources."wrappy-1.0.2"
-      sources."ws-6.1.3"
+      sources."ws-6.1.4"
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
       sources."xmldom-0.1.27"
@@ -61208,7 +61486,7 @@ in
       })
       sources."@cliqz-oss/firefox-client-0.3.1"
       sources."@cliqz-oss/node-firefox-connect-1.2.1"
-      sources."@types/node-11.9.3"
+      sources."@types/node-11.9.4"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."JSONSelect-0.2.1"
       sources."abbrev-1.1.1"
@@ -61338,7 +61616,7 @@ in
       sources."chalk-2.4.0"
       sources."chardet-0.4.2"
       sources."cheerio-1.0.0-rc.2"
-      (sources."chokidar-2.1.1" // {
+      (sources."chokidar-2.1.2" // {
         dependencies = [
           sources."fsevents-1.2.7"
           sources."normalize-path-3.0.0"
@@ -61400,7 +61678,7 @@ in
       })
       sources."configstore-3.1.2"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."core-util-is-1.0.2"
       sources."crc-3.8.0"
       (sources."crc32-stream-2.0.0" // {
@@ -61414,7 +61692,7 @@ in
       sources."crx-parser-0.1.2"
       sources."crypto-random-string-1.0.0"
       sources."css-select-1.2.0"
-      sources."css-what-2.1.2"
+      sources."css-what-2.1.3"
       sources."d-1.0.0"
       sources."dashdash-1.14.1"
       (sources."data-uri-to-buffer-2.0.0" // {
@@ -61457,11 +61735,7 @@ in
       })
       sources."dockerfile-ast-0.0.12"
       sources."doctrine-2.1.0"
-      (sources."dom-serializer-0.1.0" // {
-        dependencies = [
-          sources."domelementtype-1.1.3"
-        ];
-      })
+      sources."dom-serializer-0.1.1"
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.5.1"
@@ -61484,7 +61758,7 @@ in
       sources."es6-promise-2.3.0"
       (sources."es6-promisify-5.0.0" // {
         dependencies = [
-          sources."es6-promise-4.2.5"
+          sources."es6-promise-4.2.6"
         ];
       })
       sources."es6-set-0.1.5"
@@ -61587,7 +61861,7 @@ in
       sources."fast-json-patch-2.0.7"
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-redact-1.4.3"
+      sources."fast-redact-1.4.4"
       sources."fast-safe-stringify-2.0.6"
       sources."fd-slicer-1.1.0"
       sources."figures-2.0.0"
@@ -61692,7 +61966,7 @@ in
       })
       sources."home-or-tmp-3.0.0"
       sources."hosted-git-info-2.7.1"
-      sources."htmlparser2-3.10.0"
+      sources."htmlparser2-3.10.1"
       sources."http-errors-1.6.3"
       (sources."http-proxy-agent-2.1.0" // {
         dependencies = [
@@ -61861,8 +62135,8 @@ in
           sources."kind-of-6.0.2"
         ];
       })
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.0"
@@ -61998,7 +62272,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pino-5.9.0"
       sources."pino-std-serializers-2.3.0"
-      sources."pirates-4.0.0"
+      sources."pirates-4.0.1"
       sources."pkg-dir-2.0.0"
       sources."pluralize-7.0.0"
       sources."po2json-0.4.5"
@@ -62836,8 +63110,8 @@ in
       })
       sources."merge2-1.2.3"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
diff --git a/pkgs/development/node-packages/node-packages-v6.nix b/pkgs/development/node-packages/node-packages-v6.nix
index 1e8dbac51b6..bed3e10b5a1 100644
--- a/pkgs/development/node-packages/node-packages-v6.nix
+++ b/pkgs/development/node-packages/node-packages-v6.nix
@@ -1174,22 +1174,22 @@ let
         sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
       };
     };
-    "mime-db-1.37.0" = {
+    "mime-db-1.38.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.37.0";
+      version = "1.38.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
-        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz";
+        sha512 = "bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==";
       };
     };
-    "mime-types-2.1.21" = {
+    "mime-types-2.1.22" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.21";
+      version = "2.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
-        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz";
+        sha512 = "aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==";
       };
     };
     "minimatch-3.0.4" = {
@@ -2442,8 +2442,8 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
diff --git a/pkgs/development/node-packages/node-packages-v8.nix b/pkgs/development/node-packages/node-packages-v8.nix
index 8ba6a8909c8..16384d7440b 100644
--- a/pkgs/development/node-packages/node-packages-v8.nix
+++ b/pkgs/development/node-packages/node-packages-v8.nix
@@ -40,22 +40,13 @@ let
         sha1 = "468c4bb3ebbd96b1270669f4b9cba4e0065ea485";
       };
     };
-    "adm-zip-0.4.11" = {
+    "adm-zip-0.4.13" = {
       name = "adm-zip";
       packageName = "adm-zip";
-      version = "0.4.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz";
-        sha512 = "L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==";
-      };
-    };
-    "ajv-5.5.2" = {
-      name = "ajv";
-      packageName = "ajv";
-      version = "5.5.2";
+      version = "0.4.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz";
-        sha1 = "73b5eeca3fab653e3d3f9422b341ad42205dc965";
+        url = "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz";
+        sha512 = "fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==";
       };
     };
     "ajv-6.9.1" = {
@@ -994,15 +985,6 @@ let
         sha1 = "da309cc263df15994c688ca902179ca3c7cd7c7e";
       };
     };
-    "co-4.6.0" = {
-      name = "co";
-      packageName = "co";
-      version = "4.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz";
-        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
-      };
-    };
     "code-point-at-1.1.0" = {
       name = "code-point-at";
       packageName = "code-point-at";
@@ -1048,15 +1030,6 @@ let
         sha1 = "168a4701756b6a7f51a12ce0c97bfa28c084ed63";
       };
     };
-    "colors-1.3.0" = {
-      name = "colors";
-      packageName = "colors";
-      version = "1.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/colors/-/colors-1.3.0.tgz";
-        sha512 = "EDpX3a7wHMWFA7PUHWPHNWqOxIIRSJetuwl0AS5Oi/5FMV8kWm69RTlgm00GKjBO1xFHMtBbL49yRtMMdticBw==";
-      };
-    };
     "colors-1.3.3" = {
       name = "colors";
       packageName = "colors";
@@ -1165,13 +1138,13 @@ let
         sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
       };
     };
-    "core-js-2.6.4" = {
+    "core-js-2.6.5" = {
       name = "core-js";
       packageName = "core-js";
-      version = "2.6.4";
+      version = "2.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.4.tgz";
-        sha512 = "05qQ5hXShcqGkPZpXEFLIpxayZscVD2kuMBZewxiIPPEagukO4mqgPA9CWhUvFBJfy3ODdK2p9xyHh7FTU9/7A==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz";
+        sha512 = "klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -1525,15 +1498,6 @@ let
         sha1 = "62cf120234c683785d902348a800ef3e0cc20bc0";
       };
     };
-    "fast-deep-equal-1.1.0" = {
-      name = "fast-deep-equal";
-      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";
-        sha1 = "c053477817c86b51daa853c81e059b733d023614";
-      };
-    };
     "fast-deep-equal-2.0.1" = {
       name = "fast-deep-equal";
       packageName = "fast-deep-equal";
@@ -1885,15 +1849,6 @@ let
         sha1 = "cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d";
       };
     };
-    "har-validator-5.0.3" = {
-      name = "har-validator";
-      packageName = "har-validator";
-      version = "5.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz";
-        sha1 = "ba402c266194f15956ef15e0fcf242993f6a7dfd";
-      };
-    };
     "har-validator-5.1.3" = {
       name = "har-validator";
       packageName = "har-validator";
@@ -2470,15 +2425,6 @@ let
         sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
       };
     };
-    "json-schema-traverse-0.3.1" = {
-      name = "json-schema-traverse";
-      packageName = "json-schema-traverse";
-      version = "0.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz";
-        sha1 = "349a6d44c53a51de89b40805c5d5e59b417d3340";
-      };
-    };
     "json-schema-traverse-0.4.1" = {
       name = "json-schema-traverse";
       packageName = "json-schema-traverse";
@@ -2758,22 +2704,22 @@ let
         sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
       };
     };
-    "mime-db-1.37.0" = {
+    "mime-db-1.38.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.37.0";
+      version = "1.38.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
-        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz";
+        sha512 = "bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==";
       };
     };
-    "mime-types-2.1.21" = {
+    "mime-types-2.1.22" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.21";
+      version = "2.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
-        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz";
+        sha512 = "aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==";
       };
     };
     "minimatch-3.0.4" = {
@@ -3523,15 +3469,6 @@ let
         sha1 = "7693ca768bbb0ea5c8ce08c084a45efa05b892ab";
       };
     };
-    "request-2.87.0" = {
-      name = "request";
-      packageName = "request";
-      version = "2.87.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.87.0.tgz";
-        sha512 = "fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==";
-      };
-    };
     "request-2.88.0" = {
       name = "request";
       packageName = "request";
@@ -3667,13 +3604,13 @@ let
         sha1 = "9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f";
       };
     };
-    "semver-5.5.0" = {
+    "semver-5.5.1" = {
       name = "semver";
       packageName = "semver";
-      version = "5.5.0";
+      version = "5.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz";
-        sha512 = "4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==";
+        url = "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz";
+        sha512 = "PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==";
       };
     };
     "semver-5.6.0" = {
@@ -4036,6 +3973,15 @@ let
         sha1 = "e0c6bc4d26b903124410e4fed81103014dfc1f59";
       };
     };
+    "temp-0.9.0" = {
+      name = "temp";
+      packageName = "temp";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/temp/-/temp-0.9.0.tgz";
+        sha512 = "YfUhPQCJoNQE5N+FJQcdPz63O3x3sdT4Xju69Gj4iZe0lBKOtnAMi0SLj9xKhGkcGhsxThvTJ/usxtFPo438zQ==";
+      };
+    };
     "then-request-2.2.0" = {
       name = "then-request";
       packageName = "then-request";
@@ -4584,7 +4530,7 @@ in
       sources."commander-2.19.0"
       sources."concat-map-0.0.1"
       sources."convert-source-map-1.6.0"
-      sources."core-js-2.6.4"
+      sources."core-js-2.6.5"
       sources."debug-2.6.9"
       sources."detect-indent-4.0.0"
       sources."ejs-2.5.7"
@@ -4924,8 +4870,8 @@ in
       sources."lodash-4.17.11"
       sources."map-stream-0.1.0"
       sources."md5.js-1.3.4"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -5445,8 +5391,8 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -5626,13 +5572,13 @@ in
   titanium = nodeEnv.buildNodePackage {
     name = "titanium";
     packageName = "titanium";
-    version = "5.2.0";
+    version = "5.2.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/titanium/-/titanium-5.2.0.tgz";
-      sha512 = "kB3n4rOfcUznvAA+8yXjuExczfq2ILEp6tUlY2H3YVYRcV5W5tsVsvRJLHeB3sZzijxZY+5DTBuV3txiWevSHA==";
+      url = "https://registry.npmjs.org/titanium/-/titanium-5.2.1.tgz";
+      sha512 = "tltnQ41NBjItM+ELsGL2jpaEnsMMeziZe0sGKtUxhwM1tndh7GFMfu2lpDqAFdMLwj+ZplRmlK0kKP4++68rrA==";
     };
     dependencies = [
-      sources."adm-zip-0.4.11"
+      sources."adm-zip-0.4.13"
       sources."ajv-6.9.1"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
@@ -5640,13 +5586,15 @@ in
       sources."asynckit-0.4.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.8.0"
+      sources."balanced-match-1.0.0"
       sources."bcrypt-pbkdf-1.0.2"
+      sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.1"
       sources."caseless-0.12.0"
-      sources."co-4.6.0"
-      sources."colors-1.3.0"
+      sources."colors-1.3.3"
       sources."combined-stream-1.0.7"
       sources."commander-2.17.1"
+      sources."concat-map-0.0.1"
       sources."core-util-is-1.0.2"
       sources."cycle-1.0.3"
       sources."dashdash-1.14.1"
@@ -5666,12 +5614,16 @@ in
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
       sources."fs-extra-7.0.1"
+      sources."fs.realpath-1.0.0"
       sources."getpass-0.1.7"
+      sources."glob-7.1.3"
       sources."graceful-fs-4.1.15"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."http-signature-1.2.0"
       sources."humanize-0.0.9"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
       sources."is-typedarray-1.0.0"
       sources."isstream-0.1.2"
       sources."jsbn-0.1.1"
@@ -5683,44 +5635,42 @@ in
       sources."keypress-0.2.1"
       sources."lodash-4.17.11"
       sources."longjohn-0.2.12"
-      sources."mime-db-1.37.0"
-      sources."mime-types-2.1.21"
+      sources."mime-db-1.38.0"
+      sources."mime-types-2.1.22"
+      sources."minimatch-3.0.4"
       sources."minimist-0.0.10"
       sources."moment-2.22.2"
       (sources."node-appc-0.2.49" // {
         dependencies = [
-          sources."request-2.88.0"
+          sources."semver-5.5.1"
+          sources."temp-0.8.3"
         ];
       })
       sources."oauth-sign-0.9.0"
+      sources."once-1.4.0"
       sources."optimist-0.6.1"
       sources."os-tmpdir-1.0.2"
+      sources."path-is-absolute-1.0.1"
       sources."performance-now-2.1.0"
       sources."pkginfo-0.3.1"
       sources."psl-1.1.31"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      (sources."request-2.87.0" // {
-        dependencies = [
-          sources."ajv-5.5.2"
-          sources."fast-deep-equal-1.1.0"
-          sources."har-validator-5.0.3"
-          sources."json-schema-traverse-0.3.1"
-          sources."oauth-sign-0.8.2"
-          sources."punycode-1.4.1"
-          sources."tough-cookie-2.3.4"
-        ];
-      })
+      sources."request-2.88.0"
       sources."rimraf-2.2.8"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."semver-5.5.0"
+      sources."semver-5.6.0"
       sources."source-map-0.6.1"
       sources."source-map-support-0.5.10"
       sources."sprintf-0.1.5"
       sources."sshpk-1.16.1"
       sources."stack-trace-0.0.10"
-      sources."temp-0.8.3"
+      (sources."temp-0.9.0" // {
+        dependencies = [
+          sources."rimraf-2.6.3"
+        ];
+      })
       (sources."tough-cookie-2.4.3" // {
         dependencies = [
           sources."punycode-1.4.1"
@@ -5740,6 +5690,7 @@ in
         ];
       })
       sources."wordwrap-0.0.3"
+      sources."wrappy-1.0.2"
       sources."xmldom-0.1.27"
     ];
     buildInputs = globalBuildInputs;
diff --git a/pkgs/development/ocaml-modules/hex/default.nix b/pkgs/development/ocaml-modules/hex/default.nix
index 172eecbe29d..11e1b5dc670 100644
--- a/pkgs/development/ocaml-modules/hex/default.nix
+++ b/pkgs/development/ocaml-modules/hex/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "hex";
-  version = "1.2.0";
+  version = "1.3.0";
 
   minimumOCamlVersion = "4.02";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-${version}.tbz";
-    sha256 = "17hqf7z5afp2z2c55fk5myxkm7cm74259rqm94hcxkqlpdaqhm8h";
+    url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-v${version}.tbz";
+    sha256 = "193567pn58df3b824vmfanncdfgf9cxzl7q3rq39zl9szvzhvkja";
   };
 
   propagatedBuildInputs = [ cstruct ];
diff --git a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
index a9496576875..38050bc09a1 100644
--- a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchFromGitHub, buildDunePackage, result }:
+{ stdenv, fetchFromGitHub, buildDunePackage, result, ppx_derivers }:
 
 buildDunePackage rec {
    pname = "ocaml-migrate-parsetree";
-   version = "1.1.0";
+   version = "1.2.0";
 
    src = fetchFromGitHub {
      owner = "ocaml-ppx";
      repo = pname;
      rev = "v${version}";
-     sha256 = "1d2n349d1cqm3dr09mwy5m9rfd4bkkqvri5i94wknpsrr35vnrr1";
+     sha256 = "16kas19iwm4afijv3yxd250s08absabmdcb4yj57wc8r4fmzv5dm";
    };
 
-   propagatedBuildInputs = [ result ];
+   propagatedBuildInputs = [ ppx_derivers result ];
 
    meta = {
      description = "Convert OCaml parsetrees between different major versions";
diff --git a/pkgs/development/ocaml-modules/psmt2-frontend/default.nix b/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
index c09cf5a77c1..57f1a832f56 100644
--- a/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
+++ b/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
@@ -5,14 +5,14 @@ then throw "psmt2-frontend is not available for OCaml ${ocaml.version}"
 else
 
 stdenv.mkDerivation rec {
-  version = "0.1";
+  version = "0.2";
   name = "ocaml${ocaml.version}-psmt2-frontend-${version}";
 
   src = fetchFromGitHub {
     owner = "Coquera";
     repo = "psmt2-frontend";
     rev = version;
-    sha256 = "0k7jlsbkdyg7hafmvynp0ik8xk7mfr00wz27vxn4ncnmp20yz4vn";
+    sha256 = "097zmbrx4gp2gnrxdmsm9lkkp5450gwi0blpxqy3833m6k5brx3n";
   };
 
   prefixKey = "-prefix ";
diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix
index dfef72835cc..75810a79e28 100644
--- a/pkgs/development/ocaml-modules/yojson/default.nix
+++ b/pkgs/development/ocaml-modules/yojson/default.nix
@@ -2,15 +2,16 @@
 let
   pname = "yojson";
   param =
-  if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
-    version = "1.4.1";
-    sha256 = "0nwsfkmqpyfab4rxq76q8ff7giyanghw08094jyrp275v99zdjr9";
+  if stdenv.lib.versionAtLeast ocaml.version "4.02" then rec {
+    version = "1.6.0";
+    url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz";
+    sha256 = "1h73zkgqs6cl9y7p2l0cgjwyqa1fzcrnzv3k6w7wyq2p1q5m84xh";
     buildInputs = [ dune ];
     extra = { inherit (dune) installPhase; };
-  } else {
+  } else rec {
     version = "1.2.3";
+    url = "https://github.com/ocaml-community/yojson/archive/v${version}.tar.gz";
     sha256 = "10dvkndgwanvw4agbjln7kgb1n9s6lii7jw82kwxczl5rd1sgmvl";
-    buildInputs = [];
     extra = {
       createFindlibDestdir = true;
 
@@ -25,11 +26,10 @@ stdenv.mkDerivation ({
   name = "ocaml${ocaml.version}-${pname}-${param.version}";
 
   src = fetchzip {
-    url = "https://github.com/mjambon/${pname}/archive/v${param.version}.tar.gz";
-    inherit (param) sha256;
+    inherit (param) url sha256;
   };
 
-  buildInputs = [ ocaml findlib ] ++ param.buildInputs;
+  buildInputs = [ ocaml findlib ] ++ (param.buildInputs or []);
 
   propagatedBuildInputs = [ cppo easy-format biniou ];
 
diff --git a/pkgs/development/python-modules/acoustics/default.nix b/pkgs/development/python-modules/acoustics/default.nix
index 2b145810f1b..7f54af28bd8 100644
--- a/pkgs/development/python-modules/acoustics/default.nix
+++ b/pkgs/development/python-modules/acoustics/default.nix
@@ -1,26 +1,30 @@
-{ stdenv, buildPythonPackage, fetchPypi
-, cython, pytest, numpy, scipy, matplotlib, pandas, tabulate }:
+{ lib, buildPythonPackage, fetchPypi
+, pytest, numpy, scipy, matplotlib, pandas, tabulate, pythonOlder }:
 
 buildPythonPackage rec {
   pname = "acoustics";
-  version = "0.1.2";
+  version = "0.2.0.post2";
 
-  buildInputs = [ cython pytest ];
+  checkInputs = [ pytest ];
   propagatedBuildInputs = [ numpy scipy matplotlib pandas tabulate ];
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b75a47de700d01e704de95953a6e969922b2f510d7eefe59f7f8980ad44ad1b7";
+    sha256 = "c0ca4d7ca67fd867c3a7e34232a98a1fc210ee7ff845f3d2eed445a01737b2ff";
   };
 
-  # Tests not distributed
-  doCheck = false;
+  checkPhase = ''
+    pushd tests
+    py.test ./.
+    popd
+  '';
 
-  meta = with stdenv.lib; {
+  disabled = pythonOlder "3.6";
+
+  meta = with lib; {
     description = "A package for acousticians";
     maintainers = with maintainers; [ fridh ];
     license = with licenses; [ bsd3 ];
     homepage = https://github.com/python-acoustics/python-acoustics;
-    broken = true;
   };
 }
diff --git a/pkgs/development/python-modules/aiolifx-effects/default.nix b/pkgs/development/python-modules/aiolifx-effects/default.nix
new file mode 100644
index 00000000000..bbe2b538ac5
--- /dev/null
+++ b/pkgs/development/python-modules/aiolifx-effects/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+, isPy3k
+, aiolifx
+}:
+
+buildPythonPackage rec {
+  pname = "aiolifx-effects";
+  version = "0.2.1";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "aiolifx_effects";
+    sha256 = "cb4ac52deeb220783fc6449251cf40833fcffa28648270be64b1b3e83e06b503";
+  };
+
+  # tests are not implemented
+  doCheck = false;
+
+  disabled = !isPy3k;
+
+  propagatedBuildInputs = [ aiolifx ];
+
+  meta = with lib; {
+    homepage = https://github.com/amelchio/aiolifx_effects;
+    license = licenses.mit;
+    description = "Light effects (pulse, colorloop ...) for LIFX lights running on aiolifx";
+    maintainers = with maintainers; [ netixx ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiolifx/default.nix b/pkgs/development/python-modules/aiolifx/default.nix
new file mode 100644
index 00000000000..b7855bee72d
--- /dev/null
+++ b/pkgs/development/python-modules/aiolifx/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+, isPy3k
+, ifaddr
+, bitstring
+}:
+
+buildPythonPackage rec {
+  pname = "aiolifx";
+  version = "0.6.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "cf53c9faea6eee25a466e73eef1753b82a75c7497648149c19c15342df2678f2";
+  };
+
+  # tests are not implemented
+  doCheck = false;
+
+  disabled = !isPy3k;
+
+  propagatedBuildInputs = [ bitstring ifaddr ];
+
+  meta = with lib; {
+    homepage = http://github.com/frawau/aiolifx;
+    license = licenses.mit;
+    description = "API for local communication with LIFX devices over a LAN with asyncio";
+    maintainers = with maintainers; [ netixx ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiorpcx/default.nix b/pkgs/development/python-modules/aiorpcx/default.nix
index 1c5d651264e..346e2f33893 100644
--- a/pkgs/development/python-modules/aiorpcx/default.nix
+++ b/pkgs/development/python-modules/aiorpcx/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "aiorpcx";
-  version = "0.10.2";
+  version = "0.10.4";
 
   src = fetchPypi {
     inherit version;
     pname = "aiorpcX";
-    sha256 = "1p88k15jh0d2a18pnnbfcamsqi2bxvmmhpizmdlxfdxf8vy5ggyj";
+    sha256 = "15jhklvl0ncy3mb2h9zkahky9fzzr1amgjylm2k3mvlpyn2dbpz6";
   };
 
   propagatedBuildInputs = [ attrs ];
diff --git a/pkgs/development/python-modules/beanstalkc/default.nix b/pkgs/development/python-modules/beanstalkc/default.nix
new file mode 100644
index 00000000000..9ac9cf831eb
--- /dev/null
+++ b/pkgs/development/python-modules/beanstalkc/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchPypi, buildPythonPackage }:
+
+buildPythonPackage rec {
+  pname = "beanstalkc";
+  version = "0.4.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "98978e57797320146f4b233286d9a02f65d20bad0168424118839fc608085280";
+  };
+
+  meta = {
+    description = "A simple beanstalkd client library for Python";
+    maintainers = with stdenv.lib.maintainers; [ aanderse ];
+    license = with stdenv.lib.licenses; [ asl20 ];
+    homepage = https://github.com/earl/beanstalkc;
+  };
+}
diff --git a/pkgs/development/python-modules/cassandra-driver/default.nix b/pkgs/development/python-modules/cassandra-driver/default.nix
index 519a06adcc0..05fe33f7e2e 100644
--- a/pkgs/development/python-modules/cassandra-driver/default.nix
+++ b/pkgs/development/python-modules/cassandra-driver/default.nix
@@ -1,4 +1,5 @@
 { stdenv
+, libev
 , buildPythonPackage
 , fetchPypi
 , pkgs
@@ -24,10 +25,25 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "42bcb167a90da6604081872ef609a327a63273842da81120fc462de031155abe";
+    sha256 = "1gjs2lqy0ba6zhh13a1dhirk59i7lc4zcbl7h50619hdm5kv3g22";
   };
 
-  buildInputs = [ pkgs.libev cython ];
+  buildInputs = [
+    libev
+  ];
+
+  nativeBuildInputs = [
+    # NOTE: next version will work with cython 0.29
+    # Requires 'Cython!=0.25,<0.29,>=0.20'
+    (cython.overridePythonAttrs(old: rec {
+      pname = "Cython";
+      version = "0.28.3";
+      src = fetchPypi {
+        inherit pname version;
+        sha256 = "1aae6d6e9858888144cea147eb5e677830f45faaff3d305d77378c3cba55f526";
+      };
+    }))
+  ];
 
   propagatedBuildInputs = [ six ]
     ++ stdenv.lib.optionals (pythonOlder "3.4") [ futures ];
diff --git a/pkgs/development/python-modules/httpretty/default.nix b/pkgs/development/python-modules/httpretty/default.nix
index 9d03c7528b6..1bcf892cbf4 100644
--- a/pkgs/development/python-modules/httpretty/default.nix
+++ b/pkgs/development/python-modules/httpretty/default.nix
@@ -30,6 +30,8 @@ buildPythonPackage rec {
   ];
   propagatedBuildInputs = [ six ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with stdenv.lib; {
     homepage = "https://falcao.it/HTTPretty/";
     description = "HTTP client request mocking tool";
diff --git a/pkgs/development/python-modules/llfuse/default.nix b/pkgs/development/python-modules/llfuse/default.nix
index 9ff2b55551d..7f9aa3fa2e4 100644
--- a/pkgs/development/python-modules/llfuse/default.nix
+++ b/pkgs/development/python-modules/llfuse/default.nix
@@ -9,7 +9,7 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "mirror://pypi/l/llfuse/${name}.tar.bz2";
-    sha256 = "31a267f7ec542b0cd62e0f1268e1880fdabf3f418ec9447def99acfa6eff2ec9";
+    sha256 = "1j9fzxpgmb4rxxyl9jcf84zvznhgi3hnh4hg5vb0qaslxkvng8ii";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Python bindings for the low-level FUSE API";
-    homepage = https://code.google.com/p/python-llfuse/;
+    homepage = https://github.com/python-llfuse/python-llfuse;
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ bjornfor ];
diff --git a/pkgs/development/python-modules/mail-parser/default.nix b/pkgs/development/python-modules/mail-parser/default.nix
index da74830f879..42162d62aac 100644
--- a/pkgs/development/python-modules/mail-parser/default.nix
+++ b/pkgs/development/python-modules/mail-parser/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "mail-parser";
-  version = "3.4.1";
+  version = "3.9.2";
 
   # no tests in PyPI tarball
   src = fetchFromGitHub {
     owner = "SpamScope";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0nxilshq4gwpicdklja9p275yf8l5kr1lk620c3cx9w4qai4cmbv";
+    sha256 = "0f515a8r3qz3i2cm4lvs5aw59193jl9mk7bmaj9545n4miyar4nr";
   };
 
   LC_ALL = "en_US.utf-8";
diff --git a/pkgs/development/python-modules/nbsphinx/default.nix b/pkgs/development/python-modules/nbsphinx/default.nix
new file mode 100644
index 00000000000..ad6de3d3175
--- /dev/null
+++ b/pkgs/development/python-modules/nbsphinx/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, docutils
+, jinja2
+, nbconvert
+, nbformat
+, sphinx
+, traitlets
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "nbsphinx";
+  version = "0.4.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "b794219e465b3aab500b800884ff40fd152bb19d8b6f87580de1f3a07170aef8";
+  };
+
+  propagatedBuildInputs = [
+    docutils
+    jinja2
+    nbconvert
+    nbformat
+    sphinx
+    traitlets
+  ];
+
+  checkPhase = ''
+    ${python.interpreter} -m nbsphinx
+  '';
+
+  meta = with lib; {
+    description = "Jupyter Notebook Tools for Sphinx";
+    homepage = https://nbsphinx.readthedocs.io/;
+    license = licenses.mit;
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/pygraphviz/default.nix b/pkgs/development/python-modules/pygraphviz/default.nix
index 1fcc0ef8ce4..835cdbaa6be 100644
--- a/pkgs/development/python-modules/pygraphviz/default.nix
+++ b/pkgs/development/python-modules/pygraphviz/default.nix
@@ -32,6 +32,6 @@ buildPythonPackage rec {
     description = "Python interface to Graphviz graph drawing package";
     homepage = https://github.com/pygraphviz/pygraphviz;
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
   };
 }
diff --git a/pkgs/development/python-modules/python-dbusmock/default.nix b/pkgs/development/python-modules/python-dbusmock/default.nix
new file mode 100644
index 00000000000..bee0cab0a3f
--- /dev/null
+++ b/pkgs/development/python-modules/python-dbusmock/default.nix
@@ -0,0 +1,59 @@
+{ lib, buildPythonPackage, fetchPypi,
+  nose, dbus, dbus-python, pygobject3,
+  which, pyflakes, pycodestyle, bluez, networkmanager
+}:
+
+buildPythonPackage rec {
+  pname = "python-dbusmock";
+  version = "0.18.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1hj02p65cic4jdc6a5xf1hx8j5icwy7dcrm5kg91lkjks4gwpg5h";
+  };
+
+  prePatch = ''
+    sed -i -e 's|pyflakes3|pyflakes|g' tests/test_code.py;
+  '';
+
+  # TODO: Get the rest of these tests running?
+  # This is a mocking library used as a check dependency for a single derivation.
+  # That derivation's tests pass. Maybe not worth the effort to fix these...
+  NOSE_EXCLUDE = lib.concatStringsSep "," [
+    "test_bluez4" # NixOS ships BlueZ5
+    # These appear to fail because they're expecting to run in an Ubuntu chroot?
+    "test_everything" # BlueZ5 OBEX
+    "test_polkitd"
+    "test_consolekit"
+    "test_api"
+    "test_logind"
+    "test_notification_daemon"
+    "test_ofono"
+    "test_gnome_screensaver"
+    "test_cli"
+    "test_timedated"
+    "test_upower"
+    # Very slow, consider disabling?
+    # "test_networkmanager"
+  ];
+
+  checkInputs = [
+    nose dbus dbus-python which pycodestyle pyflakes
+    pygobject3 bluez bluez.test networkmanager
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+    export PATH="$PATH:${bluez.test}/test";
+    nosetests -v
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    description = "Mock D-Bus objects for tests";
+    homepage = https://github.com/martinpitt/python-dbusmock;
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ callahad ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/rasterio/default.nix b/pkgs/development/python-modules/rasterio/default.nix
index 6b9ed24488f..9717a9cda23 100644
--- a/pkgs/development/python-modules/rasterio/default.nix
+++ b/pkgs/development/python-modules/rasterio/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "rasterio";
-  version = "1.0.15";
+  version = "1.0.18";
 
   # Pypi doesn't ship the tests, so we fetch directly from GitHub
   src = fetchFromGitHub {
     owner = "mapbox";
     repo = "rasterio";
     rev = version;
-    sha256 = "0waxkqdkaxxmqnkpj397niq193l2bg8s9isal4c7q12jbm6mf7f7";
+    sha256 = "05miivbn2c5slc5nn7fpdn1da42qwzg4z046i71f4r70bc49vsj9";
   };
 
   checkInputs = [ boto3 pytest pytestcov packaging hypothesis ];
diff --git a/pkgs/development/python-modules/requests-toolbelt/default.nix b/pkgs/development/python-modules/requests-toolbelt/default.nix
index f45f5aaa7cc..13e017520a7 100644
--- a/pkgs/development/python-modules/requests-toolbelt/default.nix
+++ b/pkgs/development/python-modules/requests-toolbelt/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   meta = {
     description = "A toolbelt of useful classes and functions to be used with python-requests";
     homepage = http://toolbelt.rtfd.org;
-    maintainers = with lib.maintainers; [ jgeerds ];
     license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ matthiasbeyer jgeerds ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/scikit-build/default.nix b/pkgs/development/python-modules/scikit-build/default.nix
new file mode 100644
index 00000000000..b0300744b5c
--- /dev/null
+++ b/pkgs/development/python-modules/scikit-build/default.nix
@@ -0,0 +1,43 @@
+{ lib, buildPythonPackage, fetchPypi, wheel, setuptools, packaging
+, cmake, ninja, cython, codecov, coverage, six, virtualenv, pathpy
+, pytest, pytestcov, pytest-virtualenv, pytest-mock, pytestrunner
+, requests, flake8 }:
+
+buildPythonPackage rec {
+  pname = "scikit-build";
+  version = "0.8.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1hh275lj98wgwi53mr9fqk8wh1dajjksch52xjax6a79gld4391a";
+  };
+
+  # Fixes incorrect specified requirement (part of next release)
+  patches = [ ./fix_pytestrunner_req.patch ];
+
+  propagatedBuildInputs = [ wheel setuptools packaging ];
+  checkInputs = [ 
+    cmake ninja cython codecov coverage six virtualenv pathpy
+    pytest pytestcov pytest-mock pytest-virtualenv pytestrunner
+    requests flake8
+  ];
+
+  disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
+    "test_hello_develop" # tries setuptools develop install
+    "test_wheel" # pip has no way to install missing dependencies
+    "test_fortran_compiler" # passes if gfortran is available
+    "test_install_command" # tries to alter out path
+    "test_test_command" # tries to alter out path
+  ]);
+
+  checkPhase = ''
+    py.test -k '${disabledTests}'
+  '';
+
+  meta = with lib; {
+    homepage = http://scikit-build.org/;
+    description = "Improved build system generator for CPython C/C++/Fortran/Cython extensions";
+    license = with licenses; [ mit bsd2 ]; # BSD due to reuses of PyNE code
+    maintainers = [ maintainers.FlorianFranzen ];
+  };
+}
diff --git a/pkgs/development/python-modules/scikit-build/fix_pytestrunner_req.patch b/pkgs/development/python-modules/scikit-build/fix_pytestrunner_req.patch
new file mode 100644
index 00000000000..e8e19f84a5d
--- /dev/null
+++ b/pkgs/development/python-modules/scikit-build/fix_pytestrunner_req.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index dd348fa..4de89c6 100755
+--- a/setup.py
++++ b/setup.py
+@@ -22,7 +22,7 @@ with open('requirements-dev.txt', 'r') as fp:
+     dev_requirements = list(filter(bool, (line.strip() for line in fp)))
+ 
+ # Require pytest-runner only when running tests
+-pytest_runner = (['pytest-runner>=2.0,<3dev']
++pytest_runner = (['pytest-runner>=2.0']
+                  if any(arg in sys.argv for arg in ('pytest', 'test'))
+                  else [])
+ 
diff --git a/pkgs/development/python-modules/telethon/default.nix b/pkgs/development/python-modules/telethon/default.nix
index d847a494201..23a06c0cd25 100644
--- a/pkgs/development/python-modules/telethon/default.nix
+++ b/pkgs/development/python-modules/telethon/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "telethon";
-  version = "1.5.4";
+  version = "1.5.5";
 
   src = fetchPypi {
     inherit version;
     pname = "Telethon";
-    sha256 = "52cb4929bf37c98ab5f3e173325dbb3cb9c1ca3f4fe6ba87d35c43e2f98858ce";
+    sha256 = "1qpc4vc3lidhlp1c7521nxizjr6y5c3l9x41knqv02x8n3l9knxa";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/twilio/default.nix b/pkgs/development/python-modules/twilio/default.nix
index ba37373e8ea..c9b80f3699b 100644
--- a/pkgs/development/python-modules/twilio/default.nix
+++ b/pkgs/development/python-modules/twilio/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "twilio";
-  version = "6.23.1";
+  version = "6.24.0";
   # tests not included in PyPi, so fetch from github instead
   src = fetchFromGitHub {
     owner = "twilio";
     repo = "twilio-python";
     rev = version;
-    sha256 = "0f6r2qcgcg4pnnsgf9d1k03ri7h7k8kpasp9mdgv421a4rvqh8lm";
+    sha256 = "16lxns59fms75swfjz46484464q4b1fw3ybf8f2k56aas9gyzb2j";
   };
 
   buildInputs = [ nose mock ];
diff --git a/pkgs/development/python-modules/wrf-python/default.nix b/pkgs/development/python-modules/wrf-python/default.nix
new file mode 100644
index 00000000000..8e9358dd473
--- /dev/null
+++ b/pkgs/development/python-modules/wrf-python/default.nix
@@ -0,0 +1,41 @@
+{lib, fetchFromGitHub, python, pythonOlder, buildPythonPackage, gfortran, mock, xarray, wrapt, numpy, netcdf4}:
+
+buildPythonPackage rec {
+  pname = "wrf-python";
+  version = "1.3.1.1";
+
+  src = fetchFromGitHub {
+    owner = "NCAR";
+    repo = "wrf-python";
+    rev = version;
+    sha256 = "12mm7x1r5md6x28vmwyh6k655pgsv6knj8ycmjbxxk8bk7qsj74h";
+  };
+
+  propagatedBuildInputs = [
+    wrapt
+    numpy
+    xarray
+  ];
+  buildInputs = [
+    gfortran
+  ] ++ lib.optional (pythonOlder "3.3") mock;
+  
+  checkInputs = [
+    netcdf4
+  ];
+
+  doCheck = true;
+  checkPhase = ''
+    runHook preCheck
+    cd ./test/ci_tests
+    python utests.py
+    runHook postCheck
+  '';
+
+  meta = {
+    description = "WRF postprocessing library for Python";
+    homepage = http://wrf-python.rtfd.org;
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ mhaselsteiner ];
+	};
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index a72ef7937c5..68931773f04 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -8,7 +8,10 @@
 , python3 ? null
 , ruby ? null
 , lua ? null
-, useX11, rubyBindings, pythonBindings, luaBindings
+, useX11 ? false
+, rubyBindings ? false
+, pythonBindings ? false
+, luaBindings ? false
 }:
 
 assert useX11 -> (gtk2 != null && vte != null && gtkdialog != null);
diff --git a/pkgs/development/tools/bazel-watcher/default.nix b/pkgs/development/tools/bazel-watcher/default.nix
index 3f952ef7140..5bb1825d035 100644
--- a/pkgs/development/tools/bazel-watcher/default.nix
+++ b/pkgs/development/tools/bazel-watcher/default.nix
@@ -29,9 +29,6 @@ buildBazelPackage rec {
 
       # tell rules_go to use the Go binary found in the PATH
       sed -e 's:go_register_toolchains():go_register_toolchains(go_version = "host"):g' -i WORKSPACE
-
-      # tell rules_go to invoke GIT with custom CAINFO path
-      export GIT_SSL_CAINFO="${cacert}/etc/ssl/certs/ca-bundle.crt"
     '';
 
     preInstall = ''
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 142f729517d..6fdb5734507 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-11-01";
+  version = "2019-02-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 = "1af8921d52f053fad575f26762533a3823b4a847";
-    sha256 = "0srz0sbz4bq9n7cp4g1n3kd3j6rcjqfi25sq8aa64l27yqzbk53x";
+    rev = "6585033409e09028852403ec15ec0c77851234be";
+    sha256 = "0hypf7mcbpx2djqm92k82vn1k6pbnv564xbnazx8nw60f6ns0x87";
   };
 
   bazelTarget = "//src/scala/com/github/johnynek/bazel_deps:parseproject_deploy.jar";
@@ -66,7 +66,7 @@ buildBazelPackage rec {
       find . -type d -empty -delete
     '';
 
-    sha256 = "1gvl4a9z8p4ch2gmcj3lpp0imrkrvy8wng949p3wlkibi14hc6ww";
+    sha256 = "1yirrzhhrsmbgd27fg709plhrhyi8pzwqv84yg72sd3799kswh9m";
   };
 
   buildAttrs = {
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index 75ab82a0ac6..32d35f1421c 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -245,6 +245,7 @@ stdenv.mkDerivation rec {
     scripts/generate_bash_completion.sh \
         --bazel=./output/bazel \
         --output=output/bazel-complete.bash \
+        --prepend=scripts/bazel-complete-header.bash \
         --prepend=scripts/bazel-complete-template.bash
   '';
 
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 68d4118f049..c9efefbc330 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, fetchpatch, pkgconfig
 , bzip2, curl, expat, libarchive, xz, zlib, libuv, rhash
+, buildPackages
 # darwin attributes
 , ps
 , isBootstrap ? false
@@ -61,6 +62,8 @@ stdenv.mkDerivation rec {
     ++ optional useQt4 qt4
     ++ optional withQt5 qtbase;
 
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
+
   propagatedBuildInputs = optional stdenv.isDarwin ps;
 
   preConfigure = ''
@@ -71,7 +74,8 @@ stdenv.mkDerivation rec {
       --subst-var-by libc_lib ${getLib stdenv.cc.libc}
     substituteInPlace Modules/FindCxxTest.cmake \
       --replace "$""{PYTHON_EXECUTABLE}" ${stdenv.shell}
-    configureFlags="--parallel=''${NIX_BUILD_CORES:-1} $configureFlags"
+    # BUILD_CC and BUILD_CXX are used to bootstrap cmake
+    configureFlags="--parallel=''${NIX_BUILD_CORES:-1} CC=$BUILD_CC CXX=$BUILD_CXX $configureFlags"
   '';
 
   configureFlags = [
@@ -95,6 +99,11 @@ stdenv.mkDerivation rec {
     # Avoid depending on frameworks.
     ++ optional (!useNcurses) "-DBUILD_CursesDialog=OFF";
 
+  # make install attempts to use the just-built cmake
+  preInstall = optional (stdenv.hostPlatform != stdenv.buildPlatform) ''
+    sed -i 's|bin/cmake|${buildPackages.cmake}/bin/cmake|g' Makefile
+  '';
+
   dontUseCmakeConfigure = true;
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index 2ec33980caa..72d9f631afb 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -34,12 +34,12 @@ let newPython = python3.override {
 };
 
 in newPython.pkgs.buildPythonApplication rec {
-  version = "1.11.2";
+  version = "1.12.0";
   pname = "conan";
 
   src = newPython.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0b4r9n6541jjp2lsdzc1nc6mk1a953w0d4ynjss3ns7pp89y4nd4";
+    sha256 = "0hgy3wfy96likdchz42h9mawfjw4dxx7k2iinrrlhph7128kji1j";
   };
   checkInputs = [
     git
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index 30422c353af..66e6dcbc059 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -3,18 +3,18 @@
 
 stdenv.mkDerivation rec {
   pname = "leiningen";
-  version = "2.8.3";
+  version = "2.9.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg";
-    sha256 = "1jbrm4vdvwskbi9sxvn6i7h2ih9c3nfld63nx58nblghvlcb9vwx";
+    sha256 = "18wwcc956w1ii6zf8zjndgvmc614s18nxz3dary2iigbfq4y0asc";
   };
 
   jarsrc = fetchurl {
     # NOTE: This is actually a .jar, Github has issues
     url = "https://github.com/technomancy/leiningen/releases/download/${version}/${name}-standalone.zip";
-    sha256 = "07kb7d84llp24l959gndnfmislnnvgpsxghmgfdy8chy7g4sy2kz";
+    sha256 = "07pw852w57w3lj3fddlxfzjsln90q52dwxvxpz9qbprw8p2xfrim";
   };
 
   JARNAME = "${name}-standalone.jar";
@@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     mkdir -p $out/bin $out/share
-
     cp -v $src $out/bin/lein
     cp -v $jarsrc $out/share/$JARNAME
   '';
@@ -37,10 +36,8 @@ stdenv.mkDerivation rec {
   fixupPhase = ''
     chmod +x $out/bin/lein
     patchShebangs $out/bin/lein
-
     substituteInPlace $out/bin/lein \
       --replace 'LEIN_JAR=/usr/share/java/leiningen-$LEIN_VERSION-standalone.jar' "LEIN_JAR=$out/share/$JARNAME"
-
     wrapProgram $out/bin/lein \
       --prefix PATH ":" "${stdenv.lib.makeBinPath [ rlwrap coreutils ]}" \
       --set LEIN_GPG ${gnupg1compat}/bin/gpg \
diff --git a/pkgs/development/tools/documentation/mdsh/default.nix b/pkgs/development/tools/documentation/mdsh/default.nix
new file mode 100644
index 00000000000..3c6e6728529
--- /dev/null
+++ b/pkgs/development/tools/documentation/mdsh/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  name = "mdsh-${version}";
+  version = "0.1.3";
+
+  src = fetchFromGitHub {
+    owner = "zimbatm";
+    repo = "mdsh";
+    rev = "v${version}";
+    sha256 = "17pd090wpnx7i8q9pp9rhps35ahm1xn4h6pm1cfsafm072qd7rff";
+  };
+
+  cargoSha256 = "1hsnz4sj8kff9azcbw9pkr2ipxlymz4zcm4vhfwydfkdlvdncpxm";
+
+  meta = with stdenv.lib; {
+    description = "Markdown shell pre-processor";
+    homepage = https://github.com/zimbatm/mdsh;
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ zimbatm ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/godef/default.nix b/pkgs/development/tools/godef/default.nix
index 497c765b5b1..993305bd98f 100644
--- a/pkgs/development/tools/godef/default.nix
+++ b/pkgs/development/tools/godef/default.nix
@@ -1,17 +1,18 @@
-{ stdenv, buildGoPackage, fetchgit }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "godef-${version}";
-  version = "1.0.0";
-  rev = "7b4626be9fa8081987905fd4719d2f6628f9d8b5";
+  version = "1.1.1";
+  rev = "v${version}";
 
   goPackagePath = "github.com/rogpeppe/godef";
-  excludedPackages = "go/printer/testdata";
+  subPackages = [ "." ];
 
-  src = fetchgit {
+  src = fetchFromGitHub {
     inherit rev;
-    url = "https://github.com/rogpeppe/godef";
-    sha256 = "0zhw4ba19hy0kv74c58ax759h8721khmwj04fak2y5800ymsgndg";
+    owner = "rogpeppe";
+    repo = "godef";
+    sha256 = "1bpzqnb9fsk1pjjap3gm94pqch1jz02rfah9hg8iqbfm0dzpy31b";
   };
 
   meta = {
diff --git a/pkgs/development/tools/gometalinter/default.nix b/pkgs/development/tools/gometalinter/default.nix
index cce678e9d07..f63d33138fc 100644
--- a/pkgs/development/tools/gometalinter/default.nix
+++ b/pkgs/development/tools/gometalinter/default.nix
@@ -40,7 +40,7 @@ let
 
 in buildGoPackage rec {
   name = "gometalinter-${version}";
-  version = "2.0.11";
+  version = "3.0.0";
 
   goPackagePath = "github.com/alecthomas/gometalinter";
   excludedPackages = "\\(regressiontests\\)";
@@ -49,7 +49,7 @@ in buildGoPackage rec {
     owner = "alecthomas";
     repo = "gometalinter";
     rev = "v${version}";
-    sha256 = "08p7bwvhpgizif8qi59m8mm3mcny70x9msbk8m8vjpphsq55wha4";
+    sha256 = "06dd60531qp0hxfwnxnyi36d6div1j781jvcb99ykhgrg0kwmzq9";
   };
 
   postInstall = ''
@@ -64,7 +64,7 @@ in buildGoPackage rec {
     description = "Concurrently run Go lint tools and normalise their output";
     homepage = https://github.com/alecthomas/gometalinter;
     license = licenses.mit;
-    maintainers = with maintainers; [ kalbasit ];
+    maintainers = with maintainers; [ kalbasit rvolosatovs ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/tools/gotools/default.nix b/pkgs/development/tools/gotools/default.nix
index 76023faf320..a91a09b49b8 100644
--- a/pkgs/development/tools/gotools/default.nix
+++ b/pkgs/development/tools/gotools/default.nix
@@ -2,8 +2,8 @@
 
 buildGoPackage rec {
   name = "gotools-unstable-${version}";
-  version = "2018-09-11";
-  rev = "677d2ff680c188ddb7dcd2bfa6bc7d3f2f2f75b2";
+  version = "2019-02-11";
+  rev = "44bee7e801e4a70b5fc9a91ff23830ab4df55d5e";
 
   goPackagePath = "golang.org/x/tools";
   goPackageAliases = [ "code.google.com/p/go.tools" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
   src = fetchgit {
     inherit rev;
     url = "https://go.googlesource.com/tools";
-    sha256 = "0vp1w1haqcjd82dxd6x9xrllbfwvm957rxwkpji96cgvhsli2bq5";
+    sha256 = "1y0k6a6vphd01l2mzdm14aqax4qyslgcbyzl6zkbilj55hfp97y4";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/development/tools/gotools/deps.nix b/pkgs/development/tools/gotools/deps.nix
index e85fb120101..1cac56f3ac4 100644
--- a/pkgs/development/tools/gotools/deps.nix
+++ b/pkgs/development/tools/gotools/deps.nix
@@ -4,8 +4,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "0ed95abb35c445290478a5348a7b38bb154135fd";
-      sha256 = "1v7yhcgqj0fy7rsliijw2iwmvyd85hqshrhh2n083x62kw9n9nsl";
+      rev = "65e2d4e15006aab9813ff8769e768bbf4bb667a0";
+      sha256 = "0aqcmh0sp723d6hwgrv7pnrs4crns2ngr4x43jd4v985cbn455x7";
     };
   }
 ]
diff --git a/pkgs/development/tools/k6/default.nix b/pkgs/development/tools/k6/default.nix
new file mode 100644
index 00000000000..cf3b0414c7a
--- /dev/null
+++ b/pkgs/development/tools/k6/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage  rec {
+  name = "k6-${version}";
+  version = "0.23.1";
+
+  goPackagePath = "github.com/loadimpact/k6";
+
+  src = fetchFromGitHub {
+    owner = "loadimpact";
+    repo = "k6";
+    rev = "v${version}";
+    sha256 = "03krrpbb67h9hmrg5m94936kha667yh2lqzp9s7fv0b6khskr9r7";
+  };
+
+  subPackages = [ "./" ];
+
+  meta = with stdenv.lib; {
+    homepage = https://k6.io/;
+    description = "A modern load testing tool, using Go and JavaScript";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ offline ];
+  };
+}
diff --git a/pkgs/development/tools/kind/default.nix b/pkgs/development/tools/kind/default.nix
index bf73e436fa7..8cf08a93750 100644
--- a/pkgs/development/tools/kind/default.nix
+++ b/pkgs/development/tools/kind/default.nix
@@ -4,13 +4,13 @@ with stdenv.lib;
 
 buildGoPackage rec {
   name = "kind-${version}";
-  version = "0.0.1";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     rev = "${version}";
     owner = "kubernetes-sigs";
     repo = "kind";
-    sha256 = "1jldj864ip8hrk3zhkjifr4gzgc8kxmxxwvklxglymhv8cxc179f";
+    sha256 = "01ifmnv3jid4ls6qw9d6j9vldjbbnrwclzv8spnh6fnzb2wprln2";
   };
 
   goPackagePath = "sigs.k8s.io/kind";
diff --git a/pkgs/development/tools/ktlint/default.nix b/pkgs/development/tools/ktlint/default.nix
new file mode 100644
index 00000000000..4ce2972e56d
--- /dev/null
+++ b/pkgs/development/tools/ktlint/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, makeWrapper, jre }:
+
+stdenv.mkDerivation rec {
+  name = "ktlint-${version}";
+  version = "0.30.0";
+
+  src = fetchurl {
+    url = "https://github.com/shyiko/ktlint/releases/download/${version}/ktlint";
+    sha256 = "0l3h3q4qc7ij3sr9ij1mrhir18xic7qbzgb621fv16zgdk6rjghn";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  propagatedBuildInputs = [ jre ];
+
+  unpackCmd = ''
+    mkdir -p ${name}
+    cp $curSrc ${name}/ktlint
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv ktlint $out/bin/ktlint
+    chmod +x $out/bin/ktlint
+  '';
+
+  postFixup = ''
+    wrapProgram $out/bin/ktlint --prefix PATH : "${jre}/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An anti-bikeshedding Kotlin linter with built-in formatter";
+    homepage = https://ktlint.github.io/;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ tadfisher ];
+  };
+}
diff --git a/pkgs/development/tools/kustomize/default.nix b/pkgs/development/tools/kustomize/default.nix
index cbe37cec3c7..2b2930a61b4 100644
--- a/pkgs/development/tools/kustomize/default.nix
+++ b/pkgs/development/tools/kustomize/default.nix
@@ -1,23 +1,22 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
 { lib, stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "kustomize-${version}";
-  version = "1.0.11";
-  # rev is the 1.0.11 commit, mainly for kustomize version command output
-  rev = "8f701a00417a812558a7b785e8354957afa469ae";
+  version = "2.0.1";
+  # rev is the 2.0.1 commit, mainly for kustomize version command output
+  rev = "ce7e5ee2c30cc5856fea01fe423cf167f2a2d0c3";
 
   goPackagePath = "sigs.k8s.io/kustomize";
 
-  buildFlagsArray = let t = "${goPackagePath}/pkg/commands"; in ''
+  buildFlagsArray = let t = "${goPackagePath}/pkg/commands/misc"; in ''
     -ldflags=
       -s -X ${t}.kustomizeVersion=${version}
          -X ${t}.gitCommit=${rev}
-         -X ${t}.buildDate=unknow
+         -X ${t}.buildDate=unknown
   '';
 
   src = fetchFromGitHub {
-  sha256 = "18kc23l6r2di35md9jbinyzxr791vvdjyklaf3k725imqksikwri";
+    sha256 = "1ljllx2gd329lnq6mdsgh8zzr517ji80b0j21pgr23y0xmd43ijf";
     rev = "v${version}";
     repo = "kustomize";
     owner = "kubernetes-sigs";
@@ -32,6 +31,6 @@ buildGoPackage rec {
     '';
     homepage = https://github.com/kubernetes-sigs/kustomize;
     license = licenses.asl20;
-    maintainers = with maintainers; [ carlosdagos vdemeester periklis ];
+    maintainers = with maintainers; [ carlosdagos vdemeester periklis zaninime ];
   };
 }
diff --git a/pkgs/development/tools/mbed-cli/default.nix b/pkgs/development/tools/mbed-cli/default.nix
index 62489800cbb..cd80a5ad9e6 100644
--- a/pkgs/development/tools/mbed-cli/default.nix
+++ b/pkgs/development/tools/mbed-cli/default.nix
@@ -1,17 +1,28 @@
-{ lib, python3Packages }:
+{ lib, python3Packages, git, mercurial }:
 
 with python3Packages;
 
 buildPythonApplication rec {
   pname = "mbed-cli";
-  version = "1.8.3";
+  version = "1.9.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "04vn2v0d7y3vmm8cswzvn2z85balgp3095n5flvgf3r60fdlhlmp";
+    sha256 = "1228plh55id03qywsw0ai88ypdpbh9iz18jfcyhn21pci7mj77fv";
   };
 
-  doCheck = false; # no tests available in Pypi
+  checkInputs = [
+    git
+    mercurial
+    pytest
+  ];
+
+  checkPhase = ''
+    export GIT_COMMITTER_NAME=nixbld
+    export EMAIL=nixbld@localhost
+    export GIT_COMMITTER_DATE=$SOURCE_DATE_EPOCH
+    pytest test
+  '';
 
   meta = with lib; {
     homepage = https://github.com/ARMmbed/mbed-cli;
diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index 477a5aa415d..424032e21af 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -3,11 +3,11 @@
 # TODO: Look at the hardcoded paths to kernel, modules etc.
 stdenv.mkDerivation rec {
   name = "elfutils-${version}";
-  version = "0.175";
+  version = "0.176";
 
   src = fetchurl {
     url = "https://sourceware.org/elfutils/ftp/${version}/${name}.tar.bz2";
-    sha256 = "0nx6nzbk0rw3pxbzxsfvrjjh37hibzd2gjz5bb8wccpf85ar5vzp";
+    sha256 = "08qhrl4g6qqr4ga46jhh78y56a47p3msa5b2x1qhzbxhf71lfmzb";
   };
 
   patches = [ ./debug-info-from-env.patch ];
diff --git a/pkgs/development/tools/misc/one_gadget/Gemfile b/pkgs/development/tools/misc/one_gadget/Gemfile
new file mode 100644
index 00000000000..bf4378d58ce
--- /dev/null
+++ b/pkgs/development/tools/misc/one_gadget/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'one_gadget'
diff --git a/pkgs/development/tools/misc/one_gadget/Gemfile.lock b/pkgs/development/tools/misc/one_gadget/Gemfile.lock
new file mode 100644
index 00000000000..3e02f085ae6
--- /dev/null
+++ b/pkgs/development/tools/misc/one_gadget/Gemfile.lock
@@ -0,0 +1,17 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    bindata (2.4.4)
+    elftools (1.0.2)
+      bindata (~> 2)
+    one_gadget (1.6.2)
+      elftools (~> 1.0.2)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  one_gadget
+
+BUNDLED WITH
+   1.17.2
diff --git a/pkgs/development/tools/misc/one_gadget/default.nix b/pkgs/development/tools/misc/one_gadget/default.nix
new file mode 100644
index 00000000000..cf4a719292c
--- /dev/null
+++ b/pkgs/development/tools/misc/one_gadget/default.nix
@@ -0,0 +1,15 @@
+{ lib, bundlerApp }:
+
+bundlerApp {
+  pname = "one_gadget";
+  gemdir = ./.;
+  exes = [ "one_gadget" ];
+
+  meta = with lib; {
+    description = "The best tool for finding one gadget RCE in libc.so.6";
+    homepage    = https://github.com/david942j/one_gadget;
+    license     = licenses.mit;
+    maintainers = [ maintainers.artemist ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/misc/one_gadget/gemset.nix b/pkgs/development/tools/misc/one_gadget/gemset.nix
new file mode 100644
index 00000000000..485ddf940fd
--- /dev/null
+++ b/pkgs/development/tools/misc/one_gadget/gemset.nix
@@ -0,0 +1,34 @@
+{
+  bindata = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kz42nvxnk1j9cj0i8lcnhprcgdqsqska92g6l19ziadydfk2gqy";
+      type = "gem";
+    };
+    version = "2.4.4";
+  };
+  elftools = {
+    dependencies = ["bindata"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ajymn59fr9117dkwf5xl8vmr737h6xmrcf1033zjlj2l5qkxn4a";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  one_gadget = {
+    dependencies = ["elftools"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wacvysd7ddnbx2jl1vhzbkb28y974riyns7bpx889518zaa09z0";
+      type = "gem";
+    };
+    version = "1.6.2";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/ocaml/utop/default.nix b/pkgs/development/tools/ocaml/utop/default.nix
index 434f8b3af2e..be6bb73aab8 100644
--- a/pkgs/development/tools/ocaml/utop/default.nix
+++ b/pkgs/development/tools/ocaml/utop/default.nix
@@ -7,12 +7,12 @@ then throw "utop is not available for OCaml ${ocaml.version}"
 else
 
 stdenv.mkDerivation rec {
-  version = "2.2.0";
+  version = "2.3.0";
   name = "utop-${version}";
 
   src = fetchurl {
     url = "https://github.com/diml/utop/archive/${version}.tar.gz";
-    sha256 = "1414snwmqaxs1x8wbpjf6fn3jsl01hq0phrr7639xmb5vh15mgd4";
+    sha256 = "1g1xf19fhzwsikp33pv1wf6wb2qdc5y7dzqi46h8c4l850cwscjh";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix
index b2f7b52d325..296d45723b2 100644
--- a/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/pkgs/development/tools/profiling/sysprof/default.nix
@@ -15,17 +15,16 @@
 , wrapGAppsHook
 , gnome3
 }:
-let
-  version = "3.31.1";
+
+stdenv.mkDerivation rec {
   pname = "sysprof";
-in stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
+  version = "3.30.2";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0gjcd7agxn7cb8xnm8ldss1md7njwqzklqlsxclzqm87s7klnyrg";
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "02xsr3cxyws3cnbhvbxgcc9sn22mri3iv9d7f38pkg89lpjph279";
   };
 
   nativeBuildInputs = [
@@ -63,7 +62,7 @@ in stdenv.mkDerivation rec {
       be restarted.
     '';
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
-    platforms = stdenv.lib.platforms.linux;
+    maintainers = gnome3.maintainers;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/tools/rust/svd2rust/cargo-lock.patch b/pkgs/development/tools/rust/svd2rust/cargo-lock.patch
new file mode 100644
index 00000000000..5cd1f685fc1
--- /dev/null
+++ b/pkgs/development/tools/rust/svd2rust/cargo-lock.patch
@@ -0,0 +1,283 @@
+diff --git a/Cargo.lock b/Cargo.lock
+new file mode 100644
+--- /dev/null
++++ b/Cargo.lock
+@@ -0,0 +1,278 @@
++[[package]]
++name = "ansi_term"
++version = "0.11.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "atty"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
++ "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "autocfg"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "backtrace"
++version = "0.3.13"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "backtrace-sys"
++version = "0.1.28"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "bitflags"
++version = "0.7.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "bitflags"
++version = "1.0.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "cast"
++version = "0.2.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "cc"
++version = "1.0.28"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "cfg-if"
++version = "0.1.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "clap"
++version = "2.32.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "either"
++version = "1.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "error-chain"
++version = "0.11.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "inflections"
++version = "1.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "libc"
++version = "0.2.46"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "quote"
++version = "0.3.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "redox_syscall"
++version = "0.1.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "redox_termios"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rustc-demangle"
++version = "0.1.13"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "strsim"
++version = "0.7.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "svd-parser"
++version = "0.6.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "xmltree 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "svd2rust"
++version = "0.14.0"
++dependencies = [
++ "cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "inflections 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "svd-parser 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "syn"
++version = "0.11.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "synom"
++version = "0.11.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "termion"
++version = "1.5.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "textwrap"
++version = "0.10.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "unicode-width"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "unicode-xid"
++version = "0.0.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "vec_map"
++version = "0.8.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "winapi"
++version = "0.3.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "winapi-i686-pc-windows-gnu"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "winapi-x86_64-pc-windows-gnu"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "xml-rs"
++version = "0.3.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "xmltree"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[metadata]
++"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
++"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
++"checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727"
++"checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5"
++"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6"
++"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
++"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
++"checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
++"checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749"
++"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
++"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
++"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"
++"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
++"checksum inflections 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a"
++"checksum libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)" = "023a4cd09b2ff695f9734c1934145a315594b7986398496841c7031a5a1bbdbd"
++"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
++"checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2"
++"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
++"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619"
++"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
++"checksum svd-parser 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f22b4579485b26262f36086d6b74903befc043a57f8377dfcf05bcf5335cb251"
++"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
++"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
++"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
++"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
++"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
++"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
++"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
++"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
++"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
++"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
++"checksum xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7ec6c39eaa68382c8e31e35239402c0a9489d4141a8ceb0c716099a0b515b562"
++"checksum xmltree 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "472a9d37c7c53ab2391161df5b89b1f3bf76dab6ab150d7941ecbdd832282082"
diff --git a/pkgs/development/tools/rust/svd2rust/default.nix b/pkgs/development/tools/rust/svd2rust/default.nix
new file mode 100644
index 00000000000..2d61ac318e1
--- /dev/null
+++ b/pkgs/development/tools/rust/svd2rust/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "svd2rust-${version}";
+  version = "0.14.0";
+
+  src = fetchFromGitHub {
+    owner = "rust-embedded";
+    repo = "svd2rust";
+    rev = "v${version}";
+    sha256 = "1a0ldmjkhyv5c52gcq8p8avkj0cgj1b367w6hm85bxdf5j4y8rra";
+  };
+  cargoPatches = [ ./cargo-lock.patch ];
+
+  cargoSha256 = "0wsiaa6q9hr9x1cbg6sc8ajg846jjci5qwhdga4d408fmqav72ih";
+
+  # doc tests fail due to missing dependency
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Generate Rust register maps (`struct`s) from SVD files";
+    homepage = https://github.com/rust-embedded/svd2rust;
+    license = with licenses; [ mit asl20 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index 79524b64d70..5466bb8c7c8 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "postman-${version}";
-  version = "6.7.1";
+  version = "6.7.3";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "1x8jj0xs67wi0qj6x22h54crndml6fl8a128s57v058fyxji6brx";
+    sha256 = "04gfdb2pk2y8yv9ixq4ac5pk0rdfspd0810izij3hjnyqlv32hfg";
     name = "${name}.tar.gz";
   };
 
diff --git a/pkgs/games/pro-office-calculator/default.nix b/pkgs/games/pro-office-calculator/default.nix
index f7eebea7563..0fcf5c60c2b 100644
--- a/pkgs/games/pro-office-calculator/default.nix
+++ b/pkgs/games/pro-office-calculator/default.nix
@@ -1,23 +1,17 @@
 { stdenv, fetchFromGitHub, tinyxml-2, cmake, qtbase, qtmultimedia, fetchpatch }:
 stdenv.mkDerivation rec {
-  version = "1.0.6";
+  version = "1.0.13";
   name = "pro-office-calculator-${version}";
 
   src = fetchFromGitHub {
     owner  = "RobJinman";
     repo   = "pro_office_calc";
     rev    = "v${version}";
-    sha256 = "1irgch6cbc2f8il1zh8qf98m43h41hma80dxzz9c7xvbvl99lybd";
+    sha256 = "1v75cysargmp4fk7px5zgib1p6h5ya4w39rndbzk614fcnv0iipd";
   };
 
   buildInputs = [ qtbase qtmultimedia tinyxml-2 ];
 
-  # This fixes a bug resulting in "illegal instruction"
-  patches = [(fetchpatch {
-    url = https://github.com/RobJinman/pro_office_calc/commit/806180d69d4af6b3183873f471c57bfdaf529560.patch;
-    sha256 = "1rcdjy233yf3kv4v18c82jyg08dykj2qspvg08n5b3bir870sbxz";
-  })];
-
   nativeBuildInputs = [ cmake ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index c31b8b22216..17f25e25e3f 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -1,11 +1,13 @@
-{ stdenv, lib, writeScript, buildFHSUserEnv, steam, glxinfo-i686
+{ config, stdenv, lib, writeScript, buildFHSUserEnv, steam, glxinfo-i686
 , steam-runtime-wrapped, steam-runtime-wrapped-i686 ? null
-, withJava ? false
-, withPrimus ? false
 , extraPkgs ? pkgs: [ ] # extra packages to add to targetPkgs
 , extraProfile ? "" # string to append to profile
 , nativeOnly ? false
 , runtimeOnly ? false
+
+# DEPRECATED
+, withJava ? config.steam.java or false
+, withPrimus ? config.steam.primus or false
 }:
 
 let
diff --git a/pkgs/games/t4kcommon/default.nix b/pkgs/games/t4kcommon/default.nix
new file mode 100644
index 00000000000..f576403b70b
--- /dev/null
+++ b/pkgs/games/t4kcommon/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, fetchurl, cmake, pkgconfig, SDL, SDL_image, SDL_mixer, SDL_net, SDL_ttf, libpng, librsvg, libxml2 }:
+
+stdenv.mkDerivation rec {
+  version = "0.1.1";
+  pname = "t4kcommon";
+
+  src = fetchFromGitHub {
+    owner = "tux4kids";
+    repo = "t4kcommon";
+    rev = "upstream/${version}";
+    sha256 = "13q02xpmps9qg8zrzzy2gzv4a6afgi28lxk4z242j780v0gphchp";
+  };
+
+  patches = [
+    # patch from debian to support libpng16 instead of libpng12
+    (fetchurl {
+      url = "https://salsa.debian.org/tux4kids-pkg-team/t4kcommon/raw/f7073fa384f5a725139f54844e59b57338b69dc7/debian/patches/libpng16.patch";
+      sha256 = "1lcpkdy5gvxgljg1vkrxych74amq0gramb1snj2831dam48is054";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ SDL SDL_image SDL_mixer SDL_net SDL_ttf libpng librsvg libxml2 ];
+
+  meta = with stdenv.lib; {
+    description = "A library of code shared between tuxmath and tuxtype.";
+    homepage = https://github.com/tux4kids/t4kcommon;
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.aanderse ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/games/tuxtype/default.nix b/pkgs/games/tuxtype/default.nix
new file mode 100644
index 00000000000..6b2fb8178ea
--- /dev/null
+++ b/pkgs/games/tuxtype/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, librsvg, libxml2, SDL, SDL_image, SDL_mixer, SDL_net, SDL_ttf, t4kcommon }:
+
+stdenv.mkDerivation rec {
+  version = "1.8.3";
+  pname = "tuxtype";
+
+  src = fetchFromGitHub {
+    owner = "tux4kids";
+    repo = "tuxtype";
+    rev = "upstream/${version}";
+    sha256 = "1i33rhi9gpzfml4hd73s18h6p2s8zcr26va2vwf2pqqd9fhdwpsg";
+  };
+
+  postPatch = ''
+    patchShebangs data/scripts/sed-linux.sh
+    patchShebangs data/themes/asturian/scripts/sed-linux.sh
+    patchShebangs data/themes/greek/scripts/sed-linux.sh
+    patchShebangs data/themes/hungarian/scripts/sed-linux.sh
+
+    substituteInPlace Makefile.am \
+      --replace "\$(MKDIR_P) -m 2755 " "\$(MKDIR_P) -m 755 " \
+      --replace "chown root:games \$(DESTDIR)\$(pkglocalstatedir)/words" " "
+
+    # required until the following has been merged:
+    # https://salsa.debian.org/tux4kids-pkg-team/tuxtype/merge_requests/1
+    substituteInPlace configure.ac \
+      --replace 'CFLAGS="$CFLAGS $SDL_IMAGE"' 'CFLAGS="$CFLAGS $SDL_IMAGE_CFLAGS"' \
+      --replace 'PKG_CHECK_MODULES([SDL_ttf],' 'PKG_CHECK_MODULES([SDL_TTF],'
+  '';
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ librsvg libxml2 SDL SDL_image SDL_mixer SDL_net SDL_ttf t4kcommon ];
+
+  configureFlags = [ "--without-sdlpango" ];
+
+  meta = with stdenv.lib; {
+    description = "An Educational Typing Tutor Game Starring Tux, the Linux Penguin";
+    homepage = https://github.com/tux4kids/tuxtype;
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.aanderse ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/misc/drivers/epkowa/default.nix b/pkgs/misc/drivers/epkowa/default.nix
index 3892c37a1d5..6bb021c4958 100644
--- a/pkgs/misc/drivers/epkowa/default.nix
+++ b/pkgs/misc/drivers/epkowa/default.nix
@@ -25,6 +25,39 @@ in
 # adding a plugin for another printer shouldn't be too difficult, but you need the firmware to test...
 
 let plugins = {
+  v330 = stdenv.mkDerivation rec {
+    name = "iscan-v330-bundle";
+    version = "1.0.1";
+    pluginVersion = "0.2.0";
+
+    src = fetchurl {
+      url = "https://download2.ebz.epson.net/iscan/plugin/perfection-v330/rpm/x64/iscan-perfection-v330-bundle-${version}.x64.rpm.tar.gz";
+      sha256 = "f6fa455f04cdfbc3d38526573260746e9546830de93ba182d0365f557d2f7df9";
+    };
+
+    buildInputs = [ patchelf rpm ];
+
+    installPhase = ''
+      ${rpm}/bin/rpm2cpio "plugins/esci-interpreter-perfection-v330-${pluginVersion}-1.x86_64.rpm" | ${cpio}/bin/cpio -idmv
+      mkdir $out{,/share,/lib}
+      cp -r ./usr/share/{iscan-data,esci}/ $out/share/
+      cp -r ./usr/lib64/esci $out/lib
+      '';
+
+    preFixup = ''
+      lib=$out/lib/esci/libesci-interpreter-perfection-v330.so
+      rpath=${gcc.cc.lib}/lib/
+      patchelf --set-rpath $rpath $lib
+      '';
+
+    passthru = {
+      registrationCommand = ''
+        $registry --add interpreter usb 0x04b8 0x0142 "$plugin/lib/esci/libesci-interpreter-perfection-v330 $plugin/share/esci/esfwad.bin"
+        '';
+      hw = "Perfection V330 Photo";
+      };
+    meta = common_meta // { description = "Plugin to support "+passthru.hw+" scanner in sane."; };
+  };
   x770 =   stdenv.mkDerivation rec {
     pname = "iscan-gt-x770-bundle";
     version = "1.0.1";
diff --git a/pkgs/misc/drivers/epson-201106w/default.nix b/pkgs/misc/drivers/epson-201106w/default.nix
new file mode 100644
index 00000000000..c61bfb806c5
--- /dev/null
+++ b/pkgs/misc/drivers/epson-201106w/default.nix
@@ -0,0 +1,71 @@
+{ stdenv, fetchurl, rpmextract, autoreconfHook, file, libjpeg, cups }:
+
+let
+  version = "1.0.1";
+  filterVersion = "1.0.0";
+in
+  stdenv.mkDerivation {
+
+    name = "epson-201106w-${version}";
+
+    src = fetchurl {
+      url = "https://download.ebz.epson.net/dsc/op/stable/SRPMS/epson-inkjet-printer-201106w-${version}-1lsb3.2.src.rpm";
+      sha256 = "1yig1xrh1ikblbp7sx706n5nnc237wy4mbch23ymy6akbgqg4aig";
+    };
+
+    nativeBuildInputs = [ rpmextract autoreconfHook file ];
+
+    buildInputs = [ libjpeg cups ];
+
+    unpackPhase = ''
+      rpmextract $src
+      tar -zxf epson-inkjet-printer-201106w-${version}.tar.gz
+      tar -zxf epson-inkjet-printer-filter-${filterVersion}.tar.gz
+      for ppd in epson-inkjet-printer-201106w-${version}/ppds/*; do
+        substituteInPlace $ppd --replace "/opt/epson-inkjet-printer-201106w" "$out"
+        substituteInPlace $ppd --replace "/cups/lib" "/lib/cups"
+      done
+      cd epson-inkjet-printer-filter-${filterVersion}
+    '';
+
+    preConfigure = ''
+      chmod +x configure
+      export LDFLAGS="$LDFLAGS -Wl,--no-as-needed"
+    '';
+
+    postInstall = ''
+      cd ../epson-inkjet-printer-201106w-${version}
+      cp -a lib64 resource watermark $out
+      mkdir -p $out/share/cups/model/epson-inkjet-printer-201106w
+      cp -a ppds $out/share/cups/model/epson-inkjet-printer-201106w/
+      cp -a Manual.txt $out/doc/
+      cp -a README $out/doc/README.driver
+    '';
+
+    meta = with stdenv.lib; {
+      homepage = https://www.openprinting.org/driver/epson-201106w;
+      description = "Epson printer driver (BX535WD, BX630FW, BX635FWD, ME940FW, NX530, NX635, NX635, SX535WD, WorkForce 545, WorkForce 645";
+      longDescription = ''
+        This software is a filter program used with the Common UNIX Printing
+        System (CUPS) under Linux. It supplies high quality printing with
+        Seiko Epson Color Ink Jet Printers.
+        List of printers supported by this package:
+          Epson BX535WD Series
+          Epson BX630FW Series
+          Epson BX635FWD Series
+          Epson ME940FW Series
+          Epson NX530 Series
+          Epson SX535WD Series
+          Epson WorkForce 545 Series
+          Epson WorkForce 645 Series
+        To use the driver adjust your configuration.nix file:
+          services.printing = {
+            enable = true;
+            drivers = [ pkgs.epson-201106w ];
+          };
+      '';
+      license = with licenses; [ lgpl21 epson ];
+      platforms = platforms.linux;
+      maintainers = [ maintainers.nphilou ];
+    };
+  }
diff --git a/pkgs/misc/emulators/wine/sources.nix b/pkgs/misc/emulators/wine/sources.nix
index 2fcb38c0a1e..b8a896d8683 100644
--- a/pkgs/misc/emulators/wine/sources.nix
+++ b/pkgs/misc/emulators/wine/sources.nix
@@ -13,9 +13,9 @@ let fetchurl = args@{url, sha256, ...}:
 in rec {
 
   stable = fetchurl rec {
-    version = "3.0.4";
-    url = "https://dl.winehq.org/wine/source/3.0/wine-${version}.tar.xz";
-    sha256 = "037vlrk80lagy362w7500i2ldwvdwsadrknajzi67cvxpvnqhnnl";
+    version = "4.0";
+    url = "https://dl.winehq.org/wine/source/4.0/wine-${version}.tar.xz";
+    sha256 = "0k8d90mgjzv8vjspmnxzr3i5mbccxnbr9hf03q1bpf5jjppcsdk7";
 
     ## see http://wiki.winehq.org/Gecko
     gecko32 = fetchurl rec {
@@ -31,24 +31,24 @@ in rec {
 
     ## see http://wiki.winehq.org/Mono
     mono = fetchurl rec {
-      version = "4.7.3";
+      version = "4.7.5";
       url = "http://dl.winehq.org/wine/wine-mono/${version}/wine-mono-${version}.msi";
-      sha256 = "0fkd22v2vm3ml76x1ngg42byvmry24xb92vpl4j84zhw6wbq0jnj";
+      sha256 = "0gsb03dc97hqdkw8kpl5ky53bygfnpxkgn2ry5bfzvfdfva6hk8m";
     };
   };
 
   unstable = fetchurl rec {
     # NOTE: Don't forget to change the SHA256 for staging as well.
-    version = "4.0-rc5";
-    url = "https://dl.winehq.org/wine/source/4.0/wine-${version}.tar.xz";
-    sha256 = "0nx5ahahfnmimd2b7zh2wx36b877vad10i2kr2zib9m9b2w8wyfd";
+    version = "4.2";
+    url = "https://dl.winehq.org/wine/source/4.x/wine-${version}.tar.xz";
+    sha256 = "1ysvq2jyvh7r27iwpsrlrwzj672jnrihry91bx3m3fysz3sl3ld1";
     inherit (stable) mono gecko32 gecko64;
   };
 
   staging = fetchFromGitHub rec {
     # https://github.com/wine-staging/wine-staging/releases
     inherit (unstable) version;
-    sha256 = "0smp6ngs77vk1yg0saavhhn7kmi9ri8y8gc3vcgg837ycwg5i5qb";
+    sha256 = "1dhv6y60g64bj3kgfknbfzxfzmy686dh7svxlvi4lfis2faikxmk";
     owner = "wine-staging";
     repo = "wine-staging";
     rev = "v${version}";
diff --git a/pkgs/misc/lguf-brightness/default.nix b/pkgs/misc/lguf-brightness/default.nix
index 180aa9cbe76..297ca955e86 100644
--- a/pkgs/misc/lguf-brightness/default.nix
+++ b/pkgs/misc/lguf-brightness/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   pname = "lguf-brightness";
 
-  version = "unstable-2018-02-07";
+  version = "unstable-2018-02-11";
 
   src = fetchFromGitHub  {
     owner = "periklis";
     repo = pname;
-    rev = "d194272b7a0374b27f036cbc1a9be7f231d40cbb";
-    sha256 = "0zj81bqchms9m7rik1jxp6zylh9dxqzr7krlj9947v0phr4qgah4";
+    rev = "fcb2bc1738d55c83b6395c24edc27267a520a725";
+    sha256 = "0cf7cn2kpmlvz00qxqj1m5zxmh7i2x75djbj4wqk7if7a0nlrd5m";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/misc/screensavers/pipes/default.nix b/pkgs/misc/screensavers/pipes/default.nix
index 6e4ae16e9c8..8539db5e002 100644
--- a/pkgs/misc/screensavers/pipes/default.nix
+++ b/pkgs/misc/screensavers/pipes/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/pipeseroni/pipes.sh;
     description = "Animated pipes terminal screensaver";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/misc/themes/arc/default.nix b/pkgs/misc/themes/arc/default.nix
index ca49fb7d8a4..adbee8a09f6 100644
--- a/pkgs/misc/themes/arc/default.nix
+++ b/pkgs/misc/themes/arc/default.nix
@@ -1,19 +1,15 @@
 { stdenv, fetchFromGitHub, sassc, autoreconfHook, pkgconfig, gtk3, gnome3
 , gtk-engine-murrine, optipng, inkscape }:
 
-let
-  pname = "arc-theme";
-in
-
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
-  version = "20181022";
+  pname = "arc-theme";
+  version = "20190213";
 
   src = fetchFromGitHub {
     owner  = "NicoHood";
     repo   = pname;
     rev    = version;
-    sha256 = "08951dk1irfadwpr3p323a4fprmxg53rk2r2niwq3v62ryhi3663";
+    sha256 = "1qalf61xh6a8yz2a98z3ih0w9ky12v3wc61gdczbfnyfasgzc254";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/misc/urbit/default.nix b/pkgs/misc/urbit/default.nix
index e356e83436d..e10fa1b06b7 100644
--- a/pkgs/misc/urbit/default.nix
+++ b/pkgs/misc/urbit/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "urbit-${version}";
-  version = "0.6.0";
+  version = "0.7.3";
 
   src = fetchFromGitHub {
     owner = "urbit";
     repo = "urbit";
-    rev = "urbit-${version}";
-    sha256 = "158mz6c6y5z1b6piid8hvrl5mcqh8q1ny185gz51jayia51azmgs";
+    rev = "v${version}";
+    sha256 = "192843pjzh8z55fd0x70m3l1vncmixljia3nphgn7j7x4976xkp2";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index 3ea855bfae6..c6c803098ca 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -61,12 +61,12 @@ let
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2019-02-01";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "w0rp";
       repo = "ale";
-      rev = "4d426bf2873c6e1cd2c71e478c756903307628d3";
-      sha256 = "044nzg672rmbamvzmc41i6klgs7qwdv1a3gl2l18cbli8jr4q8c2";
+      rev = "c3d4e0983b4b08e61692cdd88990a79525a78707";
+      sha256 = "1sb79rkqhq6w4c2mm53dc1lrff2m3ipxqrjipacnv9imiznfaysa";
     };
   };
 
@@ -127,12 +127,12 @@ let
 
   awesome-vim-colorschemes = buildVimPluginFrom2Nix {
     pname = "awesome-vim-colorschemes";
-    version = "2019-01-12";
+    version = "2019-02-16";
     src = fetchFromGitHub {
       owner = "rafi";
       repo = "awesome-vim-colorschemes";
-      rev = "24df42761d3653aa8ea2c6f88938c8016b3d11df";
-      sha256 = "03kmmy4na9cxnaf6z34pf9i91sgncxh06xwqmvhg5v8541dsglyq";
+      rev = "88d883cc89b2d13b3bae60aa294cef57067e17e2";
+      sha256 = "0f6xa50r9fv9qhw8slfqq0g0p8y2zc08bpg09f2g0lp69gidi7rg";
     };
   };
 
@@ -160,12 +160,12 @@ let
 
   bufexplorer = buildVimPluginFrom2Nix {
     pname = "bufexplorer";
-    version = "2018-12-10";
+    version = "2019-02-13";
     src = fetchFromGitHub {
       owner = "jlanzarotta";
       repo = "bufexplorer";
-      rev = "be69e397e502803db7d7f0a0e0491282ab2197a5";
-      sha256 = "0brhbkj34yxyq5gvjkqakq0m9zwa981rv6ksca07qhw3nzpxhlkd";
+      rev = "162f6031ada3b2d1ad171e02e93f417ee1689176";
+      sha256 = "0ws8yw1s77pb0gm5wvj5w5symx8fqqzcdizds8cg47cfmw97zz1h";
     };
   };
 
@@ -370,12 +370,12 @@ let
 
   ctrlp-vim = buildVimPluginFrom2Nix {
     pname = "ctrlp-vim";
-    version = "2019-01-28";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "ctrlpvim";
       repo = "ctrlp.vim";
-      rev = "879c40da6b7c65fa01f17a083efee6cdc8bf9d09";
-      sha256 = "10bzxd99swqq8hmjp7yza2majkqsgza3yqjg9mncm2draka90mz1";
+      rev = "2e773fd8c7548526853fff6ee2e642eafbbe3d04";
+      sha256 = "0jvl4ydxmqnbcrzw71jf64vqlnc91970b25r6xl08a0lfb9xi3vd";
     };
   };
 
@@ -403,12 +403,12 @@ let
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2019-02-02";
+    version = "2019-02-11";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "334fce21f798a3c4c7b33a37b107df28069e2bd7";
-      sha256 = "01nbbsp62jqff7pm85lbi3kmwgq83cpm87p3bn8nbb7iw8ivkiva";
+      rev = "c779cc48d1b390b455fb19e4a439ca9cd605cc6e";
+      sha256 = "06y5dljnvflay03r8dr8lgycqgwj62gyvf3v33w9ysdksyap44qr";
     };
   };
 
@@ -449,12 +449,12 @@ let
 
   deoplete-jedi = buildVimPluginFrom2Nix {
     pname = "deoplete-jedi";
-    version = "2019-01-27";
+    version = "2019-02-06";
     src = fetchFromGitHub {
       owner = "zchee";
       repo = "deoplete-jedi";
-      rev = "5b273e7ec3832748f0231d7f5a38150ae2bcfd30";
-      sha256 = "09bsrpd86lwfak4sljzxslznkwx6qbb0jddvgvigsm7vpxa2x9ih";
+      rev = "b953291d3f776b5b730f22720fa2b15bc4300922";
+      sha256 = "0p9m3g318fcn0zbiak7xf4gczwn4f21zff8xwlki7l7rlmqh66k4";
       fetchSubmodules = true;
     };
   };
@@ -494,12 +494,12 @@ let
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete-nvim";
-    version = "2019-02-03";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "1d577d43feae8eae88176c7909e7891297acc8de";
-      sha256 = "1hbwz2mkxzq213bpgvrnpf784f193s9bk479nhysrv6704dpqb4v";
+      rev = "a588aee169f3b52a0382dc0289e883710f8f7f48";
+      sha256 = "1m9hqbs9nbhd8zr791pvinl14wl5gmj8fj1yl18nqq1f6475jhka";
     };
   };
 
@@ -527,12 +527,12 @@ let
 
   echodoc-vim = buildVimPluginFrom2Nix {
     pname = "echodoc-vim";
-    version = "2018-12-09";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "echodoc.vim";
-      rev = "2ca26d0a63210d8936ee86b82d409bd98e1b6bf7";
-      sha256 = "19cmggxrgbj429fflcz0gamg1779577qm0mykq6kycx0j7zyclbf";
+      rev = "6a544ef131b1d851f94dd1cc24d0c9c7315d54e7";
+      sha256 = "0jc3h37knh6wfmxfl8b82b1nc9i6r75plk364if3i3hk0fys7af1";
     };
   };
 
@@ -561,12 +561,12 @@ let
 
   emmet-vim = buildVimPluginFrom2Nix {
     pname = "emmet-vim";
-    version = "2019-01-28";
+    version = "2019-02-10";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "emmet-vim";
-      rev = "19f2821b7b457a2db7f7e4c25ade0b947b560fb0";
-      sha256 = "1brf5r1sprnqbp7hszk9ygz4l2mk7493l5zsl60y1rx2yhfw78c9";
+      rev = "d698f1658770ca5fa58c87e80421c8d65bbe9065";
+      sha256 = "12dk21ddjw9dz87bw8hq37v1nd4q7q452sn5pa4sa289b9v0ik8q";
       fetchSubmodules = true;
     };
   };
@@ -849,12 +849,12 @@ let
 
   jedi-vim = buildVimPluginFrom2Nix {
     pname = "jedi-vim";
-    version = "2019-01-25";
+    version = "2019-02-12";
     src = fetchFromGitHub {
       owner = "davidhalter";
       repo = "jedi-vim";
-      rev = "f36749776d78eee1c7e19ed18380bd66180453de";
-      sha256 = "1r16fyi1grbqi9a8z7pg87msh3621cspvapqdi9zmfzjj9gvz2cv";
+      rev = "d02a72e79254feb42401d49d7c28e90b45e4d823";
+      sha256 = "148qyk27pmbzxz7dn9wpandqrxs8lblrn6zky9nlwcnlnxlv6c5i";
       fetchSubmodules = true;
     };
   };
@@ -1103,12 +1103,12 @@ let
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2019-02-01";
+    version = "2019-02-09";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "e57ec7889bfb4371c5a4241183204d0bd1f8aea8";
-      sha256 = "0ynln0wn0kg5s6n3v31bijwkr0cghv5jzlkawaj4ihxnx44lf839";
+      rev = "47f7313ca6b1f490e3b72ea64f362bd8df5b9654";
+      sha256 = "1dy7r54sncswkf259rn38dydvlp1fvfw0dabnwl9gx51wzj6ibjn";
     };
   };
 
@@ -1125,12 +1125,12 @@ let
 
   neomake = buildVimPluginFrom2Nix {
     pname = "neomake";
-    version = "2019-02-01";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "benekastah";
       repo = "neomake";
-      rev = "5fc1f982a5172705038e0a65adf587d9e43c160e";
-      sha256 = "1r8mfn95s9kmswbkqsk03n2y2zzi8msqfkl9nzy2l9af9hvf9gwr";
+      rev = "d365cd5ecf5b1cefa60e50660c2c60266bf64dfb";
+      sha256 = "1d29ri74kya45srdkmx8kkni3xyx9d4m3jll9wd9vdbqvd4fsjd9";
     };
   };
 
@@ -1158,12 +1158,12 @@ let
 
   neosnippet-vim = buildVimPluginFrom2Nix {
     pname = "neosnippet-vim";
-    version = "2019-01-29";
+    version = "2019-02-13";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neosnippet.vim";
-      rev = "c9b41fe9b8cca4b6a11cc0cbe71eecb94fa8a30f";
-      sha256 = "1dn09s5jyi0k521llbi4qg5kpmza55i6bxxfvaizkdzdcimnmwxq";
+      rev = "4903cf61966f824b4e603780c9e3871b28f77ba9";
+      sha256 = "0wl3vmiph6nxkagr1ly5xjyh575s0rl836wymdj230my31wnm3ij";
     };
   };
 
@@ -1202,23 +1202,23 @@ let
 
   nerdcommenter = buildVimPluginFrom2Nix {
     pname = "nerdcommenter";
-    version = "2019-02-04";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "scrooloose";
       repo = "nerdcommenter";
-      rev = "3427b2f4ef5f28c9886b7fed54eb9b1cd417fbdf";
-      sha256 = "1mfb34z37bl5rqs5q0jmgjqmiqkjl7fw7plik8qfnwgbaspxhfv3";
+      rev = "5100f47542cb9cab120f172816471e6c3e242278";
+      sha256 = "0d8n5cq50jyykqij3jazzl0cn53p1jf9gv05a13s2gs88gx1w67a";
     };
   };
 
   nerdtree = buildVimPluginFrom2Nix {
     pname = "nerdtree";
-    version = "2019-02-01";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "scrooloose";
       repo = "nerdtree";
-      rev = "8cc154d4b0cf28f73815050b9782e6ac5a4d733d";
-      sha256 = "0cfasf1g4xns1pasriy14k16w6v2j7cb2zbxh62d6cra0jra70i0";
+      rev = "c05615fd80141c3ab04459e75a42d2ed6f030e18";
+      sha256 = "08488ff2m7hn95afa2g1a8znajd7ikhd5fnv4a6kzlgv9gyz3qji";
     };
   };
 
@@ -1290,12 +1290,12 @@ let
 
   onehalf = buildVimPluginFrom2Nix {
     pname = "onehalf";
-    version = "2019-01-31";
+    version = "2019-02-12";
     src = fetchFromGitHub {
       owner = "sonph";
       repo = "onehalf";
-      rev = "5d489606484decb862d4c943d845595be3fe7a0f";
-      sha256 = "1qsr470h772xvfxs8bfimb58g77015n0h0ggqjsr3hmm43qj8mal";
+      rev = "c0f08a297e69bc2826f748949e7ce4f0532797ee";
+      sha256 = "0lg5bn5wa5mi7ldghnfwgkiprzs11is2pgsxc9a79wd7skr00smp";
     };
   };
 
@@ -1444,12 +1444,12 @@ let
 
   ranger-vim = buildVimPluginFrom2Nix {
     pname = "ranger-vim";
-    version = "2018-12-21";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "rafaqz";
       repo = "ranger.vim";
-      rev = "0bd9e8122f79655f58142389c595513b855cf05d";
-      sha256 = "0vpfdn01vy065hpc9ii56dsx35cxpmw2k6cidjdl0czy30vyjy94";
+      rev = "6def86f4293d170480ce62cc41f15448075d7835";
+      sha256 = "0890rbmdw3p25cww6vsji7xrndcxsisfyv5przahpclk9fc9sxs8";
     };
   };
 
@@ -1488,12 +1488,12 @@ let
 
   riv-vim = buildVimPluginFrom2Nix {
     pname = "riv-vim";
-    version = "2018-10-17";
+    version = "2019-02-09";
     src = fetchFromGitHub {
       owner = "Rykka";
       repo = "riv.vim";
-      rev = "09ae81f1fcf43d77a36705a7b9201f8cc1c85e23";
-      sha256 = "0a3zzyxz2djy8dwmqjvhfqsingll28dnmnqdw0yii8r4xqxg6a8v";
+      rev = "2e9201219217fdcc5b90104c4cdac05c4bc33e62";
+      sha256 = "1is92786gvrwbp3kr6n1pckwp1kzvnd9znhapnxnlg9sy3zmd2x2";
     };
   };
 
@@ -1565,12 +1565,12 @@ let
 
   Spacegray-vim = buildVimPluginFrom2Nix {
     pname = "Spacegray-vim";
-    version = "2018-12-27";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "ajh17";
       repo = "Spacegray.vim";
-      rev = "63c9e2f75a084ba1fc136973d5d6e1f00fffad88";
-      sha256 = "0djjabb2qp5d0sszdy1pacw4j4h9r03208pzxn5kwg6i660gajak";
+      rev = "d2e346ec3196e9b619b133eabfd4fc5b45210f81";
+      sha256 = "1qgrsmimii33fqc8b6i1mzxh96bv303grybnykshjy46g1ka0rg4";
     };
   };
 
@@ -1785,12 +1785,12 @@ let
 
   tsuquyomi = buildVimPluginFrom2Nix {
     pname = "tsuquyomi";
-    version = "2019-01-16";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "Quramy";
       repo = "tsuquyomi";
-      rev = "db073bb2dc872d29e26da355b5f49269aab6b0d0";
-      sha256 = "113fgcpw8r2cfy5d7n0mxmr9jfyxhy4pgdl6jifz25ximryv3i4z";
+      rev = "a386d98189a4afe63f23a9174115467c6792aac6";
+      sha256 = "1xlwxi6x1b3q65flcpwnlg2xnzfl5m49d5m35cq4iy35bx5b5jxn";
     };
   };
 
@@ -1851,12 +1851,12 @@ let
 
   vim = buildVimPluginFrom2Nix {
     pname = "vim";
-    version = "2019-01-11";
+    version = "2019-02-05";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "a70e2c06b220c1a66244d113665baf0bdc9677ee";
-      sha256 = "01nph2lpvci1538c65a94jjnillaasiab85m4fq8nvqsfbn10d40";
+      rev = "662fa188559f4e586bd481203eef7a7a12f3ba34";
+      sha256 = "04w1gmbmvcch1p4w747hckvxp90i0zwz6lv0cbywnmgvwz71g8zi";
     };
   };
 
@@ -1928,12 +1928,12 @@ let
 
   vim-addon-errorformats = buildVimPluginFrom2Nix {
     pname = "vim-addon-errorformats";
-    version = "2019-01-14";
+    version = "2019-02-09";
     src = fetchFromGitHub {
       owner = "MarcWeber";
       repo = "vim-addon-errorformats";
-      rev = "691fb923df24edb9bdff4af997b1e7b21a9865cf";
-      sha256 = "00ys9aip9lcjkngz4s7gsvv0am151h0rircqqsyk8dj5q4mgq0v5";
+      rev = "a95199208700cb8e274c03c711e35411d6ecbe60";
+      sha256 = "1676s0m2xg3i8hmxi353iw39v3fh0gf787z09vi17nsqf8i6fdi8";
     };
   };
 
@@ -2082,12 +2082,12 @@ let
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2019-02-04";
+    version = "2019-02-12";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "40786883051429053d22ad0da4e04b52e900aaba";
-      sha256 = "09igzw2wg2m55bq9l343wgxdgjmhjg62sz3fr2wjgmr5ji4kpkn4";
+      rev = "448aa43ec4bb49dfb3f75c3e52aad41eec9ee2ce";
+      sha256 = "0fyh6a0rycff1jx5si6zzfc0844ay2p0gbr684z95jp21ic5phrq";
     };
   };
 
@@ -2192,12 +2192,12 @@ let
 
   vim-closetag = buildVimPluginFrom2Nix {
     pname = "vim-closetag";
-    version = "2018-12-08";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "alvan";
       repo = "vim-closetag";
-      rev = "fbcd62bf30e3322894e03ccc2f17cef96ca535ac";
-      sha256 = "097jqajbpzm8cl5a5bci75sjwb34c998z9kkx3s0dd2xyw3la8jq";
+      rev = "9f13011738e11d6f926a641d774635fa415f1b6e";
+      sha256 = "0fm9h1i5jfyq3hkl41jsr2hvcskwh7hhg5m0yxbl57bnigapcz3p";
     };
   };
 
@@ -2313,12 +2313,12 @@ let
 
   vim-devicons = buildVimPluginFrom2Nix {
     pname = "vim-devicons";
-    version = "2019-02-04";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "ryanoasis";
       repo = "vim-devicons";
-      rev = "7cbdd2b68ff9bc6d4da74e9872b12adf32b1bc2f";
-      sha256 = "00g6cy2ly26fmzjdjga987k2apkkhpy1jkndj6d1hg35kwv7bihv";
+      rev = "52543de8e627ae7c6102b4e52ebd52f02420e8a1";
+      sha256 = "10g396yq0l1ywgyin65r4s65kciliqcv8pz3b22va3cmg31fgm6b";
     };
   };
 
@@ -2423,12 +2423,12 @@ let
 
   vim-elixir = buildVimPluginFrom2Nix {
     pname = "vim-elixir";
-    version = "2018-12-31";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "elixir-lang";
       repo = "vim-elixir";
-      rev = "e2be90dd910db0890edcfb08c0837e9da8e37439";
-      sha256 = "0r5fj6jl53adkllx9alpmah6f1qqkhy589n0l9sphsadr6rx8hr1";
+      rev = "b6990d99ac207b7abf0e2b18485d14c9d4aa8e0b";
+      sha256 = "14j65wxxs60zdh5v5mhldy9zghjf5dynxv0hh32q0qqn89jz9q8z";
     };
   };
 
@@ -2511,12 +2511,12 @@ let
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2019-02-03";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "ed07f9a503e53ec3ca4d5e255acb078675f2ff0e";
-      sha256 = "0ykzawd9axa68109mwl3c7177si8sxy6b5x0xwf4z80c1xnc8czx";
+      rev = "a489c6e1d3fc265242fabfd171021b0ea02dacf8";
+      sha256 = "1pincpv0xhr49m31j6j7snil8x9f03i3xqw6vv1ly7q0m42397nn";
     };
   };
 
@@ -2577,12 +2577,12 @@ let
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2019-01-14";
+    version = "2019-02-11";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "a61545f09cad6df2e7a4918cbd6981811f612ae9";
-      sha256 = "0kkh32hpkg225a2y21k1hda5vadc6c3phwaqn85icr3kcbbwwy9s";
+      rev = "c6537a3fd3dfe26e32ea154d74b7a16c2a63b79f";
+      sha256 = "149fxlak6c0xcp9iq7vhfxg6irq1bmj6qjv77b2sahzj59lyq1v7";
     };
   };
 
@@ -2775,12 +2775,12 @@ let
 
   vim-jade = buildVimPluginFrom2Nix {
     pname = "vim-jade";
-    version = "2019-02-01";
+    version = "2019-02-12";
     src = fetchFromGitHub {
       owner = "digitaltoad";
       repo = "vim-jade";
-      rev = "0b4f42ac1ae491adac2b99b81eddd2bfd79337ee";
-      sha256 = "0xr54p19fr8z6ywaw2mlmw0c92dlc7xjsnif19bafjxrlz3l0aq9";
+      rev = "ce65804775f77efad3f97d69e44093d1466051de";
+      sha256 = "0s2dryi4n21wf11czajq6g7yhh4jwdl449cq6bjj7rkjqb9rbx8r";
     };
   };
 
@@ -2797,23 +2797,23 @@ let
 
   vim-javacomplete2 = buildVimPluginFrom2Nix {
     pname = "vim-javacomplete2";
-    version = "2019-01-22";
+    version = "2019-02-07";
     src = fetchFromGitHub {
       owner = "artur-shaik";
       repo = "vim-javacomplete2";
-      rev = "2ac13090e96d28e3bec2141625f9007723010091";
-      sha256 = "04kbkjph57yz78wfv6w8zhrh7c1x6j9fpxfmnysm9nnn4539zdl8";
+      rev = "29fee1cb4554eef3e5a30984ac7a389766ee4da4";
+      sha256 = "1kzx80hz9n2bawrx9lgsfqmjkljbgc1lpl8abnhfzkyy9ax9svk3";
     };
   };
 
   vim-javascript = buildVimPluginFrom2Nix {
     pname = "vim-javascript";
-    version = "2018-12-23";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "pangloss";
       repo = "vim-javascript";
-      rev = "50c135735611946707d04757fdc0cde5537659ae";
-      sha256 = "175w6a5x8wcssd5ix32gmyc4s4v7l4nmhhzvs28n3lwias8cm2q9";
+      rev = "7b978de215d864cf6138275e237a5c1d055556a1";
+      sha256 = "03r8bg0d29myrqysci1aziibjs1526idj79ya824pr165189w42f";
     };
   };
 
@@ -2842,12 +2842,12 @@ let
 
   vim-jsdoc = buildVimPluginFrom2Nix {
     pname = "vim-jsdoc";
-    version = "2018-05-05";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "heavenshell";
       repo = "vim-jsdoc";
-      rev = "5ef086789f5ac431d1d5aab53e771f00f1c25503";
-      sha256 = "0f0dbcvbmha2nfadvf27crxkkxc1ps1inss5n66vy1p5bffv0bpm";
+      rev = "b23073449d1df98ecfe73828079115e0d1d7573b";
+      sha256 = "0r91lr3gpjbaalqln7k8kv4q88w9rclfyji87yzmnr3apjaazyjj";
     };
   };
 
@@ -2952,12 +2952,12 @@ let
 
   vim-lsc = buildVimPluginFrom2Nix {
     pname = "vim-lsc";
-    version = "2019-01-28";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "natebosch";
       repo = "vim-lsc";
-      rev = "20a3545fb0b6551349ecd55c8fd0402bcebc3ab5";
-      sha256 = "1p0fkbg64fp1i4i0aq0bjg3pkf5xc99449nv7l7csf5ql93y17dx";
+      rev = "797779acaa5f9c5eda7e3d6cbe759b4d2f23ee37";
+      sha256 = "1fhpx4vnsx0g7xc1r5c6m78sr6ynyi5q0j69g2h4i45ph4q8xsp4";
     };
   };
 
@@ -3128,12 +3128,12 @@ let
 
   vim-pandoc = buildVimPluginFrom2Nix {
     pname = "vim-pandoc";
-    version = "2018-10-07";
+    version = "2019-02-12";
     src = fetchFromGitHub {
       owner = "vim-pandoc";
       repo = "vim-pandoc";
-      rev = "6be5e23d8ab5df9be20e324fffdc2f978cac2077";
-      sha256 = "07f91w4z49xgrachra78hnfs9jl2hqx15amhcr4phnpb9f3hmjbg";
+      rev = "660f556d1fdcede2900b12a09e1452fc5414ee82";
+      sha256 = "1vafc1c1sh7gd5pg8vlmjjzlvywij5li0rjn7z40wn0r578qzx3k";
     };
   };
 
@@ -3249,12 +3249,12 @@ let
 
   vim-projectionist = buildVimPluginFrom2Nix {
     pname = "vim-projectionist";
-    version = "2018-10-21";
+    version = "2019-02-10";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-projectionist";
-      rev = "ea1347bc475bb58a3c6aa8da37e5a4a019efbf17";
-      sha256 = "1sw4vnb0w78vjaxgx3w4gx6j8jdcb1146fnf7wv497wa2grmi9n9";
+      rev = "12f3fac55f99952abecac01bebfc83adab98d6da";
+      sha256 = "0cxdsa1h9h35gpc7fyyks4xwv277lr6rhwspyzp07zd1ik67jm61";
     };
   };
 
@@ -3304,12 +3304,12 @@ let
 
   vim-racer = buildVimPluginFrom2Nix {
     pname = "vim-racer";
-    version = "2018-08-26";
+    version = "2019-02-07";
     src = fetchFromGitHub {
       owner = "racer-rust";
       repo = "vim-racer";
-      rev = "9c0a05e8b97700ee5d3e742fab889cf40e9e7b88";
-      sha256 = "1gywh4xqbc7z15nvqr0v3h0n51fpaik8z1is0pxvpmj0fwzds0b3";
+      rev = "f0860564baad29f6dd32343749a10bb071ce55a9";
+      sha256 = "0d0fb4dyszn2dkb3xsm2cbbc279x09chfvammv9m2lyfh60lf1hl";
     };
   };
 
@@ -3337,12 +3337,12 @@ let
 
   vim-ruby = buildVimPluginFrom2Nix {
     pname = "vim-ruby";
-    version = "2019-01-29";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "vim-ruby";
       repo = "vim-ruby";
-      rev = "4f640daecbb1d0b4f6c02675bfc0fa958102f5be";
-      sha256 = "1rja2kc3i364d7bfq8d1z5yck6sjzyjxrciv5cb4ww1v6njp4ay5";
+      rev = "0293102cc904b83c6567ef9c4b2a88b54fc75037";
+      sha256 = "0hmfvgk3fmr27i73913mc8gsxhykdq4nls1maqikxdlldvqddrxq";
     };
   };
 
@@ -3392,12 +3392,12 @@ let
 
   vim-sensible = buildVimPluginFrom2Nix {
     pname = "vim-sensible";
-    version = "2018-10-27";
+    version = "2019-02-14";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-sensible";
-      rev = "7f46e82fc7e343be84df6c06bec63dd6494b6712";
-      sha256 = "1xizcrxn34fbpdcbs0ydc1s9kma9cmk1llz0xbmrdgdf2yaz2558";
+      rev = "8db5a732eff08c796de188a52e7af66b99a8b9f2";
+      sha256 = "1ns3qc9h1allivpsk50f9p65n3mqi4cxk96dqf1111pm89cc0xzv";
     };
   };
 
@@ -3414,12 +3414,12 @@ let
 
   vim-signify = buildVimPluginFrom2Nix {
     pname = "vim-signify";
-    version = "2019-02-04";
+    version = "2019-02-10";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-signify";
-      rev = "768f52319212b6e2964e4f11d1baf7092066d504";
-      sha256 = "14b9s7plj9h55n1ddqvjy13mfciviq2ngmjs3x22vrpwgsga2zik";
+      rev = "b8a1b656c65bc703cf9878bcfccb761c9849df0f";
+      sha256 = "08ndg66msqqdrphq271451lnhc1w5dfrm599anpnbafx59d9sg2y";
     };
   };
 
@@ -3436,12 +3436,12 @@ let
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2019-01-29";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "8717c21b270cfd7396de54a256c7be3a30e70cc1";
-      sha256 = "01yl8pl59yksdz9z6ry70m441w847cjwx92z0qf3ipv5038dsngs";
+      rev = "1ff17cc7e8eeaf660daa5efee9e66ef83e00e686";
+      sha256 = "1mrgpkyarc6igd7anzlwpbis6cwsy759ssxapfxmj1q69hyvmdl6";
     };
   };
 
@@ -3513,12 +3513,12 @@ let
 
   vim-startify = buildVimPluginFrom2Nix {
     pname = "vim-startify";
-    version = "2019-01-30";
+    version = "2019-02-15";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-startify";
-      rev = "69e835d1f779140f7c0a27f6fd30ae4d1f9dac77";
-      sha256 = "0s4938xrmn6ivm4dvkhpqc5gdx42hk2m206fkhayxagvwnxsfiwb";
+      rev = "9c5680cd0b94bea9245f79463f52c7c9c6595ffd";
+      sha256 = "1pykpbl1awk79v0r89blqpqwj2nqbhwfh15ljwipgfrprjy1nqd3";
     };
   };
 
@@ -3601,12 +3601,12 @@ let
 
   vim-terraform = buildVimPluginFrom2Nix {
     pname = "vim-terraform";
-    version = "2019-01-23";
+    version = "2019-02-08";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "dde8e028ccba76bd199c46b0bb64c520cc874731";
-      sha256 = "183zxr40nczqacr7s41v5n2a1hx57r8ihadvpp65j6m2kjq19amn";
+      rev = "6d830bb087dfb27a0e911286678de33b78c3e25d";
+      sha256 = "0s982977bn18qbmbd1yihq76fpzkk14ajgi689h21gjm4cq8ycyk";
     };
   };
 
@@ -3656,12 +3656,12 @@ let
 
   vim-toml = buildVimPluginFrom2Nix {
     pname = "vim-toml";
-    version = "2018-11-27";
+    version = "2019-02-13";
     src = fetchFromGitHub {
       owner = "cespare";
       repo = "vim-toml";
-      rev = "06f6c1346be834c7c971d6d1d4f876e5699119bf";
-      sha256 = "12sp45p2ixkvrs9sdyx0m8bc6yn1c2qr0vqbr04c5ac94km1rdar";
+      rev = "5dede56eea3e7a8a40059e8ff748da835d99821a";
+      sha256 = "0fdz83861j4i5r2a95d6akss3kcg0krddlavaj3dqzbjidv620hl";
     };
   };
 
@@ -3821,12 +3821,12 @@ let
 
   vimpreviewpandoc = buildVimPluginFrom2Nix {
     pname = "vimpreviewpandoc";
-    version = "2019-02-02";
+    version = "2019-02-10";
     src = fetchFromGitHub {
       owner = "tex";
       repo = "vimpreviewpandoc";
-      rev = "90e39ff676c78bc6f3dde2a76b56fe86aa38d39c";
-      sha256 = "0xaaq565wfd2bx64wm1cy0k18jrm6l9snwkvmgbp7p10zjxnqfhs";
+      rev = "3b0a589140abf6cc5d19ad678a7f01822bbee34e";
+      sha256 = "15yjr01wfnhaqw1k8bgxk04vvh76y13zfms66irpihw79f9yzxi9";
     };
   };
 
@@ -3854,12 +3854,12 @@ let
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2019-02-01";
+    version = "2019-02-10";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "97b02bb024b23501302f50c068e89b058faace6b";
-      sha256 = "1yd6xl7a2gbazgr6fs9n00b9msz1w7szl42h0pn80nmgp0pmjmcp";
+      rev = "40fa6720797011e0901618cb14cd02ba684747b3";
+      sha256 = "0p1mr3572bnw278s7y1axizgwgj64nf4ki0plbbg036x800gi9bd";
     };
   };
 
@@ -3998,12 +3998,12 @@ let
 
   youcompleteme = buildVimPluginFrom2Nix {
     pname = "youcompleteme";
-    version = "2019-01-28";
+    version = "2019-02-16";
     src = fetchFromGitHub {
       owner = "valloric";
       repo = "youcompleteme";
-      rev = "c25e449f4e72667aca3d18d8bfccd7b289b2e9a1";
-      sha256 = "0zfrlql7q7rdalfh7iglqkrwvbl8642plm816kc4907mixq4hikg";
+      rev = "032281307dddeabdb0173b5fcd54b283e950d4ce";
+      sha256 = "0iyxs53j49mbqva97y1k2nvz1j6sqm934vr0q61a5cg3hi6flvsd";
       fetchSubmodules = true;
     };
   };
@@ -4043,12 +4043,12 @@ let
 
   zig-vim = buildVimPluginFrom2Nix {
     pname = "zig-vim";
-    version = "2019-01-31";
+    version = "2019-02-05";
     src = fetchFromGitHub {
       owner = "zig-lang";
       repo = "zig.vim";
-      rev = "09e0bceb7be1488318df9441a5499f1dde644e72";
-      sha256 = "1g1s0176s3cz0ynyrx5a3r0jnbmqgln318v7hw5qvgalf3k99c5c";
+      rev = "9ed8a3152eb4dac88bb29bf0f248af86eb66cdbe";
+      sha256 = "0kdf9gcyg28hgdsxq48isavvd2q1qwwc6nq11cac57wlbsgs3shf";
     };
   };
 
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index c9785b66fbb..8b7789cf622 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , python, cmake, vim, ruby
-, which, fetchgit, llvmPackages, rustPlatform
+, which, fetchgit, fetchurl
+, llvmPackages, rustPlatform
 , xkb-switch, fzf, skim
 , python3, boost, icu, ncurses
 , ycmd, rake
@@ -39,16 +40,15 @@ self: super: {
   };
 
   LanguageClient-neovim = let
-    LanguageClient-neovim-src = fetchgit {
-      url = "https://github.com/autozimu/LanguageClient-neovim";
-      rev = "59f0299e8f7d7edd0653b5fc005eec74c4bf4aba";
-      sha256 = "0x6729w7v3bxlpvm8jz1ybn23qa0zqfgxl88q2j0bbs6rvp0w1jq";
+    LanguageClient-neovim-src = fetchurl {
+      url = "https://github.com/autozimu/LanguageClient-neovim/archive/0.1.140.tar.gz";
+      sha256 = "0cixwm9wnn6vlam6mp57j436n92c4bvj5rs6j2qcv7qip8d2ggyw";
     };
     LanguageClient-neovim-bin = rustPlatform.buildRustPackage {
       name = "LanguageClient-neovim-bin";
       src = LanguageClient-neovim-src;
 
-      cargoSha256 = "1afmz14j7ma2nrsx0njcqbh2wa430dr10hds78c031286ppgwjls";
+      cargoSha256 = "0f591zv4f7spks2hx22nkq78sj42259gi7flnnpr1nfs40d7n13n";
       buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
       # FIXME: Use impure version of CoreFoundation because of missing symbols.
@@ -59,7 +59,7 @@ self: super: {
     };
   in buildVimPluginFrom2Nix {
     pname = "LanguageClient-neovim";
-    version = "2018-09-07";
+    version = "0.1.140";
     src = LanguageClient-neovim-src;
 
     propogatedBuildInputs = [ LanguageClient-neovim-bin ];
diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
index 94152d1628d..c111492f2b3 100644
--- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
@@ -155,7 +155,6 @@ rec {
     "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication"
     "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC"
     "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation"
-    "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
     "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport"
     "/usr/lib/libCRFSuite.dylib"
     "/usr/lib/libOpenScriptingUtil.dylib"
@@ -203,7 +202,6 @@ rec {
     "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv"
     "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices"
     "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary"
-    "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
     "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing"
     "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211"
     "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage"
diff --git a/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix b/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix
index 4a155a4c403..ebeb3ef0884 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix
@@ -3,6 +3,12 @@
 appleDerivation {
   dontBuild = true;
 
+  postPatch = ''
+    substituteInPlace Makefile \
+        --replace '/bin/mkdir' 'mkdir' \
+        --replace '/usr/bin/install' 'install'
+  '';
+
   installFlags = [ "EXPORT_DSTDIR=/include/architecture" ];
 
   DSTROOT = "$(out)";
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
index 7725b9f3d1a..f54d667d6ae 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
@@ -101,7 +101,6 @@
   "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication"
   "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC"
   "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation"
-  "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
   "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport"
   "/usr/lib/libCRFSuite.dylib"
   "/usr/lib/libOpenScriptingUtil.dylib"
diff --git a/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch b/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch
new file mode 100644
index 00000000000..9aae2be1d03
--- /dev/null
+++ b/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch
@@ -0,0 +1,98 @@
+diff --git a/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp b/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
+index 09c0e12..ac6b085 100644
+--- a/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
++++ b/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
+@@ -187,6 +187,7 @@ struct DynamicLibrary {
+ 	ld::File::ObjcConstraint _objcConstraint;
+ 	Options::Platform _platform;
+ 	std::vector<Token> _allowedClients;
++	std::vector<Token> _allowableClients;
+ 	std::vector<Token> _reexportedLibraries;
+ 	std::vector<Token> _symbols;
+ 	std::vector<Token> _classes;
+@@ -246,6 +247,14 @@ class TBDFile {
+ 		});
+ 	}
+ 
++	void parseAllowableClients(DynamicLibrary& lib) {
++		if ( !hasOptionalToken("allowable-clients") )
++			return;
++		parseFlowSequence([&](Token name) {
++			lib._allowableClients.emplace_back(name);
++		});
++	}
++
+ 	void parseReexportedDylibs(DynamicLibrary& lib) {
+ 		if ( !hasOptionalToken("re-exports") )
+ 			return;
+@@ -306,6 +315,21 @@ class TBDFile {
+ 		return false;
+ 	}
+ 
++	void skipUUIDs(DynamicLibrary& lib) {
++		expectToken("uuids");
++		while ( true ) {
++			auto token = next();
++			if ( token == "]" )
++				break;
++		}
++	}
++
++	void skipParentUmbrella(DynamicLibrary& lib) {
++		if (!hasOptionalToken("parent-umbrella"))
++			return;
++		next();
++	}
++
+ 	void parsePlatform(DynamicLibrary& lib) {
+ 		expectToken("platform");
+ 
+@@ -410,6 +434,7 @@ class TBDFile {
+ 			}
+ 
+ 			parseAllowedClients(lib);
++			parseAllowableClients(lib);
+ 			parseReexportedDylibs(lib);
+ 			parseSymbols(lib);
+ 			if ( !hasOptionalToken("-") )
+@@ -455,17 +480,21 @@ class TBDFile {
+ 			return result.front();
+ 	}
+ 
+-	void parseDocument(DynamicLibrary& lib, std::string &requestedArchName) {
++	void parseDocument(DynamicLibrary& lib, std::string &requestedArchName, bool isTbdV2) {
+ 		auto selectedArchName = parseAndSelectArchitecture(requestedArchName);
+ 		if (selectedArchName.empty())
+ 			throwf("invalid arch");
+ 
++		if(isTbdV2)
++			skipUUIDs(lib);
+ 		parsePlatform(lib);
+ 		parseInstallName(lib);
+ 		parseCurrentVersion(lib);
+ 		parseCompatibilityVersion(lib);
+ 		parseSwiftVersion(lib);
+ 		parseObjCConstraint(lib);
++		if(isTbdV2)
++			skipParentUmbrella(lib);
+ 		parseExportsBlock(lib, selectedArchName);
+ 	}
+ 
+@@ -476,7 +505,8 @@ public:
+ 		_tokenizer.reset();
+ 		DynamicLibrary lib;
+ 		expectToken("---");
+-		parseDocument(lib, requestedArchName);
++		auto isTbdV2 = hasOptionalToken("!tapi-tbd-v2");
++		parseDocument(lib, requestedArchName, isTbdV2);
+ 		expectToken("...");
+ 		return lib;
+ 	}
+@@ -486,6 +516,7 @@ public:
+ 		auto token = next();
+ 		if ( token != "---" )
+ 			return false;
++		hasOptionalToken("!tapi-tbd-v2");
+ 		return !parseAndSelectArchitecture(requestedArchName).empty();
+ 	}
+ 
diff --git a/pkgs/os-specific/darwin/cctools/port.nix b/pkgs/os-specific/darwin/cctools/port.nix
index d41f571cf97..caf85b227be 100644
--- a/pkgs/os-specific/darwin/cctools/port.nix
+++ b/pkgs/os-specific/darwin/cctools/port.nix
@@ -1,10 +1,18 @@
-{ stdenv, fetchFromGitHub, autoconf, automake, libtool, autoreconfHook
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool_2, autoreconfHook
 , libcxxabi, libuuid, llvm
 , libobjc ? null, maloader ? null
+, enableDumpNormalizedLibArgs ? false
 }:
 
 let
 
+  # We need to use an old version of cctools-port to support linking TBD files
+  # in the iOS SDK. Note that this only provides support for SDK versions up to
+  # 10.x. For 11.0 and higher we will need to upgrade to a newer cctools than the
+  # default version here, which can support the new TBD format via Apple's
+  # libtapi.
+  useOld = stdenv.targetPlatform.isiOS;
+
   # The targetPrefix prepended to binary names to allow multiple binuntils on the
   # PATH to both be usable.
   targetPrefix = stdenv.lib.optionalString
@@ -15,27 +23,47 @@ in
 # Non-Darwin alternatives
 assert (!stdenv.hostPlatform.isDarwin) -> maloader != null;
 
+assert enableDumpNormalizedLibArgs -> (!useOld);
+
 let
   baseParams = rec {
     name = "${targetPrefix}cctools-port-${version}";
-    version = "895";
+    version = if useOld then "886" else "895";
 
-    src = fetchFromGitHub {
+    src = fetchFromGitHub (if enableDumpNormalizedLibArgs then {
       owner  = "tpoechtrager";
       repo   = "cctools-port";
-      rev    = "07619027f8311fa61b4a549c75994b88739a82d8";
-      sha256 = "12g94hhz5v5bmy2w0zb6fb4bjlmn992gygc60h9nai15kshj2spi";
-    };
+      # master with https://github.com/tpoechtrager/cctools-port/pull/34
+      rev    = "8395d4b2c3350356e2fb02f5e04f4f463c7388df";
+      sha256 = "10vbf1cfzx02q8chc77s84fp2kydjpx2y682mr6mrbb7sq5rwh8f";
+    } else if useOld then {
+      owner  = "tpoechtrager";
+      repo   = "cctools-port";
+      rev    = "02f0b8ecd87a3951653d838a321ae744815e21a5";
+      sha256 = "0bzyabzr5dvbxglr74d0kbrk2ij5x7s5qcamqi1v546q1had1wz1";
+    } else {
+      owner  = "tpoechtrager";
+      repo   = "cctools-port";
+      rev    = "2e569d765440b8cd6414a695637617521aa2375b"; # From branch 895-ld64-274.2
+      sha256 = "0l45mvyags56jfi24rawms8j2ihbc45mq7v13pkrrwppghqrdn52";
+    });
 
     outputs = [ "out" "dev" ];
 
-    nativeBuildInputs = [ autoconf automake libtool autoreconfHook ];
+    nativeBuildInputs = [ autoconf automake libtool_2 autoreconfHook ];
     buildInputs = [ libuuid ]
       ++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ];
 
-    patches = [ ./ld-rpath-nonfinal.patch ./ld-ignore-rpath-link.patch ];
+    patches = [
+      ./ld-rpath-nonfinal.patch ./ld-ignore-rpath-link.patch
+    ] ++ stdenv.lib.optionals useOld [
+      # See https://github.com/tpoechtrager/cctools-port/issues/24. Remove when that's fixed.
+      ./undo-unknown-triple.patch
+      ./ld-tbd-v2.patch
+      ./support-ios.patch
+    ];
 
-    __propagatedImpureHostDeps = [
+    __propagatedImpureHostDeps = stdenv.lib.optionals (!useOld) [
       # As far as I can tell, otool from cctools is the only thing that depends on these two, and we should fix them
       "/usr/lib/libobjc.A.dylib"
       "/usr/lib/libobjc.dylib"
@@ -48,9 +76,7 @@ let
       ++ stdenv.lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target";
     configureFlags = [ "--disable-clang-as" ];
 
-    postPatch = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin ''
-      substituteInPlace cctools/Makefile.am --replace libobjc2 ""
-    '' + ''
+    postPatch = ''
       sed -i -e 's/addStandardLibraryDirectories = true/addStandardLibraryDirectories = false/' cctools/ld64/src/ld/Options.cpp
 
       # FIXME: there are far more absolute path references that I don't want to fix right now
@@ -99,6 +125,7 @@ let
       homepage = http://www.opensource.apple.com/source/cctools/;
       description = "MacOS Compiler Tools (cross-platform port)";
       license = stdenv.lib.licenses.apsl20;
+      maintainers = with stdenv.lib.maintainers; [ matthewbauer ];
     };
   };
 in stdenv.mkDerivation baseParams
diff --git a/pkgs/os-specific/darwin/cctools/support-ios.patch b/pkgs/os-specific/darwin/cctools/support-ios.patch
new file mode 100644
index 00000000000..f78c6b63ac8
--- /dev/null
+++ b/pkgs/os-specific/darwin/cctools/support-ios.patch
@@ -0,0 +1,13 @@
+diff --git a/cctools/configure.ac b/cctools/configure.ac
+index 56e8f24..0b4b3ff 100644
+--- a/cctools/configure.ac
++++ b/cctools/configure.ac
+@@ -39,7 +39,7 @@ EXTRACXXFLAGS=""
+ WARNINGS=""
+ 
+ case $host_os in
+-  darwin* )
++  darwin* | ios*)
+     isdarwin=yes
+     AM_CONDITIONAL([ISDARWIN], [true])
+   ;;
diff --git a/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch b/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch
new file mode 100644
index 00000000000..7df9bdd16da
--- /dev/null
+++ b/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch
@@ -0,0 +1,17 @@
+diff --git a/cctools/as/driver.c b/cctools/as/driver.c
+index b06d085..c03397a 100644
+--- a/cctools/as/driver.c
++++ b/cctools/as/driver.c
+@@ -363,12 +363,6 @@ char **envp)
+ 	    /* Add -c or clang will run ld(1). */
+ 	    new_argv[j] = "-c";
+ 	    j++;
+-	    /* cctools-port start */
+-	    new_argv[j] = "-target";
+-	    j++;
+-	    new_argv[j] = "unknown-apple-darwin";
+-	    j++;
+-	    /* cctools-port end */
+ 	    new_argv[j] = NULL;
+ 	    if(execute(new_argv, verbose))
+ 		exit(0);
diff --git a/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch
new file mode 100644
index 00000000000..0853bcea916
--- /dev/null
+++ b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch
@@ -0,0 +1,12 @@
+diff --git a/scripts/meson-install.sh b/scripts/meson-install.sh
+index 859ae81..05a1c58 100644
+--- a/scripts/meson-install.sh
++++ b/scripts/meson-install.sh
+@@ -7,5 +7,5 @@ fi
+ 
+ BOLT_DBDIR=$1
+ 
+-echo "Creating database dir: ${BOLT_DBDIR}"
+-mkdir -p "${DESTDIR}/${BOLT_DBDIR}"
++# echo "Creating database dir: ${BOLT_DBDIR}"
++# mkdir -p "${DESTDIR}/${BOLT_DBDIR}"
diff --git a/pkgs/os-specific/linux/bolt/default.nix b/pkgs/os-specific/linux/bolt/default.nix
new file mode 100644
index 00000000000..f57fb1310c6
--- /dev/null
+++ b/pkgs/os-specific/linux/bolt/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, meson, ninja, pkgconfig, fetchFromGitLab,
+  python3, umockdev, gobject-introspection, dbus,
+  asciidoc, libxml2, libxslt, docbook_xml_dtd_45, docbook_xsl,
+  glib, systemd, polkit
+}:
+
+stdenv.mkDerivation rec {
+  pname = "bolt";
+  version = "0.7";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "bolt";
+    repo = "bolt";
+    rev = "${version}";
+    sha256 = "0xn2c31kcjh1j76gq1qrcxwjyjyqnsxygkfrvh3xk07qc92f99xd";
+  };
+
+  nativeBuildInputs = [
+    meson ninja pkgconfig
+    asciidoc libxml2 libxslt docbook_xml_dtd_45 docbook_xsl
+  ] ++ stdenv.lib.optional (!doCheck) python3;
+
+  buildInputs = [
+    glib systemd polkit
+  ];
+
+  doCheck = true;
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=${umockdev.out}/lib/
+  '';
+
+  checkInputs = [
+    dbus umockdev gobject-introspection
+    (python3.withPackages
+      (p: [ p.pygobject3 p.dbus-python p.python-dbusmock ]))
+  ];
+
+  # meson install tries to create /var/lib/boltd
+  patches = [ ./0001-skip-mkdir.patch ];
+
+  postPatch = ''
+    patchShebangs tests/test-integration
+  '';
+
+  mesonFlags = [
+    "-Dlocalstatedir=/var"
+  ];
+
+  PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system";
+  PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev";
+
+  meta = with stdenv.lib; {
+    description = "Thunderbolt 3 device management daemon";
+    homepage = https://gitlab.freedesktop.org/bolt/bolt;
+    license = licenses.lgpl21Plus;
+    maintainers = [ maintainers.callahad ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/conky/default.nix b/pkgs/os-specific/linux/conky/default.nix
index 3d7fb43bbd1..d67c268f054 100644
--- a/pkgs/os-specific/linux/conky/default.nix
+++ b/pkgs/os-specific/linux/conky/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake
+{ config, stdenv, fetchFromGitHub, pkgconfig, cmake
 
 # dependencies
 , glib, libXinerama
@@ -27,7 +27,7 @@
 
 , wirelessSupport     ? true      , wirelesstools ? null
 , nvidiaSupport       ? false     , libXNVCtrl ? null
-, pulseSupport        ? false     , libpulseaudio ? null
+, pulseSupport        ? config.pulseaudio or false, libpulseaudio ? null
 
 , curlSupport         ? true      , curl ? null
 , rssSupport          ? curlSupport
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index 57135bf515b..df917888dc7 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "firmware-linux-nonfree-${version}";
-  version = "2018-12-13";
+  version = "2019-02-13";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
-    rev = "813fa1fc6fba6638decd974c4a6a2e485069ea15";
-    sha256 = "0zspisbrvplgz1plk4ya22h7ilnsk60srk4q38h6n5d18fpn7rdw";
+    rev = "710963fe53ee3f227556d36839df3858daf6e232";
+    sha256 = "1q3jvlqqxba08s2mrh9hwl0d5w6nhkwj63j0m6amxqpf10k49jxp";
   };
 
   installFlags = [ "DESTDIR=$(out)" ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   outputHashMode = "recursive";
   outputHashAlgo = "sha256";
-  outputHash = "1yr6wcvc3s97h4w0qapma4l17dqsj175an6kmn5w6dppz19g0r5b";
+  outputHash = "13gqnr6gm7336pm48v5p37clphwwdmgbrcipsg3w44wdwgc7fa2f";
 
   meta = with stdenv.lib; {
     description = "Binary firmware collection packaged by kernel.org";
diff --git a/pkgs/os-specific/linux/guvcview/default.nix b/pkgs/os-specific/linux/guvcview/default.nix
index 1afd1078c03..acafa0376f5 100644
--- a/pkgs/os-specific/linux/guvcview/default.nix
+++ b/pkgs/os-specific/linux/guvcview/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, intltool, pkgconfig
+{ config, stdenv, fetchurl, intltool, pkgconfig
 , gtk3, portaudio, SDL2, ffmpeg, udev, libusb1, libv4l, alsaLib, gsl
-, pulseaudioSupport ? true, libpulseaudio ? null }:
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null }:
 
 assert pulseaudioSupport -> libpulseaudio != null;
 
diff --git a/pkgs/os-specific/linux/iw/default.nix b/pkgs/os-specific/linux/iw/default.nix
index 7e50babc80a..387792b8631 100644
--- a/pkgs/os-specific/linux/iw/default.nix
+++ b/pkgs/os-specific/linux/iw/default.nix
@@ -1,17 +1,18 @@
 {stdenv, fetchurl, libnl, pkgconfig}:
 
 stdenv.mkDerivation rec {
-  name = "iw-4.14";
+  pname = "iw";
+  version = "5.0.1";
 
   src = fetchurl {
-    url = "https://www.kernel.org/pub/software/network/iw/${name}.tar.xz";
-    sha256 = "12ddd6vh6vs97135bnlyr0szv7hvpbnmfh48584frzab0z0725ph";
+    url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz";
+    sha256 = "03awbfrr9i78vgwsa6z2c8g14mia9z8qzrvzxar2ad9299wylf0y";
   };
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ libnl ];
 
-  makeFlags = [ "PREFIX=\${out}" ];
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = {
     description = "Tool to use nl80211";
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 1a56e68fa4b..e8126c23d3d 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -203,6 +203,7 @@ let
       SND_HDA_RECONFIG    = yes; # Support reconfiguration of jack functions
       # Support configuring jack functions via fw mechanism at boot
       SND_HDA_PATCH_LOADER = yes;
+      SND_OSSEMUL         = yes;
       SND_USB_CAIAQ_INPUT = yes;
       # Enable PSS mixer (Beethoven ADSP-16 and other compatible)
       PSS_MIXER           = whenOlder "4.12" yes;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 78448b4bc38..0be12e1bfaa 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.98";
+  version = "4.14.102";
 
   # 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 = "0pqc04ij6qdfhh3rpakas0qc0vqj8mm120z64q9v9vxin5qi20lg";
+    sha256 = "0095aqc1jbic77r34mpddjbz75rq1smr41yjx4mdqkl0lb7q5afq";
   };
 } // (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 200264df22a..f94bb32361b 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.21";
+  version = "4.19.24";
 
   # 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 = "1hdvk1lz9gi8b6gahqqb1r5zzndfw86qzsg1fji0shgy4vkys26v";
+    sha256 = "014fpzy40yy56whnd8fclgxbdmaab8f5f6gam1lv8x6qmdgqic9v";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.20.nix b/pkgs/os-specific/linux/kernel/linux-4.20.nix
index 799f36f7dc2..7a6b502048a 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.20.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.20.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.20.8";
+  version = "4.20.11";
 
   # 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 = "0qnh0h7c7ni7j1cgm20sqsfkbri98bckxms494w9ig539b2ac35n";
+    sha256 = "07s1sw256nz72yx6kvzws32s9faphsmg91wq4h7fk3jwyi0mrnfw";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 8edd744ba66..d814deefb1a 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.174";
+  version = "4.4.175";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0fdsxfwhn1xqic56c4aafxw1rdqy7s4w0inmkhcnh98lj3fi2lmy";
+    sha256 = "1r8bp8dcjgndx9ziwv3pkgngr1bxwvdmimg8gxq8ak0km9bqfz76";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 334fb6e81b6..c5f4b45082f 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.156";
+  version = "4.9.159";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "05m82x2zg0nkc6ayk6akgpfhz31zp6dhhlklcfmi419p8fxbkcay";
+    sha256 = "0hhpfyvankdiwbngpsl9xprf6777830dms722hix3450d0qz37cz";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
index 6655845efe5..6bc69238591 100644
--- a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
@@ -1,10 +1,10 @@
 { stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.14.87-153";
+  version = "4.14.94-155";
 
   # modDirVersion needs to be x.y.z.
-  modDirVersion = "4.14.87";
+  modDirVersion = "4.14.94";
 
   # branchVersion needs to be x.y.
   extraMeta.branch = "4.14";
@@ -13,7 +13,7 @@ buildLinux (args // rec {
     owner = "hardkernel";
     repo = "linux";
     rev = version;
-    sha256 = "1aj3l8pf3nl0mm4m5z4z4iqd72b0nqip4cajmhpfjmq8vkygcw5c";
+    sha256 = "1jg4m17y5wkmfmw8y9y9nh14xzw6011gbzlckqabmbazcdpbmf9d";
   };
 
   defconfig = "odroidxu4_defconfig";
diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index a3275786b33..82326a2ee73 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,13 +1,13 @@
 { stdenv, buildPackages, fetchgit, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.20.2019.01.23";
+  version = "4.20.2019.02.09";
   modDirVersion = "4.20.0";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs.git";
-    rev = "99750eab4d583132cf61f071082c7cf21f5295c0";
-    sha256 = "05wg9w5f68qg02yrciir9h1wx448869763hg3w7j23wc2qywhwqb";
+    rev = "09a546543006b60d44c4c51e7b40cd3ec7837a5e";
+    sha256 = "0p187vp9df0nnhawql0f2bj2sdim0f2b424106d41yxc8ayhz0d9";
   };
 
   extraConfig = "BCACHEFS_FS m";
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 0cd793db339..ed685246444 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 = "5.0-rc6";
-  modDirVersion = "5.0.0-rc6";
+  version = "5.0-rc7";
+  modDirVersion = "5.0.0-rc7";
   extraMeta.branch = "5.0";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "1315hkjwgm97kh98y8ynsf6fy1b6yf4b74ws6d4s7dls70qzl3yw";
+    sha256 = "0x5jvv4n9l1gisc0q9m9r7173d9qwpl6crd59fbmasbmvi9lnp41";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/lxcfs/default.nix b/pkgs/os-specific/linux/lxcfs/default.nix
index a32f99600cd..3953ff1915a 100644
--- a/pkgs/os-specific/linux/lxcfs/default.nix
+++ b/pkgs/os-specific/linux/lxcfs/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, fuse
-, enableDebugBuild ? false }:
+{ config, stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, fuse
+, enableDebugBuild ? config.lxcfs.enableDebugBuild or false }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
diff --git a/pkgs/os-specific/linux/pcmciautils/default.nix b/pkgs/os-specific/linux/pcmciautils/default.nix
index 93e2c097ff7..aeb4d78d0ec 100644
--- a/pkgs/os-specific/linux/pcmciautils/default.nix
+++ b/pkgs/os-specific/linux/pcmciautils/default.nix
@@ -1,10 +1,9 @@
-{ stdenv, fetchurl
+{ config, lib, stdenv, fetchurl
 , yacc, flex
 , sysfsutils, kmod, udev
-, firmware # Special pcmcia cards.
-, config   # Special hardware (map memory & port & irq)
-, lib      # used to generate postInstall script.
-}:
+, firmware   ? config.pcmciaUtils.firmware or [] # Special pcmcia cards.
+, configOpts ? config.pcmciaUtils.config or null # Special hardware (map memory & port & irq)
+}:                   # used to generate postInstall script.
 
 # FIXME: should add an option to choose between hotplug and udev.
 stdenv.mkDerivation rec {
@@ -28,8 +27,8 @@ stdenv.mkDerivation rec {
     " src/{startup.c,pcmcia-check-broken-cis.c} # fix-color */
   ''
   + (if firmware == [] then ''sed -i "s,STARTUP = true,STARTUP = false," Makefile'' else "")
-  + (if config == null then "" else ''
-    ln -sf ${config} ./config/config.opts'')
+  + (if configOpts == null then "" else ''
+    ln -sf ${configOpts} ./config/config.opts'')
   ;
 
   makeFlags = "LEX=flex";
diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix
index 4b8ff89cb7a..8965b5da4f4 100644
--- a/pkgs/os-specific/linux/syslinux/default.nix
+++ b/pkgs/os-specific/linux/syslinux/default.nix
@@ -28,6 +28,11 @@ stdenv.mkDerivation rec {
       url = mkURL "7468ef0e38c43" "0016-strip-gnu-property.patch";
       sha256 = "17n63b8wz6szv8npla1234g1ip7lqgzx2whrpv358ppf67lq8vwm";
     })
+    (fetchurl {
+      # mbr.bin: too big (452 > 440)
+      url = mkURL "012e1dd312eb" "0017-single-load-segment.patch";
+      sha256 = "0azqzicsjw47b9ppyikhzaqmjl4lrvkxris1356bkmgcaiv6d98b";
+    })
   ];
 
   postPatch = ''
@@ -74,6 +79,7 @@ stdenv.mkDerivation rec {
     homepage = http://www.syslinux.org/;
     description = "A lightweight bootloader";
     license = licenses.gpl2;
+    maintainers = [ maintainers.samueldr ];
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
 }
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index d4623ccd633..2f873f34b88 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -18,7 +18,7 @@ let
   pythonLxmlEnv = buildPackages.python3Packages.python.withPackages ( ps: with ps; [ python3Packages.lxml ]);
 
 in stdenv.mkDerivation rec {
-  version = "239.20190110";
+  version = "239.20190219";
   name = "systemd-${version}";
 
   # When updating, use https://github.com/systemd/systemd-stable tree, not the development one!
@@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
     owner = "NixOS";
     repo = "systemd";
     rev = "nixos-v${version}";
-    sha256 = "1m9mhv7b4kfa43z79106gpgxx51zlhvvfjrlmimdsvsiw72nzldj";
+    sha256 = "0aczg25ih2gfjq810x8rw6rnpr6sw1lz6z0lvlyw2qphyih68b4x";
   };
 
   prePatch = let
diff --git a/pkgs/os-specific/linux/usbutils/default.nix b/pkgs/os-specific/linux/usbutils/default.nix
index d58c5a7e67c..85ef8a1a6cc 100644
--- a/pkgs/os-specific/linux/usbutils/default.nix
+++ b/pkgs/os-specific/linux/usbutils/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, substituteAll, autoreconfHook, pkgconfig, libusb1, hwdata }:
+{ stdenv, fetchurl, substituteAll, autoreconfHook, pkgconfig, libusb1, hwdata , python3 }:
 
 stdenv.mkDerivation rec {
   name = "usbutils-010";
@@ -16,7 +16,12 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ libusb1 ];
+  buildInputs = [ libusb1 python3 ];
+
+  outputs = [ "out" "man" "python" ];
+  postInstall = ''
+    moveToOutput "bin/lsusb.py" "$python"
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.linux-usb.org/;
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 8e11ef6163c..3c7c0dc6156 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-jira-${version}";
-  version = "7.13.0";
+  version = "8.0.1";
 
   src = fetchurl {
-    url = "https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "1dra5h8lgqwzhs95br8x34c5pcrkgrkmpyhiq9vbayf1aarjxfnq";
+    url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
+    sha256 = "0cf0j781k23fs3jzrd4ranzvqnhdnza8dbaqxx31dk3p7c7168bw";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/consul/default.nix b/pkgs/servers/consul/default.nix
index d1dcd78667f..38d79eb2ba4 100644
--- a/pkgs/servers/consul/default.nix
+++ b/pkgs/servers/consul/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "consul-${version}";
-  version = "1.3.0";
+  version = "1.4.1";
   rev = "v${version}";
 
   goPackagePath = "github.com/hashicorp/consul";
@@ -19,7 +19,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = "consul";
     inherit rev;
-    sha256 = "1zv84snvrjm74w3v3rr27linsbxj00m73xd047sb78a4766xs2h0";
+    sha256 = "1xd2chx69jdbq2r82d4cgyc8pf1cmmxqvbfz29bf3nvvi6bgq7d5";
   };
 
   preBuild = ''
diff --git a/pkgs/servers/dict/default.nix b/pkgs/servers/dict/default.nix
index bf9fd77df7c..c45098b2ae0 100644
--- a/pkgs/servers/dict/default.nix
+++ b/pkgs/servers/dict/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   patchPhase = "patch -p0 < ${./buildfix.diff}";
   configureFlags = [
     "--enable-dictorg"
-    "--datadir=/run/current-systems/sw/share/dictd"
+    "--datadir=/run/current-system/sw/share/dictd"
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/servers/diod/default.nix b/pkgs/servers/diod/default.nix
index eba73b2692a..2199d62b4dd 100644
--- a/pkgs/servers/diod/default.nix
+++ b/pkgs/servers/diod/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, munge, lua, libcap, perl, ncurses }:
+{ stdenv, fetchurl, munge, lua,
+  libcap, perl, ncurses
+}:
 
 stdenv.mkDerivation rec {
   name = "diod-${version}";
@@ -9,12 +11,16 @@ stdenv.mkDerivation rec {
     sha256 = "17wckwfsqj61yixz53nwkc35z66arb1x3napahpi64m7q68jn7gl";
   };
 
+  postPatch = ''
+    substituteInPlace diod/xattr.c --replace attr/xattr.h sys/xattr.h
+  '';
+
   buildInputs = [ munge lua libcap perl ncurses ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "An I/O forwarding server that implements a variant of the 9P protocol";
-    maintainers = [ stdenv.lib.maintainers.rickynils];
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.gpl2Plus;
+    maintainers = with maintainers; [ rnhmjoj rickynils ];
+    platforms   = platforms.linux;
+    license     = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index 74e1fda2d42..550a8fa13cc 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl
+{ config, stdenv, lib, fetchurl
 , perl
 , libcap, libtool, libxml2, openssl
-, enablePython ? false, python3 ? null
+, enablePython ? config.bind.enablePython or false, python3 ? null
 , enableSeccomp ? false, libseccomp ? null, buildPackages
 }:
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libtool libxml2 openssl ]
     ++ lib.optional stdenv.isLinux libcap
     ++ lib.optional enableSeccomp libseccomp
-    ++ lib.optional enablePython python3;
+    ++ lib.optional enablePython (python3.withPackages (ps: with ps; [ ply ]));
 
   STD_CDEFINES = [ "-DDIG_SIGCHASE=1" ]; # support +sigchase
 
diff --git a/pkgs/servers/headphones/default.nix b/pkgs/servers/headphones/default.nix
new file mode 100644
index 00000000000..eff1155fc20
--- /dev/null
+++ b/pkgs/servers/headphones/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, python2, makeWrapper }:
+
+python2.pkgs.buildPythonApplication rec {
+  name = "headphones-${version}";
+  version = "0.5.19";
+
+  src = fetchFromGitHub {
+    owner = "rembo10";
+    repo = "headphones";
+    rev = "v${version}";
+    sha256 = "0z39gyan3ksdhnjxxs7byamrzmrk8cn15g300iqigzvgidff1lq0";
+  };
+
+  dontBuild = true;
+  doCheck = false;
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ python2 ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -R {data,headphones,lib,Headphones.py} $out/
+
+    makeWrapper $out/Headphones.py $out/bin/headphones
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Automatic music downloader for SABnzbd";
+    license     = licenses.gpl3;
+    homepage    = https:/github.com/rembo10/headphones;
+    maintainers = with stdenv.lib.maintainers; [ rembo10 ];
+  };
+}
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 7e5eb47953e..3b3d997e6aa 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -559,7 +559,7 @@
     "konnected" = ps: with ps; [ aiohttp-cors ];
     "lametric" = ps: with ps; [  ];
     "lcn" = ps: with ps; [  ];
-    "lifx" = ps: with ps; [  ];
+    "lifx" = ps: with ps; [ aiolifx ];
     "light" = ps: with ps; [  ];
     "light.abode" = ps: with ps; [  ];
     "light.ads" = ps: with ps; [  ];
@@ -589,7 +589,7 @@
     "light.isy994" = ps: with ps; [  ];
     "light.knx" = ps: with ps; [  ];
     "light.lcn" = ps: with ps; [  ];
-    "light.lifx" = ps: with ps; [  ];
+    "light.lifx" = ps: with ps; [ aiolifx aiolifx-effects ];
     "light.lifx_legacy" = ps: with ps; [  ];
     "light.lightwave" = ps: with ps; [  ];
     "light.limitlessled" = ps: with ps; [ limitlessled ];
@@ -1144,7 +1144,7 @@
     "sensor.serial" = ps: with ps; [  ];
     "sensor.serial_pm" = ps: with ps; [  ];
     "sensor.seventeentrack" = ps: with ps; [  ];
-    "sensor.shodan" = ps: with ps; [  ];
+    "sensor.shodan" = ps: with ps; [ shodan ];
     "sensor.sht31" = ps: with ps; [  ];
     "sensor.sigfox" = ps: with ps; [  ];
     "sensor.simulated" = ps: with ps; [  ];
diff --git a/pkgs/servers/icingaweb2/default.nix b/pkgs/servers/icingaweb2/default.nix
new file mode 100644
index 00000000000..5a6556f248a
--- /dev/null
+++ b/pkgs/servers/icingaweb2/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, fetchFromGitHub, makeWrapper, php }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-${version}";
+  version = "2.6.2";
+
+  src = fetchFromGitHub {
+    owner = "Icinga";
+    repo = "icingaweb2";
+    rev = "v${version}";
+    sha256 = "1gf28nm94bq6r7i8yds5y9s59559i2zvj0swzb28zll6xbyprib0";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/share
+    cp -ra application bin etc library modules public $out
+    cp -ra doc $out/share
+
+    wrapProgram $out/bin/icingacli --prefix PATH : "${makeBinPath [ php ]}"
+  '';
+
+  meta = {
+    description = "Webinterface for Icinga 2";
+    longDescription = ''
+      A lightweight and extensible web interface to keep an eye on your environment.
+      Analyse problems and act on them.
+    '';
+    homepage = "https://www.icinga.com/products/icinga-web-2/";
+    license = licenses.gpl2;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-april/default.nix b/pkgs/servers/icingaweb2/theme-april/default.nix
new file mode 100644
index 00000000000..7c592fca33b
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-april/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchFromGitHub }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-april";
+  version = "1.0.4";
+
+  src = fetchFromGitHub {
+    owner = "Mikesch-mp";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "0i1js2k47llzgmc77q9frvcmr02mqlhg0qhswx1486fvm6myxg0g";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "Icingaweb2 theme for april fools";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-april";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-lsd/default.nix b/pkgs/servers/icingaweb2/theme-lsd/default.nix
new file mode 100644
index 00000000000..273bcf6945d
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-lsd/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchFromGitHub }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-lsd";
+  version = "1.0.3";
+
+  src = fetchFromGitHub {
+    owner = "Mikesch-mp";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "172y08sar4nbyv5pfq5chw8xa3b7fg1dacmsg778zky5zf49qz2w";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "Psychadelic theme for IcingaWeb 2";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-lsd";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-particles/default.nix b/pkgs/servers/icingaweb2/theme-particles/default.nix
new file mode 100644
index 00000000000..3d28481cd84
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-particles/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchFromGitHub }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-particles";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "Mikesch-mp";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "0m6bbz191686k4djqbk8v0zcdm4cyi159jb3zwz7q295xbpi2vfy";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "This theme adds a nice particle effect to the login screen of Icingaweb 2";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-particles";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-snow/default.nix b/pkgs/servers/icingaweb2/theme-snow/default.nix
new file mode 100644
index 00000000000..136168fc8d4
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-snow/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, lib, fetchFromGitHub, gawk }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-snow";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "Mikesch-mp";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "1c974v85mbsis52y2knwzh33996q8sza7pqrcs6ydx033s0rxjrp";
+  };
+
+  patchPhase = ''
+    # Module info contains some fancy ascii art which breaks the module list
+
+    awk -i inplace 'BEGIN {empty=0;write=1;}{if ($0 == ""){empty++;};if(empty==2){write=0};if (write==1){print $0}}' module.info
+  '';
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "Snow theme for Icingaweb 2";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-snow";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-spring/default.nix b/pkgs/servers/icingaweb2/theme-spring/default.nix
new file mode 100644
index 00000000000..a21f6cc89a2
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-spring/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchFromGitHub }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-spring";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "Mikesch-mp";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "09v4871pndarhm2spxm9fdab58l5wj8m40kh53wvk1xc3g7pqki9";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "Theme with some soft colors and nice background images loaded from unsplash.com";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-spring";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/icingaweb2/theme-unicorn/default.nix b/pkgs/servers/icingaweb2/theme-unicorn/default.nix
new file mode 100644
index 00000000000..a43f7d7c09a
--- /dev/null
+++ b/pkgs/servers/icingaweb2/theme-unicorn/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, lib, fetchurl, fetchFromGitHub }: with lib; stdenv.mkDerivation rec {
+  name = "icingaweb2-theme-unicorn";
+  version = "1.0.2";
+
+  srcs = [
+    (fetchFromGitHub {
+      owner = "Mikesch-mp";
+      repo = name;
+      rev = "v${version}";
+      sha256 = "1qmcajdf0g70vp2avqa50lfrfigq22k91kggbgn5ablwyg9dki05";
+    })
+    (fetchurl {
+      url = "http://i.imgur.com/SCfMd.png";
+      sha256 = "1y6wqm1z6mn0a6jankd7pzqgi7zm5320kk6knvbv3qhzx2b74ypp";
+    })
+  ];
+
+  unpackPhase = ''
+    for src in $srcs; do
+      case $src in
+        *.png)
+          cp $src unicorn.png
+          ;;
+        *)
+          cp -r $src/* .
+          ;;
+      esac
+    done
+  '';
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+    chmod 755 $out/public/img
+    cp unicorn.png "$out/public/img/unicorn.png"
+  '';
+
+  meta = {
+    description = "Unicorn theme for IcingaWeb 2";
+    homepage = "https://github.com/Mikesch-mp/icingaweb2-theme-unicorn";
+    license = licenses.publicDomain;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ das_j ];
+  };
+}
diff --git a/pkgs/servers/mail/exim/default.nix b/pkgs/servers/mail/exim/default.nix
index 07623a80f24..f4581023c06 100644
--- a/pkgs/servers/mail/exim/default.nix
+++ b/pkgs/servers/mail/exim/default.nix
@@ -6,11 +6,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "exim-4.91";
+  name = "exim-4.92";
 
   src = fetchurl {
     url = "https://ftp.exim.org/pub/exim/exim4/${name}.tar.xz";
-    sha256 = "066ip7a5lqfn9rcr14j4nm0kqysw6mzvbbb0ip50lmfm0fqsqmzc";
+    sha256 = "0qhxxwl0nhzgp0w3pjkhx9z9lqfpk8id25q5ghf9ay2f90mydjba";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index f88211cda09..eeac1607cca 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -23,11 +23,11 @@ let
 
 in buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "0.99.0";
+  version = "0.99.1.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1xsp60172zvgyjgpjmzz90rj1din8d65ffg73nzid4nd875p45kh";
+    sha256 = "1ych13x3c2cam7af4q2ariwvzwvr65g3j2x8ajjn33ydwxxbqbg6";
   };
 
   propagatedBuildInputs = [
@@ -67,7 +67,7 @@ in buildPythonApplication rec {
     unpaddedbase64
   ] ++ lib.optional enableSystemd systemd;
 
-  checkInputs = [ mock ];
+  checkInputs = [ mock parameterized ];
 
   checkPhase = ''
     PYTHONPATH=".:$PYTHONPATH" ${python3.interpreter} -m twisted.trial tests
diff --git a/pkgs/servers/mautrix-whatsapp/default.nix b/pkgs/servers/mautrix-whatsapp/default.nix
new file mode 100644
index 00000000000..ea3fbd58e2e
--- /dev/null
+++ b/pkgs/servers/mautrix-whatsapp/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "mautrix-unstable-${version}";
+  version = "2019-02-11";
+
+  goPackagePath = "maunium.net/go/mautrix-whatsapp";
+
+  src = fetchFromGitHub {
+    owner = "tulir";
+    repo = "mautrix-whatsapp";
+    rev = "f689297ba6704265a938951f307b365e829fcfa1";
+    sha256 = "1658bika9ylhm64k9lxavp43dxilygn6vx7yn6y1l10j8by2akxk";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/tulir/mautrix-whatsapp;
+    description = "Matrix <-> Whatsapp hybrid puppeting/relaybot bridge";
+    license = licenses.agpl3;
+    maintainers = with maintainers; [ vskilet ];
+  };
+}
diff --git a/pkgs/servers/mautrix-whatsapp/deps.nix b/pkgs/servers/mautrix-whatsapp/deps.nix
new file mode 100644
index 00000000000..8a1543ac012
--- /dev/null
+++ b/pkgs/servers/mautrix-whatsapp/deps.nix
@@ -0,0 +1,201 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/Baozisoftware/qrcode-terminal-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Baozisoftware/qrcode-terminal-go";
+      rev = "c0650d8dff0f";
+      sha256 = "166h9zy9y7ygayhybg7d080hpdcf1mvkf3rwnq5lqg8i3cg71s7b";
+    };
+  }
+  {
+    goPackagePath = "github.com/Rhymen/go-whatsapp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Rhymen/go-whatsapp";
+      rev = "2ca6af00572c";
+      sha256 = "0lrscj59n9nmd5z0h9r2c952m0da672r3aj33bi443ap0h97w19i";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.2.0";
+      sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/mux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/mux";
+      rev = "v1.6.2";
+      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.0";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.0.9";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.4";
+      sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev = "v1.10.0";
+      sha256 = "1zmz6asplixfihxhj11spgfs0v3xzb3nv0hlq6n6zsg781ni31xx";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v2.0.1";
+      sha256 = "0nlz7isdd4rgnwzs68499hlwicxz34j2k2a0b8jy0y7ycd2bcr5j";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "v1.0.0";
+      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+    };
+  }
+  {
+    goPackagePath = "github.com/skip2/go-qrcode";
+    fetch = {
+      type = "git";
+      url = "https://github.com/skip2/go-qrcode";
+      rev = "dc11ecdae0a9";
+      sha256 = "0mc70hsn5x2a66a9sbwlq51cng2s1aq7rw4pr9pif4xdzflkl057";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "ff983b9c42bc";
+      sha256 = "1hpr06kzn8jnn3gvzp0p9zn4fz4l9h69f7x66idx142w4xdlaanz";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "915654e7eabc";
+      sha256 = "0fzd7n2yc4qnnf2wk21zxy6gb01xviq2z1dzrbqcn8p1s4fjsqw5";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "37e7f081c4d4";
+      sha256 = "1bb0mw6ckb1k7z8v3iil2qlqwfj408fvvp8m1cik2b46p7snyjhm";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "48ac38b7c8cb";
+      sha256 = "037vs8sdvq310j3b6z9k62zlby1mzmsr9ha01rcy98dv5v8bkhin";
+    };
+  }
+  {
+    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 = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+  {
+    goPackagePath = "maunium.net/go/mauflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tulir/mauflag.git";
+      rev = "v1.0.0";
+      sha256 = "09jv1819jwq5i29y6ngf4j4ii6qwlshydvprfvsfplc419dkz1vx";
+    };
+  }
+  {
+    goPackagePath = "maunium.net/go/maulogger";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tulir/maulogger.git";
+      rev = "v2.0.0";
+      sha256 = "0qz4cpaqvcmrj3fb2bb6yrhw3k5h51crskricyqgg1b7aklphan5";
+    };
+  }
+  {
+    goPackagePath = "maunium.net/go/mautrix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tulir/mautrix-go.git";
+      rev = "v0.1.0-alpha.3";
+      sha256 = "12nlyij57ss2a5d1f1k1vsmjjvxp1fannlrbnp2jsj6rrsq0d2wr";
+    };
+  }
+  {
+    goPackagePath = "maunium.net/go/mautrix-appservice";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tulir/mautrix-appservice-go.git";
+      rev = "v0.1.0-alpha.3";
+      sha256 = "17y11wgqbrafbq6bnn4rp2lzd50fjz9d6f8j3382jsara7ps95vr";
+    };
+  }
+]
diff --git a/pkgs/servers/misc/taskserver/default.nix b/pkgs/servers/misc/taskserver/default.nix
index 63925d30c64..f15b7ca2e82 100644
--- a/pkgs/servers/misc/taskserver/default.nix
+++ b/pkgs/servers/misc/taskserver/default.nix
@@ -38,6 +38,6 @@ stdenv.mkDerivation rec {
     homepage = https://taskwarrior.org;
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ makefu ];
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer makefu ];
   };
 }
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 68f1374bbdc..e26a97dc6f3 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "nextcloud-${version}";
-  version = "15.0.2";
+  version = "15.0.4";
 
   src = fetchurl {
     url = "https://download.nextcloud.com/server/releases/${name}.tar.bz2";
-    sha256 = "1shgr81hhxr2k45hqlx06qhyayhbqdi0ndvpcyzdv54rwcrwrx61";
+    sha256 = "0xwg7p31y1pkjk1pzygh9shpqxnfkafrab52j7in7xblq53v0zgq";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/nosql/neo4j/default.nix b/pkgs/servers/nosql/neo4j/default.nix
index 0aa2101e951..0781e66f006 100644
--- a/pkgs/servers/nosql/neo4j/default.nix
+++ b/pkgs/servers/nosql/neo4j/default.nix
@@ -4,11 +4,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "neo4j-${version}";
-  version = "3.5.2";
+  version = "3.5.3";
 
   src = fetchurl {
     url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz";
-    sha256 = "0i36vgs6b24bdhckgkhw23g59x1f2zg6h07c73jv55sdmxmcdpn1";
+    sha256 = "1shkffikl9mrjg1kq2s2ylgf4691f9fv53d3x4qk2a6m4y1y9dnl";
   };
 
   buildInputs = [ makeWrapper jre8 which gawk ];
diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix
index cce1f5c6ab0..f94d185910f 100644
--- a/pkgs/servers/plex/default.nix
+++ b/pkgs/servers/plex/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, rpmextract, glibc
+{ config, stdenv, fetchurl, rpmextract, glibc
 , dataDir ? "/var/lib/plex" # Plex's data directory must be baked into the package due to symlinks.
-, enablePlexPass ? false
+, enablePlexPass ? config.plex.enablePlexPass or false
 }:
 
 let
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index af25da7ae45..75aced300ed 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -1,26 +1,142 @@
-{ stdenv, fetchFromGitHub, scons, pkgconfig, openssl, protobuf, boost, zlib}:
+{ stdenv, fetchFromGitHub, fetchgit, fetchurl, git, cmake, pkgconfig
+, openssl, boost, zlib }:
 
-stdenv.mkDerivation rec {
+let
+  sqlite3 = fetchurl {
+    url = "https://www.sqlite.org/2018/sqlite-amalgamation-3260000.zip";
+    sha256 = "0vh9aa5dyvdwsyd8yp88ss300mv2c2m40z79z569lcxa6fqwlpfy";
+  };
+
+  beast = fetchgit {
+    url = "https://github.com/boostorg/beast.git";
+    rev = "2f9a8440c2432d8a196571d6300404cb76314125";
+    sha256 = "1n9ms5cn67b0p0mhldz5psgylds22sm5x22q7knrsf20856vlk5a";
+    fetchSubmodules = false;
+    leaveDotGit = true;
+  };
+
+  docca = fetchgit {
+    url = "https://github.com/vinniefalco/docca.git";
+    rev = "335dbf9c3613e997ed56d540cc8c5ff2e28cab2d";
+    sha256 = "09cb90k0ygmnlpidybv6nzf6is51i80lnwlvad6ijc3gf1z6i1yh";
+    fetchSubmodules = false;
+    leaveDotGit = true;
+  };
+
+  rocksdb = fetchgit {
+    url = "https://github.com/facebook/rocksdb.git";
+    rev = "a297643f2e327a8bc7061bfc838fdf11935a2cf2";
+    sha256 = "00z8i4fwr27j9d4ymnls7rcgfvm6xh36a4hy2m2njx4x513pgyzw";
+    fetchSubmodules = false;
+    leaveDotGit = true;
+  };
+
+  lz4 = fetchgit rec {
+    url = "https://github.com/lz4/lz4.git";
+    rev = "v1.8.2";
+    sha256 = "1niv553q60hwn95yflzmrqkp1046hrid13h0yr36lm4fjza21h9w";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+    postFetch = "cd $out && git tag ${rev}";
+  };
+
+  libarchive = fetchgit rec {
+    url = "https://github.com/libarchive/libarchive.git";
+    rev = "v3.3.3";
+    sha256 = "165imgfmizpi4ffpiwfs8gxysn6lw3y1fxj5rga98filkl7hxs31";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+    postFetch = "cd $out && git tag ${rev}";
+  };
+
+  soci = fetchgit rec {
+    url = "https://github.com/SOCI/soci.git";
+    rev = "3a1f602b3021b925d38828e3ff95f9e7f8887ff7";
+    sha256 = "0lnps42cidlrn43h13b9yc8cs3fwgz7wb6a1kfc9rnw7swkh757f";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+  };
+
+  snappy = fetchgit rec {
+    url = "https://github.com/google/snappy.git";
+    rev = "1.1.7";
+    sha256 = "1f0i0sz5gc8aqd594zn3py6j4w86gi1xry6qaz2vzyl4w7cb4v35";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+    postFetch = "cd $out && git tag ${rev}";
+  };
+
+  nudb = fetchgit rec {
+    url = "https://github.com/vinniefalco/NuDB.git";
+    rev = "1.0.0";
+    sha256 = "142bxicv25xaw4fmpw8bbblb1grdw30wyj181xl4a5734zw3qgmz";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+    postFetch = "cd $out && git tag ${rev}";
+  };
+
+  protobuf = fetchgit rec {
+    url = "https://github.com/protocolbuffers/protobuf.git";
+    rev = "v3.6.1";
+    sha256 = "0zl09q25ggfw95lakcs3mkq5pvsj17mx29b4nqr09g0mnbw9709c";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+    postFetch = "cd $out && git tag ${rev}";
+  };
+
+  google-test = fetchgit rec {
+    url = "https://github.com/google/googletest.git";
+    rev = "c3bb0ee2a63279a803aaad956b9b26d74bf9e6e2";
+    sha256 = "0pj5b6jnrj5lrccz2disr8hklbnzd8hwmrwbfqmvhiwb9q9p0k2k";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+  };
+
+  google-benchmark = fetchgit rec {
+    url = "https://github.com/google/benchmark.git";
+    rev = "5b7683f49e1e9223cf9927b24f6fd3d6bd82e3f8";
+    sha256 = "0qg70j47zqnrbszlgrzmxpr4g88kq0gyq6v16bhaggfm83c6mg6i";
+    leaveDotGit = true;
+    fetchSubmodules = false;
+  };
+in stdenv.mkDerivation rec {
   name = "rippled-${version}";
-  version = "0.30.0-rc1";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "ripple";
     repo = "rippled";
     rev = version;
-    sha256 = "0l1dg29mg6wsdkh0lwi2znpl2wcm6bs6d3lswk5g1m1nk2mk7lr7";
+    sha256 = "1zx8qs32v5ibkwm9nm6m0qh0gcr0vcigr2wbxpd40pqqk73cqb3q";
   };
 
-  postPatch = ''
-    sed -i -e "s@ENV = dict.*@ENV = os.environ@g" SConstruct
-  '';
+  hardeningDisable = ["format"];
+  cmakeFlags = ["-Dstatic=OFF"];
+
+  nativeBuildInputs = [ pkgconfig cmake git ];
+  buildInputs = [ openssl openssl.dev boost zlib ];
 
-  nativeBuildInputs = [ pkgconfig scons ];
-  buildInputs = [ openssl protobuf boost zlib ];
+  preConfigure = ''
+    export HOME=$PWD
+
+    git config --global url."file://${beast}".insteadOf "https://github.com/vinniefalco/Beast.git"
+    git config --global url."file://${docca}".insteadOf "https://github.com/vinniefalco/docca.git"
+    git config --global url."file://${rocksdb}".insteadOf "https://github.com/facebook/rocksdb.git"
+    git config --global url."file://${lz4}".insteadOf "${lz4.url}"
+    git config --global url."file://${libarchive}".insteadOf "${libarchive.url}"
+    git config --global url."file://${soci}".insteadOf "${soci.url}"
+    git config --global url."file://${snappy}".insteadOf "${snappy.url}"
+    git config --global url."file://${nudb}".insteadOf "${nudb.url}"
+    git config --global url."file://${protobuf}".insteadOf "${protobuf.url}"
+    git config --global url."file://${google-benchmark}".insteadOf "${google-benchmark.url}"
+    git config --global url."file://${google-test}".insteadOf "${google-test.url}"
+
+    substituteInPlace CMakeLists.txt --replace "URL https://www.sqlite.org/2018/sqlite-amalgamation-3260000.zip" "URL ${sqlite3}"
+  '';
 
-  postInstall = ''
-    mkdir -p $out/bin
-    cp build/rippled $out/bin/
+  doCheck = true;
+  checkPhase = ''
+    ./rippled --unittest
   '';
 
   meta = with stdenv.lib; {
@@ -29,6 +145,5 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ ehmry offline ];
     license = licenses.isc;
     platforms = [ "x86_64-linux" ];
-    broken = true;
   };
 }
diff --git a/pkgs/servers/sabnzbd/default.nix b/pkgs/servers/sabnzbd/default.nix
index afa6321fb5d..2e68944c00d 100644
--- a/pkgs/servers/sabnzbd/default.nix
+++ b/pkgs/servers/sabnzbd/default.nix
@@ -4,7 +4,7 @@ let
   pythonEnv = python2.withPackages(ps: with ps; [ cryptography cheetah yenc sabyenc ]);
   path = stdenv.lib.makeBinPath [ par2cmdline unrar unzip p7zip ];
 in stdenv.mkDerivation rec {
-  version = "2.3.3";
+  version = "2.3.7";
   pname = "sabnzbd";
   name = "${pname}-${version}";
 
@@ -12,7 +12,7 @@ in stdenv.mkDerivation rec {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "0za4xjc4x44f7i30r86bbza3zppid333ifwzp5h526w3zak1lal8";
+    sha256 = "08bk2ignm50ki2bqwwl0q9pia7v91cixr5b1yibz6qxsyfprk0mj";
   };
 
   buildInputs = [ pythonEnv makeWrapper ];
diff --git a/pkgs/servers/sickbeard/default.nix b/pkgs/servers/sickbeard/default.nix
index 4d6e181c61d..20840a978c5 100644
--- a/pkgs/servers/sickbeard/default.nix
+++ b/pkgs/servers/sickbeard/default.nix
@@ -2,8 +2,8 @@
 
 let
   pythonEnv = python2.withPackages(ps: with ps; [ cheetah ]);
-in python2.pkgs.buildPythonApplication rec {
-  name = "sickbeard-${version}";
+in stdenv.mkDerivation rec {
+  pname = "sickbeard";
   version = "2016-03-21";
 
   src = fetchFromGitHub {
diff --git a/pkgs/servers/sickbeard/sickgear.nix b/pkgs/servers/sickbeard/sickgear.nix
index 21254f55753..b50c6b36acd 100644
--- a/pkgs/servers/sickbeard/sickgear.nix
+++ b/pkgs/servers/sickbeard/sickgear.nix
@@ -2,15 +2,15 @@
 
 let
   pythonEnv = python2.withPackages(ps: with ps; [ cheetah ]);
-in python2.pkgs.buildPythonApplication rec {
-  name = "sickgear-${version}";
-  version = "0.17.5";
+in stdenv.mkDerivation rec {
+  pname = "sickgear";
+  version = "0.18.14";
 
   src = fetchFromGitHub {
     owner = "SickGear";
     repo = "SickGear";
     rev = "release_${version}";
-    sha256 = "1lx060klgxz8gjanfjvya6p6kd8842qbpp1qhhiw49a25r8gyxpk";
+    sha256 = "0sw436zbsaxwy58lfkgw6gb6hapxxxl4wipkpzd80dgaz7bvd7c3";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/sip/freeswitch/default.nix b/pkgs/servers/sip/freeswitch/default.nix
index 33097888ff3..c37eaad2f7f 100644
--- a/pkgs/servers/sip/freeswitch/default.nix
+++ b/pkgs/servers/sip/freeswitch/default.nix
@@ -1,19 +1,96 @@
+let
+
+# the default list from v1.8.5, except with applications/mod_signalwire also disabled
+defaultModules = mods: with mods; [
+  applications.commands
+  applications.conference
+  applications.db
+  applications.dptools
+  applications.enum
+  applications.esf
+  applications.expr
+  applications.fifo
+  applications.fsv
+  applications.hash
+  applications.httapi
+  applications.sms
+  applications.spandsp
+  applications.valet_parking
+  applications.voicemail
+
+  applications.curl
+
+  codecs.amr
+  codecs.b64
+  codecs.g723_1
+  codecs.g729
+  codecs.h26x
+  codecs.opus
+
+  dialplans.asterisk
+  dialplans.xml
+
+  endpoints.loopback
+  endpoints.rtc
+  endpoints.skinny
+  endpoints.sofia
+  endpoints.verto
+
+  event_handlers.cdr_csv
+  event_handlers.cdr_sqlite
+  event_handlers.event_socket
+
+  formats.local_stream
+  formats.native_file
+  formats.png
+  formats.sndfile
+  formats.tone_stream
+
+  languages.lua
+
+  loggers.console
+  loggers.logfile
+  loggers.syslog
+
+  say.en
+
+  xml_int.cdr
+  xml_int.rpc
+  xml_int.scgi
+];
+
+in
+
 { fetchurl, stdenv, lib, ncurses, curl, pkgconfig, gnutls, readline
 , openssl, perl, sqlite, libjpeg, speex, pcre
-, ldns, libedit, yasm, which, lua, libopus, libsndfile
+, ldns, libedit, yasm, which, lua, libopus, libsndfile, libtiff
 
+, modules ? defaultModules
 , postgresql
 , enablePostgres ? true
 
 , SystemConfiguration
 }:
 
+let
+
+availableModules = import ./modules.nix { inherit curl lua libopus; };
+
+enabledModules = modules availableModules;
+
+modulesConf = let
+  lst = builtins.map (mod: mod.path) enabledModules;
+  str = lib.strings.concatStringsSep "\n" lst;
+  in builtins.toFile "modules.conf" str;
+
+in
+
 stdenv.mkDerivation rec {
-  name = "freeswitch-1.6.20";
+  name = "freeswitch-1.8.5";
 
   src = fetchurl {
     url = "https://files.freeswitch.org/freeswitch-releases/${name}.tar.bz2";
-    sha256 = "0hqz68abs5x5vzf1mndcvdi35nrhmnklzdrnrk8dyvzvz67hp2ah";
+    sha256 = "00xdrx84pw2v5pw1r5gfbb77nmvlfj275pmd48yfrc9g8c91j1sr";
   };
   postPatch = ''
     patchShebangs     libs/libvpx/build/make/rtcd.pl
@@ -23,10 +100,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
-    openssl ncurses curl gnutls readline perl libjpeg
-    sqlite pcre speex ldns libedit yasm which lua libopus
-    libsndfile
+    openssl ncurses gnutls readline perl libjpeg
+    sqlite pcre speex ldns libedit yasm which
+    libsndfile libtiff
   ]
+  ++ lib.unique (lib.concatMap (mod: mod.inputs) enabledModules)
   ++ lib.optionals enablePostgres [ postgresql ]
   ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ];
 
@@ -36,6 +114,15 @@ stdenv.mkDerivation rec {
 
   configureFlags = lib.optionals enablePostgres [ "--enable-core-pgsql-support" ];
 
+  preConfigure = ''
+    cp "${modulesConf}" modules.conf
+  '';
+
+  postInstall = ''
+    # helper for compiling modules... not generally useful; also pulls in perl dependency
+    rm "$out"/bin/fsxs
+  '';
+
   meta = {
     description = "Cross-Platform Scalable FREE Multi-Protocol Soft Switch";
     homepage = https://freeswitch.org/;
diff --git a/pkgs/servers/sip/freeswitch/modules.nix b/pkgs/servers/sip/freeswitch/modules.nix
new file mode 100644
index 00000000000..aed30e467e8
--- /dev/null
+++ b/pkgs/servers/sip/freeswitch/modules.nix
@@ -0,0 +1,223 @@
+{ libopus
+, lua
+, curl
+}:
+
+let
+
+mk = path: inputs: { inherit path inputs; };
+
+in
+
+# TODO: many of these are untested and missing required inputs
+{
+  applications = {
+    abstraction = mk "applications/mod_abstraction" [];
+    av = mk "applications/mod_av" [];
+    avmd = mk "applications/mod_avmd" [];
+    bert = mk "applications/mod_bert" [];
+    blacklist = mk "applications/mod_blacklist" [];
+    callcenter = mk "applications/mod_callcenter" [];
+    cidlookup = mk "applications/mod_cidlookup" [];
+    cluechoo = mk "applications/mod_cluechoo" [];
+    commands = mk "applications/mod_commands" [];
+    conference = mk "applications/mod_conference" [];
+    curl = mk "applications/mod_curl" [ curl ];
+    cv = mk "applications/mod_cv" [];
+    db = mk "applications/mod_db" [];
+    directory = mk "applications/mod_directory" [];
+    distributor = mk "applications/mod_distributor" [];
+    dptools = mk "applications/mod_dptools" [];
+    easyroute = mk "applications/mod_easyroute" [];
+    enum = mk "applications/mod_enum" [];
+    esf = mk "applications/mod_esf" [];
+    esl = mk "applications/mod_esl" [];
+    expr = mk "applications/mod_expr" [];
+    fifo = mk "applications/mod_fifo" [];
+    fsk = mk "applications/mod_fsk" [];
+    fsv = mk "applications/mod_fsv" [];
+    hash = mk "applications/mod_hash" [];
+    hiredis = mk "applications/mod_hiredis" [];
+    httapi = mk "applications/mod_httapi" [];
+    http_cache = mk "applications/mod_http_cache" [];
+    ladspa = mk "applications/mod_ladspa" [];
+    lcr = mk "applications/mod_lcr" [];
+    memcache = mk "applications/mod_memcache" [];
+    mongo = mk "applications/mod_mongo" [];
+    mp4 = mk "applications/mod_mp4" [];
+    mp4v2 = mk "applications/mod_mp4v2" [];
+    nibblebill = mk "applications/mod_nibblebill" [];
+    oreka = mk "applications/mod_oreka" [];
+    osp = mk "applications/mod_osp" [];
+    prefix = mk "applications/mod_prefix" [];
+    rad_auth = mk "applications/mod_rad_auth" [];
+    redis = mk "applications/mod_redis" [];
+    rss = mk "applications/mod_rss" [];
+    signalwire = mk "applications/mod_signalwire" [];
+    sms = mk "applications/mod_sms" [];
+    sms_flowroute = mk "applications/mod_sms_flowroute" [];
+    snapshot = mk "applications/mod_snapshot" [];
+    snom = mk "applications/mod_snom" [];
+    sonar = mk "applications/mod_sonar" [];
+    soundtouch = mk "applications/mod_soundtouch" [];
+    spandsp = mk "applications/mod_spandsp" [];
+    spy = mk "applications/mod_spy" [];
+    stress = mk "applications/mod_stress" [];
+    translate = mk "applications/mod_translate" [];
+    valet_parking = mk "applications/mod_valet_parking" [];
+    video_filter = mk "applications/mod_video_filter" [];
+    vmd = mk "applications/mod_vmd" [];
+    voicemail = mk "applications/mod_voicemail" [];
+    voicemail_ivr = mk "applications/mod_voicemail_ivr" [];
+  };
+
+  ast_tts = {
+    cepstral = mk "ast_tts/mod_cepstral" [];
+    flite = mk "ast_tts/mod_flite" [];
+    pocketsphinx = mk "ast_tts/mod_pocketsphinx" [];
+    tts_commandline = mk "ast_tts/mod_tts_commandline" [];
+    unimrcp = mk "ast_tts/mod_unimrcp" [];
+  };
+
+  codecs = {
+    amr = mk "codecs/mod_amr" [];
+    amrwb = mk "codecs/mod_amrwb" [];
+    b64 = mk "codecs/mod_b64" [];
+    bv = mk "codecs/mod_bv" [];
+    clearmode = mk "codecs/mod_clearmode" [];
+    codec2 = mk "codecs/mod_codec2" [];
+    com_g729 = mk "codecs/mod_com_g729" [];
+    dahdi_codec = mk "codecs/mod_dahdi_codec" [];
+    g723_1 = mk "codecs/mod_g723_1" [];
+    g729 = mk "codecs/mod_g729" [];
+    h26x = mk "codecs/mod_h26x" [];
+    ilbc = mk "codecs/mod_ilbc" [];
+    isac = mk "codecs/mod_isac" [];
+    mp4v = mk "codecs/mod_mp4v" [];
+    opus = mk "codecs/mod_opus" [ libopus ];
+    sangoma_codec = mk "codecs/mod_sangoma_codec" [];
+    silk = mk "codecs/mod_silk" [];
+    siren = mk "codecs/mod_siren" [];
+    theora = mk "codecs/mod_theora" [];
+  };
+
+  dialplans = {
+    asterisk = mk "dialplans/mod_dialplan_asterisk" [];
+    directory = mk "dialplans/mod_dialplan_directory" [];
+    xml = mk "dialplans/mod_dialplan_xml" [];
+  };
+
+  directories = {
+    ldap = mk "directories/mod_ldap" [];
+  };
+
+  endpoints = {
+    alsa = mk "endpoints/mod_alsa" [];
+    dingaling = mk "endpoints/mod_dingaling" [];
+    gsmopen = mk "endpoints/mod_gsmopen" [];
+    h323 = mk "endpoints/mod_h323" [];
+    khomp = mk "endpoints/mod_khomp" [];
+    loopback = mk "endpoints/mod_loopback" [];
+    opal = mk "endpoints/mod_opal" [];
+    portaudio = mk "endpoints/mod_portaudio" [];
+    rtc = mk "endpoints/mod_rtc" [];
+    rtmp = mk "endpoints/mod_rtmp" [];
+    skinny = mk "endpoints/mod_skinny" [];
+    sofia = mk "endpoints/mod_sofia" [];
+    verto = mk "endpoints/mod_verto" [];
+  };
+
+  event_handlers = {
+    amqp = mk "event_handlers/mod_amqp" [];
+    cdr_csv = mk "event_handlers/mod_cdr_csv" [];
+    cdr_mongodb = mk "event_handlers/mod_cdr_mongodb" [];
+    cdr_pg_csv = mk "event_handlers/mod_cdr_pg_csv" [];
+    cdr_sqlite = mk "event_handlers/mod_cdr_sqlite" [];
+    erlang_event = mk "event_handlers/mod_erlang_event" [];
+    event_multicast = mk "event_handlers/mod_event_multicast" [];
+    event_socket = mk "event_handlers/mod_event_socket" [];
+    fail2ban = mk "event_handlers/mod_fail2ban" [];
+    format_cdr = mk "event_handlers/mod_format_cdr" [];
+    json_cdr = mk "event_handlers/mod_json_cdr" [];
+    radius_cdr = mk "event_handlers/mod_radius_cdr" [];
+    odbc_cdr = mk "event_handlers/mod_odbc_cdr" [];
+    kazoo = mk "event_handlers/mod_kazoo" [];
+    rayo = mk "event_handlers/mod_rayo" [];
+    smpp = mk "event_handlers/mod_smpp" [];
+    snmp = mk "event_handlers/mod_snmp" [];
+    event_zmq = mk "event_handlers/mod_event_zmq" [];
+  };
+
+  formats = {
+    imagick = mk "formats/mod_imagick" [];
+    local_stream = mk "formats/mod_local_stream" [];
+    native_file = mk "formats/mod_native_file" [];
+    png = mk "formats/mod_png" [];
+    portaudio_stream = mk "formats/mod_portaudio_stream" [];
+    shell_stream = mk "formats/mod_shell_stream" [];
+    shout = mk "formats/mod_shout" [];
+    sndfile = mk "formats/mod_sndfile" [];
+    ssml = mk "formats/mod_ssml" [];
+    tone_stream = mk "formats/mod_tone_stream" [];
+    vlc = mk "formats/mod_vlc" [];
+  };
+
+  languages = {
+    basic = mk "languages/mod_basic" [];
+    java = mk "languages/mod_java" [];
+    lua = mk "languages/mod_lua" [ lua ];
+    managed = mk "languages/mod_managed" [];
+    perl = mk "languages/mod_perl" [];
+    python = mk "languages/mod_python" [];
+    v8 = mk "languages/mod_v8" [];
+    yaml = mk "languages/mod_yaml" [];
+  };
+
+  loggers = {
+    console = mk "loggers/mod_console" [];
+    graylog2 = mk "loggers/mod_graylog2" [];
+    logfile = mk "loggers/mod_logfile" [];
+    syslog = mk "loggers/mod_syslog" [];
+    raven = mk "loggers/mod_raven" [];
+  };
+
+  say = {
+    de = mk "say/mod_say_de" [];
+    en = mk "say/mod_say_en" [];
+    es = mk "say/mod_say_es" [];
+    es_ar = mk "say/mod_say_es_ar" [];
+    fa = mk "say/mod_say_fa" [];
+    fr = mk "say/mod_say_fr" [];
+    he = mk "say/mod_say_he" [];
+    hr = mk "say/mod_say_hr" [];
+    hu = mk "say/mod_say_hu" [];
+    it = mk "say/mod_say_it" [];
+    ja = mk "say/mod_say_ja" [];
+    nl = mk "say/mod_say_nl" [];
+    pl = mk "say/mod_say_pl" [];
+    pt = mk "say/mod_say_pt" [];
+    ru = mk "say/mod_say_ru" [];
+    sv = mk "say/mod_say_sv" [];
+    th = mk "say/mod_say_th" [];
+    zh = mk "say/mod_say_zh" [];
+  };
+
+  timers = {
+    posix_timer = mk "timers/mod_posix_timer" [];
+    timerfd = mk "timers/mod_timerfd" [];
+  };
+
+  xml_int = {
+    cdr = mk "xml_int/mod_xml_cdr" [];
+    curl = mk "xml_int/mod_xml_curl" [ curl ];
+    ldap = mk "xml_int/mod_xml_ldap" [];
+    radius = mk "xml_int/mod_xml_radius" [];
+    rpc = mk "xml_int/mod_xml_rpc" [];
+    scgi = mk "xml_int/mod_xml_scgi" [];
+
+    # experimental
+    odbc = mk "../../contrib/mod/xml_int/mod_xml_odbc" [];
+  };
+
+  freetdm = mk "../../libs/freetdm/mod_freetdm" [];
+}
diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix
index 842d01a640c..b61382974b7 100644
--- a/pkgs/servers/sql/postgresql/default.nix
+++ b/pkgs/servers/sql/postgresql/default.nix
@@ -76,7 +76,8 @@ let
     postInstall =
       ''
         moveToOutput "lib/pgxs" "$out" # looks strange, but not deleting it
-        moveToOutput "lib/*.a" "$out"
+        moveToOutput "lib/libpgcommon.a" "$out"
+        moveToOutput "lib/libpgport.a" "$out"
         moveToOutput "lib/libecpg*" "$out"
 
         # Prevent a retained dependency on gcc-wrapper.
@@ -84,7 +85,7 @@ let
 
         if [ -z "''${dontDisableStatic:-}" ]; then
           # Remove static libraries in case dynamic are available.
-          for i in $out/lib/*.a; do
+          for i in $out/lib/*.a $lib/lib/*.a; do
             name="$(basename "$i")"
             ext="${stdenv.hostPlatform.extensions.sharedLibrary}"
             if [ -e "$lib/lib/''${name%.a}$ext" ] || [ -e "''${i%.a}$ext" ]; then
@@ -188,9 +189,9 @@ in self: {
   };
 
   postgresql_11 = self.callPackage generic {
-    version = "11.1";
-    psqlSchema = "11.1";
-    sha256 = "026v0sicsh7avzi45waf8shcbhivyxmi7qgn9fd1x0vl520mx0ch";
+    version = "11.2";
+    psqlSchema = "11.2";
+    sha256 = "01clq2lw0v83zh5dc89xdr3mmap0jr37kdkh401ph6f2177bjxi6";
     this = self.postgresql_11;
     inherit self;
   };
diff --git a/pkgs/servers/tt-rss/plugin-auth-ldap/default.nix b/pkgs/servers/tt-rss/plugin-auth-ldap/default.nix
index 85d12cf07be..6fad061ce99 100644
--- a/pkgs/servers/tt-rss/plugin-auth-ldap/default.nix
+++ b/pkgs/servers/tt-rss/plugin-auth-ldap/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Plugin for TT-RSS to authenticate users via ldap";
-    license = licenses.gpl3;
+    license = licenses.asl20;
     homepage = https://github.com/hydrian/TTRSS-Auth-LDAP;
     maintainers = with maintainers; [ mic92 ];
     platforms = platforms.all;
diff --git a/pkgs/servers/tt-rss/plugin-ff-instagram/default.nix b/pkgs/servers/tt-rss/plugin-ff-instagram/default.nix
new file mode 100644
index 00000000000..27416537e33
--- /dev/null
+++ b/pkgs/servers/tt-rss/plugin-ff-instagram/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, ... }: stdenv.mkDerivation rec {
+  name = "tt-rss-plugin-ff-instagram-${version}";
+  version = "git-2019-01-10"; # No release, see https://github.com/wltb/ff_instagram/issues/6
+
+  src = fetchFromGitHub {
+    owner = "wltb";
+    repo = "ff_instagram";
+    rev = "0366ffb18c4d490c8fbfba2f5f3367a5af23cfe8";
+    sha256 = "0vvzl6wi6jmrqknsfddvckjgsgfizz1d923d1nyrpzjfn6bda1vk";
+  };
+
+  installPhase = ''
+    mkdir -p $out/ff_instagram
+
+    cp *.php $out/ff_instagram
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Plugin for Tiny Tiny RSS that allows to fetch posts from Instagram user sites";
+    longDescription = ''
+      Plugin for Tiny Tiny RSS that allows to fetch posts from Instagram user sites.
+
+      The name of the plugin in TT-RSS is 'ff_instagram'.
+    '';
+    license = licenses.agpl3;
+    homepage = "https://github.com/wltb/ff_instagram";
+    maintainers = with maintainers; [ das_j ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/tt-rss/plugin-tumblr-gdpr/default.nix b/pkgs/servers/tt-rss/plugin-tumblr-gdpr/default.nix
index 88ce2d5c3d0..702b95b3f0e 100644
--- a/pkgs/servers/tt-rss/plugin-tumblr-gdpr/default.nix
+++ b/pkgs/servers/tt-rss/plugin-tumblr-gdpr/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, ... }: stdenv.mkDerivation rec {
   name = "tt-rss-plugin-tumblr-gdpr-${version}";
-  version = "1.2";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "GregThib";
     repo = "ttrss-tumblr-gdpr";
     rev = "v${version}";
-    sha256 = "1qqnzysg1d0b169kr9fbgi50yjnvw7lrvgrl2zjx6px6z61jhv4j";
+    sha256 = "09cbghi5b6ww4i5677i39qc9rhpq70xmygp0d7x30239r3i23rpq";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/tt-rss/theme-feedly/default.nix b/pkgs/servers/tt-rss/theme-feedly/default.nix
index 4a9312ae459..710775f3f16 100644
--- a/pkgs/servers/tt-rss/theme-feedly/default.nix
+++ b/pkgs/servers/tt-rss/theme-feedly/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub }: stdenv.mkDerivation rec {
   name = "tt-rss-theme-feedly-${version}";
-  version = "1.4.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "levito";
     repo = "tt-rss-feedly-theme";
     rev = "v${version}";
-    sha256 = "1n5vci84l0wxsd2k90m2x3j8d7y9kz5fqc6fk6y7r568p1cakg9b";
+    sha256 = "024hngwzfdgw5jqppc8vh75jidfqghaccy969hvbhxhgk6j6l8m4";
   };
 
   dontBuild = true;
@@ -20,7 +20,7 @@
   meta = with stdenv.lib; {
     description = "Feedly theme for Tiny Tiny RSS";
     license = licenses.wtfpl;
-    homepage = https://github.com/levito/tt-rss-feedly-theme;
+    homepage = "https://github.com/levito/tt-rss-feedly-theme";
     maintainers = with maintainers; [ das_j ];
     platforms = platforms.all;
   };
diff --git a/pkgs/servers/unifi/default.nix b/pkgs/servers/unifi/default.nix
index fd04ec78fc8..efdf5914e18 100644
--- a/pkgs/servers/unifi/default.nix
+++ b/pkgs/servers/unifi/default.nix
@@ -49,8 +49,8 @@ in rec {
   };
 
   unifiStable = generic {
-    version = "5.9.29";
-    sha256  = "0djdjh7lwaa5nvhvz2yh6dn07iad5nq4jpab7rc909sljl6wvwvx";
+    version = "5.10.17";
+    sha256  = "0mkbyz14c0i435afj4wyhnp45hbhvmhvcg02yxd2xs3zmcr8sjgz";
   };
 
   unifiTesting = unifiStable;
diff --git a/pkgs/servers/web-apps/matomo/default.nix b/pkgs/servers/web-apps/matomo/default.nix
index 9c1180ffb49..89de2500811 100644
--- a/pkgs/servers/web-apps/matomo/default.nix
+++ b/pkgs/servers/web-apps/matomo/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "matomo-${version}";
-  version = "3.7.0";
+  version = "3.8.1";
 
   src = fetchurl {
     # TODO: As soon as the tarballs are renamed as well on future releases, this should be enabled again
     # url = "https://builds.matomo.org/${name}.tar.gz";
     url = "https://builds.matomo.org/piwik-${version}.tar.gz";
-    sha256 = "17ihsmwdfrx1c1v8cp5pc3swx3h0i0l9pjrc8jyww08kavfbfly6";
+    sha256 = "0ca4fkg2jpkfg0r9hxl45ad5xzz0gxhf404i96j059bn3c41kfi0";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/web-apps/matomo/make-localhost-default-database-host.patch b/pkgs/servers/web-apps/matomo/make-localhost-default-database-host.patch
index 48808ac2ccc..5af8ef860b2 100644
--- a/pkgs/servers/web-apps/matomo/make-localhost-default-database-host.patch
+++ b/pkgs/servers/web-apps/matomo/make-localhost-default-database-host.patch
@@ -1,13 +1,13 @@
 diff --git a/plugins/Installation/FormDatabaseSetup.php b/plugins/Installation/FormDatabaseSetup.php
-index 9364f49870..2625cbb91b 100644
+index 74de2535b4..bc172ad0eb 100644
 --- a/plugins/Installation/FormDatabaseSetup.php
 +++ b/plugins/Installation/FormDatabaseSetup.php
 @@ -82,7 +82,7 @@ class FormDatabaseSetup extends QuickForm2
  
-         // default values
-         $this->addDataSource(new HTML_QuickForm2_DataSource_Array(array(
--                                                                       'host'          => '127.0.0.1',
-+                                                                       'host'          => 'localhost',
-                                                                        'type'          => $defaultDatabaseType,
-                                                                        'tables_prefix' => 'matomo_',
-                                                                   )));
+ 
+         $defaults = array(
+-            'host'          => '127.0.0.1',
++            'host'          => 'localhost',
+             'type'          => $defaultDatabaseType,
+             'tables_prefix' => 'matomo_',
+         );
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 90ebe4fad44..5ddc0bff902 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -32,11 +32,11 @@ lib.makeScope newScope (self: with self; {
   }) {};
 
   bitmap = callPackage ({ stdenv, pkgconfig, fetchurl, libX11, libXaw, xbitmaps, libXmu, xorgproto, libXt }: stdenv.mkDerivation {
-    name = "bitmap-1.0.8";
+    name = "bitmap-1.0.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/bitmap-1.0.8.tar.gz;
-      sha256 = "1z06a1sn3iq72rmh73f11xgb7n46bdav1fvpgczxjp6al88bsbqs";
+      url = mirror://xorg/individual/app/bitmap-1.0.9.tar.gz;
+      sha256 = "0kzbv5wh02798l77y9y8d8sjkmzm9cvsn3rjh8a86v5waj50apsb";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list
index ec1e6a413b4..8193ddc8098 100644
--- a/pkgs/servers/x11/xorg/tarballs.list
+++ b/pkgs/servers/x11/xorg/tarballs.list
@@ -11,7 +11,7 @@ https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2
 https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2
 mirror://xorg/individual/app/appres-1.0.5.tar.bz2
 mirror://xorg/individual/app/bdftopcf-1.1.tar.bz2
-mirror://xorg/individual/app/bitmap-1.0.8.tar.gz
+mirror://xorg/individual/app/bitmap-1.0.9.tar.gz
 mirror://xorg/individual/app/editres-1.0.7.tar.bz2
 mirror://xorg/individual/app/fonttosfnt-1.0.5.tar.bz2
 mirror://xorg/individual/app/iceauth-1.0.8.tar.bz2
diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix
index b3077578ca7..8e63eeeba15 100644
--- a/pkgs/shells/fish/default.nix
+++ b/pkgs/shells/fish/default.nix
@@ -89,7 +89,7 @@ let
 
   fish = stdenv.mkDerivation rec {
     name = "fish-${version}";
-    version = "3.0.0";
+    version = "3.0.1";
 
     etcConfigAppendix = builtins.toFile "etc-config.appendix.fish" etcConfigAppendixText;
 
@@ -97,7 +97,7 @@ let
       # There are differences between the release tarball and the tarball github packages from the tag
       # Hence we cannot use fetchFromGithub
       url = "https://github.com/fish-shell/fish-shell/releases/download/${version}/${name}.tar.gz";
-      sha256 = "1kzjd0n0sfslkd36lzrvvvgy3qwkd9y466bkrqlnhd5h9dhx77ga";
+      sha256 = "1r55xgnacjxglban15ln3fw8p3q60k0pk0fgsax3h5zfambplrr1";
     };
 
     nativeBuildInputs = [ cmake ];
diff --git a/pkgs/shells/oil/default.nix b/pkgs/shells/oil/default.nix
index 8d3452b912b..d019457ab8a 100644
--- a/pkgs/shells/oil/default.nix
+++ b/pkgs/shells/oil/default.nix
@@ -1,13 +1,13 @@
 { stdenv, lib, fetchurl }:
 let
-  version = "0.3.0";
+  version = "0.6.pre15";
 in
 stdenv.mkDerivation {
   name = "oil-${version}";
 
   src = fetchurl {
     url = "https://www.oilshell.org/download/oil-${version}.tar.xz";
-    sha256 = "0j4fyn6xjaf29xqyzm09ahazmq9v1hkxv4kps7n3lzdfr32a4kk9";
+    sha256 = "1azdmicv39rp30msl6fpw6921gi6ib8lxiyc8kanljqk5d7zg4p6";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/X11/nx-libs/default.nix b/pkgs/tools/X11/nx-libs/default.nix
new file mode 100644
index 00000000000..bd81ab9d8fd
--- /dev/null
+++ b/pkgs/tools/X11/nx-libs/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, autoconf, automake, bash, fetchFromGitHub, libgcc, libjpeg_turbo,
+  libpng, libtool, libxml2, pkgconfig, which, xorg }:
+stdenv.mkDerivation rec {
+  name = "nx-libs-${version}";
+  version = "3.5.99.18";
+  src = fetchFromGitHub {
+    owner = "ArcticaProject";
+    repo = "nx-libs";
+    rev = version;
+    sha256 = "07559zk9flzfnyr2ngcdr3nzccga4bl30wghalhrvpgpyljivdyv";
+  };
+
+  nativeBuildInputs = [ autoconf automake libtool pkgconfig which
+    xorg.gccmakedep xorg.imake ];
+  buildInputs = [ libgcc libjpeg_turbo libpng libxml2 xorg.fontutil
+    xorg.libXcomposite xorg.libXdamage xorg.libXdmcp xorg.libXext xorg.libXfont2
+    xorg.libXinerama xorg.libXpm xorg.libXrandr xorg.libXtst xorg.pixman
+    xorg.xkbcomp xorg.xkeyboardconfig ];
+
+  enableParallelBuilding = true;
+
+  postPatch = ''
+    patchShebangs .
+    find . -type f -name Makefile -exec sed -i 's|^\(SHELL:=\)/bin/bash$|\1${stdenv.shell}|g' {} \;
+    ln -s libNX_X11.so.6.3.0
+  '';
+
+  PREFIX=""; # Don't install to $out/usr/local
+  installPhase = ''
+    make DESTDIR="$out" install
+    # See:
+    # - https://salsa.debian.org/debian-remote-team/nx-libs/blob/bcc152100617dc59156015a36603a15db530a64f/debian/rules#L66-72
+    # - https://github.com/ArcticaProject/nx-libs/issues/652
+    patchelf --remove-needed "libX11.so.6" $out/bin/nxagent
+  '';
+
+  meta = {
+    description = "NX X server based on Xnest";
+    homepage = https://github.com/ArcticaProject/nx-libs;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [ jD91mZM2 ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/admin/nxproxy/default.nix b/pkgs/tools/admin/nxproxy/default.nix
deleted file mode 100644
index 45ec8bb72e3..00000000000
--- a/pkgs/tools/admin/nxproxy/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, fetchurl, autoreconfHook, pkgconfig, libxcomp }:
-
-stdenv.mkDerivation rec {
-  name = "nxproxy-${version}";
-  version = "3.5.99.17-1";
-
-  src = fetchurl {
-    sha256 = "18a7cvjnaf50lf1cc5axx9jmi8n9g75d2i5y4s6q9r3phpwyp918";
-    url = "https://code.x2go.org/releases/source/nx-libs/nx-libs-${version}-lite.tar.gz";
-  };
-
-  buildInputs = [ libxcomp ];
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
-
-  preAutoreconf = ''
-    cd nxproxy/
-    sed -i 's|-L\$(top_srcdir)/../nxcomp/src/.libs ||' src/Makefile.am
-  '';
-
-  makeFlags = [ "exec_prefix=$(out)" ];
-
-  enableParallelBuilding = true;
-
-  meta = with stdenv.lib; {
-    description = "NX compression proxy";
-    homepage = http://wiki.x2go.org/doku.php/wiki:libs:nx-libs;
-    license = licenses.gpl2;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/tools/archivers/unzip/CVE-2018-18384.patch b/pkgs/tools/archivers/unzip/CVE-2018-18384.patch
new file mode 100644
index 00000000000..e9320e125cf
--- /dev/null
+++ b/pkgs/tools/archivers/unzip/CVE-2018-18384.patch
@@ -0,0 +1,35 @@
+--- unzip60/list.c	
++++ unzip60/list.c	
+@@ -97,7 +97,7 @@ int list_files(__G)    /* return PK-type
+ {
+     int do_this_file=FALSE, cfactor, error, error_in_archive=PK_COOL;
+ #ifndef WINDLL
+-    char sgn, cfactorstr[10];
++    char sgn, cfactorstr[1+10+1+1];	/* <sgn><int>%NUL */
+     int longhdr=(uO.vflag>1);
+ #endif
+     int date_format;
+@@ -389,9 +389,9 @@ int list_files(__G)    /* return PK-type
+             }
+ #else /* !WINDLL */
+             if (cfactor == 100)
+-                sprintf(cfactorstr, LoadFarString(CompFactor100));
++                snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactor100));
+             else
+-                sprintf(cfactorstr, LoadFarString(CompFactorStr), sgn, cfactor);
++                snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactorStr), sgn, cfactor);
+             if (longhdr)
+                 Info(slide, 0, ((char *)slide, LoadFarString(LongHdrStats),
+                   FmZofft(G.crec.ucsize, "8", "u"), methbuf,
+@@ -471,9 +471,9 @@ int list_files(__G)    /* return PK-type
+ 
+ #else /* !WINDLL */
+         if (cfactor == 100)
+-            sprintf(cfactorstr, LoadFarString(CompFactor100));
++            snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactor100));
+         else
+-            sprintf(cfactorstr, LoadFarString(CompFactorStr), sgn, cfactor);
++            snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactorStr), sgn, cfactor);
+         if (longhdr) {
+             Info(slide, 0, ((char *)slide, LoadFarString(LongFileTrailer),
+               FmZofft(tot_ucsize, "8", "u"), FmZofft(tot_csize, "8", "u"),
diff --git a/pkgs/tools/archivers/unzip/default.nix b/pkgs/tools/archivers/unzip/default.nix
index 7c4bb988b62..cdf189e82df 100644
--- a/pkgs/tools/archivers/unzip/default.nix
+++ b/pkgs/tools/archivers/unzip/default.nix
@@ -24,6 +24,7 @@ stdenv.mkDerivation {
     ./CVE-2015-7697.diff
     ./CVE-2014-9913.patch
     ./CVE-2016-9844.patch
+    ./CVE-2018-18384.patch
     ./dont-hardcode-cc.patch
   ] ++ stdenv.lib.optional enableNLS
     (fetchurl {
diff --git a/pkgs/tools/backup/easysnap/default.nix b/pkgs/tools/backup/easysnap/default.nix
index d8643dbf907..ceb6feae396 100644
--- a/pkgs/tools/backup/easysnap/default.nix
+++ b/pkgs/tools/backup/easysnap/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "easysnap-${version}";
-  version = "unstable-2018-11-20";
+  version = "unstable-2019-02-17";
 
   src = fetchFromGitHub {
     owner = "sjau";
     repo = "easysnap";
-    rev = "dbf58c06a339cb040dbdcaf7e6ffec5af4add3c7";
-    sha256 = "0rvikmj2k103ffgnvkway8n6ajq0vzwcxb4l5vhka1hqh8047lam";
+    rev = "9ef5d1ff51ccf9939a88b7b32b4959d27cf61ecc";
+    sha256 = "0m0217ni909nham15w5vxg8y7cw2zwjibnhvgnpxxsap8zkhv1m4";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/backup/pyznap/default.nix b/pkgs/tools/backup/pyznap/default.nix
new file mode 100644
index 00000000000..e37327c429d
--- /dev/null
+++ b/pkgs/tools/backup/pyznap/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonApplication
+, fetchPypi
+, paramiko
+, configparser
+}:
+
+buildPythonApplication rec {
+  pname = "pyznap";
+  version = "1.1.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "9ac0da5d7f6461d1d6f128362786e297144b415f9e3a2f1835642ab3dda82d55";
+  };
+
+  propagatedBuildInputs = [ configparser paramiko ];
+
+  # tests aren't included in the PyPI packages
+  doCheck = false;
+
+  meta = {
+    homepage = "https://github.com/yboetz/pyznap";
+    description = "ZFS snapshot tool written in python";
+    license = with lib.licenses; [ gpl3 ];
+    maintainers = with lib.maintainers; [ rbrewer ];
+  };
+}
diff --git a/pkgs/tools/backup/restic/default.nix b/pkgs/tools/backup/restic/default.nix
index 453e31f5d13..7b039f93a03 100644
--- a/pkgs/tools/backup/restic/default.nix
+++ b/pkgs/tools/backup/restic/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "restic-${version}";
-  version = "0.9.2";
+  version = "0.9.4";
 
   goPackagePath = "github.com/restic/restic";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "restic";
     repo = "restic";
     rev = "v${version}";
-    sha256 = "0kl8yk636i3y7f2kd43pydjh4pv7hhq09p5k54jlysnrbf2kjb4h";
+    sha256 = "15lx01w46bwn3hjwpmm8xy71m7ml9wdwddbbfvmk5in61gv1acr5";
   };
 
   buildPhase = ''
diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix
index 63affdde718..84a2375302f 100644
--- a/pkgs/tools/bluetooth/blueman/default.nix
+++ b/pkgs/tools/bluetooth/blueman/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3
+{ config, stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3
 , obex_data_server, xdg_utils, libnotify, dnsmasq, dhcp
 , hicolor-icon-theme, librsvg, wrapGAppsHook, gobject-introspection
-, withPulseAudio ? true, libpulseaudio }:
+, withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio }:
 
 let
   pythonPackages = python3Packages;
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index eefc0beb1fc..fc55352fa12 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   pname = "bcachefs-tools";
-  version = "2019-01-23";
+  version = "2019-02-09";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs-tools.git";
-    rev = "35fca2f044d375b1590f499cfd34bef38ca0f8f1";
-    sha256 = "1mmpwksszdi4n7zv3fm7qnmfk94m56d65lfw30553bnfm3yaz3k7";
+    rev = "17c5215c1c542dd7b6b4f891a0da16d8c98e0591";
+    sha256 = "1zm2lnvijfmz483m2nhxz1rhk7ghgh0c450nyiwi6wa7lc1y3339";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
index 515fdd4e260..c4d52462906 100644
--- a/pkgs/tools/filesystems/fuse-overlayfs/default.nix
+++ b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
@@ -1,27 +1,25 @@
-{ pkgs, lib, autoreconfHook, pkgconfig, fuse3 }:
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig, fuse3 }:
 
-let
-  version = "0.2";
-in
-  pkgs.stdenv.mkDerivation {
-    name = "fuse-overlayfs-${version}";
+stdenv.mkDerivation rec {
+  name = "fuse-overlayfs-${version}";
+  version = "0.3";
 
-    src = pkgs.fetchFromGitHub {
-      owner = "containers";
-      repo = "fuse-overlayfs";
-      rev = "1e2b65baa2f75eea0e4bab90b5ac81dd8471256c";
-      sha256 = "0a9ix8rqjs5r28jsriyiv4yq7iilmv69x05kf23s1ihzrvrfkl08";
-    };
+  src = fetchFromGitHub {
+    owner = "containers";
+    repo = "fuse-overlayfs";
+    rev = "v${version}";
+    sha256 = "1cch2j397hydrhh62faqa663vas75qbmylqd06fk6nafasa3ri0l";
+  };
 
-    nativeBuildInputs = [ autoreconfHook pkgconfig ];
-    buildInputs = [ fuse3 ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ fuse3 ];
 
-    meta = with lib; {
-      homepage = https://github.com/containers/fuse-overlayfs;
-      description = "FUSE implementation for overlayfs";
-      longDescription = "An implementation of overlay+shiftfs in FUSE for rootless containers.";
-      license = licenses.gpl3;
-      platforms = platforms.unix;
-      maintainers = [ maintainers.ma9e ];
-    };
-  }
+  meta = with lib; {
+    homepage = https://github.com/containers/fuse-overlayfs;
+    description = "FUSE implementation for overlayfs";
+    longDescription = "An implementation of overlay+shiftfs in FUSE for rootless containers.";
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ma9e ];
+  };
+}
diff --git a/pkgs/tools/graphics/lepton/default.nix b/pkgs/tools/graphics/lepton/default.nix
new file mode 100644
index 00000000000..fec092db0c5
--- /dev/null
+++ b/pkgs/tools/graphics/lepton/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, git, glibc }:
+
+stdenv.mkDerivation rec {
+  version = "1.2.1";
+  name = "lepton-${version}";
+
+  src = fetchFromGitHub {
+    repo = "lepton";
+    owner = "dropbox";
+    rev = "c378cbfa2daaa99e8828be7395013f94cedb1bcc";
+    sha256 = "1f2vyp0crj4yw27bs53vykf2fqk4w57gv3lh9dp89dh3y7wwh1ba";
+  };
+
+  nativeBuildInputs = [ cmake git ];
+  buildInputs = [ glibc.static ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/dropbox/lepton;
+    description = "A tool to losslessly compress JPEGs";
+    license = licenses.asl20;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ artemist ];
+  };
+}
diff --git a/pkgs/tools/graphics/wkhtmltopdf/default.nix b/pkgs/tools/graphics/wkhtmltopdf/default.nix
index 14ba0f8c2a9..237c9bb398b 100644
--- a/pkgs/tools/graphics/wkhtmltopdf/default.nix
+++ b/pkgs/tools/graphics/wkhtmltopdf/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     fontconfig freetype libpng zlib libjpeg openssl
     libX11 libXext libXrender
-    qt5.qtwebkit qt5.qtsvg
+    qt5.qtwebkit qt5.qtsvg qt5.qtxmlpatterns
   ];
 
   prePatch = ''
diff --git a/pkgs/tools/misc/aptly/default.nix b/pkgs/tools/misc/aptly/default.nix
index 168a3f88772..27ee38b3417 100644
--- a/pkgs/tools/misc/aptly/default.nix
+++ b/pkgs/tools/misc/aptly/default.nix
@@ -2,14 +2,14 @@
 
 let
 
-  version = "1.2.0";
+  version = "1.3.0";
   rev = "v${version}";
 
   aptlySrc = fetchFromGitHub {
     inherit rev;
-    owner = "smira";
+    owner = "aptly-dev";
     repo = "aptly";
-    sha256 = "1acnkmgarz9rp0skkh7zzwkhisjlmbl74jqjmqd3mn42y528c34b";
+    sha256 = "032gw8qkxcgc0jyrvzqh7jkbmk4k0gf7j74hyhclfnjmd9548f5l";
   };
 
   aptlyCompletionSrc = fetchFromGitHub {
@@ -26,7 +26,7 @@ buildGoPackage {
 
   src = aptlySrc;
 
-  goPackagePath = "github.com/smira/aptly";
+  goPackagePath = "github.com/aptly-dev/aptly";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/misc/bashplotlib/default.nix b/pkgs/tools/misc/bashplotlib/default.nix
index c334ee77634..79f72746f90 100644
--- a/pkgs/tools/misc/bashplotlib/default.nix
+++ b/pkgs/tools/misc/bashplotlib/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "bashplotlib";
-  version = "2017-10-11";
+  version = "2019-01-02";
 
   src = fetchFromGitHub {
     owner = "glamp";
     repo = "bashplotlib";
-    rev = "fdc52be2c1fed13753692eced328143ab1db6f3d";
-    sha256 = "1ycql6j65zywyav2n3c0x1i5cm9w6glzqc3v0cgdvv1bdg4wi0gf";
+    rev = "f7533172c4dc912b5accae42edd5c0f655d7468f";
+    sha256 = "1sifqslvvz2c05spwrl81kcdg792l6jwvfd3ih9q5wjkvkm0plz8";
   };
 
   # No tests
diff --git a/pkgs/tools/misc/bbe/default.nix b/pkgs/tools/misc/bbe/default.nix
new file mode 100644
index 00000000000..ecff2459ef2
--- /dev/null
+++ b/pkgs/tools/misc/bbe/default.nix
@@ -0,0 +1,22 @@
+{ stdenv , fetchurl, autoreconfHook }:
+stdenv.mkDerivation rec {
+  name = "bbe-${version}";
+  version = "0.2.2";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/bbe-/${version}/bbe-${version}.tar.gz";
+    sha256 = "1nyxdqi4425sffjrylh7gl57lrssyk4018afb7mvrnd6fmbszbms";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  outputs = [ "out" "doc" ];
+
+  meta = with stdenv.lib; {
+    description = "A sed-like editor for binary files";
+    homepage = "http://bbe-.sourceforge.net/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.hhm ];
+  };
+}
diff --git a/pkgs/tools/misc/brltty/default.nix b/pkgs/tools/misc/brltty/default.nix
index 6635f293195..99ba8e5e515 100644
--- a/pkgs/tools/misc/brltty/default.nix
+++ b/pkgs/tools/misc/brltty/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, pkgconfig, python3, alsaSupport, alsaLib ? null, bluez, systemdSupport, systemd ? null }:
+{ stdenv, fetchurl, pkgconfig, python3, bluez
+, alsaSupport ? stdenv.isLinux, alsaLib ? null
+, systemdSupport ? stdenv.isLinux, systemd ? null }:
 
 assert alsaSupport -> alsaLib != null;
 assert systemdSupport -> systemd != null;
diff --git a/pkgs/tools/misc/broot/default.nix b/pkgs/tools/misc/broot/default.nix
new file mode 100644
index 00000000000..d09f313e147
--- /dev/null
+++ b/pkgs/tools/misc/broot/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  name = "broot-${version}";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "Canop";
+    repo = "broot";
+    rev = "v${version}";
+    sha256 = "192qqlqym8lpskh6f7sf5fanybjwhdqs1cgl6mqm35763fa5jrdj";
+  };
+
+  cargoSha256 = "059iylnkjb7lxxs9v2b6h05nidwgcj6kqyhcq58lalkhb63srb1q";
+
+  meta = with stdenv.lib; {
+    description = "An interactive tree view, a fuzzy search, a balanced BFS descent and customizable commands";
+    homepage = "https://github.com/Canop/broot";
+    maintainers = with maintainers; [ magnetophon ];
+    license = with licenses; [ mit ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix
index edc6a2e4643..9d3c3a45004 100644
--- a/pkgs/tools/misc/calamares/default.nix
+++ b/pkgs/tools/misc/calamares/default.nix
@@ -7,12 +7,12 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "calamares";
-  version = "3.2.2";
+  version = "3.2.4";
 
   # release including submodule
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${name}.tar.gz";
-    sha256 = "14hsv2m0jza33kf68l3rhqfjj7224fmvgvk1kg2qwhvplpjdn16v";
+    sha256 = "0wsr1awmk5dnx2cqpp5sb6xhsq7b1jqwbsi1n39db97iyshah6fb";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/misc/direnv/default.nix b/pkgs/tools/misc/direnv/default.nix
index 2a02b0391ae..de8130ff3f1 100644
--- a/pkgs/tools/misc/direnv/default.nix
+++ b/pkgs/tools/misc/direnv/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "direnv-${version}";
-  version = "2.19.0";
+  version = "2.19.2";
   goPackagePath = "github.com/direnv/direnv";
 
   src = fetchFromGitHub {
     owner = "direnv";
     repo = "direnv";
     rev = "v${version}";
-    sha256 = "0v5r07b5r0wmmf8wndi0z1fp979pyqg6xpx7w847bkyn4pvgpscm";
+    sha256 = "1iq9wmc63x1c7g1ixdhd6q3w1sx8xl8kf1bprxwq26n9zpd0g13g";
   };
 
   postConfigure = ''
diff --git a/pkgs/tools/misc/docker-sync/Gemfile b/pkgs/tools/misc/docker-sync/Gemfile
new file mode 100644
index 00000000000..2c8125a4616
--- /dev/null
+++ b/pkgs/tools/misc/docker-sync/Gemfile
@@ -0,0 +1,3 @@
+source 'https://rubygems.org' do
+  gem 'docker-sync'
+end
diff --git a/pkgs/tools/misc/docker-sync/Gemfile.lock b/pkgs/tools/misc/docker-sync/Gemfile.lock
new file mode 100644
index 00000000000..ff7aa6b3f9f
--- /dev/null
+++ b/pkgs/tools/misc/docker-sync/Gemfile.lock
@@ -0,0 +1,29 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    backticks (1.0.2)
+    daemons (1.3.1)
+    docker-compose (1.1.10)
+      backticks (~> 1.0)
+    docker-sync (0.5.9)
+      daemons (~> 1.2, >= 1.2.3)
+      docker-compose (~> 1.1, >= 1.1.7)
+      dotenv (~> 2.1, >= 2.1.1)
+      gem_update_checker (~> 0.2.0, >= 0.2.0)
+      os
+      terminal-notifier (= 2.0.0)
+      thor (~> 0.20, >= 0.20.0)
+    dotenv (2.6.0)
+    gem_update_checker (0.2.0)
+    os (1.0.0)
+    terminal-notifier (2.0.0)
+    thor (0.20.3)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  docker-sync!
+
+BUNDLED WITH
+   1.16.2
diff --git a/pkgs/tools/misc/docker-sync/default.nix b/pkgs/tools/misc/docker-sync/default.nix
new file mode 100644
index 00000000000..e541fc0f0d4
--- /dev/null
+++ b/pkgs/tools/misc/docker-sync/default.nix
@@ -0,0 +1,18 @@
+{ lib, ruby, bundlerApp }:
+
+bundlerApp {
+  pname = "docker-sync";
+  gemdir = ./.;
+
+  inherit ruby;
+
+  exes = ["docker-sync"];
+
+  meta = with lib; {
+    description = "Run your application at full speed while syncing your code for development";
+    homepage = http://docker-sync.io;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.manveru ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/misc/docker-sync/gemset.nix b/pkgs/tools/misc/docker-sync/gemset.nix
new file mode 100644
index 00000000000..739d11c7b5a
--- /dev/null
+++ b/pkgs/tools/misc/docker-sync/gemset.nix
@@ -0,0 +1,76 @@
+{
+  backticks = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vr28l9vckavnrb9pnqrhcmnk3wsvvpas8jjh165w2rzv3sdkws5";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  daemons = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0l5gai3vd4g7aqff0k1mp41j9zcsvm2rbwmqn115a325k9r7pf4w";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  docker-compose = {
+    dependencies = ["backticks"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00v3y182rmpq34dl91iprvhc50vw8hysy2h7iy3ihmmm9pgg71gc";
+      type = "gem";
+    };
+    version = "1.1.10";
+  };
+  docker-sync = {
+    dependencies = ["daemons" "docker-compose" "dotenv" "gem_update_checker" "os" "terminal-notifier" "thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vrlcggj7k8w30b76f23p64yx4wg7p7mq9lp6lsnh2ysq9n3cjqg";
+      type = "gem";
+    };
+    version = "0.5.9";
+  };
+  dotenv = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rgl2kqhnxqbjvi9brbvb52iaq1z8yi0pl0bawk4fm6kl9igxr8f";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  gem_update_checker = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ckbz4q3q59kkv138n0cmsyida0wg45pwscxzf5vshxcrxhmq3x7";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  os = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s401gvhqgs2r8hh43ia205mxsy1wc0ib4k76wzkdpspfcnfr1rk";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  terminal-notifier = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1slc0y8pjpw30hy21v8ypafi8r7z9jlj4bjbgz03b65b28i2n3bs";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  thor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/misc/fd/default.nix b/pkgs/tools/misc/fd/default.nix
index 75c7897ac84..70bbbea7288 100644
--- a/pkgs/tools/misc/fd/default.nix
+++ b/pkgs/tools/misc/fd/default.nix
@@ -2,25 +2,26 @@
 
 rustPlatform.buildRustPackage rec {
   name = "fd-${version}";
-  version = "7.2.0";
+  version = "7.3.0";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = "fd";
     rev = "v${version}";
-    sha256 = "1h7ar1m7w3vmakg9rp1nfmz7q5pqwvd8yyxwj335ixb49gph1zi5";
+    sha256 = "0y4657w1pi4x9nmbv551dj00dyiv935m8ph7jlv00chwy3hrb3yi";
   };
 
-  cargoSha256 = "0y6xp7fdjfmjfqf9avbq9bdvzvwkf3v1dv7a4k03w5279vxafzi4";
+  cargoSha256 = "0dfv6nia3v3f3rwbjh2h3zdqd48vw8gwilhq0z4n6xvjzk7qydj5";
 
   preFixup = ''
-    mkdir -p "$out/man/man1"
-    cp "$src/doc/fd.1" "$out/man/man1"
+    install -Dm644 "$src/doc/fd.1" "$out/man/man1/fd.1"
 
-    mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
-    cp target/release/build/fd-find-*/out/fd.bash "$out/share/bash-completion/completions/"
-    cp target/release/build/fd-find-*/out/fd.fish "$out/share/fish/vendor_completions.d/"
-    cp target/release/build/fd-find-*/out/_fd "$out/share/zsh/site-functions/"
+    install -Dm644 target/release/build/fd-find-*/out/fd.bash \
+      "$out/share/bash-completion/completions/fd.bash"
+    install -Dm644 target/release/build/fd-find-*/out/fd.fish \
+      "$out/share/fish/vendor_completions.d/fd.fish"
+    install -Dm644 target/release/build/fd-find-*/out/_fd \
+      "$out/share/zsh/site-functions/_fd"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/gh-ost/default.nix b/pkgs/tools/misc/gh-ost/default.nix
index a5871d2bc33..709d3005091 100644
--- a/pkgs/tools/misc/gh-ost/default.nix
+++ b/pkgs/tools/misc/gh-ost/default.nix
@@ -2,11 +2,11 @@
 
 let
   goPackagePath = "github.com/github/gh-ost";
-  version = "1.0.36";
-  sha256 = "0qa7k50bf87bx7sr6iwqri8l49f811gs0bj3ivslxfibcs1z5d4h";
+  version = "1.0.47";
+  sha256 = "0yyhkqis4j2cl6w2drrjxdy5j8x9zp4j89gsny6w4ql8gm5qgvvk";
 
-in {
-  gh-ost = buildGoPackage ({
+in
+buildGoPackage ({
     name = "gh-ost-${version}";
     inherit goPackagePath;
 
@@ -23,5 +23,5 @@ in {
       license = licenses.mit;
       platforms = platforms.linux;
     };
-  });
-}
+})
+
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index 2a8734822ac..fa1729b929c 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -47,6 +47,21 @@ stdenv.mkDerivation rec {
     sha256 = "03vvdfhdmf16121v7xs8is2krwnv15wpkhkf16a4yf8nsfc3f2w1";
   };
 
+  patches = [
+    ./fix-bash-completion.patch
+    # This patch makes grub compatible with the XFS sparse inode
+    # feature introduced by xfsprogs-4.16.
+    # to be removed in grub-2.03
+    (fetchpatch {
+      url = https://git.savannah.gnu.org/cgit/grub.git/patch/?id=cda0a857dd7a27cd5d621747464bfe71e8727fff;
+      sha256 = "0k9qrkdxwdqk6sz05q9smqwjr6pvgc9adx1mlf0807g4im91xnm0";
+    })
+    ./relocation-not-implemented.diff
+  ];
+  postPatch = ''
+    substituteInPlace ./configure --replace '/usr/share/fonts/unifont' '${unifont}/share/fonts'
+  '';
+
   nativeBuildInputs = [ bison flex python pkgconfig ];
   buildInputs = [ ncurses libusb freetype gettext lvm2 fuse ]
     ++ optional doCheck qemu
@@ -57,10 +72,6 @@ stdenv.mkDerivation rec {
   # Work around a bug in the generated flex lexer (upstream flex bug?)
   NIX_CFLAGS_COMPILE = "-Wno-error";
 
-  postPatch = ''
-    substituteInPlace ./configure --replace '/usr/share/fonts/unifont' '${unifont}/share/fonts'
-  '';
-
   preConfigure =
     '' for i in "tests/util/"*.in
        do
@@ -82,17 +93,6 @@ stdenv.mkDerivation rec {
       unset CPP # setting CPP intereferes with dependency calculation
     '';
 
-  patches = [
-    ./fix-bash-completion.patch
-    # This patch makes grub compatible with the XFS sparse inode
-    # feature introduced by xfsprogs-4.16.
-    # to be removed in grub-2.03
-    (fetchpatch {
-      url = https://git.savannah.gnu.org/cgit/grub.git/patch/?id=cda0a857dd7a27cd5d621747464bfe71e8727fff;
-      sha256 = "0k9qrkdxwdqk6sz05q9smqwjr6pvgc9adx1mlf0807g4im91xnm0";
-    })
-  ];
-
   configureFlags = [ "--enable-grub-mount" ] # dep of os-prober
     ++ optional zfsSupport "--enable-libzfs"
     ++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystemsBuild.${stdenv.hostPlatform.system}.target}" "--program-prefix=" ]
diff --git a/pkgs/tools/misc/grub/relocation-not-implemented.diff b/pkgs/tools/misc/grub/relocation-not-implemented.diff
new file mode 100644
index 00000000000..0b7bf947d14
--- /dev/null
+++ b/pkgs/tools/misc/grub/relocation-not-implemented.diff
@@ -0,0 +1,25 @@
+https://git.savannah.gnu.org/cgit/grub.git/commit/util?id=842c390469e2c2e10b5
+diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
+index a2bb054..39d7efb 100644
+--- a/util/grub-mkimagexx.c
++++ b/util/grub-mkimagexx.c
+@@ -841,6 +841,7 @@ SUFFIX (relocate_addresses) (Elf_Ehdr *e, Elf_Shdr *sections,
+ 		  break;
+ 
+ 		case R_X86_64_PC32:
++		case R_X86_64_PLT32:
+ 		  {
+ 		    grub_uint32_t *t32 = (grub_uint32_t *) target;
+ 		    *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32)
+diff --git a/util/grub-module-verifier.c b/util/grub-module-verifier.c
+index 9179285..a79271f 100644
+--- a/util/grub-module-verifier.c
++++ b/util/grub-module-verifier.c
+@@ -19,6 +19,7 @@ struct grub_module_verifier_arch archs[] = {
+       -1
+     }, (int[]){
+       R_X86_64_PC32,
++      R_X86_64_PLT32,
+       -1
+     }
+   },
diff --git a/pkgs/tools/misc/mpdscribble/default.nix b/pkgs/tools/misc/mpdscribble/default.nix
index 6913f1c11fd..ca6808effda 100644
--- a/pkgs/tools/misc/mpdscribble/default.nix
+++ b/pkgs/tools/misc/mpdscribble/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     description = "A Music Player Daemon (MPD) client which submits information about tracks beeing played to a scrobbler (e.g. last.fm)";
     homepage = http://mpd.wikia.com/wiki/Client:mpdscribble;
     license = licenses.gpl2;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/multitail/default.nix b/pkgs/tools/misc/multitail/default.nix
index 48714a4b6e8..07561d390cd 100644
--- a/pkgs/tools/misc/multitail/default.nix
+++ b/pkgs/tools/misc/multitail/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://www.vanheusden.com/multitail/;
     description = "tail on Steroids";
-    maintainers = with stdenv.lib.maintainers; [ ];
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
     platforms = stdenv.lib.platforms.unix;
     license = stdenv.lib.licenses.gpl2Plus;
   };
diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix
index f1df0691205..52cc5671531 100644
--- a/pkgs/tools/misc/skim/default.nix
+++ b/pkgs/tools/misc/skim/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   name = "skim-${version}";
-  version = "0.5.2";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
     owner = "lotabout";
     repo = "skim";
     rev = "v${version}";
-    sha256 = "1b3l0h69cm70669apsgzp7qw1k5fi2gbk9176hjr9iypbdiwjyir";
+    sha256 = "1mn0wa10f9ik6ddhwjdd1n15gdif10284zpwbrwprya643959aj2";
   };
 
   outputs = [ "out" "vim" ];
@@ -21,6 +21,7 @@ rustPlatform.buildRustPackage rec {
 
   postInstall = ''
     install -D -m 555 bin/sk-tmux -t $out/bin
+    install -D -m 644 shell/skim.1 $out/man/man1/skim.1
     install -D -m 444 shell/* -t $out/share/skim
     install -D -m 444 plugin/skim.vim -t $vim/plugin
 
diff --git a/pkgs/tools/misc/slurp/default.nix b/pkgs/tools/misc/slurp/default.nix
index a729ea6381a..8b7f1d38744 100644
--- a/pkgs/tools/misc/slurp/default.nix
+++ b/pkgs/tools/misc/slurp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "slurp-${version}";
-  version = "1.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = "slurp";
     rev = "v${version}";
-    sha256 = "03igv8r8n772xb0y7whhs1pa298l3d94jbnknaxpwp2n4fi04syb";
+    sha256 = "072lkwhpvr753wfqzmd994bnhbrgfavxcgqcyml7abab28sdhs1y";
   };
 
   nativeBuildInputs = [
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    description = "Grab images from a Wayland compositor";
+    description = "Select a region in a Wayland compositor";
     homepage = https://github.com/emersion/slurp;
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/tools/misc/smenu/default.nix b/pkgs/tools/misc/smenu/default.nix
index b5c963307df..2b9f83041a4 100644
--- a/pkgs/tools/misc/smenu/default.nix
+++ b/pkgs/tools/misc/smenu/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       your selection will be sent to standard output.
     '';
     license     = licenses.gpl2;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
     platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/usbmuxd/default.nix b/pkgs/tools/misc/usbmuxd/default.nix
index 6c26564c9db..2dfd4752f07 100644
--- a/pkgs/tools/misc/usbmuxd/default.nix
+++ b/pkgs/tools/misc/usbmuxd/default.nix
@@ -2,15 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "usbmuxd";
-  version = "2018-07-22";
-
-  name = "${pname}-${version}";
+  version = "2018-10-10";
 
   src = fetchFromGitHub {
     owner = "libimobiledevice";
     repo = pname;
-    rev = "ee85938c21043ef5f7cd4dfbc7677f385814d4d8";
-    sha256 = "1qsnxvcagxa92rz0w78m0n2drgaghi0pqpbjdk2080sczzi1g76y";
+    rev = "96e4aabe0b9a46ea9da4955a10c774a8e58fe677";
+    sha256 = "03xnj4y606adbhl829vv46qa78f6w2ik4mjz19a34x9lhkcrqxqi";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
index 2212ba870c4..f538fcbe4ec 100644
--- a/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -71,7 +71,7 @@ python3Packages.buildPythonApplication rec {
   meta = with stdenv.lib; {
     homepage = https://github.com/pimutils/vdirsyncer;
     description = "Synchronize calendars and contacts";
-    maintainers = with maintainers; [ jgeerds ];
+    maintainers = with maintainers; [ matthiasbeyer jgeerds ];
     platforms = platforms.all;
     license = licenses.mit;
   };
diff --git a/pkgs/tools/misc/vimer/default.nix b/pkgs/tools/misc/vimer/default.nix
index 7ccc6e9dc27..a655aa9502e 100644
--- a/pkgs/tools/misc/vimer/default.nix
+++ b/pkgs/tools/misc/vimer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
       in an existing instance of GVim or MacVim.
     '';
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = [ maintainers.matthiasbeyer ];
     platforms = platforms.linux;
   };
 
diff --git a/pkgs/tools/misc/watchexec/default.nix b/pkgs/tools/misc/watchexec/default.nix
index 61f1752823d..ddfdf0f492f 100644
--- a/pkgs/tools/misc/watchexec/default.nix
+++ b/pkgs/tools/misc/watchexec/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   name = "watchexec-${version}";
-  version = "1.10.0";
+  version = "1.10.1";
 
   src = fetchFromGitHub {
     owner = "watchexec";
     repo = "watchexec";
     rev = version;
-    sha256 = "15fnf3r4pvl9gyvq0fy0l7p8xjaz44z9g4dzkn1l0fdhldib6z1c";
+    sha256 = "0azfnqx5v1shsd7jdxzn41awh9dbjykv8h1isrambc86ygr1c1cy";
   };
 
   cargoSha256 = "1xlcfr2q2pw47sav9iryjva7w9chv90g18hszq8s0q0w71sccv6j";
diff --git a/pkgs/tools/misc/xsel/default.nix b/pkgs/tools/misc/xsel/default.nix
index 604868f8c49..0ec7d58598f 100644
--- a/pkgs/tools/misc/xsel/default.nix
+++ b/pkgs/tools/misc/xsel/default.nix
@@ -3,23 +3,18 @@
 stdenv.mkDerivation rec {
   name = "xsel-unstable-${version}";
 
-  version = "2016-09-02";
+  version = "2018-01-10";
 
   src = fetchFromGitHub {
     owner = "kfish";
     repo = "xsel";
-    rev = "aa7f57eed805adb09e9c59c8ea841870e8206b81";
-    sha256 = "04mrc8j0rr7iy1k6brfxnx26pmxm800gh4nqrxn6j2lz6vd5y9m5";
+    rev = "9bfc13d64b5acb92c6648c696a9d9260fcbecc65";
+    sha256 = "05ms34by5hxznnpvmvhgp6llvlkz0zw4sq6c4bgwr82lj140lscm";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ libX11 ];
 
-  # We need a README file, otherwise autoconf complains.
-  postUnpack = ''
-    mv $sourceRoot/README{.md,}
-  '';
-
   meta = with lib; {
     description = "Command-line program for getting and setting the contents of the X selection";
     homepage = http://www.kfish.org/software/xsel;
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 0598976ec98..fbba83d7a33 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 = "2019.01.30.1";
+  version = "2019.02.18";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0wamv1fs4w8jjx67p60rgrgdi6k04yy0h4p3cwscza5pzhpmvnlf";
+    sha256 = "1sr0f6ixpaqyp3cf29zswx84y3nfabwnk3sljcgvgnmjp73zzfv1";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/yubikey-manager-qt/default.nix b/pkgs/tools/misc/yubikey-manager-qt/default.nix
new file mode 100644
index 00000000000..c8521efb28d
--- /dev/null
+++ b/pkgs/tools/misc/yubikey-manager-qt/default.nix
@@ -0,0 +1,78 @@
+{ stdenv
+, fetchurl
+, makeWrapper
+, pcsclite
+, pyotherside
+, pythonPackages
+, python3
+, qmake
+, qtbase
+, qtgraphicaleffects
+, qtquickcontrols
+, qtquickcontrols2
+, qtdeclarative
+, qtsvg
+, yubikey-manager
+, yubikey-personalization
+}:
+
+let
+  qmlPath = qmlLib: "${qmlLib}/${qtbase.qtQmlPrefix}";
+
+  inherit (stdenv) lib;
+
+  qml2ImportPath = lib.concatMapStringsSep ":" qmlPath [
+    qtbase.bin qtdeclarative.bin pyotherside qtquickcontrols qtquickcontrols2.bin qtgraphicaleffects
+  ];
+
+in stdenv.mkDerivation rec {
+  pname = "yubikey-manager-qt";
+  version = "1.1.0";
+
+  src = fetchurl {
+    url = "https://developers.yubico.com/yubikey-manager-qt/Releases/${pname}-${version}.tar.gz";
+    sha256 = "8049a233a8cca07543d745a9f619c0fc3afb324f5d0030b93f037b34ac1c5e66";
+  };
+
+  nativeBuildInputs = [ makeWrapper python3.pkgs.wrapPython qmake ];
+
+  sourceRoot = ".";
+
+  postPatch = ''
+    substituteInPlace ykman-gui/deployment.pri --replace '/usr/bin' "$out/bin"
+  '';
+
+  buildInputs = [ pythonPackages.python qtbase qtgraphicaleffects qtquickcontrols qtquickcontrols2 pyotherside ];
+
+  enableParallelBuilding = true;
+
+  pythonPath = [ yubikey-manager ];
+
+  # Need LD_PRELOAD for libykpers as the Nix cpython disables ctypes.cdll.LoadLibrary
+  # support that the yubicommon library uses to load libykpers
+  postInstall = ''
+    buildPythonPath "$pythonPath"
+
+    wrapProgram $out/bin/ykman-gui \
+      --prefix PYTHONPATH : "$program_PYTHONPATH" \
+      --set QML2_IMPORT_PATH "${qml2ImportPath}" \
+      --set QT_QPA_PLATFORM_PLUGIN_PATH ${qtbase.bin}/lib/qt-*/plugins/platforms \
+      --prefix QT_PLUGIN_PATH : "${qtsvg.bin}/${qtbase.qtPluginPrefix}"
+
+      mkdir -p $out/share/applications
+      cp resources/ykman-gui.desktop $out/share/applications/ykman-gui.desktop
+      mkdir -p $out/share/ykman-gui/icons
+      cp resources/icons/*.{icns,ico,png,xpm} $out/share/ykman-gui/icons
+      substituteInPlace $out/share/applications/ykman-gui.desktop \
+        --replace 'Exec=ykman-gui' "Exec=$out/bin/ykman-gui" \
+  '';
+
+  meta = with lib; {
+    inherit version;
+    description = "Cross-platform application for configuring any YubiKey over all USB interfaces.";
+    homepage = https://developers.yubico.com/yubikey-manager-qt/;
+    license = licenses.bsd2;
+    maintainers = [ maintainers.cbley ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/http-prompt/default.nix b/pkgs/tools/networking/http-prompt/default.nix
index 69b23b3e3a4..78dc52905d8 100644
--- a/pkgs/tools/networking/http-prompt/default.nix
+++ b/pkgs/tools/networking/http-prompt/default.nix
@@ -29,7 +29,7 @@ pythonPackages.buildPythonApplication rec {
     description = "An interactive command-line HTTP client featuring autocomplete and syntax highlighting";
     homepage = https://github.com/eliangcs/http-prompt;
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ matthiasbeyer ];
     platforms = platforms.linux; # can only test on linux
   };
 }
diff --git a/pkgs/tools/networking/lftp/default.nix b/pkgs/tools/networking/lftp/default.nix
index bb627f49971..b4886f58cbb 100644
--- a/pkgs/tools/networking/lftp/default.nix
+++ b/pkgs/tools/networking/lftp/default.nix
@@ -21,10 +21,14 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-readline=${readline.dev}"
+    "--with-zlib=${zlib.dev}"
+    "--without-expat"
   ];
 
   installFlags = [ "PREFIX=$(out)" ];
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "A file transfer program supporting a number of network protocols";
     homepage = https://lftp.tech/;
diff --git a/pkgs/tools/networking/lldpd/default.nix b/pkgs/tools/networking/lldpd/default.nix
index 193f44a62e2..d4ded1142d8 100644
--- a/pkgs/tools/networking/lldpd/default.nix
+++ b/pkgs/tools/networking/lldpd/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, fetchurl, pkgconfig, removeReferencesTo
-, libevent, readline, net_snmp }:
+, libevent, readline, net_snmp, openssl
+}:
 
 stdenv.mkDerivation rec {
   name = "lldpd-${version}";
@@ -18,7 +19,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ pkgconfig removeReferencesTo ];
-  buildInputs = [ libevent readline net_snmp ];
+  buildInputs = [ libevent readline net_snmp openssl ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/tools/networking/netmask/default.nix b/pkgs/tools/networking/netmask/default.nix
index 52727163704..e9704c4babe 100644
--- a/pkgs/tools/networking/netmask/default.nix
+++ b/pkgs/tools/networking/netmask/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "netmask-${version}";
-  version = "2.4.3";
+  version = "2.4.4";
 
   src = fetchFromGitHub {
     owner = "tlby";
     repo = "netmask";
     rev = "v${version}";
-    sha256 = "1n6b9f60j7hfdbpbppgkhz3lr7pg963bxnfrq95i1d49xmx41f87";
+    sha256 = "1269bmdvl534wr0bamd7cqbnr76pnb14yn8ly4qsfg29kh7hrds6";
   };
 
   buildInputs = [ texinfo ];
diff --git a/pkgs/tools/networking/network-manager/applet.nix b/pkgs/tools/networking/network-manager/applet.nix
index 3c9a34d524a..81dc7558d79 100644
--- a/pkgs/tools/networking/network-manager/applet.nix
+++ b/pkgs/tools/networking/network-manager/applet.nix
@@ -6,13 +6,13 @@
 
 let
   pname = "network-manager-applet";
-  version = "1.8.18";
+  version = "1.8.20";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0y31g0lxr93370xi74hbpvcy9m81n5wdkdhq8xy2nqp0y4219p13";
+    sha256 = "1v1lvw9ak37gxha11rv49sai1vdyv128hdy0kliibiv6alavn385";
   };
 
   mesonFlags = [
diff --git a/pkgs/tools/networking/network-manager/openvpn/default.nix b/pkgs/tools/networking/network-manager/openvpn/default.nix
index 3fe4db87036..fa764788e2c 100644
--- a/pkgs/tools/networking/network-manager/openvpn/default.nix
+++ b/pkgs/tools/networking/network-manager/openvpn/default.nix
@@ -3,13 +3,13 @@
 
 let
   pname = "NetworkManager-openvpn";
-  version = "1.8.8";
+  version = "1.8.10";
 in stdenv.mkDerivation rec {
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "19qdl7x5x7f9mj8vm25mck6gg8ljbixi0dw2rqngwl2nzpcxwg52";
+    sha256 = "1vri49yff4lj13dnzkpq9nx3a4z1bmbrv807r151plj8m1mwhg5g";
   };
 
   patches = [
diff --git a/pkgs/tools/security/bitwarden-cli/default.nix b/pkgs/tools/security/bitwarden-cli/default.nix
new file mode 100644
index 00000000000..5c60eb9f4e2
--- /dev/null
+++ b/pkgs/tools/security/bitwarden-cli/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, pkgs }:
+
+let
+  # node-packages*.nix generated via:
+  #
+  # % node2nix --input node-packages.json \
+  #            --output node-packages-generated.nix \
+  #            --composition node-packages.nix \
+  #            --node-env ./../../../development/node-packages/node-env.nix
+  #
+  nodePackages = import ./node-packages.nix {
+    inherit pkgs;
+    inherit (stdenv.hostPlatform) system;
+  };
+in pkgs.lib.overrideDerivation nodePackages."@bitwarden/cli" (drv: {
+  # This defaults to "node-_at_bitwarden_slash_cli-1.7.0"
+  name = "bitwarden-cli-${drv.version}";
+})
diff --git a/pkgs/tools/security/bitwarden-cli/node-packages-generated.nix b/pkgs/tools/security/bitwarden-cli/node-packages-generated.nix
new file mode 100644
index 00000000000..f709bd3d122
--- /dev/null
+++ b/pkgs/tools/security/bitwarden-cli/node-packages-generated.nix
@@ -0,0 +1,549 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "ansi-escapes-3.1.0" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz";
+        sha512 = "UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==";
+      };
+    };
+    "ansi-regex-3.0.0" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
+        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+      };
+    };
+    "ansi-styles-3.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    };
+    "big-integer-1.6.36" = {
+      name = "big-integer";
+      packageName = "big-integer";
+      version = "1.6.36";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.36.tgz";
+        sha512 = "t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==";
+      };
+    };
+    "chalk-2.4.1" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz";
+        sha512 = "ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==";
+      };
+    };
+    "chardet-0.7.0" = {
+      name = "chardet";
+      packageName = "chardet";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz";
+        sha512 = "mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==";
+      };
+    };
+    "cli-cursor-2.1.0" = {
+      name = "cli-cursor";
+      packageName = "cli-cursor";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz";
+        sha1 = "b35dac376479facc3e94747d41d0d0f5238ffcb5";
+      };
+    };
+    "cli-width-2.2.0" = {
+      name = "cli-width";
+      packageName = "cli-width";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz";
+        sha1 = "ff19ede8a9a5e579324147b0c11f0fbcbabed639";
+      };
+    };
+    "color-convert-1.9.3" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
+      };
+    };
+    "color-name-1.1.3" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+      };
+    };
+    "combined-stream-1.0.6" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
+        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
+      };
+    };
+    "commander-2.18.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.18.0.tgz";
+        sha512 = "6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ==";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    };
+    "escape-string-regexp-1.0.5" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    };
+    "external-editor-3.0.3" = {
+      name = "external-editor";
+      packageName = "external-editor";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz";
+        sha512 = "bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==";
+      };
+    };
+    "figures-2.0.0" = {
+      name = "figures";
+      packageName = "figures";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz";
+        sha1 = "3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962";
+      };
+    };
+    "form-data-2.3.2" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
+        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+      };
+    };
+    "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==";
+      };
+    };
+    "has-flag-3.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+      };
+    };
+    "iconv-lite-0.4.24" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
+      };
+    };
+    "inquirer-6.2.0" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz";
+        sha512 = "QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==";
+      };
+    };
+    "is-fullwidth-code-point-2.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    };
+    "is-promise-2.1.0" = {
+      name = "is-promise";
+      packageName = "is-promise";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz";
+        sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa";
+      };
+    };
+    "lodash-4.17.11" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "4.17.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz";
+        sha512 = "cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==";
+      };
+    };
+    "lowdb-1.0.0" = {
+      name = "lowdb";
+      packageName = "lowdb";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lowdb/-/lowdb-1.0.0.tgz";
+        sha512 = "2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==";
+      };
+    };
+    "lunr-2.3.3" = {
+      name = "lunr";
+      packageName = "lunr";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lunr/-/lunr-2.3.3.tgz";
+        sha512 = "rlAEsgU9Bnavca2w1WJ6+6cdeHMXNyadcersyk3ZpuhgWb5HBNj8l4WwJz9PjksAhYDlpQffCVXPctOn+wCIVA==";
+      };
+    };
+    "mime-db-1.37.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.37.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz";
+        sha512 = "R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==";
+      };
+    };
+    "mime-types-2.1.21" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz";
+        sha512 = "3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==";
+      };
+    };
+    "mimic-fn-1.2.0" = {
+      name = "mimic-fn";
+      packageName = "mimic-fn";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz";
+        sha512 = "jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==";
+      };
+    };
+    "mute-stream-0.0.7" = {
+      name = "mute-stream";
+      packageName = "mute-stream";
+      version = "0.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz";
+        sha1 = "3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab";
+      };
+    };
+    "node-fetch-2.2.0" = {
+      name = "node-fetch";
+      packageName = "node-fetch";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.2.0.tgz";
+        sha512 = "OayFWziIxiHY8bCUyLX6sTpDH8Jsbp4FfYd1j1f7vZyfgkcOnAyM4oQR16f8a0s7Gl/viMGRey8eScYk4V4EZA==";
+      };
+    };
+    "node-forge-0.7.6" = {
+      name = "node-forge";
+      packageName = "node-forge";
+      version = "0.7.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz";
+        sha512 = "sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==";
+      };
+    };
+    "onetime-2.0.1" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz";
+        sha1 = "067428230fd67443b2794b22bba528b6867962d4";
+      };
+    };
+    "os-tmpdir-1.0.2" = {
+      name = "os-tmpdir";
+      packageName = "os-tmpdir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    };
+    "papaparse-4.6.0" = {
+      name = "papaparse";
+      packageName = "papaparse";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/papaparse/-/papaparse-4.6.0.tgz";
+        sha512 = "ylm8pmgyz9rkS3Ng/ru5tHUF3JxWwKYP0aZZWZ8eCGdSxoqgYiDUXLNQei73mUJOjHw8QNu5ZNCsLoDpkMA6sg==";
+      };
+    };
+    "pify-3.0.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz";
+        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
+      };
+    };
+    "punycode-1.4.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    };
+    "restore-cursor-2.0.0" = {
+      name = "restore-cursor";
+      packageName = "restore-cursor";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz";
+        sha1 = "9f7ee287f82fd326d4fd162923d62129eee0dfaf";
+      };
+    };
+    "run-async-2.3.0" = {
+      name = "run-async";
+      packageName = "run-async";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz";
+        sha1 = "0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0";
+      };
+    };
+    "rxjs-6.3.3" = {
+      name = "rxjs";
+      packageName = "rxjs";
+      version = "6.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz";
+        sha512 = "JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "signal-exit-3.0.2" = {
+      name = "signal-exit";
+      packageName = "signal-exit";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz";
+        sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
+      };
+    };
+    "steno-0.4.4" = {
+      name = "steno";
+      packageName = "steno";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/steno/-/steno-0.4.4.tgz";
+        sha1 = "071105bdfc286e6615c0403c27e9d7b5dcb855cb";
+      };
+    };
+    "string-width-2.1.1" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
+        sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
+      };
+    };
+    "strip-ansi-4.0.0" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
+        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+      };
+    };
+    "supports-color-5.5.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
+      };
+    };
+    "through-2.3.8" = {
+      name = "through";
+      packageName = "through";
+      version = "2.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through/-/through-2.3.8.tgz";
+        sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+      };
+    };
+    "tldjs-2.3.1" = {
+      name = "tldjs";
+      packageName = "tldjs";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tldjs/-/tldjs-2.3.1.tgz";
+        sha512 = "W/YVH/QczLUxVjnQhFC61Iq232NWu3TqDdO0S/MtXVz4xybejBov4ud+CIwN9aYqjOecEqIy0PscGkwpG9ZyTw==";
+      };
+    };
+    "tmp-0.0.33" = {
+      name = "tmp";
+      packageName = "tmp";
+      version = "0.0.33";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz";
+        sha512 = "jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==";
+      };
+    };
+    "tslib-1.9.3" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "1.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz";
+        sha512 = "4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==";
+      };
+    };
+    "zxcvbn-4.4.2" = {
+      name = "zxcvbn";
+      packageName = "zxcvbn";
+      version = "4.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/zxcvbn/-/zxcvbn-4.4.2.tgz";
+        sha1 = "28ec17cf09743edcab056ddd8b1b06262cc73c30";
+      };
+    };
+  };
+in
+{
+  "@bitwarden/cli" = nodeEnv.buildNodePackage {
+    name = "_at_bitwarden_slash_cli";
+    packageName = "@bitwarden/cli";
+    version = "1.7.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.7.0.tgz";
+      sha512 = "rynqUqyfC33dMQ21OlrOu4MQVEvtjyHw1kmu85+l0j9f2CQWEffeqVwoHF5GTtQOXev4PMyqRfSSYI6dRsseag==";
+    };
+    dependencies = [
+      sources."ansi-escapes-3.1.0"
+      sources."ansi-regex-3.0.0"
+      sources."ansi-styles-3.2.1"
+      sources."asynckit-0.4.0"
+      sources."big-integer-1.6.36"
+      sources."chalk-2.4.1"
+      sources."chardet-0.7.0"
+      sources."cli-cursor-2.1.0"
+      sources."cli-width-2.2.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."combined-stream-1.0.6"
+      sources."commander-2.18.0"
+      sources."delayed-stream-1.0.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."external-editor-3.0.3"
+      sources."figures-2.0.0"
+      sources."form-data-2.3.2"
+      sources."graceful-fs-4.1.15"
+      sources."has-flag-3.0.0"
+      sources."iconv-lite-0.4.24"
+      sources."inquirer-6.2.0"
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-promise-2.1.0"
+      sources."lodash-4.17.11"
+      sources."lowdb-1.0.0"
+      sources."lunr-2.3.3"
+      sources."mime-db-1.37.0"
+      sources."mime-types-2.1.21"
+      sources."mimic-fn-1.2.0"
+      sources."mute-stream-0.0.7"
+      sources."node-fetch-2.2.0"
+      sources."node-forge-0.7.6"
+      sources."onetime-2.0.1"
+      sources."os-tmpdir-1.0.2"
+      sources."papaparse-4.6.0"
+      sources."pify-3.0.0"
+      sources."punycode-1.4.1"
+      sources."restore-cursor-2.0.0"
+      sources."run-async-2.3.0"
+      sources."rxjs-6.3.3"
+      sources."safer-buffer-2.1.2"
+      sources."signal-exit-3.0.2"
+      sources."steno-0.4.4"
+      sources."string-width-2.1.1"
+      sources."strip-ansi-4.0.0"
+      sources."supports-color-5.5.0"
+      sources."through-2.3.8"
+      sources."tldjs-2.3.1"
+      sources."tmp-0.0.33"
+      sources."tslib-1.9.3"
+      sources."zxcvbn-4.4.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A secure and free password manager for all of your devices.";
+      homepage = https://bitwarden.com/;
+      license = "GPL-3.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/security/bitwarden-cli/node-packages.json b/pkgs/tools/security/bitwarden-cli/node-packages.json
new file mode 100644
index 00000000000..624aa87bcbe
--- /dev/null
+++ b/pkgs/tools/security/bitwarden-cli/node-packages.json
@@ -0,0 +1,3 @@
+[
+  "@bitwarden/cli"
+]
diff --git a/pkgs/tools/security/bitwarden-cli/node-packages.nix b/pkgs/tools/security/bitwarden-cli/node-packages.nix
new file mode 100644
index 00000000000..0b559600b1b
--- /dev/null
+++ b/pkgs/tools/security/bitwarden-cli/node-packages.nix
@@ -0,0 +1,17 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-6_x"}:
+
+let
+  nodeEnv = import ../../../development/node-packages/node-env.nix {
+    inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+    inherit nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+in
+import ./node-packages-generated.nix {
+  inherit (pkgs) fetchurl fetchgit;
+  inherit nodeEnv;
+}
\ No newline at end of file
diff --git a/pkgs/tools/security/ibm-sw-tpm2/default.nix b/pkgs/tools/security/ibm-sw-tpm2/default.nix
new file mode 100644
index 00000000000..cec31cec377
--- /dev/null
+++ b/pkgs/tools/security/ibm-sw-tpm2/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, lib, openssl }:
+
+stdenv.mkDerivation rec {
+  pname = "ibm-sw-tpm2";
+  version = "1332";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/ibmswtpm2/ibmtpm${version}.tar.gz";
+    sha256 = "1zdhi8acd4jfp1v7ibd86hcv0g39yk8qrnhxjmmgzn8i7npr70cf";
+  };
+
+  buildInputs = [ openssl ];
+
+  sourceRoot = "src";
+
+  prePatch = ''
+    # Fix hardcoded path to GCC.
+    substituteInPlace makefile --replace /usr/bin/gcc "${stdenv.cc}/bin/cc"
+
+    # Remove problematic default CFLAGS.
+    substituteInPlace makefile \
+      --replace -Werror "" \
+      --replace -O0 "" \
+      --replace -ggdb ""
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp tpm_server $out/bin
+  '';
+
+  meta = with lib; {
+    description = "IBM's Software TPM 2.0, an implementation of the TCG TPM 2.0 specification";
+    homepage = https://sourceforge.net/projects/ibmswtpm2/;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ delroth ];
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/tools/security/lynis/default.nix b/pkgs/tools/security/lynis/default.nix
index 46c2e6f03b0..c72f75e24e2 100644
--- a/pkgs/tools/security/lynis/default.nix
+++ b/pkgs/tools/security/lynis/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "lynis";
-  version = "2.7.0";
+  version = "2.7.1";
   name = "${pname}-${version}";
 
   src = fetchFromGitHub {
     owner = "CISOfy";
     repo = "${pname}";
     rev = "${version}";
-    sha256 = "0rzc0y8lk22bymf56249jzmllki2lh0rz5in4lkrc5fkmp29c2wv";
+    sha256 = "1nv2dqd2k2n8mcdr6xl5g713xxkgvja6487by1wn4k0b416jij9i";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/mkp224o/default.nix b/pkgs/tools/security/mkp224o/default.nix
new file mode 100644
index 00000000000..b649c57b346
--- /dev/null
+++ b/pkgs/tools/security/mkp224o/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, libsodium }:
+
+stdenv.mkDerivation rec {
+  name = "mkp224o-${version}";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "cathugger";
+    repo = "mkp224o";
+    rev = "v${version}";
+    sha256 = "1m7r0jfm6na6rk75v1kals3bx2cs6jsfxdgpxdljn39j3qr4mxvd";
+  };
+
+  buildCommand =
+    let
+      # compile few variants with different implementation of crypto
+      # the fastest depends on a particular cpu
+      variants = [
+        { suffix = "ref10";         configureFlags = ["--enable-ref10"]; }
+        { suffix = "donna";         configureFlags = ["--enable-donna"]; }
+      ] ++ lib.optionals (stdenv.isi686 || stdenv.isx86_64) [
+        { suffix = "donna-sse2";    configureFlags = ["--enable-donna-sse2"]; }
+      ] ++ lib.optionals stdenv.isx86_64 [
+        { suffix = "amd64-51-30k";  configureFlags = ["--enable-amd64-51-30k"]; }
+        { suffix = "amd64-64-20k";  configureFlags = ["--enable-amd64-64-24k"]; }
+      ];
+    in
+      lib.concatMapStrings ({suffix, configureFlags}: ''
+        install -D ${
+          stdenv.mkDerivation {
+            name = "mkp224o-${suffix}-${version}";
+            inherit version src configureFlags;
+            nativeBuildInputs = [ autoreconfHook ];
+            buildInputs = [ libsodium ];
+            installPhase = "install -D mkp224o $out";
+          }
+        } $out/bin/mkp224o-${suffix}
+      '') variants;
+
+  meta = with lib; {
+    description = "Vanity address generator for tor onion v3 (ed25519) hidden services";
+    homepage = http://cathug2kyi4ilneggumrenayhuhsvrgn6qv2y47bgeet42iivkpynqad.onion/;
+    license = licenses.cc0;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ volth ];
+  };
+}
diff --git a/pkgs/tools/security/pass/rofi-pass.nix b/pkgs/tools/security/pass/rofi-pass.nix
index 3928f61fa96..5a432a8890e 100644
--- a/pkgs/tools/security/pass/rofi-pass.nix
+++ b/pkgs/tools/security/pass/rofi-pass.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "rofi-pass-${version}";
-  version = "2.0.1";
+  version = "2.0.2";
 
   src = fetchFromGitHub {
     owner = "carnager";
     repo = "rofi-pass";
     rev = version;
-    sha256 = "1r5z9g2kc6qf9r2d7vanzdc594apf8fgyn1rh30fvxygl2976yrw";
+    sha256 = "131jpcwyyzgzjn9lx4k1zn95pd68pjw4i41jfzcp9z9fnazyln5n";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/tpm2-tools/default.nix b/pkgs/tools/security/tpm2-tools/default.nix
new file mode 100644
index 00000000000..84369e6ea54
--- /dev/null
+++ b/pkgs/tools/security/tpm2-tools/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, fetchpatch, lib
+, cmocka, curl, pandoc, pkgconfig, openssl, tpm2-tss }:
+
+stdenv.mkDerivation rec {
+  pname = "tpm2-tools";
+  version = "3.1.3";
+
+  src = fetchurl {
+    url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
+    sha256 = "05is1adwcg7y2p121yldd8m1gigdnzf9izbjazvsr6yg95pmg5fc";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "tests-tss-2.2.0-compat.patch";
+      url = "https://patch-diff.githubusercontent.com/raw/tpm2-software/tpm2-tools/pull/1322.patch";
+      sha256 = "0yy5qbgbd13d7cl8pzsji95a6qnwiik5s2cyqj35jd8blymikqxh";
+    })
+  ];
+
+  nativeBuildInputs = [ pandoc pkgconfig ];
+  buildInputs = [
+    curl openssl tpm2-tss
+    # For unit tests.
+    cmocka
+  ];
+
+  configureFlags = [ "--enable-unit" ];
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Command line tools that provide access to a TPM 2.0 compatible device";
+    homepage = https://github.com/tpm2-software/tpm2-tools;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ delroth ];
+  };
+}
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index c21064c708d..35b39196b33 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "vault-${version}";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "1nrqwgxfs6n2bjhjndqvwzn9c62pb5ky9biyh47i0wvbxhdh0hfj";
+    sha256 = "1c5v1m8b6nm28mjwpsgc73n8q475pkzpdvyx46rf3xyrh01rfrnz";
   };
 
   nativeBuildInputs = [ go gox removeReferencesTo ];
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix
index 2b918d15581..745139f9e50 100644
--- a/pkgs/tools/system/gotop/default.nix
+++ b/pkgs/tools/system/gotop/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "gotop-${version}";
-  version = "1.7.1";
+  version = "2.0.1";
 
   goPackagePath = "github.com/cjbassi/gotop";
 
@@ -10,11 +10,9 @@ buildGoPackage rec {
     repo = "gotop";
     owner = "cjbassi";
     rev = version;
-    sha256 = "0dxnhal10kv6ypsg6mildzpz6vi1iw996q47f4rv8hvfyrffhzc9";
+    sha256 = "0xpm8nrn53kz65f93czflgdgr2a33qfi1w0gsgngrmaliq1vlpji";
   };
 
-  goDeps = ./deps.nix;
-
   meta = with stdenv.lib; {
     description = "A terminal based graphical activity monitor inspired by gtop and vtop";
     homepage = https://github.com/cjbassi/gotop;
diff --git a/pkgs/tools/system/gotop/deps.nix b/pkgs/tools/system/gotop/deps.nix
deleted file mode 100644
index ceae7857551..00000000000
--- a/pkgs/tools/system/gotop/deps.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
-[
-  {
-    goPackagePath = "github.com/cjbassi/termui";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cjbassi/termui";
-      rev = "e8dd23f6146c0e0d80f1be0163b8069abfbb921b";
-      sha256 = "0jds2mpa7whrwaznlkcn2y92q41zbf2rjj5267kl8zqllbia8cbx";
-    };
-  }
-  {
-    goPackagePath = "github.com/docopt/docopt-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docopt/docopt-go";
-      rev = "ee0de3bc6815ee19d4a46c7eb90f829db0e014b1";
-      sha256 = "0hlra7rmi5pmd7d93rv56ahiy4qkgmq8a6mz0jpadvbi5qh8lq6j";
-    };
-  }
-  {
-    goPackagePath = "github.com/shirou/gopsutil";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shirou/gopsutil";
-      rev = "51e6519305e4871657c291a6281fcddc6364bbef";
-      sha256 = "1pvvaj51m0w2v6bp5hhhzfy27hbicf4ga7r9m073vqcwjnfyz431";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "9b800f95dbbc54abff0acf7ee32d88ba4e328c89";
-      sha256 = "07v3l7q7y59cwvw0mc85i39v7qjcc1jh4svwi789rmrqqm5nq7q6";
-    };
-  }
-]
diff --git a/pkgs/tools/system/osquery/default.nix b/pkgs/tools/system/osquery/default.nix
index 32c085e2ec5..1e2882e1f1f 100644
--- a/pkgs/tools/system/osquery/default.nix
+++ b/pkgs/tools/system/osquery/default.nix
@@ -4,7 +4,7 @@
 , beecrypt, augeas, libxml2, sleuthkit, yara, lldpd, google-gflags
 , thrift, boost, rocksdb_lite, glog, gbenchmark, snappy
 , openssl, file, doxygen
-, gtest, sqlite, fpm, zstd, rdkafka, rapidjson, fetchgit
+, gtest, sqlite, fpm, zstd, rdkafka, rapidjson, fetchgit, fetchurl
 }:
 
 let
@@ -61,6 +61,16 @@ stdenv.mkDerivation rec {
         sha256 = "1ny3srcsxd6kj59zq1cman5myj8kzw010wbyc6mrpk4kp823r5nx";
       };
     });
+
+    # dpkg 1.19.2 dropped api in `<dpkg/dpkg-db.h>` which breaks compilation.
+    dpkg' = dpkg.overrideAttrs (old: rec {
+      name = "dpkg-${version}";
+      version = "1.19.0.5";
+      src = fetchurl {
+        url = "mirror://debian/pool/main/d/dpkg/dpkg_${version}.tar.xz";
+        sha256 = "1dc5kp3fqy1k66fly6jfxkkg7w6d0jy8szddpfyc2xvzga94d041";
+      };
+    });
   in [
     udev audit
 
@@ -69,7 +79,7 @@ stdenv.mkDerivation rec {
       customMemoryManagement = false;
     })
 
-    lvm2' libgcrypt libarchive libgpgerror libuuid iptables dpkg
+    lvm2' libgcrypt libarchive libgpgerror libuuid iptables dpkg'
     lzma bzip2 rpm beecrypt augeas libxml2 sleuthkit
     yara lldpd gflags' thrift boost
     glog gbenchmark snappy openssl
diff --git a/pkgs/tools/text/groff/default.nix b/pkgs/tools/text/groff/default.nix
index 88d487da9b9..082c61635ba 100644
--- a/pkgs/tools/text/groff/default.nix
+++ b/pkgs/tools/text/groff/default.nix
@@ -18,7 +18,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = false;
 
-  patches = [ ./look-for-ar.patch ];
+  patches = [
+    ./look-for-ar.patch
+    ./mdate-determinism.patch
+  ];
 
   postPatch = stdenv.lib.optionalString (psutils != null) ''
     substituteInPlace src/preproc/html/pre-html.cpp \
diff --git a/pkgs/tools/text/groff/mdate-determinism.patch b/pkgs/tools/text/groff/mdate-determinism.patch
new file mode 100644
index 00000000000..1253d113394
--- /dev/null
+++ b/pkgs/tools/text/groff/mdate-determinism.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.comm b/Makefile.comm
+index 75efc22..b757000 100644
+--- a/Makefile.comm
++++ b/Makefile.comm
+@@ -155,7 +155,7 @@ extraclean: distclean
+ 	     -e "s|@MAN1EXT@|$(man1ext)|g" \
+ 	     -e "s|@MAN5EXT@|$(man5ext)|g" \
+ 	     -e "s|@MAN7EXT@|$(man7ext)|g" \
+-	     -e "s|@MDATE@|`$(SHELL) $(top_srcdir)/mdate.sh $<`|g" \
++	     -e "s|@MDATE@|`date +'%-d %B %Y' -r $(top_srcdir)/ChangeLog`|g" \
+ 	     -e "s|@OLDFONTDIR@|$(oldfontdir)|g" \
+ 	     -e "s|@PDFDOCDIR@|$(pdfdocdir)|g" \
+ 	     -e "s|@SYSTEMMACRODIR@|$(systemtmacdir)|g" \
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 43103586b1c..7634a678e74 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -209,6 +209,7 @@ mapAliases ({
   nilfs_utils = nilfs-utils; # added 2018-04-25
   nmap_graphical = nmap-graphical;  # added 2017-01-19
   nologin = shadow; # added 2018-04-25
+  nxproxy = nx-libs; # added 2019-02-15
   opencascade_oce = opencascade; # added 2018-04-25
   opencl-icd = ocl-icd; # added 2017-01-20
   openexr_ctl = ctl; # added 2018-04-25
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2485bc9f265..3c84a291216 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -159,6 +159,8 @@ in
 
   docker-ls = callPackage ../tools/misc/docker-ls { };
 
+  docker-sync = callPackage ../tools/misc/docker-sync { };
+
   dotfiles = callPackage ../applications/misc/dotfiles { };
 
   dotnetenv = callPackage ../build-support/dotnetenv {
@@ -171,7 +173,7 @@ in
 
   dispad = callPackage ../tools/X11/dispad { };
 
-  dump1090 = callPackage ../applications/misc/dump1090 { };
+  dump1090 = callPackage ../applications/radio/dump1090 { };
 
   ebook2cw = callPackage ../applications/radio/ebook2cw { };
 
@@ -224,9 +226,7 @@ in
 
   fetchs3 = callPackage ../build-support/fetchs3 { };
 
-  fetchsvn = callPackage ../build-support/fetchsvn {
-    sshSupport = true;
-  };
+  fetchsvn = callPackage ../build-support/fetchsvn { };
 
   fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion;
 
@@ -307,6 +307,8 @@ in
 
   nixBufferBuilders = import ../build-support/emacs/buffer.nix { inherit (pkgs) lib writeText; inherit (emacsPackagesNg) inherit-local; };
 
+  nix-gitignore = callPackage ../build-support/nix-gitignore { };
+
   pathsFromGraph = ../build-support/kernel/paths-from-graph.pl;
 
   pruneLibtoolFiles = makeSetupHook { name = "prune-libtool-files"; }
@@ -413,15 +415,9 @@ in
 
   aefs = callPackage ../tools/filesystems/aefs { };
 
-  aegisub = callPackage ../applications/video/aegisub {
+  aegisub = callPackage ../applications/video/aegisub ({
     wxGTK = wxGTK30;
-    spellcheckSupport = config.aegisub.spellcheckSupport or true;
-    automationSupport = config.aegisub.automationSupport or true;
-    openalSupport     = config.aegisub.openalSupport or false;
-    alsaSupport       = config.aegisub.alsaSupport or true;
-    pulseaudioSupport = config.aegisub.pulseaudioSupport or true;
-    portaudioSupport  = config.aegisub.portaudioSupport or false;
-  };
+  } // (config.aegisub or {}));
 
   aerospike = callPackage ../servers/nosql/aerospike { };
 
@@ -625,6 +621,8 @@ in
 
   bcachefs-tools = callPackage ../tools/filesystems/bcachefs-tools { };
 
+  bitwarden-cli = callPackage ../tools/security/bitwarden-cli { };
+
   bmap-tools = callPackage ../tools/misc/bmap-tools { };
 
   bonnie = callPackage ../tools/filesystems/bonnie { };
@@ -785,7 +783,6 @@ in
 
   androidenv = callPackage ../development/mobile/androidenv {
     pkgs_i686 = pkgsi686Linux;
-    licenseAccepted = config.android_sdk.accept_license or false;
   };
 
   androidndkPkgs = androidndkPkgs_18b;
@@ -936,7 +933,6 @@ in
   tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
 
   libtensorflow = callPackage ../development/libraries/libtensorflow {
-    cudaSupport = config.cudaSupport or false;
     inherit (linuxPackages) nvidia_x11;
     cudatoolkit = cudatoolkit_9_0;
     cudnn = cudnn_cudatoolkit_9_0;
@@ -988,12 +984,12 @@ in
 
   brigand = callPackage ../development/libraries/brigand { };
 
-  brltty = callPackage ../tools/misc/brltty {
-    alsaSupport = (!stdenv.isDarwin);
-    systemdSupport = stdenv.isLinux;
-  };
+  brltty = callPackage ../tools/misc/brltty { };
+
   bro = callPackage ../applications/networking/ids/bro { };
 
+  broot = callPackage ../tools/misc/broot { };
+
   bruteforce-luks = callPackage ../tools/security/bruteforce-luks { };
 
   breakpointHook = assert stdenv.isLinux;
@@ -1361,7 +1357,9 @@ in
 
   fdroidserver = python3Packages.callPackage ../development/tools/fdroidserver { };
 
-  filebench = callPackage ../tools/misc/filebench { };
+  filebench = callPackage ../tools/misc/filebench {
+    bison = bison2;
+  };
 
   fileshelter = callPackage ../servers/web-apps/fileshelter { };
 
@@ -1451,6 +1449,8 @@ in
 
   grobi = callPackage ../tools/X11/grobi { };
 
+  gscan2pdf = callPackage ../applications/graphics/gscan2pdf { };
+
   gti = callPackage ../tools/misc/gti { };
 
   hdate = callPackage ../applications/misc/hdate { };
@@ -1487,6 +1487,8 @@ in
 
   languagetool = callPackage ../tools/text/languagetool {  };
 
+  lepton = callPackage ../tools/graphics/lepton { };
+
   lief = callPackage ../development/libraries/lief {};
 
   libndtypes = callPackage ../development/libraries/libndtypes { };
@@ -1556,6 +1558,8 @@ in
 
   nwipe = callPackage ../tools/security/nwipe { };
 
+  nx-libs = callPackage ../tools/X11/nx-libs { };
+
   nyx = callPackage ../tools/networking/nyx { };
 
   onboard = callPackage ../applications/misc/onboard { };
@@ -1584,6 +1588,8 @@ in
 
   pyCA = python3Packages.callPackage ../applications/video/pyca {};
 
+  pyznap = python3Packages.callPackage ../tools/backup/pyznap {};
+
   scour = with python3Packages; toPythonApplication scour;
 
   s2png = callPackage ../tools/graphics/s2png { };
@@ -1724,6 +1730,8 @@ in
 
   bats = callPackage ../development/interpreters/bats { };
 
+  bbe = callPackage ../tools/misc/bbe { };
+
   bdsync = callPackage ../tools/backup/bdsync { };
 
   beanstalkd = callPackage ../servers/beanstalkd { };
@@ -1755,9 +1763,7 @@ in
     inherit (python27Packages) pillow;
   };
 
-  blueman = callPackage ../tools/bluetooth/blueman {
-    withPulseAudio = config.pulseaudio or true;
-  };
+  blueman = callPackage ../tools/bluetooth/blueman { };
 
   bmrsa = callPackage ../tools/security/bmrsa/11.nix { };
 
@@ -2584,7 +2590,9 @@ in
 
   fcitx-configtool = callPackage ../tools/inputmethods/fcitx/fcitx-configtool.nix { };
 
-  fcppt = callPackage ../development/libraries/fcppt { };
+  fcppt = callPackage ../development/libraries/fcppt {
+    stdenv = gcc8Stdenv;
+  };
 
   fcrackzip = callPackage ../tools/security/fcrackzip { };
 
@@ -3351,6 +3359,8 @@ in
 
   iannix = libsForQt5.callPackage ../applications/audio/iannix { };
 
+  ibm-sw-tpm2 = callPackage ../tools/security/ibm-sw-tpm2 { };
+
   ibniz = callPackage ../tools/graphics/ibniz { };
 
   icecast = callPackage ../servers/icecast { };
@@ -3658,6 +3668,8 @@ in
 
   kytea = callPackage ../tools/text/kytea { };
 
+  k6 = callPackage ../development/tools/k6 { };
+
   ldc = callPackage ../development/compilers/ldc { };
 
   lbreakout2 = callPackage ../games/lbreakout2 { };
@@ -3735,6 +3747,8 @@ in
 
   mautrix-telegram = callPackage ../servers/mautrix-telegram { };
 
+  mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp { };
+
   mdbook = callPackage ../tools/text/mdbook {
     inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
@@ -4024,9 +4038,7 @@ in
   ltris = callPackage ../games/ltris { };
 
   lxc = callPackage ../os-specific/linux/lxc { };
-  lxcfs = callPackage ../os-specific/linux/lxcfs {
-    enableDebugBuild = config.lxcfs.enableDebugBuild or false;
-  };
+  lxcfs = callPackage ../os-specific/linux/lxcfs { };
   lxd = callPackage ../tools/admin/lxd { };
 
   lzfse = callPackage ../tools/compression/lzfse { };
@@ -4100,6 +4112,8 @@ in
 
   mbuffer = callPackage ../tools/misc/mbuffer { };
 
+  mdsh = callPackage ../development/tools/documentation/mdsh { };
+
   mecab =
     let
       mecab-nodic = callPackage ../tools/text/mecab/nodic.nix { };
@@ -4205,6 +4219,8 @@ in
 
   mkcue = callPackage ../tools/cd-dvd/mkcue { };
 
+  mkp224o = callPackage ../tools/security/mkp224o { };
+
   mkpasswd = hiPrio (callPackage ../tools/security/mkpasswd { });
 
   mkrand = callPackage ../tools/security/mkrand { };
@@ -4499,8 +4515,6 @@ in
 
   nylon = callPackage ../tools/networking/nylon { };
 
-  nxproxy = callPackage ../tools/admin/nxproxy { };
-
   nzbget = callPackage ../tools/networking/nzbget { };
 
   oathToolkit = callPackage ../tools/security/oath-toolkit { inherit (gnome2) gtkdoc;  };
@@ -4861,7 +4875,7 @@ in
 
   playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { };
 
-  plex = callPackage ../servers/plex { enablePlexPass = config.plex.enablePlexPass or false; };
+  plex = callPackage ../servers/plex { };
 
   plexpy = callPackage ../servers/plexpy { python = python2; };
 
@@ -5804,6 +5818,8 @@ in
 
   tpm-luks = callPackage ../tools/security/tpm-luks { };
 
+  tpm2-tools = callPackage ../tools/security/tpm2-tools { };
+
   trezord = callPackage ../servers/trezord { };
 
   tthsum = callPackage ../applications/misc/tthsum { };
@@ -6552,11 +6568,9 @@ in
     then callPackage adoptopenjdk-bin-11-packages-linux.jdk-openj9 {}
     else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-openj9 {};
 
-  # openj9 jre builds for mac are currently missing (upstream)
-  #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-jre-openj9-bin-11 = callPackage adoptopenjdk-bin-11-packages-linux.jre-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;
@@ -6614,6 +6628,11 @@ in
     name = "clang-wrapper-with-reexport-hack";
     bintools = darwin.binutils.override {
       useMacosReexportHack = true;
+      bintools = darwin.binutils.bintools.override {
+        cctools = darwin.cctools.override {
+          enableDumpNormalizedLibArgs = true;
+        };
+      };
     };
   };
 
@@ -6937,9 +6956,7 @@ in
     inherit (gnome2) libart_lgpl;
   });
 
-  gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk {
-    emacsSupport = config.emacsSupport or false;
-  };
+  gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk { };
 
   gccgo = gccgo6;
   gccgo6 = wrapCC (gcc6.cc.override {
@@ -7005,7 +7022,7 @@ in
 
   stack = haskell.lib.justStaticExecutables haskellPackages.stack;
   hlint = haskell.lib.justStaticExecutables haskellPackages.hlint;
-  stylish-cabal = haskell.lib.justStaticExecutables haskell.packages.ghc844.stylish-cabal;
+  stylish-cabal = haskell.lib.justStaticExecutables haskellPackages.stylish-cabal;
 
   all-cabal-hashes = callPackage ../data/misc/hackage { };
 
@@ -7180,14 +7197,12 @@ in
     (if pluginSupport then appendToName "with-plugin" else x: x)
       (callPackage ../development/compilers/oraclejdk/jdk8cpu-linux.nix {
         inherit installjdk pluginSupport;
-        licenseAccepted = config.oraclejdk.accept_license or false;
       });
 
   oraclejdk8psu_distro = installjdk: pluginSupport:
     (if pluginSupport then appendToName "with-plugin" else x: x)
       (callPackage ../development/compilers/oraclejdk/jdk8psu-linux.nix {
         inherit installjdk pluginSupport;
-        licenseAccepted = config.oraclejdk.accept_license or false;
       });
 
   javacard-devkit = pkgsi686Linux.callPackage ../development/compilers/javacard-devkit { };
@@ -7540,6 +7555,8 @@ in
 
   metaBuildEnv = callPackage ../development/compilers/meta-environment/meta-build-env { };
 
+  svd2rust = callPackage ../development/tools/rust/svd2rust { };
+
   swift = callPackage ../development/compilers/swift { };
 
   swiProlog = callPackage ../development/compilers/swi-prolog { };
@@ -7789,12 +7806,14 @@ in
   luaPackages = lua52Packages;
 
   # override instead ?
-  luajit_2_0 = callPackage ../development/interpreters/luajit/2.0.nix {
+  luajit_2_0 = import ../development/interpreters/luajit/2.0.nix {
     self = luajit_2_0;
+    inherit (super) callPackage lib;
   };
 
-  luajit_2_1 = callPackage ../development/interpreters/luajit/2.1.nix {
+  luajit_2_1 = import ../development/interpreters/luajit/2.1.nix {
     self = luajit_2_1;
+    inherit (super) callPackage lib;
   };
 
   luajit = luajit_2_1;
@@ -8796,6 +8815,8 @@ in
 
   kustomize = callPackage ../development/tools/kustomize { };
 
+  ktlint = callPackage ../development/tools/ktlint { };
+
   kythe = callPackage ../development/tools/kythe { };
 
   lazygit = callPackage ../development/tools/lazygit { };
@@ -8986,14 +9007,10 @@ in
 
   r10k = callPackage ../tools/system/r10k { };
 
-  inherit (callPackages ../development/tools/analysis/radare2 {
+  inherit (callPackages ../development/tools/analysis/radare2 ({
     inherit (gnome2) vte;
     lua = lua5;
-    useX11 = config.radare.useX11 or false;
-    pythonBindings = config.radare.pythonBindings or false;
-    rubyBindings = config.radare.rubyBindings or false;
-    luaBindings = config.radare.luaBindings or false;
-  }) radare2 r2-for-cutter;
+  } // (config.radare or {}))) radare2 r2-for-cutter;
 
   radare2-cutter = libsForQt5.callPackage ../development/tools/analysis/radare2/cutter.nix { };
 
@@ -9334,6 +9351,12 @@ in
     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreServices;
   };
 
+  aws-c-common = callPackage ../development/libraries/aws-c-common { };
+
+  aws-c-event-stream = callPackage ../development/libraries/aws-c-event-stream { };
+
+  aws-checksums = callPackage ../development/libraries/aws-checksums { };
+
   aws-sdk-cpp = callPackage ../development/libraries/aws-sdk-cpp {
     inherit (darwin.apple_sdk.frameworks) CoreAudio AudioToolbox;
   };
@@ -10090,12 +10113,9 @@ in
       # https://github.com/NixOS/nixpkgs/commit/d6454e6a1
       then ../development/libraries/gnutls/3.5.10.nix
       else ../development/libraries/gnutls/3.6.nix)
-    {
-      guileBindings = config.gnutls.guile or false;
-    };
+    { };
 
   gnutls-kdh = callPackage ../development/libraries/gnutls-kdh/3.5.nix {
-    guileBindings = config.gnutls.guile or false;
     gperf = gperf_3_0;
   };
 
@@ -10153,11 +10173,7 @@ in
 
   pixman = callPackage ../development/libraries/pixman { };
 
-  cairo = callPackage ../development/libraries/cairo {
-    glSupport = config.cairo.gl or (stdenv.isLinux &&
-      !stdenv.isAarch32 && !stdenv.isMips);
-  };
-
+  cairo = callPackage ../development/libraries/cairo { };
 
   cairomm = callPackage ../development/libraries/cairomm { };
 
@@ -10184,7 +10200,6 @@ in
   elementary-cmake-modules = callPackage ../development/libraries/elementary-cmake-modules { };
 
   gtk2 = callPackage ../development/libraries/gtk+/2.x.nix {
-    cupsSupport = config.gtk2.cups or stdenv.isLinux;
     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
   };
 
@@ -10949,7 +10964,6 @@ in
   libinotify-kqueue = callPackage ../development/libraries/libinotify-kqueue { };
 
   libiodbc = callPackage ../development/libraries/libiodbc {
-    useGTK = config.libiodbc.gtk or false;
     inherit (darwin.apple_sdk.frameworks) Carbon;
   };
 
@@ -11800,6 +11814,8 @@ in
 
   olm = callPackage ../development/libraries/olm { };
 
+  one_gadget = callPackage ../development/tools/misc/one_gadget { };
+
   oneko = callPackage ../applications/misc/oneko { };
 
   oniguruma = callPackage ../development/libraries/oniguruma { };
@@ -11814,6 +11830,7 @@ in
   openbabel = callPackage ../development/libraries/openbabel { };
 
   opencascade = callPackage ../development/libraries/opencascade { };
+  opencascade-occt = callPackage ../development/libraries/opencascade-occt { };
 
   opencl-headersGen = v: callPackage ../development/libraries/opencl-headers { version = v; };
   opencl-headers_1_2 = opencl-headersGen "12";
@@ -11836,7 +11853,6 @@ in
   };
 
   opencv3 = callPackage ../development/libraries/opencv/3.x.nix {
-    enableCuda = config.cudaSupport or false;
     inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa QTKit VideoDecodeAcceleration;
   };
@@ -11846,7 +11862,6 @@ in
   };
 
   opencv4 = callPackage ../development/libraries/opencv/4.x.nix {
-    enableCuda = config.cudaSupport or false;
     inherit (darwin) cf-private;
     inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa QTKit VideoDecodeAcceleration;
   };
@@ -11905,7 +11920,6 @@ in
   openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix { };
 
   opensubdiv = callPackage ../development/libraries/opensubdiv {
-    cudaSupport = config.cudaSupport or false;
     cmake = cmake_2_8;
   };
 
@@ -11930,9 +11944,7 @@ in
 
   pangoxsl = callPackage ../development/libraries/pangoxsl { };
 
-  pcaudiolib = callPackage ../development/libraries/pcaudiolib {
-    pulseaudioSupport = config.pulseaudio or true;
-  };
+  pcaudiolib = callPackage ../development/libraries/pcaudiolib { };
 
   pcg_c = callPackage ../development/libraries/pcg-c { };
 
@@ -12072,7 +12084,6 @@ in
   qolibri = libsForQt5.callPackage ../applications/misc/qolibri { };
 
   qt3 = callPackage ../development/libraries/qt-3 {
-    openglSupport = libGLSupported;
     libpng = libpng12;
   };
 
@@ -12112,6 +12123,7 @@ in
       harfbuzz = harfbuzzFull;
       inherit libGL;
       inherit perl;
+      inherit (darwin) cf-private;
       inherit (gst_all_1) gstreamer gst-plugins-base;
     });
 
@@ -12805,6 +12817,8 @@ in
 
   totem-pl-parser = callPackage ../development/libraries/totem-pl-parser { };
 
+  tpm2-tss = callPackage ../development/libraries/tpm2-tss { };
+
   tremor = callPackage ../development/libraries/tremor { };
 
   twolame = callPackage ../development/libraries/twolame { };
@@ -12984,21 +12998,18 @@ in
 
   wxGTK28 = callPackage ../development/libraries/wxwidgets/2.8 {
     inherit (gnome2) GConf;
-    withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
   };
 
   wxGTK29 = callPackage ../development/libraries/wxwidgets/2.9 {
     inherit (gnome2) GConf;
     inherit (darwin.stubs) setfile;
     inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QuickTime;
-    withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
   };
 
   wxGTK30 = callPackage ../development/libraries/wxwidgets/3.0 {
     inherit (gnome2) GConf;
     inherit (darwin.stubs) setfile;
     inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
-    withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
   };
 
   wxGTK31 = callPackage ../development/libraries/wxwidgets/3.1 {};
@@ -13048,9 +13059,7 @@ in
 
   xalanc = callPackage ../development/libraries/xalanc {};
 
-  xgboost = callPackage ../development/libraries/xgboost {
-    cudaSupport = config.cudaSupport or false;
-  };
+  xgboost = callPackage ../development/libraries/xgboost { };
 
   xgeometry-select = callPackage ../tools/X11/xgeometry-select { };
 
@@ -13088,6 +13097,10 @@ in
 
   yubikey-manager = callPackage ../tools/misc/yubikey-manager { };
 
+  yubikey-manager-qt = libsForQt5.callPackage ../tools/misc/yubikey-manager-qt {
+    pythonPackages = python3Packages;
+  };
+
   yubikey-neo-manager = callPackage ../tools/misc/yubikey-neo-manager { };
 
   yubikey-personalization = callPackage ../tools/misc/yubikey-personalization {
@@ -13436,10 +13449,7 @@ in
 
   bftpd = callPackage ../servers/ftp/bftpd {};
 
-  bind = callPackage ../servers/dns/bind {
-    enablePython = config.bind.enablePython or false;
-    python3 = python3.withPackages (ps: with ps; [ ply ]);
-  };
+  bind = callPackage ../servers/dns/bind { };
   dnsutils = bind.dnsutils;
 
   inherit (callPackages ../servers/bird { })
@@ -13569,6 +13579,8 @@ in
 
   hbase = callPackage ../servers/hbase {};
 
+  headphones = callPackage ../servers/headphones {};
+
   hiawatha = callPackage ../servers/http/hiawatha {};
 
   home-assistant = callPackage ../servers/home-assistant { };
@@ -13577,6 +13589,15 @@ in
 
   hydron = callPackage ../servers/hydron { };
 
+  icingaweb2 = callPackage ../servers/icingaweb2 { };
+  icingaweb2Modules = {
+    theme-april = callPackage ../servers/icingaweb2/theme-april { };
+    theme-lsd = callPackage ../servers/icingaweb2/theme-lsd { };
+    theme-particles = callPackage ../servers/icingaweb2/theme-particles { };
+    theme-snow = callPackage ../servers/icingaweb2/theme-snow { };
+    theme-spring = callPackage ../servers/icingaweb2/theme-spring { };
+  };
+
   ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
 
   jboss = callPackage ../servers/http/jboss { };
@@ -13977,7 +13998,7 @@ in
   };
 
   rippled = callPackage ../servers/rippled {
-    boost = boost159;
+    boost = boost167;
   };
 
   s6 = skawarePackages.s6;
@@ -14087,6 +14108,7 @@ in
   torque = callPackage ../servers/computing/torque { };
 
   tt-rss = callPackage ../servers/tt-rss { };
+  tt-rss-plugin-ff-instagram = callPackage ../servers/tt-rss/plugin-ff-instagram { };
   tt-rss-plugin-tumblr-gdpr = callPackage ../servers/tt-rss/plugin-tumblr-gdpr { };
   tt-rss-plugin-auth-ldap = callPackage ../servers/tt-rss/plugin-auth-ldap { };
   tt-rss-theme-feedly = callPackage ../servers/tt-rss/theme-feedly { };
@@ -14262,6 +14284,8 @@ in
 
   inherit (python3Packages) bedup;
 
+  bolt = callPackage ../os-specific/linux/bolt { };
+
   bridge-utils = callPackage ../os-specific/linux/bridge-utils { };
 
   busybox = callPackage ../os-specific/linux/busybox { };
@@ -14281,8 +14305,7 @@ in
 
   conky = callPackage ../os-specific/linux/conky ({
     lua = lua5_3_compat;
-    libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
-    pulseSupport = config.pulseaudio or false;
+    inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl;
   } // config.conky or {});
 
   conntrack-tools = callPackage ../os-specific/linux/conntrack-tools { };
@@ -15059,10 +15082,7 @@ in
 
   pax-utils = callPackage ../os-specific/linux/pax-utils { };
 
-  pcmciaUtils = callPackage ../os-specific/linux/pcmciautils {
-    firmware = config.pcmciaUtils.firmware or [];
-    config = config.pcmciaUtils.config or null;
-  };
+  pcmciaUtils = callPackage ../os-specific/linux/pcmciautils { };
 
   pcstat = callPackage ../tools/system/pcstat { };
 
@@ -15428,9 +15448,7 @@ in
 
   comic-relief = callPackage ../data/fonts/comic-relief {};
 
-  coreclr = callPackage ../development/compilers/coreclr {
-    debug = config.coreclr.debug or false;
-  };
+  coreclr = callPackage ../development/compilers/coreclr { };
 
   corefonts = callPackage ../data/fonts/corefonts { };
 
@@ -16011,9 +16029,7 @@ in
 
   agedu = callPackage ../tools/misc/agedu { };
 
-  ahoviewer = callPackage ../applications/graphics/ahoviewer {
-    useUnrar = config.ahoviewer.useUnrar or false;
-  };
+  ahoviewer = callPackage ../applications/graphics/ahoviewer { };
 
   airwave = callPackage ../applications/audio/airwave { };
 
@@ -16247,7 +16263,6 @@ in
   bleachbit = callPackage ../applications/misc/bleachbit { };
 
   blender = callPackage  ../applications/misc/blender {
-    cudaSupport = config.cudaSupport or false;
     pythonPackages = python35Packages;
     stdenv = overrideCC stdenv gcc6;
   };
@@ -16267,7 +16282,6 @@ in
   bombono = callPackage ../applications/video/bombono {};
 
   bomi = libsForQt5.callPackage ../applications/video/bomi {
-    pulseSupport = config.pulseaudio or true;
     ffmpeg = ffmpeg_2;
   };
 
@@ -16356,18 +16370,7 @@ in
 
   bookworm = callPackage ../applications/office/bookworm { };
 
-  chromium = callPackage ../applications/networking/browsers/chromium ({
-    channel = "stable";
-    pulseSupport = config.pulseaudio or true;
-    enablePepperFlash = config.chromium.enablePepperFlash or false;
-    enableWideVine = config.chromium.enableWideVine or false;
-  } // (if stdenv.isAarch64 then {
-          stdenv = gcc8Stdenv;
-        } else {
-          llvmPackages = llvmPackages_7;
-          stdenv = llvmPackages_7.stdenv;
-        })
-   );
+  chromium = callPackage ../applications/networking/browsers/chromium (config.chromium or {});
 
   chronos = callPackage ../applications/networking/cluster/chronos { };
 
@@ -16384,7 +16387,6 @@ in
   claws-mail = callPackage ../applications/networking/mailreaders/claws-mail {
     inherit (gnome3) gsettings-desktop-schemas;
     inherit (xorg) libSM;
-    enableNetworkManager = config.networking.networkmanager.enable or false;
   };
 
   clfswm = callPackage ../applications/window-managers/clfswm { };
@@ -16407,8 +16409,6 @@ in
     inherit (darwin.apple_sdk.frameworks) CoreAudio;
     libjack = libjack2;
     ffmpeg = ffmpeg_2;
-
-    pulseaudioSupport = config.pulseaudio or false;
   };
 
   cmusfm = callPackage ../applications/audio/cmusfm { };
@@ -16517,9 +16517,7 @@ in
 
   ddgr = callPackage ../applications/misc/ddgr { };
 
-  deadbeef = callPackage ../applications/audio/deadbeef {
-    pulseSupport = config.pulseaudio or true;
-  };
+  deadbeef = callPackage ../applications/audio/deadbeef { };
 
   deadbeefPlugins = {
     headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { };
@@ -17506,9 +17504,7 @@ in
 
   gv = callPackage ../applications/misc/gv { };
 
-  guvcview = callPackage ../os-specific/linux/guvcview {
-    pulseaudioSupport = config.pulseaudio or true;
-  };
+  guvcview = callPackage ../os-specific/linux/guvcview { };
 
   gxmessage = callPackage ../applications/misc/gxmessage { };
 
@@ -17861,12 +17857,19 @@ in
 
   inherit (kdeFrameworks) kdesu;
 
-  kdevelop-pg-qt = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix {};
+  kdevelop-pg-qt = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix { };
 
-  kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop.nix {
+  kdevelop-unwrapped = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop.nix {
     llvmPackages = llvmPackages_7;
   };
 
+  kdev-php = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-php.nix { };
+  kdev-python = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-python.nix {
+    python = python3;
+  };
+
+  kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/wrapper.nix { };
+
   keepnote = callPackage ../applications/office/keepnote { };
 
   kega-fusion = pkgsi686Linux.callPackage ../misc/emulators/kega-fusion { };
@@ -18200,9 +18203,7 @@ in
 
   minitube = libsForQt5.callPackage ../applications/video/minitube { };
 
-  mimic = callPackage ../applications/audio/mimic {
-    pulseaudioSupport = config.pulseaudio or false;
-  };
+  mimic = callPackage ../applications/audio/mimic { };
 
   mimms = callPackage ../applications/audio/mimms {};
 
@@ -18334,7 +18335,6 @@ in
   mpc-qt = libsForQt5.callPackage ../applications/video/mpc-qt { };
 
   mplayer = callPackage ../applications/video/mplayer ({
-    pulseSupport = config.pulseaudio or false;
     libdvdnav = libdvdnav_4_2_1;
   } // (config.mplayer or {}));
 
@@ -18344,19 +18344,8 @@ in
       # !!! should depend on MPlayer
     };
 
-  mpv = callPackage ../applications/video/mpv rec {
+  mpv = callPackage ../applications/video/mpv {
     inherit lua;
-    waylandSupport     = stdenv.isLinux;
-    alsaSupport        = !stdenv.isDarwin;
-    pulseSupport       = !stdenv.isDarwin;
-    rubberbandSupport  = !stdenv.isDarwin;
-    dvdreadSupport     = !stdenv.isDarwin;
-    dvdnavSupport      = !stdenv.isDarwin;
-    drmSupport         = !stdenv.isDarwin;
-    vaapiSupport       = !stdenv.isDarwin;
-    x11Support         = !stdenv.isDarwin;
-    xineramaSupport    = !stdenv.isDarwin;
-    xvSupport          = !stdenv.isDarwin;
   };
 
   mpv-with-scripts = callPackage ../applications/video/mpv/wrapper.nix { };
@@ -18613,10 +18602,7 @@ in
 
   obs-linuxbrowser = callPackage ../applications/video/obs-studio/linuxbrowser.nix { };
 
-  obs-studio = libsForQt5.callPackage ../applications/video/obs-studio {
-    alsaSupport = stdenv.isLinux;
-    pulseaudioSupport = config.pulseaudio or true;
-  };
+  obs-studio = libsForQt5.callPackage ../applications/video/obs-studio { };
 
   octoprint = callPackage ../applications/misc/octoprint { };
 
@@ -18680,9 +18666,7 @@ in
 
   vivaldi-ffmpeg-codecs = callPackage ../applications/networking/browsers/vivaldi/ffmpeg-codecs.nix {};
 
-  openmpt123 = callPackage ../applications/audio/openmpt123 {
-    usePulseAudio = config.pulseaudio or false;
-  };
+  openmpt123 = callPackage ../applications/audio/openmpt123 { };
 
   opusfile = callPackage ../applications/audio/opusfile { };
 
@@ -18716,7 +18700,7 @@ in
 
   pavucontrol = callPackage ../applications/audio/pavucontrol { };
 
-  paraview = libsForQt59.callPackage ../applications/graphics/paraview { };
+  paraview = libsForQt5.callPackage ../applications/graphics/paraview { };
 
   packet = callPackage ../development/tools/packet { };
 
@@ -18924,7 +18908,7 @@ in
   qdirstat = libsForQt5.callPackage ../applications/misc/qdirstat {};
 
   qemu = callPackage ../applications/virtualization/qemu {
-    inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa;
+    inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Hypervisor;
     inherit (darwin.stubs) rez setfile;
   };
 
@@ -19387,9 +19371,7 @@ in
 
   soulseekqt = libsForQt5.callPackage ../applications/networking/p2p/soulseekqt { };
 
-  sox = callPackage ../applications/misc/audio/sox {
-    enableLame = config.sox.enableLame or false;
-  };
+  sox = callPackage ../applications/misc/audio/sox { };
 
   soxr = callPackage ../applications/misc/audio/soxr { };
 
@@ -19428,7 +19410,9 @@ in
 
   inherit (ocamlPackages) stog;
 
-  stp = callPackage ../applications/science/logic/stp {};
+  stp = callPackage ../applications/science/logic/stp {
+    bison = bison2;
+  };
 
   stumpish = callPackage ../applications/window-managers/stumpish {};
 
@@ -19515,7 +19499,7 @@ in
 
   tambura = callPackage ../applications/audio/tambura { };
 
-  teamspeak_client = libsForQt5.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { };
+  teamspeak_client = libsForQt511.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { };
   teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { };
 
   taskell = callPackage ../applications/misc/taskell { };
@@ -19815,7 +19799,6 @@ in
   virtualbox = callPackage ../applications/virtualization/virtualbox {
     stdenv = stdenv_32bit;
     inherit (gnome2) libIDL;
-    pulseSupport = config.pulseaudio or true;
   };
 
   virtualboxHardened = lowPrio (virtualbox.override {
@@ -20256,18 +20239,15 @@ in
   };
 
   xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
-    desktopSupport = "gnomeflashback";
     inherit (xfce) libxfce4util xfce4-panel;
   };
 
   xmonad_log_applet_mate = xmonad_log_applet.override {
     desktopSupport = "mate";
-    inherit (xfce) libxfce4util xfce4-panel;
   };
 
   xmonad_log_applet_xfce = xmonad_log_applet.override {
     desktopSupport = "xfce4";
-    inherit (xfce) libxfce4util xfce4-panel;
   };
 
   xmpp-client = callPackage ../applications/networking/instant-messengers/xmpp-client { };
@@ -20368,9 +20348,7 @@ in
     boost = boost160;
   };
 
-  zathura = callPackage ../applications/misc/zathura {
-    useMupdf = config.zathura.useMupdf or true;
-  };
+  zathura = callPackage ../applications/misc/zathura { };
 
   zeroc_ice = callPackage ../development/libraries/zeroc-ice {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -21004,11 +20982,7 @@ in
 
   steamPackages = callPackage ../games/steam { };
 
-  steam = steamPackages.steam-chrootenv.override {
-    # DEPRECATED
-    withJava = config.steam.java or false;
-    withPrimus = config.steam.primus or false;
-  };
+  steam = steamPackages.steam-chrootenv;
 
   steam-run = steam.run;
   steam-run-native = (steam.override {
@@ -21038,6 +21012,8 @@ in
 
   synthv1 = callPackage ../applications/audio/synthv1 { };
 
+  t4kcommon = callPackage ../games/t4kcommon { };
+
   tcl2048 = callPackage ../games/tcl2048 { };
 
   the-powder-toy = callPackage ../games/the-powder-toy {
@@ -21072,6 +21048,8 @@ in
 
   tuxpaint = callPackage ../games/tuxpaint { };
 
+  tuxtype = callPackage ../games/tuxtype { };
+
   speed_dreams = callPackage ../games/speed-dreams {
     # Torcs wants to make shared libraries linked with plib libraries (it provides static).
     # i686 is the only platform I know than can do that linking without plib built with -fPIC
@@ -21532,9 +21510,7 @@ in
 
   ### SCIENCE/MACHINE LEARNING
 
-  sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless {
-    licenseAccepted = (config.sc2-headless.accept_license or false);
-  };
+  sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { };
 
   ### SCIENCE/MATH
 
@@ -21950,28 +21926,21 @@ in
 
   ### SCIENCE / MATH
 
-  caffe = callPackage ../applications/science/math/caffe rec {
-    cudaSupport = config.caffe.cudaSupport or config.cudaSupport or false;
-    cudnnSupport = cudaSupport;
-    # Used only for image loading.
-    opencv3 = opencv3WithoutCuda;
+  caffe = callPackage ../applications/science/math/caffe ({
+    opencv3 = opencv3WithoutCuda; # Used only for image loading.
     inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
-  };
+  } // (config.caffe or {}));
 
   caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec {
     inherit (python36Packages) python future six numpy pydot;
     protobuf = protobuf3_1;
     python-protobuf = python36Packages.protobuf.override { inherit protobuf; };
-    # Used only for image loading.
-    opencv3 = opencv3WithoutCuda;
+    opencv3 = opencv3WithoutCuda; # Used only for image loading.
   });
 
-  cntk = callPackage ../applications/science/math/cntk rec {
-    cudaSupport = pkgs.config.cudaSupport or false;
-    cudnnSupport = cudaSupport;
+  cntk = callPackage ../applications/science/math/cntk {
     inherit (linuxPackages) nvidia_x11;
-    # Used only for image loading.
-    opencv3 = opencv3WithoutCuda;
+    opencv3 = opencv3WithoutCuda; # Used only for image loading.
   };
 
   ecm = callPackage ../applications/science/math/ecm { };
@@ -22002,9 +21971,7 @@ in
     sbcl = null;
   };
 
-  mxnet = callPackage ../applications/science/math/mxnet rec {
-    cudaSupport = config.cudaSupport or false;
-    cudnnSupport = cudaSupport;
+  mxnet = callPackage ../applications/science/math/mxnet {
     inherit (linuxPackages) nvidia_x11;
   };
 
@@ -22231,6 +22198,8 @@ in
 
   epson_201207w = callPackage ../misc/drivers/epson_201207w { };
 
+  epson-201106w = callPackage ../misc/drivers/epson-201106w { };
+
   epson-workforce-635-nx625-series = callPackage ../misc/drivers/epson-workforce-635-nx625-series { };
 
   gutenprint = callPackage ../misc/drivers/gutenprint { };
@@ -23005,6 +22974,8 @@ in
 
   x11idle = callPackage ../tools/misc/x11idle {};
 
+  x11docker = callPackage ../applications/virtualization/x11docker { };
+
   x2x = callPackage ../tools/X11/x2x { };
 
   xboxdrv = callPackage ../misc/drivers/xboxdrv { };
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index 718215fda9d..5f55d88cb77 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -39,6 +39,7 @@ let
       metalib = callPackage ../development/coq-modules/metalib { };
       multinomials = callPackage ../development/coq-modules/multinomials {};
       paco = callPackage ../development/coq-modules/paco {};
+      paramcoq = callPackage ../development/coq-modules/paramcoq {};
       QuickChick = callPackage ../development/coq-modules/QuickChick {};
       simple-io = callPackage ../development/coq-modules/simple-io { };
       ssreflect = callPackage ../development/coq-modules/ssreflect { };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 15d4cf3f213..3e59bf872d5 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -55,7 +55,7 @@ in {
     };
     ghc844 = callPackage ../development/compilers/ghc/8.4.4.nix {
       bootPkgs = packages.ghc822Binary;
-      inherit (buildPackages.python3Packages) sphinx;
+      sphinx = null;            # broken with sphinx 1.8.x
       buildLlvmPackages = buildPackages.llvmPackages_5;
       llvmPackages = pkgs.llvmPackages_5;
     };
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 1adf66d5eb7..510fd62f240 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -1072,6 +1072,8 @@ in let inherit (pkgs) callPackage; in rec
 
   ocamlPackages_4_07 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.07.nix { });
 
+  ocamlPackages_4_08 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.08.nix { });
+
   ocamlPackages_latest = ocamlPackages_4_07;
 
   ocamlPackages = ocamlPackages_4_06;
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b4e93345581..2866f6b6ca5 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1023,6 +1023,19 @@ let
     propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig ];
   };
 
+  CairoGObject = buildPerlPackage rec {
+    name = "Cairo-GObject-1.004";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/X/XA/XAOC/${name}.tar.gz";
+      sha256 = "1m896j0xdfhldsx8abf10cc16ll1fm9wbav42dpzal9fh07d9f9v";
+    };
+    buildInputs = [ pkgs.cairo Cairo Glib ExtUtilsDepends ExtUtilsPkgConfig ];
+    meta = {
+      description = "Integrate Cairo into the Glib type system";
+      license = stdenv.lib.licenses.lgpl21Plus;
+    };
+  };
+
   cam_pdf = buildPerlModule rec {
     name = "CAM-PDF-1.60";
     src = fetchurl {
@@ -5936,6 +5949,18 @@ let
     };
   };
 
+  FilesysDf = buildPerlPackage rec {
+    name = "Filesys-Df-0.92";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/I/IG/IGUTHRIE/${name}.tar.gz";
+      sha256 = "fe89cbb427e0e05f1cd97c2dd6d3866ac6b21bc7a85734ede159bdc35479552a";
+    };
+    meta = {
+      description = "Perl extension for filesystem disk space information.";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   FilesysNotifySimple = buildPerlPackage {
     name = "Filesys-Notify-Simple-0.13";
     src = fetchurl {
@@ -6355,6 +6380,20 @@ let
     propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig ];
   };
 
+  GlibObjectIntrospection = buildPerlPackage rec {
+    name = "Glib-Object-Introspection-0.046";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/X/XA/XAOC/${name}.tar.gz";
+      sha256 = "1d3gl943p27gd42kxc1i9sp5z55gpgcslz1jvx7cxd6mflhdlck6";
+    };
+    buildInputs = [ Glib ExtUtilsDepends ExtUtilsPkgConfig ];
+    propagatedBuildInputs = [ pkgs.gobject-introspection ];
+    meta = {
+      description = "Dynamically create Perl language bindings";
+      license = stdenv.lib.licenses.lgpl2Plus;
+    };
+  };
+
   Gnome2 = buildPerlPackage rec {
     name = "Gnome2-1.047";
     src = fetchurl {
@@ -6460,6 +6499,20 @@ let
     };
   };
 
+  GooCanvas2 = buildPerlPackage rec {
+    name = "GooCanvas2-0.06";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/P/PE/PERLMAX/${name}.tar.gz";
+      sha256 = "0l1vsvyv9hjxhsxrahq4h64axh7qmk50kiz2spa3s1hr7s3qfk72";
+    };
+    buildInputs = [ pkgs.gtk3 GlibObjectIntrospection Glib ];
+    propagatedBuildInputs = [ pkgs.goocanvas2 ];
+    meta = {
+      description = "Perl binding for GooCanvas2 widget using Glib::Object::Introspection";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   GoogleProtocolBuffers = buildPerlPackage rec {
     name = "Google-ProtocolBuffers-0.12";
     src = fetchurl {
@@ -6628,6 +6681,33 @@ let
     };
   };
 
+  Gtk3 = buildPerlPackage rec {
+    name = "Gtk3-0.034";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/X/XA/XAOC/${name}.tar.gz";
+      sha256 = "0baxyhlzdf7avka40h1niiir8vz4nilqkiwh876i0hv0f8xj3nqa";
+    };
+    buildInputs = [ Cairo CairoGObject Glib GlibObjectIntrospection ];
+    propagatedBuildInputs = [ pkgs.gtk3 ];
+    meta = {
+      description = "Perl interface to the 3.x series of the gtk+ toolkit";
+      license = stdenv.lib.licenses.lgpl21Plus;
+    };
+  };
+
+  Gtk3SimpleList = buildPerlPackage rec {
+    name = "Gtk3-SimpleList-0.18";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/T/TV/TVIGNAUD/${name}.tar.gz";
+      sha256 = "09azmc7miyvw7q21rz8cxw16zbd5i1j5hpakxy376f5vmhqqjyhp";
+    };
+    buildInputs = [ Gtk3 Glib GlibObjectIntrospection Cairo CairoGObject ];
+    meta = {
+      description = "A simple interface to Gtk3's complex MVC list widget";
+      license = stdenv.lib.licenses.lgpl21Plus;
+    };
+  };
+
   Guard = buildPerlPackage rec {
     name = "Guard-1.023";
     src = fetchurl {
@@ -7372,6 +7452,20 @@ let
     };
   };
 
+  ImageSane = buildPerlPackage rec {
+    name = "Image-Sane-0.14";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/R/RA/RATCLIFFE/${name}.tar.gz";
+      sha256 = "a4b027c9b7650291f1acb0eb93861a7fc45aef4e08f6726843f174fa113c8ba5";
+    };
+    buildInputs = [ pkgs.sane-backends ExtUtilsDepends ExtUtilsPkgConfig TestRequires TryTiny ];
+    propagatedBuildInputs = [ ExceptionClass Readonly ];
+    meta = {
+      description = "Perl extension for the SANE (Scanner Access Now Easy) Project";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   ImageScale = buildPerlPackage rec {
     name = "Image-Scale-0.14";
     src = fetchurl {
@@ -7768,15 +7862,15 @@ let
 
   ImageExifTool = buildPerlPackage rec {
     name = "Image-ExifTool-${version}";
-    version = "11.01";
+    version = "11.11";
 
     src = fetchurl {
       url = "https://www.sno.phy.queensu.ca/~phil/exiftool/${name}.tar.gz";
-      sha256 = "175w34n73mypdpbaqj2vgqsfp59yvfrn8k7zmx4cawnp895bypvh";
+      sha256 = "1szg1k82nz88pp5n7lg71ja7q3hh5i5f9bcbb7m482dwrmsywkp6";
     };
 
     meta = with stdenv.lib; {
-      description = "ExifTool, a tool to read, write and edit EXIF meta information";
+      description = "A tool to read, write and edit EXIF meta information";
       homepage = https://www.sno.phy.queensu.ca/~phil/exiftool/;
 
       longDescription = ''
@@ -7785,10 +7879,10 @@ let
         image, audio and video files.  ExifTool supports many different types
         of metadata including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC
         Profile, Photoshop IRB, FlashPix, AFCP and ID3, as well as the maker
-        notes of many digital cameras by Canon, Casio, FujiFilm, HP,
-        JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Nikon,
-        Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Ricoh, Sanyo,
-        Sigma/Foveon and Sony.
+        notes of many digital cameras by Canon, Casio, DJI, FLIR, FujiFilm, HP,
+        JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Motorola, Nikon,
+        Nintendo, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One,
+        Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and Sony.
       '';
 
       license = with licenses; [ gpl1Plus /* or */ artistic2 ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 7ac5263e30a..397513243bb 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -168,6 +168,10 @@ in {
 
   aioimaplib = callPackage ../development/python-modules/aioimaplib { };
 
+  aiolifx = callPackage ../development/python-modules/aiolifx { };
+
+  aiolifx-effects = callPackage ../development/python-modules/aiolifx-effects { };
+
   aioamqp = callPackage ../development/python-modules/aioamqp { };
 
   ansicolor = callPackage ../development/python-modules/ansicolor { };
@@ -264,6 +268,8 @@ in {
 
   bayespy = callPackage ../development/python-modules/bayespy { };
 
+  beanstalkc = disabledIf isPy3k (callPackage ../development/python-modules/beanstalkc {});
+
   bitarray = callPackage ../development/python-modules/bitarray { };
 
   bitcoinlib = callPackage ../development/python-modules/bitcoinlib { };
@@ -486,6 +492,8 @@ in {
 
   nanomsg-python = callPackage ../development/python-modules/nanomsg-python { inherit (pkgs) nanomsg; };
 
+  nbsphinx = callPackage ../development/python-modules/nbsphinx { };
+
   nbval = callPackage ../development/python-modules/nbval { };
 
   nest-asyncio = callPackage ../development/python-modules/nest-asyncio { };
@@ -712,6 +720,8 @@ in {
 
   python-binance = callPackage ../development/python-modules/python-binance { };
 
+  python-dbusmock = callPackage ../development/python-modules/python-dbusmock { };
+
   python-engineio = callPackage ../development/python-modules/python-engineio { };
 
   python-hosts = callPackage ../development/python-modules/python-hosts { };
@@ -840,6 +850,8 @@ in {
 
   webapp2 = callPackage ../development/python-modules/webapp2 { };
 
+  wrf-python = callPackage ../development/python-modules/wrf-python { };
+
   pyunbound = callPackage ../tools/networking/unbound/python.nix { };
 
   WazeRouteCalculator = callPackage ../development/python-modules/WazeRouteCalculator { };
@@ -1094,11 +1106,10 @@ in {
 
   cached-property = callPackage ../development/python-modules/cached-property { };
 
-  caffe = pkgs.caffe.override {
-    python = self.python;
-    boost = self.boost;
-    numpy = self.numpy;
-  };
+  caffe = toPythonModule (pkgs.caffe.override {
+    pythonSupport = true;
+    inherit (self) python numpy boost;
+  });
 
   capstone = callPackage ../development/python-modules/capstone { };
 
@@ -4069,6 +4080,8 @@ in {
 
   scikit-bio = callPackage ../development/python-modules/scikit-bio { };
 
+  scikit-build = callPackage ../development/python-modules/scikit-build { };
+
   scp = callPackage ../development/python-modules/scp {};
 
   seaborn = callPackage ../development/python-modules/seaborn { };