about summary refs log tree commit diff
path: root/pkgs/development/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools')
-rw-r--r--pkgs/development/tools/analysis/cargo-tarpaulin/default.nix30
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--pkgs/development/tools/analysis/codeql/default.nix4
-rw-r--r--pkgs/development/tools/analysis/cppcheck/default.nix11
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/analysis/hopper/default.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/cutter.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix24
-rw-r--r--pkgs/development/tools/analysis/tflint/default.nix6
-rw-r--r--pkgs/development/tools/azcopy/default.nix8
-rw-r--r--pkgs/development/tools/bazel-gazelle/default.nix4
-rw-r--r--pkgs/development/tools/bazel-watcher/default.nix2
-rw-r--r--pkgs/development/tools/bazelisk/default.nix6
-rw-r--r--pkgs/development/tools/bazelisk/gomod.patch12
-rw-r--r--pkgs/development/tools/build-managers/apache-maven/builder.sh1
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bmake/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/leiningen/default.nix1
-rw-r--r--pkgs/development/tools/build-managers/mage/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix48
-rw-r--r--pkgs/development/tools/build-managers/meson/more-env-vars.patch16
-rw-r--r--pkgs/development/tools/build-managers/meson/setup-hook.sh7
-rw-r--r--pkgs/development/tools/build-managers/mill/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/qbs/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/rebar/default.nix1
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/buildah/default.nix35
-rw-r--r--pkgs/development/tools/buildah/disable-go-module-mode.patch32
-rw-r--r--pkgs/development/tools/buildah/wrapper.nix52
-rw-r--r--pkgs/development/tools/buildkit/default.nix4
-rw-r--r--pkgs/development/tools/cargo-flamegraph/default.nix6
-rw-r--r--pkgs/development/tools/cloudflare-wrangler/default.nix6
-rw-r--r--pkgs/development/tools/cloudfoundry-cli/default.nix2
-rw-r--r--pkgs/development/tools/cmake-format/default.nix4
-rw-r--r--pkgs/development/tools/conftest/default.nix8
-rw-r--r--pkgs/development/tools/container-linux-config-transpiler/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildkite-agent/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix12
-rw-r--r--pkgs/development/tools/continuous-integration/drone-cli/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/drone/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/fly/default.nix18
-rw-r--r--pkgs/development/tools/continuous-integration/fly/fly.bash10
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix16
-rw-r--r--pkgs/development/tools/coursier/default.nix4
-rw-r--r--pkgs/development/tools/cue/default.nix6
-rw-r--r--pkgs/development/tools/database/dbmate/default.nix8
-rw-r--r--pkgs/development/tools/database/liquibase/default.nix4
-rw-r--r--pkgs/development/tools/database/squirrel-sql/default.nix4
-rw-r--r--pkgs/development/tools/deis/default.nix4
-rw-r--r--pkgs/development/tools/dep2nix/default.nix2
-rw-r--r--pkgs/development/tools/dive/default.nix4
-rw-r--r--pkgs/development/tools/doctl/default.nix20
-rw-r--r--pkgs/development/tools/documentation/mdsh/default.nix6
-rw-r--r--pkgs/development/tools/electron/default.nix36
-rw-r--r--pkgs/development/tools/electron/generic.nix2
-rw-r--r--pkgs/development/tools/fac/default.nix2
-rw-r--r--pkgs/development/tools/fdroidserver/default.nix4
-rw-r--r--pkgs/development/tools/flatpak-builder/default.nix4
-rw-r--r--pkgs/development/tools/flyway/default.nix4
-rw-r--r--pkgs/development/tools/git-quick-stats/default.nix4
-rw-r--r--pkgs/development/tools/glade/default.nix65
-rw-r--r--pkgs/development/tools/glpaper/default.nix29
-rw-r--r--pkgs/development/tools/go-protobuf/default.nix4
-rw-r--r--pkgs/development/tools/go-tools/default.nix10
-rw-r--r--pkgs/development/tools/go2nix/default.nix4
-rw-r--r--pkgs/development/tools/gocode-gomod/default.nix2
-rw-r--r--pkgs/development/tools/godef/default.nix4
-rw-r--r--pkgs/development/tools/gofumpt/default.nix4
-rw-r--r--pkgs/development/tools/gogetdoc/default.nix4
-rw-r--r--pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--pkgs/development/tools/gomodifytags/default.nix8
-rw-r--r--pkgs/development/tools/gopkgs/default.nix4
-rw-r--r--pkgs/development/tools/gopls/default.nix9
-rw-r--r--pkgs/development/tools/gotestsum/default.nix8
-rw-r--r--pkgs/development/tools/gotools/default.nix4
-rw-r--r--pkgs/development/tools/hcloud/default.nix4
-rw-r--r--pkgs/development/tools/heroku/default.nix4
-rw-r--r--pkgs/development/tools/hobbes/default.nix9
-rw-r--r--pkgs/development/tools/java/cfr/default.nix4
-rw-r--r--pkgs/development/tools/jbake/default.nix4
-rw-r--r--pkgs/development/tools/just/default.nix21
-rw-r--r--pkgs/development/tools/kcli/default.nix4
-rw-r--r--pkgs/development/tools/kind/default.nix12
-rw-r--r--pkgs/development/tools/kind/deps.nix741
-rw-r--r--pkgs/development/tools/kubectx/default.nix4
-rw-r--r--pkgs/development/tools/kubeprompt/default.nix4
-rw-r--r--pkgs/development/tools/kubie/default.nix25
-rw-r--r--pkgs/development/tools/kustomize/default.nix4
-rw-r--r--pkgs/development/tools/lazygit/default.nix4
-rw-r--r--pkgs/development/tools/metals/default.nix4
-rw-r--r--pkgs/development/tools/micronaut/default.nix4
-rw-r--r--pkgs/development/tools/misc/act/default.nix4
-rw-r--r--pkgs/development/tools/misc/arcanist/default.nix10
-rw-r--r--pkgs/development/tools/misc/ccls/default.nix4
-rw-r--r--pkgs/development/tools/misc/circleci-cli/default.nix8
-rw-r--r--pkgs/development/tools/misc/clojure-lsp/default.nix4
-rw-r--r--pkgs/development/tools/misc/dfu-programmer/default.nix1
-rw-r--r--pkgs/development/tools/misc/editorconfig-checker/default.nix16
-rw-r--r--pkgs/development/tools/misc/go-license-detector/default.nix4
-rw-r--r--pkgs/development/tools/misc/help2man/default.nix4
-rw-r--r--pkgs/development/tools/misc/hound/default.nix2
-rw-r--r--pkgs/development/tools/misc/hydra/common.nix6
-rw-r--r--pkgs/development/tools/misc/intltool/default.nix6
-rw-r--r--pkgs/development/tools/misc/mkcert/default.nix4
-rw-r--r--pkgs/development/tools/misc/nix-build-uncached/default.nix31
-rw-r--r--pkgs/development/tools/misc/pkgconf/default.nix4
-rw-r--r--pkgs/development/tools/misc/ptags/default.nix32
-rw-r--r--pkgs/development/tools/misc/reviewdog/default.nix6
-rw-r--r--pkgs/development/tools/misc/stm32flash/default.nix2
-rw-r--r--pkgs/development/tools/misc/strace/default.nix2
-rw-r--r--pkgs/development/tools/misc/sysbench/default.nix4
-rw-r--r--pkgs/development/tools/misc/teensy-loader-cli/default.nix1
-rw-r--r--pkgs/development/tools/misc/terracognita/default.nix4
-rw-r--r--pkgs/development/tools/misc/texlab/default.nix6
-rw-r--r--pkgs/development/tools/misc/tockloader/default.nix27
-rw-r--r--pkgs/development/tools/misc/tokei/default.nix6
-rw-r--r--pkgs/development/tools/misc/uncrustify/default.nix4
-rw-r--r--pkgs/development/tools/misc/ycmd/default.nix4
-rw-r--r--pkgs/development/tools/mod/default.nix8
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/default.nix4
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/default.nix7
-rw-r--r--pkgs/development/tools/oq/default.nix37
-rw-r--r--pkgs/development/tools/out-of-tree/default.nix2
-rw-r--r--pkgs/development/tools/packer/default.nix4
-rw-r--r--pkgs/development/tools/packet-cli/default.nix4
-rw-r--r--pkgs/development/tools/pandoc/default.nix29
-rw-r--r--pkgs/development/tools/parsing/jshon/default.nix22
-rw-r--r--pkgs/development/tools/parsing/re2c/default.nix14
-rw-r--r--pkgs/development/tools/pet/default.nix4
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/cli.nix6
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/default.nix310
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh24
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix33
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/pip-build-hook.sh50
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-path.py9
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/lib.nix184
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix173
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix1233
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix66
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix147
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/semver.nix85
-rwxr-xr-xpkgs/development/tools/poetry2nix/update2
-rw-r--r--pkgs/development/tools/proto-contrib/default.nix4
-rw-r--r--pkgs/development/tools/protoc-gen-doc/default.nix4
-rw-r--r--pkgs/development/tools/prototool/default.nix6
-rw-r--r--pkgs/development/tools/pxview/default.nix27
-rw-r--r--pkgs/development/tools/redis-dump/default.nix2
-rw-r--r--pkgs/development/tools/reftools/default.nix4
-rw-r--r--pkgs/development/tools/renderizer/default.nix4
-rw-r--r--pkgs/development/tools/richgo/default.nix4
-rw-r--r--pkgs/development/tools/rshell/default.nix4
-rw-r--r--pkgs/development/tools/run/default.nix8
-rw-r--r--pkgs/development/tools/rust/cargo-deny/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-make/Cargo.lock60
-rw-r--r--pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-udeps/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-xbuild/default.nix6
-rw-r--r--pkgs/development/tools/rust/cbindgen/default.nix6
-rw-r--r--pkgs/development/tools/scalafmt/default.nix4
-rw-r--r--pkgs/development/tools/selenium/chromedriver/default.nix6
-rw-r--r--pkgs/development/tools/skaffold/default.nix8
-rw-r--r--pkgs/development/tools/skopeo/default.nix53
-rw-r--r--pkgs/development/tools/solarus-quest-editor/default.nix4
-rw-r--r--pkgs/development/tools/spring-boot-cli/default.nix (renamed from pkgs/development/tools/spring-boot/default.nix)25
-rw-r--r--pkgs/development/tools/toxiproxy/default.nix8
-rw-r--r--pkgs/development/tools/unityhub/default.nix9
-rw-r--r--pkgs/development/tools/vagrant/default.nix4
-rw-r--r--pkgs/development/tools/vagrant/gemset.nix37
-rw-r--r--pkgs/development/tools/vcstool/default.nix4
-rw-r--r--pkgs/development/tools/vgo2nix/default.nix12
-rw-r--r--pkgs/development/tools/vgo2nix/deps.nix71
-rw-r--r--pkgs/development/tools/vultr-cli/default.nix22
-rw-r--r--pkgs/development/tools/vultr/default.nix6
-rw-r--r--pkgs/development/tools/wabt/default.nix19
-rw-r--r--pkgs/development/tools/wabt/version.patch28
-rw-r--r--pkgs/development/tools/wally-cli/default.nix2
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch72
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/default.nix6
-rw-r--r--pkgs/development/tools/ws/default.nix1
-rw-r--r--pkgs/development/tools/xcbuild/wrapper.nix4
-rw-r--r--pkgs/development/tools/yq-go/default.nix4
183 files changed, 2395 insertions, 2427 deletions
diff --git a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
new file mode 100644
index 000000000000..1d880f04dd34
--- /dev/null
+++ b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -0,0 +1,30 @@
+{ lib, pkgconfig, rustPlatform, fetchFromGitHub, openssl }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-tarpaulin";
+  version = "0.12.4";
+
+  src = fetchFromGitHub {
+    owner = "xd009642";
+    repo = "tarpaulin";
+    rev = "${version}";
+    sha256 = "0y58800n61s8wmpcpgw5vpywznwwbp0d30fz2z0kjx4mpwmva4g4";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+  ];
+  buildInputs = [ openssl ];
+
+  cargoSha256 = "12hkzq2xn4g5k94kjirjnnz4dddqg7akxnp3qyfkz092vvp25k9z";
+  #checkFlags = [ "--test-threads" "1" ];
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A code coverage tool for Rust projects";
+    homepage = "https://github.com/xd009642/tarpaulin";
+    license = with licenses; [ mit /* or */ asl20 ];
+    maintainers = with maintainers; [ hugoreeves ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index 539c2f7d1910..3367588bb3b9 100644
--- a/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  version = "8.31";
+  version = "8.32";
   pname = "checkstyle";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "03dn07lissr2dkhi44wlkrbsby4zfvwai8gykc3xjgs46jy05rf8";
+    sha256 = "18ahdphxfcfi2vghl11kmj089hyh9iawll3cwxrqsdqak0748ijs";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/analysis/codeql/default.nix b/pkgs/development/tools/analysis/codeql/default.nix
index f722a155086f..f930bb6e578f 100644
--- a/pkgs/development/tools/analysis/codeql/default.nix
+++ b/pkgs/development/tools/analysis/codeql/default.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "codeql";
-  version = "2.1.0";
+  version = "2.1.3";
 
   dontConfigure = true;
   dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
-    sha256 = "1vp4f5kwmxc4j59cdzwj0jh0n4c05hkvssvv9ii6w88phzblzpjk";
+    sha256 = "1b0hqc8zs6v47w9sjk40sbj1fw5x5bxg7kw9s84y6s60yr897376";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/analysis/cppcheck/default.nix b/pkgs/development/tools/analysis/cppcheck/default.nix
index 6642a833cf17..bdd275a218b8 100644
--- a/pkgs/development/tools/analysis/cppcheck/default.nix
+++ b/pkgs/development/tools/analysis/cppcheck/default.nix
@@ -1,18 +1,19 @@
-{ stdenv, fetchurl, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre }:
+{ stdenv, fetchurl, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre, withZ3 ? true, z3 }:
 
 stdenv.mkDerivation rec {
   pname = "cppcheck";
-  version = "1.90";
+  version = "2.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "10qqyvx44llbchwqjyipra0nzqqkb9majpp582ac55imc5b8sxa3";
+    sha256 = "0gssnb50cndr77xva4nar4a82ii0vfqy96dlm27gb7pd6xmd6xsz";
   };
 
-  buildInputs = [ pcre ];
+  buildInputs = [ pcre ] ++ stdenv.lib.optionals withZ3 [ z3 ];
   nativeBuildInputs = [ libxslt docbook_xsl docbook_xml_dtd_45 ];
 
-  makeFlags = [ "PREFIX=$(out)" "FILESDIR=$(out)/cfg" "HAVE_RULES=yes" ];
+  makeFlags = [ "PREFIX=$(out)" "FILESDIR=$(out)/cfg" "HAVE_RULES=yes" ]
+   ++ stdenv.lib.optionals withZ3 [ "USE_Z3=yes" "CPPFLAGS=-DNEW_Z3=1" ];
 
   outputs = [ "out" "man" ];
 
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 29ea3993b1c6..8cd0246c62f5 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.123.0";
+  version = "0.125.1";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "0dsp8q3v9smjli2bkldkhzh2z032zjmqbzzchb5j18r4vz4hif16";
+    sha256 = "0c6ai2fcssys8xd445xxc0zdn3jz6kcy85mac1p89mnlqd1r1xk4";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/hopper/default.nix b/pkgs/development/tools/analysis/hopper/default.nix
index 4fbf986e41a1..8a265d89849d 100644
--- a/pkgs/development/tools/analysis/hopper/default.nix
+++ b/pkgs/development/tools/analysis/hopper/default.nix
@@ -12,12 +12,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "hopper";
-  version = "4.5.22";
+  version = "4.5.27";
   rev = "v${lib.versions.major version}";
 
   src = fetchurl {
     url = "https://d2ap6ypl1xbe4k.cloudfront.net/Hopper-${rev}-${version}-Linux.pkg.tar.xz";
-    sha256 = "1321i9ls5k677diwfccrjinzzb5586ygdgax7ryyha3ccdj1ikda";
+    sha256 = "1c0lyj20kvb6ljf7zk6hzs70bl5fwnmyiv6w3hhr079bgn4fq4m0";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/development/tools/analysis/radare2/cutter.nix b/pkgs/development/tools/analysis/radare2/cutter.nix
index e64f39a49609..3f90e5f73436 100644
--- a/pkgs/development/tools/analysis/radare2/cutter.nix
+++ b/pkgs/development/tools/analysis/radare2/cutter.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "radare2-cutter";
-  version = "1.10.2";
+  version = "1.10.3";
 
   src = fetchFromGitHub {
     owner = "radareorg";
     repo = "cutter";
     rev = "v${version}";
-    sha256 = "1icv56gxpzdjqn37pk3g99vgpljdc77i6k0x601iw2885s7s01n6";
+    sha256 = "0qj8jyij02nif4jpirl09ygwnv8a9zi3vkb5sf5s8mg7qwlpnvyk";
   };
 
   postUnpack = "export sourceRoot=$sourceRoot/src";
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index 48a1f20cfd96..f77ea1602f4f 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -110,22 +110,22 @@ in {
   #<generated>
   # DO NOT EDIT! Automatically generated by ./update.py
   radare2 = generic {
-    version_commit = "24088";
-    gittap = "4.3.1";
-    gittip = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
-    rev = "4.3.1";
-    version = "4.3.1";
-    sha256 = "0fiy6aj8xf9anpkk2vpkx8x0m2f26rhjb92nmg61xj13dmhchh30";
+    version_commit = "24545";
+    gittap = "4.4.0";
+    gittip = "9ea0b7ce566cfdcfb3513f407c4056915204294a";
+    rev = "4.4.0";
+    version = "4.4.0";
+    sha256 = "0gwdnrnk7wdgkajp2qwg4fyplh7nsbmf01bzx07px6xmiscd9z2s";
     cs_ver = "4.0.1";
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
   };
   r2-for-cutter = generic {
-    version_commit = "24088";
-    gittap = "4.3.1";
-    gittip = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
-    rev = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
-    version = "2020-03-05";
-    sha256 = "0fiy6aj8xf9anpkk2vpkx8x0m2f26rhjb92nmg61xj13dmhchh30";
+    version_commit = "24605";
+    gittap = "4.4.0";
+    gittip = "9ea0b7ce566cfdcfb3513f407c4056915204294a";
+    rev = "9ea0b7ce566cfdcfb3513f407c4056915204294a";
+    version = "2020-04-14";
+    sha256 = "0gwdnrnk7wdgkajp2qwg4fyplh7nsbmf01bzx07px6xmiscd9z2s";
     cs_ver = "4.0.1";
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
   };
diff --git a/pkgs/development/tools/analysis/tflint/default.nix b/pkgs/development/tools/analysis/tflint/default.nix
index 8ad237bd1d2d..189365008aa1 100644
--- a/pkgs/development/tools/analysis/tflint/default.nix
+++ b/pkgs/development/tools/analysis/tflint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.15.5";
+  version = "0.16.1";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0mdxs019vzpfxaqkw4nb79p3rydril0ihbn55n4yyh0fznv6zzxi";
+    sha256 = "1sh34zrk90sfi3x48d583izzw2bijnpsv6yqslzjpvsgkg8d96vz";
   };
 
-  modSha256 = "0ksblhra7ln4ryggr2x8fzl8a7ljz5zdjgdxz82c75wd7wdbw8f5";
+  vendorSha256 = "0xgv4jsrh8rfas7577xqv609pac05rvyshfm8vjx0kv38rnx3hfv";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/azcopy/default.nix b/pkgs/development/tools/azcopy/default.nix
index 328092feafc5..903245deb31e 100644
--- a/pkgs/development/tools/azcopy/default.nix
+++ b/pkgs/development/tools/azcopy/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "azure-storage-azcopy";
-  version = "10.3.4";
+  version = "10.4.3";
 
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-storage-azcopy";
     rev = version;
-    sha256 = "16pdvcgy1d5dfqk3as23j45rkwfrv232n384cj5wfz9qwijkcy5g";
+    sha256 = "0yl7iznjyng1i3d994qrryllni702gga7h45sx8i3sgpy8544yjf";
   };
 
   subPackages = [ "." ];
 
-  modSha256 = "07cy2zi7m2pkbfdcy659x4k5j2w60cmjy8kxv1dcii3dc6ls4bvb";
+  vendorSha256 = "1276k2hpyr7bqp6hdi576xcdcd2c8vz100jpls663z7vb2rbpvxf";
 
   postInstall = ''
     ln -rs "$out/bin/azure-storage-azcopy" "$out/bin/azcopy"
@@ -24,4 +24,4 @@ buildGoModule rec {
     license = licenses.mit;
     description = "The new Azure Storage data transfer utility - AzCopy v10";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/bazel-gazelle/default.nix b/pkgs/development/tools/bazel-gazelle/default.nix
index ca2a0ec1e682..ff019e785100 100644
--- a/pkgs/development/tools/bazel-gazelle/default.nix
+++ b/pkgs/development/tools/bazel-gazelle/default.nix
@@ -14,7 +14,7 @@ buildGoModule rec {
     sha256 = "1rw9zq8rmc0zr91kk70xl67dl6jx4dswwisv3bd1f16yncqgv2a1";
   };
 
-  modSha256 = "0bfhy0ig8apxb5qzxjdj6q7jr2i6rdq0ffby0pha8viadah8v2rm";
+  vendorSha256 = null;
 
   subPackages = [ "cmd/gazelle" ];
 
@@ -28,4 +28,4 @@ buildGoModule rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ kalbasit ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/bazel-watcher/default.nix b/pkgs/development/tools/bazel-watcher/default.nix
index 9cdd72eeaaf4..2d9b99a35f86 100644
--- a/pkgs/development/tools/bazel-watcher/default.nix
+++ b/pkgs/development/tools/bazel-watcher/default.nix
@@ -60,7 +60,7 @@ buildBazelPackage rec {
       sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
     '';
 
-    sha256 = "0wj573dcirssr2cmq90b4yl57mv3gsxaj1s26afvkz1dvyxmq7sz";
+    sha256 = "0ili0123xcl0mjcrn4r1r1q9d7a8a3bbh9r3zhlshl39awfm4r2d";
   };
 
   buildAttrs = {
diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix
index 80ec4c4f448d..d59e409b5ddf 100644
--- a/pkgs/development/tools/bazelisk/default.nix
+++ b/pkgs/development/tools/bazelisk/default.nix
@@ -4,6 +4,8 @@ buildGoModule rec {
   pname = "bazelisk";
   version = "1.4.0";
 
+  patches = [ ./gomod.patch ];
+
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
@@ -11,7 +13,7 @@ buildGoModule rec {
     sha256 = "14zp0bi0p1rfbx1pxi5y28ndxwbqbvfx0pvy3jh1mnx5qsii1gcq";
   };
 
-  modSha256 = "1w8k659ifapcxbbim0nf7wd7w10bhlagc33q08izh84gcgsh0yyz";
+  vendorSha256 = "10156k90ky3znb9rxhy7zasskxmlcs5cn9f3xk25ana1c66vxszr";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.BazeliskVersion=${version}" ];
 
@@ -24,4 +26,4 @@ buildGoModule rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ elasticdog ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/bazelisk/gomod.patch b/pkgs/development/tools/bazelisk/gomod.patch
new file mode 100644
index 000000000000..e5ff46bfa7bf
--- /dev/null
+++ b/pkgs/development/tools/bazelisk/gomod.patch
@@ -0,0 +1,12 @@
+diff --git a/go.mod b/go.mod
+index 8eef134..54382cb 100644
+--- a/go.mod
++++ b/go.mod
+@@ -3,6 +3,7 @@ module github.com/bazelbuild/bazelisk
+ go 1.14
+ 
+ require (
++	github.com/bazelbuild/rules_go v0.22.4
+ 	github.com/hashicorp/go-version v1.2.0
+ 	github.com/mitchellh/go-homedir v1.1.0
+ )
diff --git a/pkgs/development/tools/build-managers/apache-maven/builder.sh b/pkgs/development/tools/build-managers/apache-maven/builder.sh
index 2760bb95fcf5..dcc38b9ec74a 100644
--- a/pkgs/development/tools/build-managers/apache-maven/builder.sh
+++ b/pkgs/development/tools/build-managers/apache-maven/builder.sh
@@ -6,6 +6,7 @@ mkdir -p $out/maven
 cp -r $name/* $out/maven
 
 makeWrapper $out/maven/bin/mvn $out/bin/mvn --set-default JAVA_HOME "$jdk"
+makeWrapper $out/maven/bin/mvnDebug $out/bin/mvnDebug --set-default JAVA_HOME "$jdk"
 
 # Add the maven-axis and JIRA plugin by default when using maven 1.x
 if [ -e $out/maven/bin/maven ]
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
index f6d112800b68..6b8269584bd2 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
@@ -64,7 +64,7 @@ buildBazelPackage rec {
       sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
     '';
 
-    sha256 = "141kw2zpr612xdcrg6x9kslg4d5b3fbpzx0vgp3lqwdihfj3sc1l";
+    sha256 = "1hzb84zxav68ysdwkimaaz0b9rq95k3bgifw01m644v7idabrz50";
   };
 
   buildAttrs = {
diff --git a/pkgs/development/tools/build-managers/bmake/default.nix b/pkgs/development/tools/build-managers/bmake/default.nix
index 944bbd9d4bb3..499ef7a19b31 100644
--- a/pkgs/development/tools/build-managers/bmake/default.nix
+++ b/pkgs/development/tools/build-managers/bmake/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bmake";
-  version = "20200318";
+  version = "20200506";
 
   src = fetchurl {
     url    = "http://www.crufty.net/ftp/pub/sjg/${pname}-${version}.tar.gz";
-    sha256 = "10rcgv0hd5axm2b41a5xaig6iqbpyqfp2q7llr7zc3mnbacwaz35";
+    sha256 = "1qiq6lvlg2hqiq03slv4vzv3bn4cr3w95r3i6m5fa4hgn2dkrhqa";
   };
 
   nativeBuildInputs = [ getopt ];
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index ac41394e6a83..05c7a55b9d2b 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -19,12 +19,12 @@ stdenv.mkDerivation rec {
           + lib.optionalString useNcurses "-cursesUI"
           + lib.optionalString withQt5 "-qt5UI"
           + lib.optionalString useQt4 "-qt4UI";
-  version = "3.17.0";
+  version = "3.17.2";
 
   src = fetchurl {
     url = "${meta.homepage}files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
     # compare with https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}-SHA-256.txt
-    sha256 = "0iq8y1rb5dqnzrwy4lssr76hbnnvh54q2ympl97wrshma6shak5p";
+    sha256 = "199srp8yfai51pcbpmfyc4s8vzrmh2dm91bp582hj2l29x634xzw";
   };
 
   patches = [
@@ -71,6 +71,11 @@ stdenv.mkDerivation rec {
     "--docdir=share/doc/${pname}${version}"
   ] ++ (if useSharedLibraries then [ "--no-system-jsoncpp" "--system-libs" ] else [ "--no-system-libs" ]) # FIXME: cleanup
     ++ lib.optional (useQt4 || withQt5) "--qt-gui"
+    # Workaround https://gitlab.kitware.com/cmake/cmake/-/issues/20568
+    ++ lib.optionals stdenv.hostPlatform.is32bit [
+      "CFLAGS=-D_FILE_OFFSET_BITS=64"
+      "CXXFLAGS=-D_FILE_OFFSET_BITS=64"
+    ]
     ++ [
     "--"
     # We should set the proper `CMAKE_SYSTEM_NAME`.
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index cc44ac1a2208..d7aec3527b3b 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -1,7 +1,7 @@
 { lib, python3, git, pkgconfig }:
 
 # Note:
-# Conan has specific dependency demanands; check
+# Conan has specific dependency demands; check
 #     https://github.com/conan-io/conan/blob/master/conans/requirements.txt
 #     https://github.com/conan-io/conan/blob/master/conans/requirements_server.txt
 # on the release branch/commit we're packaging.
@@ -39,12 +39,12 @@ let newPython = python3.override {
 };
 
 in newPython.pkgs.buildPythonApplication rec {
-  version = "1.24.0";
+  version = "1.25.0";
   pname = "conan";
 
   src = newPython.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0nkh4f6plamijwcfw536ydm0i04y74qmkh5l1nanyb8p0c3z3x0y";
+    sha256 = "1wgmx6s4h5m6zixb3wlaicy56rsqcy2srzmvii80xdx9g5wvi9pv";
   };
 
   propagatedBuildInputs = with newPython.pkgs; [
@@ -90,7 +90,8 @@ in newPython.pkgs.buildPythonApplication rec {
 
   postPatch = ''
     substituteInPlace conans/requirements.txt \
-      --replace "PyYAML>=3.11, <3.14.0" "PyYAML"
+      --replace "PyYAML>=3.11, <3.14.0" "PyYAML" \
+      --replace "deprecation>=2.0, <2.1" "deprecation"
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index 07a95539f8d6..713f499ce2b2 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -48,6 +48,5 @@ stdenv.mkDerivation rec {
     description = "Project automation for Clojure";
     license = stdenv.lib.licenses.epl10;
     platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = with stdenv.lib.maintainers; [ the-kenny ];
   };
 }
diff --git a/pkgs/development/tools/build-managers/mage/default.nix b/pkgs/development/tools/build-managers/mage/default.nix
index 37cea6adb1a5..ed145d38c7f7 100644
--- a/pkgs/development/tools/build-managers/mage/default.nix
+++ b/pkgs/development/tools/build-managers/mage/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0lazf4r5ps1s04pvz608qaxbrbc6dv0j99n39iv42zwxxh0mbd0p";
   };
 
-  modSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
+  vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
 
   buildFlagsArray = [
     "-ldflags="
@@ -27,4 +27,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ swdunlop ];
     platforms = platforms.all;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 0dbe9ec78420..a2dc1424d65f 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -3,27 +3,16 @@
 , stdenv
 , writeTextDir
 , substituteAll
-, targetPackages
+, pkgsHostHost
 }:
 
-let
-  # See https://mesonbuild.com/Reference-tables.html#cpu-families
-  cpuFamilies = {
-    aarch64  = "aarch64";
-    armv5tel = "arm";
-    armv6l   = "arm";
-    armv7l   = "arm";
-    i686     = "x86";
-    x86_64   = "x86_64";
-  };
-in
 python3Packages.buildPythonApplication rec {
   pname = "meson";
-  version = "0.54.0";
+  version = "0.54.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "3eVybXeBEqy9Sme7NjOrLuddM9HoeaYoOntKRMM2PCc=";
+    sha256 = "L3b7RXJ2K+E+5HkpJhAJG0UJr1eIvM6zkf4iK80Cltw=";
   };
 
   postFixup = ''
@@ -45,6 +34,11 @@ python3Packages.buildPythonApplication rec {
     # We remove the check so multiple outputs can work sanely.
     ./allow-dirs-outside-of-prefix.patch
 
+    # Meson is currently inspecting fewer variables than autoconf does, which
+    # makes it harder for us to use setup hooks, etc.  Taken from
+    # https://github.com/mesonbuild/meson/pull/6827
+    ./more-env-vars.patch
+
     # Unlike libtool, vanilla Meson does not pass any information
     # about the path library will be installed to to g-ir-scanner,
     # breaking the GIR when path other than ${!outputLib}/lib is used.
@@ -65,35 +59,15 @@ python3Packages.buildPythonApplication rec {
 
   setupHook = ./setup-hook.sh;
 
-  crossFile = writeTextDir "cross-file.conf" ''
-    [binaries]
-    c = '${targetPackages.stdenv.cc.targetPrefix}cc'
-    cpp = '${targetPackages.stdenv.cc.targetPrefix}c++'
-    ar = '${targetPackages.stdenv.cc.bintools.targetPrefix}ar'
-    strip = '${targetPackages.stdenv.cc.bintools.targetPrefix}strip'
-    pkgconfig = 'pkg-config'
-    ld = '${targetPackages.stdenv.cc.targetPrefix}ld'
-    objcopy = '${targetPackages.stdenv.cc.targetPrefix}objcopy'
-
-    [properties]
-    needs_exe_wrapper = true
-
-    [host_machine]
-    system = '${targetPackages.stdenv.targetPlatform.parsed.kernel.name}'
-    cpu_family = '${cpuFamilies.${targetPackages.stdenv.targetPlatform.parsed.cpu.name}}'
-    cpu = '${targetPackages.stdenv.targetPlatform.parsed.cpu.name}'
-    endian = ${if targetPackages.stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"}
-  '';
+  # Ensure there will always be a native C compiler when meson is used, as a
+  # workaround until https://github.com/mesonbuild/meson/pull/6512 lands.
+  depsHostHostPropagated = [ pkgsHostHost.stdenv.cc ];
 
   # 0.45 update enabled tests but they are failing
   doCheck = false;
   # checkInputs = [ ninja pkgconfig ];
   # checkPhase = "python ./run_project_tests.py";
 
-  inherit (stdenv) cc;
-
-  isCross = stdenv.targetPlatform != stdenv.hostPlatform;
-
   meta = with lib; {
     homepage = "https://mesonbuild.com";
     description = "SCons-like build system that use python as a front-end language and Ninja as a building backend";
diff --git a/pkgs/development/tools/build-managers/meson/more-env-vars.patch b/pkgs/development/tools/build-managers/meson/more-env-vars.patch
new file mode 100644
index 000000000000..a8f860f03cc7
--- /dev/null
+++ b/pkgs/development/tools/build-managers/meson/more-env-vars.patch
@@ -0,0 +1,16 @@
+diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
+index ac13a710..e0d07c51 100644
+--- a/mesonbuild/envconfig.py
++++ b/mesonbuild/envconfig.py
+@@ -119,9 +119,9 @@ def get_env_var_pair(for_machine: MachineChoice,
+         # compiling we fall back on the unprefixed host version. This
+         # allows native builds to never need to worry about the 'BUILD_*'
+         # ones.
+-        ([var_name + '_FOR_BUILD'] if is_cross else [var_name]),
++        [var_name + '_FOR_BUILD'] + ([] if is_cross else [var_name]),
+         # Always just the unprefixed host verions
+-        ([] if is_cross else [var_name]),
++        [var_name],
+     )[for_machine]
+     for var in candidates:
+         value = os.environ.get(var)
diff --git a/pkgs/development/tools/build-managers/meson/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh
index 8d76ecdaf32b..3d946fcffd52 100644
--- a/pkgs/development/tools/build-managers/meson/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/meson/setup-hook.sh
@@ -5,11 +5,6 @@ mesonConfigurePhase() {
         mesonFlags="--prefix=$prefix $mesonFlags"
     fi
 
-    # Build release by default.
-    if [ -n "@isCross@" ]; then
-      crossMesonFlags="--cross-file=@crossFile@/cross-file.conf"
-    fi
-
     # See multiple-outputs.sh and meson’s coredata.py
     mesonFlags="\
         --libdir=${!outputLib}/lib --libexecdir=${!outputLib}/libexec \
@@ -25,7 +20,7 @@ mesonConfigurePhase() {
 
     echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}"
 
-    CC=@cc@/bin/cc CXX=@cc@/bin/c++ meson build $mesonFlags "${mesonFlagsArray[@]}"
+    meson build $mesonFlags "${mesonFlagsArray[@]}"
     cd build
 
     if ! [[ -v enableParallelBuilding ]]; then
diff --git a/pkgs/development/tools/build-managers/mill/default.nix b/pkgs/development/tools/build-managers/mill/default.nix
index 844442611327..dffdbdb9aed4 100644
--- a/pkgs/development/tools/build-managers/mill/default.nix
+++ b/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.6.1";
+  version = "0.7.1";
 
   src = fetchurl {
     url = "https://github.com/lihaoyi/mill/releases/download/${version}/${version}";
-    sha256 = "1blar5dxhmxlwxhmq8wv0xvhy200qks6xj12n54qx9d5qp300ncw";
+    sha256 = "1fa7cjrp16618hj6xzrxiy44ghxvzgkvygzdzyi8jj2y5jnwxf10";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/build-managers/qbs/default.nix b/pkgs/development/tools/build-managers/qbs/default.nix
index 0649cd7c5957..d4f94c1aed97 100644
--- a/pkgs/development/tools/build-managers/qbs/default.nix
+++ b/pkgs/development/tools/build-managers/qbs/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   pname = "qbs";
 
-  version = "1.15.0";
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     owner = "qbs";
     repo = "qbs";
     rev = "v${version}";
-    sha256 = "0hq2lx5w5lsiy9c69bcps4wyn2sa9s88hj0bq95p93sfiwq6mxlr";
+    sha256 = "1kg11s3figpkvgd85p0zk416s57gnvlzrz1isbc2lv13adidf041";
   };
 
   nativeBuildInputs = [ qmake ];
diff --git a/pkgs/development/tools/build-managers/rebar/default.nix b/pkgs/development/tools/build-managers/rebar/default.nix
index 39366c7a9cac..1c5996c6b1cf 100644
--- a/pkgs/development/tools/build-managers/rebar/default.nix
+++ b/pkgs/development/tools/build-managers/rebar/default.nix
@@ -36,7 +36,6 @@ stdenv.mkDerivation {
       '';
 
     platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.the-kenny ];
     license = stdenv.lib.licenses.asl20;
   };
 }
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 2336900bf856..64a2cedd1c97 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.3.9";
+  version = "1.3.10";
 
   src = fetchurl {
     urls = [
       "https://piccolo.link/sbt-${version}.tgz"
       "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
     ];
-    sha256 = "06k4dyb5gjnqx70akjfb65hiafh683800bncbq33kmq77arfkm7c";
+    sha256 = "1023qcbdbwl40l7mgyd3j0ggr6paz1zs2q787ym52dhrcibhcq1h";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index 84b286313082..d033fe52e6c2 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -1,45 +1,51 @@
 { stdenv
-, buildGoPackage
+, buildGoModule
 , fetchFromGitHub
 , installShellFiles
 , pkg-config
 , gpgme
-, libgpgerror
 , lvm2
 , btrfs-progs
+, libapparmor
 , libselinux
 , libseccomp
 }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "buildah";
-  version = "1.14.8";
+  version = "1.14.9";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    sha256 = "187cvb3i5cwm7cwxmzpl2ca7900yb6v6b6cybyz5mnd5ccy5ff1q";
+    sha256 = "1vp59xp374wr7sbx89aikz4rv8fdg0a40v06saryxww9iqyvk8wp";
   };
 
-  outputs = [ "bin" "man" "out" ];
+  outputs = [ "out" "man" ];
 
-  goPackagePath = "github.com/containers/buildah";
-  excludedPackages = [ "tests" ];
+  vendorSha256 = null;
 
   nativeBuildInputs = [ installShellFiles pkg-config ];
-  buildInputs = [ gpgme libgpgerror lvm2 btrfs-progs libselinux libseccomp ];
 
-  patches = [ ./disable-go-module-mode.patch ];
+  buildInputs = [
+    btrfs-progs
+    gpgme
+    libapparmor
+    libseccomp
+    libselinux
+    lvm2
+  ];
 
   buildPhase = ''
-    pushd go/src/${goPackagePath}
+    patchShebangs .
     make GIT_COMMIT="unknown"
-    install -Dm755 buildah $bin/bin/buildah
-    installShellCompletion --bash contrib/completions/bash/buildah
+    make -C docs
   '';
 
-  postBuild = ''
+  installPhase = ''
+    install -Dm755 buildah $out/bin/buildah
+    installShellCompletion --bash contrib/completions/bash/buildah
     make -C docs install PREFIX="$man"
   '';
 
@@ -49,5 +55,6 @@ buildGoPackage rec {
     changelog = "https://github.com/containers/buildah/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ Profpatsch ] ++ teams.podman.members;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/tools/buildah/disable-go-module-mode.patch b/pkgs/development/tools/buildah/disable-go-module-mode.patch
deleted file mode 100644
index 86ca9132529f..000000000000
--- a/pkgs/development/tools/buildah/disable-go-module-mode.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From e2d12e52b3638a320a8d69ea4b392b60f44ea57f Mon Sep 17 00:00:00 2001
-From: Mario Rodas <marsam@users.noreply.github.com>
-Date: Wed, 4 Dec 2019 21:07:33 -0500
-Subject: [PATCH] Do not check Go module-mode availability
-
-Since buildah vendorizes its dependencies we use buildGoPackage which
-does not uses Go module-mode.  The module-mode check will be true
-because nixpkgs uses Go 1.13 by default, and building go modules with
-buildGoPackage may lead to inconsistencies.
----
- Makefile | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 07724ce4..6383646e 100644
---- a/Makefile
-+++ b/Makefile
-@@ -15,14 +15,8 @@ BUILDAH := buildah
- GO := go
- GO110 := 1.10
- GOVERSION := $(findstring $(GO110),$(shell go version))
--# test for go module support
--ifeq ($(shell go help mod >/dev/null 2>&1 && echo true), true)
--export GO_BUILD=GO111MODULE=on $(GO) build -mod=vendor
--export GO_TEST=GO111MODULE=on $(GO) test -mod=vendor
--else
- export GO_BUILD=$(GO) build
- export GO_TEST=$(GO) test
--endif
-
- GIT_COMMIT ?= $(if $(shell git rev-parse --short HEAD),$(shell git rev-parse --short HEAD),$(error "git failed"))
- SOURCE_DATE_EPOCH ?= $(if $(shell date +%s),$(shell date +%s),$(error "date failed"))
diff --git a/pkgs/development/tools/buildah/wrapper.nix b/pkgs/development/tools/buildah/wrapper.nix
new file mode 100644
index 000000000000..bdc48bd6b1f7
--- /dev/null
+++ b/pkgs/development/tools/buildah/wrapper.nix
@@ -0,0 +1,52 @@
+{ buildah-unwrapped
+, runCommand
+, makeWrapper
+, lib
+, extraPackages ? []
+, buildah
+, runc # Default container runtime
+, crun # Container runtime (default with cgroups v2 for podman/buildah)
+, conmon # Container runtime monitor
+, slirp4netns # User-mode networking for unprivileged namespaces
+, fuse-overlayfs # CoW for images, much faster than default vfs
+, utillinux # nsenter
+, cni-plugins # not added to path
+, iptables
+}:
+
+let
+  buildah = buildah-unwrapped;
+
+  binPath = lib.makeBinPath ([
+    runc
+    crun
+    conmon
+    slirp4netns
+    fuse-overlayfs
+    utillinux
+    iptables
+  ] ++ extraPackages);
+
+in runCommand buildah.name {
+  name = "${buildah.pname}-wrapper-${buildah.version}";
+  inherit (buildah) pname version;
+
+  meta = builtins.removeAttrs buildah.meta [ "outputsToInstall" ];
+
+  outputs = [
+    "out"
+    "man"
+  ];
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+} ''
+  ln -s ${buildah.man} $man
+
+  mkdir -p $out/bin
+  ln -s ${buildah-unwrapped}/share $out/share
+  makeWrapper ${buildah-unwrapped}/bin/buildah $out/bin/buildah \
+    --prefix PATH : ${binPath}
+''
diff --git a/pkgs/development/tools/buildkit/default.nix b/pkgs/development/tools/buildkit/default.nix
index 042929e750a5..2626ae719420 100644
--- a/pkgs/development/tools/buildkit/default.nix
+++ b/pkgs/development/tools/buildkit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "buildkit";
-  version = "0.6.3";
+  version = "0.7.1";
 
   goPackagePath = "github.com/moby/buildkit";
   subPackages = [ "cmd/buildctl" ] ++ stdenv.lib.optionals stdenv.isLinux [ "cmd/buildkitd" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "moby";
     repo = "buildkit";
     rev = "v${version}";
-    sha256 = "032jq74n9mkw22s4ba9blfmi0hqvk587m5v23xz3sxx2rkg0wlbn";
+    sha256 = "048h69ffgmpir2ix9ldi6zrzlwxa5yz3idg5ajspz2dihmzmnwws";
   };
 
   buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/version.Version=${version}" ];
diff --git a/pkgs/development/tools/cargo-flamegraph/default.nix b/pkgs/development/tools/cargo-flamegraph/default.nix
index 26dd3a895ae4..08b248dd0f68 100644
--- a/pkgs/development/tools/cargo-flamegraph/default.nix
+++ b/pkgs/development/tools/cargo-flamegraph/default.nix
@@ -4,16 +4,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-flamegraph";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "flamegraph-rs";
     repo = "flamegraph";
     rev = "v${version}";
-    sha256 = "1avjq36wnm0gd5zkkv1c8hj8j51ah1prlifadjhpaf788rsng9w1";
+    sha256 = "0d6k2qr76p93na39j4zbcpc9kaswd806wrqhcwisqxdrcxrjbwhk";
   };
 
-  cargoSha256 = "10cw3qgc39id8rzziamvgm5s3yf8vgqrnx9v15dw9miapz88amcy";
+  cargoSha256 = "1qz4a1b58j3bv3akqvc3bcgvqq4bi8cbm3gzws6a52dz7ycrgq46";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ];
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/pkgs/development/tools/cloudflare-wrangler/default.nix b/pkgs/development/tools/cloudflare-wrangler/default.nix
index 5a05b7ca7c0a..623afc3e7431 100644
--- a/pkgs/development/tools/cloudflare-wrangler/default.nix
+++ b/pkgs/development/tools/cloudflare-wrangler/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cloudflare-wrangler";
-  version = "1.8.4";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "wrangler";
     rev = "v${version}";
-    sha256 = "1lllam0zgr26fbg04hnw1sy35grwrs4br8cx4r9vqjf113cyr80x";
+    sha256 = "09rq6lnv9993ah49jxqaqqhv5xxj51gxlqdi99wkj217cxp9gqqn";
   };
 
-  cargoSha256 = "0yvnqp15iqv142vcgsmcad07r5nnp417c0iqa9qgyzn39ssgpn0r";
+  cargoSha256 = "0vlb1g4pki84n2zf6w3bisa7jpv0ws8nb3lgr0bkjrirf60a9xsk";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/cloudfoundry-cli/default.nix b/pkgs/development/tools/cloudfoundry-cli/default.nix
index 55d9854d7926..1fa45a32c05f 100644
--- a/pkgs/development/tools/cloudfoundry-cli/default.nix
+++ b/pkgs/development/tools/cloudfoundry-cli/default.nix
@@ -34,7 +34,7 @@ buildGoPackage rec {
   '';
 
   installPhase = ''
-    install -Dm555 out/cf "$bin/bin/cf"
+    install -Dm555 out/cf "$out/bin/cf"
     installShellCompletion --bash "$src/ci/installers/completion/cf"
   '';
 
diff --git a/pkgs/development/tools/cmake-format/default.nix b/pkgs/development/tools/cmake-format/default.nix
index cdf15f3ad707..394dc7b2f514 100644
--- a/pkgs/development/tools/cmake-format/default.nix
+++ b/pkgs/development/tools/cmake-format/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonApplication rec {
   pname = "cmake-format";
-  version = "0.6.9";
+  version = "0.6.10";
 
   src = fetchPypi {
     inherit version;
     pname = "cmake_format";
-    sha256 = "082d7949gsk5v72ap7k4p3vgmc126a0bfm195xpi4lb6khpbzy5j";
+    sha256 = "14ypplkjah4hcb1ad8978xip4vvzxy1nkysvyi1wn9b24cbfzw42";
   };
 
   propagatedBuildInputs = [ autopep8 flake8 jinja2 pylint pyyaml ];
diff --git a/pkgs/development/tools/conftest/default.nix b/pkgs/development/tools/conftest/default.nix
index 133526c569a0..eb55bf5dd4c4 100644
--- a/pkgs/development/tools/conftest/default.nix
+++ b/pkgs/development/tools/conftest/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "conftest";
-  version = "0.18.1";
+  version = "0.18.2";
 
   src = fetchFromGitHub {
     owner = "instrumenta";
     repo = "conftest";
     rev = "v${version}";
-    sha256 = "0ial1zs5aqcwza813ny6zqn9ybq6ibrqjmaccwbbam1k9f5rplqv";
+    sha256 = "15xzldcmnpfg1hd5zr5i7x2zjrgkwnp4nylxbn9kfic2dpjp1a38";
   };
 
-  modSha256 = "17j5fhgwfpyg9r7a5g9rmvkaz510xx9s4mbl1cmyzysvddc6f5wp";
+  vendorSha256 = "1kay7b5rxypj4i0d2iwdlb1mj0qq3zvlrjp34zzv5kywz5gy4144";
 
   buildFlagsArray = ''
     -ldflags=
@@ -25,4 +25,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ yurrriq ];
     platforms = platforms.all;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/container-linux-config-transpiler/default.nix b/pkgs/development/tools/container-linux-config-transpiler/default.nix
index 0e6c58aa7ba3..005c5d55b79d 100644
--- a/pkgs/development/tools/container-linux-config-transpiler/default.nix
+++ b/pkgs/development/tools/container-linux-config-transpiler/default.nix
@@ -20,8 +20,8 @@ buildGoPackage rec {
   '';
 
   postInstall = ''
-    mv $bin/bin/{internal,ct}
-    rm $bin/bin/tools
+    mv $out/bin/{internal,ct}
+    rm $out/bin/tools
   '';
 
   meta = {
diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index 9182c8895983..ceaa704b565c 100644
--- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -24,10 +24,10 @@ buildGoPackage rec {
 
   postInstall = ''
     # Fix binary name
-    mv $bin/bin/{agent,buildkite-agent}
+    mv $out/bin/{agent,buildkite-agent}
 
     # These are runtime dependencies
-    wrapProgram $bin/bin/buildkite-agent \
+    wrapProgram $out/bin/buildkite-agent \
       --prefix PATH : '${stdenv.lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}'
   '';
 
diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix
index 1d50e4ff6d5d..391782014561 100644
--- a/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix
+++ b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix
@@ -15,17 +15,17 @@ buildGoPackage {
   postInstall = ''
     ${stdenv.lib.optionalString hasBootstrapScript ''
     # Install bootstrap.sh
-    mkdir -p $bin/libexec/buildkite-agent
-    cp $NIX_BUILD_TOP/go/src/${goPackagePath}/templates/bootstrap.sh $bin/libexec/buildkite-agent
-    sed -e "s|#!/bin/bash|#!${bash}/bin/bash|g" -i $bin/libexec/buildkite-agent/bootstrap.sh
+    mkdir -p $out/libexec/buildkite-agent
+    cp $NIX_BUILD_TOP/go/src/${goPackagePath}/templates/bootstrap.sh $out/libexec/buildkite-agent
+    sed -e "s|#!/bin/bash|#!${bash}/bin/bash|g" -i $out/libexec/buildkite-agent/bootstrap.sh
     ''}
 
     # Fix binary name
-    mv $bin/bin/{agent,buildkite-agent}
+    mv $out/bin/{agent,buildkite-agent}
 
     # These are runtime dependencies
-    wrapProgram $bin/bin/buildkite-agent \
-      ${stdenv.lib.optionalString hasBootstrapScript "--set BUILDKITE_BOOTSTRAP_SCRIPT_PATH $bin/libexec/buildkite-agent/bootstrap.sh"} \
+    wrapProgram $out/bin/buildkite-agent \
+      ${stdenv.lib.optionalString hasBootstrapScript "--set BUILDKITE_BOOTSTRAP_SCRIPT_PATH $out/libexec/buildkite-agent/bootstrap.sh"} \
       --prefix PATH : '${stdenv.lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}'
   '';
 
diff --git a/pkgs/development/tools/continuous-integration/drone-cli/default.nix b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
index a3df81d26053..bbd2c2f19358 100644
--- a/pkgs/development/tools/continuous-integration/drone-cli/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
@@ -7,7 +7,7 @@ in buildGoModule rec {
   revision = "v${version}";
   goPackagePath = "github.com/drone/drone-cli";
 
-  modSha256 = "0g0vq4vm2hy00r2gjsrhg57xv9sldlqix3wzimiqdli085bcz46b";
+  vendorSha256 = "1zzx5yy0pp0c8pias4sfxfvdzhhrff9f8j51qf6dkif99xwdq3hb";
 
   preBuild = ''
     buildFlagsArray+=("-ldflags" "-X main.version=${version}")
@@ -25,4 +25,4 @@ in buildGoModule rec {
     license = licenses.asl20;
     description = "Command line client for the Drone continuous integration server.";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/continuous-integration/drone/default.nix b/pkgs/development/tools/continuous-integration/drone/default.nix
index 05257f65af52..54b801da0756 100644
--- a/pkgs/development/tools/continuous-integration/drone/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone/default.nix
@@ -5,7 +5,7 @@ buildGoModule rec {
   version = "1.6.5";
   goPackagePath = "github.com/drone/drone";
 
-  modSha256 = "1fyb9218s52w8c6c3v6rgivbyzy5hz4q4z8r75ng2yrmjmmiv2gr";
+  vendorSha256 = "1dvf8vz3jr9smki3jql0kvd8z8rwdq93y7blbr2yjjfsdvx6lxl1";
 
   src = fetchFromGitHub {
     owner = "drone";
@@ -19,4 +19,4 @@ buildGoModule rec {
     license = licenses.asl20;
     description = "Continuous Integration platform built on container technology";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix
index 483b8e6b30c4..3bf48084bbd8 100644
--- a/pkgs/development/tools/continuous-integration/fly/default.nix
+++ b/pkgs/development/tools/continuous-integration/fly/default.nix
@@ -1,17 +1,17 @@
-{ buildGoModule, fetchFromGitHub, lib, writeText }:
+{ buildGoModule, fetchFromGitHub, stdenv, lib, writeText }:
 
 buildGoModule rec {
   pname = "fly";
-  version = "6.0.0";
+  version = "6.1.0";
 
   src = fetchFromGitHub {
     owner = "concourse";
     repo = "concourse";
     rev = "v${version}";
-    sha256 = "0chavwymyh5kv4fkvdjvf3p5jjx4yn9aavq66333xnsl5pn7q9dq";
+    sha256 = "14sm3xwhm6pfln18i9f9dyj7s2wcri43rxj4s1cja7nwqr5sqb3x";
   };
 
-  modSha256 = "1wiyfii4rmj3rp8ls0ill0sjpnpjz7l3q5fzrscm8ap1qn90gvzg";
+  vendorSha256 = "1c099sn5rrvj805va1lyjlbv7i2g1z5bxyaisv5l9365z0lv1cwm";
 
   subPackages = [ "fly" ];
 
@@ -20,12 +20,10 @@ buildGoModule rec {
       -X github.com/concourse/concourse.Version=${version}
   '';
 
-  # The fly.bash file included with this derivation can be replaced by a
-  # call to `fly completion bash` once the `completion` subcommand has
-  # made it into a release. Similarly, `fly completion zsh` will provide
-  # zsh completions. https://github.com/concourse/concourse/pull/4012
-  postInstall = ''
-    install -D -m 444 ${./fly.bash} $out/share/bash-completion/completions/fly
+  postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
+    mkdir -p $out/share/{bash-completion/completions,zsh/site-functions}
+    $out/bin/fly completion --shell bash > $out/share/bash-completion/completions/fly
+    $out/bin/fly completion --shell zsh > $out/share/zsh/site-functions/_fly
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/continuous-integration/fly/fly.bash b/pkgs/development/tools/continuous-integration/fly/fly.bash
deleted file mode 100644
index a9acc5f70a40..000000000000
--- a/pkgs/development/tools/continuous-integration/fly/fly.bash
+++ /dev/null
@@ -1,10 +0,0 @@
-# credits:
-# https://godoc.org/github.com/jessevdk/go-flags#hdr-Completion
-# https://github.com/concourse/concourse/issues/1309#issuecomment-452893900
-_fly_compl() {
-    args=("${COMP_WORDS[@]:1:$COMP_CWORD}")
-    local IFS=$'\n'
-    COMPREPLY=($(GO_FLAGS_COMPLETION=1 ${COMP_WORDS[0]} "${args[@]}"))
-    return 0
-}
-complete -F _fly_compl fly
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 7c7862dbe3bb..3cd716e11dea 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl }:
 
 let
-  version = "12.10.1";
+  version = "13.0.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-x86_64.tar.xz";
-    sha256 = "0xs0cnkqzmkbj8488s9kyc0m00g3n8vq9wplb99wrax86zs8dyw9";
+    sha256 = "0ii63xal5cx4mcy87wpdyvprpkk11i2hdl9cifaf3i1l3kgm3arv";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz";
-    sha256 = "1mcz9a44pa8wx8hk2x7rgp5brbw7a71dqilfrfchnjkg2c9q7x1q";
+    sha256 = "04h17117j5ib7h87jzsrs47i5igswnh6nbn2i2d0ansxdk4a8g31";
   };
 in
 buildGoPackage rec {
@@ -29,16 +29,16 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "1xvkr3zhn085mz7k3xbz7y5q9yjbmgp1h1sp3a2w27jmpmhl32zm";
+    sha256 = "07ywv99df4krnsb4fb2hwxy84214isps331xdpqyf0j3fhgjqmz9";
   };
 
   patches = [ ./fix-shell-path.patch ];
 
   postInstall = ''
-    touch $bin/bin/hello
-    install -d $bin/bin/helper-images
-    ln -sf ${docker_x86_64} $bin/bin/helper-images/prebuilt-x86_64.tar.xz
-    ln -sf ${docker_arm} $bin/bin/helper-images/prebuilt-arm.tar.xz
+    touch $out/bin/hello
+    install -d $out/bin/helper-images
+    ln -sf ${docker_x86_64} $out/bin/helper-images/prebuilt-x86_64.tar.xz
+    ln -sf ${docker_arm} $out/bin/helper-images/prebuilt-arm.tar.xz
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index 18f543b34351..b54a831e9556 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -8,11 +8,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "coursier";
-  version = "2.0.0-RC6-4";
+  version = "2.0.0-RC6-18";
 
   src = fetchurl {
     url = "https://github.com/coursier/coursier/releases/download/v${version}/coursier";
-    sha256 = "0i8jvs5l7f2xzkdlxk784mx5h86hq7xh5ffzb4zalczw9bzmmds1";
+    sha256 = "0vym99fyn0g8l5y2zvhf73ww17wywrh503wg5aw4nilj8w1ncvn2";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/cue/default.nix b/pkgs/development/tools/cue/default.nix
index 69e95f0484ae..d106ca3ef449 100644
--- a/pkgs/development/tools/cue/default.nix
+++ b/pkgs/development/tools/cue/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "cue";
-  version = "0.1.1";
+  version = "0.1.2";
 
   src = fetchgit {
     url = "https://cue.googlesource.com/cue";
     rev = "v${version}";
-    sha256 = "1qbnm3qb8jz9bljw2gb5bb9g41s5lbq4xvcaj3zgi4fc3708hlji";
+    sha256 = "0pmw7gnh4z5sbri8464rpwp3hbrz23zwig82nk9wdjkg1qahyy13";
   };
 
-  modSha256 = "0n9idgishlp4gaq12kngi42rq9rnkas7g6cj7jpkk8p30c74ki6z";
+  vendorSha256 = "12w2rxp0s3i1ck0qvp2dkg9kk6pyymycdfnfxggcyg4fjshh8afg";
 
   subPackages = [ "cmd/cue" ];
 
diff --git a/pkgs/development/tools/database/dbmate/default.nix b/pkgs/development/tools/database/dbmate/default.nix
index 14673cb40c81..ccf7a699dae8 100644
--- a/pkgs/development/tools/database/dbmate/default.nix
+++ b/pkgs/development/tools/database/dbmate/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dbmate";
-  version = "1.7.0";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner = "amacneil";
     repo = "dbmate";
     rev = "v${version}";
-    sha256 = "0jvizj616rsh3aw9z3bijk7ixpbnqmm3xqmdxznjzqd46avr54c3";
+    sha256 = "16grd03r41n0vj5fs7j6jk395zs2q0i878p9nh1ycicy64nzmxky";
   };
 
-  modSha256 = "12x3m5bjyx3blh5i51pd99phv73m96pmm6i3ir4vf2kms3viif9i";
+  vendorSha256 = "1915h1hi2y2sx5jvx84c1j281zaz100gbhyalvg5jqjr1van5s4d";
 
   meta = with stdenv.lib; {
     description = "Database migration tool";
@@ -20,4 +20,4 @@ buildGoModule rec {
     maintainers = [ maintainers.manveru ];
     platforms = platforms.unix;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/database/liquibase/default.nix b/pkgs/development/tools/database/liquibase/default.nix
index d66d54ef45bb..a92c96684a48 100644
--- a/pkgs/development/tools/database/liquibase/default.nix
+++ b/pkgs/development/tools/database/liquibase/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "liquibase";
-  version = "3.8.8";
+  version = "3.9.0";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "1pl9wgnwykvbnis0ndym0lbsj6a7lvpghrc98cw2hdnp5dglxjjl";
+    sha256 = "0qasiggaxix3gmmvax00k83q4pd1c1b5wx8ayyplaszkgr9advb8";
   };
 
   buildInputs = [ jre makeWrapper ];
diff --git a/pkgs/development/tools/database/squirrel-sql/default.nix b/pkgs/development/tools/database/squirrel-sql/default.nix
index 024615a7f65a..924a82bfd85e 100644
--- a/pkgs/development/tools/database/squirrel-sql/default.nix
+++ b/pkgs/development/tools/database/squirrel-sql/default.nix
@@ -5,14 +5,14 @@
 , drivers ? []
 }:
 let
-  version = "4.0.0";
+  version = "4.1.0";
 in stdenv.mkDerivation rec {
   pname = "squirrel-sql";
   inherit version;
 
   src = fetchurl {
     url = "mirror://sourceforge/project/squirrel-sql/1-stable/${version}-plainzip/squirrelsql-${version}-standard.zip";
-    sha256 = "06njdp2248zxm7zlcpyawx1s7j6hffp5a9mwam3cb53gsmzcz126";
+    sha256 = "0ni7cva0acrin5bkcfkiiv28sf58dzz7xsbl3y4536hmph0g68k6";
   };
 
   nativeBuildInputs = [ makeWrapper unzip ];
diff --git a/pkgs/development/tools/deis/default.nix b/pkgs/development/tools/deis/default.nix
index 4625c79767f8..9e45d5988cc3 100644
--- a/pkgs/development/tools/deis/default.nix
+++ b/pkgs/development/tools/deis/default.nix
@@ -9,8 +9,8 @@ buildGoPackage rec {
   subPackages = [ "client" ];
 
   postInstall = ''
-    if [ -f "$bin/bin/client" ]; then
-      mv "$bin/bin/client" "$bin/bin/deis"
+    if [ -f "$out/bin/client" ]; then
+      mv "$out/bin/client" "$out/bin/deis"
     fi
   '';
 
diff --git a/pkgs/development/tools/dep2nix/default.nix b/pkgs/development/tools/dep2nix/default.nix
index 86a1ac6d6b1e..9d14f7c1c1e3 100644
--- a/pkgs/development/tools/dep2nix/default.nix
+++ b/pkgs/development/tools/dep2nix/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   ];
 
   postFixup = ''
-    wrapProgram $bin/bin/dep2nix \
+    wrapProgram $out/bin/dep2nix \
       --prefix PATH : ${nix-prefetch-scripts}/bin
   '';
 
diff --git a/pkgs/development/tools/dive/default.nix b/pkgs/development/tools/dive/default.nix
index b942e0c91996..b48d7425b140 100644
--- a/pkgs/development/tools/dive/default.nix
+++ b/pkgs/development/tools/dive/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1v69xbkjmyzm5g4wi9amjk65fs4qgxkqc0dvq55vqjigzrranp22";
   };
 
-  modSha256 = "1y8mqxlzbizra2m9aayp6w07s39gddvm5igdaw9kwxwjwvd1dbfc";
+  vendorSha256 = "0219q9zjc0i6fbdngqh0wjpmq8wj5bjiz5dls0c1aam0lh4vwkhc";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -25,4 +25,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ marsam spacekookie ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index f84167afca84..9bbeb3c24a3e 100644
--- a/pkgs/development/tools/doctl/default.nix
+++ b/pkgs/development/tools/doctl/default.nix
@@ -1,19 +1,19 @@
-{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "doctl";
-  version = "1.40.0";
+  version = "1.43.0";
 
-  goPackagePath = "github.com/digitalocean/doctl";
+  vendorSha256 = null;
 
   subPackages = [ "cmd/doctl" ];
 
-  buildFlagsArray = ''
+  buildFlagsArray = let t = "github.com/digitalocean/doctl"; in ''
     -ldflags=
-    -X ${goPackagePath}.Major=${lib.versions.major version}
-    -X ${goPackagePath}.Minor=${lib.versions.minor version}
-    -X ${goPackagePath}.Patch=${lib.versions.patch version}
-    -X ${goPackagePath}.Label=release
+    -X ${t}.Major=${lib.versions.major version}
+    -X ${t}.Minor=${lib.versions.minor version}
+    -X ${t}.Patch=${lib.versions.patch version}
+    -X ${t}.Label=release
   '';
 
   nativeBuildInputs = [ installShellFiles ];
@@ -21,7 +21,7 @@ buildGoPackage rec {
   postInstall = ''
     export HOME=$(mktemp -d) # attempts to write to /homeless-shelter
     for shell in bash fish zsh; do
-      $bin/bin/doctl completion $shell > doctl.$shell
+      $out/bin/doctl completion $shell > doctl.$shell
       installShellCompletion doctl.$shell
     done
   '';
diff --git a/pkgs/development/tools/documentation/mdsh/default.nix b/pkgs/development/tools/documentation/mdsh/default.nix
index 7e21019ea3f3..e5d9143f61c0 100644
--- a/pkgs/development/tools/documentation/mdsh/default.nix
+++ b/pkgs/development/tools/documentation/mdsh/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdsh";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "zimbatm";
     repo = "mdsh";
     rev = "v${version}";
-    sha256 = "0y0k6rsspvpia4lssals4c3rdz9fgvlrhwd8gw38say02hn5b7ip";
+    sha256 = "sha256-VF6GZxWZbrJNixE3wItF4CtVpj9NuKjdotNXrYujugs=";
   };
 
-  cargoSha256 = "07f2ajg9jpp666915cwsjn5clmi9ghkw25qfqj0lj3kfj79n5ash";
+  cargoSha256 = "sha256-b8xXaWACDJ143i8UV3DJDjqu8HiXdO4fe6YDR/GcHoU=";
 
   meta = with stdenv.lib; {
     description = "Markdown shell pre-processor";
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 9897405d06f9..3d0c9afd33e9 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -20,27 +20,27 @@ in
     aarch64-linux = "01f0fd313b060fb28a1022d68fb224d415fa22986e2a8f4aded6424b65e35add";
   };
 
-  electron_6 = mkElectron "6.1.7" {
-    x86_64-linux = "7fe94fc1edebe2f5645056a4300fc642c04155e55da8dd4ee058a0c0ef835ae8";
-    x86_64-darwin = "1c790a4cbda05f1c136d18fa6a09bdb09a1941f521207466756a3e95e343c485";
-    i686-linux = "1afd8ea79acb2b4782fb459e084549ed4cd4ead779764829b1d862148359eae5";
-    armv7l-linux = "14f2ea0459f0dda8c566b0fa4a2fe755f4220bbae313ea0c453861ac2f803196";
-    aarch64-linux = "80e05c1a0b51c335483666e959c1631a089246986b7fc3a4f9ee1288a57a602a";
+  electron_6 = mkElectron "6.1.12" {
+    x86_64-linux = "dc628216588a896e72991d46071d06ef11aed2cdeca18d11d472c29cfbf12349";
+    x86_64-darwin = "6c7244319fdfb90899a48ffd0f426e36dba7c3fc5e29b28a4d29fdca7fb924d3";
+    i686-linux = "4e61dc4aed1c1b933b233e02833948f3b17f81f3444f02e9108a78c0540159ab";
+    armv7l-linux = "06071b4dc59a6773ff604550ed9e7a7ae8722b5343cbb5d4b94942fe537211dc";
+    aarch64-linux = "4ae23b75be821044f7e5878fe8e56ab3109cbd403ecd88221effa6abf850260b";
   };
 
-  electron_7 = mkElectron "7.1.10" {
-    x86_64-linux = "296f034ac9a00afa4dc99ed145410c015af3f59cd7e9becc7709d70a4f8a9ebf";
-    x86_64-darwin = "10eb453c2b19948777a6f404fbdbdd48464a4cd63db16bd3ce66b60dda016724";
-    i686-linux = "681b6440d4f0f7ffa29a34610ef41103d72937d6e524d81fd2d0fa8d9eb67936";
-    armv7l-linux = "2c09e9a77f1da152d766dc2e43719e2852b70f917229466a2ac457416d1374f7";
-    aarch64-linux = "1dad780b872bbc069eb1cac9ff4ec8f0b8d200153ab7f51397e27219094db1f0";
+  electron_7 = mkElectron "7.3.0" {
+    x86_64-linux = "5841d2dae8633ddec654574507689a61983acd774e6cdc8774a64b26eb41b5d4";
+    x86_64-darwin = "dfe6aeda73b71aa016fb87f5fdbf87f7d8e574f1cf318fc2a5543399b4e975ae";
+    i686-linux = "fdcedc8fda7c3580dadfa50d2ffcf9ebde4d7a01b0a36fb799703510e3a7811f";
+    armv7l-linux = "b2989bab1be05230364c058fbadf9967b23873d24e24ac3f7c8d013c11ed73e4";
+    aarch64-linux = "15a70ae79aabbf6bb9ee8a107fd08ddc1021c534679899f88e1fcc8d4de980fe";
   };
 
-  electron_8 = mkElectron "8.0.0" {
-    x86_64-linux = "b457a2ece83bb8a2efea42e75403740cbba051a64e325288760046b8999dd1c9";
-    x86_64-darwin = "3f96dfa1d4e0313d11b9e5c66e2df161cfdb30685ee9dadcc779bcad2fb3876e";
-    i686-linux = "0633ac2b6b6d00302e0e5df224d0e808e4ea9ecc14643e8534027e49b20436fb";
-    armv7l-linux = "8d1f3daa86c77e7aceb8c8e4491c094e789951c7d475fc536b85fe7d279794bf";
-    aarch64-linux = "484c04204478e8594d66f8bd332529c0c5eecfd71ee1705cc0478fa59c6818ee";
+  electron_8 = mkElectron "8.3.0" {
+    x86_64-linux = "e69d8e36d2f842c7e741794f71952dc8bc5fbaa46ff22bb82ffd71fcf16e2302";
+    x86_64-darwin = "582c9f9b53e8752885aa14d829f9318283f1d56eeb12982a03051d795a23e535";
+    i686-linux = "2cf7fc55a74427d96ebe67fb601ece2f27802deb95a5bae3d7b427afe71d272c";
+    armv7l-linux = "14b67e8a41ce8882442816a2db0eee69fac141e359911704002beb7063aa0eff";
+    aarch64-linux = "1d89a75fff3b690efe1295fe6f91225c4fa64f3c22c6acddec895d54e1040b4d";
   };
 }
diff --git a/pkgs/development/tools/electron/generic.nix b/pkgs/development/tools/electron/generic.nix
index 018625da456a..d5d257ae6444 100644
--- a/pkgs/development/tools/electron/generic.nix
+++ b/pkgs/development/tools/electron/generic.nix
@@ -8,7 +8,7 @@ let
     description = "Cross platform desktop application shell";
     homepage = "https://github.com/electron/electron";
     license = licenses.mit;
-    maintainers = with maintainers; [ travisbhartwell manveru ];
+    maintainers = with maintainers; [ travisbhartwell manveru prusnak ];
     platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ];
   };
 
diff --git a/pkgs/development/tools/fac/default.nix b/pkgs/development/tools/fac/default.nix
index 331c86ad88c5..6a23f84f2366 100644
--- a/pkgs/development/tools/fac/default.nix
+++ b/pkgs/development/tools/fac/default.nix
@@ -18,7 +18,7 @@ buildGoPackage rec {
   nativeBuildInputs = [ makeWrapper ];
 
   postInstall = ''
-    wrapProgram $bin/bin/fac \
+    wrapProgram $out/bin/fac \
       --prefix PATH : ${git}/bin
 
     # Install man page, not installed by default
diff --git a/pkgs/development/tools/fdroidserver/default.nix b/pkgs/development/tools/fdroidserver/default.nix
index b83070296aaa..c038e4fdfaf1 100644
--- a/pkgs/development/tools/fdroidserver/default.nix
+++ b/pkgs/development/tools/fdroidserver/default.nix
@@ -4,14 +4,14 @@
 , lib }:
 
 python.pkgs.buildPythonApplication rec {
-  version = "1.1.6";
+  version = "1.1.7";
   pname = "fdroidserver";
 
   src = fetchFromGitLab {
     owner = "fdroid";
     repo = "fdroidserver";
     rev = version;
-    sha256 = "0bz3pb34bkdg3l6dvpzynnfhblv18x88a5bh2dm8v31g5f9agh7r";
+    sha256 = "1xs4qmja7mm9m67368k2s9p7pmkdx9xz4g3xrsks0s8hwwyliz1s";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/flatpak-builder/default.nix b/pkgs/development/tools/flatpak-builder/default.nix
index 32519594e4f0..85b68cff20d8 100644
--- a/pkgs/development/tools/flatpak-builder/default.nix
+++ b/pkgs/development/tools/flatpak-builder/default.nix
@@ -15,7 +15,7 @@
 , xmlto
 
 , acl
-, bazaar
+, breezy
 , binutils
 , bzip2
 , coreutils
@@ -89,7 +89,7 @@ in stdenv.mkDerivation rec {
     ./respect-xml-catalog-files-var.patch
     (substituteAll {
       src = ./fix-paths.patch;
-      bzr = "${bazaar}/bin/bzr";
+      bzr = "${breezy}/bin/bzr";
       cp = "${coreutils}/bin/cp";
       patch = "${patch}/bin/patch";
       tar = "${gnutar}/bin/tar";
diff --git a/pkgs/development/tools/flyway/default.nix b/pkgs/development/tools/flyway/default.nix
index 746d66c2dbe8..6018d6306745 100644
--- a/pkgs/development/tools/flyway/default.nix
+++ b/pkgs/development/tools/flyway/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, jre_headless, makeWrapper }:
   let
-    version = "6.3.2";
+    version = "6.4.2";
   in
     stdenv.mkDerivation {
       pname = "flyway";
       inherit version;
       src = fetchurl {
         url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
-        sha256 = "1av1q7znphpsi1iz4dbh0fgh3jsx9prz980b25yk5r89h518s76q";
+        sha256 = "1m5i7mw3ml2iaqy09h8nmykn602rwkjfgh2mrmc1gss9q3klj1r8";
       };
       nativeBuildInputs = [ makeWrapper ];
       dontBuild = true;
diff --git a/pkgs/development/tools/git-quick-stats/default.nix b/pkgs/development/tools/git-quick-stats/default.nix
index 2681b2705ef4..1c5811f7b5ab 100644
--- a/pkgs/development/tools/git-quick-stats/default.nix
+++ b/pkgs/development/tools/git-quick-stats/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub }:
 stdenv.mkDerivation rec {
   pname = "git-quick-stats";
-  version = "2.0.15";
+  version = "2.1.1";
   src = fetchFromGitHub {
     repo = "git-quick-stats";
     owner = "arzzen";
     rev = version;
-    sha256 = "1m8b0bskhpwjbs0qjp0rdzrjj613639pn92isv1cg0srj8grjcai";
+    sha256 = "1mdja838jxhcasi251fsc3yig3s5vmfqab1wpm34xinr8blii90f";
   };
   PREFIX = builtins.placeholder "out";
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/glade/default.nix b/pkgs/development/tools/glade/default.nix
new file mode 100644
index 000000000000..4d86fc2acd00
--- /dev/null
+++ b/pkgs/development/tools/glade/default.nix
@@ -0,0 +1,65 @@
+{ stdenv
+, gettext
+, fetchurl
+, python3
+, pkg-config
+, gtk3
+, glib
+, gobject-introspection
+, wrapGAppsHook
+, itstool
+, libxml2
+, docbook-xsl-nons
+, gnome3
+, gdk-pixbuf
+, libxslt
+, gsettings-desktop-schemas
+}:
+
+stdenv.mkDerivation rec {
+  pname = "glade";
+  version = "3.36.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/glade/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "GbVGtSfMRiE8z8gCLUnsV+YY/iyqmqUdstKGIjPqbwg=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    gettext
+    itstool
+    wrapGAppsHook
+    docbook-xsl-nons
+    libxslt
+    libxml2
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    gtk3
+    glib
+    libxml2
+    python3
+    python3.pkgs.pygobject3
+    gsettings-desktop-schemas
+    gdk-pixbuf
+    gnome3.adwaita-icon-theme
+  ];
+
+  enableParallelBuilding = true;
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+    };
+  };
+
+  meta = with stdenv.lib; {
+    homepage = "https://wiki.gnome.org/Apps/Glade";
+    description = "User interface designer for GTK applications";
+    maintainers = teams.gnome.members;
+    license = licenses.lgpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/glpaper/default.nix b/pkgs/development/tools/glpaper/default.nix
new file mode 100644
index 000000000000..94d140552a10
--- /dev/null
+++ b/pkgs/development/tools/glpaper/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchhg, meson, ninja, pkg-config, wlroots, wayland, wayland-protocols
+, libX11, libGL }:
+
+stdenv.mkDerivation {
+  name = "glpaper";
+  version = "unstable-2020-03-30";
+
+  src = fetchhg {
+    url = "https://hg.sr.ht/~scoopta/glpaper";
+    rev = "a95db77088dfb5636a87f3743fc9b5eca70c1ae2";
+    sha256 = "04y12910wvhy4aqx2sa63dy9l6nbs7b77yqpdhc96x2b3mgzgjfs";
+  };
+
+  nativeBuildInputs = [ meson ninja pkg-config ];
+  buildInputs = [
+    wayland
+    libX11 # required by libglvnd
+    libGL
+  ];
+
+  meta = with stdenv.lib; {
+    description =
+      "Wallpaper program for wlroots based Wayland compositors such as sway that allows you to render glsl shaders as your wallpaper";
+    homepage = "https://hg.sr.ht/~scoopta/glpaper";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ccellado ];
+  };
+}
diff --git a/pkgs/development/tools/go-protobuf/default.nix b/pkgs/development/tools/go-protobuf/default.nix
index febf71657eb4..43731b72a55a 100644
--- a/pkgs/development/tools/go-protobuf/default.nix
+++ b/pkgs/development/tools/go-protobuf/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
   };
 
-  modSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
+  vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
 
   meta = with stdenv.lib; {
     homepage    = "https://github.com/golang/protobuf";
@@ -20,4 +20,4 @@ buildGoModule rec {
     license     = licenses.bsd3;
     platforms   = platforms.unix;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/go-tools/default.nix b/pkgs/development/tools/go-tools/default.nix
index 2035408de3bc..8362d1db02c7 100644
--- a/pkgs/development/tools/go-tools/default.nix
+++ b/pkgs/development/tools/go-tools/default.nix
@@ -5,18 +5,16 @@
 
 buildGoModule rec {
   pname = "go-tools";
-  version = "2020.1.3";
-
-  excludedPackages = ''\(simple\|ssa\|ssa/ssautil\|lint\|staticcheck\|stylecheck\|unused\)/testdata'';
+  version = "2020.1.4";
 
   src = fetchFromGitHub {
     owner = "dominikh";
     repo = "go-tools";
     rev = version;
-    sha256 = "0pvi1mzhy6zgx4zfgdypbl4zhvgg11hl5qv7blf2qs0a96j2djhf";
+    sha256 = "182j3zzx1bj4j4jiamqn49v9nd3vcrx727f7i9zgcrgmiscvw3mh";
   };
 
-  modSha256 = "03560xjr2531xj87paskfx2zs364fz6y4kpsid8x08s1syq9nq7p";
+  vendorSha256 = "0nbbngsphklzhcmqafrw1im2l1vnfcma9sb4vskdpdrsadv5ss5r";
 
   meta = with lib; {
     description = "A collection of tools and libraries for working with Go code, including linters and static analysis";
@@ -24,4 +22,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ rvolosatovs kalbasit ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/go2nix/default.nix b/pkgs/development/tools/go2nix/default.nix
index 96f82cc827f6..300f82ee5486 100644
--- a/pkgs/development/tools/go2nix/default.nix
+++ b/pkgs/development/tools/go2nix/default.nix
@@ -17,14 +17,14 @@ buildGoPackage rec {
 
   goDeps = ./deps.nix;
 
-  outputs = [ "bin" "out" "man" ];
+  outputs = [ "out" "man" ];
 
   nativeBuildInputs = [ go-bindata gotools makeWrapper ];
 
   preBuild = ''go generate ./...'';
 
   postInstall = ''
-    wrapProgram $bin/bin/go2nix \
+    wrapProgram $out/bin/go2nix \
       --prefix PATH : ${nix-prefetch-git}/bin \
       --prefix PATH : ${git}/bin
 
diff --git a/pkgs/development/tools/gocode-gomod/default.nix b/pkgs/development/tools/gocode-gomod/default.nix
index 3ed719cbfce3..603568236e66 100644
--- a/pkgs/development/tools/gocode-gomod/default.nix
+++ b/pkgs/development/tools/gocode-gomod/default.nix
@@ -25,7 +25,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   postInstall = ''
-    mv $bin/bin/gocode $bin/bin/gocode-gomod
+    mv $out/bin/gocode $out/bin/gocode-gomod
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/godef/default.nix b/pkgs/development/tools/godef/default.nix
index 5cf515992720..a1dfac9b79be 100644
--- a/pkgs/development/tools/godef/default.nix
+++ b/pkgs/development/tools/godef/default.nix
@@ -8,7 +8,7 @@ buildGoModule rec {
   goPackagePath = "github.com/rogpeppe/godef";
   subPackages = [ "." ];
 
-  modSha256 = "06mi8f2qs54gk2anxqcf70h96s63a99xhnlm294djyv37wy1yffi";
+  vendorSha256 = null;
 
   src = fetchFromGitHub {
     inherit rev;
@@ -23,4 +23,4 @@ buildGoModule rec {
     maintainers = with stdenv.lib.maintainers; [ vdemeester rvolosatovs ];
     license = stdenv.lib.licenses.bsd3;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gofumpt/default.nix b/pkgs/development/tools/gofumpt/default.nix
index c5e27289615d..adb2ef463f7a 100644
--- a/pkgs/development/tools/gofumpt/default.nix
+++ b/pkgs/development/tools/gofumpt/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1cw9mmavxz8gxzzwsllvf5lwb2wwi19jbc7hcwxsi4ywp7a84gh0";
   };
 
-  modSha256 = "1ladpxhr90awnms2qmlm2lz91wyh92fl3rqbfr54qngrkpkpbhr2";
+  vendorSha256 = "14a3p163xy861xb6x160wy15hzjc75n36jdyzaxl877i17shba8z";
 
   meta = with lib; {
     description = "A stricter gofmt";
@@ -19,4 +19,4 @@ buildGoModule rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ rvolosatovs ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gogetdoc/default.nix b/pkgs/development/tools/gogetdoc/default.nix
index 744ff0b60737..5d360f4572ab 100644
--- a/pkgs/development/tools/gogetdoc/default.nix
+++ b/pkgs/development/tools/gogetdoc/default.nix
@@ -8,7 +8,7 @@ buildGoModule rec {
   version = "2019-02-28";
   rev = "b37376c5da6aeb900611837098f40f81972e63e4";
 
-  modSha256 = "0j6a2b8hx54cnjz1ya65v9czg9ygqj6zwg52ffpz7cqkx0pgl9q4";
+  vendorSha256 = null;
 
   goPackagePath = "github.com/zmb3/gogetdoc";
   excludedPackages = "\\(testdata\\)";
@@ -30,4 +30,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix
index c33a4cf69f59..256e53415567 100644
--- a/pkgs/development/tools/golangci-lint/default.nix
+++ b/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.25.1";
+  version = "1.27.0";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    sha256 = "04r26nn72myacs6v2jq8mi4kjik82iwsh6w59h4k9yk0my3fjwia";
+    sha256 = "1capiw8af4wmx3wpfslb30xivfyh72x5kj12f8p5pwhl6id31931";
   };
 
-  modSha256 = "1pz5f2hv2lssiwsp60hsycg2ijyafb7r5fl2yrvflqg547k3n8x2";
+  vendorSha256 = "16wr8ixicbvdpg5mg6q07sa1b03ydpwdbvbjl3r9qihdqkhhzlr1";
   subPackages = [ "cmd/golangci-lint" ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/gomodifytags/default.nix b/pkgs/development/tools/gomodifytags/default.nix
index 2f784b999e27..e90844167dd2 100644
--- a/pkgs/development/tools/gomodifytags/default.nix
+++ b/pkgs/development/tools/gomodifytags/default.nix
@@ -2,9 +2,9 @@
 
 buildGoModule rec {
   pname = "gomodifytags";
-  version = "1.4.0";
+  version = "1.6.0";
 
-  modSha256 = "0nkdk2zgnwsg9lv20vqk2lshk4g9fqwqxd5bpr78nlahb9xk486s";
+  vendorSha256 = null;
 
   goPackagePath = "github.com/fatih/gomodifytags";
 
@@ -12,7 +12,7 @@ buildGoModule rec {
     owner = "fatih";
     repo = "gomodifytags";
     rev = "v${version}";
-    sha256 = "1436wjqs6n2jxlyzx38nm4ih6fr11bybivg3wy5nvzfs6cs59q63";
+    sha256 = "1wmzl5sk5mc46njzn86007sqyyv6han058ppiw536qyhk88rzazq";
   };
 
   meta = {
@@ -21,4 +21,4 @@ buildGoModule rec {
     maintainers = with stdenv.lib.maintainers; [ vdemeester ];
     license = stdenv.lib.licenses.bsd3;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gopkgs/default.nix b/pkgs/development/tools/gopkgs/default.nix
index 51c4255a0135..c1773333b5d2 100644
--- a/pkgs/development/tools/gopkgs/default.nix
+++ b/pkgs/development/tools/gopkgs/default.nix
@@ -15,7 +15,7 @@ buildGoModule rec {
     sha256 = "1jak1bg6k5iasscw68ra875k59k3iqhka2ykabsd427k1j3mypln";
   };
 
-  modSha256 = "0v9lg5kq3776b2s4kgyi19jy8shjqrr0f5ljrchsj1k7867sxiw7";
+  vendorSha256 = "1pwsc488ldw039by8nqpni801zry7dnf0rx4hhd73xpv2w7s8n2r";
 
   meta = {
     description = "Tool to get list available Go packages.";
@@ -23,4 +23,4 @@ buildGoModule rec {
     maintainers = with stdenv.lib.maintainers; [ vdemeester ];
     license = stdenv.lib.licenses.mit;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gopls/default.nix b/pkgs/development/tools/gopls/default.nix
index 77fd195b1abf..a77f9fa8ddd3 100644
--- a/pkgs/development/tools/gopls/default.nix
+++ b/pkgs/development/tools/gopls/default.nix
@@ -2,17 +2,16 @@
 
 buildGoModule rec {
   pname = "gopls";
-  version = "0.4.0";
-  rev = "72e4a01eba4315301fd9ce00c8c2f492580ded8a";
+  version = "0.4.1";
 
   src = fetchgit {
     rev = "gopls/v${version}";
     url = "https://go.googlesource.com/tools";
-    sha256 = "1sn6f638hgqpyd8rfyal3y6i6p21x4340jnhsvmgcd8lph49pplb";
+    sha256 = "18migk7arxm8ysfzidl7mdr069fxym9bfi6zisj7dliczw0qnkzv";
   };
 
   modRoot = "gopls";
-  modSha256 = "1p0g28i707xyxz1g6hb56qlc4km9ik7vjky0v80hw7n73vzs5mr9";
+  vendorSha256 = "1jaav6c5vybgks5hc164is0i7h097c5l75s7w3wi5a3zyzkbiyny";
 
   meta = with stdenv.lib; {
     description = "Official language server for the Go language";
@@ -20,4 +19,4 @@ buildGoModule rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ mic92 ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gotestsum/default.nix b/pkgs/development/tools/gotestsum/default.nix
index 45629338d9ea..fba4585155ed 100644
--- a/pkgs/development/tools/gotestsum/default.nix
+++ b/pkgs/development/tools/gotestsum/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gotestsum";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "gotestyourself";
     repo = "gotestsum";
     rev = "v${version}";
-    sha256 = "1wllcmc2c8ch2ggknhxwgdm6g70ppmxr492kbxvlbwif9p6ms0ci";
+    sha256 = "0zifha3mj7386q2accrdmd8qniingadxz1v8vg4mciwi723msr44";
   };
 
-  modSha256 = "08vil1jb7dpkld59b6qhsfh9cx450vbgfaji7777immzsd1azf4m";
+  vendorSha256 = "0d45i8wm35m2cdbk48razkdr49a3hfwnp84inlz7hj054cq6vimi";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
@@ -22,4 +22,4 @@ buildGoModule rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ endocrimes ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/gotools/default.nix b/pkgs/development/tools/gotools/default.nix
index 6efb1d5da8fb..a7858474a426 100644
--- a/pkgs/development/tools/gotools/default.nix
+++ b/pkgs/development/tools/gotools/default.nix
@@ -21,7 +21,7 @@ buildGoModule rec {
     rm -rf gopls
   '';
 
-  modSha256 = "1pijbkp7a9n2naicg21ydii6xc0g4jm5bw42lljwaks7211ag8k9";
+  vendorSha256 = "0pplmqxrnc8qnr5708igx4dm7rb0hicvhg6lh5hj8zkx38nb19s0";
 
   postConfigure = ''
     # Make the builtin tools available here
@@ -47,4 +47,4 @@ buildGoModule rec {
   # Do not copy this without a good reason for enabling
   # In this case tools is heavily coupled with go itself and embeds paths.
   allowGoReference = true;
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix
index bdaf04054e9c..ee7ed4766228 100644
--- a/pkgs/development/tools/hcloud/default.nix
+++ b/pkgs/development/tools/hcloud/default.nix
@@ -13,7 +13,7 @@ buildGoModule rec {
     sha256 = "0cxh92df8gdl4bmr22pdvdxdkdjyfy0jv48y0k6awy1xz61r94ap";
   };
 
-  modSha256 = "1sdp62q4rnx7dp4i0dhnc8kzi8h6zzjdy7ym0mk9r7xkxxx0s3ds";
+  vendorSha256 = "1iiqmdnjnrsqgjisb5j5casa2hmqmafn79157skl5zxawndvc2rj";
 
   buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ];
 
@@ -37,4 +37,4 @@ buildGoModule rec {
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.zauberpony ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/heroku/default.nix b/pkgs/development/tools/heroku/default.nix
index a78a74a3d0c2..23e0f5684574 100644
--- a/pkgs/development/tools/heroku/default.nix
+++ b/pkgs/development/tools/heroku/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "heroku";
-  version = "7.39.2";
+  version = "7.41.1";
 
   src = fetchurl {
     url = "https://cli-assets.heroku.com/heroku-v${version}/heroku-v${version}.tar.xz";
-    sha256 = "13bbqxklpwmh84a1dc6inphqg1nm2l0b7vqs3x9lrjm4bg7c8kjr";
+    sha256 = "12ilk0rkpwx8n9b7dird2jfmwnkqndlwjf5wgdcbl014mkl1411b";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/hobbes/default.nix b/pkgs/development/tools/hobbes/default.nix
index b56afc0a4351..5fd9d314c5e0 100644
--- a/pkgs/development/tools/hobbes/default.nix
+++ b/pkgs/development/tools/hobbes/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   name = "hobbes";
-  version = "unstable-2020-03-10";
+  version = "unstable-2020-05-19";
 
   src = fetchFromGitHub {
     owner = "morgan-stanley";
     repo = "hobbes";
-    rev = "ae956df9da3f3b24630bc1757dfaa2a8952db07a";
-    sha256 = "1a0lb87vb0qcp5wy6swk4jcc88l7vhy6iflsk7zplw547mbjhjsy";
+    rev = "3d80a46b44a362a97a6b963a2bf788fd1f67ade1";
+    sha256 = "03m915g3283z2nfdr03dj5k76wn917knfqxb0xj3qinbl4cka2p1";
   };
 
   nativeBuildInputs = [
@@ -33,8 +33,7 @@ stdenv.mkDerivation {
     '';
     homepage = "https://github.com/Morgan-Stanley/hobbes";
     license = licenses.asl20;
-    maintainers = [ maintainers.thmzlt ];
+    maintainers = with maintainers; [ kthielen thmzlt ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/development/tools/java/cfr/default.nix b/pkgs/development/tools/java/cfr/default.nix
index 09684ea9986e..ce1501fa4dd5 100644
--- a/pkgs/development/tools/java/cfr/default.nix
+++ b/pkgs/development/tools/java/cfr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cfr";
-  version = "0.149";
+  version = "0.150";
 
   src = fetchurl {
     url = "http://www.benf.org/other/cfr/cfr_${version}.jar";
-    sha256 = "1jksjr1345wj42nfad7k6skvpg5qsm4xgjdwzb90zhn27ddkns6v";
+    sha256 = "09lq21phnhr374wb8gj355jsqj8c4m5m818r3pbr8f8zpaamjxfj";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/jbake/default.nix b/pkgs/development/tools/jbake/default.nix
index 79054c7f667b..ad127b94960f 100644
--- a/pkgs/development/tools/jbake/default.nix
+++ b/pkgs/development/tools/jbake/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchzip, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  version = "2.6.4";
+  version = "2.6.5";
   pname = "jbake";
 
   src = fetchzip {
     url = "https://dl.bintray.com/jbake/binary/${pname}-${version}-bin.zip";
-    sha256 = "0zgp0wwxxmi13v5q5jvr610igx2vxg0bwck9j1imnn9ciakg1aaw";
+    sha256 = "0ripayv1vf4f4ylxr7h9kad2xhy3y98ca8s4p38z7dn8l47zg0qw";
   };
 
   buildInputs = [ makeWrapper jre ];
diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix
index 5ae2ee1c14d0..5fa2b12e9c39 100644
--- a/pkgs/development/tools/just/default.nix
+++ b/pkgs/development/tools/just/default.nix
@@ -1,26 +1,27 @@
-{ stdenv, fetchFromGitHub, rustPlatform, coreutils, bash, dash }:
+{ stdenv, fetchFromGitHub, rustPlatform, coreutils, bash, dash
+, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "0.5.10";
+  version = "0.5.11";
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0s8np28glzn3kmh59dwk86yc9fb2lm9fq2325kzmy7rkb5jsdcl1";
+    sha256 = "0li5lspxfrim8gymqzzd5djjfbfi7jh1m234qlzy5vkx2q9qg0xv";
   };
 
-  cargoSha256 = "05mrzav3aydvwac9jjckdmlxvxnlcncmkfsdb9z7zvxia4k89w1l";
+  cargoSha256 = "1sp8xrh3gmgmphh1bv050p1ybjybk9x8kswyxz2rd93q3zb5hpzz";
 
-  postInstall = ''
-    # generate completion scripts for just
+  nativeBuildInputs = [ installShellFiles ];
 
-    mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
+  postInstall = ''
+    installManPage man/just.1
 
-    $out/bin/just --completions bash > "$out/share/bash-completion/completions/just"
-    $out/bin/just --completions fish > "$out/share/fish/vendor_completions.d/just.fish"
-    $out/bin/just --completions zsh  > "$out/share/zsh/site-functions/_just"
+    installShellCompletion --bash --name just.bash completions/just.bash
+    installShellCompletion --fish --name just.fish completions/just.fish
+    installShellCompletion --zsh  --name _just     completions/just.zsh
   '';
 
   checkInputs = [ coreutils bash dash ];
diff --git a/pkgs/development/tools/kcli/default.nix b/pkgs/development/tools/kcli/default.nix
index bbcb10a354cf..fece8c17cead 100644
--- a/pkgs/development/tools/kcli/default.nix
+++ b/pkgs/development/tools/kcli/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0whijr2r2j5bvfy8jgmpxsa0zvwk5kfjlpnkw4za5k35q7bjffls";
   };
 
-  modSha256 = "1wcqh3306q9wxb6pnl8cpk73vmy36bjv2gil03j7j4pajs1f2lwn";
+  vendorSha256 = "0whqrms5mc7v14p2h1jfvkawm30xaylivijlsghrsaq468qcgg15";
 
   subPackages = [ "." ];
 
@@ -21,4 +21,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ cswank ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/kind/default.nix b/pkgs/development/tools/kind/default.nix
index 6436c83ee21a..f58303cae6f2 100644
--- a/pkgs/development/tools/kind/default.nix
+++ b/pkgs/development/tools/kind/default.nix
@@ -1,26 +1,26 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
+{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 with stdenv.lib;
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "kind";
-  version = "0.7.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "kubernetes-sigs";
     repo   = "kind";
-    sha256 = "0hvb0rbi1m0d1flk15l3wws96kmmjhsy6islkhy5h7jalc4k0nx4";
+    sha256 = "0r301nqvycik8fwlghq0cymmq4rm7xp8haj39i2nynxyw8zk6zym";
   };
 
-  goDeps = ./deps.nix;
+  vendorSha256 = "1qvbm8v8yah6r6cw1cvdw79yiwxb2amzdkkzvzbwigy0j4bvn9mi";
   goPackagePath = "sigs.k8s.io/kind";
   subPackages = [ "." ];
 
   nativeBuildInputs = [ installShellFiles ];
   postInstall = ''
     for shell in bash zsh; do
-      $bin/bin/kind completion $shell > kind.$shell
+      $out/bin/kind completion $shell > kind.$shell
       installShellCompletion kind.$shell
     done
   '';
diff --git a/pkgs/development/tools/kind/deps.nix b/pkgs/development/tools/kind/deps.nix
deleted file mode 100644
index 1706406c4566..000000000000
--- a/pkgs/development/tools/kind/deps.nix
+++ /dev/null
@@ -1,741 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
-[
-  {
-    goPackagePath = "github.com/BurntSushi/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev = "v0.3.1";
-      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
-    };
-  }
-  {
-    goPackagePath = "github.com/NYTimes/gziphandler";
-    fetch = {
-      type = "git";
-      url = "https://github.com/NYTimes/gziphandler";
-      rev = "56545f4a5d46";
-      sha256 = "1fwk9wz6vrvq72f2gq8jhvd1nvv6grqgwrjq66vjpm0726pxar72";
-    };
-  }
-  {
-    goPackagePath = "github.com/PuerkitoBio/purell";
-    fetch = {
-      type = "git";
-      url = "https://github.com/PuerkitoBio/purell";
-      rev = "v1.0.0";
-      sha256 = "1qhsy1nm96b9kb63svkvkqmmw15xg6irwcysisxdgzk64adfwqv1";
-    };
-  }
-  {
-    goPackagePath = "github.com/PuerkitoBio/urlesc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/PuerkitoBio/urlesc";
-      rev = "5bd2802263f2";
-      sha256 = "15y5r3asvm7196m3nza5xvdvlc2k11p6lfs6hi917hl7r9vgi6mp";
-    };
-  }
-  {
-    goPackagePath = "github.com/alessio/shellescape";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alessio/shellescape";
-      rev = "b115ca0f9053";
-      sha256 = "0z4jq94yn0jjj56bzrpdazb3pv1jg0r7z0ikq3gjaa51h423wk4z";
-    };
-  }
-  {
-    goPackagePath = "github.com/armon/consul-api";
-    fetch = {
-      type = "git";
-      url = "https://github.com/armon/consul-api";
-      rev = "eb2c6b5be1b6";
-      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/etcd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/etcd";
-      rev = "v3.3.10";
-      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/go-etcd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/go-etcd";
-      rev = "v2.0.0";
-      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
-    };
-  }
-  {
-    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/cpuguy83/go-md2man";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cpuguy83/go-md2man";
-      rev = "v1.0.10";
-      sha256 = "1bqkf2bvy1dns9zd24k81mh2p1zxsx2nhq5cj8dz2vgkv1xkh60i";
-    };
-  }
-  {
-    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/docker/spdystream";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/spdystream";
-      rev = "449fdfce4d96";
-      sha256 = "1412cpiis971iq1kxrirzirhj2708ispjh0x0dh879b66x8507sl";
-    };
-  }
-  {
-    goPackagePath = "github.com/elazarl/goproxy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/elazarl/goproxy";
-      rev = "c4fc26588b6e";
-      sha256 = "1s3v02px61a3hmvb47rqk598z5visayxq46k3c8dcrayhhngv2fw";
-    };
-  }
-  {
-    goPackagePath = "github.com/emicklei/go-restful";
-    fetch = {
-      type = "git";
-      url = "https://github.com/emicklei/go-restful";
-      rev = "ff4f55a20633";
-      sha256 = "1v5lj5142abz3gvbygp6xghpdx4ps2lwswl8559ivaidahwnc21c";
-    };
-  }
-  {
-    goPackagePath = "github.com/evanphx/json-patch";
-    fetch = {
-      type = "git";
-      url = "https://github.com/evanphx/json-patch";
-      rev = "v4.5.0";
-      sha256 = "144mk2v9q37l1qjf8498nff4hhz96mlkl7ls7ihixbmrji4lmch4";
-    };
-  }
-  {
-    goPackagePath = "github.com/fsnotify/fsnotify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fsnotify/fsnotify";
-      rev = "v1.4.7";
-      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
-    };
-  }
-  {
-    goPackagePath = "github.com/ghodss/yaml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ghodss/yaml";
-      rev = "73d445a93680";
-      sha256 = "0pg53ky4sy3sp9j4n7vgf1p3gw4nbckwqfldcmmi9rf13kjh0mr7";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-logr/logr";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-logr/logr";
-      rev = "v0.1.0";
-      sha256 = "0fhijjhxz4n2j5i24ckzv8r9kri3v44jdyklgbqjfq0xm7izqg14";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-openapi/jsonpointer";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-openapi/jsonpointer";
-      rev = "46af16f9f7b1";
-      sha256 = "0w0fphmdycjzbsm1vppdcjc9aqinkcdzcq3pxikdvdqh5p791gsc";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-openapi/jsonreference";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-openapi/jsonreference";
-      rev = "13c6e3589ad9";
-      sha256 = "1fh4xcl9ijww4bdq656sx981d57w2c9zx5148jsxlsg4bsvxmwis";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-openapi/spec";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-openapi/spec";
-      rev = "6aced65f8501";
-      sha256 = "0yf0nw7167yjpiqrikns5djarjpf2r07q6xnq9xb1cfsc4m7ynm4";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-openapi/swag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-openapi/swag";
-      rev = "1d0bd113de87";
-      sha256 = "0fmk42chj20679n87n6sig3czs25lavyj6w208000n6kccv1ns3c";
-    };
-  }
-  {
-    goPackagePath = "github.com/gogo/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gogo/protobuf";
-      rev = "65acae22fc9d";
-      sha256 = "0700alky9z0g9akhrzn20wf4jr1600d0clhs32sm8chnlbvidy46";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/groupcache";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/groupcache";
-      rev = "02826c3e7903";
-      sha256 = "0w46bsllddfij66nrg8jbfjsr54birvfww8a2fj9fmgyig5syn2x";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev = "v1.3.2";
-      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev = "v0.3.0";
-      sha256 = "1hyxx3434zshl2m9ja78gwlkg1rx9yl6diqa7dnjb31xz5x4gbjj";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/gofuzz";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/gofuzz";
-      rev = "v1.0.0";
-      sha256 = "0qz439qvccm91w0mmjz4fqgx48clxdwagkvvx89cr43q1d4iry36";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/uuid";
-      rev = "v1.1.1";
-      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
-    };
-  }
-  {
-    goPackagePath = "github.com/googleapis/gnostic";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/gnostic";
-      rev = "0c5108395e2d";
-      sha256 = "0jf3cp5clli88gpjf24r6wxbkvngnc1kf59d4cgjczsn2wasvsfc";
-    };
-  }
-  {
-    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/hashicorp/hcl";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/hcl";
-      rev = "v1.0.0";
-      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
-    };
-  }
-  {
-    goPackagePath = "github.com/hpcloud/tail";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hpcloud/tail";
-      rev = "v1.0.0";
-      sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
-    };
-  }
-  {
-    goPackagePath = "github.com/inconshreveable/mousetrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/inconshreveable/mousetrap";
-      rev = "v1.0.0";
-      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
-    };
-  }
-  {
-    goPackagePath = "github.com/json-iterator/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/json-iterator/go";
-      rev = "v1.1.8";
-      sha256 = "1kbp9fj6fxfql0ir59zb6v68l4bpwlmk76xm8vaikw1hp6y9bcss";
-    };
-  }
-  {
-    goPackagePath = "github.com/kisielk/errcheck";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/errcheck";
-      rev = "v1.2.0";
-      sha256 = "0am6g10ipdxw84byscm7shda654882wjcbinq5c4696m6mhi2qrd";
-    };
-  }
-  {
-    goPackagePath = "github.com/kisielk/gotool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/gotool";
-      rev = "v1.0.0";
-      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
-    };
-  }
-  {
-    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/magiconair/properties";
-    fetch = {
-      type = "git";
-      url = "https://github.com/magiconair/properties";
-      rev = "v1.8.0";
-      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
-    };
-  }
-  {
-    goPackagePath = "github.com/mailru/easyjson";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mailru/easyjson";
-      rev = "d5b7844b561a";
-      sha256 = "1g84l4wns28xjpn6nl1g33dcj3sfgxlkqqsa6w8fbq2kwyd50xka";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-isatty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-isatty";
-      rev = "v0.0.11";
-      sha256 = "0h671sv7hfprja495kavazkalkx7xzaqksjh13brcnwq67ijrali";
-    };
-  }
-  {
-    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/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev = "v1.1.2";
-      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
-    };
-  }
-  {
-    goPackagePath = "github.com/modern-go/concurrent";
-    fetch = {
-      type = "git";
-      url = "https://github.com/modern-go/concurrent";
-      rev = "bacd9c7ef1dd";
-      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
-    };
-  }
-  {
-    goPackagePath = "github.com/modern-go/reflect2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/modern-go/reflect2";
-      rev = "v1.0.1";
-      sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
-    };
-  }
-  {
-    goPackagePath = "github.com/munnerz/goautoneg";
-    fetch = {
-      type = "git";
-      url = "https://github.com/munnerz/goautoneg";
-      rev = "a547fc61f48d";
-      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
-    };
-  }
-  {
-    goPackagePath = "github.com/mxk/go-flowrate";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mxk/go-flowrate";
-      rev = "cca7078d478f";
-      sha256 = "0zqs39923ja0yypdmiqk6x8pgmfs3ms5x5sl1dqv9z6zyx2xy541";
-    };
-  }
-  {
-    goPackagePath = "github.com/onsi/ginkgo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/onsi/ginkgo";
-      rev = "v1.10.1";
-      sha256 = "033a42h1wzmji57p86igg9whvsbp6nvfdsypskw738ys903n3z4d";
-    };
-  }
-  {
-    goPackagePath = "github.com/onsi/gomega";
-    fetch = {
-      type = "git";
-      url = "https://github.com/onsi/gomega";
-      rev = "v1.7.0";
-      sha256 = "09j6wq425wgzzsbwm9ckhfgl2capv3yyqbrf45qyrjwkzm49i02y";
-    };
-  }
-  {
-    goPackagePath = "github.com/pelletier/go-toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pelletier/go-toml";
-      rev = "v1.6.0";
-      sha256 = "0l2830pi64fg0bdsyd5afkbw0p7879pppzdqqk3c7vjrjfmi5xbq";
-    };
-  }
-  {
-    goPackagePath = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev = "v0.9.0";
-      sha256 = "1hlivqlcnm9wrj0v7h43gamw7mvg6svz9sm31fx28zn4ll25ablh";
-    };
-  }
-  {
-    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/russross/blackfriday";
-    fetch = {
-      type = "git";
-      url = "https://github.com/russross/blackfriday";
-      rev = "v1.5.2";
-      sha256 = "0jzbfzcywqcrnym4gxlz6nphmm1grg6wsl4f0r9x384rn83wkj7c";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/afero";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/afero";
-      rev = "v1.1.2";
-      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cast";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cast";
-      rev = "v1.3.0";
-      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev = "v0.0.5";
-      sha256 = "0z4x8js65mhwg1gf6sa865pdxfgn45c3av9xlcc1l3xjvcnx32v2";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/jwalterweatherman";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/jwalterweatherman";
-      rev = "v1.0.0";
-      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev = "v1.0.5";
-      sha256 = "0gpmacngd0gpslnbkzi263f5ishigzgh6pbdv9hp092rnjl4nd31";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/viper";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/viper";
-      rev = "v1.3.2";
-      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
-    };
-  }
-  {
-    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.4.0";
-      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
-    };
-  }
-  {
-    goPackagePath = "github.com/ugorji/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ugorji/go";
-      rev = "d75b2dcb6bc8";
-      sha256 = "0di1k35gpq9bp958ywranpbskx2vdwlb38s22vl9rybm3wa5g3ps";
-    };
-  }
-  {
-    goPackagePath = "github.com/xordataexchange/crypt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/xordataexchange/crypt";
-      rev = "b2862e3d0a77";
-      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "c2843e01d9a2";
-      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "13f9640d40b9";
-      sha256 = "1ba2767lvklnmfvb9jkwvd4m7z6326gaiz3rgylh795g88hy34g1";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev = "1d60e4601c6f";
-      sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "86b910548bc1";
-      sha256 = "1z8l2wp27q0bd4nc46j31lc7cr6kiw52zi6ix3i121pd3rcyrw44";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "v0.3.2";
-      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev = "6c7e314b6563";
-      sha256 = "1m1n6r8v6mrlh0yvlz3qxz4s7jc7nis0zf3dfl1i6hqh5xblkwnw";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/check.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/check.v1";
-      rev = "788fd7840127";
-      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/fsnotify.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/fsnotify.v1";
-      rev = "v1.4.7";
-      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/inf.v0";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/inf.v0";
-      rev = "v0.9.1";
-      sha256 = "00k5iqjcp371fllqxncv7jkf80hn1zww92zm78cclbcn4ybigkng";
-    };
-  }
-  {
-    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.7";
-      sha256 = "0k5xcwkd3wmcx54isk7ck9cwp8fapfhyqdz3f13kxp77cxqizazj";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/yaml.v3";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/yaml.v3";
-      rev = "4206685974f2";
-      sha256 = "1ff5fd8x45cay9100ds63hxd32s7czsrric0ql6a1jrxczsgqk1g";
-    };
-  }
-  {
-    goPackagePath = "k8s.io/apimachinery";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/apimachinery";
-      rev = "v0.17.0";
-      sha256 = "1418y3p2fx7zsf1anpwcma1fqnaymal12d6x33j600jf1y0j9g8i";
-    };
-  }
-  {
-    goPackagePath = "k8s.io/gengo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/gengo";
-      rev = "0689ccc1d7d6";
-      sha256 = "10c0kbm07pzxwdxpsmcgqkcxqxaijyywvwj1rciw6ssfcgx7kdc5";
-    };
-  }
-  {
-    goPackagePath = "k8s.io/klog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/klog";
-      rev = "v1.0.0";
-      sha256 = "1cgannfmldcrcksb2wqdn2b5qabqyxl9r25w9y4qbljw24hhnlvn";
-    };
-  }
-  {
-    goPackagePath = "k8s.io/kube-openapi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/kube-openapi";
-      rev = "30be4d16710a";
-      sha256 = "13pksn2xzyhrz569zihqy78y9ckn4sf4f4x31w1czfwbs87n00gf";
-    };
-  }
-  {
-    goPackagePath = "sigs.k8s.io/structured-merge-diff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes-sigs/structured-merge-diff";
-      rev = "15d366b2352e";
-      sha256 = "1anrx09ksgrwjwmbrcrk3hx8wyzjaakzmmn36nd23if36nv1xg11";
-    };
-  }
-  {
-    goPackagePath = "sigs.k8s.io/yaml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes-sigs/yaml";
-      rev = "v1.1.0";
-      sha256 = "1p7hvjdr5jsyk7nys1g1pmgnf3ys6n320i6hds85afppk81k01kb";
-    };
-  }
-]
diff --git a/pkgs/development/tools/kubectx/default.nix b/pkgs/development/tools/kubectx/default.nix
index fd5bdc64dd6b..8b980dc7e31e 100644
--- a/pkgs/development/tools/kubectx/default.nix
+++ b/pkgs/development/tools/kubectx/default.nix
@@ -4,13 +4,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "kubectx";
-  version = "0.8.0";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "ahmetb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1wkvmic29mkzfs6619wjs3mya8ffigwv9n1w9y7zkfvpi8gxa0a6";
+    sha256 = "1b22jk8zl944w5zn3s7ybkkbmzp9519x32pfqwd1malfly7dzf55";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/kubeprompt/default.nix b/pkgs/development/tools/kubeprompt/default.nix
index 7c6f3f3396cf..bac22169edf2 100644
--- a/pkgs/development/tools/kubeprompt/default.nix
+++ b/pkgs/development/tools/kubeprompt/default.nix
@@ -19,7 +19,7 @@ buildGoModule rec {
   '';
 
   goPackagePath = "github.com/jlesquembre/kubeprompt";
-  modSha256 = "0rbpdk2dixywn3wcdgz48f3xw3b7fk8xh7mrlx27wz7fq5wj9v8f";
+  vendorSha256 = "089lfkvyf00f05kkmr935jbrddf2c0v7m2356whqnz7ad6a2whsi";
 
   meta = with stdenv.lib; {
     description = "Kubernetes prompt";
@@ -28,4 +28,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ jlesquembre ];
     platforms = platforms.all;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/kubie/default.nix b/pkgs/development/tools/kubie/default.nix
index de45ff50c030..1895cd0786dd 100644
--- a/pkgs/development/tools/kubie/default.nix
+++ b/pkgs/development/tools/kubie/default.nix
@@ -1,31 +1,30 @@
-{ stdenv, rustPlatform, fetchFromGitHub }:
+{ stdenv, rustPlatform, fetchFromGitHub, installShellFiles, Security }:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "kubie";
-  version = "0.8.4";
+  version = "0.9.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "sbstp";
     repo = "kubie";
-    sha256 = "1f82xlhhxbjadjw609kr1kdm4n69c9mqjia4b3k505wjh7cc55n0";
+    sha256 = "0q1dxry10iaf7zx6vyr0da4ihqx7l8dlyhlqm8qqfz913h2wam8c";
   };
 
-  cargoSha256 = "0mish7wqwq5ynl98n6swdn5i6mg62aih5rfykbl3wx39b468n481";
+  cargoSha256 = "13zs2xz3s4732zxsimg7b22d9707ln4gpscznxi13cjkf5as9gbz";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  installPhase = ''
-    mkdir -p $out/share/bash-completion/completions
-    cp -v ${src}/completion/kubie.bash $out/share/bash-completion/completions/kubie
+  postInstall = ''
+    installShellCompletion completion/kubie.bash
   '';
 
   meta = with stdenv.lib; {
-    description =
-      "Shell independent context and namespace switcher for kubectl";
+    description = "Shell independent context and namespace switcher for kubectl";
     homepage = "https://github.com/sbstp/kubie";
     license = with licenses; [ zlib ];
     maintainers = with maintainers; [ illiusdope ];
-    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/tools/kustomize/default.nix b/pkgs/development/tools/kustomize/default.nix
index bf4aae23be76..e35cc1c8fbd5 100644
--- a/pkgs/development/tools/kustomize/default.nix
+++ b/pkgs/development/tools/kustomize/default.nix
@@ -23,7 +23,7 @@ buildGoModule rec {
   # avoid finding test and development commands
   sourceRoot = "source/kustomize";
 
-  modSha256 = "1bas6al14ck0d2ccb4235426a5hldqsm0nf8vi76chz4nahzb71g";
+  vendorSha256 = "06mf5zvxn10g5rqjpqv3afvhj9xmijbj8ag8pqcg1996s4rp4p7a";
 
   meta = with lib; {
     description = "Customization of kubernetes YAML configurations";
@@ -36,4 +36,4 @@ buildGoModule rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ carlosdagos vdemeester periklis zaninime ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index 4b99cfb10e0d..d08c9057c0fe 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "lazygit";
-  version = "0.18";
+  version = "0.20.3";
 
   goPackagePath = "github.com/jesseduffield/lazygit";
 
@@ -12,7 +12,7 @@ buildGoPackage rec {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1zc6y386w111ygyng5s74zg49iajzs77dbrcdy33igj0hbnkwq2x";
+    sha256 = "1p05lfm74g28ci5575vr22q5db50h19fcvc3lzddp0vyiw570isl";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix
index 4cd87480070a..cf9ce2bd265e 100644
--- a/pkgs/development/tools/metals/default.nix
+++ b/pkgs/development/tools/metals/default.nix
@@ -2,7 +2,7 @@
 
 let
   baseName = "metals";
-  version = "0.8.4";
+  version = "0.9.0";
   deps = stdenv.mkDerivation {
     name = "${baseName}-deps-${version}";
     buildCommand = ''
@@ -15,7 +15,7 @@ let
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "1r8aff082m3kh6wy5diyvq8bzg5x4dp1da9sfz223ii0kc1yp6w5";
+    outputHash     = "116q2jzqlmdhkqvjg31b9ib8w1k7rlr8gmjcr7z32idpn16hqg59";
   };
 in
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/tools/micronaut/default.nix b/pkgs/development/tools/micronaut/default.nix
index 36df02ff7126..e781bb80ac8c 100644
--- a/pkgs/development/tools/micronaut/default.nix
+++ b/pkgs/development/tools/micronaut/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "micronaut";
-  version = "1.3.4";
+  version = "1.3.5";
 
   src = fetchzip {
     url = "https://github.com/micronaut-projects/micronaut-core/releases/download/v${version}/${pname}-${version}.zip";
-    sha256 = "0mddr6jw7bl8k4iqfq3sfpxq8fffm2spi9xwdr4cskkw4qdgrrpz";
+    sha256 = "16n1dk9jgy78mrkvr78m4x772kn09y5aa4d06wl4sdgn6apcq2mc";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/development/tools/misc/act/default.nix b/pkgs/development/tools/misc/act/default.nix
index 8df465c4958f..e7234c0492d4 100644
--- a/pkgs/development/tools/misc/act/default.nix
+++ b/pkgs/development/tools/misc/act/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "14ird8z8f467spa0kdzjf6lq7pipq7rwxrdk6ppv7y1fxw96qm9x";
   };
 
-  modSha256 = "09q8dh4g4k0y7mrhwyi9py7zdiipmq91j3f32cn635v2xw6zyg2k";
+  vendorSha256 = "0ns20vvrj0j921wsx227dxbpga6kll7pxglfqhl53xckrh85yyd8";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
@@ -21,4 +21,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ filalex77 ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/misc/arcanist/default.nix b/pkgs/development/tools/misc/arcanist/default.nix
index 5eeae0ece5cd..a6265ba89d03 100644
--- a/pkgs/development/tools/misc/arcanist/default.nix
+++ b/pkgs/development/tools/misc/arcanist/default.nix
@@ -42,10 +42,12 @@ stdenv.mkDerivation {
     mkdir -p $out/bin $out/libexec
     cp -R libphutil $out/libexec/libphutil
     cp -R arcanist  $out/libexec/arcanist
-
-    ln -s $out/libexec/arcanist/bin/arc $out/bin
-    wrapProgram $out/bin/arc \
-      --prefix PATH : "${php}/bin"
+    ${if stdenv.isDarwin then ''
+        echo "#! $shell -e" > $out/bin/arc
+        echo "exec ${php}/bin/php $out/libexec/arcanist/scripts/arcanist.php "'"$@"' >> $out/bin/arc
+        chmod +x $out/bin/arc''
+      else ''
+        ln -s $out/libexec/arcanist/scripts/arcanist.php $out/bin/arc''}
   '';
 
   meta = {
diff --git a/pkgs/development/tools/misc/ccls/default.nix b/pkgs/development/tools/misc/ccls/default.nix
index cb5653583fd7..ba57ef561f3e 100644
--- a/pkgs/development/tools/misc/ccls/default.nix
+++ b/pkgs/development/tools/misc/ccls/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ccls";
-  version = "0.20190823.5";
+  version = "0.20190823.6";
 
   src = fetchFromGitHub {
     owner = "MaskRay";
     repo = "ccls";
     rev = version;
-    sha256 = "0b2pkpzn576b92zcxpwchpkyw2fww6s69818rx4g9z34kzm35zy5";
+    sha256 = "11h5nwk4qqshf3i8yr4bxpnvmidrhkzd0zxhf1xqv8cv6r08k47f";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/misc/circleci-cli/default.nix b/pkgs/development/tools/misc/circleci-cli/default.nix
index fde1c68d34d0..7144c2bd0ae5 100644
--- a/pkgs/development/tools/misc/circleci-cli/default.nix
+++ b/pkgs/development/tools/misc/circleci-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "circleci-cli";
-  version = "0.1.6949";
+  version = "0.1.7868";
 
   src = fetchFromGitHub {
     owner = "CircleCI-Public";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0r64m4lcm9w0rzi61rsi3sm719ydwiv5axxnikwhzmvkdz0rd7dq";
+    sha256 = "1a9gnqrkvifrwr8wpv5f6zv8xs8myzbzlhn5w72xxzh2gxdaflwg";
   };
 
-  modSha256 = "199ai38knp50mjjhddjd70qfwx63c69rf7ddw4hpzgx5cm5a04q2";
+  vendorSha256 = "0y35ps2pw9z7gi4z50byd1py87bf2jdvj7l7w2gxpppmhi83myc9";
 
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/CircleCI-Public/circleci-cli/version.Version=${version}" ];
 
@@ -34,4 +34,4 @@ buildGoModule rec {
     license = licenses.mit;
     homepage = "https://circleci.com/";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix
index cd805069df56..487c979c7092 100644
--- a/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "clojure-lsp";
-  version = "20200412T033138";
+  version = "20200514T134144";
 
   src = fetchurl {
     url = "https://github.com/snoe/clojure-lsp/releases/download/release-${version}/${pname}";
-    sha256 = "19i6sikg5x5qzcbakzbiqbcy5q2srqk6ihpmb3l90n1p4jn4605c";
+    sha256 = "1c56k9zxi71gjlrmjk2risx04dzr460vql42pfjwm1cv543kij9r";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/misc/dfu-programmer/default.nix b/pkgs/development/tools/misc/dfu-programmer/default.nix
index a474ccc7e594..1aaf113d0b95 100644
--- a/pkgs/development/tools/misc/dfu-programmer/default.nix
+++ b/pkgs/development/tools/misc/dfu-programmer/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     description = "A Device Firmware Update based USB programmer for Atmel chips with a USB bootloader";
     homepage = "http://dfu-programmer.sourceforge.net/";
-    maintainers = [ maintainers.the-kenny ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/misc/editorconfig-checker/default.nix b/pkgs/development/tools/misc/editorconfig-checker/default.nix
index 88c43a8c42a5..131c38df2f7a 100644
--- a/pkgs/development/tools/misc/editorconfig-checker/default.nix
+++ b/pkgs/development/tools/misc/editorconfig-checker/default.nix
@@ -1,17 +1,25 @@
-{ buildGoModule, fetchFromGitHub, lib }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "editorconfig-checker";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchFromGitHub {
     owner = "editorconfig-checker";
     repo = "editorconfig-checker";
     rev = "${version}";
-    sha256 = "1gn7q6wg7byhr1l5ly60rbb700xrww9slbq7gbxbw5c1fl0pp3yk";
+    sha256 = "1y90yz8da0iqig3m0kbjcicwblkirbbx0s3agpmz2pdca6y2ijwi";
   };
 
-  modSha256 = "1iiv12ginb3ky739z7v8wf4z5lv24gmghbybs3lzay0kqn449n4x";
+  vendorSha256 = "1lyrqrm3pyfv470dmymbkb3vpvp0i2zsndp7qw34fbhp2gnay5kh";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  buildFlagsArray = [ "-ldflags=-X main.version=${version}" ];
+
+  postInstall = ''
+    installManPage docs/editorconfig-checker.1
+  '';
 
   meta = with lib; {
     description = "A tool to verify that your files are in harmony with your .editorconfig";
diff --git a/pkgs/development/tools/misc/go-license-detector/default.nix b/pkgs/development/tools/misc/go-license-detector/default.nix
index 6675f7ed3e25..22b85a1fa334 100644
--- a/pkgs/development/tools/misc/go-license-detector/default.nix
+++ b/pkgs/development/tools/misc/go-license-detector/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0ln1z3y9q5igf9djkxw05ql2hb1ijcvvz0mrbwz11cdv9xrsa4z4";
   };
 
-  modSha256 = "163f1kiy7kqrnaazb8ydaaiz57lv30jyjkvv6i7pczvcg9yfhmdb";
+  vendorSha256 = "0gan5l7vsq0hixxcymhhs8p07v92w60r0lhgvrr9a99nic12vmia";
 
   meta = with lib; {
     description = "Reliable project licenses detector";
@@ -19,4 +19,4 @@ buildGoModule rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ dtzWill ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix
index 47af57dfb3d6..e23ccf27323c 100644
--- a/pkgs/development/tools/misc/help2man/default.nix
+++ b/pkgs/development/tools/misc/help2man/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, perlPackages, gettext }:
 
 stdenv.mkDerivation rec {
-  name = "help2man-1.47.13";
+  name = "help2man-1.47.15";
 
   src = fetchurl {
     url = "mirror://gnu/help2man/${name}.tar.xz";
-    sha256 = "08q5arxz4j4pyx5q4712c2rn7p7dw7as9xg38yvmsh1c3ynvpy5p";
+    sha256 = "076dvc0z0qp73rpmg0c8bkpfh969h4gzzc442hv1bcyf1srkann2";
   };
 
   nativeBuildInputs = [ gettext perlPackages.LocaleGettext ];
diff --git a/pkgs/development/tools/misc/hound/default.nix b/pkgs/development/tools/misc/hound/default.nix
index d3afbbc1bc76..2d7431f9e8b0 100644
--- a/pkgs/development/tools/misc/hound/default.nix
+++ b/pkgs/development/tools/misc/hound/default.nix
@@ -27,7 +27,7 @@ buildGoPackage rec {
   postInstall = with stdenv; let
     binPath = lib.makeBinPath [ mercurial git ];
   in ''
-    wrapProgram $bin/bin/houndd --prefix PATH : ${binPath}
+    wrapProgram $out/bin/houndd --prefix PATH : ${binPath}
   '';
 
   meta = {
diff --git a/pkgs/development/tools/misc/hydra/common.nix b/pkgs/development/tools/misc/hydra/common.nix
index 75a9689267a1..4e9daab9bf1c 100644
--- a/pkgs/development/tools/misc/hydra/common.nix
+++ b/pkgs/development/tools/misc/hydra/common.nix
@@ -1,6 +1,6 @@
 { stdenv, nix, perlPackages, buildEnv, fetchFromGitHub
 , makeWrapper, autoconf, automake, libtool, unzip, pkgconfig, sqlite, libpqxx
-, gitAndTools, mercurial, darcs, subversion, bazaar, openssl, bzip2, libxslt
+, gitAndTools, mercurial, darcs, subversion, breezy, openssl, bzip2, libxslt
 , guile, perl, postgresql, nukeReferences, git, boehmgc, nlohmann_json
 , docbook_xsl, openssh, gnused, coreutils, findutils, gzip, lzma, gnutar
 , rpm, dpkg, cdrkit, pixz, lib, boost, autoreconfHook, src ? null, version ? null
@@ -79,7 +79,7 @@ in stdenv.mkDerivation rec {
 
   buildInputs =
     [ makeWrapper autoconf automake libtool unzip nukeReferences sqlite libpqxx
-      gitAndTools.top-git mercurial /*darcs*/ subversion bazaar openssl bzip2 libxslt
+      gitAndTools.top-git mercurial /*darcs*/ subversion breezy openssl bzip2 libxslt
       perlDeps perl nix
       postgresql # for running the tests
       nlohmann_json
@@ -88,7 +88,7 @@ in stdenv.mkDerivation rec {
 
   hydraPath = lib.makeBinPath (
     [ sqlite subversion openssh nix coreutils findutils pixz
-      gzip bzip2 lzma gnutar unzip git gitAndTools.top-git mercurial /*darcs*/ gnused bazaar
+      gzip bzip2 lzma gnutar unzip git gitAndTools.top-git mercurial /*darcs*/ gnused breezy
     ] ++ lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/development/tools/misc/intltool/default.nix b/pkgs/development/tools/misc/intltool/default.nix
index 91acaac75aa3..0a04e5786f59 100644
--- a/pkgs/development/tools/misc/intltool/default.nix
+++ b/pkgs/development/tools/misc/intltool/default.nix
@@ -12,8 +12,10 @@ stdenv.mkDerivation rec {
   # fix "unescaped left brace" errors when using intltool in some cases
   patches = [(fetchpatch {
     name = "perl5.26-regex-fixes.patch";
-    url = "https://sources.debian.org/data/main/i/intltool/0.51.0-5"
-      + "/debian/patches/perl5.26-regex-fixes.patch";
+    url = [
+      "https://sources.debian.org/data/main/i/intltool/0.51.0-5/debian/patches/perl5.26-regex-fixes.patch"
+      "https://src.fedoraproject.org/rpms/intltool/raw/d8d2ef29fb122a42a6b6678eb1ec97ae56902af2/f/intltool-perl5.26-regex-fixes.patch"
+    ];
     sha256 = "12q2140867r5d0dysly72khi7b0mm2gd7nlm1k81iyg7fxgnyz45";
   })];
 
diff --git a/pkgs/development/tools/misc/mkcert/default.nix b/pkgs/development/tools/misc/mkcert/default.nix
index 1449a55e3a86..218473aee78d 100644
--- a/pkgs/development/tools/misc/mkcert/default.nix
+++ b/pkgs/development/tools/misc/mkcert/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0w1ji96hbd3anzsz82xjcafsqhgyz7c7n41rsq60yrllwbj5946f";
   };
 
-  modSha256 = "13a3snhcqq3a9lfy9zfr2rx10mf2ymvhmds1bg8n4m7lbwnzm4fg";
+  vendorSha256 = "0b8ggdpbyxx5n2myhchhlwmm5nndwpykp1ylnzdyw12mdskfvn9h";
 
   goPackagePath = "github.com/FiloSottile/mkcert";
   buildFlagsArray = ''
@@ -25,4 +25,4 @@ buildGoModule rec {
     license = licenses.bsd3;
     maintainers = [ maintainers.marsam ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/misc/nix-build-uncached/default.nix b/pkgs/development/tools/misc/nix-build-uncached/default.nix
new file mode 100644
index 000000000000..11833816ec82
--- /dev/null
+++ b/pkgs/development/tools/misc/nix-build-uncached/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildGoModule, fetchFromGitHub, nix, makeWrapper }:
+
+buildGoModule rec {
+  pname = "nix-build-uncached";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "Mic92";
+    repo = "nix-build-uncached";
+    rev = "v${version}";
+    sha256 = "0jkpg3ab56lg2kdms9w9ka9ba89py3ajksjsi1rd3iqi74zz2mmh";
+  };
+
+  goPackagePath = "github.com/Mic92/nix-build-uncached";
+  vendorSha256 = null;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    wrapProgram $out/bin/nix-build-uncached \
+      --prefix PATH ":" ${lib.makeBinPath [ nix ]}
+  '';
+
+  meta = with lib; {
+    description = "A CI friendly wrapper around nix-build";
+    license = licenses.mit;
+    homepage = "https://github.com/Mic92/nix-build-uncached";
+    maintainers = [ maintainers.mic92 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/misc/pkgconf/default.nix b/pkgs/development/tools/misc/pkgconf/default.nix
index 02b7ff5fcd3d..e3729994375b 100644
--- a/pkgs/development/tools/misc/pkgconf/default.nix
+++ b/pkgs/development/tools/misc/pkgconf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pkgconf";
-  version = "1.6.3";
+  version = "1.7.0";
 
   src = fetchurl {
     url = "https://distfiles.dereferenced.org/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "04525vv0y849vvc2pi60g5wd9fjp1wbhra2lniifi82y1ldv7w31";
+    sha256 = "0sb1a2lgiqaninv5s3zq09ilrkpsamcl68dyhqyz7yi9vsgb0vhy";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/misc/ptags/default.nix b/pkgs/development/tools/misc/ptags/default.nix
new file mode 100644
index 000000000000..93014af3f620
--- /dev/null
+++ b/pkgs/development/tools/misc/ptags/default.nix
@@ -0,0 +1,32 @@
+{ fetchFromGitHub
+, cargo
+, lib
+, rustPlatform
+, stdenv
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "ptags";
+  version = "0.3.2";
+
+  src = fetchFromGitHub {
+    owner = "dalance";
+    repo = "ptags";
+    rev = "v${version}";
+    sha256 = "1xr1szh4dfrcmi6s6dj791k1ix2zbv75rqkqbyb1lmh5548kywkg";
+  };
+
+  cargoSha256 = "1rsnb4kzfb577xw7jk0939n42sv94vvspvbz783bmpy9vl53i38k";
+
+  # Sanity check.
+  checkPhase = ''
+    $releaseDir/ptags --help > /dev/null
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A parallel universal-ctags wrapper for git repository";
+    homepage = "https://github.com/dalance/ptags";
+    maintainers = with maintainers; [ pamplemousse ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/tools/misc/reviewdog/default.nix b/pkgs/development/tools/misc/reviewdog/default.nix
index 9af294716ff3..9e4dbcac5b80 100644
--- a/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/pkgs/development/tools/misc/reviewdog/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "reviewdog";
-  version = "0.9.17";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0fm7avkc8izs0a9lqshibzpl08g4l3w38ayw7g521p23aq90q3c9";
+    sha256 = "1ag55n3gfwcp6v8v3hha8bdqxw9r4bmz97p00vyqla9gjzn5ka9w";
   };
 
-  modSha256 = "1jf08g0xr4wknh9x15igq73y02cy2faqjdjs2v842ii4p3n4p9dw";
+  vendorSha256 = "0lann22hjdcrwyab76hinvbbmg3rf7y3knrxlfg0164gl3y5xb5g";
 
   subPackages = [ "cmd/reviewdog" ];
 
diff --git a/pkgs/development/tools/misc/stm32flash/default.nix b/pkgs/development/tools/misc/stm32flash/default.nix
index a67430d52a1a..0c2cb96a9d6c 100644
--- a/pkgs/development/tools/misc/stm32flash/default.nix
+++ b/pkgs/development/tools/misc/stm32flash/default.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
     homepage = "https://sourceforge.net/projects/stm32flash/";
     license = stdenv.lib.licenses.gpl2;
     platforms = platforms.all; # Should work on all platforms
-    maintainers = with maintainers; [ the-kenny elitak ];
+    maintainers = with maintainers; [ elitak ];
   };
 }
diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix
index e547fef46c4c..75a960c80c50 100644
--- a/pkgs/development/tools/misc/strace/default.nix
+++ b/pkgs/development/tools/misc/strace/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = stdenv.lib.optional libunwind.supportsHost libunwind; # support -k
 
+  postPatch = "patchShebangs strace-graph";
+
   configureFlags = stdenv.lib.optional (!stdenv.hostPlatform.isx86) "--enable-mpers=check";
 
   # fails 1 out of 523 tests with
diff --git a/pkgs/development/tools/misc/sysbench/default.nix b/pkgs/development/tools/misc/sysbench/default.nix
index 10748d751595..616a1cbc3fbd 100644
--- a/pkgs/development/tools/misc/sysbench/default.nix
+++ b/pkgs/development/tools/misc/sysbench/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "sysbench";
-  version = "1.0.19";
+  version = "1.0.20";
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ libmysqlclient libaio ];
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "akopytov";
     repo = pname;
     rev = version;
-    sha256 = "1zgqb9cr7ld3vw4a3jhq1mlszhcyjlpr0c8q1jcp1d27l9dcvd1w";
+    sha256 = "1sanvl2a52ff4shj62nw395zzgdgywplqvwip74ky8q7s6qjf5qy";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/misc/teensy-loader-cli/default.nix b/pkgs/development/tools/misc/teensy-loader-cli/default.nix
index 62c480707cdd..40f3921ec705 100644
--- a/pkgs/development/tools/misc/teensy-loader-cli/default.nix
+++ b/pkgs/development/tools/misc/teensy-loader-cli/default.nix
@@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
     description = "Firmware uploader for the Teensy microcontroller boards";
     homepage = "https://www.pjrc.com/teensy/";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ the-kenny ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/misc/terracognita/default.nix b/pkgs/development/tools/misc/terracognita/default.nix
index e533b065f411..70b07dd71cd5 100644
--- a/pkgs/development/tools/misc/terracognita/default.nix
+++ b/pkgs/development/tools/misc/terracognita/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0ib0p361sxh2qzxccg32pcml4by4mk45abhljwmljwybs34wh5rh";
   };
 
-  modSha256 = "1cbhm3jwv0z9fh1q8mva56nbsp9rfyjcs03yxrc8ffkvif0gapps";
+  vendorSha256 = "0q772i49nyxzs51jrh45n14ljh7qj5wygkn2x32pxi6ykw6la4x8";
 
   subPackages = [ "." ];
 
@@ -23,4 +23,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = [ maintainers.marsam ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix
index 5cc67cb5e176..0076884e2edc 100644
--- a/pkgs/development/tools/misc/texlab/default.nix
+++ b/pkgs/development/tools/misc/texlab/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "texlab";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "latex-lsp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0y8cv8y92a4nqwrvqk2cxgs6nspqjk8jm4spr8rgkwlpfbrg74xn";
+    sha256 = "0cmciadiknw6w573v71spzf5ydaz2xxm2snv3n1hks732nahlr56";
   };
 
-  cargoSha256 = "1qi1c4v5d5a4xcf1bjbdicrv35w6chl5swlm96c1h3pr9s09lqy7";
+  cargoSha256 = "0dhbbni8ia0dkwjacx5jlr5rj7173nsbivm9gjsx9j8ais0f0hff";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
diff --git a/pkgs/development/tools/misc/tockloader/default.nix b/pkgs/development/tools/misc/tockloader/default.nix
new file mode 100644
index 000000000000..18c5393a6b7b
--- /dev/null
+++ b/pkgs/development/tools/misc/tockloader/default.nix
@@ -0,0 +1,27 @@
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "tockloader";
+  version = "1.4.0";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "0l8mvlqzyq2bfb6g5zhgv2ndgyyrmpww2l7f2snbli73g6x5j2g2";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    argcomplete
+    colorama
+    crcmod
+    pytoml
+    pyserial
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/tock/tockloader";
+    license = licenses.mit;
+    description = "Tool for programming Tock onto hardware boards.";
+    maintainers = with maintainers; [ hexa ];
+  };
+}
+
diff --git a/pkgs/development/tools/misc/tokei/default.nix b/pkgs/development/tools/misc/tokei/default.nix
index 9b84a713af51..ca07a1d72676 100644
--- a/pkgs/development/tools/misc/tokei/default.nix
+++ b/pkgs/development/tools/misc/tokei/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tokei";
-  version = "11.1.0";
+  version = "11.2.0";
 
   src = fetchFromGitHub {
     owner = "XAMPPRocky";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11nmh2b7pal67nhcygp5gpzf3n158671fjjxw0vwjgrb87hkdry9";
+    sha256 = "1nyv73bawmshzzp8hkbcac5bgq0yf8f51ps5hycdw0c5qhrsjwns";
   };
 
-  cargoSha256 = "1axfkyghf6gzv24is4n6kgc28nx0d6laqpdv7j1xzkf6hdixkch7";
+  cargoSha256 = "18a0rg3hgisjd6zh4dk6rflaipmrxxszpigqg8fa816rg0f4bdc7";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [
     libiconv darwin.apple_sdk.frameworks.Security
diff --git a/pkgs/development/tools/misc/uncrustify/default.nix b/pkgs/development/tools/misc/uncrustify/default.nix
index d13212085ef7..587896fce680 100644
--- a/pkgs/development/tools/misc/uncrustify/default.nix
+++ b/pkgs/development/tools/misc/uncrustify/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "uncrustify";
-  version = "0.70.1";
+  version = "0.71.0";
 
   src = fetchFromGitHub {
     owner = product;
     repo = product;
     rev = name;
-    sha256 = "0zr3vxhd947zdvwccw3cj0vsriaawcpfjq3x94v9887hsi8fk87b";
+    sha256 = "1wyhkhn000yad94fnjj61h7lyvan6hig8wh7jxlnyp5wxdwki0pj";
   };
 
   nativeBuildInputs = [ cmake python ];
diff --git a/pkgs/development/tools/misc/ycmd/default.nix b/pkgs/development/tools/misc/ycmd/default.nix
index aee7af177305..02298d93b8af 100644
--- a/pkgs/development/tools/misc/ycmd/default.nix
+++ b/pkgs/development/tools/misc/ycmd/default.nix
@@ -2,6 +2,7 @@
 , gocode ? null
 , godef ? null
 , gotools ? null
+, nodePackages ? null
 , rustracerd ? null
 , fixDarwinDylibNames, Cocoa ? null
 }:
@@ -69,6 +70,9 @@ stdenv.mkDerivation {
     TARGET=$out/lib/ycmd/third_party/go/src/golang.org/x/tools/cmd/gopls
     mkdir -p $TARGET
     ln -sf ${gotools}/bin/gopls $TARGET
+  '' + lib.optionalString (nodePackages != null) ''
+    TARGET=$out/lib/ycmd/third_party/tsserver
+    ln -sf ${nodePackages.typescript} $TARGET
   '' + lib.optionalString (rustracerd != null) ''
     TARGET=$out/lib/ycmd/third_party/racerd/target/release
     mkdir -p $TARGET
diff --git a/pkgs/development/tools/mod/default.nix b/pkgs/development/tools/mod/default.nix
index 3261c8af2024..839594f4cc80 100644
--- a/pkgs/development/tools/mod/default.nix
+++ b/pkgs/development/tools/mod/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "mod";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "marwan-at-work";
     repo = "mod";
     rev = "v${version}";
-    sha256 = "1kcsdi9qls9kgklj96ycyrq5fsz5m2qj3ij63d2rwqjggqk0cab6";
+    sha256 = "1n0pipbq4fjban8hsxhyl5w8xrl4ai1pvgd02i1j1awmm2l3ykzl";
   };
 
-  modSha256 = "0famjypv5qg9lgzw4pz2kz70l50cn6n6nbjyk7jrzmd6bjzd0ypl";
+  vendorSha256 = "032s62rjjq7bqiz5fg17yfkq4j4dsbl6vhvs1wf2sg8jvbqmvdwn";
 
   subPackages = [ "cmd/mod" ];
 
@@ -26,4 +26,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/ocaml/ocamlformat/default.nix b/pkgs/development/tools/ocaml/ocamlformat/default.nix
index 9a034a2b0473..c79f65b47a80 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/default.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/default.nix
@@ -2,7 +2,7 @@
 
 with ocamlPackages; buildDunePackage rec {
   pname = "ocamlformat";
-  version = "0.14.1";
+  version = "0.14.2";
 
   minimumOCamlVersion = "4.06";
 
@@ -10,7 +10,7 @@ with ocamlPackages; buildDunePackage rec {
 
   src = fetchurl {
     url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}.tbz";
-    sha256 = "03wn46xib63748157xchj7gflkw5000fcjw6n89h9g82q9slazaa";
+    sha256 = "16phz1sg9b070p6fm8d42j0piizg05vghdjmw8aj7xm82b1pm7sz";
   };
 
   buildInputs = [
diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix
index 5daeb384cc51..973f777d8cb9 100644
--- a/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -7,11 +7,11 @@
 stdenv.mkDerivation rec {
 
   pname = "omnisharp-roslyn";
-  version = "1.34.15";
-  
+  version = "1.35.1";
+
   src = fetchurl {
     url = "https://github.com/OmniSharp/omnisharp-roslyn/releases/download/v${version}/omnisharp-mono.tar.gz";
-    sha256 = "16wjp89lzg33cap99jv1vgqvdx0y0xvb892fpihwg62iafh10b8m";
+    sha256 = "0gx87qc9r3lhqn6q95y74z67sjcxnazkkdi9zswmaqyvjn8x7vf4";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "OmniSharp based on roslyn workspaces";
+    homepage = "https://github.com/OmniSharp/omnisharp-roslyn";
     platforms = platforms.linux;
     license = licenses.mit;
     maintainers = with maintainers; [ tesq0 ];
diff --git a/pkgs/development/tools/oq/default.nix b/pkgs/development/tools/oq/default.nix
new file mode 100644
index 000000000000..ca9c648adfbd
--- /dev/null
+++ b/pkgs/development/tools/oq/default.nix
@@ -0,0 +1,37 @@
+{ lib, fetchFromGitHub, crystal, jq, libxml2, makeWrapper }:
+
+crystal.buildCrystalPackage rec {
+  pname = "oq";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "Blacksmoke16";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1zg4kxpfi3sap4cwp42zg46j5dv0nf926qdqm7k22ncm6jdrgpgw";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ jq libxml2 ];
+
+  format = "crystal";
+  crystalBinaries.oq.src = "src/oq_cli.cr";
+
+  preCheck = ''
+    mkdir bin
+    cp oq bin/oq
+  '';
+
+  postInstall = ''
+    wrapProgram "$out/bin/oq" \
+      --prefix PATH : "${lib.makeBinPath [ jq ]}"
+  '';
+
+  meta = with lib; {
+    description = "A performant, and portable jq wrapper";
+    homepage = "https://blacksmoke16.github.io/oq/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/out-of-tree/default.nix b/pkgs/development/tools/out-of-tree/default.nix
index 5faeec2387d4..434f0186d891 100644
--- a/pkgs/development/tools/out-of-tree/default.nix
+++ b/pkgs/development/tools/out-of-tree/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   postFixup = ''
-    wrapProgram $bin/bin/out-of-tree \
+    wrapProgram $out/bin/out-of-tree \
       --prefix PATH : "${stdenv.lib.makeBinPath [ qemu docker which ]}"
   '';
 
diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix
index d158f3bf1558..32ac95cff6a4 100644
--- a/pkgs/development/tools/packer/default.nix
+++ b/pkgs/development/tools/packer/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "packer";
-  version = "1.5.5";
+  version = "1.5.6";
 
   goPackagePath = "github.com/hashicorp/packer";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    sha256 = "1l5n6s4fg6rgb7k845hsxgrs44y9bs2hmdxqzfbayiv8nz1qg286";
+    sha256 = "0pwygrh6pjmx8a1jc12929x0slj7w3b8p3pzswnbk7klyhj4jkp8";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/packet-cli/default.nix b/pkgs/development/tools/packet-cli/default.nix
index 52bb0f158446..a484098f0c60 100644
--- a/pkgs/development/tools/packet-cli/default.nix
+++ b/pkgs/development/tools/packet-cli/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "17f3ax7pjm5k93cxj7fd8hwr4id1lbzz9pkl2xflpxydi89bwdfz";
   };
 
-  modSha256 = "1hyv1vxk1rsr3jq3b08q0487sqf3y0km3mlwvqivib1y6hrknnnr";
+  vendorSha256 = "10praxaiscxq4v3zknrabldxl7rpklkr5wdlwa5lxsx0if8mrvp7";
 
   meta = with stdenv.lib; {
     description = "Official Packet CLI";
@@ -20,4 +20,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ filalex77 ];
     platforms = platforms.all;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/pandoc/default.nix b/pkgs/development/tools/pandoc/default.nix
new file mode 100644
index 000000000000..ce7132b0007b
--- /dev/null
+++ b/pkgs/development/tools/pandoc/default.nix
@@ -0,0 +1,29 @@
+{ haskellPackages, haskell, removeReferencesTo }:
+
+let
+  static = haskell.lib.justStaticExecutables haskellPackages.pandoc;
+
+in
+  (haskell.lib.overrideCabal static (drv: {
+    configureFlags = drv.configureFlags or [] ++ ["-fembed_data_files"];
+    buildDepends = drv.buildDepends or [] ++ [haskellPackages.file-embed];
+    buildTools = (drv.buildTools or []) ++ [ removeReferencesTo ];
+  })).overrideAttrs (drv: {
+
+    # These libraries are still referenced, because pandoc references
+    # their `Paths_*` module for figuring out their version.
+    # The `Paths_*` module is generated by Cabal, and contains the
+    # version, but also paths to e.g. the data directories, which
+    # lead to a transitive runtime dependency on the whole GHC distribution.
+    # This should ideally be fixed in haskellPackages (or even Cabal),
+    # but a minimal pandoc is important enough to patch it manually.
+    disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.HTTP ];
+    postInstall = ''
+      remove-references-to \
+        -t ${haskellPackages.pandoc-types} \
+        $out/bin/pandoc
+      remove-references-to \
+        -t ${haskellPackages.HTTP} \
+        $out/bin/pandoc
+    '';
+  })
diff --git a/pkgs/development/tools/parsing/jshon/default.nix b/pkgs/development/tools/parsing/jshon/default.nix
index cff36d2cb523..04a1a637207d 100644
--- a/pkgs/development/tools/parsing/jshon/default.nix
+++ b/pkgs/development/tools/parsing/jshon/default.nix
@@ -1,29 +1,27 @@
 { stdenv, lib, fetchFromGitHub, fetchpatch, jansson }:
 
 stdenv.mkDerivation rec {
-  name = "jshon-20160111.2";
-
-  rev = "a61d7f2f85f4627bc3facdf951746f0fd62334b7";
-  sha256 = "1053w7jbl90q3p5y34pi4i8an1ddsjzwaib5cfji75ivamc5wdmh";
+  pname = "jshon";
+  version = "20170302";
 
   src = fetchFromGitHub {
-    inherit rev sha256;
     owner = "keenerd";
     repo = "jshon";
+    rev = "d919aeaece37962251dbe6c1ee50f0028a5c90e4";
+    sha256 = "1x4zfmsjq0l2y994bxkhx3mn5vzjxxr39iib213zjchi9h6yxvnc";
   };
 
+  buildInputs = [ jansson ];
+
   patches = [
-    # Fix null termination in read_stream.
-    # https://github.com/keenerd/jshon/issues/53
     (fetchpatch {
-      url = "https://github.com/mbrock/jshon/commit/32288dd186573ceb58164f30be1782d4580466d8.patch";
-      sha256 = "04rss2nprl9nqblc7smq0477n54hm801xgnnmvyzni313i1n6vhl";
+      # https://github.com/keenerd/jshon/pull/62
+      url = "https://github.com/keenerd/jshon/commit/96b4e9dbf578be7b31f29740b608aa7b34df3318.patch";
+      sha256 = "0kwbn3xb37iqb5y1n8vhzjiwlbg5jmki3f38pzakc24kzc5ksmaa";
     })
   ];
 
-  buildInputs = [ jansson ];
-
-  patchPhase =
+  postPatch =
     ''
       substituteInPlace Makefile --replace "/usr/" "/"
     '';
diff --git a/pkgs/development/tools/parsing/re2c/default.nix b/pkgs/development/tools/parsing/re2c/default.nix
index dddd407d0da2..482beeff1221 100644
--- a/pkgs/development/tools/parsing/re2c/default.nix
+++ b/pkgs/development/tools/parsing/re2c/default.nix
@@ -1,16 +1,24 @@
-{ stdenv, fetchFromGitHub, autoreconfHook }:
+{ stdenv, fetchFromGitHub, fetchpatch, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "re2c";
-  version = "1.2.1";
+  version = "1.3";
 
   src = fetchFromGitHub {
     owner  = "skvadrik";
     repo   = "re2c";
     rev    = version;
-    sha256 = "1qj0ck9msb9h8g9qb1lr57jmlj8x68ini3y3ccdifjjahhhr0hd4";
+    sha256 = "0aqlf2h6i2m3dq11dkq89p4w4c9kp4x66s5rhp84gmpz5xqv1x5h";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2020-11958.patch";
+      url = "https://github.com/skvadrik/re2c/commit/c4603ba5ce229db83a2a4fb93e6d4b4e3ec3776a.patch";
+      sha256 = "1d95ahxk92g7k87sda9gxgmr3blyfzwd2y7h9jxj8zkd74knd9zh";
+    })
+  ];
+
   nativeBuildInputs = [ autoreconfHook ];
 
   doCheck = true;
diff --git a/pkgs/development/tools/pet/default.nix b/pkgs/development/tools/pet/default.nix
index 8bbb34fabd40..d37c529ecf9b 100644
--- a/pkgs/development/tools/pet/default.nix
+++ b/pkgs/development/tools/pet/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1na3az7vicjq1rxd3ybid47yrblsdazgli0dchkbwh8zchwhqj33";
   };
 
-  modSha256 = "06ham8lsx5c1vk5jkwp1aa9g4q4g7sfq7gxz2gkffa98x2vlawyf";
+  vendorSha256 = "0pnd89iqdj3f719xf4iy5r04n51d0rrrf0qb2zjirpw7vh7g82i9";
 
   subPackages = [ "." ];
 
@@ -22,4 +22,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix b/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
index fbcee749b7cd..b96316e59d83 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
@@ -1,4 +1,4 @@
-{ pkgs ? import <nixpkgs> {}
+{ pkgs ? import <nixpkgs> { }
 , lib ? pkgs.lib
 , version
 }:
@@ -33,8 +33,8 @@ pkgs.stdenv.mkDerivation {
     mv poetry2nix $out/bin
 
     wrapProgram $out/bin/poetry2nix --prefix PATH ":" ${lib.makeBinPath [
-    pkgs.nix-prefetch-git
-  ]}
+      pkgs.nix-prefetch-git
+    ]}
 
     runHook postInstall
   '';
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
index e7f718519a59..a7fb382c7553 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
@@ -1,22 +1,20 @@
-{ pkgs ? import <nixpkgs> {}
+{ pkgs ? import <nixpkgs> { }
 , lib ? pkgs.lib
 , poetry ? null
 , poetryLib ? import ./lib.nix { inherit lib pkgs; }
 }:
 let
-  inherit (poetryLib) isCompatible readTOML;
+  inherit (poetryLib) isCompatible readTOML moduleName;
 
   # Poetry2nix version
-  version = "1.7.1";
+  version = "1.8.0";
 
   /* The default list of poetry2nix override overlays */
   defaultPoetryOverrides = (import ./overrides.nix { inherit pkgs lib; });
-
   mkEvalPep508 = import ./pep508.nix {
     inherit lib poetryLib;
     stdenv = pkgs.stdenv;
   };
-
   getFunctorFn = fn: if builtins.typeOf fn == "set" then fn.__functor else fn;
 
   # Map SPDX identifiers to license names
@@ -34,95 +32,99 @@ let
     , overrides ? [ defaultPoetryOverrides ]
     , python ? pkgs.python3
     , pwd ? projectDir
+    , preferWheels ? false
     }@attrs:
-      let
-        poetryPkg = poetry.override { inherit python; };
-
-        pyProject = readTOML pyproject;
-        poetryLock = readTOML poetrylock;
-        lockFiles = lib.getAttrFromPath [ "metadata" "files" ] poetryLock;
-
-        specialAttrs = [
-          "overrides"
-          "poetrylock"
-          "projectDir"
-          "pwd"
-        ];
-        passedAttrs = builtins.removeAttrs attrs specialAttrs;
-
-        evalPep508 = mkEvalPep508 python;
-
-        # Filter packages by their PEP508 markers & pyproject interpreter version
-        partitions = let
+    let
+      poetryPkg = poetry.override { inherit python; };
+      pyProject = readTOML pyproject;
+      poetryLock = readTOML poetrylock;
+      lockFiles =
+        let
+          lockfiles = lib.getAttrFromPath [ "metadata" "files" ] poetryLock;
+        in
+        lib.listToAttrs (lib.mapAttrsToList (n: v: { name = moduleName n; value = v; }) lockfiles);
+      specialAttrs = [
+        "overrides"
+        "poetrylock"
+        "projectDir"
+        "pwd"
+        "preferWheels"
+      ];
+      passedAttrs = builtins.removeAttrs attrs specialAttrs;
+      evalPep508 = mkEvalPep508 python;
+
+      # Filter packages by their PEP508 markers & pyproject interpreter version
+      partitions =
+        let
           supportsPythonVersion = pkgMeta: if pkgMeta ? marker then (evalPep508 pkgMeta.marker) else true;
         in
-          lib.partition supportsPythonVersion poetryLock.package;
-
-        compatible = partitions.right;
-        incompatible = partitions.wrong;
-
-        # Create an overriden version of pythonPackages
-        #
-        # We need to avoid mixing multiple versions of pythonPackages in the same
-        # closure as python can only ever have one version of a dependency
-        baseOverlay = self: super:
-          let
-            getDep = depName: self.${depName};
-
-            lockPkgs = builtins.listToAttrs (
-              builtins.map (
-                pkgMeta: rec {
-                  name = pkgMeta.name;
-                  value = self.mkPoetryDep (
-                    pkgMeta // {
-                      inherit pwd;
-                      source = pkgMeta.source or null;
-                      files = lockFiles.${name};
-                      pythonPackages = self;
-                      sourceSpec = pyProject.tool.poetry.dependencies.${name} or pyProject.tool.poetry.dev-dependencies.${name};
-                    }
-                  );
-                }
-              ) compatible
+        lib.partition supportsPythonVersion poetryLock.package;
+      compatible = partitions.right;
+      incompatible = partitions.wrong;
+
+      # Create an overriden version of pythonPackages
+      #
+      # We need to avoid mixing multiple versions of pythonPackages in the same
+      # closure as python can only ever have one version of a dependency
+      baseOverlay = self: super:
+        let
+          getDep = depName: self.${depName};
+          lockPkgs = builtins.listToAttrs
+            (
+              builtins.map
+                (
+                  pkgMeta: rec {
+                    name = moduleName pkgMeta.name;
+                    value = self.mkPoetryDep
+                      (
+                        pkgMeta // {
+                          inherit pwd preferWheels;
+                          source = pkgMeta.source or null;
+                          files = lockFiles.${name};
+                          pythonPackages = self;
+                          sourceSpec = pyProject.tool.poetry.dependencies.${name} or pyProject.tool.poetry.dev-dependencies.${name};
+                        }
+                      );
+                  }
+                ) compatible
             );
-          in
-            lockPkgs;
-        overlays = builtins.map getFunctorFn (
+        in
+        lockPkgs;
+      overlays = builtins.map getFunctorFn
+        (
           [
             (
               self: super:
                 let
-                  hooks = self.callPackage ./hooks {};
+                  hooks = self.callPackage ./hooks { };
                 in
-                  {
-                    mkPoetryDep = self.callPackage ./mk-poetry-dep.nix {
-                      inherit pkgs lib python poetryLib;
-                    };
-                    poetry = poetryPkg;
-                    # The canonical name is setuptools-scm
-                    setuptools-scm = super.setuptools_scm;
-
-                    inherit (hooks) removePathDependenciesHook poetry2nixFixupHook;
-                  }
+                {
+                  mkPoetryDep = self.callPackage ./mk-poetry-dep.nix {
+                    inherit pkgs lib python poetryLib;
+                  };
+                  poetry = poetryPkg;
+                  # The canonical name is setuptools-scm
+                  setuptools-scm = super.setuptools_scm;
+
+                  inherit (hooks) pipBuildHook removePathDependenciesHook poetry2nixFixupHook;
+                }
             )
             # Null out any filtered packages, we don't want python.pkgs from nixpkgs
-            (self: super: builtins.listToAttrs (builtins.map (x: { name = x.name; value = null; }) incompatible))
+            (self: super: builtins.listToAttrs (builtins.map (x: { name = moduleName x.name; value = null; }) incompatible))
             # Create poetry2nix layer
             baseOverlay
           ] ++ # User provided overrides
           overrides
         );
-
-        packageOverrides = lib.foldr lib.composeExtensions (self: super: {}) overlays;
-
-        py = python.override { inherit packageOverrides; self = py; };
-      in
-        {
-          python = py;
-          poetryPackages = map (pkg: py.pkgs.${pkg.name}) compatible;
-          poetryLock = poetryLock;
-          inherit pyProject;
-        };
+      packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) overlays;
+      py = python.override { inherit packageOverrides; self = py; };
+    in
+    {
+      python = py;
+      poetryPackages = map (pkg: py.pkgs.${moduleName pkg.name}) compatible;
+      poetryLock = poetryLock;
+      inherit pyProject;
+    };
 
   /* Returns a package with a python interpreter and all packages specified in the poetry.lock lock file.
 
@@ -136,15 +138,17 @@ let
     , overrides ? [ defaultPoetryOverrides ]
     , pwd ? projectDir
     , python ? pkgs.python3
+    , preferWheels ? false
     }:
-      let
-        py = mkPoetryPackages (
+    let
+      py = mkPoetryPackages
+        (
           {
-            inherit pyproject poetrylock overrides python pwd;
+            inherit pyproject poetrylock overrides python pwd preferWheels;
           }
         );
-      in
-        py.python.withPackages (_: py.poetryPackages);
+    in
+    py.python.withPackages (_: py.poetryPackages);
 
   /* Creates a Python application from pyproject.toml and poetry.lock */
   mkPoetryApplication =
@@ -153,79 +157,79 @@ let
     , pyproject ? projectDir + "/pyproject.toml"
     , poetrylock ? projectDir + "/poetry.lock"
     , overrides ? [ defaultPoetryOverrides ]
-    , meta ? {}
+    , meta ? { }
     , python ? pkgs.python3
     , pwd ? projectDir
+    , preferWheels ? false
     , ...
     }@attrs:
-      let
-        poetryPython = mkPoetryPackages {
-          inherit pyproject poetrylock overrides python pwd;
-        };
-        py = poetryPython.python;
-
-        inherit (poetryPython) pyProject;
-
-        specialAttrs = [
-          "overrides"
-          "poetrylock"
-          "projectDir"
-          "pwd"
-          "pyproject"
-        ];
-        passedAttrs = builtins.removeAttrs attrs specialAttrs;
-
-        # Get dependencies and filter out depending on interpreter version
-        getDeps = depAttr:
-          let
-            compat = isCompatible py.pythonVersion;
-            deps = pyProject.tool.poetry.${depAttr} or {};
-            depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames deps);
-          in
-            builtins.map (
-              dep:
-                let
-                  pkg = py.pkgs."${dep}";
-                  constraints = deps.${dep}.python or "";
-                  isCompat = compat constraints;
-                in
-                  if isCompat then pkg else null
-            ) depAttrs;
-
-        getInputs = attr: attrs.${attr} or [];
-        mkInput = attr: extraInputs: getInputs attr ++ extraInputs;
-
-        buildSystemPkgs = poetryLib.getBuildSystemPkgs {
-          inherit pyProject;
-          pythonPackages = py.pkgs;
-        };
-      in
-        py.pkgs.buildPythonApplication (
-          passedAttrs // {
-            pname = pyProject.tool.poetry.name;
-            version = pyProject.tool.poetry.version;
-
-            inherit src;
-
-            format = "pyproject";
-
-            buildInputs = mkInput "buildInputs" buildSystemPkgs;
-            propagatedBuildInputs = mkInput "propagatedBuildInputs" (getDeps "dependencies") ++ ([ py.pkgs.setuptools ]);
-            nativeBuildInputs = mkInput "nativeBuildInputs" [ pkgs.yj py.pkgs.removePathDependenciesHook ];
-            checkInputs = mkInput "checkInputs" (getDeps "dev-dependencies");
-
-            passthru = {
-              python = py;
-            };
-
-            meta = meta // {
-              inherit (pyProject.tool.poetry) description homepage;
-              inherit (py.meta) platforms;
-              license = getLicenseBySpdxId (pyProject.tool.poetry.license or "unknown");
-            };
-
-          }
-        );
+    let
+      poetryPython = mkPoetryPackages {
+        inherit pyproject poetrylock overrides python pwd preferWheels;
+      };
+      py = poetryPython.python;
+
+      inherit (poetryPython) pyProject;
+      specialAttrs = [
+        "overrides"
+        "poetrylock"
+        "projectDir"
+        "pwd"
+        "pyproject"
+        "preferWheels"
+      ];
+      passedAttrs = builtins.removeAttrs attrs specialAttrs;
+
+      # Get dependencies and filter out depending on interpreter version
+      getDeps = depAttr:
+        let
+          compat = isCompatible (poetryLib.getPythonVersion py);
+          deps = pyProject.tool.poetry.${depAttr} or { };
+          depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames deps);
+        in
+        builtins.map
+          (
+            dep:
+            let
+              pkg = py.pkgs."${dep}";
+              constraints = deps.${dep}.python or "";
+              isCompat = compat constraints;
+            in if isCompat then pkg else null
+          ) depAttrs;
+      getInputs = attr: attrs.${attr} or [ ];
+      mkInput = attr: extraInputs: getInputs attr ++ extraInputs;
+      buildSystemPkgs = poetryLib.getBuildSystemPkgs {
+        inherit pyProject;
+        pythonPackages = py.pkgs;
+      };
+    in
+    py.pkgs.buildPythonApplication
+      (
+        passedAttrs // {
+          pname = moduleName pyProject.tool.poetry.name;
+          version = pyProject.tool.poetry.version;
+
+          inherit src;
+
+          format = "pyproject";
+
+          buildInputs = mkInput "buildInputs" buildSystemPkgs;
+          propagatedBuildInputs = mkInput "propagatedBuildInputs" (getDeps "dependencies") ++ ([ py.pkgs.setuptools ]);
+          nativeBuildInputs = mkInput "nativeBuildInputs" [ pkgs.yj py.pkgs.removePathDependenciesHook ];
+          checkInputs = mkInput "checkInputs" (getDeps "dev-dependencies");
+
+          passthru = {
+            python = py;
+          };
+
+          meta = meta // {
+            inherit (pyProject.tool.poetry) description homepage;
+            inherit (py.meta) platforms;
+            license = getLicenseBySpdxId (pyProject.tool.poetry.license or "unknown");
+          };
+
+        }
+      );
 
   /* Poetry2nix CLI used to supplement SHA-256 hashes for git dependencies  */
   cli = import ./cli.nix { inherit pkgs lib version; };
