about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/languages-frameworks/haskell.section.md6
-rw-r--r--doc/languages-frameworks/python.section.md2
-rw-r--r--lib/licenses.nix6
-rw-r--r--maintainers/maintainer-list.nix15
-rw-r--r--maintainers/scripts/luarocks-packages.csv2
-rwxr-xr-xmaintainers/scripts/update-luarocks-packages2
-rw-r--r--nixos/doc/manual/configuration/x-windows.xml26
-rw-r--r--nixos/doc/manual/release-notes/rl-1909.xml8
-rw-r--r--nixos/modules/programs/sway.nix6
-rw-r--r--nixos/modules/rename.nix3
-rw-r--r--nixos/modules/services/logging/journalwatch.nix42
-rw-r--r--nixos/modules/services/misc/gitea.nix15
-rw-r--r--nixos/modules/services/misc/nzbget.nix96
-rw-r--r--nixos/modules/services/misc/packagekit.nix51
-rw-r--r--nixos/modules/services/networking/ejabberd.nix28
-rw-r--r--nixos/modules/services/networking/zeronet.nix13
-rw-r--r--nixos/modules/services/security/sks.nix24
-rw-r--r--nixos/modules/services/system/earlyoom.nix15
-rw-r--r--nixos/modules/services/web-apps/documize.nix171
-rw-r--r--nixos/modules/services/x11/window-managers/i3.nix5
-rw-r--r--nixos/modules/system/activation/switch-to-configuration.pl18
-rw-r--r--nixos/tests/all-tests.nix3
-rw-r--r--nixos/tests/ejabberd.nix262
-rw-r--r--nixos/tests/nzbget.nix26
-rw-r--r--nixos/tests/packagekit.nix24
-rw-r--r--nixos/tests/prosody.nix68
-rw-r--r--nixos/tests/xmpp-sendmessage.nix46
-rw-r--r--pkgs/applications/audio/dragonfly-reverb/default.nix16
-rw-r--r--pkgs/applications/audio/lollypop/default.nix40
-rw-r--r--pkgs/applications/audio/soundkonverter/default.nix97
-rw-r--r--pkgs/applications/editors/android-studio/default.nix6
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix40
-rw-r--r--pkgs/applications/gis/qgis/unwrapped.nix4
-rw-r--r--pkgs/applications/graphics/freecad/default.nix46
-rw-r--r--pkgs/applications/graphics/goxel/default.nix2
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix4
-rw-r--r--pkgs/applications/misc/evopedia/default.nix30
-rw-r--r--pkgs/applications/misc/font-manager/correct-post-install.patch13
-rw-r--r--pkgs/applications/misc/font-manager/default.nix8
-rw-r--r--pkgs/applications/misc/guake/default.nix10
-rw-r--r--pkgs/applications/misc/hugo/default.nix4
-rw-r--r--pkgs/applications/misc/joplin-desktop/default.nix31
-rw-r--r--pkgs/applications/misc/kanboard/default.nix12
-rw-r--r--pkgs/applications/misc/kdeconnect/default.nix7
-rw-r--r--pkgs/applications/misc/librecad/default.nix7
-rw-r--r--pkgs/applications/misc/notable/default.nix30
-rw-r--r--pkgs/applications/misc/orca/default.nix7
-rw-r--r--pkgs/applications/misc/pwsafe/default.nix17
-rw-r--r--pkgs/applications/misc/pydf/default.nix18
-rw-r--r--pkgs/applications/misc/taskopen/default.nix34
-rw-r--r--pkgs/applications/networking/ipfs/default.nix13
-rw-r--r--pkgs/applications/networking/ipfs/deps.nix2190
-rw-r--r--pkgs/applications/networking/mpop/default.nix8
-rw-r--r--pkgs/applications/networking/msmtp/default.nix7
-rw-r--r--pkgs/applications/office/kexi/default.nix11
-rw-r--r--pkgs/applications/office/minetime/default.nix31
-rw-r--r--pkgs/applications/office/skrooge/default.nix4
-rw-r--r--pkgs/applications/office/wordgrinder/default.nix6
-rw-r--r--pkgs/applications/office/zim/default.nix4
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle.nix4
-rw-r--r--pkgs/applications/science/math/R/default.nix2
-rw-r--r--pkgs/applications/version-management/git-review/default.nix18
-rw-r--r--pkgs/applications/virtualization/docker/default.nix16
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix5
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix8
-rw-r--r--pkgs/applications/window-managers/sway/default.nix1
-rw-r--r--pkgs/applications/window-managers/sway/load-configuration-from-etc.patch42
-rw-r--r--pkgs/build-support/appimage/default.nix16
-rw-r--r--pkgs/data/fonts/iosevka/bin.nix4
-rw-r--r--pkgs/data/fonts/nahid-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/xkcd-font/default.nix28
-rw-r--r--pkgs/desktops/enlightenment/efl.nix11
-rw-r--r--pkgs/desktops/gnustep/libobjc2/default.nix11
-rw-r--r--pkgs/desktops/mate/marco/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-session-manager/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-system-monitor/default.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/sources.json4
-rw-r--r--pkgs/development/compilers/openjdk/8.nix3
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk-linux-base.nix3
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix14
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix14
-rw-r--r--pkgs/development/compilers/pforth/default.nix28
-rw-r--r--pkgs/development/compilers/purescript/purescript/default.nix12
-rw-r--r--pkgs/development/compilers/sbcl/bootstrap.nix4
-rw-r--r--pkgs/development/compilers/sbcl/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml41
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2135
-rw-r--r--pkgs/development/interpreters/lua-5/5.1.nix76
-rw-r--r--pkgs/development/interpreters/lua-5/5.2.nix95
-rw-r--r--pkgs/development/interpreters/lua-5/build-lua-package.nix3
-rw-r--r--pkgs/development/interpreters/lua-5/default.nix65
-rw-r--r--pkgs/development/interpreters/lua-5/interpreter.nix (renamed from pkgs/development/interpreters/lua-5/5.3.nix)72
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/2.7-html.nix6
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/2.7-pdf-a4.nix6
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/2.7-pdf-letter.nix6
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/2.7-text.nix6
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/3.7-html.nix18
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/3.7-pdf-a4.nix18
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/3.7-pdf-letter.nix18
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/3.7-text.nix18
-rw-r--r--pkgs/development/interpreters/python/cpython/docs/default.nix12
-rwxr-xr-xpkgs/development/interpreters/python/cpython/docs/generate.sh2
-rw-r--r--pkgs/development/libraries/accountsservice/default.nix4
-rw-r--r--pkgs/development/libraries/accountsservice/no-create-dirs.patch12
-rw-r--r--pkgs/development/libraries/armadillo/default.nix4
-rw-r--r--pkgs/development/libraries/arrow-cpp/default.nix52
-rw-r--r--pkgs/development/libraries/audio/libmysofa/default.nix4
-rw-r--r--pkgs/development/libraries/cctz/default.nix4
-rw-r--r--pkgs/development/libraries/cmark/default.nix4
-rw-r--r--pkgs/development/libraries/intel-gmmlib/default.nix4
-rw-r--r--pkgs/development/libraries/intel-media-driver/default.nix4
-rw-r--r--pkgs/development/libraries/intel-media-sdk/default.nix4
-rw-r--r--pkgs/development/libraries/kdb/default.nix4
-rw-r--r--pkgs/development/libraries/kproperty/default.nix4
-rw-r--r--pkgs/development/libraries/kreport/default.nix4
-rw-r--r--pkgs/development/libraries/nlopt/default.nix15
-rw-r--r--pkgs/development/libraries/qca-qt5/default.nix7
-rw-r--r--pkgs/development/libraries/qca-qt5/move-project.patch20
-rw-r--r--pkgs/development/libraries/snappy/default.nix5
-rw-r--r--pkgs/development/libraries/uriparser/default.nix2
-rw-r--r--pkgs/development/lua-modules/generated-packages.nix382
-rw-r--r--pkgs/development/python-modules/box2d/default.nix3
-rw-r--r--pkgs/development/python-modules/breathe/default.nix4
-rw-r--r--pkgs/development/python-modules/colanderalchemy/default.nix3
-rw-r--r--pkgs/development/python-modules/cysignals/default.nix4
-rw-r--r--pkgs/development/python-modules/ezdxf/default.nix12
-rw-r--r--pkgs/development/python-modules/google-auth-oauthlib/default.nix5
-rw-r--r--pkgs/development/python-modules/joblib/default.nix4
-rw-r--r--pkgs/development/python-modules/mysql-connector/default.nix4
-rw-r--r--pkgs/development/python-modules/pg8000/default.nix8
-rw-r--r--pkgs/development/python-modules/pyside/tools.nix23
-rw-r--r--pkgs/development/python-modules/python-efl/default.nix4
-rw-r--r--pkgs/development/python-modules/pytorch/default.nix4
-rw-r--r--pkgs/development/python-modules/serversyncstorage/default.nix1
-rw-r--r--pkgs/development/python-modules/spacy/default.nix3
-rw-r--r--pkgs/development/python-modules/wikipedia/default.nix37
-rw-r--r--pkgs/development/tools/build-managers/sbt-extras/default.nix6
-rw-r--r--pkgs/development/tools/coursier/default.nix6
-rw-r--r--pkgs/development/tools/electron/5.x.nix77
-rw-r--r--pkgs/development/tools/electron/default.nix12
-rw-r--r--pkgs/development/tools/flatpak-builder/default.nix4
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/default.nix41
-rw-r--r--pkgs/development/tools/pipenv/default.nix4
-rw-r--r--pkgs/development/tools/rust/bindgen/default.nix14
-rw-r--r--pkgs/development/tools/rust/cargo-sweep/default.nix23
-rw-r--r--pkgs/development/tools/rust/rls/default.nix16
-rw-r--r--pkgs/development/tools/rust/rustup/0001-dynamically-patchelf-binaries.patch46
-rw-r--r--pkgs/development/tools/rust/rustup/default.nix21
-rw-r--r--pkgs/games/crawl/default.nix19
-rw-r--r--pkgs/games/crispy-doom/default.nix4
-rw-r--r--pkgs/games/gzdoom/default.nix4
-rw-r--r--pkgs/misc/tmux-plugins/default.nix1
-rw-r--r--pkgs/misc/vim-plugins/generated.nix155
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names7
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix10
-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.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.0.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix19
-rw-r--r--pkgs/os-specific/linux/kexectools/default.nix2
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix8
-rw-r--r--pkgs/os-specific/linux/wpa_supplicant/default.nix12
-rw-r--r--pkgs/servers/dex/default.nix20
-rw-r--r--pkgs/servers/dico/default.nix15
-rw-r--r--pkgs/servers/dns/bind/default.nix16
-rw-r--r--pkgs/servers/documize-community/default.nix6
-rw-r--r--pkgs/servers/freeradius/default.nix4
-rw-r--r--pkgs/servers/jellyfin/default.nix4
-rw-r--r--pkgs/servers/nextcloud/default.nix4
-rw-r--r--pkgs/servers/nosql/eventstore/create-deps.sh34
-rw-r--r--pkgs/servers/nosql/eventstore/default.nix83
-rw-r--r--pkgs/servers/nosql/eventstore/deps.nix532
-rw-r--r--pkgs/shells/rush/default.nix11
-rw-r--r--pkgs/shells/rush/fix-format-security-error.patch12
-rw-r--r--pkgs/shells/rush/intprops.patch257
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/tools/X11/wpgtk/default.nix4
-rw-r--r--pkgs/tools/X11/xlayoutdisplay/default.nix10
-rw-r--r--pkgs/tools/admin/acme.sh/default.nix11
-rw-r--r--pkgs/tools/backup/dedup/default.nix29
-rw-r--r--pkgs/tools/backup/restic/default.nix4
-rw-r--r--pkgs/tools/compression/pigz/default.nix2
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/rmount/default.nix32
-rw-r--r--pkgs/tools/graphics/argyllcms/default.nix4
-rw-r--r--pkgs/tools/misc/mpdscribble/default.nix2
-rw-r--r--pkgs/tools/misc/pandoc-imagine/default.nix28
-rw-r--r--pkgs/tools/misc/pazi/cargo-lock.patch13
-rw-r--r--pkgs/tools/misc/pazi/default.nix24
-rw-r--r--pkgs/tools/misc/tmux/default.nix16
-rw-r--r--pkgs/tools/misc/you-get/default.nix4
-rw-r--r--pkgs/tools/misc/z-lua/default.nix28
-rw-r--r--pkgs/tools/networking/dd-agent/README.md17
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-agent-deps.nix (renamed from pkgs/tools/networking/dd-agent/deps.nix)34
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-agent.nix (renamed from pkgs/tools/networking/dd-agent/6.nix)6
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix14
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-process-agent.nix4
-rw-r--r--pkgs/tools/networking/httplz/cargo-lock.patch1211
-rw-r--r--pkgs/tools/networking/httplz/default.nix26
-rw-r--r--pkgs/tools/networking/socat/default.nix2
-rw-r--r--pkgs/tools/networking/socat/speed-type-fix.patch13
-rw-r--r--pkgs/tools/networking/wol/default.nix22
-rw-r--r--pkgs/tools/package-management/home-manager/default.nix12
-rw-r--r--pkgs/tools/security/rng-tools/default.nix9
-rw-r--r--pkgs/tools/system/augeas/default.nix4
-rw-r--r--pkgs/tools/system/journalwatch/default.nix20
-rw-r--r--pkgs/tools/system/ledmon/default.nix35
-rw-r--r--pkgs/tools/system/netdata/default.nix7
-rw-r--r--pkgs/tools/text/epubcheck/default.nix41
-rw-r--r--pkgs/tools/text/qgrep/default.nix27
-rw-r--r--pkgs/tools/text/sd/default.nix24
-rw-r--r--pkgs/top-level/all-packages.nix89
-rw-r--r--pkgs/top-level/lua-packages.nix60
-rw-r--r--pkgs/top-level/python-packages.nix4
217 files changed, 8528 insertions, 2192 deletions
diff --git a/doc/languages-frameworks/haskell.section.md b/doc/languages-frameworks/haskell.section.md
index b36cf67b51c0..d832716c0308 100644
--- a/doc/languages-frameworks/haskell.section.md
+++ b/doc/languages-frameworks/haskell.section.md
@@ -55,7 +55,7 @@ package `haskell-pandoc`, for example, installs both a library and an
 application. You can install and use Haskell executables just like any other
 program in Nixpkgs, but using Haskell libraries for development is a bit
 trickier and we'll address that subject in great detail in section [How to
-create a development environment].
+create a development environment](#how-to-create-a-development-environment).
 
 Attribute paths are deterministic inside of Nixpkgs, but the path necessary to
 reach Nixpkgs varies from system to system. We dodged that problem by giving
@@ -127,7 +127,7 @@ Also, the attributes `haskell.compiler.ghcXYC` and
 
 A simple development environment consists of a Haskell compiler and one or both
 of the tools `cabal-install` and `stack`. We saw in section
-[How to install Haskell packages] how you can install those programs into your
+[How to install Haskell packages](#how-to-install-haskell-packages) how you can install those programs into your
 user profile:
 ```shell
 nix-env -f "<nixpkgs>" -iA haskellPackages.ghc haskellPackages.cabal-install
@@ -162,7 +162,7 @@ nix-shell -p haskell.compiler.ghc784
 to bring GHC 7.8.4 into `$PATH`. Alternatively, you can use Stack instead of
 `nix-shell` directly to select compiler versions and other build tools
 per-project. It uses `nix-shell` under the hood when Nix support is turned on.
-See [How to build a Haskell project using Stack].
+See [How to build a Haskell project using Stack](#how-to-build-a-haskell-project-using-stack).
 
 If you're using `cabal-install`, re-running `cabal configure` inside the spawned
 shell switches your build to use that compiler instead. If you're working on
diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md
index 6b59b767652a..b72616a75658 100644
--- a/doc/languages-frameworks/python.section.md
+++ b/doc/languages-frameworks/python.section.md
@@ -205,7 +205,7 @@ buildPythonPackage rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ fridh ];
   };
-};
+}
 ```
 
 What happens here? The function `buildPythonPackage` is called and as argument
diff --git a/lib/licenses.nix b/lib/licenses.nix
index d285ba2ea0aa..53a84999bc83 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -145,6 +145,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
     free = false;
   };
 
+  cc-by-nc-30 = spdx {
+    spdxId = "CC-BY-NC-3.0";
+    fullName = "Creative Commons Attribution Non Commercial 3.0 Unported";
+    free = false;
+  };
+
   cc-by-nc-40 = spdx {
     spdxId = "CC-BY-NC-4.0";
     fullName = "Creative Commons Attribution Non Commercial 4.0 International";
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 4e9bdebe43f6..438349c6453e 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -197,6 +197,11 @@
     github = "aij";
     name = "Ivan Jager";
   };
+  ajs124 = {
+    email = "nix@ajs124.de";
+    github = "ajs124";
+    name = "Andreas Schrägle";
+  };
   ajgrf = {
     email = "a@ajgrf.com";
     github = "ajgrf";
@@ -578,6 +583,11 @@
     github = "bbarker";
     name = "Brandon Elam Barker";
   };
+  bbigras = {
+    email = "bigras.bruno@gmail.com";
+    github = "bbigras";
+    name = "Bruno Bigras";
+  };
   bcarrell = {
     email = "brandoncarrell@gmail.com";
     github = "bcarrell";
@@ -3218,6 +3228,11 @@
     github = "mogria";
     name = "Mogria";
   };
+  monsieurp = {
+    email = "monsieurp@gentoo.org";
+    github = "monsieurp";
+    name = "Patrice Clement";
+  };
   montag451 = {
     email = "montag451@laposte.net";
     github = "montag451";
diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv
index 035a0d891cca..8dc70b2469da 100644
--- a/maintainers/scripts/luarocks-packages.csv
+++ b/maintainers/scripts/luarocks-packages.csv
@@ -22,6 +22,8 @@ luaffi,,http://luarocks.org/dev,
 luuid,
 penlight,
 say,
+std__debug,std._debug,
+std_normalize,std.normalize,
 luv,
 luasystem,
 mediator_lua,,http://luarocks.org/manifests/teto
diff --git a/maintainers/scripts/update-luarocks-packages b/maintainers/scripts/update-luarocks-packages
index 4b94343233e4..aee74dae10cd 100755
--- a/maintainers/scripts/update-luarocks-packages
+++ b/maintainers/scripts/update-luarocks-packages
@@ -81,7 +81,7 @@ function convert_pkg () {
 		server=" --server=$3"
 	fi
 
-    version="${3:-}"
+    version="${4:-}"
 
     echo "looking at $lua_pkg_name (version $version) from server [$server]" >&2
     cmd="luarocks nix $server $lua_pkg_name $version"
diff --git a/nixos/doc/manual/configuration/x-windows.xml b/nixos/doc/manual/configuration/x-windows.xml
index 3bcb288b5ebf..798d1fbdfd85 100644
--- a/nixos/doc/manual/configuration/x-windows.xml
+++ b/nixos/doc/manual/configuration/x-windows.xml
@@ -67,6 +67,32 @@
 <xref linkend="opt-hardware.opengl.driSupport32Bit"/> = true;
 </programlisting>
  </para>
+ <simplesect xml:id="sec-x11-auto-login">
+  <title>Auto-login</title>
+  <para>
+  The x11 login screen can be skipped entirely, automatically logging you into
+  your window manager and desktop environment when you boot your computer.
+  </para>
+  <para>
+  This is especially helpful if you have disk encryption enabled. Since you
+  already have to provide a password to decrypt your disk, entering a second
+  password to login can be redundant.
+  </para>
+  <para>
+  To enable auto-login, you need to define your default window manager and
+  desktop environment. If you wanted no desktop environment and i3 as your your
+  window manager, you'd define:
+<programlisting>
+<xref linkend="opt-services.xserver.desktopManager.default"/> = "none";
+<xref linkend="opt-services.xserver.windowManager.default"/> = "i3";
+</programlisting>
+  And, finally, to enable auto-login for a user <literal>johndoe</literal>:
+<programlisting>
+<xref linkend="opt-services.xserver.displayManager.auto.enable"/> = true;
+<xref linkend="opt-services.xserver.displayManager.auto.user"/> = "johndoe";
+</programlisting>
+  </para>
+ </simplesect>
  <simplesect xml:id="sec-x11-graphics-cards-nvidia">
   <title>Proprietary NVIDIA drivers</title>
   <para>
diff --git a/nixos/doc/manual/release-notes/rl-1909.xml b/nixos/doc/manual/release-notes/rl-1909.xml
index 2dc2dc41ff24..b16297da7ce6 100644
--- a/nixos/doc/manual/release-notes/rl-1909.xml
+++ b/nixos/doc/manual/release-notes/rl-1909.xml
@@ -83,6 +83,14 @@
       The same applies to ModemManager where modem-manager.service is now called ModemManager.service again.
     </para>
    </listitem>
+   <listitem>
+    <para>
+      The <option>services.nzbget.configFile</option> and <option>services.nzbget.openFirewall</option>
+      options were removed as they are managed internally by the nzbget. The
+      <option>services.nzbget.dataDir</option> option hadn't actually been used by
+      the module for some time and so was removed as cleanup.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 
diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix
index 457faaa3c102..b4f03151cdc1 100644
--- a/nixos/modules/programs/sway.nix
+++ b/nixos/modules/programs/sway.nix
@@ -78,9 +78,9 @@ in {
     environment = {
       systemPackages = [ swayJoined ] ++ cfg.extraPackages;
       etc = {
-        "sway/config".source = "${swayPackage}/etc/sway/config";
-        #"sway/security.d".source = "${swayPackage}/etc/sway/security.d/";
-        #"sway/config.d".source = "${swayPackage}/etc/sway/config.d/";
+        "sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config";
+        #"sway/security.d".source = mkOptionDefault "${swayPackage}/etc/sway/security.d/";
+        #"sway/config.d".source = mkOptionDefault "${swayPackage}/etc/sway/config.d/";
       };
     };
     security.pam.services.swaylock = {};
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index f6c112d9cfab..70807ccf7cd8 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -45,6 +45,9 @@ with lib;
     (mkRemovedOptionModule [ "services" "neo4j" "port" ] "Use services.neo4j.http.listenAddress instead.")
     (mkRemovedOptionModule [ "services" "neo4j" "boltPort" ] "Use services.neo4j.bolt.listenAddress instead.")
     (mkRemovedOptionModule [ "services" "neo4j" "httpsPort" ] "Use services.neo4j.https.listenAddress instead.")
+    (mkRemovedOptionModule [ "services" "misc" "nzbget" "configFile" ] "The configuration of nzbget is now managed by users through the web interface.")
+    (mkRemovedOptionModule [ "services" "misc" "nzbget" "dataDir" ] "The data directory for nzbget is now /var/lib/nzbget.")
+    (mkRemovedOptionModule [ "services" "misc" "nzbget" "openFirewall" ] "The port used by nzbget is managed through the web interface so you should adjust your firewall rules accordingly.")
     (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "user" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a user setting.")
     (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "group" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a group setting.")
     (mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
diff --git a/nixos/modules/services/logging/journalwatch.nix b/nixos/modules/services/logging/journalwatch.nix
index d0824df38ae3..576c646c0f58 100644
--- a/nixos/modules/services/logging/journalwatch.nix
+++ b/nixos/modules/services/logging/journalwatch.nix
@@ -4,6 +4,8 @@ with lib;
 let
   cfg = config.services.journalwatch;
   user = "journalwatch";
+  # for journal access
+  group = "systemd-journal";
   dataDir = "/var/lib/${user}";
 
   journalwatchConfig = pkgs.writeText "config" (''
@@ -31,6 +33,17 @@ let
 
   '') filterBlocks);
 
+  # can't use joinSymlinks directly, because when we point $XDG_CONFIG_HOME
+  # to the /nix/store path, we still need the subdirectory "journalwatch" inside that
+  # to match journalwatch's expectations
+  journalwatchConfigDir = pkgs.runCommand "journalwatch-config"
+    { preferLocalBuild = true; allowSubstitutes = false; }
+    ''
+      mkdir -p $out/journalwatch
+      ln -sf ${journalwatchConfig} $out/journalwatch/config
+      ln -sf ${journalwatchPatterns} $out/journalwatch/patterns
+    '';
+
 
 in {
   options = {
@@ -199,33 +212,38 @@ in {
 
     users.users.${user} = {
       isSystemUser = true;
-      createHome = true;
       home = dataDir;
-      # for journal access
-      group = "systemd-journal";
+      group = group;
     };
 
+    systemd.tmpfiles.rules = [
+      # present since NixOS 19.09: remove old stateful symlink join directory,
+      # which has been replaced with the journalwatchConfigDir store path
+      "R ${dataDir}/config"
+    ];
+
     systemd.services.journalwatch = {
+
       environment = {
+        # journalwatch stores the last processed timpestamp here
+        # the share subdirectory is historic now that config home lives in /nix/store,
+        # but moving this in a backwards-compatible way is much more work than what's justified
+        # for cleaning that up.
         XDG_DATA_HOME = "${dataDir}/share";
-        XDG_CONFIG_HOME = "${dataDir}/config";
+        XDG_CONFIG_HOME = journalwatchConfigDir;
       };
       serviceConfig = {
         User = user;
+        Group = group;
         Type = "oneshot";
-        PermissionsStartOnly = true;
+        # requires a relative directory name to create beneath /var/lib
+        StateDirectory = user;
+        StateDirectoryMode = 0750;
         ExecStart = "${pkgs.python3Packages.journalwatch}/bin/journalwatch mail";
         # lowest CPU and IO priority, but both still in best-effort class to prevent starvation
         Nice=19;
         IOSchedulingPriority=7;
       };
-      preStart = ''
-        chown -R ${user}:systemd-journal ${dataDir}
-        chmod -R u+rwX,go-w ${dataDir}
-        mkdir -p ${dataDir}/config/journalwatch
-        ln -sf ${journalwatchConfig} ${dataDir}/config/journalwatch/config
-        ln -sf ${journalwatchPatterns} ${dataDir}/config/journalwatch/patterns
-      '';
     };
 
     systemd.timers.journalwatch = {
diff --git a/nixos/modules/services/misc/gitea.nix b/nixos/modules/services/misc/gitea.nix
index be4d38719785..6fd4183bd6b4 100644
--- a/nixos/modules/services/misc/gitea.nix
+++ b/nixos/modules/services/misc/gitea.nix
@@ -8,6 +8,7 @@ let
   pg = config.services.postgresql;
   useMysql = cfg.database.type == "mysql";
   usePostgresql = cfg.database.type == "postgres";
+  useSqlite = cfg.database.type == "sqlite3";
   configFile = pkgs.writeText "app.ini" ''
     APP_NAME = ${cfg.appName}
     RUN_USER = ${cfg.user}
@@ -15,11 +16,15 @@ let
 
     [database]
     DB_TYPE = ${cfg.database.type}
-    HOST = ${if cfg.database.socket != null then cfg.database.socket else cfg.database.host + ":" + toString cfg.database.port}
-    NAME = ${cfg.database.name}
-    USER = ${cfg.database.user}
-    PASSWD = #dbpass#
-    PATH = ${cfg.database.path}
+    ${optionalString (usePostgresql || useMysql) ''
+      HOST = ${if cfg.database.socket != null then cfg.database.socket else cfg.database.host + ":" + toString cfg.database.port}
+      NAME = ${cfg.database.name}
+      USER = ${cfg.database.user}
+      PASSWD = #dbpass#
+    ''}
+    ${optionalString useSqlite ''
+      PATH = ${cfg.database.path}
+    ''}
     ${optionalString usePostgresql ''
       SSL_MODE = disable
     ''}
diff --git a/nixos/modules/services/misc/nzbget.nix b/nixos/modules/services/misc/nzbget.nix
index 6ab98751c57b..eb7b4c05d82d 100644
--- a/nixos/modules/services/misc/nzbget.nix
+++ b/nixos/modules/services/misc/nzbget.nix
@@ -4,32 +4,34 @@ with lib;
 
 let
   cfg = config.services.nzbget;
-  dataDir = builtins.dirOf cfg.configFile;
-in {
-  options = {
-    services.nzbget = {
-      enable = mkEnableOption "NZBGet";
+  pkg = pkgs.nzbget;
+  stateDir = "/var/lib/nzbget";
+  configFile = "${stateDir}/nzbget.conf";
+  configOpts = concatStringsSep " " (mapAttrsToList (name: value: "-o ${name}=${value}") nixosOpts);
 
-      package = mkOption {
-        type = types.package;
-        default = pkgs.nzbget;
-        defaultText = "pkgs.nzbget";
-        description = "The NZBGet package to use";
-      };
+  nixosOpts = {
+    # allows nzbget to run as a "simple" service
+    OutputMode = "loggable";
+    # use journald for logging
+    WriteLog = "none";
+    ErrorTarget = "screen";
+    WarningTarget = "screen";
+    InfoTarget = "screen";
+    DetailTarget = "screen";
+    # required paths
+    ConfigTemplate = "${pkg}/share/nzbget/nzbget.conf";
+    WebDir = "${pkg}/share/nzbget/webui";
+    # nixos handles package updates
+    UpdateCheck = "none";
+  };
 
-      dataDir = mkOption {
-        type = types.str;
-        default = "/var/lib/nzbget";
-        description = "The directory where NZBGet stores its configuration files.";
-      };
+in
+{
+  # interface
 
-      openFirewall = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Open ports in the firewall for the NZBGet web interface
-        '';
-      };
+  options = {
+    services.nzbget = {
+      enable = mkEnableOption "NZBGet";
 
       user = mkOption {
         type = types.str;
@@ -42,15 +44,11 @@ in {
         default = "nzbget";
         description = "Group under which NZBGet runs";
       };
-
-      configFile = mkOption {
-        type = types.str;
-        default = "/var/lib/nzbget/nzbget.conf";
-        description = "Path for NZBGet's config file. (If this doesn't exist, the default config template is copied here.)";
-      };
     };
   };
 
+  # implementation
+
   config = mkIf cfg.enable {
     systemd.services.nzbget = {
       description = "NZBGet Daemon";
@@ -61,50 +59,26 @@ in {
         p7zip
       ];
       preStart = ''
-        cfgtemplate=${cfg.package}/share/nzbget/nzbget.conf
-        if [ ! -f ${cfg.configFile} ]; then
-          echo "${cfg.configFile} not found. Copying default config $cfgtemplate to ${cfg.configFile}"
-          install -m 0700 $cfgtemplate ${cfg.configFile}
-          echo "Setting temporary \$MAINDIR variable in default config required in order to allow nzbget to complete initial start"
-          echo "Remember to change this to a proper value once NZBGet startup has been completed"
-          sed -i -e 's/MainDir=.*/MainDir=\/tmp/g' ${cfg.configFile}
+        if [ ! -f ${configFile} ]; then
+          ${pkgs.coreutils}/bin/install -m 0700 ${pkg}/share/nzbget/nzbget.conf ${configFile}
         fi
       '';
 
-      script = ''
-        args="--daemon --configfile ${cfg.configFile}"
-        # The script in preStart (above) copies nzbget's config template to datadir on first run, containing paths that point to the nzbget derivation installed at the time.
-        # These paths break when nzbget is upgraded & the original derivation is garbage collected. If such broken paths are found in the config file, override them to point to
-        # the currently installed nzbget derivation.
-        cfgfallback () {
-          local hit=`grep -Po "(?<=^$1=).*+" "${cfg.configFile}" | sed 's/[ \t]*$//'` # Strip trailing whitespace
-          ( test $hit && test -e $hit ) || {
-            echo "In ${cfg.configFile}, valid $1 not found; falling back to $1=$2"
-            args+=" -o $1=$2"
-          }
-        }
-        cfgfallback ConfigTemplate ${cfg.package}/share/nzbget/nzbget.conf
-        cfgfallback WebDir ${cfg.package}/share/nzbget/webui
-        ${cfg.package}/bin/nzbget $args
-      '';
-
       serviceConfig = {
-        StateDirectory = dataDir;
-        StateDirectoryMode = "0700";
-        Type = "forking";
+        StateDirectory = "nzbget";
+        StateDirectoryMode = "0750";
         User = cfg.user;
         Group = cfg.group;
-        PermissionsStartOnly = "true";
+        UMask = "0002";
         Restart = "on-failure";
+        ExecStart = "${pkg}/bin/nzbget --server --configfile ${stateDir}/nzbget.conf ${configOpts}";
+        ExecStop = "${pkg}/bin/nzbget --quit";
       };
     };
 
-    networking.firewall = mkIf cfg.openFirewall {
-      allowedTCPPorts = [ 8989 ];
-    };
-
     users.users = mkIf (cfg.user == "nzbget") {
       nzbget = {
+        home = stateDir;
         group = cfg.group;
         uid = config.ids.uids.nzbget;
       };
diff --git a/nixos/modules/services/misc/packagekit.nix b/nixos/modules/services/misc/packagekit.nix
index bce21e8acff3..325c4e84e0d8 100644
--- a/nixos/modules/services/misc/packagekit.nix
+++ b/nixos/modules/services/misc/packagekit.nix
@@ -7,18 +7,19 @@ let
   cfg = config.services.packagekit;
 
   packagekitConf = ''
-[Daemon]
-KeepCache=false
-    '';
+    [Daemon]
+    DefaultBackend=${cfg.backend}
+    KeepCache=false
+  '';
 
   vendorConf = ''
-[PackagesNotFound]
-DefaultUrl=https://github.com/NixOS/nixpkgs
-CodecUrl=https://github.com/NixOS/nixpkgs
-HardwareUrl=https://github.com/NixOS/nixpkgs
-FontUrl=https://github.com/NixOS/nixpkgs
-MimeUrl=https://github.com/NixOS/nixpkgs
-      '';
+    [PackagesNotFound]
+    DefaultUrl=https://github.com/NixOS/nixpkgs
+    CodecUrl=https://github.com/NixOS/nixpkgs
+    HardwareUrl=https://github.com/NixOS/nixpkgs
+    FontUrl=https://github.com/NixOS/nixpkgs
+    MimeUrl=https://github.com/NixOS/nixpkgs
+  '';
 
 in
 
@@ -33,26 +34,32 @@ in
           installing software. Software utilizing PackageKit can install
           software regardless of the package manager.
         '';
-    };
 
+      # TODO: integrate with PolicyKit if the nix backend matures to the point
+      # where it will require elevated permissions
+      backend = mkOption {
+        type = types.enum [ "test_nop" ];
+        default = "test_nop";
+        description = ''
+          PackageKit supports multiple different backends and <literal>auto</literal> which
+          should do the right thing.
+          </para>
+          <para>
+          On NixOS however, we do not have a backend compatible with nix 2.0
+          (refer to <link xlink:href="https://github.com/NixOS/nix/issues/233">this issue</link> so we have to force
+          it to <literal>test_nop</literal> for now.
+        '';
+      };
+    };
   };
 
   config = mkIf cfg.enable {
 
-    services.dbus.packages = [ pkgs.packagekit ];
+    services.dbus.packages = with pkgs; [ packagekit ];
 
-    systemd.services.packagekit = {
-      description = "PackageKit Daemon";
-      wantedBy = [ "multi-user.target" ];
-      serviceConfig.ExecStart = "${pkgs.packagekit}/libexec/packagekitd";
-      serviceConfig.User = "root";
-      serviceConfig.BusName = "org.freedesktop.PackageKit";
-      serviceConfig.Type = "dbus";
-    };
+    systemd.packages = with pkgs; [ packagekit ];
 
     environment.etc."PackageKit/PackageKit.conf".text = packagekitConf;
     environment.etc."PackageKit/Vendor.conf".text = vendorConf;
-
   };
-
 }
diff --git a/nixos/modules/services/networking/ejabberd.nix b/nixos/modules/services/networking/ejabberd.nix
index ef5e2cee6f20..6a38f85c48a2 100644
--- a/nixos/modules/services/networking/ejabberd.nix
+++ b/nixos/modules/services/networking/ejabberd.nix
@@ -11,7 +11,7 @@ let
     ${cfg.ctlConfig}
   '';
 
-  ectl = ''${cfg.package}/bin/ejabberdctl ${if cfg.configFile == null then "" else "--config ${cfg.configFile}"} --ctl-config "${ctlcfg}" --spool "${cfg.spoolDir}" --logs "${cfg.logsDir}"'';
+  ectl = ''${cfg.package}/bin/ejabberdctl ${optionalString (cfg.configFile != null) "--config ${cfg.configFile}"} --ctl-config "${ctlcfg}" --spool "${cfg.spoolDir}" --logs "${cfg.logsDir}"'';
 
   dumps = lib.escapeShellArgs cfg.loadDumps;
 
@@ -111,28 +111,17 @@ in {
       description = "ejabberd server";
       wantedBy = [ "multi-user.target" ];
       after = [ "network.target" ];
-      path = [ pkgs.findutils pkgs.coreutils pkgs.runit ] ++ lib.optional cfg.imagemagick pkgs.imagemagick;
+      path = [ pkgs.findutils pkgs.coreutils ] ++ lib.optional cfg.imagemagick pkgs.imagemagick;
 
       serviceConfig = {
-        ExecStart = ''${ectl} foreground'';
-        # FIXME: runit is used for `chpst` -- can we get rid of this?
-        ExecStop = ''${pkgs.runit}/bin/chpst -u "${cfg.user}:${cfg.group}" ${ectl} stop'';
-        ExecReload = ''${pkgs.runit}/bin/chpst -u "${cfg.user}:${cfg.group}" ${ectl} reload_config'';
         User = cfg.user;
         Group = cfg.group;
-        PermissionsStartOnly = true;
+        ExecStart = "${ectl} foreground";
+        ExecStop = "${ectl} stop";
+        ExecReload = "${ectl} reload_config";
       };
 
       preStart = ''
-        mkdir -p -m750 "${cfg.logsDir}"
-        chown "${cfg.user}:${cfg.group}" "${cfg.logsDir}"
-
-        mkdir -p -m750 "/var/lock/ejabberdctl"
-        chown "${cfg.user}:${cfg.group}" "/var/lock/ejabberdctl"
-
-        mkdir -p -m750 "${cfg.spoolDir}"
-        chown -R "${cfg.user}:${cfg.group}" "${cfg.spoolDir}"
-
         if [ -z "$(ls -A '${cfg.spoolDir}')" ]; then
           touch "${cfg.spoolDir}/.firstRun"
         fi
@@ -149,13 +138,18 @@ in {
           for src in ${dumps}; do
             find "$src" -type f | while read dump; do
               echo "Loading configuration dump at $dump"
-              chpst -u "${cfg.user}:${cfg.group}" ${ectl} load "$dump"
+              ${ectl} load "$dump"
             done
           done
         fi
       '';
     };
 
+    systemd.tmpfiles.rules = [
+      "d '${cfg.logsDir}' 0750 ${cfg.user} ${cfg.group} -"
+      "d '${cfg.spoolDir}' 0700 ${cfg.user} ${cfg.group} -"
+    ];
+
     security.pam.services.ejabberd = {};
 
   };
diff --git a/nixos/modules/services/networking/zeronet.nix b/nixos/modules/services/networking/zeronet.nix
index 8b60799891ca..611a51c74ce2 100644
--- a/nixos/modules/services/networking/zeronet.nix
+++ b/nixos/modules/services/networking/zeronet.nix
@@ -5,13 +5,15 @@ let
 
   zConfFile = pkgs.writeTextFile {
     name = "zeronet.conf";
-    
+
     text = ''
       [global]
       data_dir = ${cfg.dataDir}
       log_dir = ${cfg.logDir}
     '' + lib.optionalString (cfg.port != null) ''
       ui_port = ${toString cfg.port}
+    '' + lib.optionalString (cfg.fileserverPort != null) ''
+      fileserver_port = ${toString cfg.fileserverPort}
     '' + lib.optionalString (cfg.torAlways) ''
       tor = always
     '' + cfg.extraConfig;
@@ -41,6 +43,15 @@ in with lib; {
       description = "Optional zeronet web UI port.";
     };
 
+    fileserverPort = mkOption {
+      # Not optional: when absent zeronet tries to write one to the
+      # read-only config file and crashes
+      type = types.int;
+      default = 12261;
+      example = 12261;
+      description = "Zeronet fileserver port.";
+    };
+
     tor = mkOption {
       type = types.bool;
       default = false;
diff --git a/nixos/modules/services/security/sks.nix b/nixos/modules/services/security/sks.nix
index 8136a5c763a9..1b7a2ad13980 100644
--- a/nixos/modules/services/security/sks.nix
+++ b/nixos/modules/services/security/sks.nix
@@ -116,20 +116,22 @@ in {
           ${lib.optionalString (cfg.webroot != null)
             "ln -sfT \"${cfg.webroot}\" web"}
           mkdir -p dump
-          # Check that both database configs are symlinks before overwriting them
-          if [ -e KDB/DB_CONFIG ] && [ ! -L KBD/DB_CONFIG ]; then
-            echo "KDB/DB_CONFIG exists but is not a symlink." >&2
-            exit 1
-          fi
-          if [ -e PTree/DB_CONFIG ] && [ ! -L PTree/DB_CONFIG ]; then
-            echo "PTree/DB_CONFIG exists but is not a symlink." >&2
-            exit 1
-          fi
-          ln -sf ${dbConfig} KDB/DB_CONFIG
-          ln -sf ${dbConfig} PTree/DB_CONFIG
           ${sksPkg}/bin/sks build dump/*.gpg -n 10 -cache 100 || true #*/
           ${sksPkg}/bin/sks cleandb || true
           ${sksPkg}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
+          # Check that both database configs are symlinks before overwriting them
+          # TODO: The initial build will be without DB_CONFIG, but this will
+          # hopefully not cause any significant problems. It might be better to
+          # create both directories manually but we have to check that this does
+          # not affect the initial build of the DB.
+          for CONFIG_FILE in KDB/DB_CONFIG PTree/DB_CONFIG; do
+            if [ -e $CONFIG_FILE ] && [ ! -L $CONFIG_FILE ]; then
+              echo "$CONFIG_FILE exists but is not a symlink." >&2
+              echo "Please remove $PWD/$CONFIG_FILE manually to continue." >&2
+              exit 1
+            fi
+            ln -sf ${dbConfig} $CONFIG_FILE
+          done
         '';
         serviceConfig = {
           WorkingDirectory = "~";
diff --git a/nixos/modules/services/system/earlyoom.nix b/nixos/modules/services/system/earlyoom.nix
index daa46838bfa8..39d1bf274bd2 100644
--- a/nixos/modules/services/system/earlyoom.nix
+++ b/nixos/modules/services/system/earlyoom.nix
@@ -63,6 +63,17 @@ in
           Enable debugging messages.
         '';
       };
+
+      notificationsCommand = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "sudo -u example_user DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus notify-send";
+        description = ''
+          Command used to send notifications.
+
+          See <link xlink:href="https://github.com/rfjakob/earlyoom#notifications">README</link> for details.
+        '';
+      };
     };
   };
 
@@ -88,7 +99,9 @@ in
           -s ${toString ecfg.freeSwapThreshold} \
           ${optionalString ecfg.useKernelOOMKiller "-k"} \
           ${optionalString ecfg.ignoreOOMScoreAdjust "-i"} \
-          ${optionalString ecfg.enableDebugInfo "-d"}
+          ${optionalString ecfg.enableDebugInfo "-d"} \
+          ${optionalString (ecfg.notificationsCommand != null)
+            "-N ${escapeShellArg ecfg.notificationsCommand}"}
         '';
       };
     };
diff --git a/nixos/modules/services/web-apps/documize.nix b/nixos/modules/services/web-apps/documize.nix
index 206617b0e5ac..37359869cb64 100644
--- a/nixos/modules/services/web-apps/documize.nix
+++ b/nixos/modules/services/web-apps/documize.nix
@@ -3,65 +3,136 @@
 with lib;
 
 let
-
   cfg = config.services.documize;
 
-in
+  mkParams = optional: concatMapStrings (name: let
+    predicate = optional -> cfg.${name} != null;
+    template = " -${name} '${toString cfg.${name}}'";
+  in optionalString predicate template);
 
-  {
-    options.services.documize = {
-      enable = mkEnableOption "Documize Wiki";
+in {
+  options.services.documize = {
+    enable = mkEnableOption "Documize Wiki";
 
-      offline = mkEnableOption "Documize offline mode";
+    package = mkOption {
+      type = types.package;
+      default = pkgs.documize-community;
+      description = ''
+        Which package to use for documize.
+      '';
+    };
 
-      package = mkOption {
-        default = pkgs.documize-community;
-        type = types.package;
-        description = ''
-          Which package to use for documize.
-        '';
-      };
+    salt = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      example = "3edIYV6c8B28b19fh";
+      description = ''
+        The salt string used to encode JWT tokens, if not set a random value will be generated.
+      '';
+    };
 
-      db = mkOption {
-        type = types.str;
-        example = "host=localhost port=5432 sslmode=disable user=admin password=secret dbname=documize";
-        description = ''
-          The DB connection string to use for the database.
-        '';
-      };
+    cert = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The <filename>cert.pem</filename> file used for https.
+      '';
+    };
 
-      dbtype = mkOption {
-        type = types.enum [ "postgresql" "percona" "mariadb" "mysql" ];
-        description = ''
-          Which database to use for storage.
-        '';
-      };
+    key = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The <filename>key.pem</filename> file used for https.
+      '';
+    };
 
-      port = mkOption {
-        type = types.port;
-        example = 3000;
-        description = ''
-          Which TCP port to serve.
-        '';
-      };
+    port = mkOption {
+      type = types.port;
+      default = 5001;
+      description = ''
+        The http/https port number.
+      '';
+    };
+
+    forcesslport = mkOption {
+      type = types.nullOr types.port;
+      default = null;
+      description = ''
+        Redirect given http port number to TLS.
+      '';
+    };
+
+    offline = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Set <literal>true</literal> for offline mode.
+      '';
+      apply = v: if true == v then 1 else 0;
+    };
+
+    dbtype = mkOption {
+      type = types.enum [ "mysql" "percona" "mariadb" "postgresql" "sqlserver" ];
+      default = "postgresql";
+      description = ''
+        Specify the database provider:
+        <simplelist type='inline'>
+          <member><literal>mysql</literal></member>
+          <member><literal>percona</literal></member>
+          <member><literal>mariadb</literal></member>
+          <member><literal>postgresql</literal></member>
+          <member><literal>sqlserver</literal></member>
+        </simplelist>
+      '';
     };
 
-    config = mkIf cfg.enable {
-      systemd.services.documize-server = {
-        wantedBy = [ "multi-user.target" ];
-
-        script = ''
-          ${cfg.package}/bin/documize \
-            -db "${cfg.db}" \
-            -dbtype ${cfg.dbtype} \
-            -port ${toString cfg.port} \
-            -offline ${if cfg.offline then "1" else "0"}
-        '';
-
-        serviceConfig = {
-          Restart = "always";
-          DynamicUser = "yes";
-        };
+    db = mkOption {
+      type = types.str;
+      description = ''
+        Database specific connection string for example:
+        <itemizedlist>
+        <listitem><para>MySQL/Percona/MariaDB:
+          <literal>user:password@tcp(host:3306)/documize</literal>
+        </para></listitem>
+        <listitem><para>MySQLv8+:
+          <literal>user:password@tcp(host:3306)/documize?allowNativePasswords=true</literal>
+        </para></listitem>
+        <listitem><para>PostgreSQL:
+          <literal>host=localhost port=5432 dbname=documize user=admin password=secret sslmode=disable</literal>
+        </para></listitem>
+        <listitem><para>MSSQL:
+          <literal>sqlserver://username:password@localhost:1433?database=Documize</literal> or
+          <literal>sqlserver://sa@localhost/SQLExpress?database=Documize</literal>
+        </para></listitem>
+        </itemizedlist>
+      '';
+    };
+
+    location = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        reserved
+      '';
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.documize-server = {
+      description = "Documize Wiki";
+      documentation = [ https://documize.com/ ];
+      wantedBy = [ "multi-user.target" ];
+
+      serviceConfig = {
+        ExecStart = concatStringsSep " " [
+          "${cfg.package}/bin/documize"
+          (mkParams false [ "db" "dbtype" "port" ])
+          (mkParams true [ "offline" "location" "forcesslport" "key" "cert" "salt" ])
+        ];
+        Restart = "always";
+        DynamicUser = "yes";
       };
     };
-  }
+  };
+}
diff --git a/nixos/modules/services/x11/window-managers/i3.nix b/nixos/modules/services/x11/window-managers/i3.nix
index c9b0669e7ba5..0ef55d5f2c03 100644
--- a/nixos/modules/services/x11/window-managers/i3.nix
+++ b/nixos/modules/services/x11/window-managers/i3.nix
@@ -60,12 +60,15 @@ in
         ${cfg.extraSessionCommands}
 
         ${cfg.package}/bin/i3 ${optionalString (cfg.configFile != null)
-          "-c \"${cfg.configFile}\""
+          "-c /etc/i3/config"
         } &
         waitPID=$!
       '';
     }];
     environment.systemPackages = [ cfg.package ] ++ cfg.extraPackages;
+    environment.etc."i3/config" = mkIf (cfg.configFile != null) {
+      source = cfg.configFile;
+    };
   };
 
   imports = [
diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index 397b308b7311..8ff00fa11dc7 100644
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -166,24 +166,6 @@ while (my ($unit, $state) = each %{$activePrev}) {
 
     if (-e $prevUnitFile && ($state->{state} eq "active" || $state->{state} eq "activating")) {
         if (! -e $newUnitFile || abs_path($newUnitFile) eq "/dev/null") {
-            # Ignore (i.e. never stop) these units:
-            if ($unit eq "system.slice") {
-                # TODO: This can be removed a few months after 18.09 is out
-                # (i.e. after everyone switched away from 18.03).
-                # Problem: Restarting (stopping) system.slice would not only
-                # stop X11 but also most system units/services. We obviously
-                # don't want this happening to users when they switch from 18.03
-                # to 18.09 or nixos-unstable.
-                # Reason: The following change in systemd:
-                # https://github.com/systemd/systemd/commit/d8e5a9338278d6602a0c552f01f298771a384798
-                # The commit adds system.slice to the perpetual units, which
-                # means removing the unit file and adding it to the source code.
-                # This is done so that system.slice can't be stopped anymore but
-                # in our case it ironically would cause this script to stop
-                # system.slice because the unit was removed (and an older
-                # systemd version is still running).
-                next;
-            }
             my $unitInfo = parseUnit($prevUnitFile);
             $unitsToStop{$unit} = 1 if boolIsTrue($unitInfo->{'X-StopOnRemoval'} // "yes");
         }
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index a1871ee5f903..5639b2668c30 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -72,6 +72,7 @@ in
   #ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
   ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
   ecryptfs = handleTest ./ecryptfs.nix {};
+  ejabberd = handleTest ./ejabberd.nix {};
   elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
   env = handleTest ./env.nix {};
   etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {};
@@ -172,6 +173,7 @@ in
   nix-ssh-serve = handleTest ./nix-ssh-serve.nix {};
   novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
   nsd = handleTest ./nsd.nix {};
+  nzbget = handleTest ./nzbget.nix {};
   openldap = handleTest ./openldap.nix {};
   opensmtpd = handleTest ./opensmtpd.nix {};
   openssh = handleTest ./openssh.nix {};
@@ -182,6 +184,7 @@ in
   osrm-backend = handleTest ./osrm-backend.nix {};
   ostree = handleTest ./ostree.nix {};
   overlayfs = handleTest ./overlayfs.nix {};
+  packagekit = handleTest ./packagekit.nix {};
   pam-oath-login = handleTest ./pam-oath-login.nix {};
   pam-u2f = handleTest ./pam-u2f.nix {};
   pantheon = handleTest ./pantheon.nix {};
diff --git a/nixos/tests/ejabberd.nix b/nixos/tests/ejabberd.nix
new file mode 100644
index 000000000000..0691dfe780d2
--- /dev/null
+++ b/nixos/tests/ejabberd.nix
@@ -0,0 +1,262 @@
+import ./make-test.nix ({ pkgs, ... }: {
+  name = "ejabberd";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ ajs124 ];
+  };
+  nodes = {
+    client = { nodes, pkgs, ... }: {
+      environment.systemPackages = [
+        (pkgs.callPackage ./xmpp-sendmessage.nix { connectTo = nodes.server.config.networking.primaryIPAddress; })
+      ];
+    };
+    server = { config, pkgs, ... }: {
+      networking.extraHosts = ''
+        ${config.networking.primaryIPAddress} example.com
+      '';
+
+      services.ejabberd = {
+        enable = true;
+        configFile = "/etc/ejabberd.yml";
+      };
+
+      environment.etc."ejabberd.yml" = {
+        user = "ejabberd";
+        mode = "0600";
+        text = ''
+          loglevel: 3
+
+          hosts:
+            - "example.com"
+
+          listen:
+            -
+              port: 5222
+              module: ejabberd_c2s
+              zlib: false
+              max_stanza_size: 65536
+              shaper: c2s_shaper
+              access: c2s
+            -
+              port: 5269
+              ip: "::"
+              module: ejabberd_s2s_in
+            -
+              port: 5347
+              ip: "127.0.0.1"
+              module: ejabberd_service
+              access: local
+              shaper_rule: fast
+              ip: "127.0.0.1"
+
+          ## Disabling digest-md5 SASL authentication. digest-md5 requires plain-text
+          ## password storage (see auth_password_format option).
+          disable_sasl_mechanisms: "digest-md5"
+
+          ## Outgoing S2S options
+          ## Preferred address families (which to try first) and connect timeout
+          ## in seconds.
+          outgoing_s2s_families:
+             - ipv4
+             - ipv6
+
+          ## auth_method: Method used to authenticate the users.
+          ## The default method is the internal.
+          ## If you want to use a different method,
+          ## comment this line and enable the correct ones.
+          auth_method: internal
+
+          ## Store the plain passwords or hashed for SCRAM:
+          ## auth_password_format: plain
+          auth_password_format: scram
+
+          ###'  TRAFFIC SHAPERS
+          shaper:
+            # in B/s
+            normal: 1000000
+            fast: 50000000
+
+          ## This option specifies the maximum number of elements in the queue
+          ## of the FSM. Refer to the documentation for details.
+          max_fsm_queue: 1000
+
+          ###'   ACCESS CONTROL LISTS
+          acl:
+            ## The 'admin' ACL grants administrative privileges to XMPP accounts.
+            ## You can put here as many accounts as you want.
+            admin:
+               user:
+                 - "root": "example.com"
+
+            ## Local users: don't modify this.
+            local:
+              user_regexp: ""
+
+            ## Loopback network
+            loopback:
+              ip:
+                - "127.0.0.0/8"
+                - "::1/128"
+                - "::FFFF:127.0.0.1/128"
+
+          ###'  SHAPER RULES
+          shaper_rules:
+            ## Maximum number of simultaneous sessions allowed for a single user:
+            max_user_sessions: 10
+            ## Maximum number of offline messages that users can have:
+            max_user_offline_messages:
+              - 5000: admin
+              - 1024
+            ## For C2S connections, all users except admins use the "normal" shaper
+            c2s_shaper:
+              - none: admin
+              - normal
+            ## All S2S connections use the "fast" shaper
+            s2s_shaper: fast
+
+          ###'  ACCESS RULES
+          access_rules:
+            ## This rule allows access only for local users:
+            local:
+              - allow: local
+            ## Only non-blocked users can use c2s connections:
+            c2s:
+              - deny: blocked
+              - allow
+            ## Only admins can send announcement messages:
+            announce:
+              - allow: admin
+            ## Only admins can use the configuration interface:
+            configure:
+              - allow: admin
+            ## Only accounts of the local ejabberd server can create rooms:
+            muc_create:
+              - allow: local
+            ## Only accounts on the local ejabberd server can create Pubsub nodes:
+            pubsub_createnode:
+              - allow: local
+            ## In-band registration allows registration of any possible username.
+            ## To disable in-band registration, replace 'allow' with 'deny'.
+            register:
+              - allow
+            ## Only allow to register from localhost
+            trusted_network:
+              - allow: loopback
+
+          ## ===============
+          ## API PERMISSIONS
+          ## ===============
+          ##
+          ## This section allows you to define who and using what method
+          ## can execute commands offered by ejabberd.
+          ##
+          ## By default "console commands" section allow executing all commands
+          ## issued using ejabberdctl command, and "admin access" section allows
+          ## users in admin acl that connect from 127.0.0.1 to  execute all
+          ## commands except start and stop with any available access method
+          ## (ejabberdctl, http-api, xmlrpc depending what is enabled on server).
+          ##
+          ## If you remove "console commands" there will be one added by
+          ## default allowing executing all commands, but if you just change
+          ## permissions in it, version from config file will be used instead
+          ## of default one.
+          ##
+          api_permissions:
+            "console commands":
+              from:
+                - ejabberd_ctl
+              who: all
+              what: "*"
+
+          language: "en"
+
+          ###'  MODULES
+          ## Modules enabled in all ejabberd virtual hosts.
+          modules:
+            mod_adhoc: {}
+            mod_announce: # recommends mod_adhoc
+              access: announce
+            mod_blocking: {} # requires mod_privacy
+            mod_caps: {}
+            mod_carboncopy: {}
+            mod_client_state: {}
+            mod_configure: {} # requires mod_adhoc
+            ## mod_delegation: {} # for xep0356
+            mod_echo: {}
+            #mod_irc:
+            #  host: "irc.@HOST@"
+            #  default_encoding: "utf-8"
+            ## mod_bosh: {}
+            ## mod_http_fileserver:
+            ##   docroot: "/var/www"
+            ##   accesslog: "/var/log/ejabberd/access.log"
+            #mod_http_upload:
+            #  thumbnail: false # otherwise needs the identify command from ImageMagick installed
+            #  put_url: "https://@HOST@:5444"
+            ##   # docroot: "@HOME@/upload"
+            #mod_http_upload_quota:
+            #  max_days: 14
+            mod_last: {}
+            ## XEP-0313: Message Archive Management
+            ## You might want to setup a SQL backend for MAM because the mnesia database is
+            ## limited to 2GB which might be exceeded on large servers
+            mod_mam: {}
+            mod_muc:
+              host: "muc.@HOST@"
+              access:
+                - allow
+              access_admin:
+                - allow: admin
+              access_create: muc_create
+              access_persistent: muc_create
+            mod_muc_admin: {}
+            mod_muc_log: {}
+            mod_offline:
+              access_max_user_messages: max_user_offline_messages
+            mod_ping: {}
+            ## mod_pres_counter:
+            ##   count: 5
+            ##   interval: 60
+            mod_privacy: {}
+            mod_private: {}
+            mod_roster:
+                versioning: true
+            mod_shared_roster: {}
+            mod_stats: {}
+            mod_time: {}
+            mod_vcard:
+              search: false
+            mod_vcard_xupdate: {}
+            ## Convert all avatars posted by Android clients from WebP to JPEG
+            mod_avatar: {}
+            #  convert:
+            #    webp: jpeg
+            mod_version: {}
+            mod_stream_mgmt: {}
+            ##   The module for S2S dialback (XEP-0220). Please note that you cannot
+            ##   rely solely on dialback if you want to federate with other servers,
+            ##   because a lot of servers have dialback disabled and instead rely on
+            ##   PKIX authentication. Make sure you have proper certificates installed
+            ##   and check your accessibility at https://check.messaging.one/
+            mod_s2s_dialback: {}
+            mod_pubsub:
+              plugins:
+                - "pep"
+            mod_push: {}
+        '';
+      };
+
+      networking.firewall.enable = false;
+    };
+  };
+
+  testScript = { nodes, ... }: ''
+    $server->waitForUnit('ejabberd.service');
+    $server->succeed('su ejabberd -s $(which ejabberdctl) status|grep started') =~ /ejabberd is running/;
+    $server->succeed('su ejabberd -s $(which ejabberdctl) register azurediamond example.com hunter2');
+    $server->succeed('su ejabberd -s $(which ejabberdctl) register cthon98 example.com nothunter2');
+    $server->fail('su ejabberd -s $(which ejabberdctl) register asdf wrong.domain');
+    $client->succeed('send-message');
+    $server->succeed('su ejabberd -s $(which ejabberdctl) unregister cthon98 example.com');
+    $server->succeed('su ejabberd -s $(which ejabberdctl) unregister azurediamond example.com');
+  '';
+})
diff --git a/nixos/tests/nzbget.nix b/nixos/tests/nzbget.nix
new file mode 100644
index 000000000000..042ccec98cf6
--- /dev/null
+++ b/nixos/tests/nzbget.nix
@@ -0,0 +1,26 @@
+import ./make-test.nix ({ pkgs, ...} : {
+  name = "nzbget";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ aanderse flokli ];
+  };
+
+  nodes = {
+    server = { ... }: {
+      services.nzbget.enable = true;
+
+      # hack, don't add (unfree) unrar to nzbget's path,
+      # so we can run this test in CI
+      systemd.services.nzbget.path = pkgs.stdenv.lib.mkForce [ pkgs.p7zip ];
+    };
+  };
+
+  testScript = ''
+    startAll;
+
+    $server->waitForUnit("nzbget.service");
+    $server->waitForUnit("network.target");
+    $server->waitForOpenPort(6789);
+    $server->succeed("curl -s -u nzbget:tegbzn6789 http://127.0.0.1:6789 | grep -q 'This file is part of nzbget'");
+    $server->succeed("${pkgs.nzbget}/bin/nzbget -n -o ControlIP=127.0.0.1 -o ControlPort=6789 -o ControlPassword=tegbzn6789 -V");
+  '';
+})
diff --git a/nixos/tests/packagekit.nix b/nixos/tests/packagekit.nix
new file mode 100644
index 000000000000..e2d68af661f8
--- /dev/null
+++ b/nixos/tests/packagekit.nix
@@ -0,0 +1,24 @@
+import ./make-test.nix ({ pkgs, ... }: {
+  name = "packagekit";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ peterhoeg ];
+  };
+
+  machine = { ... }: {
+    environment.systemPackages = with pkgs; [ dbus ];
+    services.packagekit = {
+      enable = true;
+      backend = "test_nop";
+    };
+  };
+
+  testScript = ''
+    startAll;
+
+    # send a dbus message to activate the service
+    $machine->succeed("dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.PackageKit /org/freedesktop/PackageKit org.freedesktop.DBus.Introspectable.Introspect");
+
+    # so now it should be running
+    $machine->succeed("systemctl is-active packagekit.service");
+  '';
+})
diff --git a/nixos/tests/prosody.nix b/nixos/tests/prosody.nix
index 61ae5bb38ed9..a39bae7898dc 100644
--- a/nixos/tests/prosody.nix
+++ b/nixos/tests/prosody.nix
@@ -9,70 +9,30 @@ import ./make-test.nix {
       extraConfig = ''
         storage = "sql"
       '';
+      virtualHosts.test = {
+        domain = "example.com";
+        enabled = true;
+      };
     };
-    environment.systemPackages = let
-      sendMessage = pkgs.writeScriptBin "send-message" ''
-        #!/usr/bin/env python3
-        # Based on the sleekxmpp send_client example, look there for more details:
-        # https://github.com/fritzy/SleekXMPP/blob/develop/examples/send_client.py
-        import sleekxmpp
-
-        class SendMsgBot(sleekxmpp.ClientXMPP):
-            """
-            A basic SleekXMPP bot that will log in, send a message,
-            and then log out.
-            """
-            def __init__(self, jid, password, recipient, message):
-                sleekxmpp.ClientXMPP.__init__(self, jid, password)
-
-                self.recipient = recipient
-                self.msg = message
-
-                self.add_event_handler("session_start", self.start, threaded=True)
-
-            def start(self, event):
-                self.send_presence()
-                self.get_roster()
-
-                self.send_message(mto=self.recipient,
-                                  mbody=self.msg,
-                                  mtype='chat')
-
-                self.disconnect(wait=True)
-
-
-        if __name__ == '__main__':
-            xmpp = SendMsgBot("test1@localhost", "test1", "test2@localhost", "Hello World!")
-            xmpp.register_plugin('xep_0030') # Service Discovery
-            xmpp.register_plugin('xep_0199') # XMPP Ping
-
-            # TODO: verify certificate
-            # If you want to verify the SSL certificates offered by a server:
-            # xmpp.ca_certs = "path/to/ca/cert"
-
-            if xmpp.connect(('localhost', 5222)):
-                xmpp.process(block=True)
-            else:
-                print("Unable to connect.")
-                sys.exit(1)
-      '';
-    in [ (pkgs.python3.withPackages (ps: [ ps.sleekxmpp ])) sendMessage ];
+    environment.systemPackages = [
+      (pkgs.callPackage ./xmpp-sendmessage.nix {})
+    ];
   };
 
   testScript = ''
     $machine->waitForUnit('prosody.service');
     $machine->succeed('prosodyctl status') =~ /Prosody is running/;
 
-    # set password to 'test' (it's asked twice)
-    $machine->succeed('yes test1 | prosodyctl adduser test1@localhost');
+    # set password to 'nothunter2' (it's asked twice)
+    $machine->succeed('yes nothunter2 | prosodyctl adduser cthon98@example.com');
     # set password to 'y'
-    $machine->succeed('yes | prosodyctl adduser test2@localhost');
-    # correct password to 'test2'
-    $machine->succeed('yes test2 | prosodyctl passwd test2@localhost');
+    $machine->succeed('yes | prosodyctl adduser azurediamond@example.com');
+    # correct password to 'hunter2'
+    $machine->succeed('yes hunter2 | prosodyctl passwd azurediamond@example.com');
 
     $machine->succeed("send-message");
 
-    $machine->succeed('prosodyctl deluser test1@localhost');
-    $machine->succeed('prosodyctl deluser test2@localhost');
+    $machine->succeed('prosodyctl deluser cthon98@example.com');
+    $machine->succeed('prosodyctl deluser azurediamond@example.com');
   '';
 }
diff --git a/nixos/tests/xmpp-sendmessage.nix b/nixos/tests/xmpp-sendmessage.nix
new file mode 100644
index 000000000000..2a075a018134
--- /dev/null
+++ b/nixos/tests/xmpp-sendmessage.nix
@@ -0,0 +1,46 @@
+{ writeScriptBin, python3, connectTo ? "localhost" }:
+writeScriptBin "send-message" ''
+  #!${(python3.withPackages (ps: [ ps.sleekxmpp ])).interpreter}
+  # Based on the sleekxmpp send_client example, look there for more details:
+  # https://github.com/fritzy/SleekXMPP/blob/develop/examples/send_client.py
+  import sleekxmpp
+
+  class SendMsgBot(sleekxmpp.ClientXMPP):
+      """
+      A basic SleekXMPP bot that will log in, send a message,
+      and then log out.
+      """
+      def __init__(self, jid, password, recipient, message):
+          sleekxmpp.ClientXMPP.__init__(self, jid, password)
+
+          self.recipient = recipient
+          self.msg = message
+
+          self.add_event_handler("session_start", self.start, threaded=True)
+
+      def start(self, event):
+          self.send_presence()
+          self.get_roster()
+
+          self.send_message(mto=self.recipient,
+                            mbody=self.msg,
+                            mtype='chat')
+
+          self.disconnect(wait=True)
+
+
+  if __name__ == '__main__':
+      xmpp = SendMsgBot("cthon98@example.com", "nothunter2", "azurediamond@example.com", "hey, if you type in your pw, it will show as stars")
+      xmpp.register_plugin('xep_0030') # Service Discovery
+      xmpp.register_plugin('xep_0199') # XMPP Ping
+
+      # TODO: verify certificate
+      # If you want to verify the SSL certificates offered by a server:
+      # xmpp.ca_certs = "path/to/ca/cert"
+
+      if xmpp.connect(('${connectTo}', 5222)):
+          xmpp.process(block=True)
+      else:
+          print("Unable to connect.")
+          sys.exit(1)
+''
diff --git a/pkgs/applications/audio/dragonfly-reverb/default.nix b/pkgs/applications/audio/dragonfly-reverb/default.nix
index 1710931aa229..494f512752bb 100644
--- a/pkgs/applications/audio/dragonfly-reverb/default.nix
+++ b/pkgs/applications/audio/dragonfly-reverb/default.nix
@@ -1,13 +1,14 @@
 { stdenv, fetchFromGitHub, libjack2, libGL, pkgconfig, xorg }:
 
 stdenv.mkDerivation rec {
-  name = "dragonfly-reverb-${src.rev}";
+  pname = "dragonfly-reverb";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "michaelwillis";
     repo = "dragonfly-reverb";
-    rev = "1.0.0";
-    sha256 = "05m4hd8lg0a7iiia6cbiw5qmc4p8vbkxp2qh7ywaabawiwa9r24x";
+    rev = version;
+    sha256 = "060g4ddh1z222n39wqj8jxj0zgmpjrgraw76qgyg6xkn15cn9q9y";
     fetchSubmodules = true;
   };
 
@@ -21,15 +22,20 @@ stdenv.mkDerivation rec {
   ];
 
   installPhase = ''
+    mkdir -p $out/bin
     mkdir -p $out/lib/lv2/
-    cp -a bin/DragonflyReverb.lv2/ $out/lib/lv2/
+    mkdir -p $out/lib/vst/
+    cd bin
+    cp -a DragonflyReverb        $out/bin/
+    cp -a DragonflyReverb-vst.so $out/lib/vst/
+    cp -a DragonflyReverb.lv2/   $out/lib/lv2/
   '';
 
   meta = with stdenv.lib; {
     homepage = https://github.com/michaelwillis/dragonfly-reverb;
     description = "A hall-style reverb based on freeverb3 algorithms";
     maintainers = [ maintainers.magnetophon ];
-    license = licenses.gpl2;
+    license = licenses.gpl3;
     platforms = ["x86_64-linux"];
   };
 }
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index 565c0b315226..2a790514447d 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -1,11 +1,27 @@
-{ stdenv, fetchgit, meson, ninja, pkgconfig
-, python3, gtk3, gst_all_1, libsecret, libsoup
-, appstream-glib, desktop-file-utils, totem-pl-parser
-, hicolor-icon-theme, gobject-introspection, wrapGAppsHook }:
+{ lib
+, fetchgit
+, meson
+, ninja
+, pkgconfig
+, python3
+, gtk3
+, gst_all_1
+, libsecret
+, libsoup
+, appstream-glib
+, desktop-file-utils
+, totem-pl-parser
+, hicolor-icon-theme
+, gobject-introspection
+, wrapGAppsHook
+, lastFMSupport ? true
+, wikipediaSupport ? true
+, youtubeSupport ? true, youtube-dl
+}:
 
 python3.pkgs.buildPythonApplication rec  {
   pname = "lollypop";
-  version = "1.0.5";
+  version = "1.0.7";
 
   format = "other";
   doCheck = false;
@@ -14,7 +30,7 @@ python3.pkgs.buildPythonApplication rec  {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "1p6glzvbbha3cvq462ymbn1q58skclfk469kk28cr1hlsf5x2pry";
+    sha256 = "0gdds4qssn32axsa5janqny5i4426azj5wyj6bzn026zs3z38svn";
   };
 
   nativeBuildInputs = [
@@ -37,10 +53,9 @@ python3.pkgs.buildPythonApplication rec  {
     gstreamer
     gtk3
     hicolor-icon-theme
-    libsecret
     libsoup
     totem-pl-parser
-  ];
+  ] ++ lib.optional lastFMSupport libsecret;
 
   propagatedBuildInputs = with python3.pkgs; [
     beautifulsoup4
@@ -49,8 +64,11 @@ python3.pkgs.buildPythonApplication rec  {
     pycairo
     pydbus
     pygobject3
-    pylast
-  ];
+  ]
+  ++ lib.optional lastFMSupport pylast
+  ++ lib.optional wikipediaSupport wikipedia
+  ++ lib.optional youtubeSupport youtube-dl
+  ;
 
   postPatch = ''
     chmod +x meson_post_install.py
@@ -62,7 +80,7 @@ python3.pkgs.buildPythonApplication rec  {
     patchPythonScript "$out/libexec/lollypop-sp"
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A modern music player for GNOME";
     homepage = https://wiki.gnome.org/Apps/Lollypop;
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/audio/soundkonverter/default.nix b/pkgs/applications/audio/soundkonverter/default.nix
new file mode 100644
index 000000000000..df5806b50b9e
--- /dev/null
+++ b/pkgs/applications/audio/soundkonverter/default.nix
@@ -0,0 +1,97 @@
+# currently needs to be installed into an environment and needs a `kbuildsycoca5` run afterwards for plugin discovery
+{
+  mkDerivation, fetchFromGitHub, lib, makeWrapper,
+  cmake, extra-cmake-modules, pkgconfig,
+  libkcddb, kconfig, kconfigwidgets, ki18n, kdelibs4support, kio, solid, kwidgetsaddons, kxmlgui,
+  qtbase, phonon, 
+  taglib,
+  # optional backends
+  withCD ? true, cdparanoia,
+  withFlac ? true, flac,
+  withMidi ? true, fluidsynth, timidity,
+  withSpeex ? false, speex,
+  withVorbis ? true, vorbis-tools, vorbisgain,
+  withMp3 ? true, lame, mp3gain,
+  withAac ? true, faad2, aacgain,
+  withUnfreeAac ? false, faac,
+  withFfmpeg ? true, ffmpeg-full,
+  withMplayer ? false, mplayer,
+  withSox ? true, sox,
+  withOpus ? true, opusTools,
+  withTwolame ? false, twolame,
+  withApe ? false, mac,
+  withWavpack ? false, wavpack
+}:
+
+assert withAac -> withFfmpeg || withUnfreeAac;
+assert withUnfreeAac -> withAac;
+
+let runtimeDeps = []
+    ++ lib.optional withCD cdparanoia
+    ++ lib.optional withFlac flac
+    ++ lib.optional withSpeex speex
+    ++ lib.optional withFfmpeg ffmpeg-full
+    ++ lib.optional withMplayer mplayer
+    ++ lib.optional withSox sox
+    ++ lib.optional withOpus opusTools
+    ++ lib.optional withTwolame twolame
+    ++ lib.optional withApe mac
+    ++ lib.optional withWavpack wavpack
+    ++ lib.optional withUnfreeAac faac
+    ++ lib.optionals withMidi [ fluidsynth timidity ]
+    ++ lib.optionals withVorbis [ vorbis-tools vorbisgain ]
+    ++ lib.optionals withMp3 [ lame mp3gain ]
+    ++ lib.optionals withAac [  faad2 aacgain ];
+
+in 
+mkDerivation rec {
+  name = "soundkonverter";
+  version = "3.0.1";
+  src = fetchFromGitHub {
+    owner = "dfaust";
+    repo = "soundkonverter";
+    rev = "v" + version;
+    sha256 = "1g2khdsjmsi4zzynkq8chd11cbdhjzmi37r9jhpal0b730nq9x7l";
+  };
+  enableParallelBuilding = true;
+  nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig kdelibs4support makeWrapper ];
+  propagatedBuildInputs = [ libkcddb kconfig kconfigwidgets ki18n kdelibs4support kio solid kwidgetsaddons kxmlgui qtbase phonon];
+  buildInputs = [ taglib ] ++ runtimeDeps;
+  # encoder plugins go to ${out}/lib so they're found by kbuildsycoca5
+  cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX=$out" ]; 
+  sourceRoot = "source/src";
+  # add runt-time deps to PATH
+  postInstall = ''
+    wrapProgram $out/bin/soundkonverter --prefix PATH : ${lib.makeBinPath runtimeDeps }
+    '';
+  meta = {
+    license = lib.licenses.gpl2;
+    maintainers = [ lib.maintainers.schmittlauch ];
+    description = "Audio file converter, CD ripper and Replay Gain tool";
+    longDescription = ''
+      soundKonverter is a frontend to various audio converters.
+      
+      The key features are:
+      - Audio file conversion
+      - Replay Gain calculation
+      - CD ripping
+      
+      soundKonverter supports reading and writing tags and covers for many formats, so they are preserved when converting files.
+      
+      It is extendable by plugins and supports many backends including:
+      
+      - Audio file conversion
+        Backends: faac, faad, ffmpeg, flac, lame, mplayer, neroaac, timidity, fluidsynth, vorbistools, opustools, sox, twolame,
+        flake, mac, shorten, wavpack and speex
+        Formats: ogg vorbis, mp3, flac, wma, aac, ac3, opus, alac, mp2, als, amr nb, amr wb, ape, speex, m4a, mp1, musepack shorten,
+        tta, wavpack, ra, midi, mod, 3gp, rm, avi, mkv, ogv, mpeg, mov, mp4, flv, wmv and rv
+      
+      - Replay Gain calculation
+        Backends: aacgain, metaflac, mp3gain, vorbisgain, wvgain, mpcgain
+        Formats: aac, mp3, flac, ogg vorbis, wavpack, musepack
+      
+      - CD ripping
+        Backends: cdparanoia
+      '';
+  };
+}
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index a7c2c3da444c..714daa3649c5 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -14,9 +14,9 @@ let
   };
   betaVersion = stableVersion;
   latestVersion = { # canary & dev
-    version = "3.5.0.11"; # "Android Studio 3.5 Canary 12"
-    build = "191.5471097";
-    sha256Hash = "1dz9iy8f12fzqp8wv9c5v01d33djy97aha8rxxp18vi6myak42ca";
+    version = "3.5.0.12"; # "Android Studio 3.5 Canary 13"
+    build = "191.5487692";
+    sha256Hash = "0iwd2qa551rs9b0w4rs7wmzdbh3r4j76xvs815l6i5pilk0s47gz";
   };
 in rec {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index 584c12d5ff63..ba3958a43d19 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -250,12 +250,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.2"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1rlqnnv6b7lg18si31zd97ixnslwp8j6imkkjq0j5n9sydsr8xzj"; /* updated by script */
+      sha256 = "0x4fmbarckw60issrwk3cd65x5xjkxwrw4xq1qgfzmxfqhzbzvz8"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -263,12 +263,12 @@ in
 
   datagrip = buildDataGrip rec {
     name = "datagrip-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "10sw41kkf2k60xjpwgc73i182y7px3dmqz2awnrl4gffdb9jgzmy"; /* updated by script */
+      sha256 = "0w6hasb8vcbxdqmb0pngwr2jg0w14prqb4v7blraa5jf1xyyiayd"; /* updated by script */
     };
     wmClass = "jetbrains-datagrip";
     update-channel = "DataGrip RELEASE";
@@ -276,12 +276,12 @@ in
 
   goland = buildGoland rec {
     name = "goland-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Up and Coming Go IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/go/${name}.tar.gz";
-      sha256 = "0aq3x5aixh86h1zvvwrbr2f1nnqdpfvlsadd2ckmf5s5kghvg5r9"; /* updated by script */
+      sha256 = "0b8msq0raczm657rhbyqi702zv4zs66yd6dcm7s0l54hnas5ia9r"; /* updated by script */
     };
     wmClass = "jetbrains-goland";
     update-channel = "GoLand RELEASE";
@@ -289,12 +289,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "0zyw88dd2v4igp080l99cyq6h0bmyri8a50fjp69ripiz9qaawx1"; /* updated by script */
+      sha256 = "0xbdn1q0a2ksb7z26n2l889m6z0lh3b45clya7rdfl4jv2gkiaaq"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -302,12 +302,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
-      sha256 = "0fsdf090cwwrsq3azknc9rpwwsl71cvsx4flivnqwfakb6rh4f1j"; /* updated by script */
+      sha256 = "1pglvklbj4w6pmc7ffbjwwfqh7fad54yfx87m9plqk80rmpjzxfi"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -315,12 +315,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "1bv2a16wsc9j82w14qfrfjgszwkihk0jwp8bp8z9618q04c8vmgf"; /* updated by script */
+      sha256 = "100whawwj1kiq870dsmkx33qv5ygjpr9977jkbavhqjnc1zhwl1r"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PhpStorm RELEASE";
@@ -328,12 +328,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "173qm2g6pjga2jlw8sa59bxw543b56r56ikqwv2wp0jq5z61v26f"; /* updated by script */
+      sha256 = "1zz579kmskvgsjv2lriglxkdlx33mmfv2liw1b9iilspga59izld"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm RELEASE";
@@ -341,12 +341,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "0gjphdzdxgvflkzaakf3c1wnig86lxhxyx6xk6rg40yj6f2hzi47"; /* updated by script */
+      sha256 = "0hcij77j4zb1y1vls5nvxq3lmqrbppm3ml0p9nagbjipy2rmp838"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm RELEASE";
@@ -367,12 +367,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2018.3.5"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "1gykag8fsfqxv0d6fipn18hhpdvn4qxva2kkb0v330vp73wm2i2w"; /* updated by script */
+      sha256 = "0asg0x8xcjyydy0p1fdlhpcwfckdf9719460pv5zwc7yfd8z61yd"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "RubyMine RELEASE";
@@ -380,12 +380,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2019.1"; /* updated by script */
+    version = "2019.1.1"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "0r6a9g8ydnxf805gn2wajnwkcyfn0xksbsrs8wq6j4ghipkhscxj"; /* updated by script */
+      sha256 = "05lrsjk45l4xqjyinsqlnfr36qnv1nrgg2sskgi0bfjbdrfv9xrv"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WebStorm RELEASE";
diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix
index 719491ac2b08..7d201cc0e593 100644
--- a/pkgs/applications/gis/qgis/unwrapped.nix
+++ b/pkgs/applications/gis/qgis/unwrapped.nix
@@ -10,12 +10,12 @@ let
     [ qscintilla-qt5 gdal jinja2 numpy psycopg2
       chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
 in stdenv.mkDerivation rec {
-  version = "3.4.6";
+  version = "3.4.7";
   name = "qgis-unwrapped-${version}";
 
   src = fetchurl {
     url = "http://qgis.org/downloads/qgis-${version}.tar.bz2";
-    sha256 = "1skdimcbcv41hi4ii7iq8ka29k2zizzqv04fwidzfbxqclz7300h";
+    sha256 = "15w2cb5ac0n3g3jbnbk6qyqs7kx3y64zbyvcsw09p0dn9rnw4hdr";
   };
 
   passthru = {
diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix
index 6362d6c06fe9..c3177a8c7aa3 100644
--- a/pkgs/applications/graphics/freecad/default.nix
+++ b/pkgs/applications/graphics/freecad/default.nix
@@ -9,11 +9,11 @@ let
   pythonPackages = python27Packages;
 in stdenv.mkDerivation rec {
   name = "freecad-${version}";
-  version = "0.17";
+  version = "0.18.1";
 
   src = fetchurl {
     url = "https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz";
-    sha256 = "1yv6abdzlpn4wxy315943xwrnbywxqfgkjib37qwfvbb8y9p60df";
+    sha256 = "0lamrs84zv99v4z7yi6d9amjmnh7r6frairc2aajgfic380720bc";
   };
 
   buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts
@@ -22,14 +22,6 @@ in stdenv.mkDerivation rec {
     matplotlib pycollada pyside pysideShiboken pysideTools pivy python boost
   ]);
 
-  patches = [
-    # Fix for finding boost_python. Boost >= 1.67.0 appends the Python version.
-    (fetchpatch {
-      url = https://github.com/FreeCAD/FreeCAD/commit/3c9e6b038ed544e446c61695dab62f83e781a28a.patch;
-      sha256 = "0f09qywzn0y41hylizb5g8jy74fi53iqmvqr5zznaz16wpw4hqbp";
-    })
-  ];
-
   enableParallelBuilding = true;
 
   # This should work on both x86_64, and i686 linux
@@ -45,40 +37,8 @@ in stdenv.mkDerivation rec {
   postInstall = ''
     wrapProgram $out/bin/FreeCAD --prefix PYTHONPATH : $PYTHONPATH \
       --set COIN_GL_NO_CURRENT_CONTEXT_CHECK 1
-
-    mkdir -p $out/share/mime/packages
-    cat << EOF > $out/share/mime/packages/freecad.xml
-    <?xml version="1.0" encoding="UTF-8"?>
-    <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
-      <mime-type type="application/x-extension-fcstd">
-        <sub-class-of type="application/zip"/>
-        <comment>FreeCAD Document</comment>
-        <glob pattern="*.fcstd"/>
-      </mime-type>
-    </mime-info>
-    EOF
-
-    mkdir -p $out/share/applications
-    cp $desktopItem/share/applications/* $out/share/applications/
-    for entry in $out/share/applications/*.desktop; do
-      substituteAllInPlace $entry
-    done
   '';
-
-  desktopItem = makeDesktopItem {
-    name = "freecad";
-    desktopName = "FreeCAD";
-    genericName = "CAD Application";
-    comment = meta.description;
-    exec = "@out@/bin/FreeCAD %F";
-    categories = "Science;Education;Engineering;";
-    startupNotify = "true";
-    mimeType = "application/x-extension-fcstd;";
-    extraEntries = ''
-      Path=@out@/share/freecad
-    '';
-  };
-
+    
   meta = with stdenv.lib; {
     description = "General purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler";
     homepage = https://www.freecadweb.org/;
diff --git a/pkgs/applications/graphics/goxel/default.nix b/pkgs/applications/graphics/goxel/default.nix
index 371abafbe72d..488c3eacc019 100644
--- a/pkgs/applications/graphics/goxel/default.nix
+++ b/pkgs/applications/graphics/goxel/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "Open Source 3D voxel editor";
     homepage = https://guillaumechereau.github.io/goxel/;
     license = licenses.gpl3;
-    platforms = [ "x86_64-linux" ]; # see https://github.com/guillaumechereau/goxel/issues/125
+    platforms = platforms.linux;
     maintainers = with maintainers; [ tilpner ];
   };
 }
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 626b62ed7d0c..2552cf18f078 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   name = "dbeaver-ce-${version}";
-  version = "6.0.2";
+  version = "6.0.3";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "12zqz9zi4jryvlk1rjxfl4jdj4a6n00018yyk95glfdrxda2xyib";
+    sha256 = "0pcf8p9nmbj6kf32zrjjrfyxb07x37h56zm3s5gdf1jk2hvrarvl";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/evopedia/default.nix b/pkgs/applications/misc/evopedia/default.nix
deleted file mode 100644
index 69767c11d6aa..000000000000
--- a/pkgs/applications/misc/evopedia/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, fetchFromGitHub, bzip2, qt4, qmake4Hook, libX11 }:
-
-stdenv.mkDerivation rec {
-  name = "evopedia-${version}";
-  version = "0.4.4";
-
-  src = fetchFromGitHub {
-    owner = "evopedia";
-    repo = "evopedia_qt";
-    rev = "v${version}";
-    sha256 = "0snp5qiywj306kfaywvkl7j34fivgxcb8dids1lzmbqq5xcpqqvc";
-  };
-
-  buildInputs = [ bzip2 qt4 libX11 ];
-  nativeBuildInputs = [ qmake4Hook ];
-
-  postInstall = ''
-    # Patch the `evopedia.desktop' file.
-    substituteInPlace $out/share/applications/evopedia.desktop \
-        --replace '/usr/bin/evopedia' $out/bin/evopedia
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Offline Wikipedia Viewer";
-    homepage = http://www.evopedia.info;
-    license = licenses.gpl3Plus;
-    maintainers = [ maintainers.qknight ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/applications/misc/font-manager/correct-post-install.patch b/pkgs/applications/misc/font-manager/correct-post-install.patch
deleted file mode 100644
index 47e9800d2657..000000000000
--- a/pkgs/applications/misc/font-manager/correct-post-install.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/meson_post_install.py b/meson_post_install.py
-index 8d00e70..c28d19e 100644
---- a/meson_post_install.py
-+++ b/meson_post_install.py
-@@ -7,7 +7,7 @@ prefix = environ['MESON_INSTALL_PREFIX']
- data_dir = path.join(prefix, 'share')
- schema_dir = path.join(data_dir, 'glib-2.0', 'schemas')
- 
--if not environ['DESTDIR']:
-+if not environ.get('DESTDIR'):
-     print('Compiling gsettings schemas...')
-     call(['glib-compile-schemas', schema_dir])
-     print('Updating desktop database...')
diff --git a/pkgs/applications/misc/font-manager/default.nix b/pkgs/applications/misc/font-manager/default.nix
index f8a02d2f78c6..f00d6cfc60da 100644
--- a/pkgs/applications/misc/font-manager/default.nix
+++ b/pkgs/applications/misc/font-manager/default.nix
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "FontManager";
     repo = "master";
-    rev = "cc057f3e93f5b1033b04decee03cdb44177e48b3";
-    sha256 = "1xg80bi2465p5r8zfmb34iga9yqs3is1k4f13hw0ligvhb58gas0";
+    rev = version;
+    sha256 = "16hma8rrkam6ngn5vbdaryn31vdixvii6920g9z928gylz9xkd3g";
   };
 
   nativeBuildInputs = [
@@ -38,10 +38,6 @@ stdenv.mkDerivation rec {
     gnome3.adwaita-icon-theme
   ];
 
-  patches = [
-   ./correct-post-install.patch
-  ];
-
   mesonFlags = [
     "-Ddisable_pycompile=true"
   ];
diff --git a/pkgs/applications/misc/guake/default.nix b/pkgs/applications/misc/guake/default.nix
index 1e2c57a34691..0d7f460fb062 100644
--- a/pkgs/applications/misc/guake/default.nix
+++ b/pkgs/applications/misc/guake/default.nix
@@ -2,7 +2,7 @@
 , gtk3, keybinder3, libnotify, libutempter, vte }:
 
 let
-  version = "3.4.0";
+  version = "3.5.0";
 in python3.pkgs.buildPythonApplication rec {
   name = "guake-${version}";
   format = "other";
@@ -11,7 +11,7 @@ in python3.pkgs.buildPythonApplication rec {
     owner = "Guake";
     repo = "guake";
     rev = version;
-    sha256 = "1j38z968ha8ij6wrgbwvr8ad930nvhybm9g7pf4s4zv6d3vln0vm";
+    sha256 = "0fz0gciw5fpxrp6yyji27l7q8c0r9ljsq6vw584mr70bcl1gzjqx";
   };
 
   # Strict deps breaks guake
@@ -29,12 +29,6 @@ in python3.pkgs.buildPythonApplication rec {
 
   PBR_VERSION = version; # pbr needs either .git directory, sdist, or env var
 
-  postPatch = ''
-    # unnecessary /usr/bin/env in Makefile
-    # https://github.com/Guake/guake/pull/1285
-    substituteInPlace "Makefile" --replace "/usr/bin/env python3" "python3"
-  '';
-
   makeFlags = [
     "prefix=$(out)"
   ];
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index f9f67b6cdaae..0bb3f15fdc18 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   name = "hugo-${version}";
-  version = "0.55.3";
+  version = "0.55.4";
 
   goPackagePath = "github.com/gohugoio/hugo";
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     owner  = "gohugoio";
     repo   = "hugo";
     rev    = "v${version}";
-    sha256 = "0hpyaxfjgfm04fcw3qha2rdx93fr326mw5aiw95vnj5i0x1xbs3x";
+    sha256 = "0hbkl8dhhdic0admrkvlp1h1bmfrrwfnvipx27clyk0f88jcvb7y";
   };
 
   modSha256 = "0yrwkaaasj9ihjjfbywnzkppix1y2znagg3dkyikk21sl5n0nz23";
diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix
index 615ca619aec7..57f564fdc667 100644
--- a/pkgs/applications/misc/joplin-desktop/default.nix
+++ b/pkgs/applications/misc/joplin-desktop/default.nix
@@ -1,31 +1,26 @@
-{ stdenv, appimage-run, fetchurl, gsettings-desktop-schemas, gtk3, gobject-introspection, wrapGAppsHook }:
+{ appimageTools, fetchurl, lib, gsettings-desktop-schemas, gtk3 }:
 
 let
+  pname = "joplin-desktop";
   version = "1.0.143";
-  sha256 = "1waglwxpr18a07m7ix9al6ac4hrdqzzqmy1qgp45b922nbkw9g10";
-in
-  stdenv.mkDerivation rec {
-  name = "joplin-${version}";
-
+in appimageTools.wrapType2 rec {
+  name = "${pname}-${version}";
   src = fetchurl {
     url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}-x86_64.AppImage";
-    inherit sha256;
+    sha256 = "1waglwxpr18a07m7ix9al6ac4hrdqzzqmy1qgp45b922nbkw9g10";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
-  buildInputs = [ appimage-run gtk3 gsettings-desktop-schemas gobject-introspection ];
-
-  unpackPhase = ":";
 
-  installPhase = ''
-    mkdir -p $out/{bin,share}
-    cp $src $out/share/joplin.AppImage
-    echo "#!/bin/sh" > $out/bin/joplin-desktop
-    echo "${appimage-run}/bin/appimage-run $out/share/joplin.AppImage" >> $out/bin/joplin-desktop
-    chmod +x $out/bin/joplin-desktop $out/share/joplin.AppImage
+  profile = ''
+    export LC_ALL=C.UTF-8
+    export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
   '';
 
-  meta = with stdenv.lib; {
+  multiPkgs = null; # no 32bit needed
+  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
+  extraInstallCommands = "mv $out/bin/{${name},${pname}}";
+
+  meta = with lib; {
     description = "An open source note taking and to-do application with synchronisation capabilities";
     longDescription = ''
       Joplin is a free, open source note taking and to-do application, which can
diff --git a/pkgs/applications/misc/kanboard/default.nix b/pkgs/applications/misc/kanboard/default.nix
index 7995c8875b82..ecfcc7717281 100644
--- a/pkgs/applications/misc/kanboard/default.nix
+++ b/pkgs/applications/misc/kanboard/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, fetchzip }:
+{ stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   name = "kanboard-${version}";
-  version = "1.0.48";
+  version = "1.2.9";
 
-  src = fetchzip {
-    url = "https://github.com/kanboard/kanboard/releases/download/v${version}/${name}.zip";
-    sha256 = "0ipyijlfcnfqlz9n20wcnaf9pw404a675x404pm9h2n4ld8x6m5v";
+  src = fetchFromGitHub {
+    owner = "kanboard";
+    repo = "kanboard";
+    rev = "v${version}";
+    sha256 = "1hdr95cpxgdzrzhffs63gdl0g7122ma2zg8bkqwp42p5xphx0xan";
   };
 
   dontBuild = true;
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix
index d15926ba6fb7..b92a7ac476c9 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/misc/kdeconnect/default.nix
@@ -20,12 +20,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kdeconnect";
-  version = "1.3.3";
-  name = "${pname}-${version}";
+  version = "1.3.4";
 
   src = fetchurl {
-    url = "mirror://kde/stable/${pname}/${version}/src/${pname}-kde-${version}.tar.xz";
-    sha256 = "1vac0mw1myrswr61adv7lgif0c4wzw5wnsj0sqxj6msp4l4pfgsg";
+    url = "mirror://kde/stable/${pname}/${version}/${pname}-kde-${version}.tar.xz";
+    sha256 = "12ijvp86wm6k81dggypxh3c0dmwg5mczxy43ra8rgv63aavmf42h";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/librecad/default.nix b/pkgs/applications/misc/librecad/default.nix
index ca9a90777e33..c049ed2374fd 100644
--- a/pkgs/applications/misc/librecad/default.nix
+++ b/pkgs/applications/misc/librecad/default.nix
@@ -18,8 +18,11 @@ stdenv.mkDerivation rec {
   qmakeFlags = [ "MUPARSER_DIR=${muparser}" "BOOST_DIR=${boost.dev}" ];
 
   installPhase = ''
-    mkdir -p $out/bin $out/share
-    cp -R unix/librecad $out/bin
+    install -m 555 -D unix/librecad $out/bin/librecad
+    install -m 444 -D desktop/librecad.desktop $out/share/applications/librecad.desktop
+    install -m 444 -D desktop/librecad.sharedmimeinfo $out/share/mime/packages/librecad.xml
+    install -m 444 -D desktop/graphics_icons_and_splash/Icon\ LibreCAD/Icon_Librecad.svg \
+      $out/share/icons/hicolor/scalable/apps/librecad.svg
     cp -R unix/resources $out/share/librecad
   '';
 
diff --git a/pkgs/applications/misc/notable/default.nix b/pkgs/applications/misc/notable/default.nix
new file mode 100644
index 000000000000..055728ee046c
--- /dev/null
+++ b/pkgs/applications/misc/notable/default.nix
@@ -0,0 +1,30 @@
+{ appimageTools, fetchurl, lib, gsettings-desktop-schemas, gtk3 }:
+
+let
+  pname = "notable";
+  version = "1.4.0";
+in
+appimageTools.wrapType2 rec {
+  name = "${pname}-${version}";
+  src = fetchurl {
+    url = "https://github.com/notable/notable/releases/download/v${version}/Notable.${version}.AppImage";
+    sha256 = "0ldmxnhqcphr92rb7imgb1dfx7bb3p515nrdds8jn4b8x6jgmnjr";
+  };
+
+  profile = ''
+    export LC_ALL=C.UTF-8
+    export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
+  '';
+
+  multiPkgs = null; # no 32bit needed
+  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
+  extraInstallCommands = "mv $out/bin/{${name},${pname}}";
+
+  meta = with lib; {
+    description = "The markdown-based note-taking app that doesn't suck";
+    homepage = https://github.com/notable/notable;
+    license = licenses.agpl3;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix
index b20227590572..98ebde981c0a 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/applications/misc/orca/default.nix
@@ -4,7 +4,7 @@
 , python, pygobject3, gtk3, gnome3, substituteAll
 , at-spi2-atk, at-spi2-core, pyatspi, dbus, dbus-python, pyxdg
 , xkbcomp, procps, lsof, coreutils, gsettings-desktop-schemas
-, speechd, brltty, setproctitle, gst_all_1, gst-python
+, speechd, brltty, liblouis, setproctitle, gst_all_1, gst-python
 }:
 
 buildPythonApplication rec {
@@ -34,10 +34,11 @@ buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = [
-    # TODO: re-add liblouis when it is fixed
-    pygobject3 pyatspi dbus-python pyxdg brltty speechd gst-python setproctitle
+    pygobject3 pyatspi dbus-python pyxdg brltty liblouis speechd gst-python setproctitle
   ];
 
+  strictDeps = false;
+
   buildInputs = [
     python gtk3 at-spi2-atk at-spi2-core dbus gsettings-desktop-schemas
     gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
diff --git a/pkgs/applications/misc/pwsafe/default.nix b/pkgs/applications/misc/pwsafe/default.nix
index 25b3a6b4e7af..82b8f2cf8471 100644
--- a/pkgs/applications/misc/pwsafe/default.nix
+++ b/pkgs/applications/misc/pwsafe/default.nix
@@ -1,26 +1,29 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, zip, gettext, perl
-, wxGTK31, libXi, libXt, libXtst, xercesc, xorgproto
+, wxGTK31, libXext, libXi, libXt, libXtst, xercesc
 , qrencode, libuuid, libyubikey, yubikey-personalization
+, curl, openssl
 }:
 
 stdenv.mkDerivation rec {
   pname = "pwsafe";
-  version = "1.06";
-  name = "${pname}-${version}";
+  version = "1.07";
 
   src = fetchFromGitHub {
     owner = "${pname}";
     repo = "${pname}";
     rev = "${version}BETA";
-    sha256 = "1q3xi7i4r3nmz3hc79lx8l15sr1nqhwbi3lrnfqr356nv6aaf03y";
+    sha256 = "0syxmliybgvm9j6d426l7j12ryrl42azy80m66jc56fv9nkqwaya";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig zip ];
+  nativeBuildInputs = [ 
+  	cmake gettext perl pkgconfig zip
+  ];
   buildInputs = [
-    gettext perl qrencode libuuid
-    libXi libXt libXtst wxGTK31 xercesc xorgproto
+    libXext libXi libXt libXtst wxGTK31
+    curl qrencode libuuid openssl xercesc
     libyubikey yubikey-personalization
   ];
+
   cmakeFlags = [
     "-DNO_GTEST=ON"
     "-DCMAKE_CXX_FLAGS=-I${yubikey-personalization}/include/ykpers-1"
diff --git a/pkgs/applications/misc/pydf/default.nix b/pkgs/applications/misc/pydf/default.nix
new file mode 100644
index 000000000000..bfbee1bea24d
--- /dev/null
+++ b/pkgs/applications/misc/pydf/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+  pname = "pydf";
+  version = "12";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "7f47a7c3abfceb1ac04fc009ded538df1ae449c31203962a1471a4eb3bf21439";
+  };
+
+  meta = with stdenv.lib; {
+    description = "colourised df(1)-clone";
+    homepage = http://kassiopeia.juls.savba.sk/~garabik/software/pydf/;
+    license = licenses.publicDomain;
+    maintainers = with maintainers; [ monsieurp ];
+  };
+}
diff --git a/pkgs/applications/misc/taskopen/default.nix b/pkgs/applications/misc/taskopen/default.nix
new file mode 100644
index 000000000000..9f1773b191d2
--- /dev/null
+++ b/pkgs/applications/misc/taskopen/default.nix
@@ -0,0 +1,34 @@
+{ fetchurl, stdenv, makeWrapper, which, perl, perlPackages }:
+
+stdenv.mkDerivation rec {
+  name = "taskopen-1.1.4";
+  src = fetchurl {
+    url = "https://github.com/ValiValpas/taskopen/archive/v1.1.4.tar.gz";
+    sha256 = "774dd89f5c92462098dd6227e181268e5ec9930bbc569f25784000df185c71ba";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ which perl ] ++ (with perlPackages; [ JSON ]);
+
+  installPhase = ''
+    # We don't need a DESTDIR and an empty string results in an absolute path
+    # (due to the trailing slash) which breaks the build.
+    sed 's|$(DESTDIR)/||' -i Makefile
+
+    make PREFIX=$out
+    make PREFIX=$out install
+  '';
+
+  postFixup = ''
+    wrapProgram $out/bin/taskopen \
+         --set PERL5LIB "$PERL5LIB"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Script for taking notes and open urls with taskwarrior";
+    homepage = https://github.com/ValiValpas/taskopen;
+    platforms = platforms.linux;
+    license = stdenv.lib.licenses.free ;
+    maintainers = [ maintainers.winpat ];
+  };
+}
diff --git a/pkgs/applications/networking/ipfs/default.nix b/pkgs/applications/networking/ipfs/default.nix
index 28eec458ee03..7b4d40a5a633 100644
--- a/pkgs/applications/networking/ipfs/default.nix
+++ b/pkgs/applications/networking/ipfs/default.nix
@@ -1,24 +1,19 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, fetchgx }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "ipfs-${version}";
-  version = "0.4.19";
+  version = "0.4.20";
   rev = "v${version}";
 
   goPackagePath = "github.com/ipfs/go-ipfs";
 
-  extraSrcPaths = [
-    (fetchgx {
-      inherit name src;
-      sha256 = "0bj2kzxjssp7szp1wr9pp08bsi55jgf0k7gi4h70phlib2q673j2";
-    })
-  ];
+  goDeps = ./deps.nix;
 
   src = fetchFromGitHub {
     owner = "ipfs";
     repo = "go-ipfs";
     inherit rev;
-    sha256 = "061mgkawimhw3gq506h8m6kw50a2v26qysa5kc5jdqgaqx5yvqh4";
+    sha256 = "1xnjn4pcgknywfndrp2zwln3v1msaffhhfiym5mdz543rsxav0yp";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/ipfs/deps.nix b/pkgs/applications/networking/ipfs/deps.nix
new file mode 100644
index 000000000000..181b55d28d94
--- /dev/null
+++ b/pkgs/applications/networking/ipfs/deps.nix
@@ -0,0 +1,2190 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/dgraph-io/badger";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgraph-io/badger";
+      rev = "1fcc96ec";
+      sha256 = "09sdr64ay8wbw4m8a7dppha357wx2395vpni554353v7b22gyk59";
+    };
+  }
+  {
+    goPackagePath = "bazil.org/fuse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bazil/fuse";
+      rev = "65cc252bf669";
+      sha256 = "0qjm9yrhc5h632wwhklqzhalid4lxcm9iwsqs3jahp303rm27vpk";
+    };
+  }
+  {
+    goPackagePath = "github.com/AndreasBriese/bbloom";
+    fetch = {
+      type = "git";
+      url = "https://github.com/AndreasBriese/bbloom";
+      rev = "343706a395b7";
+      sha256 = "0pz4wph915gm2b0admq4bc5d2ir218s954z27gmc86l0rik13a5d";
+    };
+  }
+  {
+    goPackagePath = "github.com/Kubuxu/go-os-helper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Kubuxu/go-os-helper";
+      rev = "v0.0.1";
+      sha256 = "08v88ylhvv65hdqr2pp94qf2ncppzib5sx66fv432vhgkz00ddyr";
+    };
+  }
+  {
+    goPackagePath = "github.com/Kubuxu/gocovmerge";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Kubuxu/gocovmerge";
+      rev = "7ecaa51963cd";
+      sha256 = "0xbx83h44hsiidmr69sn4k0zn7bmbwcna76fn0akjb5il1r4bjyr";
+    };
+  }
+  {
+    goPackagePath = "github.com/Stebalien/go-bitfield";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Stebalien/go-bitfield";
+      rev = "076a62f9ce6e";
+      sha256 = "17iqkx2dyh6ykgapgvbyrm8c15qw24pspjhi3ww2sx4y0qhkycf4";
+    };
+  }
+  {
+    goPackagePath = "github.com/aead/siphash";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aead/siphash";
+      rev = "v1.0.1";
+      sha256 = "01kd1z82sc4nh3nj9c25aryyp396s7jrqc2kz9d7qq1vy2hdbznc";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "3a771d992973";
+      sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3";
+    };
+  }
+  {
+    goPackagePath = "github.com/blang/semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/blang/semver";
+      rev = "v3.5.1";
+      sha256 = "13ws259bwcibkclbr82ilhk6zadm63kxklxhk12wayklj8ghhsmy";
+    };
+  }
+  {
+    goPackagePath = "github.com/bren2010/proquint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bren2010/proquint";
+      rev = "38337c27106d";
+      sha256 = "1ws3hb27n4c4mfp2pfj9nc59ch6dv93333a83n7qazf74lhf8ixl";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/btcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/btcd";
+      rev = "306aecffea32";
+      sha256 = "130np0bfic9q7ga8a9y5gd3amy6mgfb7igd3lgicikjclfhiqwf4";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/btclog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/btclog";
+      rev = "84c8d2346e9f";
+      sha256 = "02dl46wcnfpg9sqvg0ipipkpnd7lrf4fnvb9zy56jqa7mfcwc7wk";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/btcutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/btcutil";
+      rev = "4c204d697803";
+      sha256 = "16s27k8xnvhlpv0ibs60sqgnyn3zhnvprv1647svmzs3rwcsqgvp";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/go-socks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/go-socks";
+      rev = "4720035b7bfd";
+      sha256 = "18cv2icj059lq4s99p6yh91hlas5f2gi3f1p4c10sjgwrs933d7b";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/goleveldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/goleveldb";
+      rev = "7834afc9e8cd";
+      sha256 = "0gy156sn2cy2maii3p058f7q60gjdbmba34i9qvk8msxlg7hlfjv";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/snappy-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/snappy-go";
+      rev = "0bdef8d06723";
+      sha256 = "00i5fsb1wf2dwal1jfwbpk9a7cbzjyg7rnz2xib3qfz9h82kd4jw";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/websocket";
+      rev = "31079b680792";
+      sha256 = "0xpkf257ml6fpfdgv7hxxc41n0d5yxxm3njm50qpzp7j71l9cjwa";
+    };
+  }
+  {
+    goPackagePath = "github.com/btcsuite/winsvc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/btcsuite/winsvc";
+      rev = "v1.0.0";
+      sha256 = "0nsw8y86a5hzr2a3j6ch9myrpccj5bnsgaxpgajhzfk5d31xlw1z";
+    };
+  }
+  {
+    goPackagePath = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev = "v2.1.1";
+      sha256 = "1mf4lsl3rbb8kk42x0mrhzzy4ikqy0jf6nxpzhkr02rdgwh6rjk8";
+    };
+  }
+  {
+    goPackagePath = "github.com/cheekybits/genny";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cheekybits/genny";
+      rev = "v1.0.0";
+      sha256 = "1pcir5ic86713aqa51581rfb67rgc3m0c72ddjfcp3yakv9vyq87";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/cskr/pubsub";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cskr/pubsub";
+      rev = "v1.0.2";
+      sha256 = "0wr8cg5axrlz9xg33r9dqvkp5ix9q8h8c7qw78mj22qprwh3zj9f";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/davidlazar/go-crypto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davidlazar/go-crypto";
+      rev = "dcfb0a7ac018";
+      sha256 = "1lir8slwykn0h5bg5lj22qsdg4kw09kcqlks974g1428d42rqlcp";
+    };
+  }
+  {
+    goPackagePath = "github.com/dgryski/go-farm";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgryski/go-farm";
+      rev = "3adb47b1fb0f";
+      sha256 = "04bkvr6xvfh83cn83gqzyxx45wbk3j1bdpgrck0b424x48z2x4jh";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev = "v1.0.0";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
+    };
+  }
+  {
+    goPackagePath = "github.com/elgris/jsondiff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/elgris/jsondiff";
+      rev = "765b5c24c302";
+      sha256 = "0jm1q0s531hmkqdx8jqphfpmzysn44aphkpwlzqwp3hkz89g4d4q";
+    };
+  }
+  {
+    goPackagePath = "github.com/facebookgo/atomicfile";
+    fetch = {
+      type = "git";
+      url = "https://github.com/facebookgo/atomicfile";
+      rev = "2de1f203e7d5";
+      sha256 = "1vsx6r6y601jxvjqc8msbpr5v1037dfxxdd8h1q3s8wm6xhvj2v6";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-check/check";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-check/check";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "v1.2.1";
+      sha256 = "06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/mock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/mock";
+      rev = "v1.2.0";
+      sha256 = "12ddj2g8ab87id6n2n67vnbhq6p8dvgsq1pzpqfriym4dk8w54fg";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.3.0";
+      sha256 = "0dm1ip7742qz2k1cr6ywy0av6mpcxd2kc4ayfqi8cxz3ai7zhbdr";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/snappy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/snappy";
+      rev = "2e65f85255db";
+      sha256 = "05w6mpc4qcy0pv8a2bzng8nf4s5rf5phfang4jwy9rgf808q0nxf";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.2.0";
+      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/uuid";
+      rev = "v1.1.1";
+      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.0";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+    };
+  }
+  {
+    goPackagePath = "github.com/gxed/go-shellwords";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gxed/go-shellwords";
+      rev = "v1.0.3";
+      sha256 = "1pg7pl25wvpl2dbpyrv9p1r7prnqimxlf6136vn0dfm54j2x4mnr";
+    };
+  }
+  {
+    goPackagePath = "github.com/gxed/hashland";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gxed/hashland";
+      rev = "v0.0.1";
+      sha256 = "1b921dh9i6zw7y8jfzwvrmdbhnwid12a5z1zjawslfq2vvsajwmm";
+    };
+  }
+  {
+    goPackagePath = "github.com/gxed/pubsub";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gxed/pubsub";
+      rev = "26ebdf44f824";
+      sha256 = "0q0r6bvimjxwi3yd0w2wjkx1x8m0d9pwi25b7n4s4g10h36rabjp";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/errwrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/errwrap";
+      rev = "v1.0.0";
+      sha256 = "0slfb6w3b61xz04r32bi0a1bygc82rjzhqkxj2si2074wynqnr1c";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev = "v1.0.0";
+      sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev = "v0.5.1";
+      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
+    };
+  }
+  {
+    goPackagePath = "github.com/hpcloud/tail";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hpcloud/tail";
+      rev = "v1.0.0";
+      sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
+    };
+  }
+  {
+    goPackagePath = "github.com/hsanjuan/go-libp2p-gostream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hsanjuan/go-libp2p-gostream";
+      rev = "v0.0.31";
+      sha256 = "0q4k1ahns9j061iajp8525330mwgbdv5mnyzldpg64r5c2igp9qf";
+    };
+  }
+  {
+    goPackagePath = "github.com/hsanjuan/go-libp2p-http";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hsanjuan/go-libp2p-http";
+      rev = "v0.0.2";
+      sha256 = "0pq80qvhm2f53gx438ws5nnj1r2ara48radzxc5br57scp2bjlgk";
+    };
+  }
+  {
+    goPackagePath = "github.com/huin/goupnp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/huin/goupnp";
+      rev = "v1.0.0";
+      sha256 = "12f7rigf1f4xh1an1qis61xkj5s1r8ygk48zahf3n4gaqxmgm7i6";
+    };
+  }
+  {
+    goPackagePath = "github.com/huin/goutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/huin/goutil";
+      rev = "1ca381bf3150";
+      sha256 = "0alhyacsfqic2wxyqn4gvk9wzjl4pkmy8rhvqjk84xsghgx5xf12";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/bbloom";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/bbloom";
+      rev = "v0.0.1";
+      sha256 = "0ji1dgxvg338wx2agh0ld9x6wwr6zc8zwjxs5mwdb99p56dc34nz";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/dir-index-html";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/dir-index-html";
+      rev = "v1.0.3";
+      sha256 = "1asd58w53i97jxk2r1asy8h5lgq0086lnjq3gi7fs20xvgv20bfy";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-bitswap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-bitswap";
+      rev = "v0.0.4";
+      sha256 = "0998qyxzp5frmkf5kjqxrhdwl4c0i7a2kh24rldix934afbmfz3r";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-block-format";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-block-format";
+      rev = "v0.0.2";
+      sha256 = "1j73r946z0gs98a2r1z7q3vkpk8v7wqwc68x8c3ngiff9sijq1kf";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-blockservice";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-blockservice";
+      rev = "v0.0.3";
+      sha256 = "1c2fnrqlvg16xf7jla1x38qi56yw61w1ms70kghhafmw008bgkvn";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-cid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-cid";
+      rev = "v0.0.1";
+      sha256 = "11hdrac0wf82m69fkpwby1mg2k7swmw884rv3250i0kymwi93lak";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-cidutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-cidutil";
+      rev = "v0.0.1";
+      sha256 = "00bdn7cg7rg8amh8zaqakf6phd14sn2z9kw73cscfhpyg9di1p9h";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-datastore";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-datastore";
+      rev = "v0.0.3";
+      sha256 = "147nnmgb2b4iiky4hsn5wn4hk0kp39xs1yj3blm2gxxxkmjqsdk4";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-detect-race";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-detect-race";
+      rev = "v0.0.1";
+      sha256 = "0rqb0q66d7z852j5mhlr025dz698c44w014g4mx587amr1rvwqna";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ds-badger";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ds-badger";
+      rev = "v0.0.3";
+      sha256 = "0bl7zh8gmas54577v501n17z1254f1yaggkgslz9qjz4rihq4wq1";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ds-flatfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ds-flatfs";
+      rev = "v0.0.2";
+      sha256 = "1z6z717pkv2yqb0wdhw73vir253305wkqcg5pln8km8kl2fjwwyi";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ds-leveldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ds-leveldb";
+      rev = "v0.0.2";
+      sha256 = "0x70z31g0l04lm6nsv1p0wnhdwqvck2pzy59ygfxk707n0x5vqpc";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ds-measure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ds-measure";
+      rev = "v0.0.1";
+      sha256 = "1ndb10x5g95g8kapfr116qa3cav2xcwwm4dppp99bi15kq1yk742";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-fs-lock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-fs-lock";
+      rev = "v0.0.1";
+      sha256 = "02mr83xkflf0sjrii11pd9k4a4545jggqgq6pdpsmkx2r3b01j2q";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-addr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-addr";
+      rev = "v0.0.1";
+      sha256 = "02f7vhf6kra7h58ny71zfb0k5q9mz6yplypnk36i6gv4fn5v9c5i";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-blockstore";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-blockstore";
+      rev = "v0.0.1";
+      sha256 = "0vw6i4n9xss21yri5wkj9pvzapm9yqgxh5l6vq2858n50xz72r31";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-blocksutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-blocksutil";
+      rev = "v0.0.1";
+      sha256 = "06bip9adk70i0g0hkf4aczvhkhd3s31x19668ls26dl62rq9h7di";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-chunker";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-chunker";
+      rev = "v0.0.1";
+      sha256 = "19p8a4xfi62fj5nw7ad81yppn0slq3pddk0gb0c3zydaxcjkhzw6";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-cmdkit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-cmdkit";
+      rev = "v0.0.1";
+      sha256 = "1aqdpszvibkm1h7p852ajzb9gjgsz5jlk4j2s9j8q1wbmz3vslms";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-cmds";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-cmds";
+      rev = "v0.0.5";
+      sha256 = "1b302hvah5scykcjn5al9a6jf7sygqi6snd664a6sxf2xgpwk0s8";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-config";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-config";
+      rev = "v0.0.1";
+      sha256 = "055igsi5bv312p2590dvpr9d290c4c0cwbzvwv52l7j60v79vlkc";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-delay";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-delay";
+      rev = "v0.0.1";
+      sha256 = "0a5acj622sk1hibnh893mya4h86nsy1dan0wlh9q444c04iqpviw";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-ds-help";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-ds-help";
+      rev = "v0.0.1";
+      sha256 = "173kmvyk2f5f1p30avb8nzvkcmq9xkdfpydavqw3bxg0yq0714ic";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-exchange-interface";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-exchange-interface";
+      rev = "v0.0.1";
+      sha256 = "12h4pj5g9d1j5gmd8gf774fqwkx0x5cm3pg7c81hi0f43x5lrmwn";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-exchange-offline";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-exchange-offline";
+      rev = "v0.0.1";
+      sha256 = "0nlb5llmj9kjas2p5jqg2x3krk5jm40xd36k0g5l87c992dy7f0i";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-files";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-files";
+      rev = "v0.0.2";
+      sha256 = "12554whcmg60rgnzyd7673hgxnrs1j176lw8839wf260pjq6rs39";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-flags";
+      rev = "v0.0.1";
+      sha256 = "0pf9nq0n6nlfxbfhn9v46a2s7kkkwmvl04si8ihz08nahanb13r6";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-posinfo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-posinfo";
+      rev = "v0.0.1";
+      sha256 = "0hh88i9sk5h53z2xx2nwxrpcx0r0jhlb5sq54x5qyhp5mjfqbyi2";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-pq";
+      rev = "v0.0.1";
+      sha256 = "05q7b7g49ni59c6593v51kkkd6ppc2ipkfsx05qbfg8md9r7a93x";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-routing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-routing";
+      rev = "v0.0.1";
+      sha256 = "15vvvc0z5sbyhmwl3nfrpziiy3gsivb02xcalsz6mxvam68xy4x5";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-util";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-util";
+      rev = "v0.0.1";
+      sha256 = "1j87wqxh8ap5qqvnhnhz3zg6fn50axnnd69wqg287hh36xcpy6ss";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipld-cbor";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipld-cbor";
+      rev = "v0.0.1";
+      sha256 = "0zppzca1ar8pqrzi68ysx4ih1mnhlyrg046xwj7sggr4aki1fh5j";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipld-format";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipld-format";
+      rev = "v0.0.1";
+      sha256 = "0lb4wp30jlamk604bagzf28zf2hm2b4lxnayqvq7rh0jxhbdb61d";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipld-git";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipld-git";
+      rev = "v0.0.1";
+      sha256 = "0d5kl3kvam1hv589cg9cg1dkjyanzp727zrnzyjnrysv3fk8yv66";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipns";
+      rev = "v0.0.1";
+      sha256 = "1r9531v35336sf36s8pzi3jiyqd22ld9p7xpaznzmp57ygwfxlwj";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-log";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-log";
+      rev = "v0.0.1";
+      sha256 = "0r3pk46g9vjjb9ljaxda18w488xa9vyj30g23y9vprknkd9dqfgw";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-merkledag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-merkledag";
+      rev = "v0.0.3";
+      sha256 = "0j7dgca9vyhj6ra074cddblcjkxh1c1k51krch09lqxxjwasgg60";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-metrics-interface";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-metrics-interface";
+      rev = "v0.0.1";
+      sha256 = "09xc71175sfnqlizkbw066jagnbag9ihvs240z6g6dm2yx3w5xgy";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-metrics-prometheus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-metrics-prometheus";
+      rev = "v0.0.2";
+      sha256 = "1z1zwjj0a3gyzs4r25b9kl7z3kmsqp3jskvy7x02a3v1dlr3nkfp";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-mfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-mfs";
+      rev = "v0.0.4";
+      sha256 = "13jjxbfjl6wd89nxqibvp8q3hd2vzh0vpfhp3vrbapghkzp08rbb";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-path";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-path";
+      rev = "v0.0.3";
+      sha256 = "019zpy92k2rilkhn928jf91d8y3x8cxcw04mc2pxv5ja29nkyc91";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-todocounter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-todocounter";
+      rev = "v0.0.1";
+      sha256 = "1nsf56hh6n2y3m14b1ismcpsyi65ffxa5i6ks6il9qppm21mm5nx";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-unixfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-unixfs";
+      rev = "v0.0.4";
+      sha256 = "0fbqqi9h2xalnyc58ppaiyac3qd6hb4ycn46wwnr7idp0z7wxl5j";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-verifcid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-verifcid";
+      rev = "v0.0.1";
+      sha256 = "06ii8934s52d9n1lvzx29didh667pm2i7qdag443vqn0ilmkjvh9";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/hang-fds";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/hang-fds";
+      rev = "v0.0.1";
+      sha256 = "0axgmx1vcqsvys4vhqfrixfss2vk3qly1cqlm0aqrlhscggflkn4";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/interface-go-ipfs-core";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/interface-go-ipfs-core";
+      rev = "v0.0.6";
+      sha256 = "13sr18vzsfsik1nnkdcmi7afagbcnzh95mxzlbss366x802g8d8q";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/iptb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/iptb";
+      rev = "v1.4.0";
+      sha256 = "0nfiqf1k114ydp6c37yq4qn6j3bmw94wvc096vfljq8493jr8jvv";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/iptb-plugins";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/iptb-plugins";
+      rev = "v0.0.2";
+      sha256 = "10kyvjhmlvza3xlmfvwhndscjm6807pmk9nld7d2660mvh18w626";
+    };
+  }
+  {
+    goPackagePath = "github.com/jackpal/gateway";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jackpal/gateway";
+      rev = "v1.0.5";
+      sha256 = "1ird5xmizj632l3dq24s2xgb8w1dn6v8xznlqz252gvngyr2gjl1";
+    };
+  }
+  {
+    goPackagePath = "github.com/jackpal/go-nat-pmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jackpal/go-nat-pmp";
+      rev = "v1.0.1";
+      sha256 = "0sr23mcxbv9f65is4p1amb5yn026p7cfamlwpb2f8q218idwy3zk";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-cienv";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-cienv";
+      rev = "1bb1476777ec";
+      sha256 = "0mk04dk572gdd0y63vark0362y42w7kbwdlmmw9bg78qmmiikjb3";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-context";
+      rev = "d14ea06fba99";
+      sha256 = "0q91f5549n81w3z5927n4a1mdh220bdmgl42zi3h992dcc4ls0sl";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-is-domain";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-is-domain";
+      rev = "v1.0.2";
+      sha256 = "1cf4qmlg54975z5j7njyqsq0vr8gsxzg85c5iys08nr3cizr7551";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-random";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-random";
+      rev = "123a90aedc0c";
+      sha256 = "0kgx19m8p76rmin8s8y6j1padciv1dx37qzy7jkh9bw49ai3haw3";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-random-files";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-random-files";
+      rev = "31b3f20ebded";
+      sha256 = "0d52wwzgxxh2a1bwmixfa6nfhhqdq6l9g4s6kmsdnc6kqf38c818";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-temp-err-catcher";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-temp-err-catcher";
+      rev = "aac704a3f4f2";
+      sha256 = "1fyqkcggnrzwxa8iii15g60w2jikdm26sr7l36km7y0nc2kvf7jc";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/goprocess";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/goprocess";
+      rev = "b497e2f366b8";
+      sha256 = "1lnvkzki7vnqn5c4m6bigk0k85haicmg27w903kwg30rdvblm82s";
+    };
+  }
+  {
+    goPackagePath = "github.com/jessevdk/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jessevdk/go-flags";
+      rev = "1679536dcc89";
+      sha256 = "15jgsymwg0wjslxrw391sw7qzwwjcnjxiiksq84z7ng9sqy96c1c";
+    };
+  }
+  {
+    goPackagePath = "github.com/jonboulle/clockwork";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jonboulle/clockwork";
+      rev = "v0.1.0";
+      sha256 = "1pqxhsdavbp1n5grgyx2j6ylvql2fzn2cvpsgkc8li69dil7sibl";
+    };
+  }
+  {
+    goPackagePath = "github.com/jrick/logrotate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jrick/logrotate";
+      rev = "v1.0.0";
+      sha256 = "0srl6figwjqpi3nbp7br8sxpmvh4v8lzbny1b4lar4ny0156p5nl";
+    };
+  }
+  {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.2.1";
+      sha256 = "1vm37pvn0k4r6d3m620swwgama63laz8hhj3pyisdhxwam4m2g1h";
+    };
+  }
+  {
+    goPackagePath = "github.com/kisielk/errcheck";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/errcheck";
+      rev = "v1.1.0";
+      sha256 = "19vd4rxmqbk5lpiav3pf7df3yjlz0l0dwx9mn0gjq5f998iyhy6y";
+    };
+  }
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "v1.0.0";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "github.com/kkdai/bstream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kkdai/bstream";
+      rev = "f391b8402d23";
+      sha256 = "1hd9caz0yf3r8kciw2pqwrsr8z4w0rhbqv1z7iq08d0542s05j3z";
+    };
+  }
+  {
+    goPackagePath = "github.com/koron/go-ssdp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/koron/go-ssdp";
+      rev = "4a0ed625a78b";
+      sha256 = "11d1xf07xs4j7qbxpndxbrfk2zk48k9fa3cxnhfb5lh24bd4sa0f";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-addr-util";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-addr-util";
+      rev = "v0.0.1";
+      sha256 = "1kjdk5214l8gna7f4hvb0iwmmlzsfccjankkxjmil80ibhcvjw60";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-buffer-pool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-buffer-pool";
+      rev = "v0.0.1";
+      sha256 = "1239hkhckgx1fzd43k56q3c0283p1mjl8w7i2j4xymvs6f6q6ygi";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-conn-security";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-conn-security";
+      rev = "v0.0.1";
+      sha256 = "0z1zw0aq5jcks0vcdm5zxjyz9z6c6jklm0s74gc2m7jfs2jj2r5r";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-conn-security-multistream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-conn-security-multistream";
+      rev = "v0.0.1";
+      sha256 = "19slvlmapzs952gfn4aym4dg0l49x0vpn5v696vf80v2k00ipa32";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-flow-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-flow-metrics";
+      rev = "v0.0.1";
+      sha256 = "04zrwl579qkhiw3b655cw7lnlp2yvq1xl3f1rkxnhx8llwsy3x49";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p";
+      rev = "v0.0.12";
+      sha256 = "04hm36fi45jpq5zjl1a7jlyq82adwwrgvvgnkllppq2zg85mlvvi";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-autonat";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-autonat";
+      rev = "v0.0.4";
+      sha256 = "03523s4kdwswgfnwly5ynld2lny142j8xl6mr88vni4xn7pijn1l";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-autonat-svc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-autonat-svc";
+      rev = "v0.0.5";
+      sha256 = "0plph1nnh0ig9d54hizpiyhfrlrwhb1ylx6pry5jcppgpxngi79c";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-blankhost";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-blankhost";
+      rev = "v0.0.1";
+      sha256 = "1q29b880l95811ara95187y9pmqq542bxh50cg0ykwzfj94xgla4";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-circuit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-circuit";
+      rev = "v0.0.4";
+      sha256 = "1bnwjf3p5r8ng360l2fjx0szdiwm2yfiifjkwflin00hx0gzyq7d";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-connmgr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-connmgr";
+      rev = "v0.0.1";
+      sha256 = "07kvnhavr4k1birgqp9c4y0yl1ii3pl1cc8pn4dzci87krachz2z";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-crypto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-crypto";
+      rev = "v0.0.1";
+      sha256 = "0wgq0ayg1656gvmi4d1nwgq7dbnyyb30xp3z571q495mmq483fbk";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-daemon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-daemon";
+      rev = "v0.0.6";
+      sha256 = "0pq6557ykbi3a8pasvm9zlhdysrq6h1fj48z4imv2gq30nmy3l6l";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-discovery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-discovery";
+      rev = "v0.0.1";
+      sha256 = "06h621llfx7bmkcnrkkxb3j85221albf18ig8mbh9c8wrpmsi438";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-host";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-host";
+      rev = "v0.0.1";
+      sha256 = "102qyl7qkmq8p1gpxbfi5z2lrd8mysji28fx25ma4h312ci96rqz";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-interface-connmgr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-interface-connmgr";
+      rev = "v0.0.1";
+      sha256 = "107khappq5w48p17s22cp7djd5ii1bbg968wsa9bq9znzxdkzm43";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-interface-pnet";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-interface-pnet";
+      rev = "v0.0.1";
+      sha256 = "1kqxm4rpcss2ajfnc3gzww4ng5pjj5qc0szr5x2vz15vvx2kp9bi";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-kad-dht";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-kad-dht";
+      rev = "v0.0.7";
+      sha256 = "1nbq4240vnd3sfmiy8ry6pwnnf2k7hnwn1ln32mgqq32dywx664r";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-kbucket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-kbucket";
+      rev = "v0.1.1";
+      sha256 = "0pgy89mp9r23axs8gapnkzks89q7539l2g46r6ffyd4a675qampg";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-loggables";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-loggables";
+      rev = "v0.0.1";
+      sha256 = "15whxhipm06fnd8ky7gxf59bvbw2wxl44g0v2dbnbr2j9a2n5ivv";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-metrics";
+      rev = "v0.0.1";
+      sha256 = "14wvnmcwr40iwbpvfwdcbb6cff7rcrhqf42z32aqjhisp32irn1x";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-nat";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-nat";
+      rev = "v0.0.4";
+      sha256 = "179d5jj4sznjns9p17gmrd86pf7ba7k4qq5kiv17ra4b666kd88f";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-net";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-net";
+      rev = "v0.0.2";
+      sha256 = "0cfi57hvkz6yhi2nw63p2p7fnaw91zrcphxmchk2a4xn5rnwgjak";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-netutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-netutil";
+      rev = "v0.0.1";
+      sha256 = "1zzkfddfmja6dsk8nxybi5cccd2v38sahp8xx676a38g3ydvqvs6";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-peer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-peer";
+      rev = "v0.0.1";
+      sha256 = "0hixdbj47njyzj885fzm9dlylw21g406yqxfidag2qrn06b2qicl";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-peerstore";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-peerstore";
+      rev = "v0.0.2";
+      sha256 = "1asfl9sp3mi5pg9gpy45wvsc8hpdf48i7ml37sh5sjmn30aj4f6i";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-pnet";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-pnet";
+      rev = "v0.0.1";
+      sha256 = "1gh2hw0dbywwp7vr4n9xws8nxraa00rigzxa86g8nf50n9cdq2cr";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-protocol";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-protocol";
+      rev = "v0.0.1";
+      sha256 = "18fhmhfsdzw7dd618y4344qka08zq4b5jzpdgxbglar9dkkralg7";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-pubsub";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-pubsub";
+      rev = "v0.0.1";
+      sha256 = "1n67ajql9527mzrc06jk4rb3xb63vmlnzx6i4aywcfn66pjg9kmh";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-pubsub-router";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-pubsub-router";
+      rev = "v0.0.3";
+      sha256 = "1cjscq213ky11vzdalcfnkqkj2s53npymzjvv6ahn34c6bidan4s";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-quic-transport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-quic-transport";
+      rev = "v0.0.3";
+      sha256 = "0kiisb35fvblg4xaz188by4rn90chynzm94f83prqq7h9y9b3s5s";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-record";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-record";
+      rev = "v0.0.1";
+      sha256 = "131zjkplylwam3gnw8f9lfvjgzi8xbjhb2qf57fys4c89pz868mg";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-routing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-routing";
+      rev = "v0.0.1";
+      sha256 = "09mm12abdzy6k1dw3ix8v2c8w3warc52jazvwwwvwhlq924jzdp0";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-routing-helpers";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-routing-helpers";
+      rev = "v0.0.2";
+      sha256 = "0lxpf1vzhapj2q18wv5g7kkqhnwz1b08lyxjp57qa33z5j4jclgw";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-secio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-secio";
+      rev = "v0.0.1";
+      sha256 = "1v51whaww3bv14kl7gpapq6ld6m6v7w9cipkflh8czpgrs096yyq";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-swarm";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-swarm";
+      rev = "v0.0.2";
+      sha256 = "0v75wb96rddjxd8faqri076xba5ffqg4bpddw16k4bw8kk2b46w0";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-transport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-transport";
+      rev = "v0.0.4";
+      sha256 = "0pgyxzb489xzcm9q11br6sgsz166cw65xhfcksy3yy5n0c1c6mvb";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-libp2p-transport-upgrader";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-libp2p-transport-upgrader";
+      rev = "v0.0.1";
+      sha256 = "0czy16zvbz2k9jn8w7iddf7xph3bn054abxybjxm4dhp7g83mf65";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-maddr-filter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-maddr-filter";
+      rev = "v0.0.1";
+      sha256 = "039qj86k4dam6kch52kcdk5dsg36gfrfwambqjg1nv2xaq8j1hx8";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-mplex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-mplex";
+      rev = "v0.0.1";
+      sha256 = "1f0h2hmh4c0xvv1fsjciyc8v7sn0ymanr9my2smr6z1nar7nziqn";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-msgio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-msgio";
+      rev = "v0.0.1";
+      sha256 = "1my8w8k7c3mz2aazsg45q7nlr4ywmix6jspri2sv7fqrs1kjxrjm";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-nat";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-nat";
+      rev = "v0.0.3";
+      sha256 = "19ihybcpmz2wpi6mk3rhgjbv4cgiiang92d9ym3xw7y3iv8mlzc0";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-reuseport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-reuseport";
+      rev = "v0.0.1";
+      sha256 = "1qbxhycckjv7mazg06llbx9708f1z4453yaxxp4641gwcrbns7zk";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-reuseport-transport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-reuseport-transport";
+      rev = "v0.0.2";
+      sha256 = "14lqhdkx5nmrvislim7qlvnx78dnfngxvcrll9d851r04p703qrn";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-stream-muxer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-stream-muxer";
+      rev = "v0.0.1";
+      sha256 = "1swqw77jn00a7cl3lb7x5wyybhv4mkqk36z407ihid44gds7djqh";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-tcp-transport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-tcp-transport";
+      rev = "v0.0.2";
+      sha256 = "0qrl4mgs16wnc0dnwg3x2k3mlv9grzl8maclbkq22vqk34c5in4y";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-testutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-testutil";
+      rev = "v0.0.1";
+      sha256 = "1jmqk6cyp52fgmayx0dwas27rswrvn9lpsiv6bnabhz1gvb91ahp";
+    };
+  }
+  {
+    goPackagePath = "github.com/libp2p/go-ws-transport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libp2p/go-ws-transport";
+      rev = "v0.0.2";
+      sha256 = "1j321z8m82a43v70jmglh2v0hv1wmgsizr5zrlgwqsx3wsih9phx";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucas-clemente/quic-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucas-clemente/quic-go";
+      rev = "v0.11.1";
+      sha256 = "1vhswcbiyaq94rwc6vd8vl13x3lfwilpfw7kqx7bflxj7zvvd18y";
+    };
+  }
+  {
+    goPackagePath = "github.com/marten-seemann/qtls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/marten-seemann/qtls";
+      rev = "v0.2.3";
+      sha256 = "0b9p7bwkm9hfg1mb565q4nw5k7xyks0z2xagz5fp95azy2psbnfg";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.1";
+      sha256 = "0l640974j804c1yyjfgyxqlsivz0yrzmbql4mhcw2azryigkp08p";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.5";
+      sha256 = "114d5xm8rfxplzd7nxz97gfngb4bhqy102szl084d1afcxsvm4aa";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.4";
+      sha256 = "00b3ssm7wiqln3k54z2wcnxr3k3c7m1ybyhb9h8ixzbzspld0qzs";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "v1.0.1";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath = "github.com/mgutz/ansi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mgutz/ansi";
+      rev = "9520e82c474b";
+      sha256 = "00bz22314j26736w1f0q4jy9d9dfaml17vn890n5zqy3cmvmww1j";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "v1.1.4";
+      sha256 = "17apnm7q5v7bhmpvrk3rbi0gjqk8z3cwkm90q1dfzrfvbvp71z5d";
+    };
+  }
+  {
+    goPackagePath = "github.com/minio/blake2b-simd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/minio/blake2b-simd";
+      rev = "3f5f724cb5b1";
+      sha256 = "0b6jbnj62c0gmmfd4zdmh8xbg01p80f13yygir9xprqkzk6fikmd";
+    };
+  }
+  {
+    goPackagePath = "github.com/minio/sha256-simd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/minio/sha256-simd";
+      rev = "2d45a736cd16";
+      sha256 = "1hfhpy8fczd0mnwvxkp2nk3dydv1nzqx59ig8ajqjraq6kli66p5";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mr-tron/base58";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mr-tron/base58";
+      rev = "v1.1.0";
+      sha256 = "00w28mhinf8dvzrh71dijryfhrggi7j9wqiiyddpk41ixx3rmfy4";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-base32";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-base32";
+      rev = "v0.0.3";
+      sha256 = "1f4pjnqw4687p8l7vr1qaq6g6i9pcr80fc4pk2kpgrcwzpd1lprg";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multiaddr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multiaddr";
+      rev = "v0.0.1";
+      sha256 = "1r1w4036bpi97xb70833bpdpdhqm5gl6m8fllfdxqbg10ab1a938";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multiaddr-dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multiaddr-dns";
+      rev = "v0.0.2";
+      sha256 = "1fnv7lbd7q1kssaxp2fgrvj9dhn5aiqspd4090iqwys5hjr1xvmf";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multiaddr-net";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multiaddr-net";
+      rev = "v0.0.1";
+      sha256 = "1075xs6gbiblfbwgf84yvg1nrywmvvrrxzqa8wp9j75zyakab81p";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multibase";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multibase";
+      rev = "v0.0.1";
+      sha256 = "083adnq79pyxhngv91saygh076196qin1nw1vppz7nk04zw4aymg";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multicodec";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multicodec";
+      rev = "v0.1.6";
+      sha256 = "08wnxhb4rd7rln2mzxnhv3csy19l9qgf5dx3437x4zsgkaqabb96";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multihash";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multihash";
+      rev = "v0.0.1";
+      sha256 = "1aw4ra22g3l98bk7c3h1n968vi5a3gk528g4byj3xig76r0r731n";
+    };
+  }
+  {
+    goPackagePath = "github.com/multiformats/go-multistream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/multiformats/go-multistream";
+      rev = "v0.0.1";
+      sha256 = "1k79w7zd92cs9sjvsr31vi6n3j30xqz83mb3a3pqva11wl1gbnlz";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/ginkgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/ginkgo";
+      rev = "v1.7.0";
+      sha256 = "14wgpdrvpc35rdz3859bz53sc1g4vpr1fysy15wy3ff9gmqs14yg";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/gomega";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/gomega";
+      rev = "v1.4.3";
+      sha256 = "1c8rqg5i2hz3snmq7s41yar1zjnzilb0fyiyhkg83v97afcfx79v";
+    };
+  }
+  {
+    goPackagePath = "github.com/opentracing/opentracing-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opentracing/opentracing-go";
+      rev = "v1.0.2";
+      sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.1";
+      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/polydawn/refmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/polydawn/refmt";
+      rev = "df39d6c2d992";
+      sha256 = "07hj5wimwgwj8xzzbvk0y7d6fmqf44d7fjicp1digh4kvjsbg3dz";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "v0.9.2";
+      sha256 = "02b4yg6rfag0m3j0i39sillcm5xczwv8h133vn12yr8qw04cnigs";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "5c3871d89910";
+      sha256 = "04psf81l9fjcwascsys428v03fx4fi894h7fhrj2vvcz723q57k0";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev = "4724e9255275";
+      sha256 = "0pcx8hlnrxx5nnmpk786cn99rsgqk1jrd3c9f6fsx8qd8y5iwjy6";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "1dc9a6cbc91a";
+      sha256 = "1zlv1x30xp7z5c3vn5vp870v4bjim0zcidzc3mr2l3xhazc0svab";
+    };
+  }
+  {
+    goPackagePath = "github.com/rs/cors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rs/cors";
+      rev = "v1.6.0";
+      sha256 = "12j838rj6xl9y1xqs1mnh9zkc3dkpn94iqkp6jkdkxw631aa94dr";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.0.5";
+      sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "a17d461953aa";
+      sha256 = "1942lhpv7c16dq27wjj2cjxsgra5lpsnxn52a9zvj8d0nip8nhq6";
+    };
+  }
+  {
+    goPackagePath = "github.com/spaolacci/murmur3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spaolacci/murmur3";
+      rev = "f09979ecbc72";
+      sha256 = "1lv3zyz3jy2d76bhvvs8svygx66606iygdvwy5cwc0p5z8yghq25";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.1";
+      sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.0";
+      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.3.0";
+      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
+    };
+  }
+  {
+    goPackagePath = "github.com/syndtr/goleveldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/goleveldb";
+      rev = "v1.0.0";
+      sha256 = "042k0gbzs5waqpxmd7nv5h93mlva861s66c3s9gfg1fym5dx4vmd";
+    };
+  }
+  {
+    goPackagePath = "github.com/texttheater/golang-levenshtein";
+    fetch = {
+      type = "git";
+      url = "https://github.com/texttheater/golang-levenshtein";
+      rev = "d188e65d659e";
+      sha256 = "0dmaxmwz2vx2v51hybjpcwz260apaq3v8gm84ran38fcs8xl529c";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v1.20.0";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+  {
+    goPackagePath = "github.com/warpfork/go-wish";
+    fetch = {
+      type = "git";
+      url = "https://github.com/warpfork/go-wish";
+      rev = "5ad1f5abf436";
+      sha256 = "1jns04jdb07f695ipf0pfal2k7ss47jxgdi2ahqmskzglb26zm62";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/base32";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/base32";
+      rev = "c30ac30633cc";
+      sha256 = "060jj8j9rnm3m47vv7jfz9ddybch3ryvn1p9vhc63bqn73knalhf";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/cbor";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/cbor";
+      rev = "63513f603b11";
+      sha256 = "0v3kgzk8grz17my2vhv12qi9dgpx3z86hy9ff1c4qw83mg8hm67s";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/chunker";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/chunker";
+      rev = "fe64bd25879f";
+      sha256 = "13q4flp9iwwyi0izqar786h42713rf3m22qlvg0masbmdi69qjr2";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-ctrlnet";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-ctrlnet";
+      rev = "f564fbbdaa95";
+      sha256 = "1ni4fb9bbaiicy8yd9w8i442v94k59czlmpvjqg0y5am67x73gxk";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-keyspace";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-keyspace";
+      rev = "5b898ac5add1";
+      sha256 = "0fkk7i7qxwbz1g621mm6a6inb69lr57cyc9ayyfiwhnjwfz78rbb";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-logging";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-logging";
+      rev = "0457bb6b88fc";
+      sha256 = "1bl180mhg03hdqhyr5sfjcg16ns2ppal625g9ag5m10l2pvlwnqn";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-notifier";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-notifier";
+      rev = "097c5d47330f";
+      sha256 = "081h4a33603n0mlh53by1mg21rr42xjvxk7r10x8l4v671bq0kha";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-smux-multiplex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-smux-multiplex";
+      rev = "v3.0.16";
+      sha256 = "0y696zqrbdyvz9gkxd9armhxa82z2fg0wpm8yqp7swyxdsg15f8k";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-smux-multistream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-smux-multistream";
+      rev = "v2.0.2";
+      sha256 = "0sbxmn56fx1py6nijk9prkm4rqswynsw68frvlm11w5m57szi5pj";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-smux-yamux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-smux-yamux";
+      rev = "v2.0.9";
+      sha256 = "046nx0d9974shd6y3ic2dznij0yzaijp6z6g46kpa4iwf2w41jwk";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-sysinfo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-sysinfo";
+      rev = "4a357d4b90b1";
+      sha256 = "0s6yjp9incc579wbbga33vq0hcanv8j2xh9l90ya0r4fihz39jiq";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/mafmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/mafmt";
+      rev = "v1.2.8";
+      sha256 = "0sr602pbxid3ncfd8v0dgjd1a79qg3k4bzniq811jjdq9zm9jccv";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/mdns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/mdns";
+      rev = "ef14215e6b30";
+      sha256 = "17hid8s9asqyqgbw20wp4ip5sy03b5sayzld2i09w9l42217502q";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/multiaddr-filter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/multiaddr-filter";
+      rev = "e903e4adabd7";
+      sha256 = "0ksd8vnp207dvphmhrazwldj8if900fnyc1pqa9pfvj04qp92640";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/tar-utils";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/tar-utils";
+      rev = "8c6c8ba81d5c";
+      sha256 = "14jjdw3yics0k467xsyk388684wdpi0bbx8nqj0y4pqxa0s0in6s";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/timecache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/timecache";
+      rev = "cfcb2f1abfee";
+      sha256 = "0nnra7ivq7cj34rj2ib8hgfdpik3smr1hy7x18svhfin8z1xsj2s";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/yamux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/yamux";
+      rev = "v1.1.5";
+      sha256 = "08a4v0akdxg16g6mi32ixsldjbg3pp3j4x0xicaxc4fd6cfmi1wv";
+    };
+  }
+  {
+    goPackagePath = "go4.org";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go4org/go4";
+      rev = "ce4c26f7be8e";
+      sha256 = "0lzvmspdqqf251lrgawnss2wn3bnd3pj89xjxlvpgg6q0853580j";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "8dd112bcdc25";
+      sha256 = "0gbcz7gxmgg88s28vb90dsp1vdq0har7zvg2adsqbp8bm05x9q6b";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "c95aed5357e7";
+      sha256 = "0b1vjnzd67sp9lggs0yn9qfgp6f5djqgx40lyncd7j720q04kk2h";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "42b317875d0f";
+      sha256 = "0mrjhk7al7yyh76x9flvxy4jm5jyqh2fxbxagpaazxn1xdgkaif3";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "b6889370fb10";
+      sha256 = "01c1ag1qr95iksp38rypfbrlk6sdqjhk7jgj3qf342ndhvqb08sa";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "90fa682c2a6e";
+      sha256 = "03ic2xsy51jw9749wl7gszdbz99iijbd2bckgygl6cm9w5m364ak";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/xerrors";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/xerrors";
+      rev = "a5947ffaace3";
+      sha256 = "1bgn7j704mf891qcwcbqzr5sq9ar7z2a81887k8pp0b1g2giwgfz";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "11092d34479b";
+      sha256 = "12qcrjq658zga5fj4n0wgm11pzpr3gafwg25cinl5qcq4p9cnl0r";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/airbrake/gobrake.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/airbrake/gobrake.v2";
+      rev = "v2.0.9";
+      sha256 = "1x06f7n7qlyzqgyz0sdfcidf3w4ldn6zs6qx2mhibggk2z4whcjw";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/cheggaaa/pb.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/cheggaaa/pb.v1";
+      rev = "v1.0.28";
+      sha256 = "13a66cqbpdif804qj12z9ad8r24va9q41gfk71qbc4zg1wsxs3rh";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/gemnasium/logrus-airbrake-hook.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/gemnasium/logrus-airbrake-hook.v2";
+      rev = "v2.1.2";
+      sha256 = "0sbg0dn6cysmf8f2bi209jwl4jnpiwp4rdghnxlzirw3c32ms5y5";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v1";
+      rev = "dd632973f1e7";
+      sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.1";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+  {
+    goPackagePath = "gotest.tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gotestyourself/gotest.tools";
+      rev = "v2.1.0";
+      sha256 = "11k6hmfhaf0qxpddp3i5kfpacdx51q6pv4n1kn3jnf1hjs0yny2k";
+    };
+  }
+  {
+    goPackagePath = "gotest.tools/gotestsum";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gotestyourself/gotestsum";
+      rev = "v0.3.3";
+      sha256 = "0wkh49yixvh5y1z96sanjfyvd7c63pvryz605lz0hzdbvcwciy7i";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/mpop/default.nix b/pkgs/applications/networking/mpop/default.nix
index a48cc47106c5..c4dd8e402eca 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.3";
-  name = "mpop-${version}";
+  pname = "mpop";
+  version = "1.4.4";
 
   src = fetchurl {
-    url = "https://marlam.de/mpop/releases/${name}.tar.xz";
-    sha256 = "1di86frxv4gj8fasni409m87qmv0j0vmj13lawkz1pwv9hbynhjb";
+    url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz";
+    sha256 = "0j21cp8bw12vgfymxi3i4av3j97lrcyb5y9xa3mb59wr17izz73x";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index b5973fc8d3ee..940e2d74be49 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -9,12 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "msmtp";
-  name = "${pname}-${version}";
-  version = "1.8.3";
+  version = "1.8.4";
 
   src = fetchurl {
-    url = "https://marlam.de/msmtp/releases/${name}.tar.xz";
-    sha256 = "1d4jdgrx4czp66nnwdsy938lzr4llhwyy0715pwg0j6h6gyyxciw";
+    url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz";
+    sha256 = "1xr926lyy44baqdgv9q0sw5z6ll2cb4lx2g4lgpgbqn8bglpzpg5";
   };
 
   patches = [
diff --git a/pkgs/applications/office/kexi/default.nix b/pkgs/applications/office/kexi/default.nix
index 66fde2497e3f..784126ba3d87 100644
--- a/pkgs/applications/office/kexi/default.nix
+++ b/pkgs/applications/office/kexi/default.nix
@@ -9,12 +9,12 @@
 
 mkDerivation rec {
   pname = "kexi";
-  version = "3.1.0";
+  version = "3.2.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/src/${name}.tar.xz";
-    sha256 = "1ysj44qq75wglw4d080l3gfw47695gapf29scxhb1g3py55csmbd";
+    sha256 = "1zy1q7q9rfdaws3rwf3my22ywkn6g747s3ixfcg9r80mm2g3z0bs";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
@@ -29,13 +29,6 @@ mkDerivation rec {
 
   propagatedUserEnvPkgs = [ kproperty ];
 
-  patches = [
-    (fetchpatch {
-      url = "https://phabricator.kde.org/file/data/6iwzltiifyqwjnzbvyo6/PHID-FILE-li4a7j35wkdkm2qdtnp4/D11503.diff";
-      sha256 = "0yj717m4x1zb4xjy1ayhz78xkxpawxgsvjgvf5iw81jnlr8absq9";
-    })
-  ];
-
   meta = with lib; {
     description = "A open source visual database applications creator, a long-awaited competitor for programs like MS Access or Filemaker";
     longDescription = ''
diff --git a/pkgs/applications/office/minetime/default.nix b/pkgs/applications/office/minetime/default.nix
new file mode 100644
index 000000000000..85e8bc131ce3
--- /dev/null
+++ b/pkgs/applications/office/minetime/default.nix
@@ -0,0 +1,31 @@
+{ appimageTools, fetchurl, lib, gsettings-desktop-schemas, gtk3 }:
+
+let
+  pname = "minetime";
+  version = "1.5.1";
+in
+appimageTools.wrapType2 rec {
+  name = "${pname}-${version}";
+  src = fetchurl {
+    url = "https://github.com/marcoancona/MineTime/releases/download/v${version}/${name}-x86_64.AppImage";
+    sha256 = "0099cq4p7j01bzs7q79y9xi7g6ji17v9g7cykfjggwsgqfmvd0hz";
+  };
+
+  profile = ''
+    export LC_ALL=C.UTF-8
+    export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
+  '';
+
+  multiPkgs = null; # no 32bit needed
+  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
+  extraInstallCommands = "mv $out/bin/{${name},${pname}}";
+
+  meta = with lib; {
+    description = "Modern, intuitive and smart calendar application";
+    homepage = https://minetime.ai;
+    license = licenses.unfree;
+    # Should be cross-platform, but for now we just grab the appimage
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/applications/office/skrooge/default.nix b/pkgs/applications/office/skrooge/default.nix
index 9b417a8a5b63..eee6c7de4e5f 100644
--- a/pkgs/applications/office/skrooge/default.nix
+++ b/pkgs/applications/office/skrooge/default.nix
@@ -7,11 +7,11 @@
 
 mkDerivation rec {
   name = "skrooge-${version}";
-  version = "2.18.0";
+  version = "2.19.1";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/skrooge/${name}.tar.xz";
-    sha256 = "00zk152clnmq8rjjnrxmd7lfflf2pnzljaw73bjjsb6r6vkxywa6";
+    sha256 = "04pajy540vwff1y84ndrnscvlggiwfkr6w65g4hpa75cg7m169ya";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/wordgrinder/default.nix b/pkgs/applications/office/wordgrinder/default.nix
index 9518aaca878e..4271e3d17aa2 100644
--- a/pkgs/applications/office/wordgrinder/default.nix
+++ b/pkgs/applications/office/wordgrinder/default.nix
@@ -16,7 +16,11 @@ stdenv.mkDerivation rec {
     "PREFIX=$(out)"
     "LUA_INCLUDE=${lua52Packages.lua}/include"
     "LUA_LIB=${lua52Packages.lua}/lib/liblua.so"
-  ] ++ stdenv.lib.optional stdenv.isLinux "XFT_PACKAGE=--libs=\{-lX11 -lXft\}";
+  ];
+
+  preBuild = stdenv.lib.optionalString stdenv.isLinux ''
+    makeFlagsArray+=('XFT_PACKAGE=--cflags={} --libs={-lX11 -lXft}')
+  '';
 
   dontUseNinjaBuild = true;
   dontUseNinjaInstall = true;
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 81c254763d3a..c31284c2747f 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -9,11 +9,11 @@
 
 python3Packages.buildPythonApplication rec {
   name = "zim-${version}";
-  version = "0.70";
+  version = "0.71.0";
 
   src = fetchurl {
     url = "http://zim-wiki.org/downloads/${name}.tar.gz";
-    sha256 = "1g1xj86iph1a2k4n9yykq0gipbd5jdd7fsh9qpv4v2h5lggadjdd";
+    sha256 = "0mr3911ls5zp3z776ysrdm3sg89zg29r3ip23msydcdbl8wymw30";
   };
 
   buildInputs = [ gtk3 gobject-introspection wrapGAppsHook ];
diff --git a/pkgs/applications/science/electronics/eagle/eagle.nix b/pkgs/applications/science/electronics/eagle/eagle.nix
index 831ec9662b09..286dbc07f3da 100644
--- a/pkgs/applications/science/electronics/eagle/eagle.nix
+++ b/pkgs/applications/science/electronics/eagle/eagle.nix
@@ -13,11 +13,11 @@ let
   in
   stdenv.mkDerivation rec {
     name = "eagle-${version}";
-    version = "9.3.1";
+    version = "9.3.2";
 
     src = fetchurl {
       url = "https://eagle-updates.circuits.io/downloads/${builtins.replaceStrings ["."] ["_"] version}/Autodesk_EAGLE_${version}_English_Linux_64bit.tar.gz";
-      sha256 = "0hrbw368kskjzwjnqrri5j7c10d0z5m81h3s9zhqfrmwym42vdc5";
+      sha256 = "0xrrd2d86gxrkbqvssbg8zki40hk05h48w73b0hv7wnc7wg1msir";
     };
 
     desktopItem = makeDesktopItem {
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index 7c32641e9c30..4111677ce455 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -108,6 +108,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     hydraPlatforms = platforms.linux;
 
-    maintainers = [ maintainers.peti ];
+    maintainers = with maintainers; [ peti timokau ];
   };
 }
diff --git a/pkgs/applications/version-management/git-review/default.nix b/pkgs/applications/version-management/git-review/default.nix
index 101770da8885..ecc054df47e7 100644
--- a/pkgs/applications/version-management/git-review/default.nix
+++ b/pkgs/applications/version-management/git-review/default.nix
@@ -1,20 +1,18 @@
-{ stdenv, fetchurl, pythonPackages} :
+{ stdenv, fetchFromGitHub, pythonPackages} :
 
 pythonPackages.buildPythonApplication rec {
-  name = "git-review-${version}";
-  version = "1.27.0";
+  pname = "git-review";
+  version = "1.28.0";
 
   # Manually set version because prb wants to get it from the git
   # upstream repository (and we are installing from tarball instead)
   PBR_VERSION = "${version}";
 
-  postPatch = ''
-    sed -i -e '/argparse/d' requirements.txt
-  '';
-
-  src = fetchurl rec {
-    url = "https://github.com/openstack-infra/git-review/archive/${version}.tar.gz";
-    sha256 = "0smdkps9avnj58izyfc5m0amq8nafgs9iqlyaf7ncrlvypia1f3q";
+  src = fetchFromGitHub rec {
+    owner = "openstack-infra";
+    repo = pname;
+    rev = version;
+    sha256 = "1hgw1dkl94m3idv4izc7wf2j7al2c7nnsqywy7g53nzkv9pfv47s";
   };
 
   propagatedBuildInputs = with pythonPackages; [ pbr requests setuptools ];
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index b634625206a6..719626fe40a8 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -200,14 +200,14 @@ rec {
   # Get revisions from
   # https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/*
 
-  docker_18_09 = dockerGen rec {
-    version = "18.09.2";
-    rev = "62479626f213818ba5b4565105a05277308587d5"; # git commit
-    sha256 = "05kvpy1c4g661xfds6dfzb8r5q76ndblxjykfj06had18pv0xxd4";
-    runcRev = "09c8266bf2fcf9519a651b04ae54c967b9ab86ec";
-    runcSha256 = "08h45vs1f25byapqzy6x42r86m232z166v6z81gc2a3id8v0nzia";
-    containerdRev = "9754871865f7fe2f4e74d43e2fc7ccd237edcbce";
-    containerdSha256 = "065snv0s3v3z0ghadlii4w78qnhchcbx2kfdrvm8fk8gb4pkx1ya";
+  docker_18_09 = makeOverridable dockerGen {
+    version = "18.09.5";
+    rev = "e8ff056dbcfadaeca12a5f508b0cec281126c01d";
+    sha256 = "16nd9vg2286m6v47fjq2zicmfvi8vwiwn24yylxia8b9mk417kdb";
+    runcRev = "2b18fe1d885ee5083ef9f0838fee39b62d653e30";
+    runcSha256 = "0g0d9mh5fcvsjgddiyw98ph5zpz5ivlwy89m45jxwbzkxb21gy7w";
+    containerdRev = "bb71b10fd8f58240ca47fbb579b9d1028eea7c84";
+    containerdSha256 = "0npbzixf3c0jvzm159vygvkydrr8h36c9sq50yv0mdinrys2bvg0";
     tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662";
     tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
   };
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 908e888503e7..04fead5209c0 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -47,9 +47,10 @@ stdenv.mkDerivation rec {
     sha256 = "08frr1fdjx8qcfh3fafn10kibdwbvkqqvfl7hpqbm7i9dg4f1zlq";
   };
 
+  nativeBuildInputs = [ python2 pkgconfig flex bison ];
   buildInputs =
-    [ python2 zlib pkgconfig glib ncurses perl pixman
-      vde2 texinfo flex bison makeWrapper lzo snappy
+    [ zlib glib ncurses perl pixman
+      vde2 texinfo makeWrapper lzo snappy
       gnutls nettle curl
     ]
     ++ optionals stdenv.isDarwin [ CoreServices Cocoa Hypervisor rez setfile ]
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 364771de80fd..fa86257a1a95 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -42,17 +42,17 @@ with luaPackages; stdenv.mkDerivation rec {
   cmakeFlags = "-DOVERRIDE_VERSION=${version}";
 
   GI_TYPELIB_PATH = "${pango.out}/lib/girepository-1.0";
+  # LUA_CPATH and LUA_PATH are used only for *building*, see the --search flags
+  # below for how awesome finds the libraries it needs at runtime.
   LUA_CPATH = "${lgi}/lib/lua/${lua.luaversion}/?.so";
-  LUA_PATH  = "?.lua;${lgi}/share/lua/${lua.luaversion}/?.lua;${lgi}/share/lua/${lua.luaversion}/lgi/?.lua";
+  LUA_PATH  = "${lgi}/share/lua/${lua.luaversion}/?.lua;;";
 
   postInstall = ''
     wrapProgram $out/bin/awesome \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
       --add-flags '--search ${lgi}/lib/lua/${lua.luaversion}' \
       --add-flags '--search ${lgi}/share/lua/${lua.luaversion}' \
-      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-      --prefix LUA_PATH ';'  "${lgi}/share/lua/${lua.luaversion}/?.lua;${lgi}/share/lua/${lua.luaversion}/lgi/?.lua" \
-      --prefix LUA_CPATH ';' "${lgi}/lib/lua/${lua.luaversion}/?.so"
+      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH"
 
     wrapProgram $out/bin/awesome-client \
       --prefix PATH : "${which}/bin"
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index ad06b1ee832c..3299811c4978 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
       sha256 = "0r583nmqvq43ib93yv6flw8pj833v32lbs0q0xld56s3rnzvvdcp";
     })
     ./sway-config-no-nix-store-references.patch
+    ./load-configuration-from-etc.patch
   ];
 
   nativeBuildInputs = [ pkgconfig meson ninja scdoc ];
diff --git a/pkgs/applications/window-managers/sway/load-configuration-from-etc.patch b/pkgs/applications/window-managers/sway/load-configuration-from-etc.patch
new file mode 100644
index 000000000000..26a3d40d66cb
--- /dev/null
+++ b/pkgs/applications/window-managers/sway/load-configuration-from-etc.patch
@@ -0,0 +1,42 @@
+From 26f9c65ef037892977a824f0d7d7111066856b53 Mon Sep 17 00:00:00 2001
+From: Michael Weiss <dev.primeos@gmail.com>
+Date: Sat, 27 Apr 2019 14:26:16 +0200
+Subject: [PATCH] Load configs from /etc but fallback to /nix/store
+
+This change will load all configuration files from /etc, to make it easy
+to override them, but fallback to /nix/store/.../etc/sway/config to make
+Sway work out-of-the-box with the default configuration on non NixOS
+systems.
+---
+ meson.build   | 3 ++-
+ sway/config.c | 1 +
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 02b5d606..c03a9c0f 100644
+--- a/meson.build
++++ b/meson.build
+@@ -129,7 +129,8 @@ if scdoc.found()
+ 	endforeach
+ endif
+ 
+-add_project_arguments('-DSYSCONFDIR="/@0@"'.format(join_paths(prefix, sysconfdir)), language : 'c')
++add_project_arguments('-DSYSCONFDIR="/@0@"'.format(sysconfdir), language : 'c')
++add_project_arguments('-DNIX_SYSCONFDIR="/@0@"'.format(join_paths(prefix, sysconfdir)), language : 'c')
+ 
+ version = '"@0@"'.format(meson.project_version())
+ if git.found()
+diff --git a/sway/config.c b/sway/config.c
+index 4cd21bbc..dd855753 100644
+--- a/sway/config.c
++++ b/sway/config.c
+@@ -317,6 +317,7 @@ static char *get_config_path(void) {
+ 		"$XDG_CONFIG_HOME/i3/config",
+ 		SYSCONFDIR "/sway/config",
+ 		SYSCONFDIR "/i3/config",
++		NIX_SYSCONFDIR "/sway/config",
+ 	};
+ 
+ 	char *config_home = getenv("XDG_CONFIG_HOME");
+-- 
+2.19.2
diff --git a/pkgs/build-support/appimage/default.nix b/pkgs/build-support/appimage/default.nix
index 6db626464fb7..f0c0faa8cdab 100644
--- a/pkgs/build-support/appimage/default.nix
+++ b/pkgs/build-support/appimage/default.nix
@@ -23,7 +23,7 @@ rec {
     buildCommand = ''
       install $src ./appimage
       patchelf \
-        --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
+        --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
         --replace-needed libz.so.1 ${zlib}/lib/libz.so.1 \
         ./appimage
 
@@ -33,7 +33,7 @@ rec {
     '';
   };
 
-  wrapAppImage = { name, src, extraPkgs }: buildFHSUserEnv (defaultFhsEnvArgs // {
+  wrapAppImage = args@{ name, src, extraPkgs, ... }: buildFHSUserEnv (defaultFhsEnvArgs // {
     inherit name;
 
     targetPkgs = pkgs: defaultFhsEnvArgs.targetPkgs pkgs ++ extraPkgs pkgs;
@@ -46,17 +46,15 @@ rec {
       cd $APPDIR
       exec ./AppRun "$@"
     '';
-  });
+  } // (removeAttrs args (builtins.attrNames (builtins.functionArgs wrapAppImage))));
 
-  wrapType1 = args@{ name, src, extraPkgs ? pkgs: [] }: wrapAppImage {
-    inherit name extraPkgs;
+  wrapType1 = args@{ name, src, extraPkgs ? pkgs: [], ... }: wrapAppImage (args // {
     src = extractType1 { inherit name src; };
-  };
+  });
 
-  wrapType2 = args@{ name, src, extraPkgs ? pkgs: [] }: wrapAppImage {
-    inherit name extraPkgs;
+  wrapType2 = args@{ name, src, extraPkgs ? pkgs: [], ... }: wrapAppImage (args // {
     src = extractType2 { inherit name src; };
-  };
+  });
 
   defaultFhsEnvArgs = {
     name = "appimage-env";
diff --git a/pkgs/data/fonts/iosevka/bin.nix b/pkgs/data/fonts/iosevka/bin.nix
index 5a3d308b492e..0676d3c0e1f6 100644
--- a/pkgs/data/fonts/iosevka/bin.nix
+++ b/pkgs/data/fonts/iosevka/bin.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchzip }:
 
 let
-  version = "2.2.0";
+  version = "2.2.1";
 in fetchzip rec {
   name = "iosevka-bin-${version}";
 
@@ -12,7 +12,7 @@ in fetchzip rec {
     unzip -j $downloadedFile \*.ttc -d $out/share/fonts/iosevka
   '';
 
-  sha256 = "038jpax2kgpknqzlg4iip4213f5lbs99iixsxccxy1bg4w7liqsa";
+  sha256 = "0d5ys9k8adj9v1hpwbmjqshzpjlnyj81xwp0328vc5q8pvjcfly6";
 
   meta = with stdenv.lib; {
     homepage = https://be5invis.github.io/Iosevka/;
diff --git a/pkgs/data/fonts/nahid-fonts/default.nix b/pkgs/data/fonts/nahid-fonts/default.nix
new file mode 100644
index 000000000000..31c0f5590bd5
--- /dev/null
+++ b/pkgs/data/fonts/nahid-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "nahid-fonts";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "rastikerdar";
+    repo = "nahid-font";
+    rev = "v${version}";
+    sha256 = "0n42sywi41zin9dilr8vabmcqvmx2f1a8b4yyybs6ms9zb9xdkxg";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/nahid-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/nahid-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rastikerdar/nahid-font;
+    description = "A Persian (Farsi) Font - قلم (فونت) فارسی ناهید";
+    license = licenses.free;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/xkcd-font/default.nix b/pkgs/data/fonts/xkcd-font/default.nix
new file mode 100644
index 000000000000..9aa664fd2896
--- /dev/null
+++ b/pkgs/data/fonts/xkcd-font/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "xkcd-font";
+  version = "unstable-2017-08-24";
+
+  src = fetchFromGitHub {
+    owner = "ipython";
+    repo = pname;
+    rev = "5632fde618845dba5c22f14adc7b52bf6c52d46d";
+    sha256 = "01wpfc1yp93b37r472mx2b459il5gywnv5sl7pp9afpycb3i4f6l";
+  };
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+    install -Dm444 -t $out/share/fonts/opentype/ xkcd/build/xkcd.otf
+    install -Dm444 -t $out/share/fonts/truetype/ xkcd-script/font/xkcd-script.ttf
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The xkcd font";
+    homepage = https://github.com/ipython/xkcd-font;
+    license = licenses.cc-by-nc-30;
+    platforms = platforms.all;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/desktops/enlightenment/efl.nix b/pkgs/desktops/enlightenment/efl.nix
index ea4e6cd1f1c9..0ab50bd53f05 100644
--- a/pkgs/desktops/enlightenment/efl.nix
+++ b/pkgs/desktops/enlightenment/efl.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   name = "efl-${version}";
-  version = "1.21.1";
+  version = "1.22.1";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/libs/efl/${name}.tar.xz";
-    sha256 = "0a5907h896pvpix7a6idc2fspzy6d78xrzf84k8y9fyvnd14nxs4";
+    sha256 = "04mfjvaxi36b7r6kn4n0nq2gj97cbldk9iqnr5pf8jnm8plyblr0";
   };
 
   nativeBuildInputs = [ pkgconfig gtk3 ];
@@ -29,9 +29,6 @@ stdenv.mkDerivation rec {
     harfbuzz jbig2dec librsvg dbus alsaLib poppler ghostscript libraw libspectre xineLib libwebp curl libdrm
     libinput utillinux fribidi SDL2 ];
 
-  # as of 1.21.0 compilation will fail due to -Werror=format-security
-  hardeningDisable = [ "format" ];
-
   # ac_ct_CXX must be set to random value, because then it skips some magic which does alternative searching for g++
   configureFlags = [
     "--enable-sdl"
@@ -54,6 +51,10 @@ stdenv.mkDerivation rec {
 
   patches = [ ./efl-elua.patch ];
 
+  postPatch = ''
+    patchShebangs src/lib/elementary/config_embed
+  '';
+
   # bin/edje_cc creates $HOME/.run, which would break build of reverse dependencies.
   setupHook = writeText "setupHook.sh" ''
     export HOME="$TEMPDIR"
diff --git a/pkgs/desktops/gnustep/libobjc2/default.nix b/pkgs/desktops/gnustep/libobjc2/default.nix
index 3aba235b3a79..b238623eb09a 100644
--- a/pkgs/desktops/gnustep/libobjc2/default.nix
+++ b/pkgs/desktops/gnustep/libobjc2/default.nix
@@ -1,20 +1,17 @@
 { stdenv, lib, fetchFromGitHub, cmake }:
 
-let
-  version = "1.8.1";
-in
-
 stdenv.mkDerivation rec {
-  name = "libobjc2-${version}";
+  pname = "libobjc2";
+  version = "1.9";
 
   src = fetchFromGitHub {
     owner = "gnustep";
     repo = "libobjc2";
     rev = "v${version}";
-    sha256 = "12v9pjg97h56mb114cqd22q1pdwhmxrgdw5hal74ddlrhiq1nzvi";
+    sha256 = "00pscl3ly3rv6alf9vk70kxnnxq2rfgpc1ylcv6cgjs9jxdnrqmn";
   };
 
-  buildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ];
 
   cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ];
 
diff --git a/pkgs/desktops/mate/marco/default.nix b/pkgs/desktops/mate/marco/default.nix
index c9dfb37d7676..3719225fe8f7 100644
--- a/pkgs/desktops/mate/marco/default.nix
+++ b/pkgs/desktops/mate/marco/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "marco-${version}";
-  version = "1.22.0";
+  version = "1.22.1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1i1pi1z9mrb6564mxcwb93jqpdppfv58c2viwmicsixis62hv5wx";
+    sha256 = "1j7pvq8ndyl2x8jmh95sj69cnf0q9qsjn7lkr3jz6hk103mga82f";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/mate/mate-session-manager/default.nix b/pkgs/desktops/mate/mate-session-manager/default.nix
index 6fc18b887261..3448e8327f5b 100644
--- a/pkgs/desktops/mate/mate-session-manager/default.nix
+++ b/pkgs/desktops/mate/mate-session-manager/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "mate-session-manager-${version}";
-  version = "1.22.0";
+  version = "1.22.1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1kpfmgay01gm74paaxccs3lim4jfb4hsm7i85jfdypr51985pwyj";
+    sha256 = "1ix8picxgc28m5zd0ww3zvzw6rz38wvzsrbqw28hghrfg926h6ig";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/mate/mate-system-monitor/default.nix b/pkgs/desktops/mate/mate-system-monitor/default.nix
index 9c496bfae60f..f7cdf036cebf 100644
--- a/pkgs/desktops/mate/mate-system-monitor/default.nix
+++ b/pkgs/desktops/mate/mate-system-monitor/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "mate-system-monitor-${version}";
-  version = "1.22.0";
+  version = "1.22.1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0rs0n5ivmvi355fp3ymcp1jj2sz9viw31475aw7zh7s1l7dn969x";
+    sha256 = "0yh1sh5snd7ivchh6l9rbn1s7ia4j5ihhzhqkyjnhr8ln59dvcbm";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/sources.json b/pkgs/development/compilers/adoptopenjdk-bin/sources.json
index 32ace2a817a0..03febb6aa355 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/sources.json
+++ b/pkgs/development/compilers/adoptopenjdk-bin/sources.json
@@ -5,7 +5,7 @@
         "hotspot": {
           "aarch64": {
             "build": "7",
-            "sha256": "ac367f3261fb53508c07f7eeb767b11ab53681b7613b81b6b7030c4db00b1aa8",
+            "sha256": "894a846600ddb0df474350037a2fb43e3343dc3606809a20c65e750580d8f2b9",
             "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.3%2B7/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.3_7.tar.gz",
             "version": "11.0.3"
           },
@@ -33,7 +33,7 @@
         "hotspot": {
           "aarch64": {
             "build": "7",
-            "sha256": "4af5b7d6678d03f2207029a7c610d81b1f016462c1dfcd8153a227b1df973a42",
+            "sha256": "de31fab70640c6d5099de5fc8fa8b4d6b484a7352fa48a9fafbdc088ca708564",
             "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.3%2B7/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.3_7.tar.gz",
             "version": "11.0.3"
           },
diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix
index 832954dd67f2..952c5d1bf6ae 100644
--- a/pkgs/development/compilers/openjdk/8.nix
+++ b/pkgs/development/compilers/openjdk/8.nix
@@ -95,6 +95,9 @@ let
       ./swing-use-gtk-jdk8.patch
     ];
 
+    # Hotspot cares about the host(!) version otherwise
+    DISABLE_HOTSPOT_OS_VERSION_CHECK = "ok";
+
     preConfigure = ''
       chmod +x configure
       substituteInPlace configure --replace /bin/bash "${bash}/bin/bash"
diff --git a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
index 8342c9fd3359..ea6b9d2a9fe7 100644
--- a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
@@ -89,8 +89,9 @@ let result = stdenv.mkDerivation rec {
       armv7l-linux  = "linux-arm32-vfp-hflt";
       aarch64-linux = "linux-arm64-vfp-hflt";
     }.${stdenv.hostPlatform.system};
+    javadlPlatformName = "linux-i586";
   in fetchurl {
-   url = "http://download.oracle.com/otn-pub/java/jdk/${productVersion}u${patchVersion}-b${buildVersion}/${releaseToken}/jdk-${productVersion}u${patchVersion}-${platformName}.tar.gz";
+   url = "http://javadl.oracle.com/webapps/download/GetFile/1.${productVersion}.0_${patchVersion}-b${buildVersion}/${releaseToken}/${javadlPlatformName}/jdk-${productVersion}u${patchVersion}-${platformName}.tar.gz";
    curlOpts = "-b oraclelicense=a";
    sha256 = sha256.${stdenv.hostPlatform.system};
   };
diff --git a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
index 81f4ef3c7dba..d9ee5010f7cf 100644
--- a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
@@ -2,13 +2,13 @@
 # jce download url: http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
 import ./jdk-linux-base.nix {
   productVersion = "8";
-  patchVersion = "201";
-  buildVersion = "09";
-  sha256.i686-linux = "1f9n93zmkggchaxkchp4bqasvxznn96zjci34f52h7v392jkzqac";
-  sha256.x86_64-linux = "0w730v2q0iaxf2lprabwmy7129byrs0hhdbwas575p1xmk00qw6b";
-  sha256.armv7l-linux = "0y6bvq93lsf21v6ca536dpfhkk5ljsj7c6di0qzkban37bivj0si";
-  sha256.aarch64-linux = "1bybysgg9llqzllsmdszmmb73v5az2l1shxn6lxwv3wwiazpf47q";
-  releaseToken = "42970487e3af4f5aa5bca3f542482c60";
+  patchVersion = "211";
+  buildVersion = "12";
+  sha256.i686-linux = "0mdrljs0rw9s4pvaa3sn791nqgdrp8749z3qn80y7hhad74kvsnp";
+  sha256.x86_64-linux = "13b6qk4sn8jdhxa22na9d2aazm4yjh6yxrlxr189gxy3619y9dy0";
+  sha256.armv7l-linux = "1ij1x925k7lyp5f98gy8r0xfr41qhczf2rb74plwwmrccc1k00p5";
+  sha256.aarch64-linux = "041r615qj9qy34a9gxm8968qlmf060ba2as5w97v86mbik4rca05";
+  releaseToken = "478a62b7d4e34b78b671c754eaaf38ab";
   jceName = "jce_policy-8.zip";
   sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";
 }
diff --git a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
index 0263bdde8d28..9fab02ab5361 100644
--- a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
@@ -2,13 +2,13 @@
 # jce download url: http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
 import ./jdk-linux-base.nix {
   productVersion = "8";
-  patchVersion = "202";
-  buildVersion = "09";
-  sha256.i686-linux = "19np392dwdqdq39lmm10607w2h042lrm5953fnsfh1bb9jli1pgj";
-  sha256.x86_64-linux = "1q4l8pymjvsvxfwaw0rdcnhryh1la2bvg5f4d4my41ka390k4p4s";
-  sha256.armv7l-linux = "06aljl7dqmmhmp7xswgvkcgh9mam71wnqydg9yb3hkcc443cm581";
-  sha256.aarch64-linux = "12v9ndv7a2c9zqq6ai2vsgwad0lzmf4c6jxy4p9miapmhjzx5vii";
-  releaseToken = "42970487e3af4f5aa5bca3f542482c60";
+  patchVersion = "212";
+  buildVersion = "10";
+  sha256.i686-linux = "03dj9q0bi3ib731f4zl9hylkrgw417h6qlg2wi7nw71b0fqhijn1";
+  sha256.x86_64-linux = "1yzddxzfh6h14bpzis1abp52x4jjljg8a3zyqz483q6qm05caq1i";
+  sha256.armv7l-linux = "0x333alkqdx8mmiirair7g5iiwif5v9ka4j3qr0f42ilvmk8csnx";
+  sha256.aarch64-linux = "0vcbdvcsl8rm47i07s93jmrrs5laibf937d8vacjqqgh9bbhsr2c";
+  releaseToken = "59066701cf1a433da9770636fbc4c9aa";
   jceName = "jce_policy-8.zip";
   sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";
 }
diff --git a/pkgs/development/compilers/pforth/default.nix b/pkgs/development/compilers/pforth/default.nix
new file mode 100644
index 000000000000..7885582ad125
--- /dev/null
+++ b/pkgs/development/compilers/pforth/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  version = "28";
+  pname = "pforth";
+  src = fetchFromGitHub {
+    owner = "philburk";
+    repo = "pforth";
+    rev = "9190005e32c6151b76ac707b30eeb4d5d9dd1d36";
+    sha256 = "0k3pmcgybsnwrxy75piyb2420r8d4ij190606js32j99062glr3x";
+  };
+
+  makeFlags = [ "SRCDIR=." ];
+  makefile = "build/unix/Makefile";
+
+  installPhase = ''
+    install -Dm755 pforth_standalone $out/bin/pforth
+  '';
+
+
+  meta = {
+    description = "Portable ANSI style Forth written in ANSI C";
+    homepage = http://www.softsynth.com/pforth/;
+    license = stdenv.lib.licenses.publicDomain;
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ yrashk ];
+  };
+}
diff --git a/pkgs/development/compilers/purescript/purescript/default.nix b/pkgs/development/compilers/purescript/purescript/default.nix
index 0bfb8de0061b..67818bfa1dc9 100644
--- a/pkgs/development/compilers/purescript/purescript/default.nix
+++ b/pkgs/development/compilers/purescript/purescript/default.nix
@@ -17,20 +17,20 @@ let
         '';
 
 in stdenv.mkDerivation rec {
-  name = "purs-simple";
-  version = "v0.12.4";
+  pname = "purescript";
+  version = "0.12.5";
 
   src =
     if stdenv.isDarwin
     then
     fetchurl {
-      url = "https://github.com/purescript/purescript/releases/download/v0.12.4/macos.tar.gz";
-      sha256 = "046b18plakwvqr77x1hybhfiyzrhnnq0q5ixcmypri1mkkdsmczx";
+      url = "https://github.com/${pname}/${pname}/releases/download/v${version}/macos.tar.gz";
+      sha256 = "15j9lkrl15dicx37bmh0199b3qdixig7w24wvdzi20jqbacz8nkn";
     }
     else
     fetchurl {
-      url = "https://github.com/purescript/purescript/releases/download/v0.12.4/linux64.tar.gz";
-      sha256 = "18yny533sjfgacxqx1ki306nhznj4q6nv52c83l82gqj8amyj7k0";
+      url = "https://github.com/${pname}/${pname}/releases/download/v${version}/linux64.tar.gz";
+      sha256 = "07dva5gxq77g787krscv4dsz5088fzkvpmm9fwxw9a59jszzs7kq";
     };
 
 
diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix
index ee662d39e451..056ad7454600 100644
--- a/pkgs/development/compilers/sbcl/bootstrap.nix
+++ b/pkgs/development/compilers/sbcl/bootstrap.nix
@@ -3,9 +3,9 @@
 let
   options = rec {
     x86_64-darwin = rec {
-      version = "1.1.8";
+      version = "1.2.11";
       system = "x86-64-darwin";
-      sha256 = "006pr88053wclvbjfjdypnbiw8wymbzdzi7a6kbkpdfn4zf5943j";
+      sha256 = "0lh4gpvi8hl6g6b9321g5pwh8sk3218i7h4lx7p3vd9z0cf3lz85";
     };
     x86_64-linux = rec {
       version = "1.3.16";
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index bca506169889..469d7847409f 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   name    = "sbcl-${version}";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchurl {
     url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "1a4c84b6qqi4w4l1zzhnhnywk73j3wb0gjgghzcw0h5syqbqzy8z";
+    sha256 = "08z62qba0kmm15k93s2rq7ipi769895g8iwigcp20qjh6amwnwph";
   };
 
   buildInputs = [texinfo];
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index ff309da41d2d..46230a532f05 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -1259,7 +1259,7 @@ 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 super.pandoc_2_7_2;
-  pandoc-citeproc = doDistribute super.pandoc-citeproc_0_16_1_3;
+  pandoc-citeproc = doDistribute super.pandoc-citeproc_0_16_2;
 
   # https://github.com/qfpl/tasty-hedgehog/issues/24
   tasty-hedgehog = dontCheck super.tasty-hedgehog;
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index ad444e56b56a..f8a5c0bb5737 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.17
+  # LTS Haskell 13.18
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -239,7 +239,7 @@ default-package-overrides:
   - avers ==0.0.17.1
   - avers-api ==0.1.0
   - avers-server ==0.1.0.1
-  - avro ==0.4.4.1
+  - avro ==0.4.4.2
   - avwx ==0.3.0.2
   - axel ==0.0.9
   - backprop ==0.2.6.2
@@ -382,6 +382,8 @@ default-package-overrides:
   - ChannelT ==0.0.0.7
   - charset ==0.3.7.1
   - charsetdetect-ae ==1.1.0.4
+  - Chart ==1.9.1
+  - Chart-diagrams ==1.9.2
   - chaselev-deque ==0.5.0.5
   - cheapskate ==0.1.1.1
   - cheapskate-highlight ==0.1.0.0
@@ -588,6 +590,7 @@ default-package-overrides:
   - diagrams-contrib ==1.4.3
   - diagrams-core ==1.4.1.1
   - diagrams-lib ==1.4.2.3
+  - diagrams-postscript ==1.4.1
   - diagrams-rasterific ==1.4.1.1
   - diagrams-solve ==0.1.1
   - diagrams-svg ==1.4.2
@@ -815,7 +818,7 @@ default-package-overrides:
   - getopt-generics ==0.13.0.3
   - ghc-core ==0.5.6
   - ghc-exactprint ==0.5.8.2
-  - ghcid ==0.7.2
+  - ghcid ==0.7.4
   - ghci-hexcalc ==0.1.0.2
   - ghcjs-codemirror ==0.0.0.2
   - ghc-paths ==0.1.0.9
@@ -1043,6 +1046,7 @@ default-package-overrides:
   - http-common ==0.8.2.0
   - http-conduit ==2.3.7
   - http-date ==0.0.8
+  - http-directory ==0.1.1
   - httpd-shed ==0.4.0.3
   - http-link-header ==1.0.3.1
   - http-media ==0.7.1.3
@@ -1116,7 +1120,7 @@ default-package-overrides:
   - insert-ordered-containers ==0.2.1.0
   - inspection-testing ==0.4.1.2
   - instance-control ==0.1.2.0
-  - integer-logarithms ==1.0.2.2
+  - integer-logarithms ==1.0.3
   - integration ==0.2.1
   - intern ==0.9.2
   - interpolate ==0.2.0
@@ -1196,7 +1200,7 @@ default-package-overrides:
   - language-haskell-extract ==0.2.4
   - language-java ==0.2.9
   - language-javascript ==0.6.0.11
-  - language-puppet ==1.4.3
+  - language-puppet ==1.4.4
   - lapack-ffi ==0.0.2
   - lapack-ffi-tools ==0.1.2
   - largeword ==1.2.5
@@ -1260,7 +1264,7 @@ default-package-overrides:
   - long-double ==0.1
   - loop ==0.3.0
   - lrucaching ==0.3.3
-  - lsp-test ==0.5.1.0
+  - lsp-test ==0.5.1.1
   - lucid ==2.9.11
   - lucid-extras ==0.1.0.1
   - lxd-client-config ==0.1.0.1
@@ -1422,7 +1426,7 @@ default-package-overrides:
   - network-messagepack-rpc ==0.1.1.0
   - network-multicast ==0.2.0
   - network-simple ==0.4.3
-  - network-simple-tls ==0.3.1
+  - network-simple-tls ==0.3.2
   - network-transport ==0.5.2
   - network-transport-composed ==0.2.1
   - network-uri ==2.6.1.0
@@ -1526,7 +1530,7 @@ default-package-overrides:
   - pem ==0.2.4
   - percent-format ==0.0.1
   - perfect-hash-generator ==0.2.0.6
-  - persist ==0.1.1.2
+  - persist ==0.1.1.3
   - persistable-record ==0.6.0.4
   - persistable-types-HDBC-pg ==0.0.3.5
   - persistent ==2.9.2
@@ -1621,7 +1625,7 @@ 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.6
+  - proto-lens-arbitrary ==0.1.2.7
   - proto-lens-combinators ==0.4.0.1
   - proto-lens-optparse ==0.1.1.5
   - proto-lens-protobuf-types ==0.4.0.1
@@ -1702,7 +1706,7 @@ default-package-overrides:
   - regex-tdfa ==1.2.3.1
   - regex-tdfa-text ==1.0.0.3
   - regex-with-pcre ==1.0.2.0
-  - registry ==0.1.3.4
+  - registry ==0.1.3.5
   - reinterpret-cast ==0.1.0
   - relapse ==1.0.0.0
   - relational-query ==0.12.1.0
@@ -2054,7 +2058,7 @@ default-package-overrides:
   - th-strict-compat ==0.1.0.1
   - th-utilities ==0.2.1.0
   - thyme ==0.3.5.5
-  - tidal ==1.0.10
+  - tidal ==1.0.11
   - tile ==0.3.0.0
   - time-compat ==0.1.0.3
   - timeit ==2.0
@@ -2097,7 +2101,7 @@ default-package-overrides:
   - tuples-homogenous-h98 ==0.1.1.0
   - tuple-sop ==0.3.1.0
   - tuple-th ==0.2.5
-  - turtle ==1.5.13
+  - turtle ==1.5.14
   - typed-process ==0.2.4.0
   - type-fun ==0.1.1
   - type-hint ==0.1
@@ -2190,7 +2194,7 @@ default-package-overrides:
   - vector-split ==1.0.0.2
   - vector-th-unbox ==0.2.1.6
   - verbosity ==0.2.3.0
-  - versions ==3.5.0
+  - versions ==3.5.1
   - ViennaRNAParser ==1.3.3
   - vinyl ==0.10.0.1
   - vivid ==0.4.2.3
@@ -2237,7 +2241,7 @@ default-package-overrides:
   - websockets-snap ==0.10.3.0
   - weigh ==0.0.14
   - wide-word ==0.1.0.8
-  - wikicfp-scraper ==0.1.0.10
+  - wikicfp-scraper ==0.1.0.11
   - wild-bind ==0.1.2.3
   - wild-bind-x11 ==0.2.0.6
   - Win32-notify ==0.3.0.3
@@ -6888,6 +6892,7 @@ broken-packages:
   - minesweeper
   - miniforth
   - minilens
+  - minilight
   - minimung
   - minio-hs
   - minions
@@ -6895,6 +6900,7 @@ broken-packages:
   - miniplex
   - minirotate
   - ministg
+  - minitypeset-opengl
   - minst-idx
   - mios
   - mirror-tweet
@@ -7184,6 +7190,7 @@ broken-packages:
   - network-server
   - network-service
   - network-simple-sockaddr
+  - network-simple-wss
   - network-stream
   - network-topic-models
   - network-transport-amqp
@@ -7954,6 +7961,7 @@ broken-packages:
   - rascal
   - Rasenschach
   - rating-chgk-info
+  - rattle
   - rattletrap
   - raven-haskell-scotty
   - raw-feldspar
@@ -8223,6 +8231,7 @@ broken-packages:
   - safe-failure-cme
   - safe-freeze
   - safe-globals
+  - safe-json
   - safe-lazy-io
   - safe-length
   - safe-money
@@ -8478,6 +8487,8 @@ broken-packages:
   - shellish
   - shellmate
   - shellmate-extras
+  - shh
+  - shh-extras
   - shivers-cfg
   - shoap
   - shopify
@@ -8526,6 +8537,7 @@ broken-packages:
   - simple-tar
   - simple-templates
   - simple-ui
+  - simple-units
   - simple-vec3
   - simple-zipper
   - simpleargs
@@ -9834,6 +9846,7 @@ broken-packages:
   - yam
   - yam-datasource
   - yam-job
+  - yam-redis
   - yam-servant
   - yam-transaction-odbc
   - yam-web
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index ce4b3b2d7074..1035064f90ea 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -942,15 +942,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "Allure_0_9_3_3" = callPackage
+  "Allure_0_9_4_1" = callPackage
     ({ mkDerivation, async, base, enummapset, filepath, ghc-compact
      , LambdaHack, optparse-applicative, primitive, random
      , template-haskell, text, transformers
      }:
      mkDerivation {
        pname = "Allure";
-       version = "0.9.3.3";
-       sha256 = "0s2f8fmcbcyvqg9vx492irr69ihkrwwf6nhp511b4y5xcgw69k12";
+       version = "0.9.4.1";
+       sha256 = "05zmidzwl24aqzgvnbv3hmsav7a6wq90qjhiirrbqpck3c33xqb9";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -6213,6 +6213,25 @@ self: {
        broken = true;
      }) {};
 
+  "Frames-map-reduce" = callPackage
+    ({ mkDerivation, base, containers, foldl, Frames, hashable
+     , map-reduce-folds, newtype, profunctors, random, text, vinyl
+     }:
+     mkDerivation {
+       pname = "Frames-map-reduce";
+       version = "0.1.0.0";
+       sha256 = "05xk49qc5l8h7qnxhyxj9k2r2igcf7qc4njiw9w28fajlmnrgcw3";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers foldl Frames hashable map-reduce-folds newtype
+         profunctors vinyl
+       ];
+       executableHaskellDepends = [ base foldl Frames random text vinyl ];
+       description = "Frames wrapper for map-reduce-folds and some extra folds helpers";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "Frank" = callPackage
     ({ mkDerivation, base, mtl, newtype, she, void }:
      mkDerivation {
@@ -11789,7 +11808,7 @@ self: {
        broken = true;
      }) {};
 
-  "LambdaHack_0_9_3_1" = callPackage
+  "LambdaHack_0_9_4_1" = callPackage
     ({ mkDerivation, assert-failure, async, base, base-compat, binary
      , bytestring, containers, deepseq, directory, enummapset, filepath
      , ghc-compact, ghc-prim, hashable, hsini, keys, miniutter
@@ -11799,8 +11818,8 @@ self: {
      }:
      mkDerivation {
        pname = "LambdaHack";
-       version = "0.9.3.1";
-       sha256 = "1s1xz5iz81wdwxc1bmgbpj2s19qlvz1d5q7c2l01cdzqwd2iwn3f";
+       version = "0.9.4.1";
+       sha256 = "05p80yrfa5v5fq7zyhwpd8ndbw2kgc7a6i2hnikb222lna99b6gk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -13224,6 +13243,21 @@ self: {
        broken = true;
      }) {};
 
+  "Monadoro" = callPackage
+    ({ mkDerivation, ansi-terminal, base, process, time }:
+     mkDerivation {
+       pname = "Monadoro";
+       version = "0.1.2.0";
+       sha256 = "1bqaiarr5gv42xl8fww67iryyh1mscwdkgcahdc988y19ag8a4j9";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ ansi-terminal base process time ];
+       executableHaskellDepends = [ ansi-terminal base process time ];
+       testHaskellDepends = [ ansi-terminal base process time ];
+       description = "A minimalistic CLI Pomodoro timer, based on a library of the same purpose";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "Monaris" = callPackage
     ({ mkDerivation, array, base, containers, directory, free
      , free-game, mtl
@@ -13622,6 +13656,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "NaperianNetCDF" = callPackage
+    ({ mkDerivation, base, hnetcdf, Naperian, split, vector }:
+     mkDerivation {
+       pname = "NaperianNetCDF";
+       version = "0.1.0.1";
+       sha256 = "0hyx9lg9hs124h9a666ym6cpnd3amdcl3v727shzc5v3hzwbvqgj";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base hnetcdf Naperian vector ];
+       executableHaskellDepends = [ base hnetcdf Naperian split ];
+       description = "Instances of NcStore for hypercuboids";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "NaturalLanguageAlphabets" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, binary, cereal
      , containers, criterion, deepseq, file-embed, hashtables
@@ -22198,6 +22246,19 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "acme-this" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "acme-this";
+       version = "0.1.0.0";
+       sha256 = "16zmjrf849m066mnj7rlc10jcddy31ck83mg0b7pmn4cvp95q8k5";
+       revision = "1";
+       editedCabalFile = "1xizmz9yyhxkkaynlk9x0l1nv5maz0shk3d1ipaphc9c6q4b1mjq";
+       libraryHaskellDepends = [ base template-haskell ];
+       description = "import This";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "acme-timemachine" = callPackage
     ({ mkDerivation, base, ghc-prim, mtl, transformers }:
      mkDerivation {
@@ -22305,8 +22366,8 @@ self: {
        pname = "active";
        version = "0.2.0.13";
        sha256 = "1yw029rh0gb63bhwwjynbv173mny14is4cyjkrlvzvxwb0fi96jx";
-       revision = "7";
-       editedCabalFile = "0z4l6j1q3y5zq4941bsb6ypkhfg3pyvb5gcmasymh2nj9g952xkd";
+       revision = "8";
+       editedCabalFile = "1j771jblfaygc3qf8iaw9b87yrqxhkq79mdi9zyhvlr2vcac362s";
        libraryHaskellDepends = [
          base lens linear semigroupoids semigroups vector
        ];
@@ -27585,6 +27646,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "amqp_0_18_2" = callPackage
+    ({ mkDerivation, base, binary, bytestring, clock, connection
+     , containers, data-binary-ieee754, hspec, hspec-expectations
+     , monad-control, network, network-uri, split, stm, text, vector
+     , xml
+     }:
+     mkDerivation {
+       pname = "amqp";
+       version = "0.18.2";
+       sha256 = "0sp7c9vbgaxc5rhfc402q52djr0qpqgmfklhcrx45av2rqymkyxv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring clock connection containers
+         data-binary-ieee754 monad-control network network-uri split stm
+         text vector
+       ];
+       executableHaskellDepends = [ base containers xml ];
+       testHaskellDepends = [
+         base binary bytestring clock connection containers
+         data-binary-ieee754 hspec hspec-expectations network network-uri
+         split stm text vector
+       ];
+       description = "Client library for AMQP servers (currently only RabbitMQ)";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "amqp-conduit" = callPackage
     ({ mkDerivation, amqp, base, bytestring, conduit, exceptions, hspec
      , HUnit, lifted-base, monad-control, mtl, resourcet, text
@@ -30093,6 +30182,34 @@ self: {
        broken = true;
      }) {debian-mirror = null; help = null;};
 
+  "archive-sig" = callPackage
+    ({ mkDerivation, base, bytestring, composition-prelude, directory
+     , filepath
+     }:
+     mkDerivation {
+       pname = "archive-sig";
+       version = "0.2.0.0";
+       sha256 = "1imbailszvxahmhxg9g0qrygi6433gmyg5pby3zq9k5gcc16mmy2";
+       libraryHaskellDepends = [
+         base bytestring composition-prelude directory filepath
+       ];
+       description = "Backpack signature for archive libraries";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "archive-tar" = callPackage
+    ({ mkDerivation, base, bytestring, composition-prelude, tar }:
+     mkDerivation {
+       pname = "archive-tar";
+       version = "0.2.0.0";
+       sha256 = "0svbxr9734ysskilv5kvhfd7s436spn149pb5bcsq3hjz1zq5xq7";
+       libraryHaskellDepends = [
+         base bytestring composition-prelude tar
+       ];
+       description = "Common interface using the tar package";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "archiver" = callPackage
     ({ mkDerivation, base, bytestring, containers, curl, HTTP, network
      , process, random
@@ -32389,15 +32506,15 @@ self: {
 
   "attoparsec-data" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-time, base, base-prelude
-     , bytestring, scientific, text, time
+     , bytestring, scientific, text, time, uuid
      }:
      mkDerivation {
        pname = "attoparsec-data";
-       version = "1.0.3";
-       sha256 = "02bkrbdipd0940aq34dx4156z538jbfxpgdk3pkbb6vjdcghcw9g";
+       version = "1.0.4";
+       sha256 = "03pgzx7l9hh8233r8afhgbk0adw58pln3si83vmrv1h6d8s2x4nr";
        libraryHaskellDepends = [
          attoparsec attoparsec-time base base-prelude bytestring scientific
-         text time
+         text time uuid
        ];
        description = "Parsers for the standard Haskell data types";
        license = stdenv.lib.licenses.mit;
@@ -33294,14 +33411,14 @@ self: {
     ({ mkDerivation, aeson, array, base, base16-bytestring, bifunctors
      , binary, bytestring, containers, data-binary-ieee754, deepseq
      , directory, extra, fail, gauge, hashable, hspec, hspec-discover
-     , lens, lens-aeson, mtl, pure-zlib, QuickCheck, random, scientific
-     , semigroups, tagged, template-haskell, text, tf-random
-     , transformers, unordered-containers, vector, zlib
+     , lens, lens-aeson, mtl, pure-zlib, QuickCheck, random
+     , raw-strings-qq, scientific, semigroups, tagged, template-haskell
+     , text, tf-random, transformers, unordered-containers, vector, zlib
      }:
      mkDerivation {
        pname = "avro";
-       version = "0.4.4.1";
-       sha256 = "12mrgjhms4m9zjax6zqlzn9cisdr482sa642xh5p9h6hdp86ay59";
+       version = "0.4.4.2";
+       sha256 = "1x01f05rhz4nhvzbzai5817c9ajqnph1vfn0z8cp4y7r4srm55w0";
        libraryHaskellDepends = [
          aeson array base base16-bytestring bifunctors binary bytestring
          containers data-binary-ieee754 deepseq fail hashable mtl scientific
@@ -33311,13 +33428,14 @@ self: {
        testHaskellDepends = [
          aeson array base base16-bytestring bifunctors binary bytestring
          containers directory extra fail hashable hspec lens lens-aeson mtl
-         pure-zlib QuickCheck scientific semigroups tagged template-haskell
-         text tf-random transformers unordered-containers vector
+         pure-zlib QuickCheck raw-strings-qq scientific semigroups tagged
+         template-haskell text tf-random transformers unordered-containers
+         vector
        ];
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
-         aeson base bytestring containers gauge hashable mtl random text
-         transformers unordered-containers vector
+         aeson base bytestring containers gauge hashable mtl random
+         raw-strings-qq text transformers unordered-containers vector
        ];
        description = "Avro serialization support for Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -41903,6 +42021,62 @@ self: {
        broken = true;
      }) {};
 
+  "brotli" = callPackage
+    ({ mkDerivation, base, bytestring, HUnit, libbrotlidec
+     , libbrotlienc, QuickCheck, tasty, tasty-hunit, tasty-quickcheck
+     , transformers
+     }:
+     mkDerivation {
+       pname = "brotli";
+       version = "0.0.0.0";
+       sha256 = "1l9qiw5cl0k1rcnqnj9pb7vgj1b06wckkk5i73nqr15ixgcjmr9j";
+       libraryHaskellDepends = [ base bytestring transformers ];
+       libraryPkgconfigDepends = [ libbrotlidec libbrotlienc ];
+       testHaskellDepends = [
+         base bytestring HUnit QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       description = "Brotli (RFC7932) compression and decompression";
+       license = stdenv.lib.licenses.gpl3;
+     }) {libbrotlidec = null; libbrotlienc = null;};
+
+  "brotli-conduit" = callPackage
+    ({ mkDerivation, base, brotli, bytestring, conduit, HUnit
+     , QuickCheck, resourcet, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, transformers
+     }:
+     mkDerivation {
+       pname = "brotli-conduit";
+       version = "0.0.0.0";
+       sha256 = "00hl8g4aw4klzvq8gbgx3ff5iq5diz7lxk9ssn7q8icdpl8w5fbf";
+       libraryHaskellDepends = [
+         base brotli bytestring conduit resourcet transformers
+       ];
+       testHaskellDepends = [
+         base bytestring conduit HUnit QuickCheck resourcet test-framework
+         test-framework-hunit test-framework-quickcheck2
+       ];
+       description = "Conduit interface for Brotli (RFC7932) compression";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "brotli-streams" = callPackage
+    ({ mkDerivation, base, brotli, bytestring, HUnit, io-streams
+     , QuickCheck, test-framework, test-framework-hunit
+     , test-framework-quickcheck2
+     }:
+     mkDerivation {
+       pname = "brotli-streams";
+       version = "0.0.0.0";
+       sha256 = "14jc1nhm50razsl99d95amdf4njf75dnzx8vqkihgrgp7qisyz3z";
+       libraryHaskellDepends = [ base brotli bytestring io-streams ];
+       testHaskellDepends = [
+         base bytestring HUnit io-streams QuickCheck test-framework
+         test-framework-hunit test-framework-quickcheck2
+       ];
+       description = "IO-Streams interface for Brotli (RFC7932) compression";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "browscap" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, ini, lens, lrucache
      , mtl, text, unordered-containers, wreq
@@ -42821,8 +42995,8 @@ self: {
      }:
      mkDerivation {
        pname = "byline";
-       version = "0.3.2.0";
-       sha256 = "100s2f4w0lgnsjgjazck7hnbk3k9ibg1i4rdcyza9jphp67vjgar";
+       version = "0.3.2.1";
+       sha256 = "196c75i7cz7yww3d5pi5p51wd5bf3a8v8nsb2vkiv25ndwrsb20w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46591,8 +46765,8 @@ self: {
      }:
      mkDerivation {
        pname = "cassava-streams";
-       version = "0.3.0.3";
-       sha256 = "01s0h2mi9b4h3jy405jvz2an8w6fdvg370mizfk910anx7wsa3ix";
+       version = "0.3.0.4";
+       sha256 = "17g3qrinzfpmbcqyjrnwaycplmys0p93hb6841cp5rr1pjramb55";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -55490,8 +55664,8 @@ self: {
        pname = "connection";
        version = "0.2.8";
        sha256 = "1swkb9w5vx9ph7x55y51dc0srj2z27nd9ibgn8c0qcl6hx7g9cbh";
-       revision = "1";
-       editedCabalFile = "15qdwqqjv60w14m319a58yjmhzr39dydsnk6r26ydkwxwh23rk73";
+       revision = "2";
+       editedCabalFile = "0bhwcd9dqa2jk23bdz3z3vn2p1gzssinp96dxzznb7af4y5x2gmk";
        libraryHaskellDepends = [
          base byteable bytestring containers data-default-class network
          socks tls x509 x509-store x509-system x509-validation
@@ -55500,6 +55674,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "connection_0_3_0" = callPackage
+    ({ mkDerivation, base, basement, bytestring, containers
+     , data-default-class, network, socks, tls, x509, x509-store
+     , x509-system, x509-validation
+     }:
+     mkDerivation {
+       pname = "connection";
+       version = "0.3.0";
+       sha256 = "1f53bysp8zr8c8dhivrq2k9qmlwnk84d4c1s31sd62ws9yddcw34";
+       revision = "1";
+       editedCabalFile = "0cm421anscv6h4nvhkaqvi5s3lwkc0f34p6z8lzap4wyc4gv578k";
+       libraryHaskellDepends = [
+         base basement bytestring containers data-default-class network
+         socks tls x509 x509-store x509-system x509-validation
+       ];
+       description = "Simple and easy network connections API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "connection-pool" = callPackage
     ({ mkDerivation, base, between, data-default-class, monad-control
      , network, resource-pool, streaming-commons, time
@@ -57417,26 +57611,24 @@ self: {
      }) {};
 
   "cpkg" = callPackage
-    ({ mkDerivation, base, binary, bytestring, bzlib
-     , composition-prelude, containers, cpphs, dhall, directory
-     , filemanip, filepath, hashable, hspec, hspec-megaparsec
-     , http-client, http-client-tls, libarchive, lzma, megaparsec
-     , microlens, mtl, network-uri, optparse-applicative, prettyprinter
-     , process, recursion, tar, temporary, text, zip-archive, zlib
+    ({ mkDerivation, base, binary, bytestring, bzlib, containers, cpphs
+     , dhall, directory, filemanip, filepath, hashable, hspec
+     , hspec-megaparsec, http-client, http-client-tls, libarchive, lzma
+     , megaparsec, microlens, mtl, network-uri, optparse-applicative
+     , prettyprinter, process, recursion, tar, temporary, text
+     , zip-archive, zlib
      }:
      mkDerivation {
        pname = "cpkg";
-       version = "0.1.1.1";
-       sha256 = "06nwkys90i0rdhg1nvwzii88z5f3ijn9kjwrg6lgy2m973zr8668";
-       revision = "1";
-       editedCabalFile = "0dqfgr06mv9xmqs2whzklzgj9ny17ncm6202bhykh9xp8qvzfbyy";
+       version = "0.1.2.1";
+       sha256 = "1wn084r71fq3kx5qjvsg7l7v4njsfxbp1s4rv7f3dgyh7h36xgjj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base binary bytestring bzlib composition-prelude containers dhall
-         directory filemanip filepath hashable http-client http-client-tls
-         libarchive lzma megaparsec microlens mtl network-uri prettyprinter
-         process recursion tar temporary text zip-archive zlib
+         base binary bytestring bzlib containers dhall directory filemanip
+         filepath hashable http-client http-client-tls libarchive lzma
+         megaparsec microlens mtl network-uri prettyprinter process
+         recursion tar temporary text zip-archive zlib
        ];
        libraryToolDepends = [ cpphs ];
        executableHaskellDepends = [
@@ -61394,6 +61586,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "data-compat" = callPackage
+    ({ mkDerivation, base, constraints }:
+     mkDerivation {
+       pname = "data-compat";
+       version = "0.1.0.0";
+       sha256 = "0j9gx0sg2bwqigw9w3kg286bm6imqa35jkgkzagdjg9mfkgy6kwy";
+       libraryHaskellDepends = [ base constraints ];
+       description = "Define Backwards Compatibility Schemes for Arbitrary Data";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "data-concurrent-queue" = callPackage
     ({ mkDerivation, base, stm }:
      mkDerivation {
@@ -62932,8 +63135,8 @@ self: {
      }:
      mkDerivation {
        pname = "datadog-tracing";
-       version = "1.4.0";
-       sha256 = "02gdkh7yxjh2lnjjm4cgpabl0ywwqs145gd5in6s22999chf0hif";
+       version = "1.4.2";
+       sha256 = "1yrig10a38sy6zkj18snqiv4r7b1gd16xk3ni9jm8vn7ls7niwcc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -66424,8 +66627,8 @@ self: {
        pname = "diagrams-contrib";
        version = "1.4.3";
        sha256 = "01r081rvxkb9i56iqi28zw4054nm62pf9f1szd9i0avmnxxsiyv5";
-       revision = "2";
-       editedCabalFile = "0xpw4myq4n6k5lxdll1wg76m3gfymwb746x6qd48qfy3z22nrymw";
+       revision = "3";
+       editedCabalFile = "0mm1mmagx6q8g6dxk1cagqka38z6393ihp0lvf6095prlvidasqs";
        libraryHaskellDepends = [
          base circle-packing colour containers cubicbezier data-default
          data-default-class diagrams-core diagrams-lib diagrams-solve
@@ -67892,6 +68095,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "direm" = callPackage
+    ({ mkDerivation, base, directory }:
+     mkDerivation {
+       pname = "direm";
+       version = "0.1.0.0";
+       sha256 = "048503bgikwffvqa00yxawr1lmqy523i9zvs05dyim6v927m1fmx";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [ base directory ];
+       description = "Deletes a directory and retains its contents in the parent directory";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "dirfiles" = callPackage
     ({ mkDerivation, aeson, base, containers, hblock, safecopy, text
      , time, unordered-containers
@@ -67989,8 +68205,8 @@ self: {
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "0.8.1";
-       sha256 = "0r7nlivcrqazjgsh54k8qrl64h7065c9vdg4ndv8bahvxvw1ld8r";
+       version = "0.8.2";
+       sha256 = "0ig8qwz0qgr41x5rk59npgkyd9d2g15xvmhnq4igxzaql0b2f0pl";
        libraryHaskellDepends = [
          aeson async base base64-bytestring bytestring containers
          data-default http-client iso8601-time JuicyPixels MonadRandom req
@@ -71294,6 +71510,19 @@ self: {
        broken = true;
      }) {};
 
+  "dura" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath }:
+     mkDerivation {
+       pname = "dura";
+       version = "0.1";
+       sha256 = "0sm5f8678lym1maavvx0jsl0px3phry6687wsvf5askbrdyla84m";
+       revision = "1";
+       editedCabalFile = "018pwi48hx6jcy9gkbbc4gcbjxa2n8b4lbfmd18mnm49ymwyyqlv";
+       libraryHaskellDepends = [ base bytestring directory filepath ];
+       description = "durable/atomic file system writes (from rio package)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "duration" = callPackage
     ({ mkDerivation, base, doctest, hspec, parsec, template-haskell
      , time
@@ -73099,6 +73328,8 @@ self: {
        pname = "ekg-prometheus-adapter";
        version = "0.1.0.4";
        sha256 = "1i9bqbn8zj7hbkc7iypmjji4sh8s2h9jix2ngp77mkmii6wblfx2";
+       revision = "1";
+       editedCabalFile = "1aq3x5j33bb0rwlip0p3y6ppk8m1x8k3hnrwnb7pca98gyz8fm6r";
        libraryHaskellDepends = [
          base containers ekg-core microlens-th prometheus text transformers
          unordered-containers
@@ -74635,6 +74866,8 @@ self: {
        pname = "enummapset-th";
        version = "0.6.1.1";
        sha256 = "0anmarswk8vvd9c8qhkhgwzmr5h2yq0bdx48ww5lbca1zf6h5hkw";
+       revision = "1";
+       editedCabalFile = "0fyjwcw7ibm0x5k2281q53drwm1ddsmkc890fywcv7r6b9jdx5py";
        libraryHaskellDepends = [
          base containers deepseq template-haskell
        ];
@@ -76699,8 +76932,8 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "exception-hierarchy";
-       version = "0.1.0.1";
-       sha256 = "1zk06z8fwr4g701c79vvsqmagjcm2h850d9m96zrig08kz3lshm9";
+       version = "0.1.0.2";
+       sha256 = "1srzc1dz3cpplxsqjiw3iiy0jnwyc57qxmdgibkkymjlaksi721i";
        libraryHaskellDepends = [ base template-haskell ];
        description = "Exception type hierarchy with TemplateHaskell";
        license = stdenv.lib.licenses.bsd3;
@@ -77724,8 +77957,8 @@ self: {
      }:
      mkDerivation {
        pname = "extensible-effects-concurrent";
-       version = "0.21.1";
-       sha256 = "1ijk6z4g6y5bfif5rv3w3ld2rfm1ad1sqqicpx9n6lkvh0awc3vp";
+       version = "0.22.1";
+       sha256 = "1vjd8rr60zxgvv96i9fx5vjbvvxagj8fxz6891irmjgxhlb1v75z";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -77801,6 +78034,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "extra_1_6_15" = callPackage
+    ({ mkDerivation, base, clock, directory, filepath, process
+     , QuickCheck, semigroups, time, unix
+     }:
+     mkDerivation {
+       pname = "extra";
+       version = "1.6.15";
+       sha256 = "1kbx15x1y6mdzydm4apizym89in4dd71imwk239ywyg27hl8f4gv";
+       libraryHaskellDepends = [
+         base clock directory filepath process semigroups time unix
+       ];
+       testHaskellDepends = [ base directory filepath QuickCheck unix ];
+       description = "Extra functions I use";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "extract-dependencies" = callPackage
     ({ mkDerivation, async, base, Cabal, containers
      , package-description-remote
@@ -79327,8 +79577,8 @@ self: {
      }:
      mkDerivation {
        pname = "fedora-img-dl";
-       version = "0.2";
-       sha256 = "0jk9wljmqszfjr4alhx13112bbdgi84662v1f1fslq8w0q17y3m2";
+       version = "0.3";
+       sha256 = "0mly2lmrirzskralw9ajywmcirmsv67gjws4dckvf1ns24cx33lw";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -79916,10 +80166,8 @@ self: {
      }:
      mkDerivation {
        pname = "ffunctor";
-       version = "1.1.99";
-       sha256 = "0b6r72921cr6xrwwnvlw7ndnhfyavrk5a4vsgz3xvisf3i0slb4c";
-       revision = "2";
-       editedCabalFile = "0772irhfscf3bkxgiy33g7np8wrkdc8pzc7pnap362qvd8v2xkjj";
+       version = "1.1.100";
+       sha256 = "07s9ax9pi8bxvj94dfh237wfxdmx63gglkw8cx7pn2w1jybpb8v9";
        libraryHaskellDepends = [ base transformers ];
        testHaskellDepends = [
          aeson base exceptions generic-lens http-client mtl servant
@@ -80951,6 +81199,29 @@ self: {
        broken = true;
      }) {};
 
+  "fits-parse" = callPackage
+    ({ mkDerivation, base, binary, bytestring, data-default
+     , fast-logger, JuicyPixels, megaparsec, optparse-applicative
+     , parser-combinators, statistics, text, text-latin1, vector
+     }:
+     mkDerivation {
+       pname = "fits-parse";
+       version = "0.0.1";
+       sha256 = "13a072ribpn10hfiiqkx2bkns8rjcsf32zx4lsvxzfhm7p24p499";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring data-default megaparsec parser-combinators
+         text text-latin1
+       ];
+       executableHaskellDepends = [
+         base bytestring fast-logger JuicyPixels optparse-applicative
+         statistics vector
+       ];
+       description = "Parse FITS files";
+       license = stdenv.lib.licenses.bsd2;
+     }) {};
+
   "fitsio" = callPackage
     ({ mkDerivation, base, cfitsio, filepath, mtl }:
      mkDerivation {
@@ -81629,8 +81900,8 @@ self: {
     ({ mkDerivation, base, directory, parsec }:
      mkDerivation {
        pname = "flat-tex";
-       version = "0.6.1";
-       sha256 = "1g116pdjlxx8mz3w2bapbcfd4jgk8jl24fg7fck3j2gyh8282zbm";
+       version = "0.7.0";
+       sha256 = "19djkalk3pw309y8ngia88qrppm3c6128db7lk7q6l0w18vrnb9d";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base directory parsec ];
@@ -84674,15 +84945,19 @@ self: {
      }) {};
 
   "front" = callPackage
-    ({ mkDerivation, base, blaze-html, blaze-markup, bytestring, fay
-     , text
+    ({ mkDerivation, aeson, async, base, blaze-html, blaze-markup
+     , bytestring, conduit, fay, fay-dom, fay-websockets, mtl, stm
+     , stm-lifted, text, websockets
      }:
      mkDerivation {
        pname = "front";
-       version = "0.0.0.1";
-       sha256 = "1iaabr2cfvgismar58w7nazi4mckcvxv37qrkjqnxm82zhnv2fgc";
+       version = "0.0.0.2";
+       sha256 = "106y0qnz5lyvxy69s24fapqkys6i373kl2v51bpkvfwq5ppax0b0";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [
-         base blaze-html blaze-markup bytestring fay text
+         aeson async base blaze-html blaze-markup bytestring conduit fay
+         fay-dom fay-websockets mtl stm stm-lifted text websockets
        ];
        description = "A reactive frontend web framework";
        license = stdenv.lib.licenses.bsd3;
@@ -85165,6 +85440,8 @@ self: {
        pname = "full-text-search";
        version = "0.2.1.4";
        sha256 = "1qbfklpyxdf5d4d5s1ka9s5a43y892387b0lyjsx9fq3g6d2vck7";
+       revision = "1";
+       editedCabalFile = "0dma678xflfplrld48aca1p9kjnnwlsqdrqmkgwh9dp54wrxzxl1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base containers text vector ];
@@ -85753,18 +86030,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "fused-effects_0_3_0_0" = callPackage
+  "fused-effects_0_3_1_0" = callPackage
     ({ mkDerivation, base, criterion, deepseq, doctest, hspec
-     , MonadRandom, QuickCheck, random, transformers
+     , inspection-testing, MonadRandom, QuickCheck, random, transformers
+     , unliftio-core
      }:
      mkDerivation {
        pname = "fused-effects";
-       version = "0.3.0.0";
-       sha256 = "1plivl5vdgzpb2pbbhyiv2i6jk39l43bwa574qs9nb5jx5i7n056";
+       version = "0.3.1.0";
+       sha256 = "0mg6sgp4j6my34wzsdpvjvsb07s9k515shvi8nnrnzf0djqq95rv";
        libraryHaskellDepends = [
-         base deepseq MonadRandom random transformers
+         base deepseq MonadRandom random transformers unliftio-core
+       ];
+       testHaskellDepends = [
+         base doctest hspec inspection-testing QuickCheck transformers
        ];
-       testHaskellDepends = [ base doctest hspec QuickCheck ];
        benchmarkHaskellDepends = [ base criterion ];
        description = "A fast, flexible, fused effect system";
        license = stdenv.lib.licenses.bsd3;
@@ -88618,7 +88898,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc_8_6_4" = callPackage
+  "ghc_8_6_5" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghc-heap
      , ghci, hpc, process, template-haskell, terminfo, time
@@ -88626,8 +88906,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc";
-       version = "8.6.4";
-       sha256 = "1ninm000qkpvvfgfrlvj0259451wwmfayh46px3zg6mkr19x64yi";
+       version = "8.6.5";
+       sha256 = "13sh7f40pib5v00wd5bdxrwz7m5q398l93kky0z14q47130mpp20";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
          ghc-boot ghc-boot-th ghc-heap ghci hpc process template-haskell
@@ -88638,14 +88918,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot_8_6_4" = callPackage
+  "ghc-boot_8_6_5" = callPackage
     ({ mkDerivation, base, binary, bytestring, directory, filepath
      , ghc-boot-th
      }:
      mkDerivation {
        pname = "ghc-boot";
-       version = "8.6.4";
-       sha256 = "1clk84l47bdyj74jykyzqzlwxgpwhs2r9x9bxfnw6f7c24xiv4xp";
+       version = "8.6.5";
+       sha256 = "1sxar25ji02a4yaz6s5hksf7b8pbl66vv9nb3bfc7fxq6gzj5n4b";
        libraryHaskellDepends = [
          base binary bytestring directory filepath ghc-boot-th
        ];
@@ -88654,14 +88934,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot-th_8_6_4" = callPackage
+  "ghc-boot-th_8_6_5" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "ghc-boot-th";
-       version = "8.6.4";
-       sha256 = "15hvcns1vpagx0bdpzgm1cgwnxvz4cbbhbzsvdzpl8zf4y0jd8jz";
+       version = "8.6.5";
+       sha256 = "18gjvxp3668np9n3c5l65q03nlqhgfjhh9wizvifmk673g0cl7n9";
        libraryHaskellDepends = [ base ];
-       description = "Shared functionality between GHC and the @template-haskell@ library";
+       description = "Shared functionality between GHC and the `template-haskell` library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -89088,8 +89368,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib";
-       version = "0.20190402";
-       sha256 = "1w91n0bh5xyfgzk4kgn43s3wnx4a0h2la9phwf11327ajiacch4l";
+       version = "0.20190423";
+       sha256 = "1jj4ph9ldxicccs3myqmll9x3a1rl9zv95b797mm9yas80sbijnx";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -89113,8 +89393,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib-parser";
-       version = "0.20190402";
-       sha256 = "0ppp7grcmbml472yi766hsmzlnwvb6dawr4f72k41s3xwkfpjmpg";
+       version = "0.20190423";
+       sha256 = "1vwfsyyj8h0x56zq498mhjbpj6bz9n901v3mwyn5hzp7c25zdv5k";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
@@ -89697,15 +89977,15 @@ self: {
        broken = true;
      }) {};
 
-  "ghci_8_6_4" = callPackage
+  "ghci_8_6_5" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , deepseq, filepath, ghc-boot, ghc-boot-th, ghc-heap
      , template-haskell, transformers, unix
      }:
      mkDerivation {
        pname = "ghci";
-       version = "8.6.4";
-       sha256 = "0gjl2bs2alv56j45khylcdjm3cl71kfcadc83lw3b1zpiinhkb7m";
+       version = "8.6.5";
+       sha256 = "0h011kixzv5x5bjb2i71bl9dnffc6if7k6jmsncbyvj0vvchrrn8";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq filepath ghc-boot
          ghc-boot-th ghc-heap template-haskell transformers unix
@@ -89848,34 +90128,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghcid";
-       version = "0.7.2";
-       sha256 = "1h50438brxazk6vx8ym3f8y83rijh0lnkf6ac2rwhxi07r016h7s";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         ansi-terminal base cmdargs directory extra filepath process time
-       ];
-       executableHaskellDepends = [
-         ansi-terminal base cmdargs containers directory extra filepath
-         fsnotify process terminal-size time unix
-       ];
-       testHaskellDepends = [
-         ansi-terminal base cmdargs containers directory extra filepath
-         fsnotify process tasty tasty-hunit terminal-size time unix
-       ];
-       description = "GHCi based bare bones IDE";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "ghcid_0_7_3" = callPackage
-    ({ mkDerivation, ansi-terminal, base, cmdargs, containers
-     , directory, extra, filepath, fsnotify, process, tasty, tasty-hunit
-     , terminal-size, time, unix
-     }:
-     mkDerivation {
-       pname = "ghcid";
-       version = "0.7.3";
-       sha256 = "00af44r0y4n8nz9sc8mgbydgwzjmp32yrnf1k15lrlyahqrixhfl";
+       version = "0.7.4";
+       sha256 = "1wd278xligp0qj98zhqp3lkxdzpgb8k7yy0vhva6cs1ch6032gpp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -89891,7 +90145,6 @@ self: {
        ];
        description = "GHCi based bare bones IDE";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ghcjs-ajax" = callPackage
@@ -97289,8 +97542,8 @@ self: {
     ({ mkDerivation, base, containers, json, text }:
      mkDerivation {
        pname = "graphql-w-persistent";
-       version = "0.3.1.1";
-       sha256 = "1cfq41s18n73fpn0zzwrvw0b2n7l2h7i71dz9wvifsjxrpla50q1";
+       version = "0.3.1.2";
+       sha256 = "0kd73yxack1allp27l4pp4xsdw3rs3g44kbk6qadhdvrws7d105z";
        libraryHaskellDepends = [ base containers json text ];
        description = "Haskell GraphQL query parser-interpreter-data processor";
        license = stdenv.lib.licenses.isc;
@@ -97452,8 +97705,8 @@ self: {
      }:
      mkDerivation {
        pname = "gray-extended";
-       version = "1.5.6";
-       sha256 = "13a18vri2akfahp8k7s5sg6knn0plcsf6lqdzy05628wymiia2s3";
+       version = "1.5.7";
+       sha256 = "0j2lzy15jiykz9b6cqzh7xhpf1idwxp8illvy3r50g1g4hc8zvyp";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -99672,6 +99925,26 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "hablo" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , filepath, lucid, mtl, optparse-applicative, parsec, template
+     , text, time, unix
+     }:
+     mkDerivation {
+       pname = "hablo";
+       version = "1.0.0.0";
+       sha256 = "19lhchfvkyqjfbr7i07y6a26dyk19w83s0qa6drgnr6zqsvdqkg8";
+       isLibrary = false;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       executableHaskellDepends = [
+         aeson base bytestring containers directory filepath lucid mtl
+         optparse-applicative parsec template text time unix
+       ];
+       description = "A minimalist static blog generator";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hablog" = callPackage
     ({ mkDerivation, base, bifunctors, blaze-html, blaze-markup
      , bytestring, containers, directory, filepath, markdown, mime-types
@@ -101021,8 +101294,8 @@ self: {
      }:
      mkDerivation {
        pname = "haiji";
-       version = "0.2.3.0";
-       sha256 = "12g7nlfci2hrsqi19z8mi7i8vqd1s7a8c3sr8k43f0hhzk6b528i";
+       version = "0.3.0.0";
+       sha256 = "079q3m3c39ip86hpirq9c5l3b9hw030zd5slwi2bssbmq2bhfv5i";
        libraryHaskellDepends = [
          aeson attoparsec base data-default mtl scientific tagged
          template-haskell text transformers unordered-containers vector
@@ -103491,8 +103764,8 @@ self: {
        pname = "hasbolt";
        version = "0.1.3.2";
        sha256 = "14sq3iqbrfkwyswdka2285cdhwx3c6srfhn5qb7yw1nfjx2bdb1i";
-       revision = "3";
-       editedCabalFile = "10h7pbkrkc9cdxx09zk0s8ygcdva2xy646zq3k8czph3vdaffzqx";
+       revision = "4";
+       editedCabalFile = "0h38mjkr3cqhsr9hwf2wj27mknnxyb2y3swzp18s7q4vmrb1ijyz";
        libraryHaskellDepends = [
          base binary bytestring connection containers data-binary-ieee754
          data-default network text transformers
@@ -103504,6 +103777,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hasbolt_0_1_3_3" = callPackage
+    ({ mkDerivation, base, binary, bytestring, connection, containers
+     , data-binary-ieee754, data-default, hex, hspec, network
+     , QuickCheck, text, transformers
+     }:
+     mkDerivation {
+       pname = "hasbolt";
+       version = "0.1.3.3";
+       sha256 = "1l1p9iz9k8i1car5cd6cfd2bpidkrfbr2354hxvg8gpnw1i5jsbb";
+       libraryHaskellDepends = [
+         base binary bytestring connection containers data-binary-ieee754
+         data-default network text transformers
+       ];
+       testHaskellDepends = [
+         base bytestring containers hex hspec QuickCheck text
+       ];
+       description = "Haskell driver for Neo4j 3+ (BOLT protocol)";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hasbolt-extras" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, bytestring, containers
      , data-default, free, hasbolt, lens, mtl, neat-interpolation
@@ -104998,6 +105292,8 @@ self: {
        pname = "haskell-lsp";
        version = "0.8.2.0";
        sha256 = "18qkrybwvmyz5h03xj9wjigpqs6s6rw9wi1lqcla4ppg1pkd5zyd";
+       revision = "1";
+       editedCabalFile = "0m6kprfsgxcmif0mmb1vpc46jyr0kjk6fqv3k1sqfvpjpldh0mvy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -105018,6 +105314,40 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "haskell-lsp_0_10_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, data-default
+     , directory, filepath, hashable, haskell-lsp-types, hslogger, hspec
+     , hspec-discover, lens, mtl, network-uri, parsec, QuickCheck
+     , quickcheck-instances, sorted-list, stm, text, time, transformers
+     , unordered-containers, vector, yi-rope
+     }:
+     mkDerivation {
+       pname = "haskell-lsp";
+       version = "0.10.0.0";
+       sha256 = "01vfpv4zi6h9rdn39l7rx3y0mm2gsabwsf5ny2dbrca8x7462vys";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers data-default directory filepath
+         hashable haskell-lsp-types hslogger lens mtl network-uri parsec
+         sorted-list stm text time unordered-containers yi-rope
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers data-default directory filepath
+         hslogger lens mtl network-uri parsec stm text time transformers
+         unordered-containers vector yi-rope
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers data-default directory filepath
+         hashable hspec lens network-uri QuickCheck quickcheck-instances
+         sorted-list stm text yi-rope
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Haskell library for the Microsoft Language Server Protocol";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-lsp-client" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , haskell-lsp, lens, process, text, unix
@@ -105057,6 +105387,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "haskell-lsp-types_0_10_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, data-default, filepath
+     , hashable, lens, network-uri, scientific, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "haskell-lsp-types";
+       version = "0.10.0.0";
+       sha256 = "03k8sip1mgcpr93075cpylp7d9h956vxx6dpcli1r46filbb88an";
+       libraryHaskellDepends = [
+         aeson base bytestring data-default filepath hashable lens
+         network-uri scientific text unordered-containers
+       ];
+       description = "Haskell library for the Microsoft Language Server Protocol, data types";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-menu" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -107046,8 +107394,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-node";
-       version = "0.9.9";
-       sha256 = "0d4bv1wr3c89x7r6aakvvwklwzk8g90bl21bc52k4d88znyclqvm";
+       version = "0.9.10";
+       sha256 = "05pnj7caia2ifr793pryfdc8q8p203rii4agrgy4i123mcfmxqjq";
        libraryHaskellDepends = [
          base bytestring cereal conduit conduit-extra containers
          data-default hashable haskoin-core monad-logger mtl network nqe
@@ -107125,8 +107473,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "0.14.0";
-       sha256 = "0d508vs1rhj54iixh1m4s7jcszav83bwbxd7g6d4hgn0vwf2l1wh";
+       version = "0.14.1";
+       sha256 = "0n5c51if17gm6ldsbpapqwc4bdshbnkxd403ssfgy3b923cmqm1r";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -107997,6 +108345,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hasql_1_3_0_5" = callPackage
+    ({ mkDerivation, attoparsec, base, base-prelude, bug, bytestring
+     , bytestring-strict-builder, contravariant, contravariant-extras
+     , criterion, data-default-class, dlist, hashable, hashtables
+     , loch-th, mtl, placeholders, postgresql-binary, postgresql-libpq
+     , profunctors, QuickCheck, quickcheck-instances, rebase, rerebase
+     , tasty, tasty-hunit, tasty-quickcheck, text, text-builder
+     , transformers, vector
+     }:
+     mkDerivation {
+       pname = "hasql";
+       version = "1.3.0.5";
+       sha256 = "0qs2x4gbaffrxndivb4237vxc6qrzn2rs5kbf04n4d6py9cdhbjv";
+       libraryHaskellDepends = [
+         attoparsec base base-prelude bytestring bytestring-strict-builder
+         contravariant contravariant-extras data-default-class dlist
+         hashable hashtables loch-th mtl placeholders postgresql-binary
+         postgresql-libpq profunctors text text-builder transformers vector
+       ];
+       testHaskellDepends = [
+         bug data-default-class QuickCheck quickcheck-instances rebase
+         rerebase tasty tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [ bug criterion rerebase ];
+       description = "An efficient PostgreSQL driver and a flexible mapping API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hasql-backend" = callPackage
     ({ mkDerivation, base, base-prelude, bytestring, either, free
      , list-t, text, transformers, vector
@@ -110283,6 +110660,17 @@ self: {
        broken = true;
      }) {};
 
+  "hedgehog-generic" = callPackage
+    ({ mkDerivation, base, hedgehog }:
+     mkDerivation {
+       pname = "hedgehog-generic";
+       version = "0.1";
+       sha256 = "1166jwk3f4bfw54qaxk3q3gxrfmffwwfkmd8xyvwj7i3whwzxq0f";
+       libraryHaskellDepends = [ base hedgehog ];
+       description = "GHC Generics automatically derived hedgehog generators";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hedgehog-quickcheck" = callPackage
     ({ mkDerivation, base, hedgehog, QuickCheck, transformers }:
      mkDerivation {
@@ -110320,7 +110708,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hedis_0_12_1" = callPackage
+  "hedis_0_12_2" = 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
@@ -110328,8 +110716,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.12.1";
-       sha256 = "01l8fmwwanw00bj3rzyv8k9swgvvzbvh920li67w10w5qlwvmgri";
+       version = "0.12.2";
+       sha256 = "13kvi01v2bbz8xn44s4plmzka8khz3a4hc6pinw1walpfi8kygsx";
        libraryHaskellDepends = [
          async base bytestring bytestring-lexing deepseq errors HTTP mtl
          network network-uri resource-pool scanner stm text time tls
@@ -114229,19 +114617,21 @@ self: {
      }) {};
 
   "hledger-flow" = callPackage
-    ({ mkDerivation, base, containers, foldl, HUnit, stm, text, time
-     , turtle
+    ({ mkDerivation, base, containers, foldl, HUnit
+     , optparse-applicative, stm, text, time, turtle
      }:
      mkDerivation {
        pname = "hledger-flow";
-       version = "0.11.0.0";
-       sha256 = "1zjmy80r7iifj4cw53jskxqnnhrn8ysall5nx7xxhzfx4mwixq6f";
+       version = "0.11.2.0";
+       sha256 = "17v9iqh9dhild0m67j2141yxv4hx5p59fjn51yl5q0jbib63gq14";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base containers foldl stm text time turtle
        ];
-       executableHaskellDepends = [ base text turtle ];
+       executableHaskellDepends = [
+         base optparse-applicative text turtle
+       ];
        testHaskellDepends = [
          base containers foldl HUnit stm text turtle
        ];
@@ -114531,8 +114921,8 @@ self: {
      }:
      mkDerivation {
        pname = "hlint";
-       version = "2.1.16";
-       sha256 = "027v3aigghmghwbiwkhv9iadwv15fa40brkin489ahi6jwrlnp32";
+       version = "2.1.17";
+       sha256 = "0brinb3fjy619qh8yingqz2k03gcixc7mvqxzhzjadj69zlns6j3";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -115382,44 +115772,44 @@ self: {
 
   "hnix" = callPackage
     ({ mkDerivation, aeson, array, base, base16-bytestring, binary
-     , bytestring, comonad, containers, criterion, cryptohash-md5
-     , cryptohash-sha1, cryptohash-sha256, cryptohash-sha512, data-fix
-     , deepseq, dependent-sum, deriving-compat, Diff, directory
-     , exceptions, filepath, free, generic-random, Glob, hashable
-     , hashing, haskeline, hedgehog, hnix-store-core, http-client
-     , http-client-tls, http-types, interpolate, lens-family
-     , lens-family-core, lens-family-th, logict, megaparsec
-     , monad-control, monadlist, mtl, optparse-applicative
-     , parser-combinators, pretty-show, prettyprinter, process, ref-tf
-     , regex-tdfa, regex-tdfa-text, repline, scientific, semigroups
-     , serialise, split, syb, tasty, tasty-hedgehog, tasty-hunit
-     , tasty-quickcheck, tasty-th, template-haskell, text, these, time
-     , transformers, transformers-base, unix, unordered-containers
-     , vector, xml
+     , bytestring, comonad, containers, contravariant, criterion
+     , cryptohash-md5, cryptohash-sha1, cryptohash-sha256
+     , cryptohash-sha512, data-fix, deepseq, dependent-sum
+     , deriving-compat, Diff, directory, exceptions, filepath, free
+     , generic-random, Glob, hashable, hashing, haskeline, hedgehog
+     , hnix-store-core, http-client, http-client-tls, http-types
+     , interpolate, lens-family, lens-family-core, lens-family-th
+     , logict, megaparsec, monad-control, monadlist, mtl
+     , optparse-applicative, parser-combinators, pretty-show
+     , prettyprinter, process, ref-tf, regex-tdfa, regex-tdfa-text
+     , repline, scientific, semigroups, serialise, split, syb, tasty
+     , tasty-hedgehog, tasty-hunit, tasty-quickcheck, tasty-th
+     , template-haskell, text, these, time, transformers
+     , transformers-base, unix, unordered-containers, vector, xml
      }:
      mkDerivation {
        pname = "hnix";
-       version = "0.6.0";
-       sha256 = "1yirs9q2hm7h8zahc053q129s5iab6c24745hin4hik0ghdqw6k7";
+       version = "0.6.1";
+       sha256 = "0q79wdrm3z88mknq6nf7cpg7lwgbx355k95k11rz3iz0sgk9hjwi";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson array base base16-bytestring binary bytestring comonad
-         containers cryptohash-md5 cryptohash-sha1 cryptohash-sha256
-         cryptohash-sha512 data-fix deepseq dependent-sum deriving-compat
-         directory exceptions filepath free hashable hashing haskeline
-         hnix-store-core http-client http-client-tls http-types interpolate
-         lens-family lens-family-core lens-family-th logict megaparsec
-         monad-control monadlist mtl optparse-applicative parser-combinators
-         pretty-show prettyprinter process ref-tf regex-tdfa regex-tdfa-text
-         scientific semigroups serialise split syb template-haskell text
-         these time transformers transformers-base unix unordered-containers
-         vector xml
+         containers contravariant cryptohash-md5 cryptohash-sha1
+         cryptohash-sha256 cryptohash-sha512 data-fix deepseq dependent-sum
+         deriving-compat directory exceptions filepath free hashable hashing
+         haskeline hnix-store-core http-client http-client-tls http-types
+         interpolate lens-family lens-family-core lens-family-th logict
+         megaparsec monad-control monadlist mtl optparse-applicative
+         parser-combinators pretty-show prettyprinter process ref-tf
+         regex-tdfa regex-tdfa-text scientific semigroups serialise split
+         syb template-haskell text these time transformers transformers-base
+         unix unordered-containers vector xml
        ];
        executableHaskellDepends = [
          aeson base base16-bytestring bytestring comonad containers
          cryptohash-md5 cryptohash-sha1 cryptohash-sha256 cryptohash-sha512
-         data-fix deepseq exceptions filepath hashing haskeline mtl
+         data-fix deepseq exceptions filepath free hashing haskeline mtl
          optparse-applicative pretty-show prettyprinter ref-tf repline
          serialise template-haskell text time transformers
          unordered-containers
@@ -118180,10 +118570,8 @@ self: {
        ];
        description = "Compression and decompression in the brotli format";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
-     }) {brotli = null; brotlidec = null; brotlienc = null; 
-         libbrotlidec = null; libbrotlienc = null;};
+     }) {brotlidec = null; brotlienc = null; libbrotlidec = null; 
+         libbrotlienc = null;};
 
   "hs-captcha" = callPackage
     ({ mkDerivation, base, bytestring, gd, random }:
@@ -120376,6 +120764,8 @@ self: {
        pname = "hsini";
        version = "0.5.1.2";
        sha256 = "1r6qksnrmk18ndxs5zaga8b7kvmk34kp0kh5hwqmq797qrlax9pa";
+       revision = "1";
+       editedCabalFile = "0wkvajjgs64l4wlw8s6sn3pbwx3ni41p1260chp67a16innr1qp6";
        libraryHaskellDepends = [ base bytestring containers mtl parsec ];
        testHaskellDepends = [
          base bytestring containers mtl parsec tasty tasty-hunit
@@ -120483,6 +120873,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hslogger_1_3_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, HUnit, network
+     , network-bsd, old-locale, time, unix
+     }:
+     mkDerivation {
+       pname = "hslogger";
+       version = "1.3.0.0";
+       sha256 = "1gnnqyd5hr59agqjcbim3kys5zarwsj7b1kfdbhy5qmjjwnpyzs8";
+       libraryHaskellDepends = [
+         base bytestring containers network network-bsd old-locale time unix
+       ];
+       testHaskellDepends = [ base HUnit ];
+       description = "Versatile logging framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hslogger-reader" = callPackage
     ({ mkDerivation, attoparsec, base, hslogger, optparse-applicative
      , text, text-icu, time
@@ -123895,6 +124302,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "http-media_0_8_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, containers
+     , QuickCheck, test-framework, test-framework-quickcheck2
+     , utf8-string
+     }:
+     mkDerivation {
+       pname = "http-media";
+       version = "0.8.0.0";
+       sha256 = "0lww5cxrc9jlvzsysjv99lca33i4rb7cll66p3c0rdpmvz8pk0ir";
+       revision = "1";
+       editedCabalFile = "01kb67m99jl3b8k06bp84sxiwxygz48ci5wkll42688qgsjb3rab";
+       libraryHaskellDepends = [
+         base bytestring case-insensitive containers utf8-string
+       ];
+       testHaskellDepends = [
+         base bytestring case-insensitive containers QuickCheck
+         test-framework test-framework-quickcheck2 utf8-string
+       ];
+       description = "Processing HTTP Content-Type and Accept headers";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "http-monad" = callPackage
     ({ mkDerivation, base, bytestring, containers, explicit-exception
      , HTTP, lazyio, network, network-uri, parsec, semigroups
@@ -124248,14 +124678,18 @@ self: {
 
   "http2-client" = callPackage
     ({ mkDerivation, async, base, bytestring, containers, deepseq
-     , http2, network, stm, time, tls
+     , http2, lifted-async, lifted-base, mtl, network, stm, time, tls
+     , transformers-base
      }:
      mkDerivation {
        pname = "http2-client";
-       version = "0.8.0.2";
-       sha256 = "16m4amw7xq7psvxix76z7g1dvllkfs9pzpnig5rfhbgfvbf5pydw";
+       version = "0.9.0.0";
+       sha256 = "1z46an4sign2ashjsj2y07vkf73i2wzx5x10qsdaf4av5ib8ykxq";
+       revision = "1";
+       editedCabalFile = "00fg9a62qkjwp7rb38j7z7yy6dk3mkh6mgwspd79v2ycmn4mr25q";
        libraryHaskellDepends = [
-         async base bytestring containers deepseq http2 network stm time tls
+         async base bytestring containers deepseq http2 lifted-async
+         lifted-base mtl network stm time tls transformers-base
        ];
        testHaskellDepends = [ base ];
        description = "A native HTTP2 client library";
@@ -124264,17 +124698,18 @@ self: {
 
   "http2-client-exe" = callPackage
     ({ mkDerivation, async, base, bytestring, data-default-class, http2
-     , http2-client, optparse-applicative, time, tls
+     , http2-client, lifted-async, lifted-base, optparse-applicative
+     , time, tls
      }:
      mkDerivation {
        pname = "http2-client-exe";
-       version = "0.1.0.1";
-       sha256 = "1z1y52253dybliwplybwd71a1ssmma34zcylv54aj6x7grrj37hm";
+       version = "0.2.0.0";
+       sha256 = "15yvg3nmsajc7q63c2qsmmckw3v4h37364zdxqi3dk9r0xkpssjy";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          async base bytestring data-default-class http2 http2-client
-         optparse-applicative time tls
+         lifted-async lifted-base optparse-applicative time tls
        ];
        description = "A command-line http2 client";
        license = stdenv.lib.licenses.bsd3;
@@ -124283,15 +124718,16 @@ self: {
   "http2-client-grpc" = callPackage
     ({ mkDerivation, async, base, binary, bytestring, case-insensitive
      , data-default-class, http2, http2-client, http2-grpc-types, lens
-     , proto-lens, text, tls
+     , lifted-async, lifted-base, proto-lens, text, tls
      }:
      mkDerivation {
        pname = "http2-client-grpc";
-       version = "0.6.0.0";
-       sha256 = "0cf6asfh8wmjh1j0i1ldh557n33q1k1kfj604rz7rrrcarmn0m5h";
+       version = "0.7.0.0";
+       sha256 = "1iy825wrn2ai2qpbkq4p9k2amc5rarr57b9sa2vm8vqdrclcvzn1";
        libraryHaskellDepends = [
          async base binary bytestring case-insensitive data-default-class
-         http2 http2-client http2-grpc-types lens proto-lens text tls
+         http2 http2-client http2-grpc-types lens lifted-async lifted-base
+         proto-lens text tls
        ];
        testHaskellDepends = [ base ];
        description = "Implement gRPC-over-HTTP2 clients";
@@ -130409,10 +130845,8 @@ self: {
      }:
      mkDerivation {
        pname = "integer-logarithms";
-       version = "1.0.2.2";
-       sha256 = "1hvzbrh8fm1g9fbavdym52pr5n9f2bnfx1parkfizwqlbj6n51ms";
-       revision = "1";
-       editedCabalFile = "1684dkh8j2xqsd85bfsmhv3iam37hasjg4x79mvl6xh7scmpfdbw";
+       version = "1.0.3";
+       sha256 = "05pc5hws66csvcvfswlwcr2fplwn1lbssvwifjxkbbwqhq0n5qjs";
        libraryHaskellDepends = [ array base ghc-prim integer-gmp ];
        testHaskellDepends = [
          base QuickCheck smallcheck tasty tasty-hunit tasty-quickcheck
@@ -133143,8 +133577,10 @@ self: {
      }:
      mkDerivation {
        pname = "jaeger-flamegraph";
-       version = "1.1.0";
-       sha256 = "01aa2wk95hwkdh6b3m4c9j73ym2xl1ndys81fvvam6wq0dwf9k14";
+       version = "1.2.0";
+       sha256 = "1ha7zngxr9nin3gyqwwv6bplvrrc2n3j9sl8fp2dmxpjfwpi9r7f";
+       revision = "1";
+       editedCabalFile = "0xv7828z08rfd1m29ib8vlvigbavx5ksc67vj57293qiq590a3xf";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [ base QuickCheck ];
@@ -137426,6 +137862,35 @@ self: {
        broken = true;
      }) {};
 
+  "knit-haskell" = callPackage
+    ({ mkDerivation, aeson-pretty, base, base64-bytestring
+     , blaze-colonnade, blaze-html, bytestring, case-insensitive
+     , colonnade, containers, directory, Glob, here, http-client
+     , http-client-tls, http-types, hvega, logging-effect, lucid, mtl
+     , network, network-uri, pandoc, polysemy, prettyprinter, random
+     , random-fu, random-source, text, time
+     }:
+     mkDerivation {
+       pname = "knit-haskell";
+       version = "0.1.0.0";
+       sha256 = "11kqv2jxjn3maj53lgbccxcjcjrfqgsi8dd2ys51aalak2pf79bx";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson-pretty base base64-bytestring blaze-colonnade blaze-html
+         bytestring case-insensitive colonnade containers directory Glob
+         http-client http-client-tls http-types hvega logging-effect lucid
+         mtl network network-uri pandoc polysemy prettyprinter random
+         random-fu random-source text time
+       ];
+       executableHaskellDepends = [
+         base blaze-html colonnade containers here hvega mtl polysemy
+         random-fu text
+       ];
+       description = "a minimal Rmarkdown sort-of-thing for haskell, by way of Pandoc";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "knob" = callPackage
     ({ mkDerivation, base, bytestring, transformers }:
      mkDerivation {
@@ -138871,8 +139336,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "1.7.1.1";
-       sha256 = "0zqvr8z0mdjjdd9wx3ghf4aiv61brs52wk04d2vqar8nvv2wpzn4";
+       version = "1.7.1.2";
+       sha256 = "057gskb5y57jvh6z71d35qq228kpvf0wk09wf175mgy9qc78vg9p";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array base composition-prelude containers deepseq
@@ -139744,8 +140209,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-puppet";
-       version = "1.4.3";
-       sha256 = "1sh0i487w7mz5c0scly1s11xzha4dbp2wdiwdks3203c5yrjdfq7";
+       version = "1.4.4";
+       sha256 = "0dgbbyz89q1hhacy2pymhvmp8k5dvnzzsrxq0zc6l865nhha67ch";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -140334,8 +140799,8 @@ self: {
        pname = "lattices";
        version = "1.7.1.1";
        sha256 = "1byx2hmmh2213afdcsjxf3mvq3h9bwkl5wrvzxv1yqvd9jiqjz3r";
-       revision = "1";
-       editedCabalFile = "18182vlzaz5kzcn2j0k1jmdl8kgqmnpjc3ynsi7v6jdl3vig89dr";
+       revision = "2";
+       editedCabalFile = "0qxz4v5pqwvhb79mz4b7wc66r2c0xc9ixfhss4h56jk3vb1hriys";
        libraryHaskellDepends = [
          base base-compat containers deepseq hashable semigroupoids tagged
          universe-base universe-reverse-instances unordered-containers
@@ -142134,6 +142599,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {ffi = null; inherit (pkgs) libffi;};
 
+  "libffi-dynamic" = callPackage
+    ({ mkDerivation, base, contravariant, ffi, hashable, intern }:
+     mkDerivation {
+       pname = "libffi-dynamic";
+       version = "0.0.0.1";
+       sha256 = "0fh3a07qv6fgxycba2yy02warz2lm2npps9118nkxq0qf8gnvinv";
+       libraryHaskellDepends = [ base contravariant hashable intern ];
+       librarySystemDepends = [ ffi ];
+       description = "LibFFI interface with dynamic bidirectional type-driven binding generation";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {ffi = null;};
+
   "libgit" = callPackage
     ({ mkDerivation, base, mtl, process }:
      mkDerivation {
@@ -143409,8 +143886,8 @@ self: {
      }:
      mkDerivation {
        pname = "line-bot-sdk";
-       version = "0.5.0.0";
-       sha256 = "135l32xf28ric12ya9mfis6rixd4cyfp3801dr6q8di4vvfgblm4";
+       version = "0.5.0.1";
+       sha256 = "0d2a540dflyv3zjx9phs85qar1kpyl287f01hh8fxkp550wivfgg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -146949,8 +147426,37 @@ self: {
      }:
      mkDerivation {
        pname = "lsp-test";
-       version = "0.5.1.0";
-       sha256 = "1kmffpfq6cnby3gij5sd1p2fp8hhn7gjk1nm5a4hs2gfhlyik57y";
+       version = "0.5.1.1";
+       sha256 = "03dvkh8i6mkmcv1pvaqlr9pava14qxbd31my4hjvs37xzm6dw22b";
+       libraryHaskellDepends = [
+         aeson aeson-pretty ansi-terminal base bytestring conduit
+         conduit-parse containers data-default Diff directory filepath
+         haskell-lsp lens mtl parser-combinators process text transformers
+         unix unordered-containers yi-rope
+       ];
+       testHaskellDepends = [
+         aeson base data-default haskell-lsp hspec lens text
+         unordered-containers
+       ];
+       description = "Functional test framework for LSP servers";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "lsp-test_0_5_1_3" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, base
+     , bytestring, conduit, conduit-parse, containers, data-default
+     , Diff, directory, filepath, haskell-lsp, hspec, lens, mtl
+     , parser-combinators, process, text, transformers, unix
+     , unordered-containers, yi-rope
+     }:
+     mkDerivation {
+       pname = "lsp-test";
+       version = "0.5.1.3";
+       sha256 = "1ksjsxf5y9jx7j8rbfsvc667p7ikvvvscvjaa97mps8aci5izv48";
+       revision = "1";
+       editedCabalFile = "1aa59vpfa5an1fx3xq92lzg9k7wkwbxncmx04zkwdidwh5i2p4pg";
        libraryHaskellDepends = [
          aeson aeson-pretty ansi-terminal base bytestring conduit
          conduit-parse containers data-default Diff directory filepath
@@ -149164,6 +149670,35 @@ self: {
        broken = true;
      }) {};
 
+  "map-reduce-folds" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq
+     , discrimination, foldl, hashable, hashtables, hedgehog, parallel
+     , profunctors, random, split, streaming, streamly, text
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "map-reduce-folds";
+       version = "0.1.0.0";
+       sha256 = "03f5jkjsrn5a82g0cvjwm9dq1hn4c9m6a8hsyh035f92vflfk5vc";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers discrimination foldl hashable hashtables parallel
+         profunctors split streaming streamly text unordered-containers
+         vector
+       ];
+       executableHaskellDepends = [
+         base containers foldl profunctors text unordered-containers
+       ];
+       testHaskellDepends = [ base containers foldl hedgehog ];
+       benchmarkHaskellDepends = [
+         base containers criterion deepseq foldl profunctors random text
+         unordered-containers
+       ];
+       description = "foldl wrappers for map-reduce";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "map-syntax" = callPackage
     ({ mkDerivation, base, containers, deepseq, hspec, HUnit, mtl
      , QuickCheck, transformers
@@ -152498,10 +153033,8 @@ self: {
      }:
      mkDerivation {
        pname = "midi-util";
-       version = "0.2.0.1";
-       sha256 = "0s37csd1x039q0cb487pd811jz7h0i26chvvbmwffh11bc2icjzc";
-       revision = "1";
-       editedCabalFile = "0a3hasbhvd327m65yqqyjah7y8r48l65bqg1ymcrc0s2zff10gl5";
+       version = "0.2.1";
+       sha256 = "0ajmjwxa2g5fjgb9zhil63mszsalmg4fqdv62zabf774z8k1x1ry";
        libraryHaskellDepends = [
          base containers event-list midi non-negative
        ];
@@ -152949,19 +153482,19 @@ self: {
      , hashable, linear, microlens, microlens-mtl, mtl, mwc-random
      , scientific, sdl2, sdl2-gfx, sdl2-image, sdl2-ttf, tasty
      , tasty-discover, tasty-hspec, template-haskell, text, trifecta
-     , unordered-containers, vector, yaml
+     , unordered-containers, uuid, vector, yaml
      }:
      mkDerivation {
        pname = "minilight";
-       version = "0.1.1";
-       sha256 = "0wl37m7wz5jdq4hwcbrnd0m5lhz9mgfk6p8ysinjwfc1458g8v91";
+       version = "0.2.0";
+       sha256 = "18kjzmqpm967z0560z09n7s61s21f13mkr6iwb5dp7a5vnwq8lxm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base containers exceptions FontyFruity hashable linear
          microlens microlens-mtl mtl mwc-random scientific sdl2 sdl2-gfx
          sdl2-image sdl2-ttf template-haskell text trifecta
-         unordered-containers vector yaml
+         unordered-containers uuid vector yaml
        ];
        executableHaskellDepends = [
          base linear microlens mtl mwc-random sdl2 sdl2-ttf text vector
@@ -152972,6 +153505,8 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "A SDL2-based graphics library, batteries-included";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "minimal-configuration" = callPackage
@@ -153181,6 +153716,8 @@ self: {
        ];
        description = "Layout and render text with TrueType fonts using OpenGL";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "miniutter" = callPackage
@@ -161783,8 +162320,8 @@ self: {
        pname = "network-simple";
        version = "0.4.3";
        sha256 = "0a4hag26ry6lg90q4ppchvrm5xaij50jd4633mhfkfq8scgczm8d";
-       revision = "1";
-       editedCabalFile = "1xyz4b24vgnidvd43cfmf0k6090dayhfcp6n8x894ibd2mq3vash";
+       revision = "2";
+       editedCabalFile = "073g0agplvgan62s638w5hcq25biq8f811xhha6drfyxybs6cspn";
        libraryHaskellDepends = [
          base bytestring network safe-exceptions socks transformers
        ];
@@ -161816,8 +162353,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-simple-tls";
-       version = "0.3.1";
-       sha256 = "12kwi2jc8g310wrw7ynq2hfhkxhh95qn0fy205g7a48xrw75npyj";
+       version = "0.3.2";
+       sha256 = "09fw7ynvry0wjc2nip6kwncl662f7glzq1akiwgh09bwnpbswxsh";
        libraryHaskellDepends = [
          base bytestring data-default network network-simple safe-exceptions
          tls transformers x509 x509-store x509-system x509-validation
@@ -161826,6 +162363,40 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "network-simple-ws" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, network-simple
+     , safe-exceptions, websockets
+     }:
+     mkDerivation {
+       pname = "network-simple-ws";
+       version = "0.1";
+       sha256 = "04a0q4q7idah834dvgkl4j1a8fjgrw9qkxppmk5jnvdphq6sxxzd";
+       libraryHaskellDepends = [
+         base bytestring case-insensitive network-simple safe-exceptions
+         websockets
+       ];
+       description = "Simple interface to WebSockets";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "network-simple-wss" = callPackage
+    ({ mkDerivation, base, bytestring, network-simple-tls
+     , network-simple-ws, safe-exceptions, websockets
+     }:
+     mkDerivation {
+       pname = "network-simple-wss";
+       version = "0.1";
+       sha256 = "1wmicn9zyf4308spf1s7dd4xbi8hfwksdigf62jdm87ywv8jd6rj";
+       libraryHaskellDepends = [
+         base bytestring network-simple-tls network-simple-ws
+         safe-exceptions websockets
+       ];
+       description = "Simple interface to TLS secured WebSockets";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "network-socket-options" = callPackage
     ({ mkDerivation, base, network }:
      mkDerivation {
@@ -162509,8 +163080,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export";
-       version = "1.7.0.1";
-       sha256 = "0gaj4v8hzjjljr5v3l1by6rhin2k8a2wsaff61s5g77gdkcmi2i5";
+       version = "1.7.1";
+       sha256 = "0dylj1i6370r1yz2rgjpjs5ynsvaqshgvz71200r0q2hqqznax6d";
        libraryHaskellDepends = [
          async base binary bytestring deepseq monad-loops template-haskell
          unix
@@ -162525,8 +163096,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export-tools";
-       version = "0.4.4.0";
-       sha256 = "19x6qzryjdac1alq4wsmy0as6258ga9b3ga3iszqwvqjdpc89a6n";
+       version = "0.4.5.0";
+       sha256 = "1775syhp5pgm6sdn3x8y3zqzvqrwypl07xm6rkv34sbw5x84mmmv";
        libraryHaskellDepends = [
          aeson base binary bytestring ngx-export safe template-haskell
        ];
@@ -162534,6 +163105,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ngx-export-tools-extra" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers
+     , enclosed-exceptions, http-client, ngx-export-tools, snap-core
+     , snap-server, template-haskell, text, time
+     }:
+     mkDerivation {
+       pname = "ngx-export-tools-extra";
+       version = "0.1.0.0";
+       sha256 = "0j3bfrmic9zrivsnaf4kzf5bf0inianmnn7v0c21s5ip775k5jy8";
+       libraryHaskellDepends = [
+         aeson base bytestring containers enclosed-exceptions http-client
+         ngx-export-tools snap-core snap-server template-haskell text time
+       ];
+       description = "More extra tools for Nginx haskell module";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "niagra" = callPackage
     ({ mkDerivation, base, ghc-prim, HUnit, mtl, primitive, QuickCheck
      , text, transformers
@@ -164493,8 +165081,8 @@ self: {
      }:
      mkDerivation {
        pname = "nvim-hs";
-       version = "2.0.0.0";
-       sha256 = "0wnvvzd1ry8a3863dyj6ylsh075px7ppd1wrv3cbf9694dc5zfih";
+       version = "2.1.0.0";
+       sha256 = "02i6nvdk99vjy98r666sb3ik79zq8ssri0nhnfn9r60nfcpsrini";
        libraryHaskellDepends = [
          base bytestring cereal cereal-conduit conduit containers
          data-default deepseq foreign-store hslogger megaparsec messagepack
@@ -165147,24 +165735,24 @@ self: {
 
   "odpic-raw" = callPackage
     ({ mkDerivation, base, binary, bytestring, c2hs, conduit, hspec
-     , odpic, resourcet, scientific, time
+     , resourcet, scientific, time
      }:
      mkDerivation {
        pname = "odpic-raw";
-       version = "0.4.0";
-       sha256 = "0kdsmjksy2dcsc1dgwx8r8fcv1czap06fy8n3wlg29759md1bchm";
+       version = "0.5.0";
+       sha256 = "1cgg4yvcdysh1l1h8nv9jcn26hfcyx5hxqaqpvfd292c0spylary";
        libraryHaskellDepends = [
          base binary bytestring conduit resourcet scientific time
        ];
-       librarySystemDepends = [ odpic ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [
          base binary bytestring conduit hspec resourcet scientific time
        ];
+       testToolDepends = [ c2hs ];
        description = "Oracle Database Bindings";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) odpic;};
+     }) {};
 
   "oeis" = callPackage
     ({ mkDerivation, base, HTTP, HUnit, network, network-uri
@@ -167149,6 +167737,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "optparse-simple_0_1_1_2" = callPackage
+    ({ mkDerivation, base, bytestring, directory, githash
+     , optparse-applicative, template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "optparse-simple";
+       version = "0.1.1.2";
+       sha256 = "1r00hkri42vyx552l8hcd1779fxiyl9w4k0pql915zsprirn8w82";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base githash optparse-applicative template-haskell transformers
+       ];
+       testHaskellDepends = [ base bytestring directory ];
+       description = "Simple interface to optparse-applicative";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "optparse-text" = callPackage
     ({ mkDerivation, base, hspec, optparse-applicative, text }:
      mkDerivation {
@@ -168459,8 +169066,8 @@ self: {
        pname = "pandoc";
        version = "2.7.2";
        sha256 = "1qjla7zk8whx17qapmv3zji6b98qdpd464gwhi4zv8g4hfzv7010";
-       revision = "1";
-       editedCabalFile = "0xxnb1arycrlxjqnnka4gsz7nff70ahvr6zbrladhigian4mpk9z";
+       revision = "3";
+       editedCabalFile = "17m7pd1d1q7blavh5vv9m9ll2v9z4pj48k7cn3x6k884c9haicwc";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -168530,7 +169137,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "pandoc-citeproc_0_16_1_3" = callPackage
+  "pandoc-citeproc_0_16_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, attoparsec, base, bytestring
      , Cabal, containers, data-default, directory, filepath, hs-bibutils
      , libyaml, mtl, network, old-locale, pandoc, pandoc-types, parsec
@@ -168539,8 +169146,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-citeproc";
-       version = "0.16.1.3";
-       sha256 = "13pd7rfpzpc7a4dn2sasc30icrihv5kgmngyx70s4v42scgsfndg";
+       version = "0.16.2";
+       sha256 = "15mm17awgi1b5yazwhr5nh8b59qml1qk6pz6gpyijks70fq2arsv";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -168837,16 +169444,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "pandoc-pyplot_2_1_0_1" = callPackage
-    ({ mkDerivation, base, containers, data-default-class, directory
-     , filepath, hashable, hspec, hspec-expectations, pandoc
-     , pandoc-types, tasty, tasty-hspec, tasty-hunit, temporary, text
-     , typed-process, yaml
+  "pandoc-pyplot_2_1_1_0" = callPackage
+    ({ mkDerivation, base, containers, data-default-class, deepseq
+     , directory, filepath, hashable, hspec, hspec-expectations
+     , open-browser, pandoc, pandoc-types, tasty, tasty-hspec
+     , tasty-hunit, template-haskell, temporary, text, typed-process
+     , yaml
      }:
      mkDerivation {
        pname = "pandoc-pyplot";
-       version = "2.1.0.1";
-       sha256 = "0hhsy90chq3ap54816qhpplxg4c8iwdvx8xrcrn2n0p3yi2ma0yi";
+       version = "2.1.1.0";
+       sha256 = "0s66m591v6x91qqdkyxl40zwlv6nan86zfq5z4cx73yz9xf3gjsx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -168854,13 +169462,14 @@ self: {
          pandoc pandoc-types temporary text typed-process yaml
        ];
        executableHaskellDepends = [
-         base data-default-class directory pandoc-types
+         base data-default-class deepseq directory filepath open-browser
+         pandoc pandoc-types template-haskell temporary text
        ];
        testHaskellDepends = [
          base data-default-class directory filepath hspec hspec-expectations
          pandoc-types tasty tasty-hspec tasty-hunit temporary text
        ];
-       description = "A Pandoc filter for including figures generated from Matplotlib";
+       description = "A Pandoc filter to include figures generated from Python code blocks";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -170321,8 +170930,8 @@ self: {
      }:
      mkDerivation {
        pname = "parsix";
-       version = "0.2.0.0";
-       sha256 = "07azgir8gkjbr2if8cvcmlqf3v9bi27w4xh922j0r9q1c3ry7k5i";
+       version = "0.2.1.0";
+       sha256 = "1282mzlriyl4gi0l2ds4a3prjh6q0vl5cv14ms03999hmygpnr3l";
        libraryHaskellDepends = [
          base containers fingertree mtl parsers prettyprinter
          prettyprinter-ansi-terminal text transformers
@@ -172269,8 +172878,8 @@ self: {
      }:
      mkDerivation {
        pname = "persist";
-       version = "0.1.1.2";
-       sha256 = "08l59z7jc1ij7y497yjvv0q9bcd100l3bkdj4zwjl3dx6fhz2gq2";
+       version = "0.1.1.3";
+       sha256 = "0lcjk2q9x0qclc3znwv9xrqqwbczw2ryvamfqa6hvabr618lmi4p";
        libraryHaskellDepends = [ base bytestring containers text ];
        testHaskellDepends = [
          base bytestring QuickCheck test-framework
@@ -172402,6 +173011,35 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
+  "persistent_2_10_0" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
+     , blaze-html, bytestring, conduit, containers, fast-logger, hspec
+     , http-api-data, monad-logger, mtl, path-pieces, resource-pool
+     , resourcet, scientific, silently, template-haskell, text, time
+     , transformers, unliftio-core, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "persistent";
+       version = "2.10.0";
+       sha256 = "1ja34gdwf72rxnz3v5d9wjri11285fpzxn8sh9ws7ldrx3kfqy1g";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring blaze-html bytestring
+         conduit containers fast-logger http-api-data monad-logger mtl
+         path-pieces resource-pool resourcet scientific silently
+         template-haskell text time transformers unliftio-core
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson attoparsec base base64-bytestring blaze-html bytestring
+         containers hspec http-api-data path-pieces scientific text time
+         transformers unordered-containers vector
+       ];
+       description = "Type-safe, multi-backend data serialization";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ psibi ];
+     }) {};
+
   "persistent-audit" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring
      , getopt-generics, hashable, hspec, mongoDB, persistent
@@ -172599,6 +173237,8 @@ self: {
        pname = "persistent-mysql";
        version = "2.9.0";
        sha256 = "0aa1ia4r49vy5hfg59rbrfmfwdyaix0l32drdjnj9xxqbayifjzf";
+       revision = "1";
+       editedCabalFile = "0xvis08x4ajayp73f6j0czpksn309f3anv5kklxa9r6j8j5qkhvz";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring conduit containers monad-logger
          mysql mysql-simple persistent resource-pool resourcet text
@@ -172608,6 +173248,33 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "persistent-mysql_2_10_0" = callPackage
+    ({ mkDerivation, aeson, base, blaze-builder, bytestring, conduit
+     , containers, fast-logger, hspec, HUnit, monad-logger, mysql
+     , mysql-simple, persistent, persistent-qq, persistent-template
+     , persistent-test, QuickCheck, quickcheck-instances, resource-pool
+     , resourcet, text, time, transformers, unliftio-core
+     }:
+     mkDerivation {
+       pname = "persistent-mysql";
+       version = "2.10.0";
+       sha256 = "13y65l0vaiczxndah2djh28j4jhslymb53gnfz3av24kg5vb2y4n";
+       libraryHaskellDepends = [
+         aeson base blaze-builder bytestring conduit containers monad-logger
+         mysql mysql-simple persistent resource-pool resourcet text
+         transformers unliftio-core
+       ];
+       testHaskellDepends = [
+         base bytestring containers fast-logger hspec HUnit monad-logger
+         mysql persistent persistent-qq persistent-template persistent-test
+         QuickCheck quickcheck-instances resourcet text time transformers
+         unliftio-core
+       ];
+       description = "Backend for the persistent library using MySQL database server";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "persistent-mysql-haskell" = callPackage
     ({ mkDerivation, aeson, base, bytestring, conduit, containers
      , io-streams, monad-logger, mysql-haskell, network, persistent
@@ -172687,6 +173354,36 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
+  "persistent-postgresql_2_10_0" = callPackage
+    ({ mkDerivation, aeson, base, blaze-builder, bytestring, conduit
+     , containers, fast-logger, hspec, hspec-expectations, HUnit
+     , monad-logger, persistent, persistent-qq, persistent-template
+     , persistent-test, postgresql-libpq, postgresql-simple, QuickCheck
+     , quickcheck-instances, resource-pool, resourcet, text, time
+     , transformers, unliftio-core, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "persistent-postgresql";
+       version = "2.10.0";
+       sha256 = "00kc14zf6ggblyps68qvg7d0s4wbsz0iv96sdvjv5rsqwblrav18";
+       libraryHaskellDepends = [
+         aeson base blaze-builder bytestring conduit containers monad-logger
+         persistent postgresql-libpq postgresql-simple resource-pool
+         resourcet text time transformers unliftio-core
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers fast-logger hspec
+         hspec-expectations HUnit monad-logger persistent persistent-qq
+         persistent-template persistent-test QuickCheck quickcheck-instances
+         resourcet text time transformers unliftio-core unordered-containers
+         vector
+       ];
+       description = "Backend for the persistent library using postgresql";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ psibi ];
+     }) {};
+
   "persistent-protobuf" = callPackage
     ({ mkDerivation, base, bytestring, persistent, protocol-buffers
      , protocol-buffers-descriptor, template-haskell, text
@@ -172876,6 +173573,41 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {inherit (pkgs) sqlite;};
 
+  "persistent-sqlite_2_10_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, conduit, containers
+     , exceptions, fast-logger, hspec, HUnit, microlens-th, monad-logger
+     , persistent, persistent-template, persistent-test, QuickCheck
+     , resource-pool, resourcet, sqlite, system-fileio, system-filepath
+     , temporary, text, time, transformers, unliftio-core
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "persistent-sqlite";
+       version = "2.10.0";
+       sha256 = "1h3ls1wg02q7336zqfrpggx64f1wm3x701dvkwvci6yn4hqvkpn2";
+       revision = "1";
+       editedCabalFile = "1kxqz47h2gxinck114ip75brbm0wsimff5fdzldv72mqv7id66nl";
+       configureFlags = [ "-fsystemlib" ];
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring conduit containers microlens-th monad-logger
+         persistent resource-pool resourcet text time transformers
+         unliftio-core unordered-containers
+       ];
+       librarySystemDepends = [ sqlite ];
+       testHaskellDepends = [
+         base bytestring containers exceptions fast-logger hspec HUnit
+         monad-logger persistent persistent-template persistent-test
+         QuickCheck resourcet system-fileio system-filepath temporary text
+         time transformers unliftio-core
+       ];
+       description = "Backend for the persistent library using sqlite3";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ psibi ];
+     }) {inherit (pkgs) sqlite;};
+
   "persistent-template" = callPackage
     ({ mkDerivation, aeson, aeson-compat, base, bytestring, containers
      , ghc-prim, hspec, http-api-data, monad-control, monad-logger
@@ -172901,23 +173633,27 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
-  "persistent-template_2_6_0" = callPackage
-    ({ mkDerivation, aeson, aeson-compat, base, bytestring, containers
-     , ghc-prim, hspec, http-api-data, monad-control, monad-logger
-     , path-pieces, persistent, QuickCheck, tagged, template-haskell
-     , text, transformers, unordered-containers
+  "persistent-template_2_7_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, criterion
+     , deepseq, deepseq-generics, file-embed, hspec, http-api-data
+     , monad-control, monad-logger, path-pieces, persistent, QuickCheck
+     , template-haskell, text, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "persistent-template";
-       version = "2.6.0";
-       sha256 = "0wr1z2nfrl6jv1lprxb0d2jw4izqfcbcwvkdrhryzg95gjz8ryjv";
+       version = "2.7.0";
+       sha256 = "0pz750b7ybg27nl9b7hiw25vg0dwjy8196c6kpj1xwfgcxkdizq5";
        libraryHaskellDepends = [
-         aeson aeson-compat base bytestring containers ghc-prim
-         http-api-data monad-control monad-logger path-pieces persistent
-         tagged template-haskell text transformers unordered-containers
+         aeson base bytestring containers http-api-data monad-control
+         monad-logger path-pieces persistent template-haskell text
+         transformers unordered-containers
        ];
        testHaskellDepends = [
-         aeson base bytestring hspec persistent QuickCheck text transformers
+         aeson base bytestring hspec persistent QuickCheck text
+       ];
+       benchmarkHaskellDepends = [
+         base criterion deepseq deepseq-generics file-embed persistent
+         template-haskell text
        ];
        description = "Type-safe, non-relational, multi-backend persistence";
        license = stdenv.lib.licenses.mit;
@@ -174421,6 +175157,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pipes-brotli" = callPackage
+    ({ mkDerivation, base, brotli, bytestring, pipes, pipes-bytestring
+     , QuickCheck
+     }:
+     mkDerivation {
+       pname = "pipes-brotli";
+       version = "0.0.0.0";
+       sha256 = "0qld1j404sddw850pdm5y65n8rld5vqzpr38kq9xcnlxmfs29zhp";
+       libraryHaskellDepends = [ base brotli bytestring pipes ];
+       testHaskellDepends = [
+         base bytestring pipes pipes-bytestring QuickCheck
+       ];
+       description = "Brotli (RFC7932) compressors and decompressors for the Pipes package";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pipes-bytestring" = callPackage
     ({ mkDerivation, base, bytestring, pipes, pipes-group, pipes-parse
      , stringsearch, transformers
@@ -174994,6 +175746,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pipes-network-ws" = callPackage
+    ({ mkDerivation, base, bytestring, network-simple-ws, pipes }:
+     mkDerivation {
+       pname = "pipes-network-ws";
+       version = "0.1";
+       sha256 = "1jb59wl3xh0jkp4njj7xhybhnanwrx6h0zzj647lgxg6wpf8f704";
+       libraryHaskellDepends = [
+         base bytestring network-simple-ws pipes
+       ];
+       description = "WebSockets support for pipes";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pipes-ordered-zip" = callPackage
     ({ mkDerivation, base, foldl, pipes }:
      mkDerivation {
@@ -175838,8 +176603,8 @@ self: {
      }:
      mkDerivation {
        pname = "playlists-http";
-       version = "0.2.1.0";
-       sha256 = "1kzc1awfqk979h2hmpqh2pjiy33v140pibbp703hqbq0fkrynj2k";
+       version = "0.2.1.1";
+       sha256 = "1smshj9ib0fp9kd7bsj15nq6vglzrdy8wzs3l6pi1rf6sjhjhb3l";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -176697,6 +177462,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "poly" = callPackage
+    ({ mkDerivation, base, QuickCheck, quickcheck-classes, semirings
+     , tasty, tasty-quickcheck, vector
+     }:
+     mkDerivation {
+       pname = "poly";
+       version = "0.1.0.0";
+       sha256 = "1aipcajm5vg7ircpds2sg7ryvhid77hc56hsk146i5hyblnb4wbw";
+       libraryHaskellDepends = [ base semirings vector ];
+       testHaskellDepends = [
+         base QuickCheck quickcheck-classes semirings tasty tasty-quickcheck
+         vector
+       ];
+       description = "Polynomials";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "poly-arity" = callPackage
     ({ mkDerivation, base, constraints }:
      mkDerivation {
@@ -179354,8 +180136,8 @@ self: {
      }:
      mkDerivation {
        pname = "pretty-ghci";
-       version = "0.1.0.0";
-       sha256 = "0g3vssp09n77p05z7y36iddq05gymzlaar6k3k3si49il0cl56v7";
+       version = "0.2.0.0";
+       sha256 = "1ng4ypjz3yq2f536pd89bkwsdc2icfkw54ys5j5kzm75khgkhqg1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -181483,8 +182265,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto-lens-arbitrary";
-       version = "0.1.2.6";
-       sha256 = "1ij221zy2m7g9wp05ksk7labminvp6zynylfh4bc7z50qmhbwgr3";
+       version = "0.1.2.7";
+       sha256 = "092gdxw1jbhp0pxzgyg8jmcwiimyhzvhxh29h7c7vmvb6m956d0f";
        libraryHaskellDepends = [
          base bytestring containers lens-family proto-lens QuickCheck text
        ];
@@ -182773,8 +183555,8 @@ self: {
      }:
      mkDerivation {
        pname = "purescript";
-       version = "0.12.4";
-       sha256 = "1lkicclh9gm3lwgi2vl7qqa2vzf763rw06m79mr1j291z4h2ym76";
+       version = "0.12.5";
+       sha256 = "0dpn0v510lgzd9zqglqan4m8l7bf891psqmih147pnrmigmiaa39";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -186159,6 +186941,26 @@ self: {
        broken = true;
      }) {};
 
+  "rank2classes_1_3" = callPackage
+    ({ mkDerivation, base, distributive, doctest, tasty, tasty-hunit
+     , template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "rank2classes";
+       version = "1.3";
+       sha256 = "1mwwismxafz43qjqh74gjd8d1hiflkilkxkwfvwhq0gx4h4i0rq1";
+       libraryHaskellDepends = [
+         base distributive template-haskell transformers
+       ];
+       testHaskellDepends = [
+         base distributive doctest tasty tasty-hunit
+       ];
+       description = "standard type constructor class hierarchy, only with methods of rank 2 types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "rapid" = callPackage
     ({ mkDerivation, async, base, containers, foreign-store, stm }:
      mkDerivation {
@@ -186558,6 +187360,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "rattle" = callPackage
+    ({ mkDerivation, base, bytestring, cryptohash-sha256, deepseq
+     , directory, extra, filepath, filepattern, hashable, shake, time
+     , transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "rattle";
+       version = "0.1";
+       sha256 = "10ra58lqhi9pn92rgyv6lkz7036kbq9gr6ly5w1lqdayla10fqhr";
+       revision = "1";
+       editedCabalFile = "1ppli9l28b4pg6h57kx7vvy0wqacn4vx86bvrgjcwwlvlir49scw";
+       libraryHaskellDepends = [
+         base bytestring cryptohash-sha256 deepseq directory extra filepath
+         hashable shake time transformers unordered-containers
+       ];
+       testHaskellDepends = [ base directory extra filepattern shake ];
+       description = "Forward build system, with caching and speculation";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "rattletrap" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
      , bytestring, clock, containers, filepath, http-client
@@ -186591,7 +187415,7 @@ self: {
        broken = true;
      }) {};
 
-  "rattletrap_6_2_3" = callPackage
+  "rattletrap_6_3_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
      , bytestring, clock, containers, filepath, http-client
      , http-client-tls, HUnit, template-haskell, temporary, text
@@ -186599,8 +187423,8 @@ self: {
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "6.2.3";
-       sha256 = "0h542a6i1rc1zh2xy4fc9cdaq424hka77mxndg2ka8a0c0mj0jfp";
+       version = "6.3.0";
+       sha256 = "0b20ih5b1g74zpdyhlpi9j98zjimad1b6lwmxqqdcviw2wwih28p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -186890,8 +187714,10 @@ self: {
      }:
      mkDerivation {
        pname = "rdf";
-       version = "0.1.0.2";
-       sha256 = "0vqznprx5r7lqyj8b850pfyy7mvin55l1v4krmi1wyacynv977c8";
+       version = "0.1.0.3";
+       sha256 = "0bypvzr4xj3nvq839slhjcl6lzs4zp34yg6q3hdkwa5vgall6x2s";
+       revision = "1";
+       editedCabalFile = "0x5zdjbyrpap5qs40yl0m96fcgy11f6s5r3v0n8n5904cxa5sqy3";
        libraryHaskellDepends = [
          attoparsec base bytestring deepseq dlist fgl text transformers
        ];
@@ -189704,8 +190530,8 @@ self: {
      }:
      mkDerivation {
        pname = "registry";
-       version = "0.1.3.4";
-       sha256 = "1l26b1isxqfax7c91l23fqx2kyl5cw4j2b6i0jiiz8lcn71qy0ha";
+       version = "0.1.3.5";
+       sha256 = "1nyk32bimkhsbz2597hdy089c7w5025wj9yfj1i3gd0145liaf2h";
        libraryHaskellDepends = [
          base containers exceptions hashable mtl protolude resourcet
          semigroupoids semigroups template-haskell text transformers-base
@@ -191005,6 +191831,8 @@ self: {
        pname = "req";
        version = "2.0.1";
        sha256 = "1mfm6yy23l64kqbxvp1yn3yqf7fl46as87rz4yazg7f5x13bas3r";
+       revision = "1";
+       editedCabalFile = "1ghz63gcgkfd7hqx3ff97fg6m3cw1ariqk06ck2x75cn4y42myvn";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson authenticate-oauth base blaze-builder bytestring
@@ -194864,6 +195692,32 @@ self: {
        broken = true;
      }) {};
 
+  "safe-json" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, dlist
+     , generic-arbitrary, hashable, quickcheck-instances, scientific
+     , tasty, tasty-hunit, tasty-quickcheck, temporary, text, time
+     , unordered-containers, uuid, uuid-types, vector
+     }:
+     mkDerivation {
+       pname = "safe-json";
+       version = "0.1.0";
+       sha256 = "17h5z20fcqp6gsmml1zqhckxgvc7jrx4mzdcqbsjlmpy52hb0lxq";
+       libraryHaskellDepends = [
+         aeson base bytestring containers dlist hashable scientific tasty
+         tasty-hunit tasty-quickcheck text time unordered-containers
+         uuid-types vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers dlist generic-arbitrary hashable
+         quickcheck-instances scientific tasty tasty-hunit tasty-quickcheck
+         temporary text time unordered-containers uuid uuid-types vector
+       ];
+       description = "Automatic JSON format versioning";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "safe-lazy-io" = callPackage
     ({ mkDerivation, base, extensible-exceptions, parallel, strict-io
      }:
@@ -195327,22 +196181,23 @@ self: {
        broken = true;
      }) {};
 
-  "salak_0_2_9" = callPackage
-    ({ mkDerivation, attoparsec, base, containers, data-default
-     , directory, filepath, hspec, menshen, mtl, pqueue, QuickCheck
-     , scientific, text, time
+  "salak_0_2_9_3" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, containers
+     , data-default, directory, filepath, hspec, menshen, mtl, pqueue
+     , QuickCheck, scientific, text, time, unliftio-core
      }:
      mkDerivation {
        pname = "salak";
-       version = "0.2.9";
-       sha256 = "1zq8sr5m10bkglwiscadprs4rdj5irpkgpd4ya72r4f61waba5fd";
+       version = "0.2.9.3";
+       sha256 = "0y1p2cf8bpglqf20a16d2h5xfknzz6wcdgwv6mamh24mdqv0c3rn";
        libraryHaskellDepends = [
-         attoparsec base containers data-default directory filepath menshen
-         mtl pqueue scientific text time
+         attoparsec base bytestring containers data-default directory
+         filepath menshen mtl pqueue scientific text time unliftio-core
        ];
        testHaskellDepends = [
-         attoparsec base containers data-default directory filepath hspec
-         menshen mtl pqueue QuickCheck scientific text time
+         attoparsec base bytestring containers data-default directory
+         filepath hspec menshen mtl pqueue QuickCheck scientific text time
+         unliftio-core
        ];
        description = "Configuration Loader";
        license = stdenv.lib.licenses.bsd3;
@@ -195356,8 +196211,8 @@ self: {
      }:
      mkDerivation {
        pname = "salak-toml";
-       version = "0.2.9";
-       sha256 = "1v5lc98dva6y2d6pqbwipnan2hyrhisx6c57r1rbw0lsalh7vpqx";
+       version = "0.2.9.3";
+       sha256 = "1hb5ddm7a9acwri730w50p14vyk6z8q1wnx2b87386d80am5mbpy";
        libraryHaskellDepends = [
          base mtl salak text time tomland unordered-containers
        ];
@@ -195377,9 +196232,9 @@ self: {
      }:
      mkDerivation {
        pname = "salak-yaml";
-       version = "0.2.9";
-       sha256 = "162gz0rs73ls1r3y9dfg3pz47nnc7mk5hmvxms814jspac27c1h5";
-       libraryHaskellDepends = [ base conduit libyaml mtl salak text ];
+       version = "0.2.9.3";
+       sha256 = "0jjmw923zvm349q318iw7y5lfqhbr85xgp6ai3xx5w5d4mcb2f32";
+       libraryHaskellDepends = [ base conduit libyaml salak text ];
        testHaskellDepends = [
          base conduit hspec libyaml mtl QuickCheck salak text
        ];
@@ -199135,8 +199990,8 @@ self: {
        pname = "serialize-instances";
        version = "0.1.0.0";
        sha256 = "1m88jd5w68vpk7z2x2fffd5ljrzr93y20246dkkzn1md9ky0fclw";
-       revision = "2";
-       editedCabalFile = "1jbp16c0zg0g85m4cmn0wd5zm6z13ks93wm3q7qhxcaa1qrm8mgr";
+       revision = "3";
+       editedCabalFile = "1apx6j68l0gyicf8bxh010r1xy6sp2nbw3zj79lfqbw7fm3swv52";
        libraryHaskellDepends = [
          base cereal hashable semigroups unordered-containers
        ];
@@ -199279,7 +200134,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "servant_0_16" = callPackage
+  "servant_0_16_0_1" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base-compat, bifunctors
      , bytestring, Cabal, cabal-doctest, case-insensitive, deepseq
      , doctest, hspec, hspec-discover, http-api-data, http-media
@@ -199289,8 +200144,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant";
-       version = "0.16";
-       sha256 = "0flpk4hd459lglxxyrbcvsk1401lcl5qrcr4ixz87jrs6vx97h37";
+       version = "0.16.0.1";
+       sha256 = "0ial3gvmsbaa26lgqlxk5sigpdqrr982cgkp2amlgniwg85sa2wp";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          aeson attoparsec base base-compat bifunctors bytestring
@@ -199299,8 +200154,9 @@ self: {
          text transformers vault
        ];
        testHaskellDepends = [
-         aeson base base-compat bytestring doctest hspec mtl QuickCheck
-         quickcheck-instances string-conversions text transformers
+         aeson base base-compat bytestring doctest hspec http-media mtl
+         QuickCheck quickcheck-instances string-conversions text
+         transformers
        ];
        testToolDepends = [ hspec-discover ];
        description = "A family of combinators for defining webservices APIs";
@@ -199408,6 +200264,8 @@ self: {
        pname = "servant-auth-client";
        version = "0.4.0.0";
        sha256 = "1kh4kq3cc9fn49vmh304zyzn7idb4k1j0803yp7a6qc733panf9g";
+       revision = "1";
+       editedCabalFile = "0cynalya2y5bfnhkc49vwf0ldxg4km6nklk77nlxjcrvwas21g7z";
        libraryHaskellDepends = [
          base bytestring containers servant servant-auth servant-client-core
        ];
@@ -199463,8 +200321,8 @@ self: {
        pname = "servant-auth-docs";
        version = "0.2.10.0";
        sha256 = "0j1ynnrb6plrhpb2vzs2p7a9jb41llp0j1jwgap7hjhkwhyc7wxd";
-       revision = "2";
-       editedCabalFile = "0309a6pc8jj24xwqmzj1yslgij9g212hnaqh2qkcvlm6k6riffil";
+       revision = "3";
+       editedCabalFile = "0in6rhgwn5idc2rsl4zbh6kkhxq471iczjd3i6ap60xg46ciymga";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base lens servant servant-auth servant-docs text
@@ -199527,6 +200385,8 @@ self: {
        pname = "servant-auth-server";
        version = "0.4.4.0";
        sha256 = "13196aknmb125ri3szqx8z5hdkk8lglv4795ck5glpn953vgq51c";
+       revision = "1";
+       editedCabalFile = "1wxiakkcx7d0j6zasjd84y7k98j94sy5nkj0vngjpd2jzlv79bb0";
        libraryHaskellDepends = [
          aeson base base64-bytestring blaze-builder bytestring
          case-insensitive cookie data-default-class entropy http-types jose
@@ -199551,8 +200411,8 @@ self: {
        pname = "servant-auth-swagger";
        version = "0.2.10.0";
        sha256 = "04ndbbhdmpgb8yshki6q2j46a5q8fzvlb4nn8x8gv0mqkriq79sh";
-       revision = "1";
-       editedCabalFile = "105rniz4cmmwr0ynyv75s4ap1fgfwxy2k5mvvj66gwpvzmj55cnx";
+       revision = "2";
+       editedCabalFile = "1vr0qss87gi6r9z876v9vnmfhr4m58n5x44fgzpmjkn7wlh1i6m7";
        libraryHaskellDepends = [
          base lens servant servant-auth servant-swagger swagger2 text
        ];
@@ -199751,8 +200611,8 @@ self: {
        pname = "servant-blaze";
        version = "0.9";
        sha256 = "1pfnpc6m7i8knndc1734fbzpfgmvdcpkd8cj0jyw139b70siz63r";
-       revision = "1";
-       editedCabalFile = "06lq9lyli0pnmpw9489vzindjs0s9f982v6y9zk1lwc043nzg3ax";
+       revision = "2";
+       editedCabalFile = "0icqk00h03d6slfha8ylb07jj69y4chnhczxk8zskvgc89f6jl97";
        libraryHaskellDepends = [ base blaze-html http-media servant ];
        testHaskellDepends = [ base blaze-html servant-server wai warp ];
        description = "Blaze-html support for servant";
@@ -199924,6 +200784,8 @@ self: {
        pname = "servant-client";
        version = "0.16";
        sha256 = "0641fqlvqkm5075pcgcg5q81j7jil79sjpifg1snagfisrsxifxj";
+       revision = "1";
+       editedCabalFile = "0grjsgdmyr9mp7mnmf5qw6wkciigpzxsyzsj6l8fbb7mq5rsid78";
        libraryHaskellDepends = [
          base base-compat bytestring containers deepseq exceptions
          http-client http-media http-types kan-extensions monad-control mtl
@@ -199973,6 +200835,8 @@ self: {
        pname = "servant-client-core";
        version = "0.16";
        sha256 = "0cvv9a7z6ahwjp433c4sxa9i1ifabbih63bx71r9gvqzl85pb3dz";
+       revision = "1";
+       editedCabalFile = "1hanl8sz14z11441ng8vkzpxrl6igk3xzp6fcm6wg59fsb30fh29";
        libraryHaskellDepends = [
          aeson base base-compat base64-bytestring bytestring containers
          deepseq exceptions free http-media http-types network-uri safe
@@ -200100,6 +200964,8 @@ self: {
        pname = "servant-dhall";
        version = "0.1.0.2";
        sha256 = "09fvyhkqpypg73cxs7y2asvlch83i4sqzh2w0d5ix0zl5i7f6rz3";
+       revision = "1";
+       editedCabalFile = "19jdp0xj1nl21wzfnk2y3qrzi7cag1m3wk0zqvqayc2czq9h0k08";
        libraryHaskellDepends = [
          base base-compat bytestring dhall http-media megaparsec
          prettyprinter servant text
@@ -200125,8 +200991,8 @@ self: {
        pname = "servant-docs";
        version = "0.11.3";
        sha256 = "0cys1h3m0aq77aw0szj7k6p7zqcr8074zrxzsjp58lss1daqisq7";
-       revision = "1";
-       editedCabalFile = "1f5vdd096yrb0fsnzy709xw3x1r5q1pymscqaaarz3h2sky385lv";
+       revision = "2";
+       editedCabalFile = "1zzv3mbfyvpqddhz8a7z8wfwy4w4y21rwpi7k15xzm9647sdgga5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -200452,6 +201318,8 @@ self: {
        pname = "servant-http-streams";
        version = "0.16";
        sha256 = "1gkgk13zxi8y071i9dx0i1kbs14rgp8cfnfcd7rpg86pffxkx6cp";
+       revision = "1";
+       editedCabalFile = "0i3668fw4h503hig1vd9d7k0mxlsis81cs7a5fh2k5yja5sj81ik";
        libraryHaskellDepends = [
          base base-compat bytestring case-insensitive containers deepseq
          exceptions http-common http-media http-streams http-types
@@ -200611,8 +201479,8 @@ self: {
        pname = "servant-lucid";
        version = "0.9";
        sha256 = "1xamwcijd03cynml5c2hr577qairybyrqd90ixyb1a94lql6agbf";
-       revision = "1";
-       editedCabalFile = "0fgik3s4vqyx5f8r777x82baj42qqgnxwi8gfp8iz3wfifvpc43k";
+       revision = "2";
+       editedCabalFile = "17p1xxzmr3ya0k4cy9n5mqf356gm35jdcm8mw1cxg2v80sd6nr4j";
        libraryHaskellDepends = [ base http-media lucid servant text ];
        testHaskellDepends = [ base lucid servant-server wai warp ];
        description = "Servant support for lucid";
@@ -200718,6 +201586,8 @@ self: {
        pname = "servant-multipart";
        version = "0.11.4";
        sha256 = "0vcwrdzj1xyjg11yvfcds9rql3gcwgdcdq4z085g44fpabjxj50s";
+       revision = "1";
+       editedCabalFile = "0sf5vmzdcfzy01d65dd2f5l4k67znmjvp86d4xgkrmqsqmgxcgpg";
        libraryHaskellDepends = [
          base bytestring directory http-media lens resourcet servant
          servant-docs servant-foreign servant-server text transformers wai
@@ -200995,8 +201865,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-quickcheck";
-       version = "0.0.7.3";
-       sha256 = "0d904xfw5q7qcwkp5n7v18drc1idssvfwic2ksfmqlxisnxmyp5r";
+       version = "0.0.7.4";
+       sha256 = "1z47fgzdwfqb0byr8wa0s9n3g8hcbf112nbgaifm0zmxx6w4jlcf";
        libraryHaskellDepends = [
          aeson base base-compat-batteries bytestring case-insensitive clock
          data-default-class hspec http-client http-media http-types mtl
@@ -201215,6 +202085,8 @@ self: {
        pname = "servant-server";
        version = "0.16";
        sha256 = "18rv99hyb448mcv1cjvs0p6cqrkw9f3zpdh18nsd29fskcybsv3b";
+       revision = "1";
+       editedCabalFile = "1v0zr3mqzjhiqrgyqgbnixa9zjvgknis3rjwyi2a3ig5l36y6ifh";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -201497,8 +202369,8 @@ self: {
        pname = "servant-swagger";
        version = "1.1.7";
        sha256 = "0dnyh4g55x70cb6xwksm0rk23v5lawdws5bxgq27ja1walh106p3";
-       revision = "1";
-       editedCabalFile = "0maasfw086a2iy4dyfaap4f1ncq1cg3p2mw6ypqhfr3dipgj5d3v";
+       revision = "2";
+       editedCabalFile = "1crl8c71ns8mnp056ba1zph57cf1l4dajbgw07gpcw2cvni6x560";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          aeson aeson-pretty base base-compat bytestring hspec http-media
@@ -201541,8 +202413,8 @@ self: {
        pname = "servant-swagger-ui-core";
        version = "0.3.2";
        sha256 = "1a1wk90vm6mq8byxz4syr03l1rf6qj8zhda7lnp23pn5d270xkd2";
-       revision = "3";
-       editedCabalFile = "1di8fz3kcyp395yvjx3i48p68kx3qg83vbjc81c5jdp1i8w0kmww";
+       revision = "4";
+       editedCabalFile = "0vvfqf9zh8a5sgd4sn4mkay803lqc5zd9dz175gxs3wmca0gr3fk";
        libraryHaskellDepends = [
          base blaze-markup bytestring http-media servant servant-blaze
          servant-server swagger2 text transformers transformers-compat
@@ -201687,8 +202559,8 @@ self: {
        pname = "servant-yaml";
        version = "0.1.0.1";
        sha256 = "00gnbdlcq6cvmhsga8h0csd35pnfib038rqlhm445l4wa0cp8m01";
-       revision = "1";
-       editedCabalFile = "05j3hqvqiq8wa45jsdx72xa5phbhvn2lxbkbhh1g0j13ky8x2waw";
+       revision = "2";
+       editedCabalFile = "0scpm5dshnb7izn1xx8q3xm1m5f52y1s7nzgp7sa7zcv3pp6n7lw";
        libraryHaskellDepends = [
          base bytestring http-media servant yaml
        ];
@@ -201832,6 +202704,35 @@ self: {
        broken = true;
      }) {};
 
+  "serverless-haskell_0_8_7" = callPackage
+    ({ mkDerivation, aeson, aeson-casing, aeson-extra, amazonka-core
+     , amazonka-kinesis, amazonka-s3, base, bytestring, case-insensitive
+     , hspec, hspec-discover, http-types, iproute, lens, network
+     , network-simple, raw-strings-qq, text, time, unix
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "serverless-haskell";
+       version = "0.8.7";
+       sha256 = "0q73j6n6552ajv5sm52rbcj4kk86wjmvrh6khci1nbln4wxgbwq2";
+       libraryHaskellDepends = [
+         aeson aeson-casing aeson-extra amazonka-core amazonka-kinesis
+         amazonka-s3 base bytestring case-insensitive http-types iproute
+         lens network network-simple text time unix unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson aeson-casing aeson-extra amazonka-core amazonka-kinesis
+         amazonka-s3 base bytestring case-insensitive hspec hspec-discover
+         http-types iproute lens network network-simple raw-strings-qq text
+         time unix unordered-containers
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Deploying Haskell code onto AWS Lambda using Serverless";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "serversession" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , containers, data-default, hashable, hspec, nonce, path-pieces
@@ -203667,13 +204568,13 @@ self: {
 
   "shh" = callPackage
     ({ mkDerivation, async, base, containers, deepseq, directory
-     , filepath, hashable, mtl, process, split, tasty, tasty-hunit
+     , doctest, filepath, mtl, process, split, tasty, tasty-hunit
      , tasty-quickcheck, template-haskell, temporary, unix
      }:
      mkDerivation {
        pname = "shh";
-       version = "0.3.1.3";
-       sha256 = "0dsb4q83zsxx78xa4cx5vgkkyrbj50567vlvxk8g10pwah0lkr4c";
+       version = "0.4.0.0";
+       sha256 = "0ghkiz720g4p8gs5h3h43pkdsgcl7iffnqdis122qhvfliwqcmpr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -203681,11 +204582,15 @@ self: {
          template-haskell unix
        ];
        executableHaskellDepends = [
-         async base directory hashable split temporary
+         async base deepseq directory temporary unix
+       ];
+       testHaskellDepends = [
+         async base directory doctest tasty tasty-hunit tasty-quickcheck
        ];
-       testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Simple shell scripting from Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "shh-extras" = callPackage
@@ -203698,6 +204603,8 @@ self: {
        testHaskellDepends = [ base tasty ];
        description = "Utility functions for using shh";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "shift" = callPackage
@@ -204803,6 +205710,19 @@ self: {
        broken = true;
      }) {};
 
+  "simple-ltl" = callPackage
+    ({ mkDerivation, base, criterion, deepseq, tasty, tasty-hunit }:
+     mkDerivation {
+       pname = "simple-ltl";
+       version = "2.1.0";
+       sha256 = "1hq9s9s9rslsq0ccdi92mjcxvvv3ficdfbfbbplgclzmlwbmwqzw";
+       libraryHaskellDepends = [ base deepseq ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "A simple LTL checker";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "simple-money" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -205164,6 +206084,19 @@ self: {
        broken = true;
      }) {};
 
+  "simple-units" = callPackage
+    ({ mkDerivation, base, first-class-families }:
+     mkDerivation {
+       pname = "simple-units";
+       version = "1.0.1.1";
+       sha256 = "1dzsr15lq32dqsbhb639vzlx2d6m2kx0qax75ik2z765r5h9f9sa";
+       libraryHaskellDepends = [ base first-class-families ];
+       description = "Simple arithmetic with SI units using type-checked dimensional analysis";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "simple-vec3" = callPackage
     ({ mkDerivation, base, criterion, doctest, doctest-driver-gen
      , QuickCheck, tasty, tasty-quickcheck, vector
@@ -205340,8 +206273,8 @@ self: {
      }:
      mkDerivation {
        pname = "simplest-sqlite";
-       version = "0.1.0.0";
-       sha256 = "0vjx01bls2z99hmynqhxm4j2cq17334wz3pz0gm5saxslkldw2sz";
+       version = "0.1.0.1";
+       sha256 = "06ccads286air3m6xys60aap5dckjimp6rvchk3v6927z9vgrn0v";
        libraryHaskellDepends = [
          base bytestring exception-hierarchy template-haskell text
        ];
@@ -208101,8 +209034,8 @@ self: {
      }:
      mkDerivation {
        pname = "snaplet-postgresql-simple";
-       version = "1.1.0.0";
-       sha256 = "0k82g3540jx7bddg0x6764c8xr955y8v5rc69kagi01nvhh7n2z5";
+       version = "1.2.0.0";
+       sha256 = "0an9b72vfnb562k49bz5wh72s637r3vrbm4x9brwf483rrmlmvrf";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -209072,6 +210005,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "socks_0_6_0" = callPackage
+    ({ mkDerivation, base, basement, bytestring, cereal, network }:
+     mkDerivation {
+       pname = "socks";
+       version = "0.6.0";
+       sha256 = "10bkf2gw5l48j6g1i2slndcg4nzdqj8syrnbj21gjz6sms3zlqlp";
+       libraryHaskellDepends = [
+         base basement bytestring cereal network
+       ];
+       description = "Socks proxy (ver 5)";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sodium" = callPackage
     ({ mkDerivation, base, containers, mtl }:
      mkDerivation {
@@ -211516,10 +212463,10 @@ self: {
      }:
      mkDerivation {
        pname = "stack";
-       version = "1.9.3";
-       sha256 = "01lbr9gp3djr5bzlchzb2rdw20855aganmczvq76fzzjyway64cf";
-       revision = "7";
-       editedCabalFile = "0gc09yfhrphzn6r2g1ifx6l5k3g78q38myg83f2djjmy9vp047bl";
+       version = "1.9.3.1";
+       sha256 = "0lxx2gwwh4kjhy9d67ykdnhm5z9zsflv515jgsf97nkf6b8db8lj";
+       revision = "2";
+       editedCabalFile = "1fypvcvjlhyxnr81gll1w0l4nw6zvsr1vhb1y5g1jnyzy8f278zj";
        configureFlags = [
          "-fdisable-git-info" "-fhide-dependency-versions"
          "-fsupported-build"
@@ -212944,8 +213891,8 @@ self: {
      }:
      mkDerivation {
        pname = "staversion";
-       version = "0.2.3.0";
-       sha256 = "012j2gcmcyjqsmfcpll2y61j7n191y8wipdki49p7i0d2n4ak88v";
+       version = "0.2.3.1";
+       sha256 = "0y3x0bylpiad1l87gzdwbgbaizqas6r9l83cngg3anqsg1gpd7a6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -213344,16 +214291,14 @@ self: {
      }:
      mkDerivation {
        pname = "stm-containers";
-       version = "1.1.0.2";
-       sha256 = "1yhivblfxycr2vk09gwg904n6fqkzn5g5rvg3whm40fnabdfa9av";
-       revision = "1";
-       editedCabalFile = "14dy3rxa009bgx534583g11i8986pjcgygzh8l15fk3rv9q1iwb8";
+       version = "1.1.0.4";
+       sha256 = "0mcn4v9gjkqp27xcwvqphiqnaj4grvxpsflhq0rwqp5ymnzlccyl";
        libraryHaskellDepends = [
          base deferred-folds focus hashable list-t stm-hamt transformers
        ];
        testHaskellDepends = [
-         deferred-folds focus foldl free HTF QuickCheck quickcheck-text
-         rerebase
+         deferred-folds focus foldl free HTF list-t QuickCheck
+         quickcheck-text rerebase
        ];
        description = "Containers for STM";
        license = stdenv.lib.licenses.mit;
@@ -213869,6 +214814,60 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "store_0_5_1_0" = callPackage
+    ({ mkDerivation, array, async, base, base-orphans
+     , base64-bytestring, bifunctors, bytestring, cereal, cereal-vector
+     , clock, containers, contravariant, criterion, cryptohash, deepseq
+     , directory, filepath, free, ghc-prim, hashable, hspec
+     , hspec-smallcheck, integer-gmp, lifted-base, monad-control
+     , mono-traversable, network, primitive, resourcet, safe, semigroups
+     , smallcheck, store-core, syb, template-haskell, text, th-lift
+     , th-lift-instances, th-orphans, th-reify-many, th-utilities, time
+     , transformers, unordered-containers, vector
+     , vector-binary-instances, void, weigh
+     }:
+     mkDerivation {
+       pname = "store";
+       version = "0.5.1.0";
+       sha256 = "0r15b04vxfca45a0rv1n4lcd6zpxhlhc9gmg9if17r1bm63x59hr";
+       revision = "1";
+       editedCabalFile = "0nfy8lrvj9kzhmbx8nkg8vlvlha8hkr4k23vs9xasvrw2wp5rfhj";
+       libraryHaskellDepends = [
+         array async base base-orphans base64-bytestring bifunctors
+         bytestring containers contravariant cryptohash deepseq directory
+         filepath free ghc-prim hashable hspec hspec-smallcheck integer-gmp
+         lifted-base monad-control mono-traversable network primitive
+         resourcet safe semigroups smallcheck store-core syb
+         template-haskell text th-lift th-lift-instances th-orphans
+         th-reify-many th-utilities time transformers unordered-containers
+         vector void
+       ];
+       testHaskellDepends = [
+         array async base base-orphans base64-bytestring bifunctors
+         bytestring clock containers contravariant cryptohash deepseq
+         directory filepath free ghc-prim hashable hspec hspec-smallcheck
+         integer-gmp lifted-base monad-control mono-traversable network
+         primitive resourcet safe semigroups smallcheck store-core syb
+         template-haskell text th-lift th-lift-instances th-orphans
+         th-reify-many th-utilities time transformers unordered-containers
+         vector void
+       ];
+       benchmarkHaskellDepends = [
+         array async base base-orphans base64-bytestring bifunctors
+         bytestring cereal cereal-vector containers contravariant criterion
+         cryptohash deepseq directory filepath free ghc-prim hashable hspec
+         hspec-smallcheck integer-gmp lifted-base monad-control
+         mono-traversable network primitive resourcet safe semigroups
+         smallcheck store-core syb template-haskell text th-lift
+         th-lift-instances th-orphans th-reify-many th-utilities time
+         transformers unordered-containers vector vector-binary-instances
+         void weigh
+       ];
+       description = "Fast binary serialization";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "store-core" = callPackage
     ({ mkDerivation, base, bytestring, ghc-prim, primitive, text
      , transformers
@@ -214303,6 +215302,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "streaming-brotli" = callPackage
+    ({ mkDerivation, base, brotli, bytestring, HUnit, QuickCheck
+     , streaming, streaming-bytestring, test-framework
+     , test-framework-hunit, test-framework-quickcheck2
+     }:
+     mkDerivation {
+       pname = "streaming-brotli";
+       version = "0.0.0.0";
+       sha256 = "12bp033sjcjf3l16ihg2xa69yl7ai0886jriqpipsddfkcjnx7mr";
+       libraryHaskellDepends = [
+         base brotli bytestring streaming streaming-bytestring
+       ];
+       testHaskellDepends = [
+         base bytestring HUnit QuickCheck streaming streaming-bytestring
+         test-framework test-framework-hunit test-framework-quickcheck2
+       ];
+       description = "Streaming interface for Brotli (RFC7932) compression";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "streaming-bytestring" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, exceptions, mmorph, mtl
      , resourcet, smallcheck, streaming, tasty, tasty-smallcheck
@@ -214466,6 +215485,26 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "streaming-lzma" = callPackage
+    ({ mkDerivation, base, bytestring, HUnit, lzma, QuickCheck
+     , streaming, streaming-bytestring, test-framework
+     , test-framework-hunit, test-framework-quickcheck2
+     }:
+     mkDerivation {
+       pname = "streaming-lzma";
+       version = "0.0.0.0";
+       sha256 = "0nqy6400fzr7mrl70wshcdfzz531wxy5x1mqg8zixg128xc0cnfb";
+       libraryHaskellDepends = [
+         base bytestring lzma streaming streaming-bytestring
+       ];
+       testHaskellDepends = [
+         base bytestring HUnit QuickCheck streaming streaming-bytestring
+         test-framework test-framework-hunit test-framework-quickcheck2
+       ];
+       description = "Streaming interface for LZMA/XZ compression";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "streaming-osm" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers
      , criterion, streaming, streaming-bytestring, streaming-utils
@@ -214747,17 +215786,17 @@ self: {
      , base64-bytestring, bifunctors, bytestring
      , bytestring-tree-builder, hashable, http-media, mtl, scientific
      , semigroups, strelka-core, text, text-builder, time, transformers
-     , unordered-containers, url-decoders
+     , unordered-containers, url-decoders, uuid
      }:
      mkDerivation {
        pname = "strelka";
-       version = "2.0.2.2";
-       sha256 = "14n4wk7xzqrl795flxvks7kzf9mm93b626r2x657xjsy7rwkw7y3";
+       version = "2.0.5";
+       sha256 = "04z2ibka7gzgkcwqjg6xi0cj42hmix1pm4r8kmfqbb68a39hqbp6";
        libraryHaskellDepends = [
          attoparsec attoparsec-data base base-prelude base64-bytestring
          bifunctors bytestring bytestring-tree-builder hashable http-media
          mtl scientific semigroups strelka-core text text-builder time
-         transformers unordered-containers url-decoders
+         transformers unordered-containers url-decoders uuid
        ];
        description = "A simple, flexible and composable web-router";
        license = stdenv.lib.licenses.mit;
@@ -217123,6 +218162,8 @@ self: {
        pname = "swagger2";
        version = "2.3.1.1";
        sha256 = "19fslhjqcnk0da1c8sdflnnxjzbbzqb0nbknpgyd45q0psxr6xs7";
+       revision = "1";
+       editedCabalFile = "1g6jiadrvglrbf0857nzfbnjxmb3lwqamgs47j3qv9k6kfwilzyk";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          aeson base base-compat-batteries bytestring containers cookie
@@ -218746,8 +219787,8 @@ self: {
      }:
      mkDerivation {
        pname = "table-layout";
-       version = "0.8.0.3";
-       sha256 = "03q3icqgxiwbyl9bhqzhdwsdirr9r40k20k1j8z1barg2309r2aa";
+       version = "0.8.0.4";
+       sha256 = "160ns7fd3xivlfirir7lk0ghv1f63b6cyfvnk8p2cn3jjfdp9xb3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -220126,8 +221167,8 @@ self: {
        pname = "tasty-hspec";
        version = "1.1.5.1";
        sha256 = "0i9kdzjpk750sa078jj3iyhp72k0177zk7vxl131r6dkyz09x27y";
-       revision = "2";
-       editedCabalFile = "1xrb7gyidbgbd1c94c1wa5dazsllp23xi4w7flsws09r267q8qpc";
+       revision = "3";
+       editedCabalFile = "1wgz3z5bnq5qml8d0i18gvz30dmmax3686lmqz3vf4hxd3vqfkpj";
        libraryHaskellDepends = [
          base hspec hspec-core QuickCheck tasty tasty-quickcheck
          tasty-smallcheck
@@ -220840,21 +221881,6 @@ self: {
        broken = true;
      }) {};
 
-  "telega" = callPackage
-    ({ mkDerivation, aeson, base, http-client, lens, tagged, text, time
-     , transformers, wreq
-     }:
-     mkDerivation {
-       pname = "telega";
-       version = "0.2.0";
-       sha256 = "1q2prviwbnwhi0xfwwblhncnpz2l0829i3zp2v573w9h91qc5yjn";
-       libraryHaskellDepends = [
-         aeson base http-client lens tagged text time transformers wreq
-       ];
-       description = "Telegram Bot API binding";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
   "telegram" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default
      , http-conduit, url, utf8-string
@@ -221423,6 +222449,29 @@ self: {
        broken = true;
      }) {};
 
+  "tensor-safe" = callPackage
+    ({ mkDerivation, base, casing, cmdargs, containers, extra
+     , formatting, ghc-typelits-extra, hint, singletons, text, vector
+     , vector-sized
+     }:
+     mkDerivation {
+       pname = "tensor-safe";
+       version = "0.1.0.0";
+       sha256 = "077jy3k47aw182nsdi3352lq9h6zssc9dpm7vwv999ksysaymhpw";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base casing cmdargs containers extra formatting ghc-typelits-extra
+         hint singletons text vector vector-sized
+       ];
+       executableHaskellDepends = [
+         base casing cmdargs containers extra formatting ghc-typelits-extra
+         hint singletons text vector vector-sized
+       ];
+       description = "Create valid deep neural network architectures";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "tensorflow" = callPackage
     ({ mkDerivation, async, attoparsec, base, bytestring, c2hs
      , containers, data-default, exceptions, fgl, HUnit, lens-family
@@ -221704,12 +222753,12 @@ self: {
      }) {};
 
   "termbox-banana" = callPackage
-    ({ mkDerivation, base, reactive-banana, stm, termbox }:
+    ({ mkDerivation, base, reactive-banana, termbox }:
      mkDerivation {
        pname = "termbox-banana";
-       version = "0.1.0";
-       sha256 = "0qyr2zykplxdg2x7k4xcg0cnv7lxx60lr55k8fs29556zalkgcgz";
-       libraryHaskellDepends = [ base reactive-banana stm termbox ];
+       version = "0.1.1";
+       sha256 = "0584n8fq3rdq4rw20sglqwm76w8qmg8akhrkvda8scrvmgi5xbck";
+       libraryHaskellDepends = [ base reactive-banana termbox ];
        description = "reactive-banana + termbox";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -224192,6 +225241,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-reify-many_0_1_9" = callPackage
+    ({ mkDerivation, base, containers, mtl, safe, template-haskell
+     , th-expand-syns
+     }:
+     mkDerivation {
+       pname = "th-reify-many";
+       version = "0.1.9";
+       sha256 = "0hxf56filzqnyrc8q7766vai80y6cgrrbrczx6n93caskl1dv2gq";
+       libraryHaskellDepends = [
+         base containers mtl safe template-haskell th-expand-syns
+       ];
+       testHaskellDepends = [ base template-haskell ];
+       description = "Recurseively reify template haskell datatype info";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-sccs" = callPackage
     ({ mkDerivation, base, containers, template-haskell }:
      mkDerivation {
@@ -224338,8 +225404,8 @@ self: {
      }:
      mkDerivation {
        pname = "themoviedb";
-       version = "1.1.5.0";
-       sha256 = "05za904yimkf9vpkksyxw6j488xyd0wigjdkj25hf2xx4nw36j0v";
+       version = "1.1.5.2";
+       sha256 = "0pp603wvq03m56w0y12abjqbfv712aj3k6ki69jq60l9pxj4nni4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -225124,21 +226190,42 @@ self: {
      }) {};
 
   "tidal" = callPackage
-    ({ mkDerivation, base, bifunctors, colour, containers, hosc
-     , microspec, mwc-random, network, parsec, template-haskell, text
-     , transformers, vector
+    ({ mkDerivation, base, bifunctors, bytestring, clock, colour
+     , containers, hosc, microspec, mwc-random, network, parsec
+     , template-haskell, text, transformers, vector
      }:
      mkDerivation {
        pname = "tidal";
-       version = "1.0.10";
-       sha256 = "1pays7hjsv7rpc0ldmzhavxkyp3avcwz912zfm9y80fyhhyyf4jp";
+       version = "1.0.11";
+       sha256 = "1lpb5233s48hfb9qjwm18c7mv31i8fw0vxqqia8kxlqdhmfcz5ri";
+       enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base bifunctors colour containers hosc mwc-random network parsec
-         template-haskell text transformers vector
+         base bifunctors bytestring clock colour containers hosc mwc-random
+         network parsec template-haskell text transformers vector
+       ];
+       testHaskellDepends = [ base containers microspec parsec ];
+       description = "Pattern language for improvised music";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
+  "tidal_1_0_13" = callPackage
+    ({ mkDerivation, base, bifunctors, bytestring, clock, colour
+     , containers, hosc, microspec, mwc-random, network, parsec
+     , template-haskell, text, transformers, vector
+     }:
+     mkDerivation {
+       pname = "tidal";
+       version = "1.0.13";
+       sha256 = "0m28z3mlp6q51znzjgw1hsfy8g4npsxl8bydm8hm9dslqc7gdi7j";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bifunctors bytestring clock colour containers hosc mwc-random
+         network parsec template-haskell text transformers vector
        ];
        testHaskellDepends = [ base containers microspec parsec ];
        description = "Pattern language for improvised music";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tidal-midi" = callPackage
@@ -229721,8 +230808,8 @@ self: {
      }:
      mkDerivation {
        pname = "turtle";
-       version = "1.5.13";
-       sha256 = "1124yhw0l8924cwkmap1qn2z0hf4vn3r73h4pmi9icahg8zpc1hg";
+       version = "1.5.14";
+       sha256 = "10sxbmis82z5r2ksfkik5kryz5i0xwihz9drc1dzz4fb76kkb67z";
        libraryHaskellDepends = [
          ansi-wl-pprint async base bytestring clock containers directory
          exceptions foldl hostname managed optional-args
@@ -232874,8 +233961,8 @@ self: {
        pname = "uniprot-kb";
        version = "0.1.2.0";
        sha256 = "0hh6fnnmr6i4mgli07hgaagswdipa0p3ckr3jzzfcw4y5x98036l";
-       revision = "3";
-       editedCabalFile = "1a532yhvgs7n096f6mjwm7811d2c6xbgr45gscg7d4ys042c0586";
+       revision = "4";
+       editedCabalFile = "1g4qds20lwsbn5hqrgbhb4yd5w5vx2gkw47mjvxr8z8nj20g2pii";
        libraryHaskellDepends = [ attoparsec base text ];
        testHaskellDepends = [
          attoparsec base hspec neat-interpolation QuickCheck text
@@ -233173,19 +234260,18 @@ self: {
      }) {};
 
   "universe" = callPackage
-    ({ mkDerivation, universe-instances-base
-     , universe-instances-extended, universe-instances-trans
-     , universe-reverse-instances
+    ({ mkDerivation, universe-base, universe-dependent-sum
+     , universe-instances-extended, universe-reverse-instances
      }:
      mkDerivation {
        pname = "universe";
-       version = "1.0";
-       sha256 = "19zr9zcqc5sfp5qfn8slkk2732j1814m3j1jkbim739limwf900z";
+       version = "1.1";
+       sha256 = "0zghqcv6jyl9x3qfmbnqyfvr4pkf3m6lil0vg66m16xlrgz68hds";
        libraryHaskellDepends = [
-         universe-instances-base universe-instances-extended
-         universe-instances-trans universe-reverse-instances
+         universe-base universe-dependent-sum universe-instances-extended
+         universe-reverse-instances
        ];
-       description = "Classes for types where we know all the values";
+       description = "A class for finite and recursively enumerable types";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
@@ -233202,6 +234288,39 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "universe-base_1_1" = callPackage
+    ({ mkDerivation, base, containers, QuickCheck, tagged, transformers
+     }:
+     mkDerivation {
+       pname = "universe-base";
+       version = "1.1";
+       sha256 = "1alr2gbmdp9lsarnhfl72zkcqrfwxwvmlq3nyb9ilmwinahlzf0n";
+       libraryHaskellDepends = [ base containers tagged transformers ];
+       testHaskellDepends = [ base containers QuickCheck ];
+       description = "A class for finite and recursively enumerable types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "universe-dependent-sum" = callPackage
+    ({ mkDerivation, base, dependent-sum, template-haskell
+     , th-abstraction, transformers, universe-base
+     }:
+     mkDerivation {
+       pname = "universe-dependent-sum";
+       version = "1.1";
+       sha256 = "1psnj7xk5ig7ghvxr6awz60117y6xdwxd8i4jbxivgfrp5ixp85f";
+       libraryHaskellDepends = [
+         base dependent-sum template-haskell th-abstraction transformers
+         universe-base
+       ];
+       testHaskellDepends = [
+         base dependent-sum template-haskell universe-base
+       ];
+       description = "Universe instances for types from dependent-sum";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "universe-instances-base" = callPackage
     ({ mkDerivation, base, containers, universe-base }:
      mkDerivation {
@@ -233215,20 +234334,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "universe-instances-base_1_1" = callPackage
+    ({ mkDerivation, base, universe-base }:
+     mkDerivation {
+       pname = "universe-instances-base";
+       version = "1.1";
+       sha256 = "17g4xf7zcxd9a2am0p401b0l87ynxwpm3c2lqc4vmw4sz071kccb";
+       libraryHaskellDepends = [ base universe-base ];
+       description = "Universe instances for types from the base package";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "universe-instances-extended" = callPackage
-    ({ mkDerivation, adjunctions, base, comonad
-     , universe-instances-base, void
-     }:
+    ({ mkDerivation, adjunctions, base, comonad, universe-base }:
      mkDerivation {
        pname = "universe-instances-extended";
-       version = "1.0.0.1";
-       sha256 = "15y9f0hbxqsksclxrssj4h08y0yb3nm9clqasjw6nsmi04kjfnv6";
-       revision = "3";
-       editedCabalFile = "1f7mzwn97kmnm1p1hscz5mzly700q2pw5awwdzzsxfkxv3law7xn";
-       libraryHaskellDepends = [
-         adjunctions base comonad universe-instances-base void
-       ];
-       description = "Universe instances for types from select extra packages";
+       version = "1.1";
+       sha256 = "12ads0n5md27wznrv7ah668ip2pp3gryn8d6my74kyhsz6g2fn5q";
+       libraryHaskellDepends = [ adjunctions base comonad universe-base ];
+       description = "Universe instances for types from selected extra packages";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
@@ -233251,6 +234376,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "universe-instances-trans_1_1" = callPackage
+    ({ mkDerivation, base, universe-base }:
+     mkDerivation {
+       pname = "universe-instances-trans";
+       version = "1.1";
+       sha256 = "0dp37rb61g5mqj4kfkgi6zxcjhrm9npz197sksqwg1skgjdgbbn6";
+       libraryHaskellDepends = [ base universe-base ];
+       description = "Universe instances for types from the transformers and mtl packages";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "universe-reverse-instances" = callPackage
     ({ mkDerivation, base, containers, universe-instances-base }:
      mkDerivation {
@@ -233266,6 +234403,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "universe-reverse-instances_1_1" = callPackage
+    ({ mkDerivation, base, containers, universe-base }:
+     mkDerivation {
+       pname = "universe-reverse-instances";
+       version = "1.1";
+       sha256 = "0pdmv146ap0dh38mxhjf11jx3fbr9im7mc0zxb3bsnwpfrv1kfqd";
+       libraryHaskellDepends = [ base containers universe-base ];
+       description = "Instances of standard classes that are made possible by enumerations";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "universe-th" = callPackage
     ({ mkDerivation, base, checkers, composition, DebugTraceHelpers
      , HUnit, mtl, QuickCheck, template-haskell, test-framework
@@ -236505,6 +237654,20 @@ self: {
        broken = true;
      }) {};
 
+  "vector-endian" = callPackage
+    ({ mkDerivation, base, cpu, deepseq, vector, zenhack-prelude }:
+     mkDerivation {
+       pname = "vector-endian";
+       version = "0.1.0.0";
+       sha256 = "0qfs19l2d56w6jl8niiq8vsjldb8mabf56xfsj45ai7ipi92cx13";
+       libraryHaskellDepends = [
+         base cpu deepseq vector zenhack-prelude
+       ];
+       doHaddock = false;
+       description = "Storable vectors with cpu-independent representation";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "vector-extras" = callPackage
     ({ mkDerivation, base, containers, deferred-folds, foldl, hashable
      , unordered-containers, vector
@@ -237014,10 +238177,8 @@ self: {
      }:
      mkDerivation {
        pname = "versions";
-       version = "3.5.0";
-       sha256 = "1g6db0ah78yk1m5wyxp0az7bzlbxsfkychqjcj423wzx90z7ww4w";
-       revision = "1";
-       editedCabalFile = "13gb4n3bdkbgf199q3px7ihaqycbx76cb8isrs3qn16n67mx5b2f";
+       version = "3.5.1";
+       sha256 = "1qbihyqw99wkdmslvxqkj6h8x0ih9w86h4s7k51maaicmgijm94w";
        libraryHaskellDepends = [ base deepseq hashable megaparsec text ];
        testHaskellDepends = [
          base base-prelude checkers megaparsec microlens QuickCheck tasty
@@ -237220,8 +238381,8 @@ self: {
      }:
      mkDerivation {
        pname = "vimeta";
-       version = "0.2.5.0";
-       sha256 = "03ykd8pz7wn9dcj78zgq15ip04g8b4b7945g6fj5a7bfz0y9asbf";
+       version = "0.2.5.1";
+       sha256 = "1v46b0215mcyhxma3ascg3paz683j8xqsf4czs8syx4amyls36qg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -239567,8 +240728,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-secure-cookies";
-       version = "0.1.0.3";
-       sha256 = "01jqwl9z7p3vkh7jvlxzvqcq2bgkcfx559pnc87qgp7ldh018z7f";
+       version = "0.1.0.4";
+       sha256 = "0m77h2xnm3h3axchvmbylrhm4s7d31zxsv0bgqvmh9zhydr90d2v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -240115,6 +241276,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "warp-tls-uid_0_2_0_6" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, network
+     , streaming-commons, tls, unix, wai, warp, warp-tls, x509
+     }:
+     mkDerivation {
+       pname = "warp-tls-uid";
+       version = "0.2.0.6";
+       sha256 = "09xvwvb6nc6ymp6x389dxbllisrj24srcdli6d19h05cwlqbay4w";
+       libraryHaskellDepends = [
+         base bytestring data-default network streaming-commons tls unix wai
+         warp warp-tls x509
+       ];
+       testHaskellDepends = [
+         base bytestring data-default network streaming-commons tls unix wai
+         warp warp-tls x509
+       ];
+       description = "set group and user id before running server";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "warped" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, conduit, http-types
      , lifted-async, monad-control, preamble, uuid, wai, wai-conduit
@@ -241850,8 +243032,8 @@ self: {
      }:
      mkDerivation {
        pname = "wikicfp-scraper";
-       version = "0.1.0.10";
-       sha256 = "1j6aizgsf387pm6ajr6zjj1l4nnaq8mryq4vr09jji91ix9zhnw7";
+       version = "0.1.0.11";
+       sha256 = "1f6zrgjhid1fps02hbd6lmaxpi635bdzcxbsfkfk8xd7wmj0x91b";
        libraryHaskellDepends = [
          attoparsec base bytestring scalpel-core text time
        ];
@@ -242063,7 +243245,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "winery_1_0_1" = callPackage
+  "winery_1_1_1" = callPackage
     ({ mkDerivation, aeson, base, binary, bytestring, cereal
      , containers, cpu, deepseq, directory, fast-builder, gauge
      , hashable, HUnit, megaparsec, mtl, prettyprinter
@@ -242073,8 +243255,8 @@ self: {
      }:
      mkDerivation {
        pname = "winery";
-       version = "1.0.1";
-       sha256 = "03g397c7s13brm5jsdzrwg5vyanvj6yznhn95aax7a8dwvhphk2n";
+       version = "1.1.1";
+       sha256 = "0jyr5vwz55rjwqvvh2ys3aq426i6jhfrykz0mx4kidr9l9yd0yls";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -242096,7 +243278,7 @@ self: {
          aeson base binary bytestring cereal deepseq directory gauge
          serialise text
        ];
-       description = "Sustainable serialisation library";
+       description = "A compact, well-typed seralisation format for Haskell values";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -242195,16 +243377,6 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "with" = callPackage
-    ({ mkDerivation }:
-     mkDerivation {
-       pname = "with";
-       version = "0.1.0";
-       sha256 = "0jgm6w1xisyww81ak9rrrqmhgaiwdgk5rgvzax72rknzg9rb6701";
-       description = "Simple open product type";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
   "with-index" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -246406,6 +247578,41 @@ self: {
        broken = true;
      }) {};
 
+  "yam_0_6_1" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, binary, bytestring
+     , data-default, exceptions, 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, transformers, unliftio-core, unordered-containers, vault
+     , vector, wai, warp
+     }:
+     mkDerivation {
+       pname = "yam";
+       version = "0.6.1";
+       sha256 = "1llgyx9giibm1yzgk61c47jnr0ppgj5q4sq0ml9bz99j5c16id70";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring binary bytestring data-default
+         exceptions 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 transformers unliftio-core unordered-containers vault
+         vector wai warp
+       ];
+       testHaskellDepends = [
+         aeson base base16-bytestring binary bytestring data-default
+         exceptions 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 transformers unliftio-core unordered-containers vault
+         vector wai warp
+       ];
+       description = "A wrapper of servant";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "yam-app" = callPackage
     ({ mkDerivation, aeson, base, conduit, containers, ctrie
      , data-default, directory, exceptions, fast-logger, monad-control
@@ -246462,6 +247669,25 @@ self: {
        broken = true;
      }) {};
 
+  "yam-datasource_0_6_1" = callPackage
+    ({ mkDerivation, base, conduit, data-default, monad-logger
+     , persistent, resource-pool, resourcet, salak, servant-server, text
+     , unliftio-core, yam
+     }:
+     mkDerivation {
+       pname = "yam-datasource";
+       version = "0.6.1";
+       sha256 = "1k373bhh7pyb6i021a0akvsjfkpw7h3vw33a2ag57f97yalfwha4";
+       libraryHaskellDepends = [
+         base conduit data-default monad-logger persistent resource-pool
+         resourcet salak servant-server text unliftio-core yam
+       ];
+       description = "Yam DataSource Middleware";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "yam-job" = callPackage
     ({ mkDerivation, base, cron, yam-app }:
      mkDerivation {
@@ -246489,6 +247715,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "yam-redis" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, hedis, menshen
+     , monad-logger, mtl, salak, servant-server, text, yam
+     }:
+     mkDerivation {
+       pname = "yam-redis";
+       version = "0.6.1";
+       sha256 = "07qswsac1ygsfm97njry4ar1j9hb6ghkzmna7hw7f7a1y77x9m9p";
+       libraryHaskellDepends = [
+         base bytestring data-default hedis menshen monad-logger mtl salak
+         servant-server text yam
+       ];
+       description = "Yam Redis Middleware";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "yam-servant" = callPackage
     ({ mkDerivation, aeson, base, http-types, lens, servant
      , servant-server, servant-swagger, servant-swagger-ui, swagger2
@@ -247479,6 +248723,8 @@ self: {
        pname = "yesod-auth";
        version = "1.6.6";
        sha256 = "0ibmv3ghxrrjjjqb9jg4wnwr7w4hl4lsvwic13ys8fihg40ln6ka";
+       revision = "1";
+       editedCabalFile = "14l8v1znq9y628vc6vj7dlgbryjkhf09kk2l2f5spr697lygh3qp";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup bytestring conduit
@@ -248690,6 +249936,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "yesod-paginator_1_1_0_2" = callPackage
+    ({ mkDerivation, base, blaze-markup, doctest, hspec, path-pieces
+     , persistent, QuickCheck, quickcheck-classes, safe, text
+     , transformers, uri-encode, yesod-core, yesod-test
+     }:
+     mkDerivation {
+       pname = "yesod-paginator";
+       version = "1.1.0.2";
+       sha256 = "0r0qprsr2nkhy2b44xixmys32hp3wwhp5x521jzpcrd1jc5x38s9";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base blaze-markup path-pieces persistent safe text transformers
+         uri-encode yesod-core
+       ];
+       testHaskellDepends = [
+         base doctest hspec QuickCheck quickcheck-classes yesod-core
+         yesod-test
+       ];
+       description = "A pagination approach for yesod";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-paypal-rest" = callPackage
     ({ mkDerivation, base, paypal-rest-client, time, yesod-core }:
      mkDerivation {
@@ -248748,6 +250018,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "yesod-persistent_1_6_0_2" = callPackage
+    ({ mkDerivation, base, blaze-builder, conduit, hspec, persistent
+     , persistent-sqlite, persistent-template, resource-pool, resourcet
+     , text, transformers, wai-extra, yesod-core
+     }:
+     mkDerivation {
+       pname = "yesod-persistent";
+       version = "1.6.0.2";
+       sha256 = "17adw0aaj29ia7ii3jka301442860b5wvfrms079q973gzahz5fd";
+       libraryHaskellDepends = [
+         base blaze-builder conduit persistent persistent-template
+         resource-pool resourcet transformers yesod-core
+       ];
+       testHaskellDepends = [
+         base blaze-builder conduit hspec persistent persistent-sqlite text
+         wai-extra yesod-core
+       ];
+       description = "Some helpers for using Persistent from Yesod";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-platform" = callPackage
     ({ mkDerivation, ansi-terminal, ansi-wl-pprint, asn1-encoding
      , asn1-parse, asn1-types, attoparsec-conduit, authenticate
@@ -251132,6 +252424,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) unzip; inherit (pkgs) which;};
 
+  "zip-archive_0_4_1" = callPackage
+    ({ mkDerivation, array, base, binary, bytestring, containers
+     , digest, directory, filepath, HUnit, mtl, pretty, process
+     , temporary, text, time, unix, unzip, which, zlib
+     }:
+     mkDerivation {
+       pname = "zip-archive";
+       version = "0.4.1";
+       sha256 = "1cdix5mnxrbs7b2kivhdydhfzgxidd9dqlw71mdw5p21cabwkmf5";
+       revision = "1";
+       editedCabalFile = "1mv6jns7zf0fi7lrhzk007g12v6x7yf5ycbj67rbh83xfkf4nxsi";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base binary bytestring containers digest directory filepath
+         mtl pretty text time unix zlib
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath HUnit process temporary time
+         unix
+       ];
+       testToolDepends = [ unzip which ];
+       description = "Library for creating and modifying zip archives";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) unzip; inherit (pkgs) which;};
+
   "zip-conduit" = callPackage
     ({ mkDerivation, base, bytestring, cereal, conduit, conduit-extra
      , criterion, digest, directory, filepath, hpc, HUnit, LibZip, mtl
diff --git a/pkgs/development/interpreters/lua-5/5.1.nix b/pkgs/development/interpreters/lua-5/5.1.nix
deleted file mode 100644
index b2948b392d5e..000000000000
--- a/pkgs/development/interpreters/lua-5/5.1.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ stdenv, fetchurl, readline
-, self
-, callPackage
-, packageOverrides ? (self: super: {})
-}:
-
-let
-  dsoPatch = fetchurl {
-    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/lua-arch.patch?h=packages/lua51";
-    sha256 = "11fcyb4q55p4p7kdb8yp85xlw8imy14kzamp2khvcyxss4vw8ipw";
-    name = "lua-arch.patch";
-  };
-  luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
-in
-stdenv.mkDerivation rec {
-  name = "lua-${version}";
-  version = "5.1.5";
-  luaversion = "5.1";
-
-  src = fetchurl {
-    url = "https://www.lua.org/ftp/${name}.tar.gz";
-    sha256 = "2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333";
-  };
-
-  LuaPathSearchPaths    = luaPackages.getLuaPathList luaversion;
-  LuaCPathSearchPaths   = luaPackages.getLuaCPathList luaversion;
-  setupHook = luaPackages.lua-setup-hook LuaPathSearchPaths LuaCPathSearchPaths;
-
-  buildInputs = [ readline ];
-
-  patches = (if stdenv.isDarwin then [ ./5.1.darwin.patch ] else [ dsoPatch ])
-    ++ [ ./5.1.0004-Fix-stack-overflow-in-vararg-functions.patch ];
-
-  configurePhase =
-    if stdenv.isDarwin
-    then ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=macosx CFLAGS="-DLUA_USE_LINUX -fno-common -O2" LDFLAGS="" CC="$CC" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.5.1.5.dylib" INSTALL_DATA='cp -d' )
-  '' else ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDFLAGS="-fPIC" CC="$CC" AR="$AR q" RANLIB="$RANLIB" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.5.1 liblua.so.5.1.5" INSTALL_DATA='cp -d' )
-  '';
-
-  postInstall = ''
-    mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
-    sed <"etc/lua.pc" >"$out/lib/pkgconfig/lua.pc" -e "s|^prefix=.*|prefix=$out|"
-    mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
-    rmdir $out/{share,lib}/lua/5.1 $out/{share,lib}/lua
-  '';
-
-  passthru = rec {
-    buildEnv = callPackage ./wrapper.nix {
-      lua=self;
-      inherit (luaPackages) requiredLuaModules;
-    };
-    withPackages = import ./with-packages.nix { inherit buildEnv luaPackages;};
-    pkgs = luaPackages;
-    interpreter = "${self}/bin/lua";
-  };
-
-  meta = {
-    homepage = http://www.lua.org;
-    description = "Powerful, fast, lightweight, embeddable scripting language";
-    longDescription = ''
-      Lua combines simple procedural syntax with powerful data
-      description constructs based on associative arrays and extensible
-      semantics. Lua is dynamically typed, runs by interpreting bytecode
-      for a register-based virtual machine, and has automatic memory
-      management with incremental garbage collection, making it ideal
-      for configuration, scripting, and rapid prototyping.
-    '';
-    license = stdenv.lib.licenses.mit;
-    platforms = with stdenv.lib.platforms; linux ++ darwin;
-    hydraPlatforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/interpreters/lua-5/5.2.nix b/pkgs/development/interpreters/lua-5/5.2.nix
deleted file mode 100644
index e89a2cbece6d..000000000000
--- a/pkgs/development/interpreters/lua-5/5.2.nix
+++ /dev/null
@@ -1,95 +0,0 @@
-{ stdenv, fetchurl, readline
-# compiles compatibility layer with lua5.1
-, compat ? false
-, callPackage
-, self
-, packageOverrides ? (self: super: {})
-}:
-
-let
-  dsoPatch = fetchurl {
-    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/liblua.so.patch?h=packages/lua52";
-    sha256 = "1by1dy4ql61f5c6njq9ibf9kaqm3y633g2q8j54iyjr4cxvqwqz9";
-    name = "lua-arch.patch";
-  };
-  luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
-in
-stdenv.mkDerivation rec {
-  name = "lua-${version}";
-  luaversion = "5.2";
-  version = "${luaversion}.4";
-
-  LuaPathSearchPaths    = luaPackages.getLuaPathList luaversion;
-  LuaCPathSearchPaths   = luaPackages.getLuaCPathList luaversion;
-  setupHook = luaPackages.lua-setup-hook LuaPathSearchPaths LuaCPathSearchPaths;
-
-  src = fetchurl {
-    url = "https://www.lua.org/ftp/${name}.tar.gz";
-    sha256 = "0jwznq0l8qg9wh5grwg07b5cy3lzngvl5m2nl1ikp6vqssmf9qmr";
-  };
-
-  buildInputs = [ readline ];
-
-  patches = if stdenv.isDarwin then [ ./5.2.darwin.patch ] else [ dsoPatch ];
-
-
-  passthru = rec {
-    buildEnv = callPackage ./wrapper.nix {
-      lua = self;
-      inherit (luaPackages) requiredLuaModules;
-    };
-    withPackages = import ./with-packages.nix { inherit buildEnv luaPackages;};
-    pkgs = luaPackages;
-    interpreter = "${self}/bin/lua";
-  };
-
-  enableParallelBuilding = true;
-
-  configurePhase =
-    if stdenv.isDarwin
-    then ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=macosx CFLAGS="-DLUA_USE_LINUX -fno-common -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" LDFLAGS="-fPIC" V=${luaversion} R=${version}  CC="$CC" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.${version}.dylib" INSTALL_DATA='cp -d' )
-  '' else ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" LDFLAGS="-fPIC" V=${luaversion} R=${version} CC="$CC" AR="$AR q" RANLIB="$RANLIB" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.${luaversion} liblua.so.${version}" INSTALL_DATA='cp -d' )
-  '';
-
-  postInstall = ''
-    mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
-    mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
-    rmdir $out/{share,lib}/lua/${luaversion} $out/{share,lib}/lua
-    mkdir -p "$out/lib/pkgconfig"
-    cat >"$out/lib/pkgconfig/lua.pc" <<EOF
-    prefix=$out
-    libdir=$out/lib
-    includedir=$out/include
-    INSTALL_BIN=$out/bin
-    INSTALL_INC=$out/include
-    INSTALL_LIB=$out/lib
-    INSTALL_MAN=$out/man/man1
-
-    Name: Lua
-    Description: An Extensible Extension Language
-    Version: ${version}
-    Requires:
-    Libs: -L$out/lib -llua -lm
-    Cflags: -I$out/include
-    EOF
-  '';
-
-  meta = {
-    homepage = http://www.lua.org;
-    description = "Powerful, fast, lightweight, embeddable scripting language";
-    longDescription = ''
-      Lua combines simple procedural syntax with powerful data
-      description constructs based on associative arrays and extensible
-      semantics. Lua is dynamically typed, runs by interpreting bytecode
-      for a register-based virtual machine, and has automatic memory
-      management with incremental garbage collection, making it ideal
-      for configuration, scripting, and rapid prototyping.
-    '';
-    license = stdenv.lib.licenses.mit;
-    platforms = stdenv.lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/interpreters/lua-5/build-lua-package.nix b/pkgs/development/interpreters/lua-5/build-lua-package.nix
index 6b356831b3bb..bc41d86256b2 100644
--- a/pkgs/development/interpreters/lua-5/build-lua-package.nix
+++ b/pkgs/development/interpreters/lua-5/build-lua-package.nix
@@ -150,6 +150,9 @@ builtins.removeAttrs attrs ["disabled" "checkInputs"] // {
   installPhase = attrs.installPhase or ''
     runHook preInstall
 
+    # work around failing luarocks test for Write access
+    mkdir -p $out
+
     # luarocks make assumes sources are available in cwd
     # After the build is complete, it also installs the rock.
     # If no argument is given, it looks for a rockspec in the current directory
diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix
new file mode 100644
index 000000000000..fb709227180f
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/default.nix
@@ -0,0 +1,65 @@
+# similar to interpreters/python/default.nix
+{ stdenv, lib, callPackage, fetchurl }:
+let
+  dsoPatch51 = fetchurl {
+    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/lua-arch.patch?h=packages/lua51";
+    sha256 = "11fcyb4q55p4p7kdb8yp85xlw8imy14kzamp2khvcyxss4vw8ipw";
+    name = "lua-arch.patch";
+  };
+
+  dsoPatch52 = fetchurl {
+    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/liblua.so.patch?h=packages/lua52";
+    sha256 = "1by1dy4ql61f5c6njq9ibf9kaqm3y633g2q8j54iyjr4cxvqwqz9";
+    name = "lua-arch.patch";
+  };
+
+in rec {
+
+  lua5_3 = callPackage ./interpreter.nix {
+    sourceVersion = { major = "5"; minor = "3"; patch = "5"; };
+    hash = "0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac";
+    patches = lib.optionals stdenv.isDarwin [ ./5.2.darwin.patch ] ;
+    postConfigure = lib.optionalString (!stdenv.isDarwin) ''
+      cat ${./lua-5.3-dso.make} >> src/Makefile
+      sed -e 's/ALL_T *= */& $(LUA_SO)/' -i src/Makefile
+    '';
+
+    postBuild = stdenv.lib.optionalString (!stdenv.isDarwin) ''
+      ( cd src; make $makeFlags "''${makeFlagsArray[@]}" liblua.so )
+    '';
+  };
+
+  lua5_3_compat = lua5_3.override({
+    compat = true;
+  });
+
+
+  lua5_2 = callPackage ./interpreter.nix {
+    sourceVersion = { major = "5"; minor = "2"; patch = "4"; };
+    hash = "0jwznq0l8qg9wh5grwg07b5cy3lzngvl5m2nl1ikp6vqssmf9qmr";
+    patches = if stdenv.isDarwin then [ ./5.2.darwin.patch ] else [ dsoPatch52 ];
+  };
+
+  lua5_2_compat = lua5_2.override({
+    compat = true;
+  });
+
+
+  lua5_1 = callPackage ./interpreter.nix {
+    sourceVersion = { major = "5"; minor = "1"; patch = "5"; };
+    hash = "2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333";
+    patches = (if stdenv.isDarwin then [ ./5.1.darwin.patch ] else [ dsoPatch51 ])
+      ++ [ ./5.1.0004-Fix-stack-overflow-in-vararg-functions.patch ];
+  };
+
+  luajit_2_0 = import ../luajit/2.0.nix {
+    self = luajit_2_0;
+    inherit callPackage lib;
+  };
+
+  luajit_2_1 = import ../luajit/2.1.nix {
+    self = luajit_2_1;
+    inherit callPackage lib;
+  };
+
+}
diff --git a/pkgs/development/interpreters/lua-5/5.3.nix b/pkgs/development/interpreters/lua-5/interpreter.nix
index c1fdc0fd9904..26db917c9002 100644
--- a/pkgs/development/interpreters/lua-5/5.3.nix
+++ b/pkgs/development/interpreters/lua-5/interpreter.nix
@@ -1,19 +1,24 @@
-{ stdenv, fetchurl, readline, compat ? false
+{ stdenv, fetchurl, readline
+, compat ? false
 , callPackage
-, self
 , packageOverrides ? (self: super: {})
+, sourceVersion
+, hash
+, patches ? []
+, postConfigure ? null
+, postBuild ? null
 }:
 let
-  luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
-in
-stdenv.mkDerivation rec {
-  name = "lua-${version}";
-  luaversion = "5.3";
-  version = "${luaversion}.5";
+luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
+
+self = stdenv.mkDerivation rec {
+  pname = "lua";
+  luaversion = with sourceVersion; "${major}.${minor}";
+  version = "${luaversion}.${sourceVersion.patch}";
 
   src = fetchurl {
-    url = "https://www.lua.org/ftp/${name}.tar.gz";
-    sha256 = "0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac";
+    url = "https://www.lua.org/ftp/${pname}-${luaversion}.tar.gz";
+    sha256 = hash;
   };
 
   LuaPathSearchPaths    = luaPackages.getLuaPathList luaversion;
@@ -22,29 +27,43 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ readline ];
 
-  patches = if stdenv.isDarwin then [ ./5.2.darwin.patch ] else [];
-
-  configurePhase =
-    if stdenv.isDarwin
-    then ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=macosx CFLAGS="-DLUA_USE_LINUX -fno-common -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" LDFLAGS="-fPIC" V=${luaversion} R=${version}  CC="$CC" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.${version}.dylib" INSTALL_DATA='cp -d' )
-  '' else ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" LDFLAGS="-fPIC" V=${luaversion} R=${version} CC="$CC" AR="$AR q" RANLIB="$RANLIB" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.${luaversion} liblua.so.${version}" INSTALL_DATA='cp -d' )
-    cat ${./lua-5.3-dso.make} >> src/Makefile
-    sed -e 's/ALL_T *= */& $(LUA_SO)/' -i src/Makefile
-  '';
+  inherit patches;
+
+  # see configurePhase for additional flags (with space)
+  makeFlags = [
+    "INSTALL_TOP=${placeholder "out"}"
+    "INSTALL_MAN=${placeholder "out"}/share/man/man1"
+    "R=${version}"
+    "LDFLAGS=-fPIC"
+    "V=${luaversion}"
+  ] ++ (if stdenv.isDarwin then [
+    "PLAT=macosx"
+  ] else [
+    "PLAT=linux"
+  ])
+  ;
+
+  configurePhase = ''
+    runHook preConfigure
 
-  postBuild = stdenv.lib.optionalString (! stdenv.isDarwin) ''
-    ( cd src; make liblua.so "''${makeFlagsArray[@]}" )
+    makeFlagsArray+=(CFLAGS="-DLUA_USE_LINUX -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" )
+    makeFlagsArray+=(${stdenv.lib.optionalString stdenv.isDarwin "CC=\"$CC\""})
+
+    installFlagsArray=( TO_BIN="lua luac" INSTALL_DATA='cp -d' \
+      TO_LIB="${if stdenv.isDarwin then "liblua.${version}.dylib" else "liblua.a liblua.so liblua.so.${luaversion} liblua.so.${version}"}" )
+
+    runHook postConfigure
   '';
+  inherit postConfigure;
+
+  inherit postBuild;
 
   postInstall = ''
     mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
     mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
     rmdir $out/{share,lib}/lua/${luaversion} $out/{share,lib}/lua
     mkdir -p "$out/lib/pkgconfig"
+
     cat >"$out/lib/pkgconfig/lua.pc" <<EOF
     prefix=$out
     libdir=$out/lib
@@ -88,4 +107,5 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
   };
-}
+};
+in self
diff --git a/pkgs/development/interpreters/python/cpython/docs/2.7-html.nix b/pkgs/development/interpreters/python/cpython/docs/2.7-html.nix
index 7727b984d969..73d1e0ea9fd7 100644
--- a/pkgs/development/interpreters/python/cpython/docs/2.7-html.nix
+++ b/pkgs/development/interpreters/python/cpython/docs/2.7-html.nix
@@ -3,10 +3,10 @@
 { stdenv, fetchurl, lib }:
 
 stdenv.mkDerivation rec {
-  name = "python27-docs-html-2.7.3";
+  name = "python27-docs-html-2.7.16";
   src = fetchurl {
-    url = http://docs.python.org/ftp/python/doc/2.7.3/python-2.7.3-docs-html.tar.bz2;
-    sha256 = "1hg92n0mzl9w6j33b2h0bf2vy6fsxnpxfdc3qw760vcm0y00155j";
+    url = http://docs.python.org/ftp/python/doc/2.7.16/python-2.7.16-docs-html.tar.bz2;
+    sha256 = "1razs1grzhai65ihaiyph8kz6ncjkgp1gsn3c8v7kanf13lqim02";
   };
   installPhase = ''
     mkdir -p $out/share/doc/python27
diff --git a/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-a4.nix b/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-a4.nix
index 0c9673b7d7a9..54c0954ae5d0 100644
--- a/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-a4.nix
+++ b/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-a4.nix
@@ -3,10 +3,10 @@
 { stdenv, fetchurl, lib }:
 
 stdenv.mkDerivation rec {
-  name = "python27-docs-pdf-a4-2.7.3";
+  name = "python27-docs-pdf-a4-2.7.16";
   src = fetchurl {
-    url = http://docs.python.org/ftp/python/doc/2.7.3/python-2.7.3-docs-pdf-a4.tar.bz2;
-    sha256 = "13da88panq5b6qfhf8k4dgqgxkg4ydcac5cx69a3f35s1w90xdjr";
+    url = http://docs.python.org/ftp/python/doc/2.7.16/python-2.7.16-docs-pdf-a4.tar.bz2;
+    sha256 = "14ml1ynrlbhg43737bdsb8k5y39wsffqj4iwhylhb8n8l5dplfdq";
   };
   installPhase = ''
     mkdir -p $out/share/doc/python27
diff --git a/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-letter.nix b/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-letter.nix
index 9b0018e7cd78..059908029c0b 100644
--- a/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-letter.nix
+++ b/pkgs/development/interpreters/python/cpython/docs/2.7-pdf-letter.nix
@@ -3,10 +3,10 @@
 { stdenv, fetchurl, lib }:
 
 stdenv.mkDerivation rec {
-  name = "python27-docs-pdf-letter-2.7.3";
+  name = "python27-docs-pdf-letter-2.7.16";
   src = fetchurl {
-    url = http://docs.python.org/ftp/python/doc/2.7.3/python-2.7.3-docs-pdf-letter.tar.bz2;
-    sha256 = "0x41phsdrpivhzkchswsliyx3a10n7gzc9irkrw6rz22j81bfydg";
+    url = http://docs.python.org/ftp/python/doc/2.7.16/python-2.7.16-docs-pdf-letter.tar.bz2;
+    sha256 = "019i8n48m71mn31v8d85kkwyqfgcgqnqh506y4a7fcgf656bajs0";
   };
   installPhase = ''
     mkdir -p $out/share/doc/python27
diff --git a/pkgs/development/interpreters/python/cpython/docs/2.7-text.nix b/pkgs/development/interpreters/python/cpython/docs/2.7-text.nix
index b7bcfb51d29a..53c5aa3b629b 100644
--- a/pkgs/development/interpreters/python/cpython/docs/2.7-text.nix
+++ b/pkgs/development/interpreters/python/cpython/docs/2.7-text.nix
@@ -3,10 +3,10 @@
 { stdenv, fetchurl, lib }:
 
 stdenv.mkDerivation rec {
-  name = "python27-docs-text-2.7.3";
+  name = "python27-docs-text-2.7.16";
   src = fetchurl {
-    url = http://docs.python.org/ftp/python/doc/2.7.3/python-2.7.3-docs-text.tar.bz2;
-    sha256 = "1rxlb3jhh3892y65i45nk1y2lx981fr22a5hmfkp9gvjvdykjnzp";
+    url = http://docs.python.org/ftp/python/doc/2.7.16/python-2.7.16-docs-text.tar.bz2;
+    sha256 = "1da7swlykvc013684nywycinfz3v8dqkcmv0zj8p7l5lyi5mq03r";
   };
   installPhase = ''
     mkdir -p $out/share/doc/python27
diff --git a/pkgs/development/interpreters/python/cpython/docs/3.7-html.nix b/pkgs/development/interpreters/python/cpython/docs/3.7-html.nix
new file mode 100644
index 000000000000..5a6dcc63225e
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/docs/3.7-html.nix
@@ -0,0 +1,18 @@
+# This file was generated and will be overwritten by ./generate.sh
+
+{ stdenv, fetchurl, lib }:
+
+stdenv.mkDerivation rec {
+  name = "python37-docs-html-3.7.2";
+  src = fetchurl {
+    url = http://docs.python.org/ftp/python/doc/3.7.2/python-3.7.2-docs-html.tar.bz2;
+    sha256 = "19wbrawpdam09fmyipfy92sxwn1rl93v8jkfqsfx028qhvzf0422";
+  };
+  installPhase = ''
+    mkdir -p $out/share/doc/python37
+    cp -R ./ $out/share/doc/python37/html
+  '';
+  meta = {
+    maintainers = [ ];
+  };
+}
diff --git a/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-a4.nix b/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-a4.nix
new file mode 100644
index 000000000000..a122d7519f5d
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-a4.nix
@@ -0,0 +1,18 @@
+# This file was generated and will be overwritten by ./generate.sh
+
+{ stdenv, fetchurl, lib }:
+
+stdenv.mkDerivation rec {
+  name = "python37-docs-pdf-a4-3.7.2";
+  src = fetchurl {
+    url = http://docs.python.org/ftp/python/doc/3.7.2/python-3.7.2-docs-pdf-a4.tar.bz2;
+    sha256 = "0vdx762m30hjaabn6w88awcj2qpbz0b6z59zn9wmamd35k59lfba";
+  };
+  installPhase = ''
+    mkdir -p $out/share/doc/python37
+    cp -R ./ $out/share/doc/python37/pdf-a4
+  '';
+  meta = {
+    maintainers = [ ];
+  };
+}
diff --git a/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-letter.nix b/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-letter.nix
new file mode 100644
index 000000000000..4473f2e351c4
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/docs/3.7-pdf-letter.nix
@@ -0,0 +1,18 @@
+# This file was generated and will be overwritten by ./generate.sh
+
+{ stdenv, fetchurl, lib }:
+
+stdenv.mkDerivation rec {
+  name = "python37-docs-pdf-letter-3.7.2";
+  src = fetchurl {
+    url = http://docs.python.org/ftp/python/doc/3.7.2/python-3.7.2-docs-pdf-letter.tar.bz2;
+    sha256 = "17g57vlyvqx0k916q84q2pcx7y8myw0fda9fvg9kh0ph930c837x";
+  };
+  installPhase = ''
+    mkdir -p $out/share/doc/python37
+    cp -R ./ $out/share/doc/python37/pdf-letter
+  '';
+  meta = {
+    maintainers = [ ];
+  };
+}
diff --git a/pkgs/development/interpreters/python/cpython/docs/3.7-text.nix b/pkgs/development/interpreters/python/cpython/docs/3.7-text.nix
new file mode 100644
index 000000000000..d9d21bfe3a57
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/docs/3.7-text.nix
@@ -0,0 +1,18 @@
+# This file was generated and will be overwritten by ./generate.sh
+
+{ stdenv, fetchurl, lib }:
+
+stdenv.mkDerivation rec {
+  name = "python37-docs-text-3.7.2";
+  src = fetchurl {
+    url = http://docs.python.org/ftp/python/doc/3.7.2/python-3.7.2-docs-text.tar.bz2;
+    sha256 = "0h50rlr8jclwfxa106b42q2vn2ynp219c4zsy5qz65n5m3b7y1g2";
+  };
+  installPhase = ''
+    mkdir -p $out/share/doc/python37
+    cp -R ./ $out/share/doc/python37/text
+  '';
+  meta = {
+    maintainers = [ ];
+  };
+}
diff --git a/pkgs/development/interpreters/python/cpython/docs/default.nix b/pkgs/development/interpreters/python/cpython/docs/default.nix
index 60e0a0bf1e6e..a538f731473b 100644
--- a/pkgs/development/interpreters/python/cpython/docs/default.nix
+++ b/pkgs/development/interpreters/python/cpython/docs/default.nix
@@ -7,23 +7,35 @@ pythonDocs = {
     python27 = import ./2.7-html.nix {
       inherit stdenv fetchurl lib;
     };
+    python37 = import ./3.7-html.nix {
+      inherit stdenv fetchurl lib;
+    };
   };
   pdf_a4 = {
     recurseForDerivations = true;
     python27 = import ./2.7-pdf-a4.nix {
       inherit stdenv fetchurl lib;
     };
+    python37 = import ./3.7-pdf-a4.nix {
+      inherit stdenv fetchurl lib;
+    };
   };
   pdf_letter = {
     recurseForDerivations = true;
     python27 = import ./2.7-pdf-letter.nix {
       inherit stdenv fetchurl lib;
     };
+    python37 = import ./3.7-pdf-letter.nix {
+      inherit stdenv fetchurl lib;
+    };
   };
   text = {
     recurseForDerivations = true;
     python27 = import ./2.7-text.nix {
       inherit stdenv fetchurl lib;
     };
+    python37 = import ./3.7-text.nix {
+      inherit stdenv fetchurl lib;
+    };
   };
 }; in pythonDocs
diff --git a/pkgs/development/interpreters/python/cpython/docs/generate.sh b/pkgs/development/interpreters/python/cpython/docs/generate.sh
index bebefc10ccd0..a4b2e0893fcd 100755
--- a/pkgs/development/interpreters/python/cpython/docs/generate.sh
+++ b/pkgs/development/interpreters/python/cpython/docs/generate.sh
@@ -2,7 +2,7 @@
 
 TYPES="html pdf-a4 pdf-letter text"
 URL=http://docs.python.org/ftp/python/doc/VERSION/python-VERSION-docs-TYPE.tar.bz2
-VERSIONS=$(curl http://www.python.org/download/releases/ 2>/dev/null | grep "releases/[123456789]"| cut -d/ -f4 |grep -v "^[12].[012345]" |grep -v "^1.6.1")
+VERSIONS=$(for major in 2 3; do curl https://docs.python.org/$major/archives/ 2>/dev/null | perl -l -n -e'/<a href="python-([23].[0-9].[0-9]+)-docs-html.tar.bz2/ && print $1' | tail -n 1; done)
 echo "Generating expressions for:
 ${VERSIONS}
 "
diff --git a/pkgs/development/libraries/accountsservice/default.nix b/pkgs/development/libraries/accountsservice/default.nix
index b42240a26c4e..c20167138b72 100644
--- a/pkgs/development/libraries/accountsservice/default.nix
+++ b/pkgs/development/libraries/accountsservice/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "accountsservice-${version}";
-  version = "0.6.54";
+  version = "0.6.55";
 
   src = fetchurl {
     url = "https://www.freedesktop.org/software/accountsservice/accountsservice-${version}.tar.xz";
-    sha256 = "1b115n0a4yfa06kgxc69qfc1rc0w4frgs3id3029czkrhhn0ds96";
+    sha256 = "16wwd633jak9ajyr1f1h047rmd09fhf3kzjz6g5xjsz0lwcj8azz";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper meson ninja python3 ];
diff --git a/pkgs/development/libraries/accountsservice/no-create-dirs.patch b/pkgs/development/libraries/accountsservice/no-create-dirs.patch
index ef1a59b0249f..0333f925d267 100644
--- a/pkgs/development/libraries/accountsservice/no-create-dirs.patch
+++ b/pkgs/development/libraries/accountsservice/no-create-dirs.patch
@@ -1,15 +1,15 @@
 diff --git a/meson_post_install.py b/meson_post_install.py
-index ba95055..17f7926 100644
+index 5cc2dc4..dd27ad5 100644
 --- a/meson_post_install.py
 +++ b/meson_post_install.py
 @@ -9,8 +9,8 @@ localstatedir = os.path.normpath(destdir + os.sep + sys.argv[1])
  # FIXME: meson will not track the creation of these directories
  #        https://github.com/mesonbuild/meson/blob/master/mesonbuild/scripts/uninstall.py#L39
  dst_dirs = [
--  os.path.join(localstatedir, 'lib', 'AccountsService', 'icons'),
--  os.path.join(localstatedir, 'lib', 'AccountsService', 'users'),
-+  #os.path.join(localstatedir, 'lib', 'AccountsService', 'icons'),
-+  #os.path.join(localstatedir, 'lib', 'AccountsService', 'users'),
+-  (os.path.join(localstatedir, 'lib', 'AccountsService', 'icons'), 0o775),
+-  (os.path.join(localstatedir, 'lib', 'AccountsService', 'users'), 0o700),
++#  (os.path.join(localstatedir, 'lib', 'AccountsService', 'icons'), 0o775),
++#  (os.path.join(localstatedir, 'lib', 'AccountsService', 'users'), 0o700),
  ]
  
- for dst_dir in dst_dirs:
+ for (dst_dir, dst_dir_mode) in dst_dirs:
diff --git a/pkgs/development/libraries/armadillo/default.nix b/pkgs/development/libraries/armadillo/default.nix
index 3670bfd74784..7ef4feab188d 100644
--- a/pkgs/development/libraries/armadillo/default.nix
+++ b/pkgs/development/libraries/armadillo/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, cmake, openblasCompat, superlu, hdf5 }:
 
 stdenv.mkDerivation rec {
-  version = "9.200.8";
+  version = "9.300.2";
   name = "armadillo-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    sha256 = "09fcl6dgxg9203spplr7fwsbms3dvil5h5k3k6vfw7n7sm6ns3p2";
+    sha256 = "1d2nsbspj9vzgzb6w2vgjv2wzidjzc8sr8wkz2zl7wxpgspl299n";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix
index cff960b29a73..7f7ef3336a4c 100644
--- a/pkgs/development/libraries/arrow-cpp/default.nix
+++ b/pkgs/development/libraries/arrow-cpp/default.nix
@@ -1,21 +1,28 @@
-{ stdenv, symlinkJoin, fetchurl, fetchFromGitHub, autoconf, boost, brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl, python, rapidjson, snappy, thrift, which, zlib, zstd }:
+{ stdenv, fetchurl, fetchFromGitHub, autoconf, boost, brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl, python, rapidjson, snappy, thrift, uriparser, which, zlib, zstd }:
 
 let
   parquet-testing = fetchFromGitHub {
     owner = "apache";
     repo = "parquet-testing";
-    rev = "46ae2605c2de306f5740587107dcf333a527f2d1";
-    sha256 = "07ps745gas2zcfmg56m3vwl63yyzmalnxwb5dc40vd004cx5hdik";
+    rev = "8991d0b58d5a59925c87dd2a0bdb59a5a4a16bd4";
+    sha256 = "00js5d1s98y3ianrvh1ggrd157yfmia4g55jx9xmfcz4a8mcbawx";
+  };
+
+  # Enable non-bundled uriparser
+  # Introduced in https://github.com/apache/arrow/pull/4092
+  Finduriparser_cmake = fetchurl {
+    url = https://raw.githubusercontent.com/apache/arrow/af4f52961209a5f1b43a19483536285c957e3bed/cpp/cmake_modules/Finduriparser.cmake;
+    sha256 = "1cylrw00n2nkc2c49xk9j3rrza351rpravxgpw047vimcw0sk93s";
   };
 in
 
 stdenv.mkDerivation rec {
   name = "arrow-cpp-${version}";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchurl {
     url = "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
-    sha256 = "163s4i2cywq95jgrxbaq48qwmww0ibkq61k1aad4w9z9vpjfgnil";
+    sha256 = "06irh5zx6lc7jjf6hpz1vzk0pvbdx08lcirc8cp8ksb8j7fpfamc";
   };
 
   sourceRoot = "apache-arrow-${version}/cpp";
@@ -26,36 +33,31 @@ stdenv.mkDerivation rec {
     ];
 
   nativeBuildInputs = [ cmake autoconf /* for vendored jemalloc */ ];
-  buildInputs = [ boost double-conversion glog python.pkgs.python python.pkgs.numpy ];
+  buildInputs = [
+    boost brotli double-conversion flatbuffers gflags glog gtest lz4 rapidjson
+    snappy thrift uriparser zlib zstd python.pkgs.python python.pkgs.numpy
+  ];
 
   preConfigure = ''
-    substituteInPlace cmake_modules/FindThrift.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
-    substituteInPlace cmake_modules/FindBrotli.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
-    substituteInPlace cmake_modules/FindGLOG.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
     substituteInPlace cmake_modules/FindLz4.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
-    substituteInPlace cmake_modules/FindSnappy.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
+
+    cp ${Finduriparser_cmake} cmake_modules/Finduriparser.cmake
 
     patchShebangs build-support/
-  '';
 
-  BROTLI_HOME = symlinkJoin { name="brotli-wrap"; paths = [ brotli.lib brotli.dev ]; };
-  DOUBLE_CONVERSION_HOME = double-conversion;
-  FLATBUFFERS_HOME = flatbuffers;
-  GFLAGS_HOME = gflags;
-  GLOG_HOME = glog;
-  GTEST_HOME = symlinkJoin { name="gtest-wrap"; paths = [ gtest gtest.dev ]; };
-  LZ4_HOME = symlinkJoin { name="lz4-wrap"; paths = [ lz4 lz4.dev ]; };
-  RAPIDJSON_HOME = rapidjson;
-  SNAPPY_HOME = symlinkJoin { name="snappy-wrap"; paths = [ snappy snappy.dev ]; };
-  THRIFT_HOME = thrift;
-  ZLIB_HOME = symlinkJoin { name="zlib-wrap"; paths = [ zlib zlib.dev ]; };
-  ZSTD_HOME = zstd;
+    # Fix build for ARROW_USE_SIMD=OFF
+    # https://jira.apache.org/jira/browse/ARROW-5007
+    sed -i src/arrow/util/sse-util.h -e '1i#include "arrow/util/logging.h"'
+    sed -i src/arrow/util/neon-util.h -e '1i#include "arrow/util/logging.h"'
+  '';
 
   cmakeFlags = [
     "-DARROW_BUILD_TESTS=ON"
-    "-DARROW_PYTHON=ON"
+    "-DARROW_DEPENDENCY_SOURCE=SYSTEM"
     "-DARROW_PARQUET=ON"
-  ];
+    "-DARROW_PYTHON=ON"
+    "-Duriparser_SOURCE=SYSTEM"
+  ] ++ stdenv.lib.optional (!stdenv.isx86_64) "-DARROW_USE_SIMD=OFF";
 
   doInstallCheck = true;
   PARQUET_TEST_DATA = if doInstallCheck then "${parquet-testing}/data" else null;
diff --git a/pkgs/development/libraries/audio/libmysofa/default.nix b/pkgs/development/libraries/audio/libmysofa/default.nix
index d802d70adf3b..0f9f5f5aac68 100644
--- a/pkgs/development/libraries/audio/libmysofa/default.nix
+++ b/pkgs/development/libraries/audio/libmysofa/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libmysofa-${version}";
-  version = "0.6";
+  version = "0.7";
 
   src = fetchFromGitHub {
     owner = "hoene";
     repo = "libmysofa";
     rev = "v${version}";
-    sha256 = "160gcmsn6dwaca29bs95nsgjdalwc299lip0h37k3jcbxxkchgsh";
+    sha256 = "0si0z7cfw6xcs3dkrb4zini55xpxwfp27yl8lbx39gx2pf8v2jls";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/cctz/default.nix b/pkgs/development/libraries/cctz/default.nix
index e61b5840cf93..2930ffa61e3c 100644
--- a/pkgs/development/libraries/cctz/default.nix
+++ b/pkgs/development/libraries/cctz/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "cctz-${version}";
-  version = "2.2";
+  version = "2.3";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "cctz";
     rev = "v${version}";
-    sha256 = "0liiqz1swfc019rzfaa9y5kavs2hwabs2vnwbn9jfczhyxy34y89";
+    sha256 = "0254xfwscfkjc3fbvx6qgifr3pwkc2rb03z8pbvvqy098di9alhr";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/development/libraries/cmark/default.nix b/pkgs/development/libraries/cmark/default.nix
index a7b604bc0d2e..ede2049b6ee9 100644
--- a/pkgs/development/libraries/cmark/default.nix
+++ b/pkgs/development/libraries/cmark/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake }:
 
 stdenv.mkDerivation rec {
-  version = "0.28.3";
+  version = "0.29.0";
   name = "cmark-${version}";
 
   src = fetchFromGitHub {
     owner = "jgm";
     repo = "cmark";
     rev = version;
-    sha256 = "1lal6n6q7l84njgdcq1xbfxan56qlvr8xaw9m2jbd0jk4y2wkczg";
+    sha256 = "0r7jpqhgnssq444i8pwji2g36058vfzwkl70wbiwj13h4w5rfc8f";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/intel-gmmlib/default.nix b/pkgs/development/libraries/intel-gmmlib/default.nix
index 61d7b067ae82..50e97bfbfdb3 100644
--- a/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "intel-gmmlib-${version}";
-  version = "18.4.1";
+  version = "19.1.2";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "gmmlib";
     rev    = name;
-    sha256 = "1nxbz54a0md9hf0asdbyglvi6kiggksy24ffmk4wzvkai6vinm17";
+    sha256 = "1nw5qg10dqkchx39vqk9nkqggk0in2kr794dqjp73njpirixgr2b";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix
index b1c9f59b019e..a362b1ac6343 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.1";
+  version = "19.1.0";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "media-driver";
     rev    = "intel-media-${version}";
-    sha256 = "192rfv6dk9jagx0q92jq6n1slc1pllgcc7rm85fgachq9rjl7szh";
+    sha256 = "072ry87h1lds14fqb2sfz3n2sssvacamaxv2gj4nd8agnzbwizn7";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/intel-media-sdk/default.nix b/pkgs/development/libraries/intel-media-sdk/default.nix
index 6ab10c24d3dc..274058b7ec99 100644
--- a/pkgs/development/libraries/intel-media-sdk/default.nix
+++ b/pkgs/development/libraries/intel-media-sdk/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "intel-media-sdk-${version}";
-  version = "18.4.1";
+  version = "19.1.0";
 
   src = fetchurl {
     url = "https://github.com/Intel-Media-SDK/MediaSDK/archive/intel-mediasdk-${version}.tar.gz";
-    sha256 = "0yqqw6hyjn28zk4f4wznqpyiz9vinnjj8067dim64bz1f4pjhyra";
+    sha256 = "1gligrg6khzmwcy6miikljj75hhxqy0a95qzc8m61ipx5c8igdpv";
   };
 
   # patchelf is needed for binaries in $out/share/samples
diff --git a/pkgs/development/libraries/kdb/default.nix b/pkgs/development/libraries/kdb/default.nix
index 1dedd3836c29..0cd8ab503566 100644
--- a/pkgs/development/libraries/kdb/default.nix
+++ b/pkgs/development/libraries/kdb/default.nix
@@ -6,12 +6,12 @@
 
 mkDerivation rec {
   pname = "kdb";
-  version = "3.1.0";
+  version = "3.2.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/src/${name}.tar.xz";
-    sha256 = "1wi9z7j0nr9wi6aqqkdcpnr38ixyxbv00sblya7pakdf96hlamhp";
+    sha256 = "0s909x34a56n3xwhqz27irl2gbzidax0685w2kf34f0liny872cg";
   };
 
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/pkgs/development/libraries/kproperty/default.nix b/pkgs/development/libraries/kproperty/default.nix
index 455fb5a711c0..c49402b74e86 100644
--- a/pkgs/development/libraries/kproperty/default.nix
+++ b/pkgs/development/libraries/kproperty/default.nix
@@ -7,12 +7,12 @@
 
 mkDerivation rec {
   pname = "kproperty";
-  version = "3.1.0";
+  version = "3.2.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/src/${name}.tar.xz";
-    sha256 = "18qlwp7ajpx16bd0lfzqfx8y9cbrs8k4nax3cr30wj5sd3l8xpky";
+    sha256 = "1yldfsdamk4dag8dyryjn5n9j2pzi42s79kkafymfnbifhnhrbv7";
   };
 
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/pkgs/development/libraries/kreport/default.nix b/pkgs/development/libraries/kreport/default.nix
index 256989992c5a..fc9c77e8fd61 100644
--- a/pkgs/development/libraries/kreport/default.nix
+++ b/pkgs/development/libraries/kreport/default.nix
@@ -6,12 +6,12 @@
 
 mkDerivation rec {
   pname = "kreport";
-  version = "3.1.0";
+  version = "3.2.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/src/${name}.tar.xz";
-    sha256 = "0v7krpfx0isij9wzwam28fqn039i4wcznbplvnvl6hsykdi8ar1v";
+    sha256 = "1mycsvkz5rphi9df2i4ch4ykvprd4m76acsdzs3zis2ljrqnsw92";
   };
 
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/pkgs/development/libraries/nlopt/default.nix b/pkgs/development/libraries/nlopt/default.nix
index bbbc818db63d..e9b89e83907f 100644
--- a/pkgs/development/libraries/nlopt/default.nix
+++ b/pkgs/development/libraries/nlopt/default.nix
@@ -1,12 +1,14 @@
-{ fetchurl, stdenv, octave ? null, cmake }:
+{ stdenv, fetchFromGitHub, cmake, octave ? null }:
 
 stdenv.mkDerivation rec {
-  name = "nlopt-${version}";
-  version = "2.5.0";
+  pname = "nlopt";
+  version = "2.6.1";
 
-  src = fetchurl {
-    url = "https://github.com/stevengj/nlopt/archive/v${version}.tar.gz";
-    sha256 = "1bmlsdzkw8xbigiihffyb0kdaqbyfn7dr8s5pdgavy7z05bpmpf6";
+  src = fetchFromGitHub {
+    owner = "stevengj";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1k6x14lgyfhfqpbs7xx8mrgklp8l6jkkcs39zgi2sj3kg6n0hdc9";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -30,7 +32,6 @@ stdenv.mkDerivation rec {
     description = "Free open-source library for nonlinear optimization";
     license = stdenv.lib.licenses.lgpl21Plus;
     hydraPlatforms = stdenv.lib.platforms.linux;
-    broken = (octave != null);              # cannot cope with Octave 4.x
   };
 
 }
diff --git a/pkgs/development/libraries/qca-qt5/default.nix b/pkgs/development/libraries/qca-qt5/default.nix
index 6e190a656f63..79b105a2d1c8 100644
--- a/pkgs/development/libraries/qca-qt5/default.nix
+++ b/pkgs/development/libraries/qca-qt5/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, cmake, openssl, pkgconfig, qtbase }:
 
 stdenv.mkDerivation rec {
-  name = "qca-qt5-2.1.3";
+  pname = "qca-qt5";
+  version = "2.2.1";
 
   src = fetchurl {
-    url = "http://download.kde.org/stable/qca/2.1.3/src/qca-2.1.3.tar.xz";
-    sha256 = "0lz3n652z208daxypdcxiybl0a9fnn6ida0q7fh5f42269mdhgq0";
+    url = "http://download.kde.org/stable/qca/${version}/qca-${version}.tar.xz";
+    sha256 = "00kv1vsrc8fp556hm8s6yw3240vx3l4067q6vfxrb3gdwgcd45np";
   };
 
   buildInputs = [ openssl qtbase ];
diff --git a/pkgs/development/libraries/qca-qt5/move-project.patch b/pkgs/development/libraries/qca-qt5/move-project.patch
index 2a109a3aa3c7..dcecb83d7db9 100644
--- a/pkgs/development/libraries/qca-qt5/move-project.patch
+++ b/pkgs/development/libraries/qca-qt5/move-project.patch
@@ -1,19 +1,17 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 453fd8a..5f6ee11 100644
+index 2f2b5d0..971dee3 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -6,13 +6,13 @@ if(NOT CMAKE_INSTALL_PREFIX)
+@@ -6,10 +6,11 @@ if(NOT CMAKE_INSTALL_PREFIX)
    unset(CMAKE_INSTALL_PREFIX CACHE)
  endif(NOT CMAKE_INSTALL_PREFIX)
-
+ 
 -project(qca)
-
- if(NOT APPLE)
-   cmake_minimum_required(VERSION 2.8.12)
- else()
-   cmake_minimum_required(VERSION 3.0)
- endif()
+ 
+ cmake_minimum_required(VERSION 3.4)
+ 
 +project(qca)
-
++
  set(QCA_LIB_MAJOR_VERSION "2")
- set(QCA_LIB_MINOR_VERSION "1")
+ set(QCA_LIB_MINOR_VERSION "2")
+ set(QCA_LIB_PATCH_VERSION "1")
diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix
index 32c93b192ef0..36077d71126a 100644
--- a/pkgs/development/libraries/snappy/default.nix
+++ b/pkgs/development/libraries/snappy/default.nix
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" "-DCMAKE_SKIP_BUILD_RPATH=OFF" ];
 
+  postInstall = ''
+    substituteInPlace "$out"/lib/cmake/Snappy/SnappyTargets.cmake \
+      --replace 'INTERFACE_INCLUDE_DIRECTORIES "''${_IMPORT_PREFIX}/include"' 'INTERFACE_INCLUDE_DIRECTORIES "'$dev'"'
+  '';
+
   checkTarget = "test";
 
   doCheck = true;
diff --git a/pkgs/development/libraries/uriparser/default.nix b/pkgs/development/libraries/uriparser/default.nix
index a4f99b942eae..89efdc006a54 100644
--- a/pkgs/development/libraries/uriparser/default.nix
+++ b/pkgs/development/libraries/uriparser/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
       API documentation is available on uriparser website.
     '';
     license = licenses.bsd3;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ bosu ];
   };
 }
diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix
index db3f41edaffa..24e8555900de 100644
--- a/pkgs/development/lua-modules/generated-packages.nix
+++ b/pkgs/development/lua-modules/generated-packages.nix
@@ -14,13 +14,13 @@ ansicolors = buildLuarocksPackage {
   pname = "ansicolors";
   version = "1.0.2-3";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/ansicolors-1.0.2-3.src.rock;
       sha256 = "1mhmr090y5394x1j8p44ws17sdwixn5a0r4i052bkfgk3982cqfz";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/kikito/ansicolors.lua";
@@ -34,13 +34,13 @@ argparse = buildLuarocksPackage {
   pname = "argparse";
   version = "0.6.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/argparse-0.6.0-1.src.rock;
       sha256 = "10ic5wppyghd1lmgwgl0lb40pv8z9fi9i87080axxg8wsr19y0p4";
-   };
+  };
   disabled = ( luaOlder "5.1") || ( luaAtLeast "5.4");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/mpeterv/argparse";
@@ -54,13 +54,13 @@ basexx = buildLuarocksPackage {
   pname = "basexx";
   version = "0.4.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/basexx-0.4.0-1.src.rock;
       sha256 = "1px8yrxg1qkk3kzdqj3siry742jdv4ysp2dmicxi15mkynqpjlzz";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/aiq/basexx";
@@ -74,13 +74,13 @@ dkjson = buildLuarocksPackage {
   pname = "dkjson";
   version = "2.5-2";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/dkjson-2.5-2.src.rock;
       sha256 = "1qy9bzqnb9pf9d48hik4iq8h68aw3270kmax7mmpvvpw7kkyp483";
-   };
+  };
   disabled = ( luaOlder "5.1") || ( luaAtLeast "5.4");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://dkolf.de/src/dkjson-lua.fsl/";
@@ -94,13 +94,13 @@ fifo = buildLuarocksPackage {
   pname = "fifo";
   version = "0.2-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/fifo-0.2-0.src.rock;
       sha256 = "082c5g1m8brnsqj5gnjs65bm7z50l6b05cfwah14lqaqsr5a5pjk";
-   };
-
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  };
+  
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/daurnimator/fifo.lua";
@@ -114,13 +114,13 @@ inspect = buildLuarocksPackage {
   pname = "inspect";
   version = "3.1.1-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/inspect-3.1.1-0.src.rock;
       sha256 = "0k4g9ahql83l4r2bykfs6sacf9l1wdpisav2i0z55fyfcdv387za";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/kikito/inspect.lua";
@@ -134,13 +134,13 @@ lgi = buildLuarocksPackage {
   pname = "lgi";
   version = "0.9.2-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lgi-0.9.2-1.src.rock;
       sha256 = "07ajc5pdavp785mdyy82n0w6d592n96g95cvq025d6i0bcm2cypa";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="make";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "make";
 
   meta = {
     homepage = "https://github.com/pavouk/lgi";
@@ -154,13 +154,13 @@ lpeg_patterns = buildLuarocksPackage {
   pname = "lpeg_patterns";
   version = "0.5-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lpeg_patterns-0.5-0.src.rock;
       sha256 = "0mlw4nayrsdxrh98i26avz5i4170a9brciybw88kks496ra36v8f";
-   };
-
-  propagatedBuildInputs = [lua lpeg  ];
-  buildType="builtin";
+  };
+  
+  propagatedBuildInputs = [ lua lpeg ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/daurnimator/lpeg_patterns/archive/v0.5.zip";
@@ -174,13 +174,13 @@ lpty = buildLuarocksPackage {
   pname = "lpty";
   version = "1.2.2-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lpty-1.2.2-1.src.rock;
       sha256 = "1vxvsjgjfirl6ranz6k4q4y2dnxqh72bndbk400if22x8lqbkxzm";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="make";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "make";
 
   meta = {
     homepage = "http://www.tset.de/lpty/";
@@ -194,13 +194,13 @@ lrexlib-gnu = buildLuarocksPackage {
   pname = "lrexlib-gnu";
   version = "2.9.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lrexlib-gnu-2.9.0-1.src.rock;
       sha256 = "036rda4rji1pbnbxk1nzjy5zmigdsiacqbzrbvciwq3lrxa2j5s2";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/rrthomas/lrexlib";
@@ -214,13 +214,13 @@ lrexlib-posix = buildLuarocksPackage {
   pname = "lrexlib-posix";
   version = "2.9.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lrexlib-posix-2.9.0-1.src.rock;
       sha256 = "0ifpybf4m94g1nk70l0f5m45gph0rbp5wrxrl1hnw8ibv3mc1b1r";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/rrthomas/lrexlib";
@@ -234,13 +234,13 @@ ltermbox = buildLuarocksPackage {
   pname = "ltermbox";
   version = "0.2-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/ltermbox-0.2-1.src.rock;
       sha256 = "08jqlmmskbi1ml1i34dlmg6hxcs60nlm32dahpxhcrgjnfihmyn8";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://code.google.com/p/termbox";
@@ -254,12 +254,12 @@ lua-cmsgpack = buildLuarocksPackage {
   pname = "lua-cmsgpack";
   version = "0.4.0-0";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/lua-cmsgpack-0.4.0-0.rockspec;
       sha256 = "10cvr6knx3qvjcw1q9v05f2qy607mai7lbq321nx682aa0n1fzin";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchgit ( removeAttrs (builtins.fromJSON ''{
+       src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "git://github.com/antirez/lua-cmsgpack.git",
   "rev": "57b1f90cf6cec46450e87289ed5a676165d31071",
   "date": "2018-06-14T11:56:56+02:00",
@@ -267,10 +267,10 @@ lua-cmsgpack = buildLuarocksPackage {
   "fetchSubmodules": true
 }
  '') ["date"]) ;
-
+       
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/antirez/lua-cmsgpack";
@@ -284,13 +284,13 @@ lua_cliargs = buildLuarocksPackage {
   pname = "lua_cliargs";
   version = "3.0-2";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lua_cliargs-3.0-2.src.rock;
       sha256 = "0qqdnw00r16xbyqn4w1xwwpg9i9ppc3c1dcypazjvdxaj899hy9w";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/amireh/lua_cliargs";
@@ -304,13 +304,13 @@ lua-iconv = buildLuarocksPackage {
   pname = "lua-iconv";
   version = "7-3";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/lua-iconv-7-3.src.rock;
       sha256 = "03xibhcqwihyjhxnzv367q4bfmzmffxl49lmjsq77g0prw8v0q83";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://ittner.github.com/lua-iconv/";
@@ -324,19 +324,19 @@ lua-term = buildLuarocksPackage {
   pname = "lua-term";
   version = "0.7-1";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/lua-term-0.7-1.rockspec;
       sha256 = "0r9g5jw7pqr1dyj6w58dqlr7y7l0jp077n8nnji4phf10biyrvg2";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchurl {
+       src = fetchurl {
       url    = https://github.com/hoelzro/lua-term/archive/0.07.tar.gz;
       sha256 = "0c3zc0cl3a5pbdn056vnlan16g0wimv0p9bq52h7w507f72x18f1";
-   };
-
-
-
-  buildType="builtin";
+  };
+       
+  
+    
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/hoelzro/lua-term";
@@ -346,36 +346,16 @@ lua-term = buildLuarocksPackage {
     };
   };
 };
-luaevent = buildLuarocksPackage {
-  pname = "luaevent";
-  version = "0.4.6-1";
-
-  src =  fetchurl {
-      url    = https://luarocks.org/luaevent-0.4.6-1.src.rock;
-      sha256 = "0chq09nawiz00lxd6pkdqcb8v426gdifjw6js3ql0lx5vqdkb6dz";
-   };
-  disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
-
-  meta = {
-    homepage = "https://github.com/harningt/luaevent";
-    description="libevent binding for Lua";
-    license = {
-      fullName = "MIT";
-    };
-  };
-};
 luabitop = buildLuarocksPackage {
   pname = "luabitop";
   version = "1.0.2-3";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/luabitop-1.0.2-3.rockspec;
       sha256 = "07y2h11hbxmby7kyhy3mda64w83p4a6p7y7rzrjqgc0r56yjxhcc";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchgit ( removeAttrs (builtins.fromJSON ''{
+       src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "git://github.com/LuaDist/luabitop.git",
   "rev": "81bb23b0e737805442033535de8e6d204d0e5381",
   "date": "2013-02-18T16:36:42+01:00",
@@ -383,10 +363,10 @@ luabitop = buildLuarocksPackage {
   "fetchSubmodules": true
 }
  '') ["date"]) ;
-
+       
   disabled = ( luaOlder "5.1") || ( luaAtLeast "5.3");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://bitop.luajit.org/";
@@ -396,17 +376,37 @@ luabitop = buildLuarocksPackage {
     };
   };
 };
+luaevent = buildLuarocksPackage {
+  pname = "luaevent";
+  version = "0.4.6-1";
+
+  src = fetchurl {
+      url    = https://luarocks.org/luaevent-0.4.6-1.src.rock;
+      sha256 = "0chq09nawiz00lxd6pkdqcb8v426gdifjw6js3ql0lx5vqdkb6dz";
+  };
+  disabled = ( luaOlder "5.1");
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
+
+  meta = {
+    homepage = "https://github.com/harningt/luaevent";
+    description="libevent binding for Lua";
+    license = {
+      fullName = "MIT";
+    };
+  };
+};
 luacheck = buildLuarocksPackage {
   pname = "luacheck";
   version = "0.23.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/luacheck-0.23.0-1.src.rock;
       sha256 = "0akj61c7k1na2mggsckvfn9a3ljfp4agnmr9gp3mac4vin99a1cl";
-   };
+  };
   disabled = ( luaOlder "5.1") || ( luaAtLeast "5.4");
-  propagatedBuildInputs = [lua argparse luafilesystem  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua argparse luafilesystem ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/mpeterv/luacheck";
@@ -420,13 +420,13 @@ luaffi = buildLuarocksPackage {
   pname = "luaffi";
   version = "scm-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = http://luarocks.org/dev/luaffi-scm-1.src.rock;
       sha256 = "0dia66w8sgzw26bwy36gzyb2hyv7kh9n95lh5dl0158rqa6fsf26";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/facebook/luaffifb";
@@ -440,13 +440,13 @@ luuid = buildLuarocksPackage {
   pname = "luuid";
   version = "20120509-2";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/luuid-20120509-2.src.rock;
       sha256 = "08q54x0m51w89np3n117h2a153wsgv3qayabd8cz6i55qm544hkg";
-   };
+  };
   disabled = ( luaOlder "5.2") || ( luaAtLeast "5.4");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/#luuid";
@@ -460,19 +460,19 @@ penlight = buildLuarocksPackage {
   pname = "penlight";
   version = "1.5.4-1";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/penlight-1.5.4-1.rockspec;
       sha256 = "07mhsk9kmdxg4i2w4mrnnd2zs34bgggi9gigfplakxin96sa6c0p";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchurl {
+       src = fetchurl {
       url    = http://stevedonovan.github.io/files/penlight-1.5.4.zip;
       sha256 = "138f921p6kdqkmf4pz115phhj0jsqf28g33avws80d2vq2ixqm8q";
-   };
-
-
-  propagatedBuildInputs = [luafilesystem  ];
-  buildType="builtin";
+  };
+       
+  
+  propagatedBuildInputs = [ luafilesystem ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://stevedonovan.github.com/Penlight";
@@ -486,19 +486,19 @@ say = buildLuarocksPackage {
   pname = "say";
   version = "1.3-1";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/say-1.3-1.rockspec;
       sha256 = "0bknglb0qwd6r703wp3hcb6z2xxd14kq4md3sg9al3b28fzxbhdv";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchurl {
+       src = fetchurl {
       url    = https://github.com/Olivine-Labs/say/archive/v1.3-1.tar.gz;
       sha256 = "1jh76mxq9dcmv7kps2spwcc6895jmj2sf04i4y9idaxlicvwvs13";
-   };
-
+  };
+       
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://olivinelabs.com/busted/";
@@ -508,23 +508,57 @@ say = buildLuarocksPackage {
     };
   };
 };
-luv = buildLuarocksPackage {
-  pname = "luv";
-  version = "1.22.0-1";
+std__debug = buildLuarocksPackage {
+  pname = "std._debug";
+  version = "1.0.1-1";
 
-  knownRockspec = ( fetchurl {
-      url    = https://luarocks.org/luv-1.22.0-1.rockspec;
-      sha256 = "0yxjy9wj4aqbv1my8fkciy2xar5si6bcsszipgyls24rl6lnmga3";
-   }).outPath;
+  src = fetchurl {
+      url    = https://luarocks.org/std._debug-1.0.1-1.src.rock;
+      sha256 = "1qkcc5rph3ns9mzrfsa1671pb3hzbzfnaxvyw7zdly2b7ll88svz";
+  };
+  disabled = ( luaOlder "5.1") || ( luaAtLeast "5.5");
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
-   src =  fetchurl {
-      url    = https://github.com/luvit/luv/releases/download/1.22.0-1/luv-1.22.0-1.tar.gz;
-      sha256 = "1xvz4a0r6kd1xqxwm55g9n6imprxb79600x7dhyillrz7p5nm217";
-   };
+  meta = {
+    homepage = "http://lua-stdlib.github.io/_debug";
+    description="Debug Hints Library";
+    license = {
+      fullName = "MIT/X11";
+    };
+  };
+};
+std_normalize = buildLuarocksPackage {
+  pname = "std.normalize";
+  version = "2.0.2-1";
 
+  src = fetchurl {
+      url    = https://luarocks.org/std.normalize-2.0.2-1.src.rock;
+      sha256 = "0yn60zqnxflhhlv6xk6w0ifdfxk1qcg8gq1wnrrbwsxwpipsrfjh";
+  };
+  disabled = ( luaOlder "5.1") || ( luaAtLeast "5.4");
+  propagatedBuildInputs = [ lua std__debug ];  
+  buildType = "builtin";
+
+  meta = {
+    homepage = "https://lua-stdlib.github.io/normalize";
+    description="Normalized Lua Functions";
+    license = {
+      fullName = "MIT/X11";
+    };
+  };
+};
+luv = buildLuarocksPackage {
+  pname = "luv";
+  version = "1.26.0-0";
+
+  src = fetchurl {
+      url    = https://luarocks.org/luv-1.26.0-0.src.rock;
+      sha256 = "005yzcxlribnc45qr1g7q4psakximb9fbz07k6yzy1d94mhcxxr7";
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="cmake";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "cmake";
 
   meta = {
     homepage = "https://github.com/luvit/luv";
@@ -538,13 +572,13 @@ luasystem = buildLuarocksPackage {
   pname = "luasystem";
   version = "0.2.1-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/luasystem-0.2.1-0.src.rock;
       sha256 = "091xmp8cijgj0yzfsjrn7vljwznjnjn278ay7z9pjwpwiva0diyi";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://olivinelabs.com/luasystem/";
@@ -558,13 +592,13 @@ mediator_lua = buildLuarocksPackage {
   pname = "mediator_lua";
   version = "1.1.2-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = http://luarocks.org/manifests/teto/mediator_lua-1.1.2-0.src.rock;
       sha256 = "18j49vvs94yfk4fw0xsq4v3j4difr6c99gfba0kxairmcqamd1if";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://olivinelabs.com/mediator_lua/";
@@ -578,13 +612,13 @@ mpack = buildLuarocksPackage {
   pname = "mpack";
   version = "1.0.7-0";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = http://luarocks.org/manifests/teto/mpack-1.0.7-0.src.rock;
       sha256 = "0nq4ixaminkc7fwfpivysyv0al3j5dffsvgdrnwnqdg3w7jgfbw7";
-   };
-
-
-  buildType="builtin";
+  };
+  
+    
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/libmpack/libmpack-lua/releases/download/1.0.7/libmpack-lua-1.0.7.tar.gz";
@@ -598,13 +632,13 @@ nvim-client = buildLuarocksPackage {
   pname = "nvim-client";
   version = "0.1.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/nvim-client-0.1.0-1.src.rock;
       sha256 = "1p57mrvm0ny3yi5cydr3z9qwzyg124rjp5w7vdflf2i23z39mkma";
-   };
+  };
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua mpack luv coxpcall  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua mpack luv coxpcall ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "https://github.com/neovim/lua-client/archive/0.1.0-1.tar.gz";
@@ -618,19 +652,19 @@ busted = buildLuarocksPackage {
   pname = "busted";
   version = "2.0.rc13-0";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/busted-2.0.rc13-0.rockspec;
       sha256 = "0hrvhg1324q5ra6cpjh1y3by6lrzs0ljah4jl48l8xlgw1z9z1q5";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchurl {
+       src = fetchurl {
       url    = https://github.com/Olivine-Labs/busted/archive/v2.0.rc13-0.tar.gz;
       sha256 = "0m72bldn1r6j94ahcfmpaq1mmysrshf9qi9fjas7hpal0jp8ivvl";
-   };
-
+  };
+       
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua lua_cliargs luafilesystem luasystem dkjson say luassert lua-term penlight mediator_lua  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua lua_cliargs luafilesystem luasystem dkjson say luassert lua-term penlight mediator_lua ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://olivinelabs.com/busted/";
@@ -644,19 +678,19 @@ luassert = buildLuarocksPackage {
   pname = "luassert";
   version = "1.7.11-0";
 
-  knownRockspec = ( fetchurl {
+         knownRockspec = (fetchurl {
       url    = https://luarocks.org/luassert-1.7.11-0.rockspec;
       sha256 = "12zgybcv8acjzvjdbxd1764s1vxbksxdv9fkvsymcsdmppxkbd0s";
-   }).outPath;
+  }).outPath;
 
-   src =  fetchurl {
+       src = fetchurl {
       url    = https://github.com/Olivine-Labs/luassert/archive/v1.7.11.tar.gz;
       sha256 = "1vwq3wqj9cjyz9lnf1n38yhpcglr2h40v3n9096i8vcpmyvdb3ka";
-   };
-
+  };
+       
   disabled = ( luaOlder "5.1");
-  propagatedBuildInputs = [lua say  ];
-  buildType="builtin";
+  propagatedBuildInputs = [ lua say ];  
+  buildType = "builtin";
 
   meta = {
     homepage = "http://olivinelabs.com/busted/";
@@ -670,13 +704,13 @@ coxpcall = buildLuarocksPackage {
   pname = "coxpcall";
   version = "1.17.0-1";
 
-  src =  fetchurl {
+  src = fetchurl {
       url    = https://luarocks.org/manifests/hisham/coxpcall-1.17.0-1.src.rock;
       sha256 = "0n1jmda4g7x06458596bamhzhcsly6x0p31yp6q3jz4j11zv1zhi";
-   };
-
-
-  buildType="builtin";
+  };
+  
+    
+  buildType = "builtin";
 
   meta = {
     homepage = "http://keplerproject.github.io/coxpcall";
diff --git a/pkgs/development/python-modules/box2d/default.nix b/pkgs/development/python-modules/box2d/default.nix
index f1bd87126795..5870bdcdb732 100644
--- a/pkgs/development/python-modules/box2d/default.nix
+++ b/pkgs/development/python-modules/box2d/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , fetchPypi
 , swig2
-, pkgs-box2d
 , isPy3k
 }:
 
@@ -20,7 +19,7 @@ buildPythonPackage rec {
     sed -i "s/'Box2D.tests' : 'tests'//" setup.py
   '';
 
-  buildInputs = [ swig2 pkgs-box2d ];
+  nativeBuildInputs = [ swig2 ];
 
   # tests not included with pypi release
   doCheck = false;
diff --git a/pkgs/development/python-modules/breathe/default.nix b/pkgs/development/python-modules/breathe/default.nix
index f7b09b96fb16..453a046c54f2 100644
--- a/pkgs/development/python-modules/breathe/default.nix
+++ b/pkgs/development/python-modules/breathe/default.nix
@@ -1,12 +1,12 @@
 { lib, fetchPypi, buildPythonPackage, docutils, six, sphinx, isPy3k }:
 
 buildPythonPackage rec {
-  version = "4.11.1";
+  version = "4.12.0";
   pname = "breathe";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1mps0cfli6iq2gqsv3d24fs1cp7sq7crd9ji6lw63b9r40998ylv";
+    sha256 = "1wmxppzyvfd5gab72qi3gainibrdk4xi8nsfp5z5h49xgzi84mnq";
   };
 
   propagatedBuildInputs = [ docutils six sphinx ];
diff --git a/pkgs/development/python-modules/colanderalchemy/default.nix b/pkgs/development/python-modules/colanderalchemy/default.nix
index 78f0f6fe371f..686608445abc 100644
--- a/pkgs/development/python-modules/colanderalchemy/default.nix
+++ b/pkgs/development/python-modules/colanderalchemy/default.nix
@@ -30,6 +30,9 @@ buildPythonPackage rec {
     description = "Autogenerate Colander schemas based on SQLAlchemy models";
     homepage = https://github.com/stefanofontanelli/ColanderAlchemy;
     license = licenses.mit;
+    # ColanderAlchemy's tests currently fail with colander >1.6.0
+    # (see https://github.com/stefanofontanelli/ColanderAlchemy/issues/107)
+    broken = versionOlder "1.6.0" colander.version;
   };
 
 }
diff --git a/pkgs/development/python-modules/cysignals/default.nix b/pkgs/development/python-modules/cysignals/default.nix
index 1cd55acdbeb8..e69fbce21587 100644
--- a/pkgs/development/python-modules/cysignals/default.nix
+++ b/pkgs/development/python-modules/cysignals/default.nix
@@ -9,11 +9,11 @@ assert pariSupport -> pari != null;
 
 buildPythonPackage rec {
   pname = "cysignals";
-  version = "1.9.0";
+  version = "1.10.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "15ix8crpad26cfl1skyg7qajqqfdrm8q5ahhmlfmqi1aw0jqj2g2";
+    sha256 = "1ckxzch3wk5cg80mppky5jib5z4fzslny3001r5zg4ar1ixbc1w1";
   };
 
   # explicit check:
diff --git a/pkgs/development/python-modules/ezdxf/default.nix b/pkgs/development/python-modules/ezdxf/default.nix
index 317c16d52754..94fca96b455b 100644
--- a/pkgs/development/python-modules/ezdxf/default.nix
+++ b/pkgs/development/python-modules/ezdxf/default.nix
@@ -1,18 +1,20 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub, pyparsing, pytest }:
+{ stdenv, buildPythonPackage, pythonOlder, fetchFromGitHub, pyparsing, pytest }:
 
 buildPythonPackage rec {
-  version = "0.8.8";
+  version = "0.9";
   pname = "ezdxf";
 
+  disabled = pythonOlder "3.5";
+
   src = fetchFromGitHub {
     owner = "mozman";
     repo = "ezdxf";
     rev = "v${version}";
-    sha256 = "0ap6f6vy71s3y0a048r5ca98i7p8nc9l0mx3mngvvpvjij7j3fcf";
+    sha256 = "1ggimjd9060b696sgzgxy9j9sl45wh9qbxnf0035qclafshprlzl";
   };
 
-  buildInputs = [ pytest ];
-  checkPhase = "python -m unittest discover -s tests";
+  checkInputs = [ pytest ];
+  checkPhase = "pytest tests integration_tests";
 
   propagatedBuildInputs = [ pyparsing ];
 
diff --git a/pkgs/development/python-modules/google-auth-oauthlib/default.nix b/pkgs/development/python-modules/google-auth-oauthlib/default.nix
index fd8eb816784e..c5e9b1028288 100644
--- a/pkgs/development/python-modules/google-auth-oauthlib/default.nix
+++ b/pkgs/development/python-modules/google-auth-oauthlib/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, isPy3k
 , click
 , mock
 , pytest
@@ -19,8 +20,8 @@ buildPythonPackage rec {
   };
 
   checkInputs = [
-    click mock pytest futures
-  ];
+    click mock pytest
+  ] ++ lib.optionals (!isPy3k) [ futures ];
 
   propagatedBuildInputs = [
     google_auth requests_oauthlib
diff --git a/pkgs/development/python-modules/joblib/default.nix b/pkgs/development/python-modules/joblib/default.nix
index f9f5ba23eac9..9b2a5c447327 100644
--- a/pkgs/development/python-modules/joblib/default.nix
+++ b/pkgs/development/python-modules/joblib/default.nix
@@ -38,8 +38,10 @@ buildPythonPackage rec {
   checkInputs = [ sphinx numpydoc pytest ];
   propagatedBuildInputs = [ python-lz4 ];
 
+  # test_disk_used is broken
+  # https://github.com/joblib/joblib/issues/57
   checkPhase = ''
-    py.test joblib
+    py.test joblib -k "not test_disk_used"
   '';
 
   meta = {
diff --git a/pkgs/development/python-modules/mysql-connector/default.nix b/pkgs/development/python-modules/mysql-connector/default.nix
index 56c1ab227c8d..efddecd42469 100644
--- a/pkgs/development/python-modules/mysql-connector/default.nix
+++ b/pkgs/development/python-modules/mysql-connector/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "mysql-connector";
-  version = "8.0.15";
+  version = "8.0.16";
 
   src = fetchFromGitHub {
     owner = "mysql";
     repo = "mysql-connector-python";
     rev = version;
-    sha256 = "1w4j2sf07aid3453529z8kg1ziycbayxi3g2r4wqn0nb3y1caqz6";
+    sha256 = "0yl3fkyws24lc2qrbvn42bqy72aqy8q5v8f0j5zy3mkh9a7wlxdp";
   };
 
   propagatedBuildInputs = [ protobuf ];
diff --git a/pkgs/development/python-modules/pg8000/default.nix b/pkgs/development/python-modules/pg8000/default.nix
index d8e04f56146e..eccbd9c0d159 100644
--- a/pkgs/development/python-modules/pg8000/default.nix
+++ b/pkgs/development/python-modules/pg8000/default.nix
@@ -1,20 +1,22 @@
 { stdenv
 , buildPythonPackage
 , fetchPypi
-, pytz
-, six
+, isPy3k
+, passlib
 }:
 
 buildPythonPackage rec {
   pname = "pg8000";
   version = "1.13.1";
 
+  disabled = !isPy3k;
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "2208c7aaffe8d61f5c4ccbefeb74ba033003899e64aee37c0eb98aadae8b9c6b";
   };
 
-  propagatedBuildInputs = [ pytz six ];
+  propagatedBuildInputs = [ passlib ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/tlocke/pg8000;
diff --git a/pkgs/development/python-modules/pyside/tools.nix b/pkgs/development/python-modules/pyside/tools.nix
index e23e63525183..6c2b357c5668 100644
--- a/pkgs/development/python-modules/pyside/tools.nix
+++ b/pkgs/development/python-modules/pyside/tools.nix
@@ -1,29 +1,28 @@
-{ lib, fetchurl, cmake, pyside, qt4, pysideShiboken, buildPythonPackage }:
+{ lib, buildPythonPackage, fetchFromGitHub, cmake, qt4, pyside, pysideShiboken }:
 
-# This derivation provides a Python module and should therefore be called via `python-packages.nix`.
 buildPythonPackage rec {
   pname = "pyside-tools";
   version = "0.2.15";
   format = "other";
 
-  src = fetchurl {
-    url = "https://github.com/PySide/Tools/archive/0.2.15.tar.gz";
-    sha256 = "0x4z3aq7jgar74gxzwznl3agla9i1dcskw5gh11jnnwwn63ffzwa";
+  src = fetchFromGitHub {
+    owner = "PySide";
+    repo = "Tools";
+    rev = version;
+    sha256 = "017i2yxgjrisaifxqnl3ym8ijl63l2yl6a3474dsqhlyqz2nx2ll";
   };
 
-  enableParallelBuilding = true;
-
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ qt4 ];
 
   propagatedBuildInputs = [ pyside pysideShiboken ];
 
-  meta = {
-    description = "Tools for pyside, the LGPL-licensed Python bindings for the Qt cross-platform application and UI framework";
-    license = lib.licenses.gpl2;
-    homepage = http://www.pyside.org;
+  meta = with lib; {
+    description = "Development tools (pyside-uic/rcc/lupdate) for PySide, the LGPL-licensed Python bindings for the Qt framework";
+    license = licenses.gpl2;
+    homepage = https://wiki.qt.io/PySide;
     maintainers = [ ];
-    platforms = lib.platforms.all;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/python-modules/python-efl/default.nix b/pkgs/development/python-modules/python-efl/default.nix
index 48dbc9b710a7..47e269c2ff50 100644
--- a/pkgs/development/python-modules/python-efl/default.nix
+++ b/pkgs/development/python-modules/python-efl/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   name = "python-efl-${version}";
-  version = "1.21.0";
+  version = "1.22.0";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/bindings/python/${name}.tar.xz";
-    sha256 = "08x2cv8hnf004c3711250wrax21ffj5y8951pvk77h98als4pq47";
+    sha256 = "1qhy63c3fs2bxkx2np5z14hyxbr12ii030crsjnhpbyw3mic0s63";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix
index 7c45659220cb..f14200b3542b 100644
--- a/pkgs/development/python-modules/pytorch/default.nix
+++ b/pkgs/development/python-modules/pytorch/default.nix
@@ -81,11 +81,11 @@ in buildPythonPackage rec {
      cmake
      utillinux
      which
-  ];
+  ] ++ lib.optionals cudaSupport [ cudatoolkit_joined ];
 
   buildInputs = [
      numpy.blas
-  ] ++ lib.optionals cudaSupport [ cudatoolkit_joined cudnn ]
+  ] ++ lib.optionals cudaSupport [ cudnn ]
     ++ lib.optionals stdenv.isLinux [ numactl ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/serversyncstorage/default.nix b/pkgs/development/python-modules/serversyncstorage/default.nix
index 7342a729e292..2f7acce976de 100644
--- a/pkgs/development/python-modules/serversyncstorage/default.nix
+++ b/pkgs/development/python-modules/serversyncstorage/default.nix
@@ -38,6 +38,7 @@ buildPythonPackage rec {
   ];
 
   meta = with stdenv.lib; {
+    broken = cornice.version != "0.17";
     description = "The SyncServer server software, as used by Firefox Sync";
     homepage = https://github.com/mozilla-services/server-syncstorage;
     license = licenses.mpl20;
diff --git a/pkgs/development/python-modules/spacy/default.nix b/pkgs/development/python-modules/spacy/default.nix
index 275e924e4113..a39593bb9e78 100644
--- a/pkgs/development/python-modules/spacy/default.nix
+++ b/pkgs/development/python-modules/spacy/default.nix
@@ -31,7 +31,8 @@ buildPythonPackage rec {
   prePatch = ''
     substituteInPlace setup.py \
       --replace "regex==" "regex>=" \
-      --replace "plac<1.0.0,>=0.9.6" "plac>=0.9.6"
+      --replace "plac<1.0.0,>=0.9.6" "plac>=0.9.6" \
+      --replace "wheel>=0.32.0,<0.33.0" "wheel>=0.32.0"
   '';
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/wikipedia/default.nix b/pkgs/development/python-modules/wikipedia/default.nix
new file mode 100644
index 000000000000..19b7c42558ec
--- /dev/null
+++ b/pkgs/development/python-modules/wikipedia/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, beautifulsoup4
+, requests
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "wikipedia";
+  version = "1.4.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "db0fad1829fdd441b1852306e9856398204dc0786d2996dd2e0c8bb8e26133b2";
+  };
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    requests
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+
+    ${python.interpreter} -m unittest discover tests/ '*test.py'
+
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    description = "Wikipedia API for Python";
+    homepage = https://github.com/goldsmith/Wikipedia;
+    license = licenses.mit;
+    maintainers = [ maintainers.worldofpeace ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/sbt-extras/default.nix b/pkgs/development/tools/build-managers/sbt-extras/default.nix
index 74e30aa0e6dd..e0cfe59b0516 100644
--- a/pkgs/development/tools/build-managers/sbt-extras/default.nix
+++ b/pkgs/development/tools/build-managers/sbt-extras/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchFromGitHub, which, curl, makeWrapper, jdk }:
 
 let
-  rev = "a9f2e2592d069313329971930d1740943d19ef91";
-  version = "2019-01-30";
+  rev = "a47a965e00ecd66793832e2a12a1972d25e6f734";
+  version = "2019-04-05";
 in
 stdenv.mkDerivation {
   name = "sbt-extras-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
     owner = "paulp";
     repo = "sbt-extras";
     inherit rev;
-    sha256 = "1kkpsd3fb8lm631bwjj41x4i9a5m88y2f3flzs918y12bjkli8ji";
+    sha256 = "1hrz7kg0k2iqq18bg6ll2bdj487p0987880dz0c0g35ah70ps2hj";
   };
 
   dontBuild = true;
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index bd9dbbb71742..07763e3fa68c 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "coursier-${version}";
-  version = "1.1.0-M10";
+  version = "1.1.0-M14-1";
 
   src = fetchurl {
-    url = "https://github.com/coursier/coursier/raw/v${version}/coursier";
-    sha256 = "14iq0717vdm0mj0196idc724vmxp1y0f3gfn41sbqahfhvcx05y8";
+    url = "https://github.com/coursier/coursier/releases/download/v${version}/coursier";
+    sha256 = "0km9bxhch2bh7v6yi5jzyvq95fwdmccwqmbiznzhz4iqij8y066w";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/electron/5.x.nix b/pkgs/development/tools/electron/5.x.nix
new file mode 100644
index 000000000000..ba97587c5af7
--- /dev/null
+++ b/pkgs/development/tools/electron/5.x.nix
@@ -0,0 +1,77 @@
+{ stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk, at-spi2-core }:
+
+let
+  version = "5.0.0";
+  name = "electron-${version}";
+
+  throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
+
+  meta = with stdenv.lib; {
+    description = "Cross platform desktop application shell";
+    homepage = https://github.com/electron/electron;
+    license = licenses.mit;
+    maintainers = with maintainers; [ travisbhartwell manveru ];
+    platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ];
+  };
+
+  linux = {
+    inherit name version meta;
+    src = {
+      i686-linux = fetchurl {
+        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
+        sha256 = "01320qv0x18rmjn6ibbs49pd04d58rz5dac509lxxay8nfb14gdp";
+      };
+      x86_64-linux = fetchurl {
+        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
+        sha256 = "0mkc8r5xggkzdypyq4hxigmjl6d1jn0139l8nwj1vr224ggnskhn";
+      };
+      armv7l-linux = fetchurl {
+        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
+        sha256 = "1w767yxm3b6sj52z0wnzr4vfn0m8n2jdjhj3ksmq6qrv401vvib3";
+      };
+      aarch64-linux = fetchurl {
+        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
+        sha256 = "1nvpfkrizkmr6xxb2ls19p9mhgpms65ws09bx3l8sqq6275916jk";
+      };
+    }.${stdenv.hostPlatform.system} or throwSystem;
+
+    buildInputs = [ unzip makeWrapper ];
+
+    buildCommand = ''
+      mkdir -p $out/lib/electron $out/bin
+      unzip -d $out/lib/electron $src
+      ln -s $out/lib/electron/electron $out/bin
+
+      fixupPhase
+
+      patchelf \
+        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        --set-rpath "${atomEnv.libPath}:${stdenv.lib.makeLibraryPath [ libuuid at-spi2-atk at-spi2-core ]}:$out/lib/electron" \
+        $out/lib/electron/electron
+
+      wrapProgram $out/lib/electron/electron \
+        --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1
+    '';
+  };
+
+  darwin = {
+    inherit name version meta;
+
+    src = fetchurl {
+      url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
+      sha256 = "07s2cq4ffpx86pjxrh1hcvk3r85saxqi3kkbbfkg9r1bbq8zbapm";
+    };
+
+    buildInputs = [ unzip ];
+
+    buildCommand = ''
+      mkdir -p $out/Applications
+      unzip $src
+      mv Electron.app $out/Applications
+      mkdir -p $out/bin
+      ln -s $out/Applications/Electron.app/Contents/MacOs/Electron $out/bin/electron
+    '';
+  };
+in
+
+  stdenv.mkDerivation (if stdenv.isDarwin then darwin else linux)
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index e0d2d56e7fa5..b6f7d0b072b2 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -1,7 +1,7 @@
 { stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk }:
 
 let
-  version = "4.1.4";
+  version = "4.1.5";
   name = "electron-${version}";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
@@ -19,19 +19,19 @@ let
     src = {
       i686-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "0z1pr85mdw8c7vdsvznhixzmqmy3s6rrjaybym76c93hdvkr2ir9";
+        sha256 = "0rqaydlg7wkccks7crwpylad0bsz8knm82mpb7hnj68p9njxpsbz";
       };
       x86_64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "05lyq67paad4h4ng39h8bwkv84bmy6axbxh60fmvl6l1x55dsan6";
+        sha256 = "0xwvn41pvpsrx54waix8kmg3w1f1f9nmfn08hf9bkgnlgh251shy";
       };
       armv7l-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "1ddc9b6h29qdqxnkc4vd6y5iah9i3f5i7v5zjb5b61rssz78wdbq";
+        sha256 = "172yq2m4i0pf72xr6w3xgkxfakkx2wrc54aah5j3nr6809bcnzji";
       };
       aarch64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "0qha5klws8l2i0grmwjiz34srr66h93lpx1j0lsgz3pxjxhc33xs";
+        sha256 = "0gcgvgplg9c2sm53sa4nll4x486c4m190ma9a98xfx9mp9vy55vq";
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
@@ -59,7 +59,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "0zbgrwphd1xfkzqai8n7mi9vpzqflq4wwwnl4pdryrkyi3k4yxa6";
+      sha256 = "1z43ga620rw84x1yxvnxf11pd782s5vgj5dgnn4k0nfgxlihy058";
     };
 
     buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/flatpak-builder/default.nix b/pkgs/development/tools/flatpak-builder/default.nix
index d4fa99c48258..5f8aaf07d730 100644
--- a/pkgs/development/tools/flatpak-builder/default.nix
+++ b/pkgs/development/tools/flatpak-builder/default.nix
@@ -37,7 +37,7 @@
 }:
 
 let
-  version = "1.0.5";
+  version = "1.0.6";
 in stdenv.mkDerivation rec {
   name = "flatpak-builder-${version}";
 
@@ -45,7 +45,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/flatpak/flatpak-builder/releases/download/${version}/${name}.tar.xz";
-    sha256 = "1l5hpxkc7f3mp9v8wyagpbc8vvfn0m0jq8rsk1h7vwyyjmijv6mb";
+    sha256 = "1fw9lzf9cy3fnnvn9q3g0schxcj7kaj6kjijhrmcmsfcnzbjlmrv";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix
new file mode 100644
index 000000000000..6f8b4f824b3f
--- /dev/null
+++ b/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -0,0 +1,41 @@
+{ stdenv
+, fetchurl
+, mono5
+, makeWrapper
+}:
+
+stdenv.mkDerivation rec {
+
+  name = "omnisharp-roslyn-${version}";
+  version = "1.32.8";
+  
+  src = fetchurl {
+    url = "https://github.com/OmniSharp/omnisharp-roslyn/releases/download/v${version}/omnisharp-mono.tar.gz";
+    sha256 = "0k2a4awmzb7ppll2skyzaa94n3hxqm35ffibl0sygldk3symzwgp";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  preUnpack = ''
+    mkdir src
+    cd src
+    sourceRoot=.
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cd ..
+		cp -r src $out/
+    ls -al $out/src
+    makeWrapper ${mono5}/bin/mono $out/bin/omnisharp \
+    --add-flags "$out/src/OmniSharp.exe"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "OmniSharp based on roslyn workspaces";
+    platforms = platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ tesq0 ];
+  };
+
+}
diff --git a/pkgs/development/tools/pipenv/default.nix b/pkgs/development/tools/pipenv/default.nix
index 8083151ef81f..f51ce6fcfaba 100644
--- a/pkgs/development/tools/pipenv/default.nix
+++ b/pkgs/development/tools/pipenv/default.nix
@@ -15,15 +15,15 @@ buildPythonApplication rec {
     flake8
     invoke
     parver
-    pew
     pip
     requests
+    virtualenv
   ];
 
   doCheck = false;
 
   makeWrapperArgs = [
-    "--set PYTHONPATH \"$PYTHONPATH\""
+    "--set PYTHONPATH \".:$PYTHONPATH\""
     "--set PIP_IGNORE_INSTALLED 1"
   ];
 
diff --git a/pkgs/development/tools/rust/bindgen/default.nix b/pkgs/development/tools/rust/bindgen/default.nix
index a1f5e5769ae8..d0cd28379d6c 100644
--- a/pkgs/development/tools/rust/bindgen/default.nix
+++ b/pkgs/development/tools/rust/bindgen/default.nix
@@ -2,17 +2,17 @@
   runtimeShell }:
 
 rustPlatform.buildRustPackage rec {
-  name = "rust-bindgen-${version}";
-  version = "0.42.2";
+  pname = "rust-bindgen";
+  version = "0.49.0";
 
   src = fetchFromGitHub {
-    owner = "rust-lang-nursery";
-    repo = "rust-bindgen";
+    owner = "rust-lang";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "10h0h7x8yf4dsyw2p2nas2jg5p3i29np0y3rfzrdq898d70gvq4j";
+    sha256 = "0i1lh8z0jpf8gcfqxig8kl6wzjrkwb3jkad5ghb6ppkdkpr94jq4";
   };
 
-  cargoSha256 = "01jvi86xgz0r7ia9agnfpms6b6x68lzwj6f085m0w659i94acgpi";
+  cargoSha256 = "0v3slbah0s1w75s38x1akvshcxsi1s810yybd9faday7biwmdbmj";
 
   libclang = llvmPackages.libclang.lib; #for substituteAll
 
@@ -56,7 +56,7 @@ rustPlatform.buildRustPackage rec {
       As with most compiler related software, this will only work
       inside a nix-shell with the required libraries as buildInputs.
     '';
-    homepage = https://github.com/rust-lang-nursery/rust-bindgen;
+    homepage = https://github.com/rust-lang/rust-bindgen;
     license = with licenses; [ bsd3 ];
     maintainers = [ maintainers.ralith ];
   };
diff --git a/pkgs/development/tools/rust/cargo-sweep/default.nix b/pkgs/development/tools/rust/cargo-sweep/default.nix
new file mode 100644
index 000000000000..52198665e9f3
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-sweep/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-sweep";
+  version = "0.4.1";
+
+  src = fetchFromGitHub {
+    owner = "holmgr";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1zp0x0jy5bjqbxawlwvpj6vb3y602mnh19p48rw70kdx6vripbvj";
+  };
+
+  cargoSha256 = "06hx8mlqarjnqrprwdp80cmanmacg3xz62r1bbn27pn60xv719hn";
+
+  meta = with stdenv.lib; {
+    description = "A Cargo subcommand for cleaning up unused build files generated by Cargo";
+    homepage = https://github.com/holmgr/cargo-sweep;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ xrelkd ];
+  };
+}
diff --git a/pkgs/development/tools/rust/rls/default.nix b/pkgs/development/tools/rust/rls/default.nix
index accdc7678c60..f52ab0d767a3 100644
--- a/pkgs/development/tools/rust/rls/default.nix
+++ b/pkgs/development/tools/rust/rls/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchFromGitHub, rustPlatform
-, openssh, openssl, pkgconfig, cmake, zlib, curl }:
+, openssh, openssl, pkgconfig, cmake, zlib, curl, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   name = "rls-${version}";
   # with rust 1.x you can only build rls version 1.x.y
-  version = "1.31.7";
+  version = "1.34.0";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rls";
-    rev = version;
-    sha256 = "0n33pf7sm31y55rllb8wv3mn75srspr4yj2y6cpcdyf15n47c8cf";
+    rev = "0d6f53e1a4adbaf7d83cdc0cb54720203fcb522e";
+    sha256 = "1aabs0kr87sp68n9893im5wz21dicip9ixir9a9l56nis4qxpm7i";
   };
 
-  cargoSha256 = "0jcsggq4ay8f4vb8n6gh8z995icvvbjkzapxf6jq6qkg6jp3vv17";
+  cargoSha256 = "16r9rmjhb0dbdgx9qf740nsckjazz4z663vaajw5z9i4qh0jsy18";
 
   # a nightly compiler is required unless we use this cheat code.
   RUSTC_BOOTSTRAP=1;
@@ -22,12 +22,16 @@ rustPlatform.buildRustPackage rec {
   cargoBuildFlags = [ "--no-default-features" ];
 
   nativeBuildInputs = [ pkgconfig cmake ];
-  buildInputs = [ openssh openssl curl zlib ];
+  buildInputs = [ openssh openssl curl zlib libiconv ];
 
   doCheck = true;
   # the default checkPhase has no way to pass --no-default-features
   checkPhase = ''
     runHook preCheck
+
+    # client tests are flaky
+    rm tests/client.rs
+
     echo "Running cargo test"
     cargo test --no-default-features
     runHook postCheck
diff --git a/pkgs/development/tools/rust/rustup/0001-dynamically-patchelf-binaries.patch b/pkgs/development/tools/rust/rustup/0001-dynamically-patchelf-binaries.patch
index 60f29fccdc34..74da8d6102e7 100644
--- a/pkgs/development/tools/rust/rustup/0001-dynamically-patchelf-binaries.patch
+++ b/pkgs/development/tools/rust/rustup/0001-dynamically-patchelf-binaries.patch
@@ -1,32 +1,25 @@
-From c21cc756b69a5f33c8a7758b746a816f40f55932 Mon Sep 17 00:00:00 2001
-From: Leon Isenberg <ljli@users.noreply.github.com>
-Date: Sat, 28 Oct 2017 17:58:17 +0200
-Subject: [PATCH] nix customization: patchelf installed binaries
-
----
- src/rustup-dist/src/component/package.rs | 21 ++++++++++++++++++++-
- 1 file changed, 20 insertions(+), 1 deletion(-)
-
-diff --git a/src/rustup-dist/src/component/package.rs b/src/rustup-dist/src/component/package.rs
-index 70c54dcd..f0318986 100644
---- a/src/rustup-dist/src/component/package.rs
-+++ b/src/rustup-dist/src/component/package.rs
-@@ -100,7 +100,10 @@ impl Package for DirectoryPackage {
-             let src_path = root.join(&path);
- 
+diff --git a/src/dist/component/package.rs b/src/dist/component/package.rs
+index e0fdea28..38d9d0e4 100644
+--- a/src/dist/component/package.rs
++++ b/src/dist/component/package.rs
+@@ -104,10 +104,11 @@ impl Package for DirectoryPackage {
              match &*part.0 {
--                "file" => builder.copy_file(path.clone(), &src_path)?,
-+                "file" => {
-+                    builder.copy_file(path.clone(), &src_path)?;
+                 "file" => {
+                     if self.copy {
+-                        builder.copy_file(path.clone(), &src_path)?
++                        builder.copy_file(path.clone(), &src_path)?;
+                     } else {
+-                        builder.move_file(path.clone(), &src_path)?
++                        builder.move_file(path.clone(), &src_path)?;
+                     }
 +                    nix_patchelf_if_needed(&target.prefix().path().join(path.clone()), &src_path)
-+                }
-                 "dir" => builder.copy_dir(path.clone(), &src_path)?,
-                 _ => return Err(ErrorKind::CorruptComponent(name.to_owned()).into()),
-             }
-@@ -118,6 +121,22 @@ impl Package for DirectoryPackage {
+                 }
+                 "dir" => {
+                     if self.copy {
+@@ -132,6 +133,22 @@ impl Package for DirectoryPackage {
      }
  }
- 
+
 +fn nix_patchelf_if_needed(dest_path: &Path, src_path: &Path) {
 +    let is_bin = if let Some(p) = src_path.parent() {
 +        p.ends_with("bin")
@@ -46,6 +39,3 @@ index 70c54dcd..f0318986 100644
  // On Unix we need to set up the file permissions correctly so
  // binaries are executable and directories readable. This shouldn't be
  // necessary: the source files *should* have the right permissions,
--- 
-2.17.1
-
diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix
index 1177423869c1..3eb0760b2220 100644
--- a/pkgs/development/tools/rust/rustup/default.nix
+++ b/pkgs/development/tools/rust/rustup/default.nix
@@ -3,17 +3,17 @@
 , pkgconfig, curl, Security }:
 
 rustPlatform.buildRustPackage rec {
-  name = "rustup-${version}";
-  version = "1.17.0";
+  pname = "rustup";
+  version = "1.18.1";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rustup.rs";
     rev = version;
-    sha256 = "1mf92z89wqqaj3cg2cqf6basvcz47krldmy8ianfkzp323fimqmn";
+    sha256 = "0932n708ikxzjv7y78zcrnnnps3rgimsnpaximhm9vmjjnkdgm7x";
   };
 
-  cargoSha256 = "0y7kbihdrpd35dw24qqqzmccvjdy6arka10p5rnv38d420f1bpzd";
+  cargoSha256 = "0kw8a9prqjf939g0h8ryyhlm1n84fwdycvl0nkykkwlfqd6hh9hb";
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -49,9 +49,16 @@ rustPlatform.buildRustPackage rec {
     # tries to create .rustup
     export HOME=$(mktemp -d)
     mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
-    $out/bin/rustup completions bash > "$out/share/bash-completion/completions/rustup"
-    $out/bin/rustup completions fish > "$out/share/fish/vendor_completions.d/rustup.fish"
-    $out/bin/rustup completions zsh >  "$out/share/zsh/site-functions/_rustup"
+
+    # generate completion scripts for rustup
+    $out/bin/rustup completions bash rustup > "$out/share/bash-completion/completions/rustup"
+    $out/bin/rustup completions fish rustup > "$out/share/fish/vendor_completions.d/rustup.fish"
+    $out/bin/rustup completions zsh rustup >  "$out/share/zsh/site-functions/_rustup"
+
+    # generate completion scripts for cargo
+    # Note: fish completion script is not supported.
+    $out/bin/rustup completions bash cargo > "$out/share/bash-completion/completions/cargo"
+    $out/bin/rustup completions zsh cargo >  "$out/share/zsh/site-functions/_cargo"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/games/crawl/default.nix b/pkgs/games/crawl/default.nix
index 01d1202658c0..ac58a43aecb0 100644
--- a/pkgs/games/crawl/default.nix
+++ b/pkgs/games/crawl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, which, sqlite, lua5_1, perl, python3, zlib, pkgconfig, ncurses
+{ stdenv, lib, fetchFromGitHub, fetchpatch, which, sqlite, lua5_1, perl, python3, zlib, pkgconfig, ncurses
 , dejavu_fonts, libpng, SDL2, SDL2_image, SDL2_mixer, libGLU_combined, freetype, pngcrush, advancecomp
 , tileMode ? false, enableSound ? tileMode
 }:
@@ -14,8 +14,13 @@ stdenv.mkDerivation rec {
     sha256 = "1d6mip4rvp81839yf2xm63hf34aza5wg4g5z5hi5275j94szaacs";
   };
 
-  # Patch hard-coded paths in the makefile
-  patches = [ ./crawl_purify.patch ];
+  patches = [
+    ./crawl_purify.patch  # Patch hard-coded paths
+    (fetchpatch {         # Use a nice high-res app icon
+      url = "https://github.com/crawl/crawl/commit/2aa1166087e44e6585b26cedf1fe81b3f3ba547f.patch";
+      sha256 = "1jqrdv4wy18shg1fdabdb421232hg5micphkixcyzxd1lrmvadg0";
+    })
+  ];
 
   nativeBuildInputs = [ pkgconfig which perl pngcrush advancecomp ];
 
@@ -40,7 +45,13 @@ stdenv.mkDerivation rec {
               ] ++ lib.optional tileMode "TILES=y"
                 ++ lib.optional enableSound "SOUND=y";
 
-  postInstall = lib.optionalString tileMode "mv $out/bin/crawl $out/bin/crawl-tiles";
+  postInstall = ''
+    ${lib.optionalString tileMode "mv $out/bin/crawl $out/bin/crawl-tiles"}
+    sed -i 's#/usr/games/##' debian/crawl${lib.optionalString tileMode "-tiles"}.desktop
+    install -m 444 -D debian/crawl${lib.optionalString tileMode "-tiles"}.desktop \
+      $out/share/applications/crawl${lib.optionalString tileMode "-tiles"}.desktop
+    install -m 444 -D dat/tiles/stone_soup_icon-512x512.png $out/share/icons/hicolor/512x512/apps/crawl.png
+  '';
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/games/crispy-doom/default.nix b/pkgs/games/crispy-doom/default.nix
index 8b549d93fb22..5178474ef9e7 100644
--- a/pkgs/games/crispy-doom/default.nix
+++ b/pkgs/games/crispy-doom/default.nix
@@ -1,10 +1,10 @@
 { stdenv, autoreconfHook, pkgconfig, SDL2, SDL2_mixer, SDL2_net, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "crispy-doom-5.5.1";
+  name = "crispy-doom-5.5.2";
   src = fetchurl {
     url = "https://github.com/fabiangreffrath/crispy-doom/archive/${name}.tar.gz";
-    sha256 = "0qnqyyjnclmwls34m7nk8lpvpaffdmhxshlarsiggcsn9py96kns";
+    sha256 = "1pdk7p3r1xskdfcp86jf1n2cny78fyk36z4gbx19h57csc4d5c3a";
   };
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ SDL2 SDL2_mixer SDL2_net ];
diff --git a/pkgs/games/gzdoom/default.nix b/pkgs/games/gzdoom/default.nix
index dff122d8b803..755781b8bd46 100644
--- a/pkgs/games/gzdoom/default.nix
+++ b/pkgs/games/gzdoom/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "gzdoom-${version}";
-  version = "3.7.2";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "coelckers";
     repo = "gzdoom";
     rev = "g${version}";
-    sha256 = "1kjvjg218d2jk7mzlzihaa90fji4wm5zfix7ikm18wx83hcsgby3";
+    sha256 = "1054g9n5rdnkkfrxvaybki4clfvr9fbhza4jbg53h4vwxahmjmbx";
   };
 
   nativeBuildInputs = [ cmake makeWrapper ];
diff --git a/pkgs/misc/tmux-plugins/default.nix b/pkgs/misc/tmux-plugins/default.nix
index 8d1a8e64b61f..6c85f9a6329f 100644
--- a/pkgs/misc/tmux-plugins/default.nix
+++ b/pkgs/misc/tmux-plugins/default.nix
@@ -230,6 +230,7 @@ in rec {
 
   vim-tmux-navigator = mkDerivation {
     pluginName = "vim-tmux-navigator";
+    rtpFilePath = "vim-tmux-navigator.tmux";
     src = fetchgit {
       url = "https://github.com/christoomey/vim-tmux-navigator";
       rev = "4e1a877f51a17a961b8c2a285ee80aebf05ccf42";
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index d097f6ea0114..6625502a1630 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-04-17";
+    version = "2019-04-26";
     src = fetchFromGitHub {
       owner = "w0rp";
       repo = "ale";
-      rev = "fcc2c3ba71afa2a7965f3c1e9ec8c03381178180";
-      sha256 = "1xwm7rn9jz4xa4hyky07skqhlc9g13zggckyi6g3hq4qhamzjsvw";
+      rev = "737ed31de5be0c50502d820421726b8a707d1a58";
+      sha256 = "16641pvxs98s4jvry3dkap3nijzxganc5fn241mhzd954s2k6wwp";
     };
   };
 
@@ -403,12 +403,12 @@ let
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2019-04-21";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "91a7df99f0f7fc992c0d1a97bc69b931aea3d728";
-      sha256 = "0s4gvyrp7gm5gs3wk14hmss91gy1hppwn9vqbfs8hwpxamm76b9f";
+      rev = "ae432f278ab78a28452f23cc7d5d516f6271ca2a";
+      sha256 = "0mv8xh2hzvsj4znfnaiwrh9gfijrrnrjcnd4r84lx75jx5bc9zns";
     };
   };
 
@@ -448,12 +448,12 @@ let
 
   deoplete-go = buildVimPluginFrom2Nix {
     pname = "deoplete-go";
-    version = "2019-03-02";
+    version = "2019-04-27";
     src = fetchFromGitHub {
       owner = "zchee";
       repo = "deoplete-go";
-      rev = "cb8504f09a04fac9325a5e2aa4a11c2400b1312d";
-      sha256 = "1jw3mp3h4klwr6y0w298w91wl222njwv1ars3cfh1zms8y7iii56";
+      rev = "33e229d2d9b61aab0c11ebc07aae41282731bdef";
+      sha256 = "0i8nhz41ik568gimy1f0vjwq473x0hzszi7g4yvjry00lkg4sjq6";
       fetchSubmodules = true;
     };
   };
@@ -527,12 +527,12 @@ let
 
   direnv-vim = buildVimPluginFrom2Nix {
     pname = "direnv-vim";
-    version = "2019-03-17";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "direnv";
       repo = "direnv.vim";
-      rev = "8b5d37e9b334c855eb2669ca56b28423a40c3365";
-      sha256 = "1cpy7ih7fkdp8f4vxna2qwbhf1g7pspiayqhs9g1kxmycvbqnsjk";
+      rev = "15c0d2c91d65f95f90c30d21d9ea11bc8ee51def";
+      sha256 = "1k9ipwiayp5i31slr1119az0wylqsnaf5zz04x7bcpclaaajgzfk";
     };
   };
 
@@ -1268,12 +1268,12 @@ let
 
   nerdtree = buildVimPluginFrom2Nix {
     pname = "nerdtree";
-    version = "2019-04-16";
+    version = "2019-04-23";
     src = fetchFromGitHub {
       owner = "scrooloose";
       repo = "nerdtree";
-      rev = "e126b8745dc40931ae8da03d92c78264e8e4b029";
-      sha256 = "1f43a04alrb5k5k7kys3i6ld7cxzcz9yz6il95z0xi9lwbb8mnid";
+      rev = "3c0633578281463638235597d8208612544606ae";
+      sha256 = "0y82gj9rkqglhx6q9ksxpvpmax0rsxfggad85f6xvmx6iwxv8k1h";
     };
   };
 
@@ -1290,12 +1290,12 @@ let
 
   nim-vim = buildVimPluginFrom2Nix {
     pname = "nim-vim";
-    version = "2018-12-16";
+    version = "2019-04-26";
     src = fetchFromGitHub {
       owner = "zah";
       repo = "nim.vim";
-      rev = "21731384b8f0675e3d666e98dd6625508c30f3af";
-      sha256 = "15l897xyli4wr5adgciizqnpqv80l95ykf2xq5kvc4icgj93gwga";
+      rev = "88f5e708a739fb26be6364ab2fabadf9fffb8d7b";
+      sha256 = "0ja8qx9c5g7k4phllvk3vz6s62iwpwsn40w6c32sybjs98jkrw7y";
     };
   };
 
@@ -1774,12 +1774,12 @@ let
 
   targets-vim = buildVimPluginFrom2Nix {
     pname = "targets-vim";
-    version = "2019-03-18";
+    version = "2019-04-24";
     src = fetchFromGitHub {
       owner = "wellle";
       repo = "targets.vim";
-      rev = "5915a1a3cef7c60dbea2ff50153417e5f6371952";
-      sha256 = "1013d1rkdg6ddnsf0j033q0a14aq65jbv2wrkj1d6i5jr4zjh3f0";
+      rev = "53a5adc5e23b2dcc6a11397fd47b75ff8e0b664a";
+      sha256 = "142gac4appj7iswwxaflimjxxb0sdpkqhcinrv7nnxnwdmpnhzak";
     };
   };
 
@@ -1818,23 +1818,23 @@ let
 
   tlib_vim = buildVimPluginFrom2Nix {
     pname = "tlib_vim";
-    version = "2019-03-15";
+    version = "2019-04-27";
     src = fetchFromGitHub {
       owner = "tomtom";
       repo = "tlib_vim";
-      rev = "9609c3e3879c00339121e0f1aeedbc9211c15fe7";
-      sha256 = "1g52n5zy0yi343nyh74i4bsg1mxhhkv927r5fcsqgwdvgwzx2jw6";
+      rev = "19c98450af64fd9d875e009e0868cb119db01755";
+      sha256 = "0b95rvlfiiqh3lbmb8kmhq77iyvgsg1ayxp64fdn5809sj4avl79";
     };
   };
 
   traces-vim = buildVimPluginFrom2Nix {
     pname = "traces-vim";
-    version = "2019-04-04";
+    version = "2019-04-27";
     src = fetchFromGitHub {
       owner = "markonm";
       repo = "traces.vim";
-      rev = "1220a0ca044ce9a1622ec2aa60d0d9ef5e801cb4";
-      sha256 = "0j7yhhgfl1ymqkl5lp9vqm3w9l2jkf863xpffw9f0ddmjmk3b7am";
+      rev = "971d0f6c293002bea7c90773c8fd67f4345ddf7c";
+      sha256 = "0aj5x96g4ngir73h79brmijw5gikz6vgbblpbd3np64nb3h86a7c";
     };
   };
 
@@ -2170,12 +2170,12 @@ let
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2019-04-18";
+    version = "2019-04-26";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "ead2cd63bbe4ceec161f9634c8b52048551f91b4";
-      sha256 = "0x0mv047r2li57l2b9cdlpdjl5fy0qhcs973w40kwp8pxnzrs332";
+      rev = "28ed36a9ec9c9bc35bec81c42cfbf8cf5e76b231";
+      sha256 = "0a5cgkwwhrdxfh1mf1x5vph132s4cmmdy9h88yhzz1jpw0x8322d";
     };
   };
 
@@ -2533,12 +2533,12 @@ let
 
   vim-elixir = buildVimPluginFrom2Nix {
     pname = "vim-elixir";
-    version = "2019-04-17";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "elixir-lang";
       repo = "vim-elixir";
-      rev = "7e00da6033b7847c6bb71df18f852342946eab42";
-      sha256 = "0v3agkkdwpzi8gys1nysrm6jisjd42v5ipbvd5w5kn3qhr28n1d5";
+      rev = "8e4782f439b5c8adbfe6d368c21bd4bf5db4cd3a";
+      sha256 = "02ikcdpffcwipzlpcjmrsnr7rxm6632x2qhxw0m22727pzqbmrmc";
     };
   };
 
@@ -2632,12 +2632,12 @@ let
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2019-04-06";
+    version = "2019-04-24";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "1ac2c707e53b4f598ce6502c7bd9a028f1ec5ce4";
-      sha256 = "1r63zfba81adwsxqxqasjcpszdn2r4snbpj52d9p6sb4lqf84qg9";
+      rev = "16b7a060a3e20b8e159783f42ce4aa79a158208c";
+      sha256 = "0jg8xcp69134kgjib2pknh0ibsqcc8bcfdi1cw7nb16p3w2s2fzp";
     };
   };
 
@@ -2698,12 +2698,12 @@ let
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2019-04-21";
+    version = "2019-04-27";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "c166037dbe06980199b0f93b0d10f8cdb7340c01";
-      sha256 = "0m824gqh99ga82r3prn3c84vm7k5c75vsnwbi29jfky564v3m8p6";
+      rev = "3e9a29279627d1ac50a855376b5da4dc0f809356";
+      sha256 = "0jyy3hgw8z1c372qd4672p5zpbxnq0l4w2dd4s07div6wxxs9cdh";
     };
   };
 
@@ -2720,12 +2720,12 @@ let
 
   vim-grepper = buildVimPluginFrom2Nix {
     pname = "vim-grepper";
-    version = "2019-04-08";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-grepper";
-      rev = "b67c78ab929d0bd68c5a00df9d9271d0a82e0705";
-      sha256 = "1wbinfkrzv9rfr5in7q0y3554gibb1rsv95qa4yinf2qasx78x6f";
+      rev = "9348496c9fe017e5f8f89a71a2772704e3720415";
+      sha256 = "1dl54hmp4jzv3qmdvcdbaq4qm4hnfrrvz55p0zjs808n1fz3jw8w";
     };
   };
 
@@ -3084,12 +3084,12 @@ let
 
   vim-lsc = buildVimPluginFrom2Nix {
     pname = "vim-lsc";
-    version = "2019-04-19";
+    version = "2019-04-24";
     src = fetchFromGitHub {
       owner = "natebosch";
       repo = "vim-lsc";
-      rev = "c0514ddfdc9b1205e6f0952bf19b8d7105972a52";
-      sha256 = "04w46nv8bqqc7kjxhs63blwqs787n0x3kgy5xrgg7h20vwbq5a5s";
+      rev = "9616bcb14c0128a6722806dafe2b6f325fa0c26f";
+      sha256 = "10vsmcifjinqd26rw4fk94l4pymqzsqm66d8gwdqpp3jkx5birwg";
     };
   };
 
@@ -3106,12 +3106,12 @@ let
 
   vim-markdown = buildVimPluginFrom2Nix {
     pname = "vim-markdown";
-    version = "2019-04-12";
+    version = "2019-04-22";
     src = fetchFromGitHub {
       owner = "plasticboy";
       repo = "vim-markdown";
-      rev = "f71f25b87df3bd2a5315fdf432f0de3c35434345";
-      sha256 = "0ak01032ya2lcsb45q1vm04q4fs5gdwax1y0r581ic1vxspzk7r3";
+      rev = "fa52c903ec03002a1f9003ba41572bfe75d29fee";
+      sha256 = "0dy2a11ypqqqlxjrjbw7jp8gwxfa97ws7s35xyf0jfgn3a93jizw";
     };
   };
 
@@ -3260,12 +3260,12 @@ let
 
   vim-pandoc = buildVimPluginFrom2Nix {
     pname = "vim-pandoc";
-    version = "2019-02-12";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "vim-pandoc";
       repo = "vim-pandoc";
-      rev = "660f556d1fdcede2900b12a09e1452fc5414ee82";
-      sha256 = "1vafc1c1sh7gd5pg8vlmjjzlvywij5li0rjn7z40wn0r578qzx3k";
+      rev = "89ebe3cf92b4502cb3b3f5a25f96b27456af5825";
+      sha256 = "0d6x3js259xcs0440izrplhly9vg5dsx1fwf4dxgqr17dvd48l06";
     };
   };
 
@@ -3359,12 +3359,12 @@ let
 
   vim-polyglot = buildVimPluginFrom2Nix {
     pname = "vim-polyglot";
-    version = "2019-03-29";
+    version = "2019-04-23";
     src = fetchFromGitHub {
       owner = "sheerun";
       repo = "vim-polyglot";
-      rev = "a55b6aa3aa797c989a4979a13a5bd2ae11cfd4a5";
-      sha256 = "0mgxbyz1yimavay54s6a5hv88d497qngp4i06g248d0qf3ivyvrv";
+      rev = "9fd5c11a20f88525088c8635a3bc6a25ec4c05c7";
+      sha256 = "1b9ndv9lm9p39c56ikj0mj6xs857464vicw3bif9k78j4mf2q12y";
     };
   };
 
@@ -3403,12 +3403,12 @@ let
 
   vim-puppet = buildVimPluginFrom2Nix {
     pname = "vim-puppet";
-    version = "2018-11-15";
+    version = "2019-04-23";
     src = fetchFromGitHub {
       owner = "rodjek";
       repo = "vim-puppet";
-      rev = "4793b074ddbfc05ed0189e19de343870611e4bdc";
-      sha256 = "0q24dmbdsskz97xhdig9r9m7l8hyyzsmza1b0m7bc2y269fsiim0";
+      rev = "b2ae19b3ef397ed7404bf15051cbc5ff655b893e";
+      sha256 = "1hidg2cqls9qy0lazahxi26gyj4lwncpc3vzy4m9xjd3y1lmlqri";
     };
   };
 
@@ -3447,23 +3447,23 @@ let
 
   vim-repeat = buildVimPluginFrom2Nix {
     pname = "vim-repeat";
-    version = "2018-07-02";
+    version = "2019-04-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-repeat";
-      rev = "43d2678fa59d068c815d8298331c195e850ff5a7";
-      sha256 = "0nb20503ka95qbx0mwhhni15drc86gfcd6kg92nf65llrvyfivk0";
+      rev = "0b9b5e742f67bc81ae4a1f79318549d3afc90b13";
+      sha256 = "0wmcamz41pinpgpksi7nac2v1s9ysl4jlpb01pa7amb8nz92i7jy";
     };
   };
 
   vim-rhubarb = buildVimPluginFrom2Nix {
     pname = "vim-rhubarb";
-    version = "2019-03-20";
+    version = "2019-04-24";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-rhubarb";
-      rev = "57a350e6327af0074c4bc0d30b62662dfdb993af";
-      sha256 = "1vgcy8xc8v0g5g4h1h6dcl0ggg2rxp2pisxj04w5d78qf8b48njc";
+      rev = "70713ca031f882bd13ac7ffb163fb7e7a0a52b0c";
+      sha256 = "10x1n5jrrmw01rqh0qnyyx7f9l5qmzhfby8gkd5vpjx84kpabzqs";
     };
   };
 
@@ -3722,12 +3722,12 @@ let
 
   vim-table-mode = buildVimPluginFrom2Nix {
     pname = "vim-table-mode";
-    version = "2019-03-22";
+    version = "2019-04-25";
     src = fetchFromGitHub {
       owner = "dhruvasagar";
       repo = "vim-table-mode";
-      rev = "a40ef26c5cc1806d3faae829fa149506715ce56f";
-      sha256 = "0fis0w3xpsg4wfss61vydic6zisg5bdyvb0wcaf5z4fs5sk380x6";
+      rev = "865563f78506b8090d3839644bc667493b4b68f4";
+      sha256 = "0544dlnqpm3r6amlww9pa5991js1rs5qblhqqfagwdaxaxpzxa64";
     };
   };
 
@@ -3863,6 +3863,17 @@ let
     };
   };
 
+  vim-visual-multi = buildVimPluginFrom2Nix {
+    pname = "vim-visual-multi";
+    version = "2019-04-23";
+    src = fetchFromGitHub {
+      owner = "mg979";
+      repo = "vim-visual-multi";
+      rev = "b29d535fae1b27308b7cf75c2d27e8b0c929a381";
+      sha256 = "09mhcnb8798lb28bc2xpbxkyic3zkypybxbr5p5xniq4d2hmqmx1";
+    };
+  };
+
   vim-visualstar = buildVimPluginFrom2Nix {
     pname = "vim-visualstar";
     version = "2015-08-27";
@@ -4008,12 +4019,12 @@ let
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2019-04-20";
+    version = "2019-04-26";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "3deabe2c16c9231703b58c5c24e16e0ceebebf40";
-      sha256 = "1xazc1z8lrz0084v54fv238sbvz9pfpskm6z259ma00y8iswz0ds";
+      rev = "2e1687bd66c58fc37d47447c411f89895d8db4cd";
+      sha256 = "0rvbp4g9r3jc8rch357arvcw93kribcd5mgn7cgwgmdj7aj4shjq";
     };
   };
 
@@ -4152,12 +4163,12 @@ let
 
   youcompleteme = buildVimPluginFrom2Nix {
     pname = "youcompleteme";
-    version = "2019-04-10";
+    version = "2019-04-24";
     src = fetchFromGitHub {
       owner = "valloric";
       repo = "youcompleteme";
-      rev = "9dee2b4e3f5de5f8b9fdc4790eac35eb2c40257a";
-      sha256 = "12i3wzcy19c5gc8xc5i0qhjl4wn7jwy2abgbx9x2cbgamjl4yzh0";
+      rev = "2ae00449e5d7505102bb63d4bc28abb5e0744829";
+      sha256 = "16xsrnlyrzjsx4sr30xbk4bh37yrw0bwkdfvlahicsh6x9fz9sxj";
       fetchSubmodules = true;
     };
   };
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index a23ce78bd458..6324064c18fa 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -31,8 +31,8 @@ Chiel92/vim-autoformat
 chikatoike/concealedyank.vim
 chikatoike/sourcemap.vim
 chrisbra/CheckAttach
-chrisbra/Recover.vim
 chrisbra/csv.vim
+chrisbra/Recover.vim
 chrisbra/unicode.vim
 chrisgeo/sparkup
 chriskempson/base16-vim
@@ -41,8 +41,8 @@ christoomey/vim-tmux-navigator
 cocopon/iceberg.vim
 ctjhoa/spacevim
 ctrlpvim/ctrlp.vim
-dag/vim-fish
 dag/vim2hs
+dag/vim-fish
 dannyob/quickfixstatus
 davidhalter/jedi-vim
 derekelkins/agda-vim
@@ -191,6 +191,7 @@ mbbill/undotree
 megaannum/forms
 megaannum/self
 mfukar/robotframework-vim
+mg979/vim-visual-multi
 mhinz/vim-grepper
 mhinz/vim-janah
 mhinz/vim-sayonara
@@ -352,6 +353,7 @@ vim-scripts/changeColorScheme.vim
 vim-scripts/Colour-Sampler-Pack
 vim-scripts/emodeline
 vim-scripts/Improved-AnsiEsc
+vim-scripts/jdaddy.vim
 vim-scripts/matchit.zip
 vim-scripts/mayansmoke
 vim-scripts/PreserveNoEOL
@@ -360,7 +362,6 @@ vim-scripts/Rename
 vim-scripts/ReplaceWithRegister
 vim-scripts/tabmerge
 vim-scripts/taglist.vim
-vim-scripts/jdaddy.vim
 vim-scripts/wombat256.vim
 vim-scripts/YankRing.vim
 vim-utils/vim-husk
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 ee0a02763d14..a1a15bab0fea 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 = "2019-03-12";
+  version = "2019-04-16";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
-    rev = "20190312";
-    sha256 = "1wk8l75rg7idvsyli29a1fii4xwz3vnm8d65fjw8d3azihdrhbyy";
+    rev = "20190416";
+    sha256 = "1grsxch5x65piqm8zswa7za3zccwxk0sxdm5qpgidmmq729xq3py";
   };
 
   installFlags = [ "DESTDIR=$(out)" ];
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
   # Firmware blobs do not need fixing and should not be modified
   dontFixup = true;
 
+  outputHashMode = "recursive";
+  outputHashAlgo = "sha256";
+  outputHash = "1fh6gwdx4paswhpyx8z43kf41l9svicp6ji06pdfhsnbx2l859zi";
+
   meta = with stdenv.lib; {
     description = "Binary firmware collection packaged by kernel.org";
     homepage = http://packages.debian.org/sid/firmware-linux-nonfree;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 84789b7389e5..b78540c44df9 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.113";
+  version = "4.14.114";
 
   # 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 = "1hnsmlpfbcy52dax7g194ksr9179kpigj1y5k44jkwmagziz4kdj";
+    sha256 = "05cyq4id1l3z8hhfs7ril9qc92pfx9h9pgvwl18q1lf8mg7ispmp";
   };
 } // (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 ed3d80f23796..cf952184cccb 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.36";
+  version = "4.19.37";
 
   # 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 = "1g7jcgg4889vj567jjl0q7ycksnm05xxzfd3jj6ji7bz2w4ba25q";
+    sha256 = "0rcwzzbm4853rhsj5mkya0asi6bhsg3mhh9r9ihps31cqc7b7c7c";
   };
 } // (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 1698c9d70942..7ffe5dc88f11 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.178";
+  version = "4.4.179";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0g84g808v7zjnfm1nh7ba0swa4n2bfw8m7h5qgmknjwrnwi8qnf3";
+    sha256 = "1l979wmxridq9psjlhmgkax3bi769pvmmvdgf0j2y67gclkrssic";
   };
 } // (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 4857e80292dc..87b9036dc9af 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.170";
+  version = "4.9.171";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "078k8dz3nmici7rs7x25h4vr1qaa588zwymv4gs722wfzi07p21k";
+    sha256 = "00bznn1x8rq0wgjpl8sbp0cp4mzpbzjdnf2rvm8rinklpy9dj723";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.0.nix b/pkgs/os-specific/linux/kernel/linux-5.0.nix
index 594c89f232b0..2af5541a57cb 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.0.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.0.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.0.9";
+  version = "5.0.10";
 
   # 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/v5.x/linux-${version}.tar.xz";
-    sha256 = "0n5s0nwk786qyzwkjs5sv0ldhi8wry6xrsy9vldxp17qbcvv2j07";
+    sha256 = "0xjycbjlzpgskqnwcjml60vkbg7r8fsijdj6ypmhpry7q8ii677a";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index 4b9afba0ea92..144ac0e07cbc 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,17 +1,26 @@
-{ stdenv, buildPackages, fetchgit, perl, buildLinux, ... } @ args:
+{ stdenv, buildPackages, fetchgit, fetchpatch, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.20.2019.03.13";
-  modDirVersion = "4.20.0";
+  version = "5.0.2019.04.04";
+  modDirVersion = "5.0.0";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs.git";
-    rev = "986543d24e08a0c0308472403b230d546e7ecbbb";
-    sha256 = "07h9l47wijhlx3xnyxnj8kv1zb9yf2x0gag8n606yq6wn9r523hv";
+    rev = "d83b992f653d9f742f3f8567dbcfd1f4f72e858f";
+    sha256 = "17xipjhkl4arshyj3riwq4pgl2qqcnlfhaga77a430wy22s7plh2";
   };
 
   extraConfig = "BCACHEFS_FS m";
 
+  kernelPatches = [
+    { name = "export-bio_iov_iter_get_pages";
+      patch = fetchpatch {
+        name = "export-bio_iov_iter_get_pages.patch";
+        url = "https://evilpiepirate.org/git/bcachefs.git/patch/?id=bd8be01aa04eb9cc33fcdce89ac6e0fac0ae0fcf";
+        sha256 = "0h5z98krx8077wwhiqp3bwc1h4nwnifxsn8mpxr2lcxnqmky3hz0";
+      }; }
+  ];
+
   extraMeta = {
     branch = "master";
     hydraPlatforms = []; # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/kexectools/default.nix b/pkgs/os-specific/linux/kexectools/default.nix
index d68e538d6714..bb96e5dea576 100644
--- a/pkgs/os-specific/linux/kexectools/default.nix
+++ b/pkgs/os-specific/linux/kexectools/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" "pic" "relro" "pie" ];
 
   configureFlags = [ "BUILD_CC=${buildPackages.stdenv.cc.targetPrefix}cc" ];
-  nativeBuildInputs = [ buildPackages.stdenv.cc ];
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
   buildInputs = [ zlib ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 33f1bbdd893f..87cc4db640e3 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchFromGitHub, cmake, kernel
-, luajit, zlib, ncurses, perl, jsoncpp, libb64, openssl, curl, jq, gcc, elfutils, tbb
+, luajit, zlib, ncurses, perl, jsoncpp, libb64, openssl, curl, jq, gcc, elfutils, tbb, c-ares, protobuf, grpc
 }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "sysdig-${version}";
-  version = "0.24.2";
+  version = "0.25";
 
   src = fetchFromGitHub {
     owner = "draios";
     repo = "sysdig";
     rev = version;
-    sha256 = "16gz6gcp0zfhrqldw9cms38w0x5h3qhlx64dayqgsqbkw914b31a";
+    sha256 = "1591jz4fmgk5r3q410h771nzhv6wfqpnr7pn34kpc5rl0vhky37m";
   };
 
   nativeBuildInputs = [ cmake perl ];
   buildInputs = [
-    zlib luajit ncurses jsoncpp libb64 openssl curl jq gcc elfutils tbb
+    zlib luajit ncurses jsoncpp libb64 openssl curl jq gcc elfutils tbb c-ares protobuf grpc
   ] ++ optional (kernel != null) kernel.moduleBuildDependencies;
 
   hardeningDisable = [ "pic" ];
diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix
index 8b8c23739c22..b2851116ce8e 100644
--- a/pkgs/os-specific/linux/wpa_supplicant/default.nix
+++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix
@@ -4,13 +4,13 @@
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  version = "2.7";
+  version = "2.8";
 
   name = "wpa_supplicant-${version}";
 
   src = fetchurl {
     url = "https://w1.fi/releases/${name}.tar.gz";
-    sha256 = "0x1hqyahq44jyla8jl6791nnwrgicrhidadikrnqxsm2nw36pskn";
+    sha256 = "15ixzm347n8w6gdvi3j3yks3i15qmp6by9ayvswm34d929m372d6";
   };
 
   # TODO: Patch epoll so that the dbus actually responds
@@ -81,14 +81,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  patches = [
-    (fetchpatch {
-      name = "build-fix.patch";
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/net-wireless/wpa_supplicant/files/wpa_supplicant-2.7-fix-undefined-remove-ie.patch?id=e0288112138a70a8acc3ae0196772fd7ccb677ce";
-      sha256 = "0ysazfcyn195mvkb1v10mgzzmpmqgv5kwqxwzfbsfhzq5bbaihld";
-    })
-  ];
-
   postInstall = ''
     mkdir -p $out/share/man/man5 $out/share/man/man8
     cp -v "doc/docbook/"*.5 $out/share/man/man5/
diff --git a/pkgs/servers/dex/default.nix b/pkgs/servers/dex/default.nix
index 119d5f03f626..1f9c2c9cb77f 100644
--- a/pkgs/servers/dex/default.nix
+++ b/pkgs/servers/dex/default.nix
@@ -1,17 +1,16 @@
 { lib, buildGoPackage, fetchFromGitHub }:
 
-let version = "2.4.1"; in
-
 buildGoPackage rec {
-  name = "dex-${version}";
+  pname = "dex";
+  version = "2.16.0";
 
-  goPackagePath = "github.com/coreos/dex";
+  goPackagePath = "github.com/dexidp/dex";
 
   src = fetchFromGitHub {
     rev = "v${version}";
-    owner = "coreos";
-    repo = "dex";
-    sha256 = "11qpn3wh74mq16xgl9l50n2v02ffqcd14xccf77j5il04xr764nx";
+    owner = "dexidp";
+    repo = pname;
+    sha256 = "0w8nl7inqp4grbaq320dgynmznbrln8vihd799dwb2cx86laxsi1";
   };
 
   subPackages = [
@@ -22,10 +21,15 @@ buildGoPackage rec {
     "-ldflags=-w -X ${goPackagePath}/version.Version=${src.rev}"
   ];
 
+  postInstall = ''
+    mkdir -p $out/share
+    cp -r go/src/${goPackagePath}/web $out/share/web
+  '';
+
   meta = {
     description = "OpenID Connect and OAuth2 identity provider with pluggable connectors";
     license = lib.licenses.asl20;
-    homepage = https://github.com/coreos/dex;
+    homepage = https://github.com/dexidp/dex;
     maintainers = with lib.maintainers; [benley];
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/servers/dico/default.nix b/pkgs/servers/dico/default.nix
index d64f59158815..d2a6dc9df157 100644
--- a/pkgs/servers/dico/default.nix
+++ b/pkgs/servers/dico/default.nix
@@ -2,25 +2,20 @@
 , guile, python, pcre, libffi, groff }:
 
 stdenv.mkDerivation rec {
-  name = "dico-2.7";
+  pname = "dico";
+  version = "2.9";
 
   src = fetchurl {
-    url = "mirror://gnu/dico/${name}.tar.xz";
-    sha256 = "0dg4aacnmlf3ljssd7dwh8z5644xzq8k1501mbsx8nz8p8a9mbsq";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
+    sha256 = "0i9xqhy3h5nlizcmav4mv5ay8ivdgn4l4k0k7fxix3fsc87nijyr";
   };
 
   hardeningDisable = [ "format" ];
 
-  # XXX: Add support for GNU SASL.
   buildInputs =
     [ libtool gettext zlib readline gsasl guile python pcre libffi groff ];
 
-  # dicod fails to load modules, so the tests fail
-  doCheck = false;
-
-  preBuild = ''
-    sed -i -e '/gets is a security/d' gnu/stdio.in.h
-  '';
+  doCheck = true;
 
   meta = with stdenv.lib; {
     description = "Flexible dictionary server and client implementing RFC 2229";
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index 39589b3698fb..068834140048 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -1,4 +1,4 @@
-{ config, stdenv, lib, fetchurl
+{ config, stdenv, lib, fetchurl, fetchpatch
 , perl
 , libcap, libtool, libxml2, openssl
 , enablePython ? config.bind.enablePython or false, python3 ? null
@@ -8,19 +8,29 @@
 assert enableSeccomp -> libseccomp != null;
 assert enablePython -> python3 != null;
 
-let version = "9.12.3-P4"; in
+let version = "9.12.4-P1"; in
 
 stdenv.mkDerivation rec {
   name = "bind-${version}";
 
   src = fetchurl {
     url = "https://ftp.isc.org/isc/bind9/${version}/${name}.tar.gz";
-    sha256 = "01pj47z5582rd538dmbzf1msw4jc8j4zr0zx4ciy88r6qr9l80fi";
+    sha256 = "1if7zc5gzrfd28csc63v9bjwrc0rgvm1x9yx058946hc5gp5lyp2";
   };
 
   outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ];
 
   patches = [ ./dont-keep-configure-flags.patch ./remove-mkdir-var.patch ] ++
+    [
+      # Workaround for missing atomic operations on aarch64. Upstream added the
+      # below patch after the release. Can probably be dropped with the next
+      # version.
+      (fetchpatch {
+        name = "client-atomics-as-refcount.patch";
+        url = https://gitlab.isc.org/isc-projects/bind9/commit/d72f436b7d7c697b262968c48c2d7643069ab17f.diff;
+        sha256 = "0sidlab9wcv21751fbq3h9m4wy6hk7frag9ar2jndw8rn3axr2qy";
+      })
+    ] ++
     stdenv.lib.optional stdenv.isDarwin ./darwin-openssl-linking-fix.patch;
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/servers/documize-community/default.nix b/pkgs/servers/documize-community/default.nix
index 4f1a420c9109..2df905463117 100644
--- a/pkgs/servers/documize-community/default.nix
+++ b/pkgs/servers/documize-community/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "documize-community";
-  version = "2.2.1";
+  version = "2.4.1";
 
   src = fetchFromGitHub {
     owner = "documize";
     repo = "community";
     rev = "v${version}";
-    sha256 = "09s5js0zb3mh3g5qz8f3l2cqjn01kjb35kinfv932nf2rfyrmyqz";
+    sha256 = "1spj8awyv37gmrm49py3wz7590r7rz63qizgifdzjbvacadavm0c";
   };
 
   goPackagePath = "github.com/documize/community";
@@ -37,7 +37,7 @@ buildGoPackage rec {
   meta = with lib; {
     description = "Open source Confluence alternative for internal & external docs built with Golang + EmberJS";
     license = licenses.agpl3;
-    maintainers = with maintainers; [ ma27 ];
+    maintainers = with maintainers; [ ma27 elseym ];
     homepage = https://www.documize.com/;
   };
 }
diff --git a/pkgs/servers/freeradius/default.nix b/pkgs/servers/freeradius/default.nix
index df2130777bb8..ed36b33bdebc 100644
--- a/pkgs/servers/freeradius/default.nix
+++ b/pkgs/servers/freeradius/default.nix
@@ -43,11 +43,11 @@ assert withRest -> curl != null && withJson;
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "freeradius-${version}";
-  version = "3.0.17";
+  version = "3.0.19";
 
   src = fetchurl {
     url = "ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-${version}.tar.gz";
-    sha256 = "0bc35knv46z729l4h22rirqns5v6jb0fzcffnjayhs8wjysfkfyy";
+    sha256 = "0v5b46rq878093ff549ijccy98md1l7l4rvshjxs672il0zvq5i4";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/servers/jellyfin/default.nix b/pkgs/servers/jellyfin/default.nix
index d429da78a32f..5073519d9f31 100644
--- a/pkgs/servers/jellyfin/default.nix
+++ b/pkgs/servers/jellyfin/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "jellyfin";
-  version = "10.3.0";
+  version = "10.3.1";
 
   # Impossible to build anything offline with dotnet
   src = fetchurl {
     url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz";
-    sha256 = "1q9rvyza5zi1kqg9301zrd0fnxzdwknyagpjc9r1cpqfx3yasnkc";
+    sha256 = "1j6jyrbc0ha348y63wk5jv9wjcjydma9cr3jxva1y85pjrmm7z90";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 3138cc8ee1e3..3e3bd8a46532 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.6";
+  version = "15.0.7";
 
   src = fetchurl {
     url = "https://download.nextcloud.com/server/releases/${name}.tar.bz2";
-    sha256 = "1k1c0wlrhdpkvwf7iq8yjxd8gqmmj7dyd913rqzrg9jbnvz5jc82";
+    sha256 = "0jcxza0p1vc9dhf2mimvyy1j25nzv02srghdsp6108573yamhq9y";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/nosql/eventstore/create-deps.sh b/pkgs/servers/nosql/eventstore/create-deps.sh
new file mode 100644
index 000000000000..da73bcf1e3b6
--- /dev/null
+++ b/pkgs/servers/nosql/eventstore/create-deps.sh
@@ -0,0 +1,34 @@
+# 1. create a log with `dotnet restore -v m MyPackage.sln > mypackage-restore.log
+# 2. then call ./create-deps.sh mypackage-restore.log
+
+urlbase="https://www.nuget.org/api/v2/package"
+cat << EOL
+{ fetchurl }: let
+
+  fetchNuGet = { name, version, sha256 }: fetchurl {
+    inherit sha256;
+    url = "$urlbase/\${name}/\${version}";
+  };
+
+in [
+EOL
+IFS=''
+while read line; do
+  if echo $line | grep -q "Installing "; then
+    name=$(echo $line | sed -r 's/  Installing ([^ ]+) (.+)./\1/')
+    version=$(echo $line | sed -r 's/  Installing ([^ ]+) (.+)./\2/')
+    sha256=$(nix-prefetch-url "$urlbase/$name/$version" 2>/dev/null)
+    cat << EOL
+
+  (fetchNuGet {
+    name = "$name";
+    version = "$version";
+    sha256 = "$sha256";
+  })
+EOL
+  fi
+done < $1
+cat << EOL
+
+]
+EOL
diff --git a/pkgs/servers/nosql/eventstore/default.nix b/pkgs/servers/nosql/eventstore/default.nix
index 7880c6db7fd9..f3035e131409 100644
--- a/pkgs/servers/nosql/eventstore/default.nix
+++ b/pkgs/servers/nosql/eventstore/default.nix
@@ -1,43 +1,75 @@
-{ stdenv, fetchFromGitHub, git, mono, v8, runtimeShell }:
+{ stdenv
+, fetchFromGitHub
+, fetchurl
+, makeWrapper
+, dotnet-sdk
+, mono
+, Nuget
+}:
 
-# There are some similarities with the pinta derivation. We should
-# have a helper to make it easy to package these Mono apps.
+let
+
+  deps = import ./deps.nix { inherit fetchurl; };
+
+in
 
 stdenv.mkDerivation rec {
+
   name = "EventStore-${version}";
-  version = "4.1.1";
+  version = "5.0.0";
+
   src = fetchFromGitHub {
-    owner  = "EventStore";
-    repo   = "EventStore";
-    rev    = "oss-v${version}";
-    sha256 = "1069ncb9ps1wi71yw1fzkfd9rfsavccw8xj3a3miwd9x72w8636f";
+    owner = "EventStore";
+    repo = "EventStore";
+    rev = "oss-v${version}";
+    sha256 = "1qdnkaxiryyz8yhwqncmshsg8wi4v69dcxnvgvl4hn81zsj6fasw";
   };
 
+  buildInputs = [
+    makeWrapper
+    dotnet-sdk
+    mono
+    Nuget
+  ];
+
+  # that dependency seems to not be required for building, but pulls in libcurl which fails to be located.
+  # see: https://github.com/EventStore/EventStore/issues/1897
+  patchPhase = ''
+    for f in $(find . -iname "*.csproj"); do
+      sed -i '/Include="Microsoft.SourceLink.GitHub"/d' $f
+    done
+  '';
+
   buildPhase = ''
-    mkdir -p src/libs/x64/nixos
-    pushd src/EventStore.Projections.v8Integration
-    cc -o ../libs/x64/nixos/libjs1.so -fPIC -lv8 -shared -std=c++0x *.cpp
-    popd
+    mkdir home
+    export HOME=$PWD/home
+    export DOTNET_CLI_TELEMETRY_OPTOUT=1
+    export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
+    export FrameworkPathOverride=${mono}/lib/mono/4.7.1-api
+
+    # disable default-source so nuget does not try to download from online-repo
+    nuget sources Disable -Name "nuget.org"
+    # add all dependencies to a source called 'nixos'
+    for package in ${toString deps}; do
+      nuget add $package -Source nixos
+    done
 
-    patchShebangs build.sh
-    ./build.sh ${version} release nixos
+    dotnet restore --source nixos src/EventStore.sln
+    dotnet build --no-restore -c Release src/EventStore.sln
   '';
 
   installPhase = ''
-    mkdir -p $out/{bin,lib/eventstore/clusternode}
-    cp -r bin/clusternode/* $out/lib/eventstore/clusternode/
-    cat > $out/bin/clusternode << EOF
-    #!${runtimeShell}
-    exec ${mono}/bin/mono $out/lib/eventstore/clusternode/EventStore.ClusterNode.exe "\$@"
-    EOF
-    chmod +x $out/bin/clusternode
+    mkdir -p $out/{bin,lib/eventstore}
+    cp -r bin/Release/* $out/lib/eventstore
+    makeWrapper "${mono}/bin/mono" $out/bin/eventstored \
+      --add-flags "$out/lib/eventstore/EventStore.ClusterNode/net471/EventStore.ClusterNode.exe"
   '';
 
-  nativeBuildInputs = [ git ];
-  buildInputs = [ v8 mono ];
+  doCheck = true;
 
-  phases = [ "unpackPhase" "buildPhase" "installPhase" ];
-  dontStrip = true;
+  checkPhase = ''
+    dotnet test src/EventStore.Projections.Core.Tests/EventStore.Projections.Core.Tests.csproj -- RunConfiguration.TargetPlatform=x64
+  '';
 
   meta = {
     homepage = https://geteventstore.com/;
@@ -46,4 +78,5 @@ stdenv.mkDerivation rec {
     maintainers = with stdenv.lib.maintainers; [ puffnfresh ];
     platforms = [ "x86_64-linux" ];
   };
+
 }
diff --git a/pkgs/servers/nosql/eventstore/deps.nix b/pkgs/servers/nosql/eventstore/deps.nix
new file mode 100644
index 000000000000..937bd8181441
--- /dev/null
+++ b/pkgs/servers/nosql/eventstore/deps.nix
@@ -0,0 +1,532 @@
+{ fetchurl }: let
+
+  fetchNuGet = { name, version, sha256 }: fetchurl {
+    inherit sha256;
+    url = "https://www.nuget.org/api/v2/package/${name}/${version}";
+  };
+
+in [
+
+  (fetchNuGet {
+    name = "YamlDotNet";
+    version = "5.2.1";
+    sha256 = "0nb34qcdhs5qn4783idg28f2kr89vaiyjn4v2barhv7i75zhym6y";
+  })
+
+  (fetchNuGet {
+    name = "NLog";
+    version = "4.5.10";
+    sha256 = "0d4yqxrhqn2k36h3v1f5pn6qqlagbzg67v6gvxqhz3s4zyc3b8rg";
+  })
+
+  (fetchNuGet {
+    name = "Newtonsoft.Json";
+    version = "11.0.2";
+    sha256 = "1784xi44f4k8v1fr696hsccmwpy94bz7kixxqlri98zhcxn406b2";
+  })
+
+  (fetchNuGet {
+    name = "System.Threading.Tasks.Extensions";
+    version = "4.3.0";
+    sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.CodeCoverage";
+    version = "15.9.0";
+    sha256 = "10v5xrdilnm362g9545qxvlrbwc9vn65jhpb1i0jlhyqsj6bfwzg";
+  })
+
+  (fetchNuGet {
+    name = "System.Text.Encoding.Extensions";
+    version = "4.3.0";
+    sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy";
+  })
+
+  (fetchNuGet {
+    name = "protobuf-net";
+    version = "2.4.0";
+    sha256 = "106lxm9afga7ihlknyy7mlfplyq40mrndksqrsn8ia2a47fbqqld";
+  })
+
+  (fetchNuGet {
+    name = "NUnit3TestAdapter";
+    version = "3.10.0";
+    sha256 = "0ahzfk9y2dq0wl91ll5hss89hqw7la85ndll5030nslizsgm5q2i";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Principal.Windows";
+    version = "4.5.0";
+    sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86";
+  })
+
+  (fetchNuGet {
+    name = "NUnit";
+    version = "3.11.0";
+    sha256 = "0mmc8snwjjmbkhk6cv5c0ha77czzy9bca4q59244rxciw9sxk1cz";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.DispatchProxy";
+    version = "4.5.0";
+    sha256 = "0v9sg38h91aljvjyc77m1y5v34p50hjdbxvvxwa1whlajhafadcn";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.NET.Test.Sdk";
+    version = "15.9.0";
+    sha256 = "0g7wjgiigs4v8qa32g9ysqgx8bx55dzmbxfkc4ic95mpd1vkjqxw";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.NETCore.Platforms";
+    version = "2.1.0";
+    sha256 = "0nmdnkmwyxj8cp746hs9an57zspqlmqdm55b00i7yk8a22s6akxz";
+  })
+
+  (fetchNuGet {
+    name = "HdrHistogram";
+    version = "2.5.0";
+    sha256 = "1s2np7m3pp17rgambax9a3x5pd2grx74cr325q3xapjz2gd58sj1";
+  })
+
+  (fetchNuGet {
+    name = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple";
+    version = "4.3.0";
+    sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi";
+  })
+
+  (fetchNuGet {
+    name = "System.Xml.XmlDocument";
+    version = "4.3.0";
+    sha256 = "0bmz1l06dihx52jxjr22dyv5mxv6pj4852lx68grjm7bivhrbfwi";
+  })
+
+  (fetchNuGet {
+    name = "System.Xml.ReaderWriter";
+    version = "4.3.0";
+    sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1";
+  })
+
+  (fetchNuGet {
+    name = "System.Text.RegularExpressions";
+    version = "4.3.0";
+    sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.Extensions";
+    version = "4.3.0";
+    sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq";
+  })
+
+  (fetchNuGet {
+    name = "System.Private.ServiceModel";
+    version = "4.5.3";
+    sha256 = "0nyw9m9dj327hn0qb0jmgwpch0f40jv301fk4mrchga8g99xbpng";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.Emit.ILGeneration";
+    version = "4.3.0";
+    sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.Csp";
+    version = "4.3.0";
+    sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.Cng";
+    version = "4.3.0";
+    sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv";
+  })
+
+  (fetchNuGet {
+    name = "System.Globalization.Calendars";
+    version = "4.3.0";
+    sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq";
+  })
+
+  (fetchNuGet {
+    name = "System.Linq";
+    version = "4.3.0";
+    sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.Build.Tasks.Git";
+    version = "1.0.0-beta-63127-02";
+    sha256 = "10avjhp4vjbmix4rwacbw6cim2d4kbmz64q4n7r6zz94395l61b6";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.SourceLink.Common";
+    version = "1.0.0-beta-63127-02";
+    sha256 = "0y29xx3x9nd14n1sr8ycxhf6y1a83pv3sayfxjib8wi6s866lagb";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.SourceLink.GitHub";
+    version = "1.0.0-beta-63127-02";
+    sha256 = "1096d5n7mfvgm1apdmafjkxkqray6r2cw6zjhhxj2zn98836w1n2";
+  })
+
+  (fetchNuGet {
+    name = "System.Runtime.Numerics";
+    version = "4.3.0";
+    sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z";
+  })
+
+  (fetchNuGet {
+    name = "runtime.native.System.Security.Cryptography.Apple";
+    version = "4.3.0";
+    sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.Primitives";
+    version = "4.3.0";
+    sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276";
+  })
+
+  (fetchNuGet {
+    name = "System.IO.FileSystem.Primitives";
+    version = "4.3.0";
+    sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c";
+  })
+
+  (fetchNuGet {
+    name = "NETStandard.Library";
+    version = "2.0.3";
+    sha256 = "1fn9fxppfcg4jgypp2pmrpr6awl3qz1xmnri0cygpkwvyx27df1y";
+  })
+
+  (fetchNuGet {
+    name = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "1x0g58pbpjrmj2x2qw17rdwwnrcl0wvim2hdwz48lixvwvp22n9c";
+  })
+
+  (fetchNuGet {
+    name = "System.Net.Requests";
+    version = "4.3.0";
+    sha256 = "0pcznmwqqk0qzp0gf4g4xw7arhb0q8v9cbzh3v8h8qp6rjcr339a";
+  })
+
+  (fetchNuGet {
+    name = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "0q0n5q1r1wnqmr5i5idsrd9ywl33k0js4pngkwq9p368mbxp8x1w";
+  })
+
+  (fetchNuGet {
+    name = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "15gsm1a8jdmgmf8j5v1slfz8ks124nfdhk2vxs2rw3asrxalg8hi";
+  })
+
+  (fetchNuGet {
+    name = "System.Net.Http";
+    version = "4.3.4";
+    sha256 = "0kdp31b8819v88l719j6my0yas6myv9d1viql3qz5577mv819jhl";
+  })
+
+  (fetchNuGet {
+    name = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "1cpx56mcfxz7cpn57wvj18sjisvzq8b5vd9rw16ihd2i6mcp3wa1";
+  })
+
+  (fetchNuGet {
+    name = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "1m9z1k9kzva9n9kwinqxl97x2vgl79qhqjlv17k9s2ymcyv2bwr6";
+  })
+
+  (fetchNuGet {
+    name = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "1dm8fifl7rf1gy7lnwln78ch4rw54g0pl5g1c189vawavll7p6rj";
+  })
+
+  (fetchNuGet {
+    name = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "096ch4n4s8k82xga80lfmpimpzahd2ip1mgwdqgar0ywbbl6x438";
+  })
+
+  (fetchNuGet {
+    name = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "0404wqrc7f2yc0wxv71y3nnybvqx8v4j9d47hlscxy759a525mc3";
+  })
+
+  (fetchNuGet {
+    name = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "1n06gxwlinhs0w7s8a94r1q3lwqzvynxwd3mp10ws9bg6gck8n4r";
+  })
+
+  (fetchNuGet {
+    name = "System.Net.Security";
+    version = "4.3.2";
+    sha256 = "1aw1ca1vssqrillrh4qkarx0lxwc8wcaqdkfdima8376wb98j2q8";
+  })
+
+  (fetchNuGet {
+    name = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "0rwpqngkqiapqc5c2cpkj7idhngrgss5qpnqg0yh40mbyflcxf8i";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.NETCore.Platforms";
+    version = "1.1.0";
+    sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection";
+    version = "4.3.0";
+    sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m";
+  })
+
+  (fetchNuGet {
+    name = "System.Collections";
+    version = "4.3.0";
+    sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9";
+  })
+
+  (fetchNuGet {
+    name = "System.Diagnostics.Debug";
+    version = "4.3.0";
+    sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y";
+  })
+
+  (fetchNuGet {
+    name = "System.Diagnostics.Tracing";
+    version = "4.3.0";
+    sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4";
+  })
+
+  (fetchNuGet {
+    name = "System.Globalization";
+    version = "4.3.0";
+    sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.NETCore.Targets";
+    version = "1.1.0";
+    sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh";
+  })
+
+  (fetchNuGet {
+    name = "System.Threading.ThreadPool";
+    version = "4.3.0";
+    sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1";
+  })
+
+  (fetchNuGet {
+    name = "System.IO";
+    version = "4.3.0";
+    sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Principal";
+    version = "4.3.0";
+    sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf";
+  })
+
+  (fetchNuGet {
+    name = "System.Net.Primitives";
+    version = "4.3.0";
+    sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii";
+  })
+
+  (fetchNuGet {
+    name = "System.Net.WebHeaderCollection";
+    version = "4.3.0";
+    sha256 = "0ms3ddjv1wn8sqa5qchm245f3vzzif6l6fx5k92klqpn7zf4z562";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Claims";
+    version = "4.3.0";
+    sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn";
+  })
+
+  (fetchNuGet {
+    name = "System.Resources.ResourceManager";
+    version = "4.3.0";
+    sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49";
+  })
+
+  (fetchNuGet {
+    name = "System.Collections.Concurrent";
+    version = "4.3.0";
+    sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8";
+  })
+
+  (fetchNuGet {
+    name = "System.Runtime";
+    version = "4.3.0";
+    sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7";
+  })
+
+  (fetchNuGet {
+    name = "System.Threading";
+    version = "4.3.0";
+    sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34";
+  })
+
+  (fetchNuGet {
+    name = "System.Threading.Tasks";
+    version = "4.3.0";
+    sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.NETCore.Platforms";
+    version = "1.1.1";
+    sha256 = "164wycgng4mi9zqi2pnsf1pq6gccbqvw6ib916mqizgjmd8f44pj";
+  })
+
+  (fetchNuGet {
+    name = "runtime.native.System";
+    version = "4.3.0";
+    sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4";
+  })
+
+  (fetchNuGet {
+    name = "runtime.native.System.Net.Http";
+    version = "4.3.0";
+    sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk";
+  })
+
+  (fetchNuGet {
+    name = "runtime.native.System.Net.Security";
+    version = "4.3.0";
+    sha256 = "0dnqjhw445ay3chpia9p6vy4w2j6s9vy3hxszqvdanpvvyaxijr3";
+  })
+
+  (fetchNuGet {
+    name = "runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.2";
+    sha256 = "0zy5r25jppz48i2bkg8b9lfig24xixg6nm3xyr1379zdnqnpm8f6";
+  })
+
+  (fetchNuGet {
+    name = "Microsoft.Win32.Primitives";
+    version = "4.3.0";
+    sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq";
+  })
+
+  (fetchNuGet {
+    name = "System.Diagnostics.DiagnosticSource";
+    version = "4.3.0";
+    sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq";
+  })
+
+  (fetchNuGet {
+    name = "System.Xml.XmlSerializer";
+    version = "4.3.0";
+    sha256 = "07pa4sx196vxkgl3csvdmw94nydlsm9ir38xxcs84qjn8cycd912";
+  })
+
+  (fetchNuGet {
+    name = "System.Globalization.Extensions";
+    version = "4.3.0";
+    sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls";
+  })
+
+  (fetchNuGet {
+    name = "System.IO.FileSystem";
+    version = "4.3.0";
+    sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw";
+  })
+
+  (fetchNuGet {
+    name = "System.Runtime.Extensions";
+    version = "4.3.0";
+    sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60";
+  })
+
+  (fetchNuGet {
+    name = "System.Runtime.Handles";
+    version = "4.3.0";
+    sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8";
+  })
+
+  (fetchNuGet {
+    name = "System.Runtime.InteropServices";
+    version = "4.3.0";
+    sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.Algorithms";
+    version = "4.3.0";
+    sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.Encoding";
+    version = "4.3.0";
+    sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32";
+  })
+
+  (fetchNuGet {
+    name = "System.ServiceModel.Primitives";
+    version = "4.5.3";
+    sha256 = "1v90pci049cn44y0km885k1vrilhb34w6q2zva4y6f3ay84klrih";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.Primitives";
+    version = "4.3.0";
+    sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby";
+  })
+
+  (fetchNuGet {
+    name = "System.Security.Cryptography.X509Certificates";
+    version = "4.3.0";
+    sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h";
+  })
+
+  (fetchNuGet {
+    name = "System.Text.Encoding";
+    version = "4.3.0";
+    sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.Emit";
+    version = "4.3.0";
+    sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.TypeExtensions";
+    version = "4.4.0";
+    sha256 = "0n9r1w4lp2zmadyqkgp4sk9wy90sj4ygq4dh7kzamx26i9biys5h";
+  })
+
+  (fetchNuGet {
+    name = "System.Reflection.Emit.Lightweight";
+    version = "4.3.0";
+    sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c";
+  })
+
+]
diff --git a/pkgs/shells/rush/default.nix b/pkgs/shells/rush/default.nix
index 3bfafdc46a03..3063e991d98a 100644
--- a/pkgs/shells/rush/default.nix
+++ b/pkgs/shells/rush/default.nix
@@ -1,17 +1,14 @@
 { fetchurl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "rush-1.8";
+  pname = "rush";
+  version = "1.9";
 
   src = fetchurl {
-    url = "mirror://gnu/rush/${name}.tar.gz";
-    sha256 = "1vxdb81ify4xcyygh86250pi50krb16dkj42i5ii4ns3araiwckz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "12x7dyi9vl3lwlv618156nzpi5s0li93wcx2c26h4z7la20yq2yk";
   };
 
-  patches = [ ./fix-format-security-error.patch
-    ./intprops.patch
-  ];
-
   doCheck = true;
 
   meta = {
diff --git a/pkgs/shells/rush/fix-format-security-error.patch b/pkgs/shells/rush/fix-format-security-error.patch
deleted file mode 100644
index ed3ad0aa4c1f..000000000000
--- a/pkgs/shells/rush/fix-format-security-error.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur rush-1.8.orig/lib/wordsplit.c rush-1.8/lib/wordsplit.c
---- rush-1.8.orig/lib/wordsplit.c	2016-08-18 20:11:43.000000000 +0200
-+++ rush-1.8/lib/wordsplit.c	2016-11-14 14:37:02.976177414 +0100
-@@ -2330,7 +2330,7 @@
-       break;
- 
-     default:
--      wsp->ws_error (wordsplit_strerror (wsp));
-+      wsp->ws_error ("%s", wordsplit_strerror (wsp));
-     }
- }
- 
diff --git a/pkgs/shells/rush/intprops.patch b/pkgs/shells/rush/intprops.patch
deleted file mode 100644
index 947cb0b9ab9f..000000000000
--- a/pkgs/shells/rush/intprops.patch
+++ /dev/null
@@ -1,257 +0,0 @@
-Description: Update to latest intprops.h from gnulib, fixes FTBFS with gcc 7
-Author: Adrian Bunk <bunk@debian.org>
-Bug-Debian: https://bugs.debian.org/853649
-
---- rush-1.8+dfsg.orig/gnu/intprops.h
-+++ rush-1.8+dfsg/gnu/intprops.h
-@@ -1,20 +1,18 @@
--/* -*- buffer-read-only: t -*- vi: set ro: */
--/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
- /* intprops.h -- properties of integer types
- 
--   Copyright (C) 2001-2016 Free Software Foundation, Inc.
-+   Copyright (C) 2001-2017 Free Software Foundation, Inc.
- 
-    This program is free software: you can redistribute it and/or modify it
--   under the terms of the GNU General Public License as published
--   by the Free Software Foundation; either version 3 of the License, or
-+   under the terms of the GNU Lesser General Public License as published
-+   by the Free Software Foundation; either version 2.1 of the License, or
-    (at your option) any later version.
- 
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
--   GNU General Public License for more details.
-+   GNU Lesser General Public License for more details.
- 
--   You should have received a copy of the GNU General Public License
-+   You should have received a copy of the GNU Lesser General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
- 
- /* Written by Paul Eggert.  */
-@@ -23,7 +21,6 @@
- #define _GL_INTPROPS_H
- 
- #include <limits.h>
--#include <verify.h>
- 
- /* Return a value with the common real type of E and V and the value of V.  */
- #define _GL_INT_CONVERT(e, v) (0 * (e) + (v))
-@@ -49,12 +46,16 @@
- 
- /* Minimum and maximum values for integer types and expressions.  */
- 
-+/* The width in bits of the integer type or expression T.
-+   Padding bits are not supported; this is checked at compile-time below.  */
-+#define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT)
-+
- /* The maximum and minimum values for the integer type T.  */
- #define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t))
- #define TYPE_MAXIMUM(t)                                                 \
-   ((t) (! TYPE_SIGNED (t)                                               \
-         ? (t) -1                                                        \
--        : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
-+        : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1)))
- 
- /* The maximum and minimum values for the type of the expression E,
-    after integer promotion.  E should not have side effects.  */
-@@ -67,29 +68,23 @@
-    ? _GL_SIGNED_INT_MAXIMUM (e)                                         \
-    : _GL_INT_NEGATE_CONVERT (e, 1))
- #define _GL_SIGNED_INT_MAXIMUM(e)                                       \
--  (((_GL_INT_CONVERT (e, 1) << (sizeof ((e) + 0) * CHAR_BIT - 2)) - 1) * 2 + 1)
-+  (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH ((e) + 0) - 2)) - 1) * 2 + 1)
-+
-+/* Work around OpenVMS incompatibility with C99.  */
-+#if !defined LLONG_MAX && defined __INT64_MAX
-+# define LLONG_MAX __INT64_MAX
-+# define LLONG_MIN __INT64_MIN
-+#endif
- 
- /* This include file assumes that signed types are two's complement without
-    padding bits; the above macros have undefined behavior otherwise.
-    If this is a problem for you, please let us know how to fix it for your host.
--   As a sanity check, test the assumption for some signed types that
--   <limits.h> bounds.  */
--verify (TYPE_MINIMUM (signed char) == SCHAR_MIN);
--verify (TYPE_MAXIMUM (signed char) == SCHAR_MAX);
--verify (TYPE_MINIMUM (short int) == SHRT_MIN);
--verify (TYPE_MAXIMUM (short int) == SHRT_MAX);
--verify (TYPE_MINIMUM (int) == INT_MIN);
--verify (TYPE_MAXIMUM (int) == INT_MAX);
--verify (TYPE_MINIMUM (long int) == LONG_MIN);
--verify (TYPE_MAXIMUM (long int) == LONG_MAX);
--#ifdef LLONG_MAX
--verify (TYPE_MINIMUM (long long int) == LLONG_MIN);
--verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
--#endif
-+   This assumption is tested by the intprops-tests module.  */
- 
- /* Does the __typeof__ keyword work?  This could be done by
-    'configure', but for now it's easier to do it by hand.  */
--#if (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
-+#if (2 <= __GNUC__ \
-+     || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
-      || (0x5110 <= __SUNPRO_C && !__STDC__))
- # define _GL_HAVE___TYPEOF__ 1
- #else
-@@ -118,8 +113,7 @@ verify (TYPE_MAXIMUM (long long int) ==
-    signed, this macro may overestimate the true bound by one byte when
-    applied to unsigned types of size 2, 4, 16, ... bytes.  */
- #define INT_STRLEN_BOUND(t)                                     \
--  (INT_BITS_STRLEN_BOUND (sizeof (t) * CHAR_BIT                 \
--                          - _GL_SIGNED_TYPE_OR_EXPR (t))        \
-+  (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \
-    + _GL_SIGNED_TYPE_OR_EXPR (t))
- 
- /* Bound on buffer size needed to represent an integer type or expression T,
-@@ -224,20 +218,27 @@ verify (TYPE_MAXIMUM (long long int) ==
-    ? (a) < (min) >> (b)                                 \
-    : (max) >> (b) < (a))
- 
--/* True if __builtin_add_overflow (A, B, P) works when P is null.  */
--#define _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL (7 <= __GNUC__)
-+/* True if __builtin_add_overflow (A, B, P) works when P is non-null.  */
-+#if 5 <= __GNUC__ && !defined __ICC
-+# define _GL_HAS_BUILTIN_OVERFLOW 1
-+#else
-+# define _GL_HAS_BUILTIN_OVERFLOW 0
-+#endif
-+
-+/* True if __builtin_add_overflow_p (A, B, C) works.  */
-+#define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
- 
- /* The _GL*_OVERFLOW macros have the same restrictions as the
-    *_RANGE_OVERFLOW macros, except that they do not assume that operands
-    (e.g., A and B) have the same type as MIN and MAX.  Instead, they assume
-    that the result (e.g., A + B) has that type.  */
--#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
--# define _GL_ADD_OVERFLOW(a, b, min, max)
--   __builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0)
--# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)
--   __builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0)
--# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)
--   __builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0)
-+#if _GL_HAS_BUILTIN_OVERFLOW_P
-+# define _GL_ADD_OVERFLOW(a, b, min, max)                               \
-+   __builtin_add_overflow_p (a, b, (__typeof__ ((a) + (b))) 0)
-+# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)                          \
-+   __builtin_sub_overflow_p (a, b, (__typeof__ ((a) - (b))) 0)
-+# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)                          \
-+   __builtin_mul_overflow_p (a, b, (__typeof__ ((a) * (b))) 0)
- #else
- # define _GL_ADD_OVERFLOW(a, b, min, max)                                \
-    ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max)                  \
-@@ -317,7 +318,7 @@ verify (TYPE_MAXIMUM (long long int) ==
-   _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW)
- #define INT_SUBTRACT_OVERFLOW(a, b) \
-   _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW)
--#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
-+#if _GL_HAS_BUILTIN_OVERFLOW_P
- # define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a)
- #else
- # define INT_NEGATE_OVERFLOW(a) \
-@@ -351,10 +352,6 @@ verify (TYPE_MAXIMUM (long long int) ==
- #define INT_MULTIPLY_WRAPV(a, b, r) \
-   _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW)
- 
--#ifndef __has_builtin
--# define __has_builtin(x) 0
--#endif
--
- /* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390.  See:
-    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193
-    https://llvm.org/bugs/show_bug.cgi?id=25390
-@@ -371,17 +368,17 @@ verify (TYPE_MAXIMUM (long long int) ==
-    the operation.  BUILTIN is the builtin operation, and OVERFLOW the
-    overflow predicate.  Return 1 if the result overflows.  See above
-    for restrictions.  */
--#if 5 <= __GNUC__ || __has_builtin (__builtin_add_overflow)
-+#if _GL_HAS_BUILTIN_OVERFLOW
- # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) builtin (a, b, r)
- #elif 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS
- # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
-    (_Generic \
-     (*(r), \
-      signed char: \
--       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned char, \
-+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                         signed char, SCHAR_MIN, SCHAR_MAX), \
-      short int: \
--       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned short int, \
-+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                         short int, SHRT_MIN, SHRT_MAX), \
-      int: \
-        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-@@ -395,10 +392,10 @@ verify (TYPE_MAXIMUM (long long int) ==
- #else
- # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
-    (sizeof *(r) == sizeof (signed char) \
--    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned char, \
-+    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                        signed char, SCHAR_MIN, SCHAR_MAX) \
-     : sizeof *(r) == sizeof (short int) \
--    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned short int, \
-+    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                        short int, SHRT_MIN, SHRT_MAX) \
-     : sizeof *(r) == sizeof (int) \
-     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-@@ -414,15 +411,14 @@ verify (TYPE_MAXIMUM (long long int) ==
- # else
- #  define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \
-     _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
--                     long int, LONG_MIN, LONG_MAX))
-+                     long int, LONG_MIN, LONG_MAX)
- # endif
- #endif
- 
- /* Store the low-order bits of A <op> B into *R, where the operation
-    is given by OP.  Use the unsigned type UT for calculation to avoid
--   overflow problems.  *R's type is T, with extremal values TMIN and
--   TMAX.  T must be a signed integer type.  Return 1 if the result
--   overflows.  */
-+   overflow problems.  *R's type is T, with extrema TMIN and TMAX.
-+   T must be a signed integer type.  Return 1 if the result overflows.  */
- #define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \
-   (sizeof ((a) op (b)) < sizeof (t) \
-    ? _GL_INT_OP_CALC1 ((t) (a), (t) (b), r, op, overflow, ut, t, tmin, tmax) \
-@@ -431,17 +427,27 @@ verify (TYPE_MAXIMUM (long long int) ==
-   ((overflow (a, b) \
-     || (EXPR_SIGNED ((a) op (b)) && ((a) op (b)) < (tmin)) \
-     || (tmax) < ((a) op (b))) \
--   ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t, tmin, tmax), 1) \
--   : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t, tmin, tmax), 0))
-+   ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \
-+   : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0))
-+
-+/* Return the low-order bits of A <op> B, where the operation is given
-+   by OP.  Use the unsigned type UT for calculation to avoid undefined
-+   behavior on signed integer overflow, and convert the result to type T.
-+   UT is at least as wide as T and is no narrower than unsigned int,
-+   T is two's complement, and there is no padding or trap representations.
-+   Assume that converting UT to T yields the low-order bits, as is
-+   done in all known two's-complement C compilers.  E.g., see:
-+   https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html
-+
-+   According to the C standard, converting UT to T yields an
-+   implementation-defined result or signal for values outside T's
-+   range.  However, code that works around this theoretical problem
-+   runs afoul of a compiler bug in Oracle Studio 12.3 x86.  See:
-+   http://lists.gnu.org/archive/html/bug-gnulib/2017-04/msg00049.html
-+   As the compiler bug is real, don't try to work around the
-+   theoretical problem.  */
- 
--/* Return A <op> B, where the operation is given by OP.  Use the
--   unsigned type UT for calculation to avoid overflow problems.
--   Convert the result to type T without overflow by subtracting TMIN
--   from large values before converting, and adding it afterwards.
--   Compilers can optimize all the operations except OP.  */
--#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t, tmin, tmax) \
--  (((ut) (a) op (ut) (b)) <= (tmax) \
--   ? (t) ((ut) (a) op (ut) (b)) \
--   : ((t) (((ut) (a) op (ut) (b)) - (tmin)) + (tmin)))
-+#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \
-+  ((t) ((ut) (a) op (ut) (b)))
- 
- #endif /* _GL_INTPROPS_H */
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index ab513f9b0ec0..68e13d085497 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -4,13 +4,13 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation rec {
-  version = "2019-04-22";
+  version = "2019-04-26";
   name = "oh-my-zsh-${version}";
-  rev = "f46476589aa092f75f5911fa4d6f65401a8d3577";
+  rev = "f5b2d9c7ce8ced5a4ec67a4ecfa877e6951124ef";
 
   src = fetchgit { inherit rev;
     url = "https://github.com/robbyrussell/oh-my-zsh";
-    sha256 = "1zfqa39da867zxwsyms12qv4jxl1z7rgnr817hhh1xn62i4y41f2";
+    sha256 = "17d837kyw16g91cnmdpdvhl2sgi3cb7fzligwwzjyp0y7kbiy3n4";
   };
 
   pathsToLink = [ "/share/oh-my-zsh" ];
diff --git a/pkgs/tools/X11/wpgtk/default.nix b/pkgs/tools/X11/wpgtk/default.nix
index 897067774a9f..419004049396 100644
--- a/pkgs/tools/X11/wpgtk/default.nix
+++ b/pkgs/tools/X11/wpgtk/default.nix
@@ -3,13 +3,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "wpgtk";
-  version = "6.0.3";
+  version = "6.0.5";
 
   src = fetchFromGitHub {
     owner = "deviantfero";
     repo = "wpgtk";
     rev = version;
-    sha256 = "1ma1d4h751qnxadfn42h29knq0rl1lgzraifx6ypidjph5i5a10l";
+    sha256 = "00nrc6ad2y0ivics6gpg63s86m8014a79yjn1q6d905qx32kk9dr";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/X11/xlayoutdisplay/default.nix b/pkgs/tools/X11/xlayoutdisplay/default.nix
index 5983cd3e663a..30903e448563 100644
--- a/pkgs/tools/X11/xlayoutdisplay/default.nix
+++ b/pkgs/tools/X11/xlayoutdisplay/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, xorg, boost, cmake, gtest }:
 
 stdenv.mkDerivation rec {
-  name = "xlayoutdisplay-${version}";
-  version = "1.0.2";
+  pname = "xlayoutdisplay";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "alex-courtis";
-    repo = "xlayoutdisplay";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1cqn98lpx9rkfhavbqalaaljw351hvqsrszgqnwvcyq05vq26dwx";
+    sha256 = "0wm6a48ym0wn2w0872mfq40ghajfrg1bccj1g342w899qh5x3bc4";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
       --replace 'fprintf(lidStateFile, contents);' \
                 'fputs(contents, lidStateFile);'
 
+    substituteInPlace CMakeLists.txt --replace "set(Boost_USE_STATIC_LIBS ON)" ""
   '';
 
   meta = with stdenv.lib; {
@@ -30,5 +31,6 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/alex-courtis/xlayoutdisplay;
     maintainers = with maintainers; [ dtzWill ];
     license = licenses.asl20;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/admin/acme.sh/default.nix b/pkgs/tools/admin/acme.sh/default.nix
index fc4f5e8843e4..371a86f77246 100644
--- a/pkgs/tools/admin/acme.sh/default.nix
+++ b/pkgs/tools/admin/acme.sh/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper, curl, openssl, socat, iproute }:
+{ stdenv, lib, fetchFromGitHub, makeWrapper, curl, openssl, socat, iproute, unixtools }:
 stdenv.mkDerivation rec {
   name = "acme.sh-${version}";
   version = "2.8.0";
@@ -16,7 +16,14 @@ stdenv.mkDerivation rec {
     mkdir -p $out $out/bin $out/libexec
     cp -R $src/* $_
     makeWrapper $out/libexec/acme.sh $out/bin/acme.sh \
-      --prefix PATH : "${lib.makeBinPath [ socat openssl curl iproute ]}"
+      --prefix PATH : "${
+        lib.makeBinPath [
+          socat
+          openssl
+          curl
+          (if stdenv.isLinux then iproute else unixtools.netstat)
+        ]
+      }"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/backup/dedup/default.nix b/pkgs/tools/backup/dedup/default.nix
new file mode 100644
index 000000000000..fdeacf91dd04
--- /dev/null
+++ b/pkgs/tools/backup/dedup/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, lz4, snappy, openmp }:
+
+stdenv.mkDerivation rec {
+  pname = "dedup";
+  version = "1.0";
+
+  src = fetchurl {
+    url = "https://dl.2f30.org/releases/${pname}-${version}.tar.gz";
+    sha256 = "0wd4cnzhqk8l7byp1y16slma6r3i1qglwicwmxirhwdy1m7j5ijy";
+  };
+
+  makeFlags = [
+    "CC:=$(CC)"
+    "PREFIX=${placeholder "out"}"
+    "MANPREFIX=${placeholder "out"}/share/man"
+    # These are likely wrong on some platforms, please report!
+    "OPENMPCFLAGS=-fopenmp"
+    "OPENMPLDLIBS=-lgomp"
+  ];
+
+  buildInputs = [ lz4 snappy openmp ];
+
+  meta = with stdenv.lib; {
+    description = "data deduplication program";
+    homepage = https://git.2f30.org/dedup/file/README.html;
+    license = with licenses; [ bsd0 isc ];
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/tools/backup/restic/default.nix b/pkgs/tools/backup/restic/default.nix
index 7b039f93a039..da44e389bdd5 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.4";
+  version = "0.9.5";
 
   goPackagePath = "github.com/restic/restic";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "restic";
     repo = "restic";
     rev = "v${version}";
-    sha256 = "15lx01w46bwn3hjwpmm8xy71m7ml9wdwddbbfvmk5in61gv1acr5";
+    sha256 = "1bhn3xwlycpnjg2qbqblwxn3apj43lr5cakgkmrblk13yfwfv5xv";
   };
 
   buildPhase = ''
diff --git a/pkgs/tools/compression/pigz/default.nix b/pkgs/tools/compression/pigz/default.nix
index 7d4cdc2df86d..1fabedaf62d8 100644
--- a/pkgs/tools/compression/pigz/default.nix
+++ b/pkgs/tools/compression/pigz/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
 
   buildInputs = [zlib] ++ stdenv.lib.optional stdenv.isLinux utillinux;
 
-  makeFlags = [ "CC=cc" ];
+  makeFlags = [ "CC=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" ];
 
   doCheck = stdenv.isLinux;
   checkTarget = "tests";
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 2e9bdff2aa38..c33ae4e8304a 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-03-13";
+  version = "2019-04-04";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs-tools.git";
-    rev = "0894d547501fb9306ae7b1c669b66a7b49fb2205";
-    sha256 = "1vwzwag413kzlij2f1hw1b8g592m40dr03zwkc8k5snbl4daiwr6";
+    rev = "d13bbb2955f899f10be4ab315ad229d2951fdcda";
+    sha256 = "0cjy12qjd572sbg8h4i18fn001p6a6ahc4ljwids58nv83q99ll3";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/filesystems/rmount/default.nix b/pkgs/tools/filesystems/rmount/default.nix
new file mode 100644
index 000000000000..cdc90097653f
--- /dev/null
+++ b/pkgs/tools/filesystems/rmount/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, nmap, jq, cifs-utils, sshfs, fetchFromGitHub, makeWrapper }:
+
+stdenv.mkDerivation rec {
+
+  pname   = "rmount";
+  version = "1.0.1";
+
+  src = fetchFromGitHub rec {
+    rev = "v${version}";
+    owner = "Luis-Hebendanz";
+    repo = "rmount";
+    sha256 = "1wjmfvbsq3126z51f2ivj85cjmkrzdm2acqsiyqs57qga2g6w5p9";
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    install -D ${src}/rmount.man  $out/share/man/man1/rmount.1
+    install -D ${src}/rmount.bash $out/bin/rmount
+    install -D ${src}/config.json $out/share/config.json
+
+    wrapProgram $out/bin/rmount --prefix PATH : ${stdenv.lib.makeBinPath [ nmap jq cifs-utils sshfs ]}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/Luis-Hebendanz/rmount;
+    description = "Remote mount utility which parses a json file";
+    license = licenses.mit;
+    maintainers = [ maintainers.luis ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/graphics/argyllcms/default.nix b/pkgs/tools/graphics/argyllcms/default.nix
index aa1137eeeff1..679704197c65 100644
--- a/pkgs/tools/graphics/argyllcms/default.nix
+++ b/pkgs/tools/graphics/argyllcms/default.nix
@@ -2,7 +2,7 @@
 , libXrender, libXext, libtiff, libjpeg, libpng, libXScrnSaver, writeText
 , libXdmcp, libXau, lib, openssl }:
 let
-  version = "2.0.1";
+  version = "2.1.0";
  in
 stdenv.mkDerivation rec {
   name = "argyllcms-${version}";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     # Kind of flacky URL, it was reaturning 406 and inconsistent binaries for a
     # while on me. It might be good to find a mirror
     url = "https://www.argyllcms.com/Argyll_V${version}_src.zip";
-    sha256 = "0a7m5mwvy74db34hvqsgy296469x3139qj5gfj4zqpnz0iyxhkny";
+    sha256 = "02zxy6ipp84hrd1p5nspp3f9dzphr0qwlq8s557jn746cf866bv3";
 
     # The argyllcms web server doesn't like curl ...
     curlOpts = "--user-agent 'Mozilla/5.0'";
diff --git a/pkgs/tools/misc/mpdscribble/default.nix b/pkgs/tools/misc/mpdscribble/default.nix
index ca6808effda5..5be323a6f4bc 100644
--- a/pkgs/tools/misc/mpdscribble/default.nix
+++ b/pkgs/tools/misc/mpdscribble/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     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;
+    homepage = https://www.musicpd.org/clients/mpdscribble/;
     license = licenses.gpl2;
     maintainers = [ maintainers.matthiasbeyer ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/misc/pandoc-imagine/default.nix b/pkgs/tools/misc/pandoc-imagine/default.nix
new file mode 100644
index 000000000000..811e44a6ce8e
--- /dev/null
+++ b/pkgs/tools/misc/pandoc-imagine/default.nix
@@ -0,0 +1,28 @@
+{ fetchFromGitHub, buildPythonApplication, lib, pandocfilters, six }:
+
+buildPythonApplication rec {
+  pname = "pandoc-imagine";
+  version = "unstable-2018-11-19";
+
+  src = fetchFromGitHub {
+    repo = "imagine";
+    owner = "hertogp";
+    rev = "cc9be85155666c2d12d47a71690ba618cea1fac2";
+    sha256 = "0iksh9081g488yfjzd24bz4lm1nrrjamph1vynx3imrcfgyq7nsb";
+  };
+
+  propagatedBuildInputs = [ pandocfilters six ];
+
+  # No tests in archive
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = src.meta.homepage;
+    description = ''
+      A pandoc filter that will turn code blocks tagged with certain classes
+      into images or ASCII art
+    '';
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ synthetica ];
+  };
+}
diff --git a/pkgs/tools/misc/pazi/cargo-lock.patch b/pkgs/tools/misc/pazi/cargo-lock.patch
new file mode 100644
index 000000000000..4be7aa44c9c7
--- /dev/null
+++ b/pkgs/tools/misc/pazi/cargo-lock.patch
@@ -0,0 +1,13 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 074b0ca..22f3bc5 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -286,7 +286,7 @@ dependencies = [
+ 
+ [[package]]
+ name = "pazi"
+-version = "0.1.0"
++version = "0.2.0"
+ dependencies = [
+  "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "crossbeam-channel 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/pkgs/tools/misc/pazi/default.nix b/pkgs/tools/misc/pazi/default.nix
new file mode 100644
index 000000000000..0e9ea7f0d868
--- /dev/null
+++ b/pkgs/tools/misc/pazi/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "pazi";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "euank";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "12z2vyzmyxfq1krbbrjar7c2gvyq1969v16pb2pm7f4g4k24g0c8";
+  };
+
+  cargoSha256 = "0mgjl5vazk5z1859lb2va9af9yivz47jw4b01rjr4mq67v9jfld1";
+
+  cargoPatches = [ ./cargo-lock.patch ];
+
+  meta = with stdenv.lib; {
+    description = "An autojump \"zap to directory\" helper";
+    homepage = https://github.com/euank/pazi;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ bbigras ];
+  };
+}
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index 192c5eb0823b..d102d27a6c4c 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -12,22 +12,18 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "tmux-${version}";
-  version = "2.8";
+  pname = "tmux";
+  version = "2.9";
 
   outputs = [ "out" "man" ];
 
   src = fetchFromGitHub {
-    owner = "tmux";
-    repo = "tmux";
-    rev = "01918cb0170e07288d3aec624516e6470bf5b7fc";
-    sha256 = "1fy87wvxn7r7jzqapvjisc1iizic3kxqk2lv83giqmw1y4g3s7rl";
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "191y986k9q17fdxlh3ldkr81s8fpxj4n2lc2lys6hzi4ybrhgdik";
   };
 
-  postPatch = ''
-    sed -i 's/2.8-rc/2.8/' configure.ac
-  '';
-
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
 
   buildInputs = [ ncurses libevent makeWrapper ];
diff --git a/pkgs/tools/misc/you-get/default.nix b/pkgs/tools/misc/you-get/default.nix
index 7171ef45fa86..2f009acc13a0 100644
--- a/pkgs/tools/misc/you-get/default.nix
+++ b/pkgs/tools/misc/you-get/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonApplication rec {
   pname = "you-get";
-  version = "0.4.1270";
+  version = "0.4.1295";
 
   # Tests aren't packaged, but they all hit the real network so
   # probably aren't suitable for a build environment anyway.
@@ -10,7 +10,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1gq6z605xfhgama11krsc8y0qr690dgf9x39q2z941bqdxvxra5g";
+    sha256 = "15p9ngscrn20shkg909hcnsizqpbl038zbnmxwbprj88lnn8xz9m";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/z-lua/default.nix b/pkgs/tools/misc/z-lua/default.nix
new file mode 100644
index 000000000000..495ea3925fd6
--- /dev/null
+++ b/pkgs/tools/misc/z-lua/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, lua }:
+
+stdenv.mkDerivation rec {
+  pname = "z-lua";
+  version = "1.7.0";
+
+  src = fetchFromGitHub {
+    owner = "skywind3000";
+    repo = "z.lua";
+    rev = "v${version}";
+    sha256 = "1f8iafv81xsypa78prazq6k2xz8az09kjhl97vn330drxkcpj7i7";
+  };
+
+  dontBuild = true;
+
+  buildInputs = [ lua ];
+
+  installPhase = ''
+    install -Dm755 z.lua $out/bin/z
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/skywind3000/z.lua;
+    description = "A new cd command that helps you navigate faster by learning your habits";
+    license = licenses.mit;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/tools/networking/dd-agent/README.md b/pkgs/tools/networking/dd-agent/README.md
index b04af72aef10..8cff23b9574c 100644
--- a/pkgs/tools/networking/dd-agent/README.md
+++ b/pkgs/tools/networking/dd-agent/README.md
@@ -1,8 +1,17 @@
-To update v6 (v5 is deprecated and should be removed):
+To update datadog-agent v6 (v5 is deprecated and should be removed):
 
-1. Bump `version`, `rev`, `sha256` and `payloadVersion` in `6.nix`
+1. Bump `version`, `rev`, `sha256` and `payloadVersion` in `datadog-agent.nix`
 2. `git clone https://github.com/DataDog/datadog-agent.git && cd datadog-agent`
 3. `git checkout <tag>`
 4. `nix-env -i -f https://github.com/nixcloud/dep2nix/archive/master.tar.gz`
-5. `deps2nix`
-6. `cp deps.nix $NIXPKGS/pkgs/tools/networking/dd-agent/deps.nix`
+5. `dep2nix`
+6. `cp deps.nix $NIXPKGS/pkgs/tools/networking/dd-agent/datadog-agent-deps.nix`
+
+To update datadog-process-agent:
+
+1. Bump `version`, `rev` and `sha256` in `datadog-process-agent.nix`
+2. `git clone https://github.com/DataDog/datadog-process-agent.git && cd datadog-process-agent`
+3. `git checkout <tag>`
+4. `nix-env -i -f https://github.com/nixcloud/dep2nix/archive/master.tar.gz`
+5. `dep2nix`
+6. `cp deps.nix $NIXPKGS/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix`
diff --git a/pkgs/tools/networking/dd-agent/deps.nix b/pkgs/tools/networking/dd-agent/datadog-agent-deps.nix
index 5da6741c6407..1121ec0405c1 100644
--- a/pkgs/tools/networking/dd-agent/deps.nix
+++ b/pkgs/tools/networking/dd-agent/datadog-agent-deps.nix
@@ -32,8 +32,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/gohai";
-      rev =  "bc98f936c76570e79c1c7e739425ff22ab2ee4a3";
-      sha256 = "1r59b6qpjnv399hm6pqfklm47hapkjwy9cp92frb3mhfz0wf9djl";
+      rev =  "43b075bb9705588cd89c71363d6d72937e3020c7";
+      sha256 = "195z5g8gdxcx4cq51p2xqha3j8m7mk5d5lr6i3hbaxp948hgc8dh";
     };
   }
   {
@@ -50,8 +50,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/viper";
-      rev =  "23ced3bc6b3751855704445e48da2c53075ade86";
-      sha256 = "1zzf4mqpmk47p3395k2v8q6wi7lnqxr0l55vv4zk9gpqqyifbm9m";
+      rev =  "v1.5.0";
+      sha256 = "1sv0xvmfaif7zpfwk0j6qf11hxnfdsb2zfj63b9zx7l0zzhjzh06";
     };
   }
   {
@@ -397,15 +397,6 @@
     };
   }
   {
-    goPackagePath  = "github.com/geoffgarside/ber";
-    fetch = {
-      type = "git";
-      url = "https://github.com/geoffgarside/ber";
-      rev =  "0b763e6b6fb1cb7422c29cd9195a3abf625651fb";
-      sha256 = "04k9k6805mvgp6gxs53frvlpp45hvkvrpj1jl1hc27ldwv5gpjrk";
-    };
-  }
-  {
     goPackagePath  = "github.com/ghodss/yaml";
     fetch = {
       type = "git";
@@ -685,15 +676,6 @@
     };
   }
   {
-    goPackagePath  = "github.com/k-sone/snmpgo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/k-sone/snmpgo";
-      rev =  "de09377ff34857b08afdc16ea8c7c2929eb1fc6e";
-      sha256 = "0fia82msxviawcp5w4j4ll9n7z3gfjjvigqcq0d94cshj9ras10j";
-    };
-  }
-  {
     goPackagePath  = "github.com/kardianos/osext";
     fetch = {
       type = "git";
@@ -1057,9 +1039,9 @@
     goPackagePath  = "github.com/spf13/cast";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/cast";
-      rev =  "8965335b8c7107321228e3e3702cab9832751bac";
-      sha256 = "177bk7lq40jbgv9p9r80aydpaccfk8ja3a7jjhfwiwk9r1pa4rr2";
+      url = "https://github.com/DataDog/cast";
+      rev =  "1ee8c8bd14a3d768a7ff681617ed56bc6c204940";
+      sha256 = "0sgqmhicy672250cxgqd8zlni3qlj57r8liyiaq15g9spyhflhl0";
     };
   }
   {
@@ -1368,4 +1350,4 @@
       sha256 = "1wpqijsvf8s4iqjrrzgbxi3gay6vaglscyq14vxma4iacg8fx1jk";
     };
   }
-]
+]
\ No newline at end of file
diff --git a/pkgs/tools/networking/dd-agent/6.nix b/pkgs/tools/networking/dd-agent/datadog-agent.nix
index 0c0c4212b6aa..d751b32a869c 100644
--- a/pkgs/tools/networking/dd-agent/6.nix
+++ b/pkgs/tools/networking/dd-agent/datadog-agent.nix
@@ -6,14 +6,14 @@ let
 
 in buildGoPackage rec {
   name = "datadog-agent-${version}";
-  version = "6.10.1";
+  version = "6.11.0";
   owner   = "DataDog";
   repo    = "datadog-agent";
 
   src = fetchFromGitHub {
     inherit owner repo;
     rev    = "${version}";
-    sha256 = "1yxwlf0kwjhadq6f1p9z100d363x1s1xzni3rw42m08mzx9fr469";
+    sha256 = "1gvawsrm3qlrciahnqa9793hwm586jiccmnz1pp0z889508wbg07";
   };
 
   subPackages = [
@@ -23,7 +23,7 @@ in buildGoPackage rec {
     "cmd/py-launcher"
     "cmd/trace-agent"
   ];
-  goDeps = ./deps.nix;
+  goDeps = ./datadog-agent-deps.nix;
   goPackagePath = "github.com/${owner}/${repo}";
 
   # Explicitly set this here to allow it to be overridden.
diff --git a/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix b/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix
index ca6b3dcee420..2a81702feee9 100644
--- a/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix
+++ b/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix
@@ -23,8 +23,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/datadog-agent";
-      rev =  "4aa90bd394b62b0d3e3f15703c6e459c1c477fbc";
-      sha256 = "13zvg8ykakq97bw0kd2gj4s9gfjpx23d3c51w1jpa1raqwhgqi8z";
+      rev =  "d7712d570b91f4f97af9f155ad1c676921d8325d";
+      sha256 = "1gi921z79la4hjhm8xhl4jz167200qljvhhsy4blj4vinkgfpm8w";
     };
   }
   {
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/gopsutil";
-      rev =  "c8f74f1344dd41bc49ec4d3c2377c526aaedfd20";
-      sha256 = "0r8al83apxrq1v6s2mq0p8h3c4z4n5g7ax8vcvs70pq0czy2fvgp";
+      rev =  "233cd0cf42c26d835ed6f0e46f2103432a88b526";
+      sha256 = "0rvxs1jjzv3j834dns28zr25bznarjmpgdy0z6gpimnq5nyicys5";
     };
   }
   {
@@ -50,8 +50,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/viper";
-      rev =  "23ced3bc6b3751855704445e48da2c53075ade86";
-      sha256 = "1zzf4mqpmk47p3395k2v8q6wi7lnqxr0l55vv4zk9gpqqyifbm9m";
+      rev =  "v1.5.0";
+      sha256 = "1sv0xvmfaif7zpfwk0j6qf11hxnfdsb2zfj63b9zx7l0zzhjzh06";
     };
   }
   {
@@ -666,4 +666,4 @@
       sha256 = "0bcsb7s4wlmrja35zvz4s10cf3w7dfn2ckjv6apxd1ykdjxnsk71";
     };
   }
-]
+]
\ No newline at end of file
diff --git a/pkgs/tools/networking/dd-agent/datadog-process-agent.nix b/pkgs/tools/networking/dd-agent/datadog-process-agent.nix
index b5010c28cb51..2e4ff9ab732f 100644
--- a/pkgs/tools/networking/dd-agent/datadog-process-agent.nix
+++ b/pkgs/tools/networking/dd-agent/datadog-process-agent.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "datadog-process-agent-${version}";
-  version = "6.10.0";
+  version = "6.11.0";
   owner   = "DataDog";
   repo    = "datadog-process-agent";
 
   src = fetchFromGitHub {
     inherit owner repo;
     rev    = "${version}";
-    sha256 = "16lr1gp6n0aph8zikk5kmaib9i5b1jbndxlxfi84bd9f8lhvmkhk";
+    sha256 = "1max3gp1isb30fjy55bkp9dsd8al31a968pmnr1h8wg2pycvgyif";
   };
 
   goDeps = ./datadog-process-agent-deps.nix;
diff --git a/pkgs/tools/networking/httplz/cargo-lock.patch b/pkgs/tools/networking/httplz/cargo-lock.patch
new file mode 100644
index 000000000000..d1640ebc43df
--- /dev/null
+++ b/pkgs/tools/networking/httplz/cargo-lock.patch
@@ -0,0 +1,1211 @@
+diff --git a/Cargo.lock b/Cargo.lock
+new file mode 100644
+index 0000000..ff2d50d
+--- /dev/null
++++ b/Cargo.lock
+@@ -0,0 +1,1205 @@
++[[package]]
++name = "adler32"
++version = "1.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "aho-corasick"
++version = "0.7.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "ansi_term"
++version = "0.11.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "antidote"
++version = "1.0.0"
++source = "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.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "termion 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "autocfg"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "base64"
++version = "0.9.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "base64"
++version = "0.10.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "bitflags"
++version = "0.9.1"
++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 = "brotli-sys"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "brotli2"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "build_const"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "byteorder"
++version = "1.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "bzip2"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "bzip2-sys 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "bzip2-sys"
++version = "0.1.7"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "cc"
++version = "1.0.35"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "cfg-if"
++version = "0.1.7"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "clap"
++version = "2.33.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.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "textwrap 0.11.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 = "cloudabi"
++version = "0.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "core-foundation"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "core-foundation-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "core-foundation-sys"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "crc"
++version = "1.8.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "crc32fast"
++version = "1.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "ctrlc"
++version = "3.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "nix 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "dtoa"
++version = "0.4.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "embed-resource"
++version = "1.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "vswhom 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winreg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "flate2"
++version = "1.0.7"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "fuchsia-cprng"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "gcc"
++version = "0.3.55"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "httparse"
++version = "1.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "https"
++version = "1.5.0"
++dependencies = [
++ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bzip2 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ctrlc 3.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "embed-resource 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "flate2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hyper-native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "iron 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazysort 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "md6 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime_guess 1.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rfsapi 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "trivial_colours 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "hyper"
++version = "0.10.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "hyper-native-tls"
++version = "0.2.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "antidote 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "native-tls 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "idna"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "iron"
++version = "0.6.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hyper-native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime_guess 1.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "modifier 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "itoa"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "language-tags"
++version = "0.2.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "lazy_static"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "lazy_static"
++version = "1.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "lazysort"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "libc"
++version = "0.2.53"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "log"
++version = "0.3.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "log"
++version = "0.4.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "matches"
++version = "0.1.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "md6"
++version = "2.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "memchr"
++version = "2.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "mime"
++version = "0.2.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "mime_guess"
++version = "1.8.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "miniz-sys"
++version = "0.1.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "miniz_oxide"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "miniz_oxide_c_api"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "modifier"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "native-tls"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "security-framework 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "security-framework-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "nix"
++version = "0.13.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "num-traits"
++version = "0.1.43"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "num-traits"
++version = "0.2.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "num_cpus"
++version = "1.10.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "numtoa"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "openssl"
++version = "0.9.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "openssl-sys"
++version = "0.9.43"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "percent-encoding"
++version = "1.0.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "phf"
++version = "0.7.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "phf_codegen"
++version = "0.7.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "phf_generator"
++version = "0.7.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "phf_shared"
++version = "0.7.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "pkg-config"
++version = "0.3.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "plugin"
++version = "0.2.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "typemap 0.3.3 (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 = "rand"
++version = "0.4.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand"
++version = "0.6.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_chacha"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "rand_hc"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_isaac"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_jitter"
++version = "0.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_os"
++version = "0.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_pcg"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rand_xorshift"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rdrand"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "redox_syscall"
++version = "0.1.54"
++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.54 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "regex"
++version = "1.1.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "regex-syntax"
++version = "0.6.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "remove_dir_all"
++version = "0.5.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rfsapi"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "rustc_version"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "safemem"
++version = "0.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "schannel"
++version = "0.1.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "security-framework"
++version = "0.1.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "core-foundation 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "security-framework-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "security-framework-sys"
++version = "0.1.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "core-foundation-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "semver"
++version = "0.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "semver-parser"
++version = "0.7.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "serde"
++version = "0.9.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "serde_codegen_internals"
++version = "0.14.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "serde_derive"
++version = "0.9.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_codegen_internals 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "serde_json"
++version = "0.9.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "siphasher"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "smallvec"
++version = "0.6.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "strsim"
++version = "0.8.0"
++source = "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 = "tempdir"
++version = "0.3.7"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "termion"
++version = "1.5.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "numtoa 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_syscall 0.1.54 (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.11.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 = "thread_local"
++version = "0.3.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "time"
++version = "0.1.42"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "traitobject"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "trivial_colours"
++version = "0.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "typeable"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "typemap"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "ucd-util"
++version = "0.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "unicase"
++version = "1.4.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "unicase"
++version = "2.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "unicode-bidi"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "unicode-normalization"
++version = "0.1.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "smallvec 0.6.9 (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 = "unsafe-any"
++version = "0.4.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "url"
++version = "1.7.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "utf8-ranges"
++version = "1.0.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "vcpkg"
++version = "0.2.6"
++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 = "version_check"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "void"
++version = "1.0.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "vswhom"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vswhom-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "vswhom-sys"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "winapi"
++version = "0.3.7"
++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 = "winreg"
++version = "0.5.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[metadata]
++"checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
++"checksum aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e6f484ae0c99fec2e858eb6134949117399f222608d84cadb3f58c1f97c2364c"
++"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
++"checksum antidote 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "34fde25430d87a9388dadbe6e34d7f72a462c8b43ac8d309b42b0a8505d7e2a5"
++"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
++"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
++"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
++"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
++"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
++"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
++"checksum brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd"
++"checksum brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"
++"checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
++"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
++"checksum bzip2 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "42b7c3cbf0fa9c1b82308d57191728ca0256cb821220f4e2fd410a72ade26e3b"
++"checksum bzip2-sys 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6584aa36f5ad4c9247f5323b0a42f37802b37a836f0ad87084d7a33961abe25f"
++"checksum cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5f3fee5eeb60324c2781f1e41286bdee933850fff9b3c672587fed5ec58c83"
++"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4"
++"checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
++"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
++"checksum core-foundation 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "25bfd746d203017f7d5cbd31ee5d8e17f94b6521c7af77ece6c9e4b2d4b16c67"
++"checksum core-foundation-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "065a5d7ffdcbc8fa145d6f0746f3555025b9097a9e9cda59f7467abae670c78d"
++"checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
++"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
++"checksum ctrlc 3.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5531b7f0698d9220b4729f8811931dbe0e91a05be2f7b3245fdc50dd856bae26"
++"checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd"
++"checksum embed-resource 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee11dd277e159f3a7845341f8c800899cf918a366956e31dd52f35eff638a403"
++"checksum flate2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f87e68aa82b2de08a6e037f1385455759df6e445a8df5e005b4297191dbf18aa"
++"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
++"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
++"checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
++"checksum hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "0a0652d9a2609a968c14be1a9ea00bf4b1d64e2e1f53a1b51b6fff3a6e829273"
++"checksum hyper-native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "72332e4a35d3059583623b50e98e491b78f8b96c5521fcb3f428167955aa56e8"
++"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
++"checksum iron 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d8e17268922834707e1c29e8badbf9c712c9c43378e1b6a3388946baff10be2"
++"checksum itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8324a32baf01e2ae060e9de58ed0bc2320c9a2833491ee36cd3b4c414de4db8c"
++"checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
++"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
++"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
++"checksum lazysort 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e22ff43b231e0e2f87d74984e53ebc73b90ae13397e041214fb07efc64168f"
++"checksum libc 0.2.53 (registry+https://github.com/rust-lang/crates.io-index)" = "ec350a9417dfd244dc9a6c4a71e13895a4db6b92f0b106f07ebbc3f3bc580cee"
++"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
++"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
++"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
++"checksum md6 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54e5826684849cecd3fa05a6a5052c50a3542f163a9917ff0b91379426a2e45d"
++"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
++"checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
++"checksum mime_guess 1.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2d4c0961143b8efdcfa29c3ae63281601b446a4a668165454b6c90f8024954c5"
++"checksum miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "0300eafb20369952951699b68243ab4334f4b10a88f411c221d444b36c40e649"
++"checksum miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c468f2369f07d651a5d0bb2c9079f8488a66d5466efe42d0c5c6466edcb7f71e"
++"checksum miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fe927a42e3807ef71defb191dc87d4e24479b221e67015fe38ae2b7b447bab"
++"checksum modifier 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41f5c9112cb662acd3b204077e0de5bc66305fa8df65c8019d5adb10e9ab6e58"
++"checksum native-tls 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f74dbadc8b43df7864539cedb7bc91345e532fdd913cfdc23ad94f4d2d40fbc0"
++"checksum nix 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "46f0f3210768d796e8fa79ec70ee6af172dacbe7147f5e69be5240a47778302b"
++"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
++"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
++"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba"
++"checksum numtoa 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
++"checksum openssl 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)" = "a3605c298474a3aa69de92d21139fb5e2a81688d308262359d85cdd0d12a7985"
++"checksum openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)" = "33c86834957dd5b915623e94f2f4ab2c70dd8f6b70679824155d5ae21dbd495d"
++"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
++"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
++"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
++"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
++"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
++"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
++"checksum plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1a6a0dc3910bc8db877ffed8e457763b317cf880df4ae19109b9f77d277cf6e0"
++"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
++"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
++"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
++"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
++"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
++"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0"
++"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
++"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
++"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832"
++"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
++"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
++"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
++"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
++"checksum redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)" = "12229c14a0f65c4f1cb046a3b52047cdd9da1f4b30f8a39c5063c8bae515e252"
++"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
++"checksum regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8f0a0bcab2fd7d1d7c54fa9eae6f43eddeb9ce2e7352f8518a814a4f65d60c58"
++"checksum regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfd8681eebe297b81d98498869d4aae052137651ad7b96822f09ceb690d0a96"
++"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
++"checksum rfsapi 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b6fbc119d00459f80252adb96e554766d75de071ed5d3c49f46a000d137cd49"
++"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
++"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
++"checksum schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339"
++"checksum security-framework 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "dfa44ee9c54ce5eecc9de7d5acbad112ee58755239381f687e564004ba4a2332"
++"checksum security-framework-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "5421621e836278a0b139268f36eee0dc7e389b784dc3f79d8f11aabadf41bead"
++"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
++"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
++"checksum serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "34b623917345a631dc9608d5194cc206b3fe6c3554cd1c75b937e55e285254af"
++"checksum serde_codegen_internals 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bc888bd283bd2420b16ad0d860e35ad8acb21941180a83a189bb2046f9d00400"
++"checksum serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "978fd866f4d4872084a81ccc35e275158351d3b9fe620074e7d7504b816b74ba"
++"checksum serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ad8bcf487be7d2e15d3d543f04312de991d631cfe1b43ea0ade69e6a8a5b16a1"
++"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
++"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be"
++"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
++"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 tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
++"checksum termion 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dde0593aeb8d47accea5392b39350015b5eccb12c0d98044d856983d89548dea"
++"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
++"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
++"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
++"checksum traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079"
++"checksum trivial_colours 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7153365ea16c5a0ce2eebc4da1b33339a6b21d90c49f670e82130639656bb458"
++"checksum typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1410f6f91f21d1612654e7cc69193b0334f909dcf2c790c4826254fbb86f8887"
++"checksum typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "653be63c80a3296da5551e1bfd2cca35227e13cdd08c6668903ae2f4f77aa1f6"
++"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
++"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
++"checksum unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41d17211f887da8e4a70a45b9536f26fc5de166b81e2d5d80de4a17fd22553bd"
++"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
++"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
++"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 unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f30360d7979f5e9c6e6cea48af192ea8fab4afb3cf72597154b8f08935bc9c7f"
++"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
++"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
++"checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
++"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
++"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
++"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
++"checksum vswhom 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b"
++"checksum vswhom-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc2f5402d3d0e79a069714f7b48e3ecc60be7775a2c049cb839457457a239532"
++"checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770"
++"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 winreg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a27a759395c1195c4cc5cda607ef6f8f6498f64e78f7900f5de0a127a424704a"
diff --git a/pkgs/tools/networking/httplz/default.nix b/pkgs/tools/networking/httplz/default.nix
new file mode 100644
index 000000000000..21fc08a39a9e
--- /dev/null
+++ b/pkgs/tools/networking/httplz/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, rustPlatform, pkgs }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "httplz";
+  version = "1.5.0";
+
+  src = fetchFromGitHub {
+    owner = "thecoshman";
+    repo = "http";
+    rev = "v${version}";
+    sha256 = "0mb2wifz8pba03bdpiqadih33jimhg9crs4b72rcyfmj9l8fd1ba";
+  };
+
+  buildInputs = with pkgs; [ openssl pkgconfig ];
+
+  cargoBuildFlags = [ "--bin httplz" ];
+  cargoPatches = [ ./cargo-lock.patch ];
+  cargoSha256 = "0cy23smal6y5qj6a202zf7l76vwkpzvcjmlbq0ffyph3gq07ps7b";
+
+  meta = with stdenv.lib; {
+    description = "A basic http server for hosting a folder fast and simply";
+    homepage = https://github.com/thecoshman/http;
+    license = licenses.mit;
+    maintainers = with maintainers; [ bbigras ];
+  };
+}
diff --git a/pkgs/tools/networking/socat/default.nix b/pkgs/tools/networking/socat/default.nix
index 834ea1bd873d..ec62c105c62c 100644
--- a/pkgs/tools/networking/socat/default.nix
+++ b/pkgs/tools/networking/socat/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0jnhjijyq74g3wa4ph0am83z6vq7qna7ac0xqjma8s4197z3zmhd";
   };
 
+  patches = stdenv.lib.optional stdenv.isDarwin ./speed-type-fix.patch;
+
   postPatch = ''
     patchShebangs test.sh
     substituteInPlace test.sh \
diff --git a/pkgs/tools/networking/socat/speed-type-fix.patch b/pkgs/tools/networking/socat/speed-type-fix.patch
new file mode 100644
index 000000000000..58e4c716bba0
--- /dev/null
+++ b/pkgs/tools/networking/socat/speed-type-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/xio-termios.h b/xio-termios.h
+index a288a2f..9858aab 100644
+--- a/xio-termios.h
++++ b/xio-termios.h
+@@ -148,7 +148,7 @@ extern int xiotermiosflag_applyopt(int fd, struct opt *opt);
+ extern int xiotermios_value(int fd, int word, tcflag_t mask, tcflag_t value);
+ extern int xiotermios_char(int fd, int n, unsigned char c);
+ #ifdef HAVE_TERMIOS_ISPEED
+-extern int xiotermios_speed(int fd, int n, unsigned int speed);
++extern int xiotermios_speed(int fd, int n, speed_t speed);
+ #endif
+ extern int xiotermios_spec(int fd, int optcode);
+ extern int xiotermios_flush(int fd);
diff --git a/pkgs/tools/networking/wol/default.nix b/pkgs/tools/networking/wol/default.nix
index 5349abec1614..570d800311e2 100644
--- a/pkgs/tools/networking/wol/default.nix
+++ b/pkgs/tools/networking/wol/default.nix
@@ -1,22 +1,24 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, perl }:
 
 stdenv.mkDerivation rec {
-  name = "wol-${version}";
+  pname = "wol";
   version = "0.7.1";
-  proj = "wake-on-lan";
-
-  enableParallelBuilding = true;
 
   src = fetchurl {
-    url = "mirror://sourceforge/${proj}/${name}.tar.gz";
+    url = "mirror://sourceforge/wake-on-lan/${pname}-${version}.tar.gz";
     sha256 = "08i6l5lr14mh4n3qbmx6kyx7vjqvzdnh3j9yfvgjppqik2dnq270";
   };
 
-  meta = {
+  # for pod2man in order to get a manpage
+  nativeBuildInputs = [ perl ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
     description = "Implements Wake On LAN functionality in a small program";
     homepage = https://sourceforge.net/projects/wake-on-lan/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ makefu ];
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ makefu ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix
index 2b50e81dfc4f..43a8c4644639 100644
--- a/pkgs/tools/package-management/home-manager/default.nix
+++ b/pkgs/tools/package-management/home-manager/default.nix
@@ -1,18 +1,18 @@
 #Adapted from
-#https://github.com/rycee/home-manager/blob/9c1b3735b402346533449efc741f191d6ef578dd/home-manager/default.nix
+#https://github.com/rycee/home-manager/blob/2c07829be2bcae55e04997b19719ff902a44016d/home-manager/default.nix
 
-{ bash, coreutils, less, stdenv, makeWrapper, fetchFromGitHub }:
+{ bash, coreutils, findutils, gnused, less, stdenv, makeWrapper, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
 
   name = "home-manager-${version}";
-  version = "2018-11-04";
+  version = "2019-04-23";
 
   src = fetchFromGitHub {
     owner = "rycee";
     repo = "home-manager";
-    rev = "05c93ff3ae13f1a2d90a279a890534cda7dc8ad6";
-    sha256 = "0ymfvjnnz98ynws3v6dcil1cmp7x2cmm6zy8yqgkn8z7wyrrqq0v";
+    rev = "ba0375bf06e0e0c3b2377edf913b7fddfd5a0b40";
+    sha256 = "1ksr8fw5p5ai2a02whppc0kz9b3m5363hvfjghkzkd623kfh9073";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
     substituteInPlace $out/bin/home-manager \
       --subst-var-by bash "${bash}" \
       --subst-var-by coreutils "${coreutils}" \
+      --subst-var-by findutils "${findutils}" \
+      --subst-var-by gnused "${gnused}" \
       --subst-var-by less "${less}" \
       --subst-var-by HOME_MANAGER_PATH '${src}'
   '';
diff --git a/pkgs/tools/security/rng-tools/default.nix b/pkgs/tools/security/rng-tools/default.nix
index 3e460c5f8448..41faa375f83d 100644
--- a/pkgs/tools/security/rng-tools/default.nix
+++ b/pkgs/tools/security/rng-tools/default.nix
@@ -8,7 +8,7 @@
   # Not sure if jitterentropy is safe to use for cryptography
   # and thus a default entropy source
 , jitterentropy ? null, withJitterEntropy ? false
-, libp11 ? null, withPkcs11 ? true
+, libp11 ? null, opensc ? null, withPkcs11 ? true
 }:
 
 with stdenv.lib;
@@ -26,6 +26,11 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     cp README.md README
+
+    ${optionalString withPkcs11 ''
+      substituteInPlace rngd.c \
+        --replace /usr/lib64/opensc-pkcs11.so ${opensc}/lib/opensc-pkcs11.so
+    ''}
   '';
 
   nativeBuildInputs = [ autoreconfHook libtool pkgconfig ];
@@ -40,7 +45,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ sysfsutils ]
     ++ optionals withGcrypt        [ libgcrypt ]
     ++ optionals withJitterEntropy [ jitterentropy ]
-    ++ optionals withNistBeacon    [ openssl curl libxml2 ]
+    ++ optionals withNistBeacon    [ curl libxml2 openssl ]
     ++ optionals withPkcs11        [ libp11 openssl ];
 
   # This shouldn't be necessary but is as of 6.7
diff --git a/pkgs/tools/system/augeas/default.nix b/pkgs/tools/system/augeas/default.nix
index 4ba876668223..a8fca06c3618 100644
--- a/pkgs/tools/system/augeas/default.nix
+++ b/pkgs/tools/system/augeas/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "augeas-${version}";
-  version = "1.11.0";
+  version = "1.12.0";
 
   src = fetchurl {
     url = "http://download.augeas.net/${name}.tar.gz";
-    sha256 = "1c507qj6dfn2dnsl27w94zs9r45xrgm07y8bqba9ry2s0psfhg1r";
+    sha256 = "11ybhb13wkkilsn7b416a1dn61m1xrq0lbdpkhp5w61jrk4l469j";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ readline libxml2 ];
diff --git a/pkgs/tools/system/journalwatch/default.nix b/pkgs/tools/system/journalwatch/default.nix
index 473d245618fa..e0aaee31217c 100644
--- a/pkgs/tools/system/journalwatch/default.nix
+++ b/pkgs/tools/system/journalwatch/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, buildPythonPackage, fetchurl, pythonOlder, systemd, pytest }:
+{ stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder, systemd, pytest }:
 
 buildPythonPackage rec {
   pname = "journalwatch";
-  name = "${pname}-${version}";
   version = "1.1.0";
   disabled = pythonOlder "3.3";
 
-
-  src = fetchurl {
-    url = "https://github.com/The-Compiler/${pname}/archive/v${version}.tar.gz";
-    sha512 = "3hvbgx95hjfivz9iv0hbhj720wvm32z86vj4a60lji2zdfpbqgr2b428lvg2cpvf71l2xn6ca5v0hzyz57qylgwqzgfrx7hqhl5g38s";
+  src = fetchFromGitHub {
+    owner = "The-Compiler";
+    repo = pname;
+    rev = "v${version}";
+    sha512 = "11g2f1w9lfqw6zxxyg7qrqpb914s6w71j0gnpw7qr7cak2l5jlf2l39dlg30y55rw7jgmf0yg77wwzd0c430mq1n6q1v8w86g1rwkzb";
   };
 
   # can be removed post 1.1.0
@@ -20,14 +20,10 @@ buildPythonPackage rec {
 
 
   doCheck = true;
-
+  checkInputs = [ pytest ];
   checkPhase = ''
-    pytest test_journalwatch.py
-  '';
-
-  buildInputs = [
     pytest
-  ];
+  '';
 
   propagatedBuildInputs = [
     systemd
diff --git a/pkgs/tools/system/ledmon/default.nix b/pkgs/tools/system/ledmon/default.nix
new file mode 100644
index 000000000000..ab11fc9e27f8
--- /dev/null
+++ b/pkgs/tools/system/ledmon/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub, perl, udev, sg3_utils }:
+
+stdenv.mkDerivation rec {
+  pname = "ledmon";
+  version = "0.92";
+
+  src = fetchFromGitHub {
+    owner = "intel";
+    repo = "ledmon";
+    rev = "v${version}";
+    sha256 = "1lz59606vf2sws5xwijxyffm8kxcf8p9qbdpczsq1b5mm3dk6lvp";
+  };
+
+  nativeBuildInputs = [
+    perl # for pod2man
+  ];
+  buildInputs = [ udev sg3_utils ];
+
+  installTargets = [ "install" "install-systemd" ];
+
+  makeFlags = [
+    "MAN_INSTDIR=${placeholder "out"}/share/man"
+    "SYSTEMD_SERVICE_INSTDIR=${placeholder "out"}/lib/systemd/system"
+    "LEDCTL_INSTDIR=${placeholder "out"}/sbin"
+    "LEDMON_INSTDIR=${placeholder "out"}/sbin"
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/intel/ledmon;
+    description = "Enclosure LED Utilities";
+    platforms = platforms.linux;
+    license = with licenses; [ gpl2 ];
+    maintainers = with stdenv.lib.maintainers; [ sorki ];
+  };
+}
diff --git a/pkgs/tools/system/netdata/default.nix b/pkgs/tools/system/netdata/default.nix
index cb22022dc431..ec30c1d070cd 100644
--- a/pkgs/tools/system/netdata/default.nix
+++ b/pkgs/tools/system/netdata/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoreconfHook, pkgconfig, zlib, libuuid, libossp_uuid, CoreFoundation, IOKit }:
+{ stdenv, fetchurl, autoreconfHook, pkgconfig, zlib, libuuid, libossp_uuid, CoreFoundation, IOKit, lm_sensors }:
 
 stdenv.mkDerivation rec{
   version = "1.11.1";
@@ -23,6 +23,11 @@ stdenv.mkDerivation rec{
       $out/libexec/netdata/plugins.d/apps.plugin.org
   '';
 
+  preConfigure = ''
+    substituteInPlace collectors/python.d.plugin/python_modules/third_party/lm_sensors.py \
+      --replace 'ctypes.util.find_library("sensors")' '"${lm_sensors.out}/lib/libsensors${stdenv.hostPlatform.extensions.sharedLibrary}"'
+  '';
+
   configureFlags = [
     "--localstatedir=/var"
     "--sysconfdir=/etc"
diff --git a/pkgs/tools/text/epubcheck/default.nix b/pkgs/tools/text/epubcheck/default.nix
new file mode 100644
index 000000000000..d9acf106e2ea
--- /dev/null
+++ b/pkgs/tools/text/epubcheck/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchzip
+, jre, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "epubcheck";
+  version = "4.2.0";
+
+  src = fetchzip {
+    url = "https://github.com/w3c/epubcheck/releases/download/v${version}/epubcheck-${version}.zip";
+    sha256 = "1bf5jbzqvgpvhbkprynxj75ilk3r6zld157vjf6k7l5g21cwyn9d";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out/lib
+    cp -r lib/* $out/lib
+
+    mkdir -p $out/libexec/epubcheck
+    cp epubcheck.jar $out/libexec/epubcheck
+
+    classpath=$out/libexec/epubcheck/epubcheck.jar
+    for jar in $out/lib/*.jar; do
+      classpath="$classpath:$jar"
+    done
+
+    mkdir -p $out/bin
+    makeWrapper ${jre}/bin/java $out/bin/epubcheck \
+      --add-flags "-classpath $classpath com.adobe.epubcheck.tool.Checker"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/w3c/epubcheck;
+    description = "Validation tool for EPUB";
+    license = with licenses; [ asl20 bsd3 mpl10 w3c ];
+    platforms = platforms.all;
+    maintainers = with maintainers; [ eadwu ];
+  };
+}
diff --git a/pkgs/tools/text/qgrep/default.nix b/pkgs/tools/text/qgrep/default.nix
new file mode 100644
index 000000000000..5f0e7461361d
--- /dev/null
+++ b/pkgs/tools/text/qgrep/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  version = "1.1";
+  pname = "qgrep";
+
+  src = fetchFromGitHub {
+    owner = "zeux";
+    repo = "qgrep";
+    rev = "v${version}";
+    sha256 = "046ccw34vz2k5jn6gyxign5gs2qi7i50jy9b74wqv7sjf5zayrh0";
+    fetchSubmodules = true;
+  };
+
+  installPhase = '' 
+    install -Dm755 qgrep $out/bin/qgrep
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Fast regular expression grep for source code with incremental index updates";
+    homepage = https://github.com/zeux/qgrep;
+    license = licenses.mit;
+    maintainers = [ maintainers.yrashk ];
+    platforms = platforms.all;
+  };
+
+}
diff --git a/pkgs/tools/text/sd/default.nix b/pkgs/tools/text/sd/default.nix
new file mode 100644
index 000000000000..6a279b834661
--- /dev/null
+++ b/pkgs/tools/text/sd/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, rustPlatform
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "sd";
+  version = "0.5.0";
+
+  src = fetchFromGitHub {
+    owner = "chmln";
+    repo = pname;
+    rev = "sd-${version}";
+    sha256 = "1y44qizciir75d1srwm1mlskhflab2b6153d19vblw410in82f5d";
+  };
+
+  cargoSha256 = "1gls68lw8a2c3gsav70l2wasrgav68q5w1nf50jsrbqq9kb4i7nb";
+
+  meta = with stdenv.lib; {
+    description = "Intuitive find & replace CLI (sed alternative)";
+    homepage = https://github.com/chmln/sd;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.amar1729 ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c39fafb320e7..fe75119d9b8c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1331,6 +1331,10 @@ in
 
   ddate = callPackage ../tools/misc/ddate { };
 
+  dedup = callPackage ../tools/backup/dedup {
+    inherit (llvmPackages) openmp;
+  };
+
   dehydrated = callPackage ../tools/admin/dehydrated { };
 
   deis = callPackage ../development/tools/deis {};
@@ -2560,6 +2564,8 @@ in
 
   eid-mw = callPackage ../tools/security/eid-mw { };
 
+  epubcheck = callPackage ../tools/text/epubcheck { };
+
   mcrcon = callPackage ../tools/networking/mcrcon {};
 
   s-tar = callPackage ../tools/archivers/s-tar {};
@@ -2580,6 +2586,8 @@ in
 
   wl-clipboard = callPackage ../tools/misc/wl-clipboard { };
 
+  z-lua = callPackage ../tools/misc/z-lua { };
+
   zabbix-cli = callPackage ../tools/misc/zabbix-cli { };
 
   zzuf = callPackage ../tools/security/zzuf { };
@@ -3520,6 +3528,8 @@ in
 
   httping = callPackage ../tools/networking/httping {};
 
+  httplz = callPackage ../tools/networking/httplz { };
+
   httpfs2 = callPackage ../tools/filesystems/httpfs { };
 
   httpstat = callPackage ../tools/networking/httpstat { };
@@ -4120,6 +4130,8 @@ in
 
   leatherman = callPackage ../development/libraries/leatherman { };
 
+  ledmon = callPackage ../tools/system/ledmon { };
+
   leela = callPackage ../tools/graphics/leela { };
 
   lftp = callPackage ../tools/networking/lftp { };
@@ -4401,6 +4413,8 @@ in
 
   mimetic = callPackage ../development/libraries/mimetic { };
 
+  minetime = callPackage ../applications/office/minetime { };
+
   minio-client = callPackage ../tools/networking/minio-client {
     buildGoPackage = buildGo110Package;
   };
@@ -4528,6 +4542,8 @@ in
 
   nabi = callPackage ../tools/inputmethods/nabi { };
 
+  nahid-fonts = callPackage ../data/fonts/nahid-fonts { };
+
   namazu = callPackage ../tools/text/namazu { };
 
   nano-wallet = libsForQt5.callPackage ../applications/altcoins/nano-wallet { };
@@ -4649,6 +4665,8 @@ in
     buildGoPackage = buildGo110Package;
   };
 
+  notable = callPackage ../applications/misc/notable { };
+
   miller = callPackage ../tools/text/miller { };
 
   milu = callPackage ../applications/misc/milu { };
@@ -4657,6 +4675,8 @@ in
 
   pa_applet = callPackage ../tools/audio/pa-applet { };
 
+  pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { };
+
   pasystray = callPackage ../tools/audio/pasystray { };
 
   phash = callPackage ../development/libraries/phash { };
@@ -4941,6 +4961,8 @@ in
 
   paulstretch = callPackage ../applications/audio/paulstretch { };
 
+  pazi = callPackage ../tools/misc/pazi { };
+
   pell = callPackage ../applications/misc/pell { };
 
   pepper = callPackage ../tools/admin/salt/pepper { };
@@ -5234,6 +5256,8 @@ in
 
   pydb = callPackage ../development/tools/pydb { };
 
+  pydf = callPackage ../applications/misc/pydf { };
+
   pygmentex = callPackage ../tools/typesetting/pygmentex { };
 
   pythonIRClib = pythonPackages.pythonIRClib;
@@ -5274,6 +5298,7 @@ in
   qdigidoc = libsForQt5.callPackage ../tools/security/qdigidoc { } ;
   esteidfirefoxplugin = callPackage ../applications/networking/browsers/mozilla-plugins/esteidfirefoxplugin { };
 
+  qgrep = callPackage ../tools/text/qgrep {};
 
   qhull = callPackage ../development/libraries/qhull { };
 
@@ -5573,6 +5598,8 @@ in
 
   scrypt = callPackage ../tools/security/scrypt { };
 
+  sd = callPackage ../tools/text/sd { };
+
   sdate = callPackage ../tools/misc/sdate { };
 
   sdcv = callPackage ../applications/misc/sdcv { };
@@ -5740,6 +5767,8 @@ in
 
   sonata = callPackage ../applications/audio/sonata { };
 
+  soundkonverter = kdeApplications.callPackage ../applications/audio/soundkonverter {};
+
   souper = callPackage ../development/compilers/souper { };
 
   sparsehash = callPackage ../development/libraries/sparsehash { };
@@ -7734,6 +7763,8 @@ in
     inherit (ocaml-ng.ocamlPackages_4_05) ocaml;
   };
 
+  pforth = callPackage ../development/compilers/pforth {};
+
   picat = callPackage ../development/compilers/picat {
     stdenv = overrideCC stdenv gcc49;
   };
@@ -7786,6 +7817,7 @@ in
   cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { };
   cargo-expand = callPackage ../development/tools/rust/cargo-expand { };
   cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { };
+  cargo-sweep = callPackage ../development/tools/rust/cargo-sweep { };
   cargo-xbuild = callPackage ../development/tools/rust/cargo-xbuild { };
 
   pyo3-pack = callPackage ../development/tools/rust/pyo3-pack { };
@@ -8072,24 +8104,10 @@ in
 
   wabt = callPackage ../development/tools/wabt { };
 
-  ### LUA MODULES
-  lua5_1 = callPackage ../development/interpreters/lua-5/5.1.nix {
-    self = lua5_1;
-  };
-  lua5_2 = callPackage ../development/interpreters/lua-5/5.2.nix {
-    self = lua5_2;
-  };
-  lua5_2_compat = callPackage ../development/interpreters/lua-5/5.2.nix {
-    compat = true;
-    self = lua5_2_compat;
-  };
-  lua5_3 = callPackage ../development/interpreters/lua-5/5.3.nix {
-    self = lua5_3;
-  };
-  lua5_3_compat = callPackage ../development/interpreters/lua-5/5.3.nix {
-    compat = true;
-    self = lua5_3_compat;
-  };
+  ### LUA interpreters
+  luaInterpreters = callPackage ./../development/interpreters/lua-5 {};
+  inherit (luaInterpreters) lua5_1 lua5_2 lua5_2_compat lua5_3 lua5_3_compat luajit_2_1 luajit_2_0;
+
   lua5 = lua5_2_compat;
   lua = lua5;
 
@@ -8100,17 +8118,6 @@ in
 
   luaPackages = lua52Packages;
 
-  # override instead ?
-  luajit_2_0 = import ../development/interpreters/luajit/2.0.nix {
-    self = luajit_2_0;
-    inherit (super) callPackage lib;
-  };
-
-  luajit_2_1 = import ../development/interpreters/luajit/2.1.nix {
-    self = luajit_2_1;
-    inherit (super) callPackage lib;
-  };
-
   luajit = luajit_2_1;
 
   luarocks = luaPackages.luarocks;
@@ -8591,9 +8598,12 @@ in
 
   awf = callPackage ../development/tools/misc/awf { };
 
-  electron = callPackage ../development/tools/electron { };
+  electron_5 = callPackage ../development/tools/electron/5.x.nix { };
+
+  electron_4 = callPackage ../development/tools/electron { };
 
   electron_3 = callPackage ../development/tools/electron/3.x.nix { };
+  electron = electron_4;
 
   autobuild = callPackage ../development/tools/misc/autobuild { };
 
@@ -13917,8 +13927,7 @@ in
   elasticmq = callPackage ../servers/elasticmq { };
 
   eventstore = callPackage ../servers/nosql/eventstore {
-    mono = mono4;
-    v8 = v8_6_x;
+    Nuget = dotnetPackages.Nuget;
   };
 
   exim = callPackage ../servers/mail/exim { };
@@ -16413,6 +16422,8 @@ in
 
   xits-math = callPackage ../data/fonts/xits-math { };
 
+  xkcd-font = callPackage ../data/fonts/xkcd-font { };
+
   xkeyboard_config = xorg.xkeyboardconfig;
 
   xlsx2csv = with python3Packages; toPythonApplication xlsx2csv;
@@ -16955,7 +16966,7 @@ in
   dbvisualizer = callPackage ../applications/misc/dbvisualizer {};
 
   dd-agent = callPackage ../tools/networking/dd-agent/5.nix { };
-  datadog-agent = callPackage ../tools/networking/dd-agent/6.nix {
+  datadog-agent = callPackage ../tools/networking/dd-agent/datadog-agent.nix {
     pythonPackages = datadog-integrations-core {};
   };
   datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { };
@@ -17388,8 +17399,6 @@ in
 
   evilvte = callPackage ../applications/misc/evilvte (config.evilvte or {});
 
-  evopedia = callPackage ../applications/misc/evopedia { };
-
   exercism = callPackage ../applications/misc/exercism { };
 
   go-motion = callPackage ../development/tools/go-motion { };
@@ -18311,7 +18320,7 @@ in
   inherit (kdeApplications)
     akonadi akregator ark dolphin dragon ffmpegthumbs filelight gwenview k3b
     kaddressbook kate kcachegrind kcalc kcharselect kcolorchooser kcontacts kdenlive kdf kdialog
-    keditbookmarks kget kgpg khelpcenter kig kleopatra kmail kmix kmplot kolourpaint kompare konsole
+    keditbookmarks kfind kget kgpg khelpcenter kig kleopatra kmail kmix kmplot kolourpaint kompare konsole
     kpkpass kitinerary kontact korganizer krdc krfb ksystemlog ktouch kwalletmanager marble minuet okular spectacle;
 
   okteta = libsForQt5.callPackage ../applications/editors/okteta { };
@@ -20008,6 +20017,8 @@ in
 
   taskserver = callPackage ../servers/misc/taskserver { };
 
+  taskopen = callPackage ../applications/misc/taskopen { };
+
   tdesktopPackages = dontRecurseIntoAttrs (callPackage ../applications/networking/instant-messengers/telegram/tdesktop { });
   tdesktop = tdesktopPackages.stable;
 
@@ -23280,6 +23291,8 @@ in
 
   ricty = callPackage ../data/fonts/ricty { };
 
+  rmount = callPackage ../tools/filesystems/rmount {};
+
   rss-glx = callPackage ../misc/screensavers/rss-glx { };
 
   run-scaled = callPackage ../tools/X11/run-scaled { };
@@ -23826,6 +23839,8 @@ in
   newlib = callPackage ../development/misc/newlib { };
   newlibCross = callPackage ../development/misc/newlib {
     stdenv = crossLibcStdenv;
-  };
+    };
+
+	omnisharp-roslyn = callPackage ../development/tools/omnisharp-roslyn { };
 
 }
diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix
index 20773fb66d32..b51af519f938 100644
--- a/pkgs/top-level/lua-packages.nix
+++ b/pkgs/top-level/lua-packages.nix
@@ -386,7 +386,7 @@ with self; {
       sha256 = "0p5583vidsm7s97zihf47c34vscwgbl86axrnj44j328v45kxb2z";
     };
 
-    propagatedBuildInputs = [ std.normalize bit32 ];
+    propagatedBuildInputs = [ std_normalize bit32 ];
 
     buildPhase = ''
       ${lua}/bin/lua build-aux/luke \
@@ -782,64 +782,6 @@ with self; {
     };
   };
 
-  std._debug = buildLuaPackage rec {
-    name = "std._debug-${version}";
-    version = "1.0";
-
-    src = fetchFromGitHub {
-      owner = "lua-stdlib";
-      repo = "_debug";
-      rev = "v${version}";
-      sha256 = "01kfs6k9j9zy4bvk13jx18ssfsmhlciyrni1x32qmxxf4wxyi65n";
-    };
-
-    # No Makefile.
-    dontBuild = true;
-
-    installPhase = ''
-      mkdir -p $out/share/lua/${lua.luaversion}/std
-      cp -r lib/std/_debug $out/share/lua/${lua.luaversion}/std/
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Manage an overall debug state, and associated hint substates.";
-      homepage    = https://lua-stdlib.github.io/_debug;
-      license     = licenses.mit;
-      maintainers = with maintainers; [ lblasc ];
-      platforms   = platforms.unix;
-    };
-  };
-
-  std.normalize = buildLuaPackage rec {
-    name = "std.normalize-${version}";
-    version = "2.0.1";
-
-    src = fetchFromGitHub {
-      owner = "lua-stdlib";
-      repo = "normalize";
-      rev = "v${version}";
-      sha256 = "1yz96r28d2wcgky6by92a21755bf4wzpn65rdv2ps0fxywgw5rda";
-    };
-
-    propagatedBuildInputs = [ std._debug ];
-
-    # No Makefile.
-    dontBuild = true;
-
-    installPhase = ''
-      mkdir -p $out/share/lua/${lua.luaversion}/std
-      cp -r lib/std/normalize $out/share/lua/${lua.luaversion}/std/
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Normalized Lua Functions";
-      homepage    = https://lua-stdlib.github.io/normalize;
-      license     = licenses.mit;
-      maintainers = with maintainers; [ lblasc ];
-      platforms   = platforms.unix;
-    };
-  };
-
   vicious = toLuaModule(stdenv.mkDerivation rec {
     name = "vicious-${version}";
     version = "2.3.1";
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index c53f355c2b19..85c961a40e94 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1314,7 +1314,7 @@ in {
 
   bottle = callPackage ../development/python-modules/bottle { };
 
-  box2d = callPackage ../development/python-modules/box2d { pkgs-box2d = pkgs.box2d; };
+  box2d = callPackage ../development/python-modules/box2d { };
 
   branca = callPackage ../development/python-modules/branca { };
 
@@ -4434,6 +4434,8 @@ in {
 
   wordfreq = callPackage ../development/python-modules/wordfreq { };
 
+  wikipedia = callPackage ../development/python-modules/wikipedia { };
+
   magic-wormhole = callPackage ../development/python-modules/magic-wormhole { };
 
   magic-wormhole-mailbox-server = callPackage ../development/python-modules/magic-wormhole-mailbox-server { };