@@ -247,7 +251,7 @@ in
         defaultSet = defaultPoetryOverrides self super;
         customSet = fn self super;
       in
-        defaultSet // customSet;
+      defaultSet // customSet;
   };
 
   /*
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh b/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh
new file mode 100644
index 000000000000..97f54b23416d
--- /dev/null
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh
@@ -0,0 +1,24 @@
+source $stdenv/setup
+set -euo pipefail
+
+curl="curl            \
+ --location           \
+ --max-redirs 20      \
+ --retry 2            \
+ --disable-epsv       \
+ --cookie-jar cookies \
+ --insecure           \
+ --speed-time 5       \
+ -#                   \
+ --fail               \
+ $curlOpts            \
+ $NIX_CURL_FLAGS"
+
+echo "Trying to fetch wheel with predicted URL: $predictedURL"
+
+$curl $predictedURL --output $out && exit 0
+
+echo "Predicted URL '$predictedURL' failed, querying pypi.org"
+$curl "https://pypi.org/pypi/$pname/json" | jq -r ".releases.\"$version\"[] | select(.filename == \"$file\") | .url" > url
+url=$(cat url)
+$curl -k $url --output $out
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
index 12d2bc962065..ae5867b83372 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
@@ -2,31 +2,48 @@
 , callPackage
 , makeSetupHook
 , yj
+, wheel
+, pip
 }:
 let
   pythonInterpreter = python.pythonForBuild.interpreter;
+  pythonSitePackages = python.sitePackages;
 in
 {
 
-  removePathDependenciesHook = callPackage (
-    {}:
+  removePathDependenciesHook = callPackage
+    (
+      {}:
       makeSetupHook {
         name = "remove-path-dependencies.sh";
-        deps = [];
+        deps = [ ];
         substitutions = {
           inherit pythonInterpreter;
           yj = "${yj}/bin/yj";
           pyprojectPatchScript = "${./pyproject-without-path.py}";
         };
       } ./remove-path-dependencies.sh
-  ) {};
+    ) { };
 
-  poetry2nixFixupHook = callPackage (
-    {}:
+  pipBuildHook = callPackage
+    (
+      { pip, wheel }:
+      makeSetupHook {
+        name = "pip-build-hook.sh";
+        deps = [ pip wheel ];
+        substitutions = {
+          inherit pythonInterpreter pythonSitePackages;
+        };
+      } ./pip-build-hook.sh
+    ) { };
+
+  poetry2nixFixupHook = callPackage
+    (
+      {}:
       makeSetupHook {
         name = "fixup-hook.sh";
-        deps = [];
+        deps = [ ];
       } ./fixup-hook.sh
-  ) {};
+    ) { };
 
 }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pip-build-hook.sh b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pip-build-hook.sh
new file mode 100644
index 000000000000..fa7b698fb510
--- /dev/null
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pip-build-hook.sh
@@ -0,0 +1,50 @@
+# Setup hook to use for pip projects
+echo "Sourcing pip-build-hook"
+
+pipBuildPhase() {
+    echo "Executing pipBuildPhase"
+    runHook preBuild
+
+    # Prefer using setup.py to avoid build-system dependencies if we have a setup.py
+    if [ -z "${dontPreferSetupPy-}" ]; then
+      if test -e setup.py && test -e pyproject.toml; then
+        echo "Removing pyproject.toml..."
+        rm -f pyproject.toml
+      fi
+    fi
+
+    mkdir -p dist
+    echo "Creating a wheel..."
+    @pythonInterpreter@ -m pip wheel --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist .
+    echo "Finished creating a wheel..."
+
+    runHook postBuild
+    echo "Finished executing pipBuildPhase"
+}
+
+pipShellHook() {
+    echo "Executing pipShellHook"
+    runHook preShellHook
+
+    # Long-term setup.py should be dropped.
+    if [ -e pyproject.toml ]; then
+      tmp_path=$(mktemp -d)
+      export PATH="$tmp_path/bin:$PATH"
+      export PYTHONPATH="$tmp_path/@pythonSitePackages@:$PYTHONPATH"
+      mkdir -p "$tmp_path/@pythonSitePackages@"
+      @pythonInterpreter@ -m pip install -e . --prefix "$tmp_path" >&2
+    fi
+
+    runHook postShellHook
+    echo "Finished executing pipShellHook"
+}
+
+if [ -z "${dontUsePipBuild-}" ] && [ -z "${buildPhase-}" ]; then
+    echo "Using pipBuildPhase"
+    buildPhase=pipBuildPhase
+fi
+
+if [ -z "${shellHook-}" ]; then
+    echo "Using pipShellHook"
+    shellHook=pipShellHook
+fi
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-path.py b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-path.py
index bb61e4a5cb4b..5d8fbcfe6b4d 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-path.py
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-path.py
@@ -6,7 +6,14 @@ import sys
 
 data = json.load(sys.stdin)
 
-for dep in data['tool']['poetry']['dependencies'].values():
+
+def get_deep(o, path):
+    for p in path.split('.'):
+        o = o.get(p, {})
+    return o
+
+
+for dep in get_deep(data, 'tool.poetry.dependencies').values():
     if isinstance(dep, dict):
         try:
             del dep['path'];
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
index f4497afb8bc9..ed47837ee439 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
@@ -8,6 +8,20 @@ let
     genList (i: if i == idx then value else (builtins.elemAt list i)) (length list)
   );
 
+  # Do some canonicalisation of module names
+  moduleName = name: lib.toLower (lib.replaceStrings [ "_" "." ] [ "-" "-" ] name);
+
+  # Get a full semver pythonVersion from a python derivation
+  getPythonVersion = python:
+    let
+      pyVer = lib.splitVersion python.pythonVersion ++ [ "0" ];
+      ver = lib.splitVersion python.version;
+      major = l: lib.elemAt l 0;
+      minor = l: lib.elemAt l 1;
+      joinVersion = v: lib.concatStringsSep "." v;
+    in
+    joinVersion ( if major pyVer == major ver && minor pyVer == minor ver then ver else pyVer);
+
   # Compare a semver expression with a version
   isCompatible = version:
     let
@@ -18,41 +32,41 @@ let
       };
       splitRe = "(" + (builtins.concatStringsSep "|" (builtins.map (x: lib.replaceStrings [ "|" ] [ "\\|" ] x) (lib.attrNames operators))) + ")";
     in
-      expr:
+    expr:
+    let
+      tokens = builtins.filter (x: x != "") (builtins.split splitRe expr);
+      combine = acc: v:
         let
-          tokens = builtins.filter (x: x != "") (builtins.split splitRe expr);
-          combine = acc: v:
-            let
-              isOperator = builtins.typeOf v == "list";
-              operator = if isOperator then (builtins.elemAt v 0) else acc.operator;
-            in
-              if isOperator then (acc // { inherit operator; }) else {
-                inherit operator;
-                state = operators."${operator}" acc.state (satisfiesSemver version v);
-              };
-          initial = { operator = "&&"; state = true; };
+          isOperator = builtins.typeOf v == "list";
+          operator = if isOperator then (builtins.elemAt v 0) else acc.operator;
         in
-          if expr == "" then true else (builtins.foldl' combine initial tokens).state;
-
+        if isOperator then (acc // { inherit operator; }) else {
+          inherit operator;
+          state = operators."${operator}" acc.state (satisfiesSemver version v);
+        };
+      initial = { operator = "&&"; state = true; };
+    in if expr == "" then true else (builtins.foldl' combine initial tokens).state;
   fromTOML = builtins.fromTOML or
     (
-      toml: builtins.fromJSON (
-        builtins.readFile (
-          pkgs.runCommand "from-toml"
-            {
-              inherit toml;
-              allowSubstitutes = false;
-              preferLocalBuild = true;
-            }
-            ''
-              ${pkgs.remarshal}/bin/remarshal \
-                -if toml \
-                -i <(echo "$toml") \
-                -of json \
-                -o $out
-            ''
+      toml: builtins.fromJSON
+        (
+          builtins.readFile
+            (
+              pkgs.runCommand "from-toml"
+                {
+                  inherit toml;
+                  allowSubstitutes = false;
+                  preferLocalBuild = true;
+                }
+                ''
+                  ${pkgs.remarshal}/bin/remarshal \
+                    -if toml \
+                    -i <(echo "$toml") \
+                    -of json \
+                    -o $out
+                ''
+            )
         )
-      )
     );
   readTOML = path: fromTOML (builtins.readFile path);
 
@@ -63,10 +77,61 @@ let
     let
       ml = pkgs.pythonManylinuxPackages;
     in
-      if lib.strings.hasInfix "manylinux1" f then { pkg = [ ml.manylinux1 ]; str = "1"; }
-      else if lib.strings.hasInfix "manylinux2010" f then { pkg = [ ml.manylinux2010 ]; str = "2010"; }
-      else if lib.strings.hasInfix "manylinux2014" f then { pkg = [ ml.manylinux2014 ]; str = "2014"; }
-      else { pkg = []; str = null; };
+    if lib.strings.hasInfix "manylinux1" f then { pkg = [ ml.manylinux1 ]; str = "1"; }
+    else if lib.strings.hasInfix "manylinux2010" f then { pkg = [ ml.manylinux2010 ]; str = "2010"; }
+    else if lib.strings.hasInfix "manylinux2014" f then { pkg = [ ml.manylinux2014 ]; str = "2014"; }
+    else { pkg = [ ]; str = null; };
+
+  # Predict URL from the PyPI index.
+  # Args:
+  #   pname: package name
+  #   file: filename including extension
+  #   hash: SRI hash
+  #   kind: Language implementation and version tag
+  predictURLFromPypi = lib.makeOverridable
+    (
+      { pname, file, hash, kind }:
+      "https://files.pythonhosted.org/packages/${kind}/${lib.toLower (builtins.substring 0 1 file)}/${pname}/${file}"
+    );
+
+
+  # Fetch the wheels from the PyPI index.
+  # We need to first get the proper URL to the wheel.
+  # Args:
+  #   pname: package name
+  #   file: filename including extension
+  #   hash: SRI hash
+  #   kind: Language implementation and version tag
+  fetchWheelFromPypi = lib.makeOverridable
+    (
+      { pname, file, hash, kind, curlOpts ? "" }:
+      let
+        version = builtins.elemAt (builtins.split "-" file) 2;
+      in
+      (pkgs.stdenvNoCC.mkDerivation {
+        name = file;
+        nativeBuildInputs = [
+          pkgs.curl
+          pkgs.jq
+        ];
+        isWheel = true;
+        system = "builtin";
+
+        preferLocalBuild = true;
+        impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
+          "NIX_CURL_FLAGS"
+        ];
+
+        predictedURL = predictURLFromPypi { inherit pname file hash kind; };
+        inherit pname file version curlOpts;
+
+        builder = ./fetch-wheel.sh;
+
+        outputHashMode = "flat";
+        outputHashAlgo = "sha256";
+        outputHash = hash;
+      })
+    );
 
   # Fetch the artifacts from the PyPI index. Since we get all
   # info we need from the lock file we don't use nixpkgs' fetchPyPi
@@ -78,25 +143,27 @@ let
   #   file: filename including extension
   #   hash: SRI hash
   #   kind: Language implementation and version tag https://www.python.org/dev/peps/pep-0427/#file-name-convention
-  fetchFromPypi = lib.makeOverridable (
-    { pname, file, hash, kind }:
-      pkgs.fetchurl {
-        url = "https://files.pythonhosted.org/packages/${kind}/${lib.toLower (builtins.substring 0 1 file)}/${pname}/${file}";
-        inherit hash;
-      }
-  );
-
+  fetchFromPypi = lib.makeOverridable
+    (
+      { pname, file, hash, kind }:
+      if lib.strings.hasSuffix "whl" file then fetchWheelFromPypi { inherit pname file hash kind; }
+      else
+        pkgs.fetchurl {
+          url = predictURLFromPypi { inherit pname file hash kind; };
+          inherit hash;
+        }
+    );
   getBuildSystemPkgs =
     { pythonPackages
     , pyProject
     }:
-      let
-        buildSystem = lib.getAttrFromPath [ "build-system" "build-backend" ] pyProject;
-        drvAttr = builtins.elemAt (builtins.split "\\.|:" buildSystem) 0;
-      in
-        if buildSystem == "" then [] else (
-          [ pythonPackages.${drvAttr} or (throw "unsupported build system ${buildSystem}") ]
-        );
+    let
+      buildSystem = lib.attrByPath [ "build-system" "build-backend" ] "" pyProject;
+      drvAttr = moduleName (builtins.elemAt (builtins.split "\\.|:" buildSystem) 0);
+    in
+    if buildSystem == "" then [ ] else (
+      [ pythonPackages.${drvAttr} or (throw "unsupported build system ${buildSystem}") ]
+    );
 
   # Find gitignore files recursively in parent directory stopping with .git
   findGitIgnores = path:
@@ -105,9 +172,9 @@ let
       gitIgnore = path + "/.gitignore";
       isGitRoot = builtins.pathExists (path + "/.git");
       hasGitIgnore = builtins.pathExists gitIgnore;
-      gitIgnores = if hasGitIgnore then [ gitIgnore ] else [];
+      gitIgnores = if hasGitIgnore then [ gitIgnore ] else [ ];
     in
-      lib.optionals (builtins.toString path != "/" && ! isGitRoot) (findGitIgnores parent) ++ gitIgnores;
+    lib.optionals (builtins.toString path != "/" && ! isGitRoot) (findGitIgnores parent) ++ gitIgnores;
 
   /*
   Provides a source filtering mechanism that:
@@ -124,22 +191,25 @@ let
         || (type == "regular" && ! lib.strings.hasSuffix ".pyc" name)
       ;
     in
-      lib.cleanSourceWith {
-        filter = lib.cleanSourceFilter;
-        src = lib.cleanSourceWith {
-          filter = pkgs.nix-gitignore.gitignoreFilterPure pycacheFilter gitIgnores src;
-          inherit src;
-        };
+    lib.cleanSourceWith {
+      filter = lib.cleanSourceFilter;
+      src = lib.cleanSourceWith {
+        filter = pkgs.nix-gitignore.gitignoreFilterPure pycacheFilter gitIgnores src;
+        inherit src;
       };
+    };
 in
 {
   inherit
     fetchFromPypi
+    fetchWheelFromPypi
     getManyLinuxDeps
     isCompatible
     readTOML
     getBuildSystemPkgs
     satisfiesSemver
     cleanPythonSources
+    moduleName
+    getPythonVersion
     ;
 }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
index 5e71190d28fe..2467dad31e1a 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
@@ -10,74 +10,68 @@
 , version
 , files
 , source
-, dependencies ? {}
+, dependencies ? { }
 , pythonPackages
 , python-versions
 , pwd
 , sourceSpec
 , supportedExtensions ? lib.importJSON ./extensions.json
+, preferWheels ? false
 , ...
 }:
 
-pythonPackages.callPackage (
-  { preferWheel ? false
-  , ...
-  }@args:
+pythonPackages.callPackage
+  (
+    { preferWheel ? preferWheels
+    , ...
+    }@args:
     let
-      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromPypi;
+      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromPypi moduleName;
 
       inherit (import ./pep425.nix {
         inherit lib python;
         inherit (pkgs) stdenv;
       }) selectWheel
         ;
-
-      fileCandidates = let
-        supportedRegex = ("^.*?(" + builtins.concatStringsSep "|" supportedExtensions + ")");
-        matchesVersion = fname: builtins.match ("^.*" + builtins.replaceStrings [ "." ] [ "\\." ] version + ".*$") fname != null;
-        hasSupportedExtension = fname: builtins.match supportedRegex fname != null;
-        isCompatibleEgg = fname: ! lib.strings.hasSuffix ".egg" fname || lib.strings.hasSuffix "py${python.pythonVersion}.egg" fname;
-      in
+      fileCandidates =
+        let
+          supportedRegex = ("^.*?(" + builtins.concatStringsSep "|" supportedExtensions + ")");
+          matchesVersion = fname: builtins.match ("^.*" + builtins.replaceStrings [ "." ] [ "\\." ] version + ".*$") fname != null;
+          hasSupportedExtension = fname: builtins.match supportedRegex fname != null;
+          isCompatibleEgg = fname: ! lib.strings.hasSuffix ".egg" fname || lib.strings.hasSuffix "py${python.pythonVersion}.egg" fname;
+        in
         builtins.filter (f: matchesVersion f.file && hasSupportedExtension f.file && isCompatibleEgg f.file) files;
-
       toPath = s: pwd + "/${s}";
-
       isSource = source != null;
       isGit = isSource && source.type == "git";
       isLocal = isSource && source.type == "directory";
-
       localDepPath = toPath source.url;
       pyProject = poetryLib.readTOML (localDepPath + "/pyproject.toml");
-
       buildSystemPkgs = poetryLib.getBuildSystemPkgs {
         inherit pythonPackages pyProject;
       };
-
-      fileInfo = let
-        isBdist = f: lib.strings.hasSuffix "whl" f.file;
-        isSdist = f: ! isBdist f && ! isEgg f;
-        isEgg = f: lib.strings.hasSuffix ".egg" f.file;
-
-        binaryDist = selectWheel fileCandidates;
-        sourceDist = builtins.filter isSdist fileCandidates;
-        eggs = builtins.filter isEgg fileCandidates;
-
-        entries = (if preferWheel then binaryDist ++ sourceDist else sourceDist ++ binaryDist) ++ eggs;
-
-        lockFileEntry = builtins.head entries;
-
-        _isEgg = isEgg lockFileEntry;
-      in
+      fileInfo =
+        let
+          isBdist = f: lib.strings.hasSuffix "whl" f.file;
+          isSdist = f: ! isBdist f && ! isEgg f;
+          isEgg = f: lib.strings.hasSuffix ".egg" f.file;
+          binaryDist = selectWheel fileCandidates;
+          sourceDist = builtins.filter isSdist fileCandidates;
+          eggs = builtins.filter isEgg fileCandidates;
+          entries = ( if preferWheel then binaryDist ++ sourceDist else sourceDist ++ binaryDist) ++ eggs;
+          lockFileEntry = builtins.head entries;
+          _isEgg = isEgg lockFileEntry;
+        in
         rec {
           inherit (lockFileEntry) file hash;
           name = file;
           format =
             if _isEgg then "egg"
             else if lib.strings.hasSuffix ".whl" name then "wheel"
-            else "setuptools";
+            else "pyproject";
           kind =
             if _isEgg then python.pythonVersion
-            else if format == "setuptools" then "source"
+            else if format == "pyproject" then "source"
             else (builtins.elemAt (lib.strings.splitString "-" name) 2);
         };
 
@@ -88,63 +82,65 @@ pythonPackages.callPackage (
         "toml" # Toml is an extra for setuptools-scm
       ];
       baseBuildInputs = lib.optional (! lib.elem name skipSetupToolsSCM) pythonPackages.setuptools-scm;
-
-      format = if isLocal then "pyproject" else if isGit then "setuptools" else fileInfo.format;
+      format = if isLocal then "pyproject" else if isGit then "pyproject" else fileInfo.format;
     in
-
-      buildPythonPackage {
-        pname = name;
-        version = version;
-
-        inherit format;
-
-        doCheck = false; # We never get development deps
-
-        # Stripping pre-built wheels lead to `ELF load command address/offset not properly aligned`
-        dontStrip = format == "wheel";
-
-        nativeBuildInputs = [
-          pythonPackages.poetry2nixFixupHook
-        ]
-        ++ lib.optional (!isSource && (getManyLinuxDeps fileInfo.name).str != null) autoPatchelfHook
-        ++ lib.optional (format == "pyproject") pythonPackages.removePathDependenciesHook
-        ;
-
-        buildInputs = (
-          baseBuildInputs
-          ++ lib.optional (!isSource) (getManyLinuxDeps fileInfo.name).pkg
-          ++ lib.optional isLocal buildSystemPkgs
-        );
-
-        propagatedBuildInputs = let
-          compat = isCompatible python.pythonVersion;
-          deps = lib.filterAttrs (n: v: v) (
-            lib.mapAttrs (
-              n: v:
-                let
-                  constraints = v.python or "";
-                in
-                  compat constraints
-            ) dependencies
-          );
+    buildPythonPackage {
+      pname = moduleName name;
+      version = version;
+
+      inherit format;
+
+      doCheck = false; # We never get development deps
+
+      # Stripping pre-built wheels lead to `ELF load command address/offset not properly aligned`
+      dontStrip = format == "wheel";
+
+      nativeBuildInputs = [
+        pythonPackages.poetry2nixFixupHook
+      ]
+      ++ lib.optional (!isSource && (getManyLinuxDeps fileInfo.name).str != null) autoPatchelfHook
+      ++ lib.optional (format == "pyproject") pythonPackages.removePathDependenciesHook
+      ;
+
+      buildInputs = (
+        baseBuildInputs
+        ++ lib.optional (!isSource) (getManyLinuxDeps fileInfo.name).pkg
+        ++ lib.optional isLocal buildSystemPkgs
+      );
+
+      propagatedBuildInputs =
+        let
+          compat = isCompatible (poetryLib.getPythonVersion python);
+          deps = lib.filterAttrs (n: v: v)
+            (
+              lib.mapAttrs
+                (
+                  n: v:
+                    let
+                      constraints = v.python or "";
+                    in
+                    compat constraints
+                ) dependencies
+            );
           depAttrs = lib.attrNames deps;
         in
-          builtins.map (n: pythonPackages.${lib.toLower n}) depAttrs;
+        builtins.map (n: pythonPackages.${moduleName n}) depAttrs;
 
-        meta = {
-          broken = ! isCompatible python.pythonVersion python-versions;
-          license = [];
-          inherit (python.meta) platforms;
-        };
+      meta = {
+        broken = ! isCompatible (poetryLib.getPythonVersion python) python-versions;
+        license = [ ];
+        inherit (python.meta) platforms;
+      };
 
-        passthru = {
-          inherit args;
-        };
+      passthru = {
+        inherit args;
+      };
 
-        # We need to retrieve kind from the interpreter and the filename of the package
-        # Interpreters should declare what wheel types they're compatible with (python type + ABI)
-        # Here we can then choose a file based on that info.
-        src = if isGit then (
+      # We need to retrieve kind from the interpreter and the filename of the package
+      # Interpreters should declare what wheel types they're compatible with (python type + ABI)
+      # Here we can then choose a file based on that info.
+      src =
+        if isGit then (
           builtins.fetchGit {
             inherit (source) url;
             rev = source.reference;
@@ -154,6 +150,5 @@ pythonPackages.callPackage (
           pname = name;
           inherit (fileInfo) file hash kind;
         };
-      }
-
-) {}
+    }
+  ) { }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
index 04340ac4e89f..d18e6b8293f3 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
@@ -1,4 +1,4 @@
-{ pkgs ? import <nixpkgs> {}
+{ pkgs ? import <nixpkgs> { }
 , lib ? pkgs.lib
 , stdenv ? pkgs.stdenv
 }:
@@ -6,202 +6,256 @@
 self: super:
 
 {
-  astroid = super.astroid.overridePythonAttrs (
-    old: rec {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-      doCheck = false;
-    }
-  );
+  astroid = super.astroid.overridePythonAttrs
+    (
+      old: rec {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+        doCheck = false;
+      }
+    );
 
-  av = super.av.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [
-        pkgs.pkgconfig
-      ];
-      buildInputs = old.buildInputs ++ [ pkgs.ffmpeg_4 ];
-    }
-  );
+  av = super.av.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [
+          pkgs.pkgconfig
+        ];
+        buildInputs = old.buildInputs ++ [ pkgs.ffmpeg_4 ];
+      }
+    );
 
-  bcrypt = super.bcrypt.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ pkgs.libffi ];
-    }
-  );
+  bcrypt = super.bcrypt.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ pkgs.libffi ];
+      }
+    );
 
   cffi =
     # cffi is bundled with pypy
     if self.python.implementation == "pypy" then null else (
-      super.cffi.overridePythonAttrs (
-        old: {
-          buildInputs = old.buildInputs ++ [ pkgs.libffi ];
-        }
-      )
+      super.cffi.overridePythonAttrs
+        (
+          old: {
+            buildInputs = old.buildInputs ++ [ pkgs.libffi ];
+          }
+        )
     );
 
-  cftime = super.cftime.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        self.cython
-      ];
-    }
-  );
+  cftime = super.cftime.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          self.cython
+        ];
+      }
+    );
 
-  cryptography = super.cryptography.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ pkgs.openssl ];
-    }
-  );
+  configparser = super.configparser.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          self.toml
+        ];
 
-  django = (
-    super.django.overridePythonAttrs (
+        postPatch = ''
+          substituteInPlace setup.py --replace 'setuptools.setup()' 'setuptools.setup(version="${old.version}")'
+        '';
+      }
+    );
+
+  cryptography = super.cryptography.overridePythonAttrs
+    (
       old: {
-        propagatedNativeBuildInputs = (old.propagatedNativeBuildInputs or [])
-        ++ [ pkgs.gettext ];
+        buildInputs = old.buildInputs ++ [ pkgs.openssl ];
       }
-    )
-  );
+    );
 
-  django-bakery = super.django-bakery.overridePythonAttrs (
-    old: {
-      configurePhase = ''
-        if ! test -e LICENSE; then
-          touch LICENSE
-        fi
-      '' + (old.configurePhase or "");
-    }
+  django = (
+    super.django.overridePythonAttrs
+      (
+        old: {
+          propagatedNativeBuildInputs = (old.propagatedNativeBuildInputs or [ ])
+            ++ [ pkgs.gettext ];
+        }
+      )
   );
 
-  dlib = super.dlib.overridePythonAttrs (
-    old: {
-      # Parallel building enabled
-      inherit (pkgs.python.pkgs.dlib) patches;
+  django-bakery = super.django-bakery.overridePythonAttrs
+    (
+      old: {
+        configurePhase = ''
+          if ! test -e LICENSE; then
+            touch LICENSE
+          fi
+        '' + (old.configurePhase or "");
+      }
+    );
+
+  dlib = super.dlib.overridePythonAttrs
+    (
+      old: {
+        # Parallel building enabled
+        inherit (pkgs.python.pkgs.dlib) patches;
 
-      enableParallelBuilding = true;
-      dontUseCmakeConfigure = true;
+        enableParallelBuilding = true;
+        dontUseCmakeConfigure = true;
 
-      nativeBuildInputs = old.nativeBuildInputs ++ pkgs.dlib.nativeBuildInputs;
-      buildInputs = old.buildInputs ++ pkgs.dlib.buildInputs;
-    }
-  );
+        nativeBuildInputs = old.nativeBuildInputs ++ pkgs.dlib.nativeBuildInputs;
+        buildInputs = old.buildInputs ++ pkgs.dlib.buildInputs;
+      }
+    );
 
   # Environment markers are not always included (depending on how a dep was defined)
   enum34 = if self.pythonAtLeast "3.4" then null else super.enum34;
 
-  faker = super.faker.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-      doCheck = false;
-    }
-  );
+  faker = super.faker.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+        doCheck = false;
+      }
+    );
 
-  fancycompleter = super.fancycompleter.overridePythonAttrs (
-    old: {
-      postPatch = ''
-        substituteInPlace setup.py \
-          --replace 'setup_requires="setupmeta"' 'setup_requires=[]' \
-          --replace 'versioning="devcommit"' 'version="${old.version}"'
-      '';
-    }
-  );
+  fancycompleter = super.fancycompleter.overridePythonAttrs
+    (
+      old: {
+        postPatch = ''
+          substituteInPlace setup.py \
+            --replace 'setup_requires="setupmeta"' 'setup_requires=[]' \
+            --replace 'versioning="devcommit"' 'version="${old.version}"'
+        '';
+      }
+    );
 
-  fastparquet = super.fastparquet.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-    }
-  );
+  fastparquet = super.fastparquet.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+      }
+    );
 
-  grandalf = super.grandalf.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-      doCheck = false;
-    }
-  );
+  grandalf = super.grandalf.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+        doCheck = false;
+      }
+    );
 
-  h5py = super.h5py.overridePythonAttrs (
-    old: rec {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
-      buildInputs = old.buildInputs ++ [ pkgs.hdf5 self.pkgconfig self.cython ];
-      configure_flags = "--hdf5=${pkgs.hdf5}";
-      postConfigure = ''
-        ${self.python.executable} setup.py configure ${configure_flags}
-      '';
-    }
-  );
+  h5py = super.h5py.overridePythonAttrs
+    (
+      old:
+      if old.format != "wheel" then rec {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
+        buildInputs = old.buildInputs ++ [ pkgs.hdf5 self.pkgconfig self.cython ];
+        configure_flags = "--hdf5=${pkgs.hdf5}";
+        postConfigure = ''
+          ${self.python.executable} setup.py configure ${configure_flags}
+        '';
+      } else old
+    );
 
-  horovod = super.horovod.overridePythonAttrs (
-    old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.openmpi ];
-    }
-  );
+  horovod = super.horovod.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.openmpi ];
+      }
+    );
 
   # importlib-metadata has an incomplete dependency specification
-  importlib-metadata = super.importlib-metadata.overridePythonAttrs (
-    old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ lib.optional self.python.isPy2 self.pathlib2;
-    }
-  );
+  importlib-metadata = super.importlib-metadata.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ lib.optional self.python.isPy2 self.pathlib2;
+      }
+    );
 
-  jupyter = super.jupyter.overridePythonAttrs (
-    old: rec {
-      # jupyter is a meta-package. Everything relevant comes from the
-      # dependencies. It does however have a jupyter.py file that conflicts
-      # with jupyter-core so this meta solves this conflict.
-      meta.priority = 100;
-    }
-  );
+  isort = super.isort.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.setuptools ];
+      }
+    );
 
-  lap = super.lap.overridePythonAttrs (
-    old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
-        self.numpy
-      ];
-    }
-  );
+  jupyter = super.jupyter.overridePythonAttrs
+    (
+      old: rec {
+        # jupyter is a meta-package. Everything relevant comes from the
+        # dependencies. It does however have a jupyter.py file that conflicts
+        # with jupyter-core so this meta solves this conflict.
+        meta.priority = 100;
+      }
+    );
 
-  llvmlite = super.llvmlite.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.llvm ];
+  kiwisolver = super.kiwisolver.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          # cppy is at the time of writing not in nixpkgs
+          (self.cppy or null)
+        ];
+      }
+    );
 
-      # Disable static linking
-      # https://github.com/numba/llvmlite/issues/93
-      postPatch = ''
-        substituteInPlace ffi/Makefile.linux --replace "-static-libstdc++" ""
+  lap = super.lap.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+          self.numpy
+        ];
+      }
+    );
 
-        substituteInPlace llvmlite/tests/test_binding.py --replace "test_linux" "nope"
-      '';
+  llvmlite = super.llvmlite.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.llvm ];
 
-      # Set directory containing llvm-config binary
-      preConfigure = ''
-        export LLVM_CONFIG=${pkgs.llvm}/bin/llvm-config
-      '';
+        # Disable static linking
+        # https://github.com/numba/llvmlite/issues/93
+        postPatch = ''
+          substituteInPlace ffi/Makefile.linux --replace "-static-libstdc++" ""
 
-      __impureHostDeps = pkgs.stdenv.lib.optionals pkgs.stdenv.isDarwin [ "/usr/lib/libm.dylib" ];
+          substituteInPlace llvmlite/tests/test_binding.py --replace "test_linux" "nope"
+        '';
 
-      passthru = old.passthru // { llvm = pkgs.llvm; };
-    }
-  );
+        # Set directory containing llvm-config binary
+        preConfigure = ''
+          export LLVM_CONFIG=${pkgs.llvm}/bin/llvm-config
+        '';
 
-  lockfile = super.lockfile.overridePythonAttrs (
-    old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pbr ];
-    }
-  );
+        __impureHostDeps = pkgs.stdenv.lib.optionals pkgs.stdenv.isDarwin [ "/usr/lib/libm.dylib" ];
 
-  lxml = super.lxml.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = with pkgs; old.nativeBuildInputs ++ [ pkgconfig libxml2.dev libxslt.dev ];
-      buildInputs = with pkgs; old.buildInputs ++ [ libxml2 libxslt ];
-    }
-  );
+        passthru = old.passthru // { llvm = pkgs.llvm; };
+      }
+    );
 
-  markupsafe = super.markupsafe.overridePythonAttrs (
-    old: {
-      src = old.src.override { pname = builtins.replaceStrings [ "markupsafe" ] [ "MarkupSafe" ] old.pname; };
-    }
-  );
+  lockfile = super.lockfile.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pbr ];
+      }
+    );
+
+  lxml = super.lxml.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = with pkgs; old.nativeBuildInputs ++ [ pkgconfig libxml2.dev libxslt.dev ];
+        buildInputs = with pkgs; old.buildInputs ++ [ libxml2 libxslt ];
+      }
+    );
+
+  markupsafe = super.markupsafe.overridePythonAttrs
+    (
+      old: {
+        src = old.src.override { pname = builtins.replaceStrings [ "markupsafe" ] [ "MarkupSafe" ] old.pname; };
+      }
+    );
 
-  matplotlib = super.matplotlib.overridePythonAttrs (
-    old:
+  matplotlib = super.matplotlib.overridePythonAttrs
+    (
+      old:
       let
         enableGhostscript = old.passthru.enableGhostscript or false;
         enableGtk3 = old.passthru.enableTk or false;
@@ -210,484 +264,583 @@ self: super:
 
         inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa;
       in
-        {
-          NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${pkgs.libcxx}/include/c++/v1";
+      {
+        NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${pkgs.libcxx}/include/c++/v1";
 
-          XDG_RUNTIME_DIR = "/tmp";
+        XDG_RUNTIME_DIR = "/tmp";
 
-          buildInputs = old.buildInputs
+        buildInputs = old.buildInputs
           ++ lib.optional enableGhostscript pkgs.ghostscript
           ++ lib.optional stdenv.isDarwin [ Cocoa ];
 
-          nativeBuildInputs = old.nativeBuildInputs ++ [
-            pkgs.pkgconfig
-          ];
+        nativeBuildInputs = old.nativeBuildInputs ++ [
+          pkgs.pkgconfig
+        ];
 
-          propagatedBuildInputs = old.propagatedBuildInputs ++ [
-            pkgs.libpng
-            pkgs.freetype
-          ]
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+          pkgs.libpng
+          pkgs.freetype
+        ]
           ++ stdenv.lib.optionals enableGtk3 [ pkgs.cairo self.pycairo pkgs.gtk3 pkgs.gobject-introspection self.pygobject3 ]
           ++ stdenv.lib.optionals enableTk [ pkgs.tcl pkgs.tk self.tkinter pkgs.libX11 ]
           ++ stdenv.lib.optionals enableQt [ self.pyqt5 ]
-          ;
+        ;
 
-          inherit (super.matplotlib) patches;
-        }
-  );
+        inherit (super.matplotlib) patches;
+      }
+    );
 
   # Calls Cargo at build time for source builds and is really tricky to package
   maturin = super.maturin.override {
     preferWheel = true;
   };
 
-  mccabe = super.mccabe.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-      doCheck = false;
-    }
-  );
+  mccabe = super.mccabe.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+        doCheck = false;
+      }
+    );
 
-  netcdf4 = super.netcdf4.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        self.cython
-      ];
-
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
-        pkgs.zlib
-        pkgs.netcdf
-        pkgs.hdf5
-        pkgs.curl
-        pkgs.libjpeg
-      ];
-
-      # Variables used to configure the build process
-      USE_NCCONFIG = "0";
-      HDF5_DIR = lib.getDev pkgs.hdf5;
-      NETCDF4_DIR = pkgs.netcdf;
-      CURL_DIR = pkgs.curl.dev;
-      JPEG_DIR = pkgs.libjpeg.dev;
-    }
-  );
+  netcdf4 = super.netcdf4.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          self.cython
+        ];
 
-  numpy = super.numpy.overridePythonAttrs (
-    old:
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+          pkgs.zlib
+          pkgs.netcdf
+          pkgs.hdf5
+          pkgs.curl
+          pkgs.libjpeg
+        ];
+
+        # Variables used to configure the build process
+        USE_NCCONFIG = "0";
+        HDF5_DIR = lib.getDev pkgs.hdf5;
+        NETCDF4_DIR = pkgs.netcdf;
+        CURL_DIR = pkgs.curl.dev;
+        JPEG_DIR = pkgs.libjpeg.dev;
+      }
+    );
+
+  numpy = super.numpy.overridePythonAttrs
+    (
+      old:
       let
         blas = old.passthru.args.blas or pkgs.openblasCompat;
-        lapack = old.passthru.args.lapack or pkgs.openblasCompat;
+        blasImplementation = lib.nameFromURL blas.name "-";
         cfg = pkgs.writeTextFile {
           name = "site.cfg";
-          text = (lib.generators.toINI {} {
-            ${blas.implementation} = {
-              include_dirs = "${blas}/include:${lapack}/include";
-              library_dirs = "${blas}/lib:${lapack}/lib";
-            };
-          });
+          text = (
+            lib.generators.toINI { } {
+              ${blasImplementation} = {
+                include_dirs = "${blas}/include";
+                library_dirs = "${blas}/lib";
+              } // lib.optionalAttrs (blasImplementation == "mkl") {
+                mkl_libs = "mkl_rt";
+                lapack_libs = "";
+              };
+            }
+          );
         };
       in
-        {
-          nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
-          buildInputs = old.buildInputs ++ [ blas self.cython ];
-          enableParallelBuilding = true;
-          preBuild = ''
-            ln -s ${cfg} site.cfg
-          '';
-          passthru = old.passthru // {
-            blsaImplementation = blas.implementation;
-            inherit blas cfg;
-          };
-        }
-  );
+      {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
+        buildInputs = old.buildInputs ++ [ blas self.cython ];
+        enableParallelBuilding = true;
+        preBuild = ''
+          ln -s ${cfg} site.cfg
+        '';
+        passthru = old.passthru // {
+          blas = blas;
+          inherit blasImplementation cfg;
+        };
+      }
+    );
 
-  openexr = super.openexr.overridePythonAttrs (
-    old: rec {
-      buildInputs = old.buildInputs ++ [ pkgs.openexr pkgs.ilmbase ];
-      NIX_CFLAGS_COMPILE = [ "-I${pkgs.openexr.dev}/include/OpenEXR" "-I${pkgs.ilmbase.dev}/include/OpenEXR" ];
-    }
-  );
+  openexr = super.openexr.overridePythonAttrs
+    (
+      old: rec {
+        buildInputs = old.buildInputs ++ [ pkgs.openexr pkgs.ilmbase ];
+        NIX_CFLAGS_COMPILE = [ "-I${pkgs.openexr.dev}/include/OpenEXR" "-I${pkgs.ilmbase.dev}/include/OpenEXR" ];
+      }
+    );
 
-  peewee = super.peewee.overridePythonAttrs (
-    old:
+  peewee = super.peewee.overridePythonAttrs
+    (
+      old:
       let
         withPostgres = old.passthru.withPostgres or false;
         withMysql = old.passthru.withMysql or false;
       in
-        {
-          buildInputs = old.buildInputs ++ [ self.cython pkgs.sqlite ];
-          propagatedBuildInputs = old.propagatedBuildInputs
+      {
+        buildInputs = old.buildInputs ++ [ self.cython pkgs.sqlite ];
+        propagatedBuildInputs = old.propagatedBuildInputs
           ++ lib.optional withPostgres self.psycopg2
           ++ lib.optional withMysql self.mysql-connector;
-        }
-  );
+      }
+    );
 
-  pillow = super.pillow.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = [ pkgs.pkgconfig ] ++ old.nativeBuildInputs;
-      buildInputs = with pkgs; [ freetype libjpeg zlib libtiff libwebp tcl lcms2 ] ++ old.buildInputs;
-    }
-  );
+  pillow = super.pillow.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = [ pkgs.pkgconfig ] ++ old.nativeBuildInputs;
+        buildInputs = with pkgs; [ freetype libjpeg zlib libtiff libwebp tcl lcms2 ] ++ old.buildInputs;
+      }
+    );
 
-  psycopg2 = super.psycopg2.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
-    }
-  );
+  psycopg2 = super.psycopg2.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
+      }
+    );
 
-  psycopg2-binary = super.psycopg2-binary.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
-    }
-  );
+  psycopg2-binary = super.psycopg2-binary.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
+      }
+    );
 
-  pyarrow = super.pyarrow.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        self.cython
-      ];
-    }
-  );
+  pyarrow =
+    if lib.versionAtLeast super.pyarrow.version "0.16.0" then super.pyarrow.overridePythonAttrs
+      (
+        old:
+        let
+          parseMinor = drv: lib.concatStringsSep "." (lib.take 2 (lib.splitVersion drv.version));
+          _arrow-cpp = pkgs.arrow-cpp.override { inherit (self) python; };
+          ARROW_HOME = _arrow-cpp;
+          arrowCppVersion = parseMinor pkgs.arrow-cpp;
+          pyArrowVersion = parseMinor super.pyarrow;
+          errorMessage = "arrow-cpp version (${arrowCppVersion}) mismatches pyarrow version (${pyArrowVersion})";
+        in
+        if arrowCppVersion != pyArrowVersion then throw errorMessage else {
 
-  pycairo = (
-    drv: (
-      drv.overridePythonAttrs (
-        _: {
-          format = "other";
-        }
-      )
-    ).overridePythonAttrs (
-      old: {
+          nativeBuildInputs = old.nativeBuildInputs ++ [
+            self.cython
+            pkgs.pkgconfig
+            pkgs.cmake
+          ];
 
-        nativeBuildInputs = old.nativeBuildInputs ++ [
-          pkgs.meson
-          pkgs.ninja
-          pkgs.pkgconfig
-        ];
+          preBuild = ''
+            export PYARROW_PARALLEL=$NIX_BUILD_CORES
+          '';
 
-        propagatedBuildInputs = old.propagatedBuildInputs ++ [
-          pkgs.cairo
-          pkgs.xlibsWrapper
-        ];
+          PARQUET_HOME = _arrow-cpp;
+          inherit ARROW_HOME;
 
-        mesonFlags = [ "-Dpython=${if self.isPy3k then "python3" else "python"}" ];
-      }
-    )
-  ) super.pycairo;
+          buildInputs = old.buildInputs ++ [
+            pkgs.arrow-cpp
+          ];
 
-  pycocotools = super.pycocotools.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        self.cython
-        self.numpy
-      ];
-    }
-  );
+          PYARROW_BUILD_TYPE = "release";
+          PYARROW_WITH_PARQUET = true;
+          PYARROW_CMAKE_OPTIONS = [
+            "-DCMAKE_INSTALL_RPATH=${ARROW_HOME}/lib"
 
-  pygobject = super.pygobject.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
-      buildInputs = old.buildInputs ++ [ pkgs.glib pkgs.gobject-introspection ];
-    }
-  );
+            # This doesn't use setup hook to call cmake so we need to workaround #54606
+            # ourselves
+            "-DCMAKE_POLICY_DEFAULT_CMP0025=NEW"
+          ];
 
-  pylint = super.pylint.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
-      doCheck = false;
-    }
-  );
+          dontUseCmakeConfigure = true;
+        }
+      ) else super.pyarrow.overridePythonAttrs
+      (
+        old: {
+          nativeBuildInputs = old.nativeBuildInputs ++ [
+            self.cython
+          ];
+        }
+      );
 
-  pyopenssl = super.pyopenssl.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ pkgs.openssl ];
-    }
-  );
+  pycairo =
+    (
+      drv: (
+        drv.overridePythonAttrs
+          (
+            _: {
+              format = "other";
+            }
+          )
+      ).overridePythonAttrs
+        (
+          old: {
 
-  pyqt5 = let
-    drv = super.pyqt5;
-    withConnectivity = drv.passthru.args.withConnectivity or false;
-    withMultimedia = drv.passthru.args.withMultimedia or false;
-    withWebKit = drv.passthru.args.withWebKit or false;
-    withWebSockets = drv.passthru.args.withWebSockets or false;
-  in
-    super.pyqt5.overridePythonAttrs (
-      old: {
-        format = "other";
+            nativeBuildInputs = old.nativeBuildInputs ++ [
+              pkgs.meson
+              pkgs.ninja
+              pkgs.pkgconfig
+            ];
 
-        nativeBuildInputs = old.nativeBuildInputs ++ [
-          pkgs.pkgconfig
-          pkgs.qt5.qmake
-          pkgs.xorg.lndir
-          pkgs.qt5.qtbase
-          pkgs.qt5.qtsvg
-          pkgs.qt5.qtdeclarative
-          pkgs.qt5.qtwebchannel
-          # self.pyqt5-sip
-          self.sip
-        ]
-        ++ lib.optional withConnectivity pkgs.qt5.qtconnectivity
-        ++ lib.optional withMultimedia pkgs.qt5.qtmultimedia
-        ++ lib.optional withWebKit pkgs.qt5.qtwebkit
-        ++ lib.optional withWebSockets pkgs.qt5.qtwebsockets
-        ;
+            propagatedBuildInputs = old.propagatedBuildInputs ++ [
+              pkgs.cairo
+              pkgs.xlibsWrapper
+            ];
 
-        buildInputs = old.buildInputs ++ [
-          pkgs.dbus
-          pkgs.qt5.qtbase
-          pkgs.qt5.qtsvg
-          pkgs.qt5.qtdeclarative
-          self.sip
-        ]
-        ++ lib.optional withConnectivity pkgs.qt5.qtconnectivity
-        ++ lib.optional withWebKit pkgs.qt5.qtwebkit
-        ++ lib.optional withWebSockets pkgs.qt5.qtwebsockets
-        ;
+            mesonFlags = [ "-Dpython=${ if self.isPy3k then "python3" else "python"}" ];
+          }
+        )
+    ) super.pycairo;
 
-        # Fix dbus mainloop
-        patches = pkgs.python3.pkgs.pyqt5.patches or [];
+  pycocotools = super.pycocotools.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          self.cython
+          self.numpy
+        ];
+      }
+    );
 
-        configurePhase = ''
-          runHook preConfigure
+  pygobject = super.pygobject.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
+        buildInputs = old.buildInputs ++ [ pkgs.glib pkgs.gobject-introspection ];
+      }
+    );
 
-          export PYTHONPATH=$PYTHONPATH:$out/${self.python.sitePackages}
+  pylint = super.pylint.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+        doCheck = false;
+      }
+    );
 
-          mkdir -p $out/${self.python.sitePackages}/dbus/mainloop
-          ${self.python.executable} configure.py  -w \
-            --confirm-license \
-            --no-qml-plugin \
-            --bindir=$out/bin \
-            --destdir=$out/${self.python.sitePackages} \
-            --stubsdir=$out/${self.python.sitePackages}/PyQt5 \
-            --sipdir=$out/share/sip/PyQt5 \
-            --designer-plugindir=$out/plugins/designer
+  pyopenssl = super.pyopenssl.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [ pkgs.openssl ];
+      }
+    );
 
-          runHook postConfigure
-        '';
+  pyqt5 =
+    let
+      drv = super.pyqt5;
+      withConnectivity = drv.passthru.args.withConnectivity or false;
+      withMultimedia = drv.passthru.args.withMultimedia or false;
+      withWebKit = drv.passthru.args.withWebKit or false;
+      withWebSockets = drv.passthru.args.withWebSockets or false;
+    in
+    super.pyqt5.overridePythonAttrs
+      (
+        old: {
+          format = "other";
 
-        postInstall = ''
-          ln -s ${self.pyqt5-sip}/${self.python.sitePackages}/PyQt5/sip.* $out/${self.python.sitePackages}/PyQt5/
-          for i in $out/bin/*; do
-            wrapProgram $i --prefix PYTHONPATH : "$PYTHONPATH"
-          done
-
-          # Let's make it a namespace package
-          cat << EOF > $out/${self.python.sitePackages}/PyQt5/__init__.py
-          from pkgutil import extend_path
-          __path__ = extend_path(__path__, __name__)
-          EOF
-        '';
+          nativeBuildInputs = old.nativeBuildInputs ++ [
+            pkgs.pkgconfig
+            pkgs.qt5.qmake
+            pkgs.xorg.lndir
+            pkgs.qt5.qtbase
+            pkgs.qt5.qtsvg
+            pkgs.qt5.qtdeclarative
+            pkgs.qt5.qtwebchannel
+            # self.pyqt5-sip
+            self.sip
+          ]
+            ++ lib.optional withConnectivity pkgs.qt5.qtconnectivity
+            ++ lib.optional withMultimedia pkgs.qt5.qtmultimedia
+            ++ lib.optional withWebKit pkgs.qt5.qtwebkit
+            ++ lib.optional withWebSockets pkgs.qt5.qtwebsockets
+          ;
 
-        installCheckPhase = let
-          modules = [
-            "PyQt5"
-            "PyQt5.QtCore"
-            "PyQt5.QtQml"
-            "PyQt5.QtWidgets"
-            "PyQt5.QtGui"
+          buildInputs = old.buildInputs ++ [
+            pkgs.dbus
+            pkgs.qt5.qtbase
+            pkgs.qt5.qtsvg
+            pkgs.qt5.qtdeclarative
+            self.sip
           ]
-          ++ lib.optional withWebSockets "PyQt5.QtWebSockets"
-          ++ lib.optional withWebKit "PyQt5.QtWebKit"
-          ++ lib.optional withMultimedia "PyQt5.QtMultimedia"
-          ++ lib.optional withConnectivity "PyQt5.QtConnectivity"
+            ++ lib.optional withConnectivity pkgs.qt5.qtconnectivity
+            ++ lib.optional withWebKit pkgs.qt5.qtwebkit
+            ++ lib.optional withWebSockets pkgs.qt5.qtwebsockets
           ;
 
-          imports = lib.concatMapStrings (module: "import ${module};") modules;
-        in
-          ''
-            echo "Checking whether modules can be imported..."
-            ${self.python.interpreter} -c "${imports}"
+          # Fix dbus mainloop
+          patches = pkgs.python3.pkgs.pyqt5.patches or [ ];
+
+          configurePhase = ''
+            runHook preConfigure
+
+            export PYTHONPATH=$PYTHONPATH:$out/${self.python.sitePackages}
+
+            mkdir -p $out/${self.python.sitePackages}/dbus/mainloop
+            ${self.python.executable} configure.py  -w \
+              --confirm-license \
+              --no-qml-plugin \
+              --bindir=$out/bin \
+              --destdir=$out/${self.python.sitePackages} \
+              --stubsdir=$out/${self.python.sitePackages}/PyQt5 \
+              --sipdir=$out/share/sip/PyQt5 \
+              --designer-plugindir=$out/plugins/designer
+
+            runHook postConfigure
           '';
 
-        doCheck = true;
+          postInstall = ''
+            ln -s ${self.pyqt5-sip}/${self.python.sitePackages}/PyQt5/sip.* $out/${self.python.sitePackages}/PyQt5/
+            for i in $out/bin/*; do
+              wrapProgram $i --prefix PYTHONPATH : "$PYTHONPATH"
+            done
+
+            # Let's make it a namespace package
+            cat << EOF > $out/${self.python.sitePackages}/PyQt5/__init__.py
+            from pkgutil import extend_path
+            __path__ = extend_path(__path__, __name__)
+            EOF
+          '';
 
-        enableParallelBuilding = true;
+          installCheckPhase =
+            let
+              modules = [
+                "PyQt5"
+                "PyQt5.QtCore"
+                "PyQt5.QtQml"
+                "PyQt5.QtWidgets"
+                "PyQt5.QtGui"
+              ]
+              ++ lib.optional withWebSockets "PyQt5.QtWebSockets"
+              ++ lib.optional withWebKit "PyQt5.QtWebKit"
+              ++ lib.optional withMultimedia "PyQt5.QtMultimedia"
+              ++ lib.optional withConnectivity "PyQt5.QtConnectivity"
+              ;
+              imports = lib.concatMapStrings (module: "import ${module};") modules;
+            in
+            ''
+              echo "Checking whether modules can be imported..."
+              ${self.python.interpreter} -c "${imports}"
+            '';
+
+          doCheck = true;
+
+          enableParallelBuilding = true;
+        }
+      );
+
+  pytest-datadir = super.pytest-datadir.overridePythonAttrs
+    (
+      old: {
+        postInstall = ''
+          rm -f $out/LICENSE
+        '';
       }
     );
 
-  pytest-datadir = super.pytest-datadir.overridePythonAttrs (
-    old: {
-      postInstall = ''
-        rm -f $out/LICENSE
-      '';
-    }
-  );
-
-  pytest = super.pytest.overridePythonAttrs (
-    old: {
-      doCheck = false;
-    }
-  );
+  pytest = super.pytest.overridePythonAttrs
+    (
+      old: {
+        doCheck = false;
+      }
+    );
 
   pytest-runner = super.pytest-runner or super.pytestrunner;
 
-  python-prctl = super.python-prctl.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        pkgs.libcap
-      ];
-    }
-  );
+  python-jose = super.python-jose.overridePythonAttrs
+    (
+      old: {
+        postPath = ''
+          substituteInPlace setup.py --replace "'pytest-runner'," ""
+          substituteInPlace setup.py --replace "'pytest-runner'" ""
+        '';
+      }
+    );
 
-  pyzmq = super.pyzmq.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.zeromq ];
-    }
-  );
+  python-prctl = super.python-prctl.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          pkgs.libcap
+        ];
+      }
+    );
 
-  rockset = super.rockset.overridePythonAttrs (
-    old: rec {
-      postPatch = ''
-        cp ./setup_rockset.py ./setup.py
-      '';
-    }
-  );
+  pyzmq = super.pyzmq.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.zeromq ];
+      }
+    );
 
-  scaleapi = super.scaleapi.overridePythonAttrs (
-    old: {
-      postPatch = ''
-        substituteInPlace setup.py --replace "install_requires = ['requests>=2.4.2', 'enum34']" "install_requires = ['requests>=2.4.2']" || true
-      '';
-    }
-  );
+  rockset = super.rockset.overridePythonAttrs
+    (
+      old: rec {
+        postPatch = ''
+          cp ./setup_rockset.py ./setup.py
+        '';
+      }
+    );
 
-  pandas = super.pandas.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ self.cython ];
-    }
-  );
+  scaleapi = super.scaleapi.overridePythonAttrs
+    (
+      old: {
+        postPatch = ''
+          substituteInPlace setup.py --replace "install_requires = ['requests>=2.4.2', 'enum34']" "install_requires = ['requests>=2.4.2']" || true
+        '';
+      }
+    );
+
+  pandas = super.pandas.overridePythonAttrs
+    (
+      old: {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ self.cython ];
+      }
+    );
 
   # Pybind11 is an undeclared dependency of scipy that we need to pick from nixpkgs
   # Make it not fail with infinite recursion
-  pybind11 = super.pybind11.overridePythonAttrs (
-    old: {
-      cmakeFlags = (old.cmakeFlags or []) ++ [
-        "-DPYBIND11_TEST=off"
-      ];
-      doCheck = false; # Circular test dependency
-    }
-  );
-
-  scipy = super.scipy.overridePythonAttrs (
-    old: {
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pybind11 ];
-      setupPyBuildFlags = [ "--fcompiler='gnu95'" ];
-      enableParallelBuilding = true;
-      buildInputs = old.buildInputs ++ [ self.numpy.blas ];
-      preConfigure = ''
-        sed -i '0,/from numpy.distutils.core/s//import setuptools;from numpy.distutils.core/' setup.py
-        export NPY_NUM_BUILD_JOBS=$NIX_BUILD_CORES
-      '';
-      preBuild = ''
-        ln -s ${self.numpy.cfg} site.cfg
-      '';
-    }
-  );
+  pybind11 = super.pybind11.overridePythonAttrs
+    (
+      old: {
+        cmakeFlags = (old.cmakeFlags or [ ]) ++ [
+          "-DPYBIND11_TEST=off"
+        ];
+        doCheck = false; # Circular test dependency
+      }
+    );
 
-  scikit-learn = super.scikit-learn.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [
-        pkgs.gfortran
-        pkgs.glibcLocales
-      ] ++ lib.optionals stdenv.cc.isClang [
-        pkgs.llvmPackages.openmp
-      ];
+  scipy = super.scipy.overridePythonAttrs
+    (
+      old:
+      if old.format != "wheel" then {
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pybind11 ];
+        setupPyBuildFlags = [ "--fcompiler='gnu95'" ];
+        enableParallelBuilding = true;
+        buildInputs = old.buildInputs ++ [ self.numpy.blas ];
+        preConfigure = ''
+          sed -i '0,/from numpy.distutils.core/s//import setuptools;from numpy.distutils.core/' setup.py
+          export NPY_NUM_BUILD_JOBS=$NIX_BUILD_CORES
+        '';
+        preBuild = ''
+          ln -s ${self.numpy.cfg} site.cfg
+        '';
+      } else old
+    );
 
-      nativeBuildInputs = old.nativeBuildInputs ++ [
-        self.cython
-      ];
+  scikit-learn = super.scikit-learn.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ [
+          pkgs.gfortran
+          pkgs.glibcLocales
+        ] ++ lib.optionals stdenv.cc.isClang [
+          pkgs.llvmPackages.openmp
+        ];
 
-      enableParallelBuilding = true;
-    }
-  );
+        nativeBuildInputs = old.nativeBuildInputs ++ [
+          self.cython
+        ];
 
-  shapely = super.shapely.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ [ pkgs.geos self.cython ];
-      inherit (pkgs.python3.pkgs.shapely) patches GEOS_LIBRARY_PATH;
-    }
-  );
+        enableParallelBuilding = true;
+      }
+    );
 
-  shellingham = if lib.versionAtLeast super.shellingham.version "1.3.2" then (
-    super.shellingham.overridePythonAttrs (
+  shapely = super.shapely.overridePythonAttrs
+    (
       old: {
-        format = "pyproject";
+        buildInputs = old.buildInputs ++ [ pkgs.geos self.cython ];
+        inherit (pkgs.python3.pkgs.shapely) patches GEOS_LIBRARY_PATH;
       }
-    )
-  ) else super.shellingham;
+    );
 
-  tables = super.tables.overridePythonAttrs (
-    old: {
-      HDF5_DIR = "${pkgs.hdf5}";
-      nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
-      propagatedBuildInputs = old.nativeBuildInputs ++ [ pkgs.hdf5 self.numpy self.numexpr ];
-    }
-  );
+  shellingham =
+    if lib.versionAtLeast super.shellingham.version "1.3.2" then (
+      super.shellingham.overridePythonAttrs
+        (
+          old: {
+            format = "pyproject";
+          }
+        )
+    ) else super.shellingham;
 
-  tensorpack = super.tensorpack.overridePythonAttrs (
-    old: {
-      postPatch = ''
-        substituteInPlace setup.cfg --replace "# will call find_packages()" ""
-      '';
-    }
-  );
+  tables = super.tables.overridePythonAttrs
+    (
+      old: {
+        HDF5_DIR = "${pkgs.hdf5}";
+        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
+        propagatedBuildInputs = old.nativeBuildInputs ++ [ pkgs.hdf5 self.numpy self.numexpr ];
+      }
+    );
 
-  urwidtrees = super.urwidtrees.overridePythonAttrs (
-    old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
-        self.urwid
-      ];
-    }
-  );
+  tensorpack = super.tensorpack.overridePythonAttrs
+    (
+      old: {
+        postPatch = ''
+          substituteInPlace setup.cfg --replace "# will call find_packages()" ""
+        '';
+      }
+    );
 
-  vose-alias-method = super.vose-alias-method.overridePythonAttrs (
-    old: {
-      postInstall = ''
-        rm -f $out/LICENSE
-      '';
-    }
-  );
+  urwidtrees = super.urwidtrees.overridePythonAttrs
+    (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+          self.urwid
+        ];
+      }
+    );
 
-  uvloop = super.uvloop.overridePythonAttrs (
-    old: {
-      buildInputs = old.buildInputs ++ lib.optionals stdenv.isDarwin [
-        pkgs.darwin.apple_sdk.frameworks.ApplicationServices
-        pkgs.darwin.apple_sdk.frameworks.CoreServices
-      ];
-    }
-  );
+  vose-alias-method = super.vose-alias-method.overridePythonAttrs
+    (
+      old: {
+        postInstall = ''
+          rm -f $out/LICENSE
+        '';
+      }
+    );
+
+  uvloop = super.uvloop.overridePythonAttrs
+    (
+      old: {
+        buildInputs = old.buildInputs ++ lib.optionals stdenv.isDarwin [
+          pkgs.darwin.apple_sdk.frameworks.ApplicationServices
+          pkgs.darwin.apple_sdk.frameworks.CoreServices
+        ];
+      }
+    );
 
   # Stop infinite recursion by using bootstrapped pkg from nixpkgs
   wheel = (
     pkgs.python3.pkgs.override {
       python = self.python;
     }
-  ).wheel.overridePythonAttrs (
-    _: {
-      inherit (super.wheel) pname name version src;
-    }
-  );
+  ).wheel.overridePythonAttrs
+    (
+      old:
+      if old.format == "other" then old else {
+        inherit (super.wheel) pname name version src;
+      }
+    );
 
   zipp =
     (
       if lib.versionAtLeast super.zipp.version "2.0.0" then (
-        super.zipp.overridePythonAttrs (
-          old: {
-            prePatch = ''
-              substituteInPlace setup.py --replace \
-              'setuptools.setup()' \
-              'setuptools.setup(version="${super.zipp.version}")'
-            '';
-          }
-        )
+        super.zipp.overridePythonAttrs
+          (
+            old: {
+              prePatch = ''
+                substituteInPlace setup.py --replace \
+                'setuptools.setup()' \
+                'setuptools.setup(version="${super.zipp.version}")'
+              '';
+            }
+          )
       ) else super.zipp
-    ).overridePythonAttrs (
-      old: {
-        propagatedBuildInputs = old.propagatedBuildInputs ++ [
-          self.toml
-        ];
-      }
-    );
+    ).overridePythonAttrs
+      (
+        old: {
+          propagatedBuildInputs = old.propagatedBuildInputs ++ [
+            self.toml
+          ];
+        }
+      );
 
 }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
index cda4e8c78d4d..496c4ff15818 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
@@ -12,8 +12,7 @@ let
       major = builtins.elemAt ver 0;
       minor = builtins.elemAt ver 1;
     in
-      "cp${major}${minor}";
-
+    "cp${major}${minor}";
   abiTag = "${pythonTag}m";
 
   #
@@ -24,13 +23,13 @@ let
       entries = splitString "-" str;
       p = removeSuffix ".whl" (builtins.elemAt entries 4);
     in
-      {
-        pkgName = builtins.elemAt entries 0;
-        pkgVer = builtins.elemAt entries 1;
-        pyVer = builtins.elemAt entries 2;
-        abi = builtins.elemAt entries 3;
-        platform = p;
-      };
+    {
+      pkgName = builtins.elemAt entries 0;
+      pkgVer = builtins.elemAt entries 1;
+      pyVer = builtins.elemAt entries 2;
+      abi = builtins.elemAt entries 3;
+      platform = p;
+    };
 
   #
   # Builds list of acceptable osx wheel files
@@ -42,9 +41,9 @@ let
       v = lib.lists.head versions;
       vs = lib.lists.tail versions;
     in
-      if (builtins.length versions == 0)
-      then []
-      else (builtins.filter (x: hasInfix v x.file) candidates) ++ (findBestMatches vs candidates);
+    if (builtins.length versions == 0)
+    then [ ]
+    else (builtins.filter (x: hasInfix v x.file) candidates) ++ (findBestMatches vs candidates);
 
   # pyver = "cpXX"
   # x     = "cpXX" | "py2" | "py3" | "py2.py3"
@@ -53,7 +52,7 @@ let
       normalize = y: ''cp${lib.strings.removePrefix "cp" (lib.strings.removePrefix "py" y)}'';
       isCompat = p: x: lib.strings.hasPrefix (normalize x) p;
     in
-      lib.lists.any (isCompat pyver) (lib.strings.splitString "." x);
+    lib.lists.any (isCompat pyver) (lib.strings.splitString "." x);
 
   #
   # Selects the best matching wheel file from a list of files
@@ -61,42 +60,37 @@ let
   selectWheel = files:
     let
       filesWithoutSources = (builtins.filter (x: hasSuffix ".whl" x.file) files);
-
       isPyAbiCompatible = pyabi: x: x == "none" || pyabi == x;
-
       withPython = ver: abi: x: (isPyVersionCompatible ver x.pyVer) && (isPyAbiCompatible abi x.abi);
-
-      withPlatform = if isLinux
-      then (
-        x: x.platform == "manylinux1_${stdenv.platform.kernelArch}"
-        || x.platform == "manylinux2010_${stdenv.platform.kernelArch}"
-        || x.platform == "manylinux2014_${stdenv.platform.kernelArch}"
-        || x.platform == "any"
-      )
-      else (x: hasInfix "macosx" x.platform || x.platform == "any");
-
+      withPlatform =
+        if isLinux
+        then (
+          x: x.platform == "manylinux1_${stdenv.platform.kernelArch}"
+            || x.platform == "manylinux2010_${stdenv.platform.kernelArch}"
+            || x.platform == "manylinux2014_${stdenv.platform.kernelArch}"
+            || x.platform == "any"
+        )
+        else (x: hasInfix "macosx" x.platform || x.platform == "any");
       filterWheel = x:
         let
           f = toWheelAttrs x.file;
         in
-          (withPython pythonTag abiTag f) && (withPlatform f);
-
+        (withPython pythonTag abiTag f) && (withPlatform f);
       filtered = builtins.filter filterWheel filesWithoutSources;
-
       choose = files:
         let
           osxMatches = [ "10_12" "10_11" "10_10" "10_9" "any" ];
           linuxMatches = [ "manylinux1_" "manylinux2010_" "manylinux2014_" "any" ];
-          chooseLinux = x: lib.singleton (builtins.head (findBestMatches linuxMatches x));
-          chooseOSX = x: lib.singleton (builtins.head (findBestMatches osxMatches x));
+          chooseLinux = x: lib.take 1 (findBestMatches linuxMatches x);
+          chooseOSX = x: lib.take 1 (findBestMatches osxMatches x);
         in
-          if isLinux
-          then chooseLinux files
-          else chooseOSX files;
+        if isLinux
+        then chooseLinux files
+        else chooseOSX files;
     in
-      if (builtins.length filtered == 0)
-      then []
-      else choose (filtered);
+    if (builtins.length filtered == 0)
+    then [ ]
+    else choose (filtered);
 in
 {
   inherit selectWheel toWheelAttrs isPyVersionCompatible;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
index 67ffdddb4bd8..773e0a60e093 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
@@ -7,7 +7,6 @@ let
 
   # Strip leading/trailing whitespace from string
   stripStr = s: lib.elemAt (builtins.split "^ *" (lib.elemAt (builtins.split " *$" s) 0)) 2;
-
   findSubExpressionsFun = acc: c: (
     if c == "(" then (
       let
@@ -15,23 +14,23 @@ let
         isOpen = acc.openP == 0;
         startPos = if isOpen then posNew else acc.startPos;
       in
-        acc // {
-          inherit startPos;
-          exprs = acc.exprs ++ [ (substr acc.exprPos (acc.pos - 1) acc.expr) ];
-          pos = posNew;
-          openP = acc.openP + 1;
-        }
+      acc // {
+        inherit startPos;
+        exprs = acc.exprs ++ [ (substr acc.exprPos (acc.pos - 1) acc.expr) ];
+        pos = posNew;
+        openP = acc.openP + 1;
+      }
     ) else if c == ")" then (
       let
         openP = acc.openP - 1;
         exprs = findSubExpressions (substr acc.startPos acc.pos acc.expr);
       in
-        acc // {
-          inherit openP;
-          pos = acc.pos + 1;
-          exprs = if openP == 0 then acc.exprs ++ [ exprs ] else acc.exprs;
-          exprPos = if openP == 0 then acc.pos + 1 else acc.exprPos;
-        }
+      acc // {
+        inherit openP;
+        pos = acc.pos + 1;
+        exprs = if openP == 0 then acc.exprs ++ [ exprs ] else acc.exprs;
+        exprPos = if openP == 0 then acc.pos + 1 else acc.exprPos;
+      }
     ) else acc // { pos = acc.pos + 1; }
   );
 
@@ -39,7 +38,7 @@ let
   findSubExpressions = expr:
     let
       acc = builtins.foldl' findSubExpressionsFun {
-        exprs = [];
+        exprs = [ ];
         expr = expr;
         pos = 0;
         openP = 0;
@@ -47,18 +46,16 @@ let
         startPos = 0;
       } (lib.stringToCharacters expr);
       tailExpr = (substr acc.exprPos acc.pos expr);
-      tailExprs = if tailExpr != "" then [ tailExpr ] else [];
+      tailExprs = if tailExpr != "" then [ tailExpr ] else [ ];
     in
-      acc.exprs ++ tailExprs;
-
+    acc.exprs ++ tailExprs;
   parseExpressions = exprs:
     let
       splitCond = (
         s: builtins.map
-          (x: stripStr (if builtins.typeOf x == "list" then (builtins.elemAt x 0) else x))
+          (x: stripStr ( if builtins.typeOf x == "list" then (builtins.elemAt x 0) else x))
           (builtins.split " (and|or) " (s + " "))
       );
-
       mapfn = expr: (
         if (builtins.match "^ ?$" expr != null) then null  # Filter empty
         else if (builtins.elem expr [ "and" "or" ]) then {
@@ -70,14 +67,12 @@ let
           value = expr;
         }
       );
-
       parse = expr: builtins.filter (x: x != null) (builtins.map mapfn (splitCond expr));
     in
-      builtins.foldl' (
-        acc: v: acc ++ (
-          if builtins.typeOf v == "string" then parse v else [ (parseExpressions v) ]
-        )
-      ) [] exprs;
+    builtins.foldl'
+      (
+        acc: v: acc ++ ( if builtins.typeOf v == "string" then parse v else [ (parseExpressions v) ])
+      ) [ ] exprs;
 
   # Transform individual expressions to structured expressions
   # This function also performs variable substitution, replacing environment markers with their explicit values
@@ -94,9 +89,10 @@ let
           else throw "Unsupported platform"
         );
         platform_machine = stdenv.platform.kernelArch;
-        platform_python_implementation = let
-          impl = python.passthru.implementation;
-        in
+        platform_python_implementation =
+          let
+            impl = python.passthru.implementation;
+          in
           (
             if impl == "cpython" then "CPython"
             else if impl == "pypy" then "PyPy"
@@ -115,34 +111,32 @@ let
         implementation_version = python.version;
         extra = "";
       };
-
       substituteVar = value: if builtins.hasAttr value variables then (builtins.toJSON variables."${value}") else value;
-
       processVar = value: builtins.foldl' (acc: v: v acc) value [
         stripStr
         substituteVar
       ];
     in
-      if builtins.typeOf exprs == "set" then (
-        if exprs.type == "expr" then (
-          let
-            mVal = ''[a-zA-Z0-9\'"_\. ]+'';
-            mOp = "in|[!=<>]+";
-            e = stripStr exprs.value;
-            m = builtins.map stripStr (builtins.match ''^(${mVal}) *(${mOp}) *(${mVal})$'' e);
-          in
-            {
-              type = "expr";
-              value = {
-                op = builtins.elemAt m 1;
-                values = [
-                  (processVar (builtins.elemAt m 0))
-                  (processVar (builtins.elemAt m 2))
-                ];
-              };
-            }
-        ) else exprs
-      ) else builtins.map transformExpressions exprs;
+    if builtins.typeOf exprs == "set" then (
+      if exprs.type == "expr" then (
+        let
+          mVal = ''[a-zA-Z0-9\'"_\. ]+'';
+          mOp = "in|[!=<>]+";
+          e = stripStr exprs.value;
+          m = builtins.map stripStr (builtins.match ''^(${mVal}) *(${mOp}) *(${mVal})$'' e);
+        in
+        {
+          type = "expr";
+          value = {
+            op = builtins.elemAt m 1;
+            values = [
+              (processVar (builtins.elemAt m 0))
+              (processVar (builtins.elemAt m 2))
+            ];
+          };
+        }
+      ) else exprs
+    ) else builtins.map transformExpressions exprs;
 
   # Recursively eval all expressions
   evalExpressions = exprs:
@@ -165,32 +159,33 @@ let
           let
             parts = builtins.splitVersion c;
             pruned = lib.take ((builtins.length parts) - 1) parts;
-            upper = builtins.toString (
-              (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
-            );
+            upper = builtins.toString
+              (
+                (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
+              );
             upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
           in
-            op.">=" v c && op."<" v upperConstraint;
+          op.">=" v c && op."<" v upperConstraint;
         "===" = x: y: x == y;
         "in" = x: y:
           let
             values = builtins.filter (x: builtins.typeOf x == "string") (builtins.split " " (unmarshal y));
           in
-            builtins.elem (unmarshal x) values;
+          builtins.elem (unmarshal x) values;
       };
     in
-      if builtins.typeOf exprs == "set" then (
-        if exprs.type == "expr" then (
-          let
-            expr = exprs;
-            result = (op."${expr.value.op}") (builtins.elemAt expr.value.values 0) (builtins.elemAt expr.value.values 1);
-          in
-            {
-              type = "value";
-              value = result;
-            }
-        ) else exprs
-      ) else builtins.map evalExpressions exprs;
+    if builtins.typeOf exprs == "set" then (
+      if exprs.type == "expr" then (
+        let
+          expr = exprs;
+          result = (op."${expr.value.op}") (builtins.elemAt expr.value.values 0) (builtins.elemAt expr.value.values 1);
+        in
+        {
+          type = "value";
+          value = result;
+        }
+      ) else exprs
+    ) else builtins.map evalExpressions exprs;
 
   # Now that we have performed an eval all that's left to do is to concat the graph into a single bool
   reduceExpressions = exprs:
@@ -217,18 +212,18 @@ let
               cond = "and";
             } v;
           in
-            acc // {
-              value = cond."${acc.cond}" acc.value ret.value;
-            }
+          acc // {
+            value = cond."${acc.cond}" acc.value ret.value;
+          }
         ) else throw "Unsupported type"
       );
     in
-      (
-        builtins.foldl' reduceExpressionsFun {
-          value = true;
-          cond = "and";
-        } exprs
-      ).value;
+    (
+      builtins.foldl' reduceExpressionsFun {
+        value = true;
+        cond = "and";
+      } exprs
+    ).value;
 in
 e: builtins.foldl' (acc: v: v acc) e [
   findSubExpressions
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix b/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
index 07dcbbc5eacb..e86b1d3ac660 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
@@ -1,28 +1,28 @@
 { lib, ireplace }:
 let
   inherit (builtins) elemAt match;
-
-  operators = let
-    matchWildCard = s: match "([^\*])(\.[\*])" s;
-    mkComparison = ret: version: v: builtins.compareVersions version v == ret;
-    mkIdxComparison = idx: version: v:
-      let
-        ver = builtins.splitVersion v;
-        minor = builtins.toString (lib.toInt (elemAt ver idx) + 1);
-        upper = builtins.concatStringsSep "." (ireplace idx minor ver);
-      in
+  operators =
+    let
+      matchWildCard = s: match "([^\*])(\.[\*])" s;
+      mkComparison = ret: version: v: builtins.compareVersions version v == ret;
+      mkIdxComparison = idx: version: v:
+        let
+          ver = builtins.splitVersion v;
+          minor = builtins.toString (lib.toInt (elemAt ver idx) + 1);
+          upper = builtins.concatStringsSep "." (ireplace idx minor ver);
+        in
         operators.">=" version v && operators."<" version upper;
-    dropWildcardPrecision = f: version: constraint:
-      let
-        m = matchWildCard constraint;
-        hasWildcard = m != null;
-        c = if hasWildcard then (elemAt m 0) else constraint;
-        v =
-          if hasWildcard then (builtins.substring 0 (builtins.stringLength c) version)
-          else version;
-      in
+      dropWildcardPrecision = f: version: constraint:
+        let
+          m = matchWildCard constraint;
+          hasWildcard = m != null;
+          c = if hasWildcard then (elemAt m 0) else constraint;
+          v =
+            if hasWildcard then (builtins.substring 0 (builtins.stringLength c) version)
+            else version;
+        in
         f v c;
-  in
+    in
     {
       # Prefix operators
       "==" = dropWildcardPrecision (mkComparison 0);
@@ -39,24 +39,23 @@ let
           # Prune constraint
           parts = builtins.splitVersion c;
           pruned = lib.take ((builtins.length parts) - 1) parts;
-          upper = builtins.toString (
-            (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
-          );
+          upper = builtins.toString
+            (
+              (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
+            );
           upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
         in
-          operators.">=" v c && operators."<" v upperConstraint;
+        operators.">=" v c && operators."<" v upperConstraint;
       # Infix operators
       "-" = version: v: operators.">=" version v.vl && operators."<=" version v.vu;
       # Arbitrary equality clause, just run simple comparison
       "===" = v: c: v == c;
       #
     };
-
   re = {
     operators = "([=><!~\^]+)";
     version = "([0-9\.\*x]+)";
   };
-
   parseConstraint = constraint:
     let
       constraintStr = builtins.replaceStrings [ " " ] [ "" ] constraint;
@@ -65,26 +64,24 @@ let
       # There is also an infix operator to match ranges
       mIn = match "${re.version} *(-) *${re.version}" constraintStr;
     in
-      (
-        if mPre != null then {
-          op = elemAt mPre 0;
-          v = elemAt mPre 1;
-        }
-          # Infix operators are range matches
-        else if mIn != null then {
-          op = elemAt mIn 1;
-          v = {
-            vl = (elemAt mIn 0);
-            vu = (elemAt mIn 2);
-          };
-        }
-        else throw "Constraint \"${constraintStr}\" could not be parsed"
-      );
-
+    (
+      if mPre != null then {
+        op = elemAt mPre 0;
+        v = elemAt mPre 1;
+      }
+        # Infix operators are range matches
+      else if mIn != null then {
+        op = elemAt mIn 1;
+        v = {
+          vl = (elemAt mIn 0);
+          vu = (elemAt mIn 2);
+        };
+      }
+      else throw "Constraint \"${constraintStr}\" could not be parsed"
+    );
   satisfiesSemver = version: constraint:
     let
       inherit (parseConstraint constraint) op v;
-    in
-      if constraint == "*" then true else operators."${op}" version v;
+    in if constraint == "*" then true else operators."${op}" version v;
 in
 { inherit satisfiesSemver; }
diff --git a/pkgs/development/tools/poetry2nix/update b/pkgs/development/tools/poetry2nix/update
index 4840c23c3b81..5bea272f8a9a 100755
--- a/pkgs/development/tools/poetry2nix/update
+++ b/pkgs/development/tools/poetry2nix/update
@@ -14,7 +14,7 @@ curl -L -s https://github.com/nix-community/poetry2nix/archive/master.tar.gz | t
 mv poetry2nix-master/* .
 
 mkdir build
-cp *.nix *.json *.py build/
+cp *.* build/
 cp -r hooks bin build/
 rm build/shell.nix build/generate.py build/overlay.nix build/flake.nix
 
diff --git a/pkgs/development/tools/proto-contrib/default.nix b/pkgs/development/tools/proto-contrib/default.nix
index 4de843be9512..90253ed57048 100644
--- a/pkgs/development/tools/proto-contrib/default.nix
+++ b/pkgs/development/tools/proto-contrib/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "0ksxic7cypv9gg8q5lkl5bla1n9i65z7b03cx9lwq6252glmf2jk";
   };
 
-  modSha256 = "19cqz13jd95d5vibd10420gg69ldgf6afc51mkglhafgmmif56b0";
+  vendorSha256 = "1ivvq5ch9grdrwqq29flv9821kyb16k0cj6wgj5v0dyn63w420aw";
 
   meta = with lib; {
     description = "Contributed tools and other packages on top of the Go proto package";
@@ -20,4 +20,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/protoc-gen-doc/default.nix b/pkgs/development/tools/protoc-gen-doc/default.nix
index 77c1df6f43e3..5579d006e97b 100644
--- a/pkgs/development/tools/protoc-gen-doc/default.nix
+++ b/pkgs/development/tools/protoc-gen-doc/default.nix
@@ -11,7 +11,7 @@ buildGoModule {
     sha256 = "004axh2gqc4f115mdxxg59d19hph3rr0bq9d08n3nyl315f590kj";
   };
 
-  modSha256 = "1952ycdkgl00q2s3qmhislhhim15nn6nmlkwbfdvrsfzznqj47rd";
+  vendorSha256 = "17qdpsff8jk7ks5v6ix1rb966x3yvq03vk5bs2zbnxfdra7bv3n6";
 
   meta = with lib; {
     description = "Documentation generator plugin for Google Protocol Buffers";
@@ -27,4 +27,4 @@ buildGoModule {
     license = licenses.mit;
     maintainers = with maintainers; [ kalbasit ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/prototool/default.nix b/pkgs/development/tools/prototool/default.nix
index 37b0f1fdf8db..a5cf91b70d1d 100644
--- a/pkgs/development/tools/prototool/default.nix
+++ b/pkgs/development/tools/prototool/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "prototool";
-  version = "1.9.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "uber";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1ssgvhcnqffhhdx8hnk4lmklip2f6g9i7ifblywfjylb08y7iqgd";
+    sha256 = "02ih9pqnziwl2k4z6c59w1p4bxmb3xki5y33pdfkxqn2467s792g";
   };
 
   nativeBuildInputs = [ makeWrapper ];
 
-  modSha256 = "1gc8kc9mbi3mlh48zx4lcgpsrf8z879f1qj9wfyr66s7wd1ljazg";
+  vendorSha256 = "0gyj0yrri2j4yxmyn4d4vdhaxf2p08srpjcxg9zpaxwv5rrvipav";
 
   postInstall = ''
     wrapProgram "$out/bin/prototool" \
diff --git a/pkgs/development/tools/pxview/default.nix b/pkgs/development/tools/pxview/default.nix
new file mode 100644
index 000000000000..6b11071b6fa3
--- /dev/null
+++ b/pkgs/development/tools/pxview/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, pkgconfig, perl, perlPackages, pxlib }:
+
+stdenv.mkDerivation rec {
+  pname = "pxview";
+  version = "0.2.5";
+  src = fetchurl {
+    url = "mirror://sourceforge/pxlib/${pname}_${version}.orig.tar.gz";
+    sha256 = "1kpdqs6lvnyj02v9fbz1s427yqhgrxp7zw63rzfgiwd4iqp75139";
+  };
+
+  buildInputs = [ pxlib perl ] ++ (with perlPackages; [ libxml_perl ]);
+  nativeBuildInputs = [ pkgconfig ];
+
+  configureFlags = [ "--with-pxlib=${pxlib.out}" ];
+
+  # https://sourceforge.net/p/pxlib/bugs/12/
+  LDFLAGS = "-lm";
+  hardeningDisable = [ "format" ];
+
+  meta = with stdenv.lib; {
+    description = "Program to convert Paradox databases";
+    homepage = "http://pxlib.sourceforge.net/pxview/";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.winpat ];
+  };
+}
diff --git a/pkgs/development/tools/redis-dump/default.nix b/pkgs/development/tools/redis-dump/default.nix
index 2c93ef47d697..2d4acd724d39 100644
--- a/pkgs/development/tools/redis-dump/default.nix
+++ b/pkgs/development/tools/redis-dump/default.nix
@@ -3,7 +3,7 @@
 bundlerApp {
   pname = "redis-dump";
   gemdir = ./.;
-  exes = [ "redis-dump" ];
+  exes = [ "redis-dump" "redis-load" ];
 
   passthru.updateScript = bundlerUpdateScript "redis-dump";
 
diff --git a/pkgs/development/tools/reftools/default.nix b/pkgs/development/tools/reftools/default.nix
index 7e71926b895e..7f8d1be1a52b 100644
--- a/pkgs/development/tools/reftools/default.nix
+++ b/pkgs/development/tools/reftools/default.nix
@@ -8,7 +8,7 @@ buildGoModule rec {
   version = "2019-12-21";
   rev = "65925cf013156409e591f7a1be4df96f640d02f4";
 
-  modSha256 = "1sihahgkcj018ixbnz58npfh4drhqip2xmc9p7lq3an8japb9nyx";
+  vendorSha256 = null;
 
   goPackagePath = "github.com/davidrjenni/reftools";
   excludedPackages = "\\(cmd/fillswitch/test-fixtures\\)";
@@ -28,4 +28,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/renderizer/default.nix b/pkgs/development/tools/renderizer/default.nix
index 93634f935d1d..877fdeea8f2b 100644
--- a/pkgs/development/tools/renderizer/default.nix
+++ b/pkgs/development/tools/renderizer/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1bip12pcn8bqgph7vd7bzzadwbyqh80fx7gqciv9fchycwsj04rf";
   };
 
-  modSha256 = "0ss5l2n1sl1i2hvxsdzy6p61mnnxmm6h256jvv0p0ajynx8g538q";
+  vendorSha256 = "13z357ww4j5bmmy8ag6d6gd5b2dib8kby73q8317pqnqzaxrrbcj";
 
   meta = with stdenv.lib; {
     description = "CLI to render Go template text files";
@@ -19,4 +19,4 @@ buildGoModule rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ yurrriq ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/richgo/default.nix b/pkgs/development/tools/richgo/default.nix
index 9178f53bfde4..4fc4d4abc618 100644
--- a/pkgs/development/tools/richgo/default.nix
+++ b/pkgs/development/tools/richgo/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "07ipa54c4mzm6yizgvkm6x5yim1xgv3f0xdxg35qziacdfcwd6m4";
   };
 
-  modSha256 = "12wbjfqy6qnapm3f2pz1ci1gvc0y8kzr8c99kihyh1jv9r3zy1wz";
+  vendorSha256 = "1nvk3akjwfcbvif1w4cglsqplcajlwq3mnvk9b75nmn9qaqfbfjf";
 
   subPackages = [ "." ];
 
@@ -21,4 +21,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ rvolosatovs ];
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/rshell/default.nix b/pkgs/development/tools/rshell/default.nix
index 5087b811ac01..4e3e12a8eeb1 100644
--- a/pkgs/development/tools/rshell/default.nix
+++ b/pkgs/development/tools/rshell/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "rshell";
-  version = "0.0.27";
+  version = "0.0.28";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "15pm60jfmr5nms43nrh5jlpz4lxxfhaahznfcys6nc4g80r2fwr2";
+    sha256 = "1crnlv0khplpibl9mj3flrgp877pnr1xz6hnnsi6hk3kfbc6p3nj";
   };
 
   propagatedBuildInputs = [ pyserial pyudev ];
diff --git a/pkgs/development/tools/run/default.nix b/pkgs/development/tools/run/default.nix
index 61e04a774aa9..518cc3e2557f 100644
--- a/pkgs/development/tools/run/default.nix
+++ b/pkgs/development/tools/run/default.nix
@@ -1,16 +1,16 @@
 { stdenv, buildGoModule, fetchFromGitHub }:
 buildGoModule rec {
   pname = "run";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "TekWizely";
     repo = "run";
     rev = "v${version}";
-    sha256 = "0q9f8lzrzybdablqph5wihqhfbfzb3bbnnxvhy7g5ccg1kzy7mgp";
+    sha256 = "17n11lqhywq4z62w2rakdq80v7mxf83rgln19vj4v4nxpwd2hjjw";
   };
 
-  modSha256 = "0s2lw9q5jskj41jqr8bv5w45pkrp2s0yfd2hgjgsd0q4ifm07k7s";
+  vendorSha256 = "1g5rmiiwqpm8gky9yr5f2a7zsjjmm9i12r7yxj9cz7y3rmw9sw8c";
 
   meta = with stdenv.lib; {
     description = "Easily manage and invoke small scripts and wrappers";
@@ -19,4 +19,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ rawkode filalex77 ];
     platforms   = platforms.unix;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/rust/cargo-deny/default.nix b/pkgs/development/tools/rust/cargo-deny/default.nix
index 727a789c42fb..deba6cc674c1 100644
--- a/pkgs/development/tools/rust/cargo-deny/default.nix
+++ b/pkgs/development/tools/rust/cargo-deny/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-deny";
-  version = "0.6.6";
+  version = "0.6.7";
 
   src = fetchFromGitHub {
     owner = "EmbarkStudios";
     repo = pname;
     rev = version;
-    sha256 = "0pmh6x7rb0v1g087xgyicw9mm4ayppgh7vzvq3hs8vip2zvy7r56";
+    sha256 = "1d7zd2wpvfz1vq5ik67m6s1mscivh8b3kz4bfckw3cazk68vn9q1";
   };
 
-  cargoSha256 = "00lh6nxc17dyl8z2l70gzc7l1vpn448lzi1c69wxxcqnk8y0ka9w";
+  cargoSha256 = "0jy10yfd9d5r0ildyxszs1ppzyd4ninl7lihdnwjqm6qifr1m5rp";
 
   nativeBuildInputs = [ perl pkgconfig ];
 
diff --git a/pkgs/development/tools/rust/cargo-make/Cargo.lock b/pkgs/development/tools/rust/cargo-make/Cargo.lock
index 1f7b5c1d1b75..4390a1cf7990 100644
--- a/pkgs/development/tools/rust/cargo-make/Cargo.lock
+++ b/pkgs/development/tools/rust/cargo-make/Cargo.lock
@@ -38,9 +38,9 @@ checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
 
 [[package]]
 name = "attohttpc"
-version = "0.12.0"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de33d017f0add8b019c6d98c3132c82c8815ca96bbed8e8006e7402c840562b3"
+checksum = "d5db1932a9d70d5091139d6b0e04ec6a4d9f9184041c15d71a5ef954cb3c5312"
 dependencies = [
  "flate2",
  "http",
@@ -75,9 +75,9 @@ checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
 
 [[package]]
 name = "base64"
-version = "0.12.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d5ca2cd0adc3f48f9e9ea5a6bbdf9ccc0bfade884847e484d452414c7ccffb3"
+checksum = "53d1ccbaf7d9ec9537465a97bf19edc1a4e158ecb49fc16178202238c569cc42"
 
 [[package]]
 name = "bitflags"
@@ -104,7 +104,7 @@ checksum = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1"
 
 [[package]]
 name = "cargo-make"
-version = "0.30.6"
+version = "0.30.8"
 dependencies = [
  "ci_info",
  "clap",
@@ -145,9 +145,9 @@ checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
 
 [[package]]
 name = "ci_info"
-version = "0.10.0"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b407009a4a51ae109dbdfcd7b6e4de38d148f37fad512b8c4623c642c4045e68"
+checksum = "a19c5f9baeac8a1176ca7fc58a0cc1abadd84d360365a93d1dd31e926f3f502b"
 dependencies = [
  "envmnt",
 ]
@@ -244,21 +244,21 @@ dependencies = [
 
 [[package]]
 name = "duckscript"
-version = "0.3.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "606ba1f416b4babf0971b0510b7e49ecb948ad381e4943d5b96a7a22ac701386"
+checksum = "62b666b2baf849932922921c2ff4bdb30e49835468626561d18fda4949751b55"
 dependencies = [
  "fsio",
 ]
 
 [[package]]
 name = "duckscriptsdk"
-version = "0.3.3"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bdbd838e33acba34abb076b94db7bba43e9dbaccd00486322ce314ddc7d0979"
+checksum = "dc9026058fdb6382c5fc62bc7a789d18b796236ddf48bee5a01332f576c1c109"
 dependencies = [
  "attohttpc",
- "base64 0.12.0",
+ "base64 0.12.1",
  "cfg-if",
  "duckscript",
  "fs_extra",
@@ -429,9 +429,9 @@ dependencies = [
 
 [[package]]
 name = "git_info"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "add3a9c3c08c8905a2165ff06891dd1c3bb32d81b2a32d79528abc9793dfb06f"
+checksum = "641b847f0375f4b2c595438eefc17a9c0fbf47b400cbdd1ad9332bf1e16b779d"
 
 [[package]]
 name = "glob"
@@ -441,9 +441,9 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
 
 [[package]]
 name = "hermit-abi"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a0d737e0f947a1864e93d33fdef4af8445a00d1ed8dc0c8ddb73139ea6abf15"
+checksum = "61565ff7aaace3525556587bd2dc31d4a07071957be715e63ce7b1eccf51a8f4"
 dependencies = [
  "libc",
 ]
@@ -650,18 +650,18 @@ checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.10"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3"
+checksum = "8872cf6f48eee44265156c111456a700ab3483686b3f96df4cf5481c89157319"
 dependencies = [
  "unicode-xid",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bdc6c187c65bca4260c9011c9e3132efe4909da44726bad24cf7572ae338d7f"
+checksum = "4c1f4b0efa5fc5e8ceb705136bfee52cfdb6a4e3509f770b478cd6ed434232a7"
 dependencies = [
  "proc-macro2",
 ]
@@ -774,9 +774,9 @@ dependencies = [
 
 [[package]]
 name = "rust_info"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be941f2b996df7ffaf093366039c9dc182b3ca2e00f3e81df44e08c3611e773d"
+checksum = "02b506bd796703b88d74a3edb529acde6c71d81bb078c392eecd60a745cb1d2f"
 
 [[package]]
 name = "rusty-hook"
@@ -840,9 +840,9 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "0.9.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+checksum = "394cec28fa623e00903caf7ba4fa6fb9a0e260280bb8cdbbba029611108a0190"
 dependencies = [
  "semver-parser",
 ]
@@ -872,9 +872,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.51"
+version = "1.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da07b57ee2623368351e9a0488bb0b261322a15a6e0ae53e243cbdc0f4208da9"
+checksum = "a7894c8ed05b7a3a279aeb79025fdec1d3158080b75b98a08faf2806bb799edd"
 dependencies = [
  "itoa",
  "ryu",
@@ -904,9 +904,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
 
 [[package]]
 name = "syn"
-version = "1.0.18"
+version = "1.0.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "410a7488c0a728c7ceb4ad59b9567eb4053d02e8cc7f5c0e0eeeb39518369213"
+checksum = "e8e5aa70697bb26ee62214ae3288465ecec0000f05182f039b477001f08f5ae7"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1021,9 +1021,9 @@ checksum = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
 
 [[package]]
 name = "vec_map"
-version = "0.8.1"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
 
 [[package]]
 name = "walkdir"
diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix
index 6054a43d2279..2950ed1b83b4 100644
--- a/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/pkgs/development/tools/rust/cargo-make/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.30.6";
+  version = "0.30.8";
 
   src =
     let
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
         owner = "sagiegurari";
         repo = pname;
         rev = version;
-        sha256 = "1kr3ay1gifyhwk6nlzq5vdi45583f5yvszk1pjsy2ki8l8j3ba3h";
+        sha256 = "0sx1kvrk2df5v9f35cd6201b3m8d6ynppmikqm00g55db9r4vfl2";
       };
     in
     runCommand "source" {} ''
@@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "0zfylhfz2c8yfixjiv41kl1xgmbbh2c38cc8ajx1pxrhgn7ig5dv";
+  cargoSha256 = "1b0x12hcjy061dvbpy5cwgp6pwlzq2k1dapr9glw8dwprns57ar7";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/pkgs/development/tools/rust/cargo-udeps/default.nix b/pkgs/development/tools/rust/cargo-udeps/default.nix
index ca347ca22dee..a6089ffeac2d 100644
--- a/pkgs/development/tools/rust/cargo-udeps/default.nix
+++ b/pkgs/development/tools/rust/cargo-udeps/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-udeps";
-  version = "0.1.10";
+  version = "0.1.11";
 
   src = fetchFromGitHub {
     owner = "est31";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1xmlpn4j5lhbzd9icb3nga5irfknmxfml9sn677d9z6fwfjfpa0l";
+    sha256 = "1drz0slv33p4spm52sb5lnmpb83q8l7k3cvp0zcsinbjv8glvvnv";
   };
 
-  cargoSha256 = "1si95pdhbi6pa94gh9vip95n37im6kcfsgslpnibck2157pg4la6";
+  cargoSha256 = "13ynab3s563n2xwkls7nmksis0ngx5klw9wc9bpnxgc5na9k84ll";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/development/tools/rust/cargo-xbuild/default.nix b/pkgs/development/tools/rust/cargo-xbuild/default.nix
index 4ae2b55f015f..6af944e9c5d6 100644
--- a/pkgs/development/tools/rust/cargo-xbuild/default.nix
+++ b/pkgs/development/tools/rust/cargo-xbuild/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-xbuild";
-  version = "0.5.28";
+  version = "0.5.29";
 
   src = fetchFromGitHub {
     owner = "rust-osdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1rczflf6fllxkag5nah195shwqvqmlna9a1gkcwp9ljlgxlr9zvq";
+    sha256 = "05wg1xx2mcwb9cplmrpg13jimddlzmv7hf5g3vjppjp8kz2gb7zj";
   };
 
-  cargoSha256 = "0xr8wpcw3x0343hm6clygsbikhrp6gcqb8vh7g7h9nijjrbnzxxb";
+  cargoSha256 = "1s2xsfld29shvjzyp16y263hnbqxrq8i2557y0g09xmfm5x0jhix";
 
   meta = with stdenv.lib; {
     description = "Automatically cross-compiles the sysroot crates core, compiler_builtins, and alloc";
diff --git a/pkgs/development/tools/rust/cbindgen/default.nix b/pkgs/development/tools/rust/cbindgen/default.nix
index 87e8e081a931..bc0ae5d33fe2 100644
--- a/pkgs/development/tools/rust/cbindgen/default.nix
+++ b/pkgs/development/tools/rust/cbindgen/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-cbindgen";
-  version = "0.13.2";
+  version = "0.14.2";
 
   src = fetchFromGitHub {
     owner = "eqrion";
     repo = "cbindgen";
     rev = "v${version}";
-    sha256 = "100ls8p8w6jwcjh3ligly5alg8fzp21aj7b1qbndn9fm0y1nmjam";
+    sha256 = "15mk7q89rs723c7i9wwq4rrvakwh834wvrsmsnayji5k1kwaj351";
   };
 
-  cargoSha256 = "0d9sz46yzh01dx973q10xzw4k7r7ylvg82s5pkp3zpwcin8smaiw";
+  cargoSha256 = "03irndd48ck62chm4vmlcnfm98gwd86xm1ssq9glw3b3y0n6x845";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/development/tools/scalafmt/default.nix b/pkgs/development/tools/scalafmt/default.nix
index 76091926a23f..0905c27d4c1c 100644
--- a/pkgs/development/tools/scalafmt/default.nix
+++ b/pkgs/development/tools/scalafmt/default.nix
@@ -2,7 +2,7 @@
 
 let
   baseName = "scalafmt";
-  version = "2.4.2";
+  version = "2.5.2";
   deps = stdenv.mkDerivation {
     name = "${baseName}-deps-${version}";
     buildCommand = ''
@@ -13,7 +13,7 @@ let
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "0axinxfyycnmxg561n80s90swr6d0pgsw669gvpsk557nhmcclja";
+    outputHash     = "14sfpzhd7r8srl9qyrdfqwmgrircqsgrr5hwvg8h1vaiwakq7m00";
   };
 in
 stdenv.mkDerivation {
diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix
index 29ed96b778ad..8aad3230003e 100644
--- a/pkgs/development/tools/selenium/chromedriver/default.nix
+++ b/pkgs/development/tools/selenium/chromedriver/default.nix
@@ -6,12 +6,12 @@ let
   allSpecs = {
     x86_64-linux = {
       system = "linux64";
-      sha256 = "1mqsangjindfqgvjxgmpgfrcd8a2lqmwl587l0ip0p5wwz8yq5wi";
+      sha256 = "149p43zaz45malmff1274r2bwjcyjwsdickivk3pd0mvnjbfid2r";
     };
 
     x86_64-darwin = {
       system = "mac64";
-      sha256 = "18ydf2bk5aiin3yffb9z8215idz65nkhgxq0mmlvwb8gwsdvnwi1";
+      sha256 = "1xpyqxpsz3r653ls67s6alv4g2vr4lxf29gyxc162ikywyrx80nr";
     };
   };
 
@@ -28,7 +28,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "chromedriver";
-  version = "81.0.4044.69";
+  version = "83.0.4103.39";
 
   src = fetchurl {
     url = "https://chromedriver.storage.googleapis.com/${version}/chromedriver_${spec.system}.zip";
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index 5534492cf37d..7c673dea21ba 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,9 +2,9 @@
 
 buildGoPackage rec {
   pname = "skaffold";
-  version = "1.8.0";
+  version = "1.9.1";
   # rev is the ${version} commit, mainly for skaffold version command output
-  rev = "bd280192092e28067f0f52584c8bcb4f4dc480e4";
+  rev = "7bac6a150c9618465f5ad38cc0a5dbc4677c39ba";
 
   goPackagePath = "github.com/GoogleContainerTools/skaffold";
   subPackages = ["cmd/skaffold"];
@@ -20,13 +20,13 @@ buildGoPackage rec {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "0s1j1lij56idl981nq7dnvkil1ki283nfhcfqyl5g00payihlm73";
+    sha256 = "0l0x89xv5brinafrvbz6hgs5kvmpl4ajcrsjdjh3myf7i0mvh3gm";
   };
 
   nativeBuildInputs = [ installShellFiles ];
   postInstall = ''
     for shell in bash zsh; do
-      $bin/bin/skaffold completion $shell > skaffold.$shell
+      $out/bin/skaffold completion $shell > skaffold.$shell
       installShellCompletion skaffold.$shell
     done
   '';
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index 7d4e4e0c69ed..45b6867197ef 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -1,61 +1,56 @@
 { stdenv
-, buildGoPackage
+, buildGoModule
 , fetchFromGitHub
 , runCommand
 , gpgme
-, libgpgerror
 , lvm2
 , btrfs-progs
 , pkg-config
-, libselinux
 , go-md2man
 , installShellFiles
+, makeWrapper
+, fuse-overlayfs
+, nixosTests
 }:
 
-let
-  version = "0.2.0";
+buildGoModule rec {
+  pname = "skopeo";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    sha256 = "09zqzrw6f1s6kaknnj3hra3xz4nq6y86vmw5vk8p4f6g7cwakg1x";
+    sha256 = "1zg0agf8x7fa8zdzfzgncm64j363lmxrqjhdzsx6mlig87k17p05";
   };
 
-  defaultPolicyFile = runCommand "skopeo-default-policy.json" {} "cp ${src}/default-policy.json $out";
-
-  goPackagePath = "github.com/containers/skopeo";
-
-  vendorPath = "${goPackagePath}/vendor/github.com/containers/image/v5";
-
-in
-buildGoPackage {
-  pname = "skopeo";
-  inherit version;
-  inherit src goPackagePath;
+  outputs = [ "out" "man" ];
 
-  outputs = [ "bin" "man" "out" ];
+  vendorSha256 = null;
 
-  excludedPackages = [ "integration" ];
+  nativeBuildInputs = [ pkg-config go-md2man installShellFiles makeWrapper ];
 
-  nativeBuildInputs = [ pkg-config go-md2man installShellFiles ];
   buildInputs = [ gpgme ]
-  ++ stdenv.lib.optionals stdenv.isLinux [ libgpgerror lvm2 btrfs-progs libselinux ];
+  ++ stdenv.lib.optionals stdenv.isLinux [ lvm2 btrfs-progs ];
 
-  buildFlagsArray = ''
-    -ldflags=
-    -X ${vendorPath}/signature.systemDefaultPolicyPath=${defaultPolicyFile}
-    -X ${vendorPath}/internal/tmpdir.unixTempDirForBigFiles=/tmp
+  buildPhase = ''
+    patchShebangs .
+    make binary-local
   '';
 
-  postBuild = ''
-    # depends on buildGoPackage not changing …
-    pushd ./go/src/${goPackagePath}
+  installPhase = ''
+    make install-binary PREFIX=$out
     make install-docs MANINSTALLDIR="$man/share/man"
     installShellCompletion --bash completions/bash/skopeo
-    popd
   '';
 
+  postInstall = stdenv.lib.optionals stdenv.isLinux ''
+    wrapProgram $out/bin/skopeo \
+      --prefix PATH : ${stdenv.lib.makeBinPath [ fuse-overlayfs ]}
+  '';
+
+  passthru.tests.docker-tools = nixosTests.docker-tools;
+
   meta = with stdenv.lib; {
     description = "A command line utility for various operations on container images and image repositories";
     homepage = "https://github.com/containers/skopeo";
diff --git a/pkgs/development/tools/solarus-quest-editor/default.nix b/pkgs/development/tools/solarus-quest-editor/default.nix
index 7dcde72fc4b0..d44622e7e595 100644
--- a/pkgs/development/tools/solarus-quest-editor/default.nix
+++ b/pkgs/development/tools/solarus-quest-editor/default.nix
@@ -5,13 +5,13 @@
 
 mkDerivation rec {
   pname = "solarus-quest-editor";
-  version = "1.6.2";
+  version = "1.6.4";
 
   src = fetchFromGitLab {
     owner = "solarus-games";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0dq94iw9ldl4p83dqcwjs5ilpkvz5jgdk8rbls8pf8b7afpg36rz";
+    sha256 = "1qbc2j9kalk7xqk9j27s7wnm5zawiyjs47xqkqphw683idmzmjzn";
   };
   
   buildInputs = [ cmake luajit SDL2
diff --git a/pkgs/development/tools/spring-boot/default.nix b/pkgs/development/tools/spring-boot-cli/default.nix
index 4f8c17caeee7..b59ef341dffe 100644
--- a/pkgs/development/tools/spring-boot/default.nix
+++ b/pkgs/development/tools/spring-boot-cli/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchzip, jdk, makeWrapper, installShellFiles }:
+{ stdenv, fetchzip, jdk, makeWrapper, installShellFiles, coreutils }:
 
 stdenv.mkDerivation rec {
-  pname = "spring-boot";
-  version = "2.1.9";
+  pname = "spring-boot-cli";
+  version = "2.3.0";
 
   src = fetchzip {
-    url = "https://repo.spring.io/release/org/springframework/boot/${pname}-cli/${version}.RELEASE/${pname}-cli-${version}.RELEASE-bin.zip";
-    sha256 = "03iphh5l9w9sizksidkv217qnqx3nh1zpw6kdjnn40j3mlabfb7j";
+    url = "https://repo.spring.io/release/org/springframework/boot/${pname}/${version}.RELEASE/${pname}-${version}.RELEASE-bin.zip";
+    sha256 = "1zjbgs1qx75jgxc46x9380iqh8pfgacih38ad3qxd0106a8lcp5h";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
@@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
     rm -r shell-completion
     cp -r . $out
     wrapProgram $out/bin/spring \
-      --prefix JAVA_HOME : ${jdk}
+      --set JAVA_HOME ${jdk} \
+      --set PATH /bin:${coreutils}/bin:${jdk}/bin
     runHook postInstall
   '';
 
@@ -28,14 +29,14 @@ stdenv.mkDerivation rec {
       CLI which makes it easy to create spring-based applications
     '';
     longDescription = ''
-      Spring Boot makes it easy to create stand-alone, production-grade 
-      Spring-based Applications that you can run. We take an opinionated view 
-      of the Spring platform and third-party libraries, so that you can get 
-      started with minimum fuss. Most Spring Boot applications need very 
+      Spring Boot makes it easy to create stand-alone, production-grade
+      Spring-based Applications that you can run. We take an opinionated view
+      of the Spring platform and third-party libraries, so that you can get
+      started with minimum fuss. Most Spring Boot applications need very
       little Spring configuration.
 
-      You can use Spring Boot to create Java applications that can be started 
-      by using java -jar or more traditional war deployments. We also provide 
+      You can use Spring Boot to create Java applications that can be started
+      by using java -jar or more traditional war deployments. We also provide
       a command line tool that runs “spring scripts”.
     '';
     homepage = "https://spring.io/projects/spring-boot";
diff --git a/pkgs/development/tools/toxiproxy/default.nix b/pkgs/development/tools/toxiproxy/default.nix
index a5c13e2266e9..3587454b84b2 100644
--- a/pkgs/development/tools/toxiproxy/default.nix
+++ b/pkgs/development/tools/toxiproxy/default.nix
@@ -2,12 +2,12 @@
 
 buildGoPackage rec {
   pname = "toxiproxy";
-  version = "2.1.3";
+  version = "2.1.4";
   src = fetchFromGitHub {
     owner = "Shopify";
     repo = "toxiproxy";
     rev = "v${version}";
-    sha256 = "1a7yry846iwi9cs9xam2vjbw73fjy45agjrwk214k0n1ziaawz2f";
+    sha256 = "07yhsvscdv1qjfc2fyyh9qsrrdwrrw04wadk5gaq4qddcway7vig";
   };
 
   goPackagePath = "github.com/Shopify/toxiproxy";
@@ -15,8 +15,8 @@ buildGoPackage rec {
   buildFlagsArray = "-ldflags=-X github.com/Shopify/toxiproxy.Version=v${version}";
 
   postInstall = ''
-    mv $bin/bin/cli $bin/bin/toxiproxy-cli
-    mv $bin/bin/cmd $bin/bin/toxiproxy-cmd
+    mv $out/bin/cli $out/bin/toxiproxy-cli
+    mv $out/bin/cmd $out/bin/toxiproxy-cmd
   '';
 
   meta = {
diff --git a/pkgs/development/tools/unityhub/default.nix b/pkgs/development/tools/unityhub/default.nix
index 2939df0ba20d..bb84584e836e 100644
--- a/pkgs/development/tools/unityhub/default.nix
+++ b/pkgs/development/tools/unityhub/default.nix
@@ -1,6 +1,8 @@
 { stdenv, fetchurl, appimageTools, gsettings-desktop-schemas, gtk3 }:
 
-appimageTools.wrapType2 rec {
+let
+  version = "2.3.1";
+in appimageTools.wrapType2 rec {
   name = "unityhub";
 
   extraPkgs = (pkgs: with pkgs; with xorg; [ gtk2 gdk_pixbuf glib libGL libGLU nss nspr
@@ -16,8 +18,9 @@ appimageTools.wrapType2 rec {
   '';
 
   src = fetchurl {
-    url = "https://public-cdn.cloud.unity3d.com/hub/prod/UnityHub.AppImage";
-    sha256 = "05p5kqbwgqyk2aw2lix5dk1ql16aj6iczxrc63a1l0vj8wrha7z4";
+    # mirror of https://public-cdn.cloud.unity3d.com/hub/prod/UnityHub.AppImage
+    url = "https://archive.org/download/unity-hub-${version}/UnityHub.AppImage";
+    sha256 = "09nrgjlknl3hgrrl7rc79bmbrq6r6sl49dw0cmvs37vjqnvlr8ny";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix
index cc1f1c8021a5..32e205a6f8d3 100644
--- a/pkgs/development/tools/vagrant/default.nix
+++ b/pkgs/development/tools/vagrant/default.nix
@@ -5,9 +5,9 @@
 let
   # NOTE: bumping the version and updating the hash is insufficient;
   # you must use bundix to generate a new gemset.nix in the Vagrant source.
-  version = "2.2.7";
+  version = "2.2.8";
   url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
-  sha256 = "1z31y1nqiyj6rml9lz8gcbr29myhs5wcap8jsvgm3pb7p9p9y8m9";
+  sha256 = "0nvxda0dyhncgcl9qs34l4rj0jbdbg65a3ii5765p4899z6gzx95";
 
   deps = bundlerEnv rec {
     name = "${pname}-${version}";
diff --git a/pkgs/development/tools/vagrant/gemset.nix b/pkgs/development/tools/vagrant/gemset.nix
index 64f24f8270db..f5d70b912df5 100644
--- a/pkgs/development/tools/vagrant/gemset.nix
+++ b/pkgs/development/tools/vagrant/gemset.nix
@@ -20,25 +20,24 @@
     version = "3.2.4";
   };
   childprocess = {
-    dependencies = ["ffi"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1p3f43scdzx9zxmy2kw5zsc3az6v46nq4brwcxmnscjy4w4racbv";
+      sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
       type = "gem";
     };
-    version = "0.6.3";
+    version = "3.0.0";
   };
   concurrent-ruby = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an";
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
       type = "gem";
     };
-    version = "1.1.5";
+    version = "1.1.6";
   };
   domain_name = {
     dependencies = ["unf"];
@@ -213,10 +212,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
+      sha256 = "1zin0q26wc5p7zb7glpwary7ms60s676vcq987yv22jgm6hnlwlh";
       type = "gem";
     };
-    version = "3.2019.1009";
+    version = "3.2020.0425";
   };
   multi_json = {
     groups = ["default"];
@@ -255,10 +254,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jglf8rxvlw6is5019r6kwsdhw38zm3z39jbghdbj449r6h7h77n";
+      sha256 = "101wd2px9lady54aqmkibvy4j62zk32w0rjz4vnigyg974fsga40";
       type = "gem";
     };
-    version = "5.1.0";
+    version = "5.2.0";
   };
   netrc = {
     groups = ["default"];
@@ -285,10 +284,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8";
+      sha256 = "1k9bsj7ni0g2fd7scyyy1sk9dy2pg9akniahab0iznvjmhn54h87";
       type = "gem";
     };
-    version = "0.10.3";
+    version = "0.10.4";
   };
   rb-inotify = {
     dependencies = ["ffi"];
@@ -348,10 +347,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qxc2zxwwipm6kviiar4gfhcakpx1jdcs89v6lvzivn5hq1xk78l";
+      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "2.3.0";
   };
   unf = {
     dependencies = ["unf_ext"];
@@ -369,10 +368,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ll6w64ibh81qwvjx19h8nj7mngxgffg7aigjx11klvf5k2g4nxf";
+      sha256 = "0wc47r23h063l8ysws8sy24gzh74mks81cak3lkzlrw4qkqb3sg4";
       type = "gem";
     };
-    version = "0.0.7.6";
+    version = "0.0.7.7";
   };
   vagrant_cloud = {
     dependencies = ["rest-client"];
@@ -412,10 +411,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12fzg9liydl244xq6r7x0wy06zn1n4czdbnjavy3150c3qsnv71a";
+      sha256 = "1yawwrs3pnvbbm9xn0nbzvyl92kgf1jr439qfbqx0mb8zzkyi2dv";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.2.1";
   };
   winrm-fs = {
     dependencies = ["erubi" "logging" "rubyzip" "winrm"];
@@ -423,9 +422,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0phhzliw47hmpi3ddygs500kfxa7il5yzmp7dw4ix2dvhrxrj7s6";
+      sha256 = "093f698l9b9cx6vcqwjc9hi5hbd86ynp1g5c7g9k18y6h7fxjk43";
       type = "gem";
     };
-    version = "1.3.3";
+    version = "1.3.4";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/tools/vcstool/default.nix b/pkgs/development/tools/vcstool/default.nix
index bab3ebd57573..c4a1cf739870 100644
--- a/pkgs/development/tools/vcstool/default.nix
+++ b/pkgs/development/tools/vcstool/default.nix
@@ -1,5 +1,5 @@
 { stdenv, python3Packages
-, git, bazaar, subversion }:
+, git, breezy, subversion }:
 
 with python3Packages;
 
@@ -14,7 +14,7 @@ buildPythonApplication rec {
 
   propagatedBuildInputs = [ pyyaml setuptools ];
 
-  makeWrapperArgs = ["--prefix" "PATH" ":" (stdenv.lib.makeBinPath [ git bazaar subversion ])];
+  makeWrapperArgs = ["--prefix" "PATH" ":" (stdenv.lib.makeBinPath [ git breezy subversion ])];
 
   doCheck = false; # requires network
 
diff --git a/pkgs/development/tools/vgo2nix/default.nix b/pkgs/development/tools/vgo2nix/default.nix
index 5f2a45f74273..880703383d11 100644
--- a/pkgs/development/tools/vgo2nix/default.nix
+++ b/pkgs/development/tools/vgo2nix/default.nix
@@ -9,16 +9,16 @@
 
 buildGoPackage {
   pname = "vgo2nix";
-  version = "unstable-2019-02-06";
+  version = "unstable-2020-05-05";
   goPackagePath = "github.com/adisbladis/vgo2nix";
 
   nativeBuildInputs = [ makeWrapper ];
 
   src = fetchFromGitHub {
-    owner = "adisbladis";
+    owner = "nix-community";
     repo = "vgo2nix";
-    rev = "f2694cd352830f0561bc00bbcaa08cefb2e36439";
-    sha256 = "10cwi67cyhqjq1pwhry2n1v8z7wybl4cawzmjmfgs5mbsvqp0h78";
+    rev = "71e59bf268d5257a0f89b2f59cd20fd468c8c6ac";
+    sha256 = "1pcdkknq2v7nrs0siqcvvq2x0qqz5snwdz2lpjnad8i33rwhmayh";
   };
 
   goDeps = ./deps.nix;
@@ -28,12 +28,12 @@ buildGoPackage {
   postInstall = with stdenv; let
     binPath = lib.makeBinPath [ nix-prefetch-git go ];
   in ''
-    wrapProgram $bin/bin/vgo2nix --prefix PATH : ${binPath}
+    wrapProgram $out/bin/vgo2nix --prefix PATH : ${binPath}
   '';
 
   meta = with stdenv.lib; {
     description = "Convert go.mod files to nixpkgs buildGoPackage compatible deps.nix files";
-    homepage = "https://github.com/adisbladis/vgo2nix";
+    homepage = "https://github.com/nix-community/vgo2nix";
     license = licenses.mit;
     maintainers = with maintainers; [ adisbladis ];
   };
diff --git a/pkgs/development/tools/vgo2nix/deps.nix b/pkgs/development/tools/vgo2nix/deps.nix
index 4f8506794d36..2d9a130e43e3 100644
--- a/pkgs/development/tools/vgo2nix/deps.nix
+++ b/pkgs/development/tools/vgo2nix/deps.nix
@@ -127,12 +127,66 @@
     };
   }
   {
+    goPackagePath = "github.com/yuin/goldmark";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yuin/goldmark";
+      rev = "v1.1.27";
+      sha256 = "1872cqnii0kwiqcy81yin0idvjy5mdy4zlzz0csb319lcjs3b923";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "87dc89f01550";
+      sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mod";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mod";
+      rev = "v0.2.0";
+      sha256 = "1fp6885dclq77mh73v7i54v2b9llpv4di193zc8vmsbbkkc483cl";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "0de0cce0169b";
+      sha256 = "1db7s5kbzyh2zd5lpv05n7hp8wbwdvgk0wpiwrlnig94mkr0y5aq";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
     goPackagePath = "golang.org/x/sys";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "d99a578cf41b";
-      sha256 = "10q9xx4pmnq92qn6ff4xp7n1hx766wvw2rf7pqcd6rx5plgwz8cm";
+      rev = "97732733099d";
+      sha256 = "118hkp01i4z1f5h6hcjm0ff2ngqhrzj1f7731n0kw8dr6hvbx0sw";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
     };
   }
   {
@@ -140,8 +194,17 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/tools";
-      rev = "ded554d0681e";
-      sha256 = "04rlq9hc3ccww9sbsrl48fl6wbjprb136rqxyr7dmgfj444aml56";
+      rev = "0c9eba77bc32";
+      sha256 = "1xz0jyxdmibkams6vd61va5cw963l25jjf3i9r33m0i739qwg4lj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/xerrors";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/xerrors";
+      rev = "9bdfabe68543";
+      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
     };
   }
 ]
diff --git a/pkgs/development/tools/vultr-cli/default.nix b/pkgs/development/tools/vultr-cli/default.nix
new file mode 100644
index 000000000000..acd26b638c92
--- /dev/null
+++ b/pkgs/development/tools/vultr-cli/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "vultr-cli";
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "vultr";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1z3vbcpchrf3bak08p72c96c2l39hdp196fqc5wvsqar3mzrrz7s";
+  };
+
+  vendorSha256 = null;
+
+  meta = with stdenv.lib; {
+    description = "Official command line tool for Vultr services";
+    homepage = "https://github.com/vultr/vultr-cli";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ filalex77 ];
+  };
+}
diff --git a/pkgs/development/tools/vultr/default.nix b/pkgs/development/tools/vultr/default.nix
index d59ff0c1ec52..8bd8a55bce8d 100644
--- a/pkgs/development/tools/vultr/default.nix
+++ b/pkgs/development/tools/vultr/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   pname = "vultr";
-  version = "1.15.0";
+  version = "2.0.1";
   goPackagePath = "github.com/JamesClonk/vultr";
 
   src = fetchFromGitHub {
     owner = "JamesClonk";
     repo = "vultr";
-    rev = version;
-    sha256 = "1bx2x17aa6wfn4qy9lxk8sh7shs3x5ppz2z49s0xm8qq0rs1qi92";
+    rev = "v${version}";
+    sha256 = "16wlncf0wax5jhpbfif5k16knigxy89vcby0b821klv6hlm6cc58";
   };
 
   meta = {
diff --git a/pkgs/development/tools/wabt/default.nix b/pkgs/development/tools/wabt/default.nix
index 281d68d27de6..11c9875bf9df 100644
--- a/pkgs/development/tools/wabt/default.nix
+++ b/pkgs/development/tools/wabt/default.nix
@@ -1,26 +1,25 @@
-{ stdenv, fetchFromGitHub, cmake, python3, substituteAll }:
+{ stdenv, fetchpatch, fetchFromGitHub, cmake, python3, substituteAll }:
 
 stdenv.mkDerivation rec {
   pname = "wabt";
-  version = "1.0.13";
+  version = "1.0.16";
 
   src = fetchFromGitHub {
     owner = "WebAssembly";
     repo = "wabt";
     rev = version;
-    sha256 = "07x8m5sf4c7zjq1flypycw1d15ylqdp38l81vn961ds089ngvpgg";
+    sha256 = "1zzc46d6m7l5lil423417crdda2cqb396p2idcla2ps161hwq3qp";
     fetchSubmodules = true;
   };
 
-  patches = [
-    (substituteAll {
-      src = ./version.patch;
-      inherit version;
-    })
-  ];
+  # https://github.com/WebAssembly/wabt/pull/1408
+  patches = [ (fetchpatch {
+    url = "https://github.com/WebAssembly/wabt/pull/1408/commits/28505f4db6e4561cf6840af5c304a9aa900c4987.patch";
+    sha256 = "1nh1ddsak6w51np17xf2r7i0czxrjslz1i4impmmp88h5bp2yjba";
+  }) ];
 
   nativeBuildInputs = [ cmake ];
-  cmakeFlags = [ "-DBUILD_TESTS=OFF" ];
+  cmakeFlags = [ "-DBUILD_TESTS=OFF" "-DCMAKE_PROJECT_VERSION=${version}" ];
   buildInputs = [ python3 ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/wabt/version.patch b/pkgs/development/tools/wabt/version.patch
deleted file mode 100644
index a49cd0bc1552..000000000000
--- a/pkgs/development/tools/wabt/version.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 363a5660..ad3300ed 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -68,22 +68,7 @@ endif ()
- include(CheckTypeSize)
- check_type_size(ssize_t SSIZE_T)
- check_type_size(size_t SIZEOF_SIZE_T)
--
--FIND_PACKAGE(Git QUIET REQUIRED)
--EXECUTE_PROCESS(COMMAND
--        "${GIT_EXECUTABLE}" --git-dir=${CMAKE_CURRENT_SOURCE_DIR}/.git describe --tags
--        RESULT_VARIABLE
--            GIT_HASH_RESULT
--        OUTPUT_VARIABLE
--            GIT_HASH
--        OUTPUT_STRIP_TRAILING_WHITESPACE)
--
--IF(${GIT_HASH_RESULT} EQUAL 0)
--    SET(WABT_VERSION_INFO "${GIT_HASH}")
--ELSE()
--    MESSAGE(WARNING "Error running git describe to determine version")
--    SET(WABT_VERSION_INFO "(unable to determine version)")
--ENDIF()
-+SET(WABT_VERSION_INFO "@version@")
- 
- configure_file(
-   ${WABT_SOURCE_DIR}/src/config.h.in
diff --git a/pkgs/development/tools/wally-cli/default.nix b/pkgs/development/tools/wally-cli/default.nix
index 5d2550b89cb6..ca8b40c4d53b 100644
--- a/pkgs/development/tools/wally-cli/default.nix
+++ b/pkgs/development/tools/wally-cli/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   };
 
   postInstall = ''
-    mv $bin/bin/cli $bin/bin/wally
+    mv $out/bin/cli $out/bin/wally
   '';
 
   goDeps = ./deps.nix;
diff --git a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
index b4fa5a8353cd..86fbb81de054 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
+++ b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
@@ -1,6 +1,6 @@
-From b0d7b8b348adba8131b12f99be7a9a30a1cca867 Mon Sep 17 00:00:00 2001
+From a13aff157f899a6388b3c9e621680049f329a028 Mon Sep 17 00:00:00 2001
 From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Thu, 30 Apr 2020 00:24:57 +0200
+Date: Fri, 1 May 2020 23:44:08 +0200
 Subject: [PATCH] Add cargo.lock
 
 ---
@@ -10,7 +10,7 @@ Subject: [PATCH] Add cargo.lock
 
 diff --git a/Cargo.lock b/Cargo.lock
 new file mode 100644
-index 00000000..8ae15438
+index 00000000..4822cea1
 --- /dev/null
 +++ b/Cargo.lock
 @@ -0,0 +1,2527 @@
@@ -605,7 +605,7 @@ index 00000000..8ae15438
 +dependencies = [
 + "proc-macro-hack",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 +]
 +
@@ -782,7 +782,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "js-sys"
-+version = "0.3.38"
++version = "0.3.39"
 +dependencies = [
 + "wasm-bindgen",
 + "wasm-bindgen-futures",
@@ -1173,7 +1173,7 @@ index 00000000..8ae15438
 +dependencies = [
 + "proc-macro-error-attr",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 + "version_check 0.9.1",
 +]
@@ -1185,7 +1185,7 @@ index 00000000..8ae15438
 +checksum = "4f5444ead4e9935abd7f27dc51f7e852a0569ac888096d5ec2499470794e2e53"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 + "syn-mid",
 + "version_check 0.9.1",
@@ -1238,9 +1238,9 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "quote"
-+version = "1.0.3"
++version = "1.0.4"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2bdc6c187c65bca4260c9011c9e3132efe4909da44726bad24cf7572ae338d7f"
++checksum = "4c1f4b0efa5fc5e8ceb705136bfee52cfdb6a4e3509f770b478cd6ed434232a7"
 +dependencies = [
 + "proc-macro2 1.0.10",
 +]
@@ -1642,7 +1642,7 @@ index 00000000..8ae15438
 +checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 +]
 +
@@ -1731,7 +1731,7 @@ index 00000000..8ae15438
 + "heck",
 + "proc-macro-error",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 +]
 +
@@ -1753,7 +1753,7 @@ index 00000000..8ae15438
 +checksum = "410a7488c0a728c7ceb4ad59b9567eb4053d02e8cc7f5c0e0eeeb39518369213"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "unicode-xid 0.2.0",
 +]
 +
@@ -1764,7 +1764,7 @@ index 00000000..8ae15438
 +checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 +]
 +
@@ -2038,7 +2038,7 @@ index 00000000..8ae15438
 +dependencies = [
 + "heck",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 +]
 +
@@ -2050,7 +2050,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "cfg-if",
 + "js-sys",
@@ -2066,7 +2066,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-anyref-xform"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "rayon",
@@ -2078,13 +2078,13 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-backend"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "bumpalo",
 + "lazy_static",
 + "log 0.4.8",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 + "wasm-bindgen-shared",
 +]
@@ -2099,7 +2099,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-cli"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "assert_cmd",
@@ -2127,7 +2127,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-cli-support"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "base64 0.9.3",
@@ -2149,7 +2149,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-futures"
-+version = "0.4.11"
++version = "0.4.12"
 +dependencies = [
 + "cfg-if",
 + "futures-channel-preview",
@@ -2161,9 +2161,9 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-macro"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "trybuild",
 + "wasm-bindgen",
 + "wasm-bindgen-futures",
@@ -2172,10 +2172,10 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-macro-support"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "syn 1.0.18",
 + "wasm-bindgen-backend",
 + "wasm-bindgen-shared",
@@ -2183,7 +2183,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-multi-value-xform"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "rayon",
@@ -2204,11 +2204,11 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-shared"
-+version = "0.2.61"
++version = "0.2.62"
 +
 +[[package]]
 +name = "wasm-bindgen-test"
-+version = "0.3.11"
++version = "0.3.12"
 +dependencies = [
 + "console_error_panic_hook",
 + "js-sys",
@@ -2234,15 +2234,15 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-test-macro"
-+version = "0.3.11"
++version = "0.3.12"
 +dependencies = [
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-threads-xform"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "walrus",
@@ -2251,7 +2251,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-conventions"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "walrus",
@@ -2259,7 +2259,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-interpreter"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "log 0.4.8",
@@ -2270,7 +2270,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "wasm-bindgen-webidl"
-+version = "0.2.61"
++version = "0.2.62"
 +dependencies = [
 + "anyhow",
 + "env_logger",
@@ -2278,7 +2278,7 @@ index 00000000..8ae15438
 + "lazy_static",
 + "log 0.4.8",
 + "proc-macro2 1.0.10",
-+ "quote 1.0.3",
++ "quote 1.0.4",
 + "sourcefile",
 + "structopt",
 + "syn 1.0.18",
@@ -2353,7 +2353,7 @@ index 00000000..8ae15438
 +
 +[[package]]
 +name = "web-sys"
-+version = "0.3.38"
++version = "0.3.39"
 +dependencies = [
 + "js-sys",
 + "wasm-bindgen",
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index 0385ba79d7fc..9adabeb573fd 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-bindgen-cli";
-  version = "0.2.61";
+  version = "0.2.62";
 
   src = fetchFromGitHub {
     owner = "rustwasm";
     repo = "wasm-bindgen";
     rev = version;
-    sha256 = "1lz4yscs17vix96isqpwwjhjcgj46zh2ljiwvfsk44wky8vwkyb7";
+    sha256 = "0d3ph3g220nvzwxa71rch03j5c0w06v8z4lmlyp5kky6p86r37hz";
   };
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security curl ];
   nativeBuildInputs = [ pkgconfig ];
 
-  cargoSha256 = "1vblvajhx5gn08rinv6bnw61zah62il015rzm0d4vs2b9p0iaann";
+  cargoSha256 = "13lj2yx2bcwac1b4gpwcgiwqvy178zis6r1pidn4pgwqv7zxa7p2";
   cargoPatches = [ ./0001-Add-cargo.lock.patch ];
   cargoBuildFlags = [ "-p" pname ];
 
diff --git a/pkgs/development/tools/ws/default.nix b/pkgs/development/tools/ws/default.nix
index 661865ee74ec..952538956485 100644
--- a/pkgs/development/tools/ws/default.nix
+++ b/pkgs/development/tools/ws/default.nix
@@ -20,7 +20,6 @@ buildGoPackage rec {
     description = "websocket command line tool";
     homepage    = "https://github.com/hashrocket/ws";
     license     = licenses.mit;
-    maintainers = [ maintainers.the-kenny ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/xcbuild/wrapper.nix b/pkgs/development/tools/xcbuild/wrapper.nix
index cd7b86163667..861ef0fc8473 100644
--- a/pkgs/development/tools/xcbuild/wrapper.nix
+++ b/pkgs/development/tools/xcbuild/wrapper.nix
@@ -110,11 +110,15 @@ runCommand "xcodebuild-${xcbuild.version}" {
   mkdir -p $out/Applications/Xcode.app/Contents
   ln -s $out $out/Applications/Xcode.app/Contents/Developer
 
+  # The native xcodebuild command supports an invocation like "xcodebuild -version -sdk" without specifying the specific SDK, so we simulate this by
+  # detecting this case and simulating the output; printing the header and appending the normal output via appending the sdk version to the positional
+  # arguments we pass through to the wrapped xcodebuild.
   makeWrapper ${xcbuild}/bin/xcodebuild $out/bin/xcodebuild \
     --add-flags "-xcconfig ${xcconfig}" \
     --add-flags "DERIVED_DATA_DIR=." \
     --set DEVELOPER_DIR "$out" \
     --set SDKROOT ${sdkName} \
+    --run '[ "$#" -eq 2 ] && [ "$1" = "-version" ] && [ "$2" = "-sdk" ] && echo ${sdkName}.sdk - macOS ${sdkVer} \(macosx${sdkVer}\) && set -- "$@" "${sdkName}"' \
     --run '[ "$1" = "-version" ] && [ "$#" -eq 1 ] && (echo Xcode ${xcodeVer}; echo Build version ${sdkBuildVersion}) && exit 0' \
     --run '[ "$1" = "-license" ] && exit 0'
 
diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix
index 8bcfaa2e46ac..882199a82a93 100644
--- a/pkgs/development/tools/yq-go/default.nix
+++ b/pkgs/development/tools/yq-go/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "1jll5nmskvs61031h3sizhv3scv8znrr9apyc4qlxcp4jiv7xpmp";
   };
 
-  modSha256 = "1m7sha6kwis1a00il1iigb9lxxh5m2myj9ps20s816m0b9bhd43v";
+  vendorSha256 = "0rlvbyhl53x1bhwr7f7zs4swa580saak19z3d3g58srq3jyw6zlc";
 
   meta = with lib; {
     description = "Portable command-line YAML processor";
@@ -19,4 +19,4 @@ buildGoModule rec {
     license = [ licenses.mit ];
     maintainers = [ maintainers.lewo ];
   };
-}
+}
\ No newline at end of file