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/ammonite/default.nix4
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix8
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix16
-rw-r--r--pkgs/development/tools/apktool/default.nix4
-rw-r--r--pkgs/development/tools/aws-sam-cli/default.nix62
-rw-r--r--pkgs/development/tools/bazelisk/default.nix22
-rw-r--r--pkgs/development/tools/build-managers/apache-maven/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix75
-rw-r--r--pkgs/development/tools/build-managers/boot/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/buck/default.nix24
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix14
-rw-r--r--pkgs/development/tools/build-managers/doit/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/dub/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix18
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/rebar3/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/waf/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/waf/setup-hook.sh19
-rw-r--r--pkgs/development/tools/buildah/default.nix4
-rw-r--r--pkgs/development/tools/cachix/default.nix2
-rw-r--r--pkgs/development/tools/cadre/Gemfile3
-rw-r--r--pkgs/development/tools/cadre/Gemfile.lock19
-rw-r--r--pkgs/development/tools/cadre/default.nix15
-rw-r--r--pkgs/development/tools/cadre/gemset.nix35
-rw-r--r--pkgs/development/tools/cask/default.nix48
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rwxr-xr-xpkgs/development/tools/continuous-integration/jenkins/update.sh13
-rw-r--r--pkgs/development/tools/coursier/default.nix2
-rw-r--r--pkgs/development/tools/database/cdb/default.nix2
-rw-r--r--pkgs/development/tools/database/timescaledb-parallel-copy/default.nix2
-rw-r--r--pkgs/development/tools/dep2nix/default.nix10
-rw-r--r--pkgs/development/tools/dtools/default.nix6
-rw-r--r--pkgs/development/tools/easyjson/default.nix6
-rw-r--r--pkgs/development/tools/easyjson/deps.nix2
-rw-r--r--pkgs/development/tools/electron/3.x.nix12
-rw-r--r--pkgs/development/tools/electron/default.nix13
-rw-r--r--pkgs/development/tools/glslviewer/default.nix6
-rw-r--r--pkgs/development/tools/go-langserver/default.nix9
-rw-r--r--pkgs/development/tools/goa/default.nix4
-rw-r--r--pkgs/development/tools/goa/deps.nix27
-rw-r--r--pkgs/development/tools/gocode-gomod/default.nix8
-rw-r--r--pkgs/development/tools/godot/default.nix8
-rw-r--r--pkgs/development/tools/godot/dont_clobber_environment.patch9
-rw-r--r--pkgs/development/tools/godot/pkg_config_additions.patch23
-rw-r--r--pkgs/development/tools/icestorm/default.nix6
-rw-r--r--pkgs/development/tools/jazzy/Gemfile.lock10
-rw-r--r--pkgs/development/tools/jazzy/default.nix5
-rw-r--r--pkgs/development/tools/jazzy/gemset.nix20
-rw-r--r--pkgs/development/tools/just/default.nix46
-rw-r--r--pkgs/development/tools/k6/default.nix10
-rw-r--r--pkgs/development/tools/kafkacat/default.nix4
-rw-r--r--pkgs/development/tools/kind/default.nix19
-rw-r--r--pkgs/development/tools/ktlint/default.nix4
-rw-r--r--pkgs/development/tools/lazygit/default.nix4
-rw-r--r--pkgs/development/tools/mdk/default.nix6
-rw-r--r--pkgs/development/tools/minizinc/default.nix3
-rw-r--r--pkgs/development/tools/misc/autobuild/default.nix2
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.15.x.nix43
-rw-r--r--pkgs/development/tools/misc/cflow/default.nix4
-rw-r--r--pkgs/development/tools/misc/dialog/default.nix2
-rw-r--r--pkgs/development/tools/misc/doclifter/default.nix6
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix5
-rw-r--r--pkgs/development/tools/misc/kibana/6.x.nix (renamed from pkgs/development/tools/misc/kibana/default.nix)32
-rw-r--r--pkgs/development/tools/misc/kibana/7.x.nix64
-rw-r--r--pkgs/development/tools/misc/lit/default.nix4
-rw-r--r--pkgs/development/tools/misc/macdylibbundler/default.nix32
-rw-r--r--pkgs/development/tools/misc/mkcert/default.nix22
-rw-r--r--pkgs/development/tools/misc/objconv/default.nix2
-rw-r--r--pkgs/development/tools/misc/pkgconf/default.nix7
-rw-r--r--pkgs/development/tools/misc/pwndbg/default.nix4
-rw-r--r--pkgs/development/tools/misc/semver-tool/default.nix32
-rw-r--r--pkgs/development/tools/misc/sysbench/default.nix6
-rw-r--r--pkgs/development/tools/misc/tokei/default.nix14
-rw-r--r--pkgs/development/tools/modd/default.nix22
-rw-r--r--pkgs/development/tools/modd/deps.nix138
-rw-r--r--pkgs/development/tools/ocaml/camlp5/META94
-rw-r--r--pkgs/development/tools/ocaml/camlp5/default.nix29
-rw-r--r--pkgs/development/tools/ocaml/dune/default.nix10
-rw-r--r--pkgs/development/tools/ocaml/opaline/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/opam/1.2.2.nix6
-rw-r--r--pkgs/development/tools/ocaml/opam/default.nix12
-rwxr-xr-xpkgs/development/tools/ocaml/opam/opam.nix.pl2
-rw-r--r--pkgs/development/tools/parsing/antlr/2.7.7.nix2
-rw-r--r--pkgs/development/tools/parsing/antlr/3.4.nix2
-rw-r--r--pkgs/development/tools/parsing/antlr/3.5.nix2
-rw-r--r--pkgs/development/tools/parsing/antlr/4.7.nix4
-rw-r--r--pkgs/development/tools/parsing/byacc/default.nix2
-rw-r--r--pkgs/development/tools/pipenv/default.nix1
-rw-r--r--pkgs/development/tools/profiling/pyflame/default.nix89
-rw-r--r--pkgs/development/tools/profiling/sysprof/default.nix4
-rw-r--r--pkgs/development/tools/pyre/default.nix19
-rw-r--r--pkgs/development/tools/quicktemplate/default.nix6
-rw-r--r--pkgs/development/tools/quilt/default.nix4
-rw-r--r--pkgs/development/tools/remarshal/default.nix10
-rw-r--r--pkgs/development/tools/rhc/Gemfile4
-rw-r--r--pkgs/development/tools/rhc/Gemfile.lock40
-rw-r--r--pkgs/development/tools/rhc/default.nix30
-rw-r--r--pkgs/development/tools/rhc/gemset.nix84
-rw-r--r--pkgs/development/tools/rust/cargo-bloat/default.nix24
-rw-r--r--pkgs/development/tools/rust/cargo-expand/default.nix23
-rw-r--r--pkgs/development/tools/rust/cargo-xbuild/default.nix22
-rw-r--r--pkgs/development/tools/rust/pyo3-pack/default.nix6
-rw-r--r--pkgs/development/tools/rust/rustfmt/default.nix9
-rw-r--r--pkgs/development/tools/scalafmt/default.nix8
-rw-r--r--pkgs/development/tools/skaffold/default.nix6
-rw-r--r--pkgs/development/tools/sourcetrail/default.nix4
-rw-r--r--pkgs/development/tools/spirv-tools/default.nix37
-rw-r--r--pkgs/development/tools/stagit/default.nix4
-rw-r--r--pkgs/development/tools/statik/default.nix25
-rw-r--r--pkgs/development/tools/statik/deps.nix3
-rw-r--r--pkgs/development/tools/trellis/default.nix6
-rw-r--r--pkgs/development/tools/unity3d/default.nix17
-rw-r--r--pkgs/development/tools/valadoc/default.nix4
-rw-r--r--pkgs/development/tools/vulkan-validation-layers/default.nix7
-rwxr-xr-xpkgs/development/tools/yarn2nix/bin/yarn2nix.js144
-rw-r--r--pkgs/development/tools/yarn2nix/default.nix199
-rw-r--r--pkgs/development/tools/yarn2nix/fixup_bin.js45
-rw-r--r--pkgs/development/tools/yarn2nix/package.json19
-rw-r--r--pkgs/development/tools/yarn2nix/yarn.lock11
-rw-r--r--pkgs/development/tools/yarn2nix/yarn.nix23
-rw-r--r--pkgs/development/tools/yuicompressor/default.nix2
125 files changed, 1186 insertions, 1111 deletions
diff --git a/pkgs/development/tools/ammonite/default.nix b/pkgs/development/tools/ammonite/default.nix
index 68422f09a4f4..05c3edc66d62 100644
--- a/pkgs/development/tools/ammonite/default.nix
+++ b/pkgs/development/tools/ammonite/default.nix
@@ -5,12 +5,12 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "ammonite-${version}";
-  version = "1.6.4";
+  version = "1.6.6";
   scalaVersion = "2.12";
 
   src = fetchurl {
     url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
-    sha256 = "16mx2394wmm4jvy26rlp46mb2nf8cayvxclpa6fn0sb4klqs7mc2";
+    sha256 = "1w4vk8zq57b6flp2cpjlkicz4h8bca215669w065zqhfxlpxma2g";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index 604e44cf7b14..be81673f2128 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.18";
+  version = "8.19";
   name = "checkstyle-${version}";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "1l9dqihl73yi3k27j2a1k87gqzs64z0mpwxj6w68ipvxf4rg63x5";
+    sha256 = "107x4ij99igq54f0mdqvv8adl2rh694b8ylf3jz090raqa0d2nyk";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index f5317519d76b..5e3b001b6a08 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ocamlPackages, cf-private, CoreServices }:
 
 stdenv.mkDerivation rec {
-  version = "0.95.1";
-  name = "flow-${version}";
+  pname = "flow";
+  version = "0.97.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "0sxmk8qg61j6wdylkw53di65152mynv4agji865h23ay66nyi3lw";
+    sha256 = "1y6mdm7ph9k3vv8n8hzxr3rqa6bfkh4yn9bcxb7qq67v08dlvx6r";
   };
 
   installPhase = ''
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
     homepage = https://flow.org/;
     license = licenses.mit;
     platforms = ocamlPackages.ocaml.meta.platforms;
-    maintainers = with maintainers; [ puffnfresh globin ];
+    maintainers = with maintainers; [ marsam puffnfresh globin ];
   };
 }
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index 97140d10ca22..ab00573965e8 100644
--- a/pkgs/development/tools/analysis/pmd/default.nix
+++ b/pkgs/development/tools/analysis/pmd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "pmd-${version}";
-  version = "6.11.0";
+  version = "6.13.0";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
-    sha256 = "0mg32bnl6j4p15akdhfc0wgilqvyphcgjimlaqq3jz51dmlr9scb";
+    sha256 = "1g8ds38zwprjswm71y7l10l15rbh2s6ha9xpp20wjy823q9agbpq";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index 9219698b2df0..c80a14063a59 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -110,21 +110,21 @@ in {
   #<generated>
   # DO NOT EDIT! Automatically generated by ./update.py
   radare2 = generic {
-    version_commit = "21238";
-    gittap = "3.3.0";
-    gittip = "5a9127d2599c8ff61d8544be7d4c9384402e94a3";
-    rev = "3.3.0";
-    version = "3.3.0";
-    sha256 = "11ap3icr8w0y49lq5dxch2h589qdmwf3qv9lsdyfsz4l0mjm49ri";
+    version_commit = "21276";
+    gittap = "3.4.1";
+    gittip = "da30e593718d5149f2a3d520c7f79fe1c7ca46ef";
+    rev = "3.4.1";
+    version = "3.4.1";
+    sha256 = "02qfj11j8f37hl46m8h4x9pv161glgdr7q3rfhwmq46px9y7f17p";
     cs_ver = "4.0.1";
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
   };
   r2-for-cutter = generic {
-    version_commit = "21238";
+    version_commit = "21276";
     gittap = "3.3.0";
     gittip = "5a9127d2599c8ff61d8544be7d4c9384402e94a3";
     rev = "5a9127d2599c8ff61d8544be7d4c9384402e94a3";
-    version = "3.3.0";
+    version = "2019-02-19";
     sha256 = "11ap3icr8w0y49lq5dxch2h589qdmwf3qv9lsdyfsz4l0mjm49ri";
     cs_ver = "4.0.1";
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
diff --git a/pkgs/development/tools/apktool/default.nix b/pkgs/development/tools/apktool/default.nix
index c811b8a99e91..d9d70f64d73e 100644
--- a/pkgs/development/tools/apktool/default.nix
+++ b/pkgs/development/tools/apktool/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   name = "apktool-${version}";
-  version = "2.3.4";
+  version = "2.4.0";
 
   src = fetchurl {
     urls = [
       "https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_${version}.jar"
       "https://github.com/iBotPeaches/Apktool/releases/download/v${version}/apktool_${version}.jar"
     ];
-    sha256 = "07fwp5sczyivdz37ag9fa258gr9jbz3k3395hp5db7cwizaip2vm";
+    sha256 = "1hdwgsw3ggmdzv523wq037kjxhxqp1xq8n8m1qb22vvdj7l1dwd0";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/development/tools/aws-sam-cli/default.nix b/pkgs/development/tools/aws-sam-cli/default.nix
index 8778084163e8..a63395efda87 100644
--- a/pkgs/development/tools/aws-sam-cli/default.nix
+++ b/pkgs/development/tools/aws-sam-cli/default.nix
@@ -2,43 +2,79 @@
 , python
 }:
 
-with python.pkgs;
+let
+  py = python.override {
+    packageOverrides = self: super: {
+      click = super.click.overridePythonAttrs (oldAttrs: rec {
+        version = "6.7";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b";
+        };
+      });
+
+      requests = super.requests.overridePythonAttrs (oldAttrs: rec {
+        version = "2.20.1";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "ea881206e59f41dbd0bd445437d792e43906703fff75ca8ff43ccdb11f33f263";
+        };
+      });
+
+      idna = super.idna.overridePythonAttrs (oldAttrs: rec {
+        version = "2.7";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "684a38a6f903c1d71d6d5fac066b58d7768af4de2b832e426ec79c30daa94a16";
+        };
+      });
+
+      six = super.six.overridePythonAttrs (oldAttrs: rec {
+        version = "1.11";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9";
+        };
+      });
+    };
+  };
+
+in
+
+with py.pkgs;
 
 buildPythonApplication rec {
   pname = "aws-sam-cli";
-  version = "0.5.0";
+  version = "0.14.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2acf9517f467950adb4939746658091e60cf60ee80093ffd0d3d821cb8a1f9fc";
+    sha256 = "b7f80838d57c1096a9a03ed703a91a8a5775a6ead33df8f31765ecf39b3a956f";
   };
 
   # Tests are not included in the PyPI package
   doCheck = false;
 
   propagatedBuildInputs = [
+    aws-lambda-builders
     aws-sam-translator
-    boto3
+    chevron
     click
     cookiecutter
     dateparser
     docker
-    enum34
     flask
-    python-dateutil
-    pyyaml
+    idna
+    pathlib2
+    requests
+    serverlessrepo
     six
   ];
 
-  postPatch = ''
-    substituteInPlace ./requirements/base.txt \
-      --replace 'aws-sam-translator==1.6.0' 'aws-sam-translator>=1.6.0';
-  '';
-
   meta = with lib; {
     homepage = https://github.com/awslabs/aws-sam-cli;
     description = "CLI tool for local development and testing of Serverless applications";
     license = licenses.asl20;
-    maintainers = with maintainers; [ andreabedini ];
+    maintainers = with maintainers; [ andreabedini dhkl ];
   };
 }
diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix
new file mode 100644
index 000000000000..86748b716e6e
--- /dev/null
+++ b/pkgs/development/tools/bazelisk/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "bazelisk";
+  version = "0.0.3";
+
+  src = fetchFromGitHub {
+    owner = "philwo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rkpw9izpav3ysb9fpbdf0m1wqrs3vl87s9zjjmfsjm5dfhxss72";
+  };
+
+  modSha256 = "1f73j6ryidzi3kfy3rhsqx047vzwvzaqcsl7ykhg87rn2l2s7fdl";
+
+  meta = with stdenv.lib; {
+    description = "A user-friendly launcher for Bazel";
+    homepage = https://github.com/philwo/bazelisk;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ elasticdog ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/apache-maven/default.nix b/pkgs/development/tools/build-managers/apache-maven/default.nix
index c48954a6aaa3..cde6ea2f7a87 100644
--- a/pkgs/development/tools/build-managers/apache-maven/default.nix
+++ b/pkgs/development/tools/build-managers/apache-maven/default.nix
@@ -2,7 +2,7 @@
 
 assert jdk != null;
 
-let version = "3.6.0"; in
+let version = "3.6.1"; in
 stdenv.mkDerivation rec {
   name = "apache-maven-${version}";
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://apache/maven/maven-3/${version}/binaries/${name}-bin.tar.gz";
-    sha256 = "0ds61yy6hs7jgmld64b65ss6kpn5cwb186hw3i4il7vaydm386va";
+    sha256 = "1rv97g9qr6sifl88rxbsqnz5i79m6ifs36srri08j3y3k5dc6a15";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index eb9f0d106d10..1e29e4b34f08 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -13,12 +13,17 @@
 }:
 
 let
-  srcDeps = lib.singleton (
-    fetchurl {
+  srcDeps = [
+    (fetchurl {
       url = "https://github.com/google/desugar_jdk_libs/archive/915f566d1dc23bc5a8975320cd2ff71be108eb9c.zip";
       sha256 = "0b926df7yxyyyiwm9cmdijy6kplf0sghm23sf163zh8wrk87wfi7";
-    }
-  );
+    })
+
+    (fetchurl {
+        url = "https://mirror.bazel.build/bazel_java_tools/java_tools_pkg-0.5.1.tar.gz";
+        sha256 = "1ld8m5cj9j0r474f56pixcfi0xvx3w7pzwahxngs8f6ns0yimz5w";
+    })
+  ];
 
   distDir = runCommand "bazel-deps" {} ''
     mkdir -p $out
@@ -61,7 +66,7 @@ let
 in
 stdenv.mkDerivation rec {
 
-  version = "0.22.0";
+  version = "0.24.0";
 
   meta = with lib; {
     homepage = "https://github.com/bazelbuild/bazel/";
@@ -85,9 +90,13 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/${name}-dist.zip";
-    sha256 = "0hannnvia8rvmi2v5d97j1f6wv0m1kxkd5hq4aqp0dqjr0ka4q38";
+    sha256 = "11gsc00ghxqkbci8nrflkwq1lcvqawlgkaryj458b24si6bjl7b2";
   };
 
+  # Necessary for the tests to pass on Darwin with sandbox enabled.
+  # Bazel starts a local server and needs to bind a local address.
+  __darwinAllowLocalNetworking = true;
+
   sourceRoot = ".";
 
   patches = [
@@ -168,6 +177,10 @@ stdenv.mkDerivation rec {
           --replace "/usr/bin/env python" "${python}/bin/python" \
           --replace "NIX_STORE_PYTHON_PATH" "${python}/bin/python" \
 
+      # md5sum is part of coreutils
+      sed -i 's|/sbin/md5|md5sum|' \
+        src/BUILD
+
       # substituteInPlace is rather slow, so prefilter the files with grep
       grep -rlZ /bin src/main/java/com/google/devtools | while IFS="" read -r -d "" path; do
         # If you add more replacements here, you must change the grep above!
@@ -211,8 +224,17 @@ stdenv.mkDerivation rec {
         src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java \
         --replace /bin:/usr/bin ${defaultShellPath}
 
+      # This is necessary to avoid:
+      # "error: no visible @interface for 'NSDictionary' declares the selector
+      # 'initWithContentsOfURL:error:'"
+      # This can be removed when the apple_sdk is upgraded beyond 10.13+
+      sed -i '/initWithContentsOfURL:versionPlistUrl/ {
+        N
+        s/error:nil\];/\];/
+      }' tools/osx/xcode_locator.m
+
       # append the PATH with defaultShellPath in tools/bash/runfiles/runfiles.bash
-      echo "PATH=$PATH:${defaultShellPath}" >> runfiles.bash.tmp
+      echo "PATH=\$PATH:${defaultShellPath}" >> runfiles.bash.tmp
       cat tools/bash/runfiles/runfiles.bash >> runfiles.bash.tmp
       mv runfiles.bash.tmp tools/bash/runfiles/runfiles.bash
 
@@ -236,18 +258,27 @@ stdenv.mkDerivation rec {
     customBash
   ] ++ lib.optionals (stdenv.isDarwin) [ cctools clang libcxx CoreFoundation CoreServices Foundation ];
 
-  # If TMPDIR is in the unpack dir we run afoul of blaze's infinite symlink
-  # detector (see com.google.devtools.build.lib.skyframe.FileFunction).
-  # Change this to $(mktemp -d) as soon as we figure out why.
+  # Bazel makes extensive use of symlinks in the WORKSPACE.
+  # This causes problems with infinite symlinks if the build output is in the same location as the
+  # Bazel WORKSPACE. This is why before executing the build, the source code is moved into a
+  # subdirectory.
+  # Failing to do this causes "infinite symlink expansion detected"
+  preBuildPhases = ["preBuildPhase"];
+  preBuildPhase = ''
+    mkdir bazel_src
+    shopt -s dotglob extglob
+    mv !(bazel_src) bazel_src
+  '';
 
   buildPhase = ''
-    export TMPDIR=/tmp/.bazel-$UID
-    ./compile.sh
-    scripts/generate_bash_completion.sh \
-        --bazel=./output/bazel \
-        --output=output/bazel-complete.bash \
-        --prepend=scripts/bazel-complete-header.bash \
-        --prepend=scripts/bazel-complete-template.bash
+    # Increasing memory during compilation might be necessary.
+    # export BAZEL_JAVAC_OPTS="-J-Xmx2g -J-Xms200m"
+    ./bazel_src/compile.sh
+    ./bazel_src/scripts/generate_bash_completion.sh \
+        --bazel=./bazel_src/output/bazel \
+        --output=./bazel_src/output/bazel-complete.bash \
+        --prepend=./bazel_src/scripts/bazel-complete-header.bash \
+        --prepend=./bazel_src/scripts/bazel-complete-template.bash
   '';
 
   installPhase = ''
@@ -255,15 +286,15 @@ stdenv.mkDerivation rec {
 
     # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
     # if it can’t find something in tools, it calls $out/bin/bazel-real
-    cp scripts/packages/bazel.sh $out/bin/bazel
-    mv output/bazel $out/bin/bazel-real
+    cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
+    mv ./bazel_src/output/bazel $out/bin/bazel-real
 
     wrapProgram "$out/bin/bazel" --add-flags --server_javabase="${runJdk}"
 
     # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
-    mv output/bazel-complete.bash $out/share/bash-completion/completions/bazel
-    cp scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
+    mv ./bazel_src/output/bazel-complete.bash $out/share/bash-completion/completions/bazel
+    cp ./bazel_src/scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
   '';
 
   doInstallCheck = true;
@@ -278,6 +309,8 @@ stdenv.mkDerivation rec {
         examples/java-native/src/test/java/com/example/myproject:hello
     }
 
+    cd ./bazel_src
+
     # test whether $WORKSPACE_ROOT/tools/bazel works
 
     mkdir -p tools
diff --git a/pkgs/development/tools/build-managers/boot/default.nix b/pkgs/development/tools/build-managers/boot/default.nix
index d9dc59ee72df..380ba4803bd5 100644
--- a/pkgs/development/tools/build-managers/boot/default.nix
+++ b/pkgs/development/tools/build-managers/boot/default.nix
@@ -10,14 +10,14 @@ stdenv.mkDerivation rec {
   };
 
   inherit jdk;
-  
+
   builder = ./builder.sh;
 
   propagatedBuildInputs = [ jdk ];
 
   meta = with stdenv.lib; {
     description = "Build tooling for Clojure";
-    homepage = http://boot-clj.com/;
+    homepage = https://boot-clj.com/;
     license = licenses.epl10;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ ragge ];
diff --git a/pkgs/development/tools/build-managers/buck/default.nix b/pkgs/development/tools/build-managers/buck/default.nix
index 18ced2628783..d4e5c5a38dcd 100644
--- a/pkgs/development/tools/build-managers/buck/default.nix
+++ b/pkgs/development/tools/build-managers/buck/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, jdk, ant, python2, python2Packages, watchman, bash, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "buck-${version}";
-  version = "2017.10.01.01";
+  pname = "buck";
+  version = "2019.01.10.01";
 
   src = fetchFromGitHub {
     owner = "facebook";
-    repo = "buck";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "05nyyb6f0hv1h67zzvdq8297yl8zjhpbasx35lxnrsjz0m1h8ngw";
+    sha256 = "0987s399v4ba2a3crca12vsg9001xcb5drhqi564ninpa5vxamr2";
   };
 
   patches = [ ./pex-mtime.patch ];
@@ -20,23 +20,17 @@ stdenv.mkDerivation rec {
   buildInputs = [ jdk ant python2 watchman python2Packages.pywatchman ];
   nativeBuildInputs = [ makeWrapper ];
 
-  targets = [ "buck" "buckd" ];
-
   buildPhase = ''
     ant
 
-    for exe in ${toString targets}; do
-      ./bin/buck build //programs:$exe
-    done
+    ./bin/buck build -c buck.release_version=${version} buck
   '';
 
   installPhase = ''
-    for exe in ${toString targets}; do
-      install -D -m755 buck-out/gen/programs/$exe.pex $out/bin/$exe
-      wrapProgram $out/bin/$exe \
-        --prefix PYTHONPATH : $PYTHONPATH \
-        --prefix PATH : "${stdenv.lib.makeBinPath [jdk watchman]}"
-    done
+    install -D -m755 buck-out/gen/programs/buck.pex $out/bin/buck
+    wrapProgram $out/bin/buck \
+      --prefix PYTHONPATH : $PYTHONPATH \
+      --prefix PATH : "${stdenv.lib.makeBinPath [jdk watchman]}"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index 72d9f631afbc..ed7babf49332 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -30,6 +30,20 @@ let newPython = python3.override {
         sha256 = "1fyybgbmlr8ms32j7h76hz5g9xc6nf0644mwhc40a0s5k14makav";
       };
     });
+    pluginbase = super.pluginbase.overridePythonAttrs (oldAttrs: rec {
+      version = "0.7";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "c0abe3218b86533cca287e7057a37481883c07acef7814b70583406938214cc8";
+      };
+    });
+    pyyaml = super.pyyaml.overridePythonAttrs (oldAttrs: rec {
+      version = "3.13";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf";
+      };
+    });
   };
 };
 
diff --git a/pkgs/development/tools/build-managers/doit/default.nix b/pkgs/development/tools/build-managers/doit/default.nix
index c6ed406840d2..e2689f2c2652 100644
--- a/pkgs/development/tools/build-managers/doit/default.nix
+++ b/pkgs/development/tools/build-managers/doit/default.nix
@@ -15,7 +15,9 @@ in python3Packages.buildPythonApplication {
 
   buildInputs = with python3Packages; [ mock pytest ];
 
-  propagatedBuildInputs = with python3Packages; [ cloudpickle pyinotify ];
+  propagatedBuildInputs = with python3Packages; [ cloudpickle ]
+    ++ stdenv.lib.optional stdenv.isLinux pyinotify
+    ++ stdenv.lib.optional stdenv.isDarwin macfsevents;
 
   # Tests fail due to mysterious gdbm.open() resource temporarily
   # unavailable errors.
diff --git a/pkgs/development/tools/build-managers/dub/default.nix b/pkgs/development/tools/build-managers/dub/default.nix
index 024c57201e12..3f733e97eed9 100644
--- a/pkgs/development/tools/build-managers/dub/default.nix
+++ b/pkgs/development/tools/build-managers/dub/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "dub-${version}";
-  version = "1.13.0";
+  version = "1.14.0";
 
   enableParallelBuilding = true;
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     owner = "dlang";
     repo = "dub";
     rev = "v${version}";
-    sha256 = "1wd5pdnbaafj33bbg188w0iz28ps4cyjangb12g2s9dyic29zjqv";
+    sha256 = "070kfkyrkr98y1hbhcf85842c0x7l95w1ambrkdgajpb6kcmpf84";
   };
 
   postUnpack = ''
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index afe93ddf383e..25ff6d09d420 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -52,32 +52,32 @@ rec {
   };
 
   gradle_latest = gradleGen rec {
-    name = "gradle-5.0";
-    nativeVersion = "0.14";
+    name = "gradle-5.3.1";
+    nativeVersion = "0.17";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "19krxq9pid9dg6bhdbhhg7ykm5kcx7lv7cr58rj67g0h6jgsqmv1";
+      sha256 = "0dkl6f17zl9pc6y2xm8xqz23x53fck4p2648vpq8572f0mxa2n8w";
     };
   };
 
   gradle_4_10 = gradleGen rec {
-    name = "gradle-4.10.2";
+    name = "gradle-4.10.3";
     nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "0a9s2iisivgaapsz4vq1l8fa2w0wnlq0cj67yv5a0rybnahnv75l";
+      sha256 = "0vhqxnk0yj3q9jam5w4kpia70i4h0q4pjxxqwynh3qml0vrcn9l6";
     };
   };
 
   gradle_3_5 = gradleGen rec {
-    name = "gradle-3.5";
+    name = "gradle-3.5.1";
     nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "046i268zkg89ps7c1sq8yx9lbn9kighh4gcskxmzf3qriiwm0x0b";
+      sha256 = "1y7fbhrdriclbs5ksxahi0aafsz760lalwyz8r4llysc5pskbkld";
     };
   };
 
@@ -91,6 +91,10 @@ rec {
     };
   };
 
+  # Nix pkgs that depend on this old version:
+  # pkgs/tools/security/jd-gui/default.nix
+  # pkgs/servers/mxisd/default.nix
+  # If these packages are updated, this old version can probably be removed
   gradle_2_5 = gradleGen rec {
     name = "gradle-2.5";
     nativeVersion = "0.10";
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 3651884253ad..92a0ae3eb85b 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -1,12 +1,12 @@
 { lib, python3Packages, stdenv, writeTextDir, substituteAll, targetPackages }:
 
 python3Packages.buildPythonApplication rec {
-  version = "0.49.1";
+  version = "0.49.2";
   pname = "meson";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "05wr4kn88aqq2cbzqx59zj56410c9d42wracb4cjs70mvq0lp50s";
+    sha256 = "0ckkzq0kbnnk4rwv20lggm9a4fb5054jbv99i9pwjhid23qy7059";
   };
 
   postFixup = ''
diff --git a/pkgs/development/tools/build-managers/rebar3/default.nix b/pkgs/development/tools/build-managers/rebar3/default.nix
index 6d64c82f90ff..ad4cbeda0f85 100644
--- a/pkgs/development/tools/build-managers/rebar3/default.nix
+++ b/pkgs/development/tools/build-managers/rebar3/default.nix
@@ -3,7 +3,7 @@
   tree, hexRegistrySnapshot }:
 
 let
-  version = "3.9.0";
+  version = "3.9.1";
 
   bootstrapper = ./rebar3-nix-bootstrap;
 
@@ -75,7 +75,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/rebar/rebar3/archive/${version}.tar.gz";
-    sha256 = "14prx5bkyy9sisnp5rj2058xpylq80xygsj1hq8b7m0awvj3r9wy";
+    sha256 = "1n6287av29ws3bvjxxmw8s2j8avwich4ccisnnrnypfbm1khlcxp";
   };
 
   inherit bootstrapper;
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 2d0bf244370f..ce15de8678d6 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -8,7 +8,7 @@ in {
     sha256 = "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4";
   };
   scons_latest = mkScons {
-    version = "3.0.4";
-    sha256 = "06lv3pmdz5l23rx3kqsi1k712bdl36i942hgbjh209s94mpb7f72";
+    version = "3.0.5";
+    sha256 = "0gn7fgxvx94bjm4cim29cdz91ar1rmfxk2f39wwgljvdvhinyryz";
   };
 }
diff --git a/pkgs/development/tools/build-managers/waf/default.nix b/pkgs/development/tools/build-managers/waf/default.nix
index 05e11ad63a7a..50269a74395c 100644
--- a/pkgs/development/tools/build-managers/waf/default.nix
+++ b/pkgs/development/tools/build-managers/waf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitLab, python, ensureNewerSourcesForZipFilesHook }:
+{ stdenv, fetchFromGitLab, fetchpatch, python, ensureNewerSourcesForZipFilesHook }:
 
 stdenv.mkDerivation rec {
   name = "waf-${version}";
@@ -11,6 +11,13 @@ stdenv.mkDerivation rec {
     sha256 = "006a4wb9i569pahs8ji86hrv58g2hm8xikgchnll3bdqgxllhnrs";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://gitlab.com/grahamc/waf/commit/fc1c98f1fb575fb26b867a61cbca79aa894db2ea.patch";
+      sha256 = "0kzfrr6nh1ay8nyk0i69nhkkrq7hskn7yw1qyjxrda1y3wxj6jp8";
+    })
+  ];
+
   buildInputs = [ python ensureNewerSourcesForZipFilesHook ];
 
   configurePhase = ''
diff --git a/pkgs/development/tools/build-managers/waf/setup-hook.sh b/pkgs/development/tools/build-managers/waf/setup-hook.sh
index b8a448df8ef8..3da86d3201f5 100644
--- a/pkgs/development/tools/build-managers/waf/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/waf/setup-hook.sh
@@ -1,20 +1,23 @@
 wafConfigurePhase() {
     runHook preConfigure
 
-    if ! [ -f ./waf ]; then
-        cp @waf@ waf
+    if ! [ -f "${wafPath:=./waf}" ]; then
+        echo "copying waf to $wafPath..."
+        cp @waf@ "$wafPath"
     fi
 
-    if [[ -z "${dontAddPrefix:-}" && -n "$prefix" ]]; then
-        configureFlags="${prefixKey:---prefix=}$prefix $configureFlags"
+    if [ -z "${dontAddPrefix:-}" ] && [ -n "$prefix" ]; then
+        wafConfigureFlags="${prefixKey:---prefix=}$prefix $wafConfigureFlags"
     fi
 
     local flagsArray=(
-        $configureFlags ${configureFlagsArray[@]}
+        @crossFlags@
+        "${flagsArray[@]}"
+        $wafConfigureFlags "${wafConfigureFlagsArray[@]}"
         ${configureTargets:-configure}
     )
     echoCmd 'configure flags' "${flagsArray[@]}"
-    python waf "${flagsArray[@]}"
+    python "$wafPath" "${flagsArray[@]}"
 
     runHook postConfigure
 }
@@ -33,7 +36,7 @@ wafBuildPhase () {
     )
 
     echoCmd 'build flags' "${flagsArray[@]}"
-    python waf "${flagsArray[@]}"
+    python "$wafPath" "${flagsArray[@]}"
 
     runHook postBuild
 }
@@ -52,7 +55,7 @@ wafInstallPhase() {
     )
 
     echoCmd 'install flags' "${flagsArray[@]}"
-    python waf "${flagsArray[@]}"
+    python "$wafPath" "${flagsArray[@]}"
 
     runHook postInstall
 }
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index c4e8c446e83d..48b0631c64aa 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -3,13 +3,13 @@
 , go-md2man }:
 
 let
-  version = "1.7.1";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "buildah";
-    sha256 = "083s0bcajks2qnxq6cn9lax5aiyvicf60rf3ifgqksl9skr748qb";
+    sha256 = "19rp5kgdgyjfvg23m8dqlv6g1cs2c57nnw64ifjv24hqhy1xc0qk";
   };
   goPackagePath = "github.com/containers/buildah";
 
diff --git a/pkgs/development/tools/cachix/default.nix b/pkgs/development/tools/cachix/default.nix
index 895d6e4bec62..a127fb137f67 100644
--- a/pkgs/development/tools/cachix/default.nix
+++ b/pkgs/development/tools/cachix/default.nix
@@ -1,3 +1,3 @@
 { haskellPackages, haskell }:
 
-haskell.lib.justStaticExecutables haskellPackages.cachix
+(haskell.lib.doDistribute haskellPackages.cachix).bin
diff --git a/pkgs/development/tools/cadre/Gemfile b/pkgs/development/tools/cadre/Gemfile
new file mode 100644
index 000000000000..aa42f75c95cf
--- /dev/null
+++ b/pkgs/development/tools/cadre/Gemfile
@@ -0,0 +1,3 @@
+source 'https://rubygems.org'
+
+gem 'cadre', '=1.0.4'
diff --git a/pkgs/development/tools/cadre/Gemfile.lock b/pkgs/development/tools/cadre/Gemfile.lock
new file mode 100644
index 000000000000..c14df9cffa61
--- /dev/null
+++ b/pkgs/development/tools/cadre/Gemfile.lock
@@ -0,0 +1,19 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    cadre (1.0.4)
+      thor (>= 0.14, < 1.0)
+      tilt (> 1.0)
+      valise (~> 1.2)
+    thor (0.20.3)
+    tilt (2.0.9)
+    valise (1.2.1)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  cadre (= 1.0.4)
+
+BUNDLED WITH
+   1.16.3
diff --git a/pkgs/development/tools/cadre/default.nix b/pkgs/development/tools/cadre/default.nix
new file mode 100644
index 000000000000..93eb32cfb514
--- /dev/null
+++ b/pkgs/development/tools/cadre/default.nix
@@ -0,0 +1,15 @@
+{ lib, bundlerApp }:
+
+bundlerApp {
+  pname = "cadre";
+  gemdir = ./.;
+  exes = [ "cadre" ];
+
+  meta = with lib; {
+    description = "Toolkit to add Ruby development - in-editor coverage, libnotify of test runs";
+    homepage    = https://github.com/nyarly/cadre;
+    license     = licenses.mit;
+    maintainers = [ maintainers.nyarly ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/cadre/gemset.nix b/pkgs/development/tools/cadre/gemset.nix
new file mode 100644
index 000000000000..33fd428debf2
--- /dev/null
+++ b/pkgs/development/tools/cadre/gemset.nix
@@ -0,0 +1,35 @@
+{
+  cadre = {
+    dependencies = ["thor" "tilt" "valise"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07q60s1bm2xar46g00ls5fjkn6dm2kfxhsz9ayblc31x5kr8d83a";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  thor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+  tilt = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ca4k0clwf0rkvy7726x4nxpjxkpv67w043i39saxgldxd97zmwz";
+      type = "gem";
+    };
+    version = "2.0.9";
+  };
+  valise = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1arsbmk2gifrhv244qrld7s3202xrnxy6vlc5gqklg70dpsinbn5";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/cask/default.nix b/pkgs/development/tools/cask/default.nix
new file mode 100644
index 000000000000..e33761a67e02
--- /dev/null
+++ b/pkgs/development/tools/cask/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, python, emacsPackagesNg }:
+
+stdenv.mkDerivation rec {
+  name = "cask-${version}";
+  version = "0.8.4";
+
+  src = fetchurl {
+    url = "https://github.com/cask/cask/archive/v${version}.tar.gz";
+    sha256 = "02f8bb20b33b23fb11e7d2a1d282519dfdb8b3090b9672448b8c2c2cacd3e478";
+  };
+
+  doCheck = true;
+  buildInputs = with emacsPackagesNg; [
+    s f dash ansi ecukes servant ert-runner el-mock
+    noflet ert-async shell-split-string git package-build
+  ];
+  buildPhase = ''
+    emacs --batch -L . -f batch-byte-compile cask.el cask-cli.el
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mkdir -p $out/templates
+    mkdir -p $out/share/emacs/site-lisp/cask/bin
+    install -Dm644 *.el *.elc $out/share/emacs/site-lisp/cask
+    install -Dm755 bin/cask $out/share/emacs/site-lisp/cask/bin
+    install -Dm644 templates/* $out/templates/
+    touch $out/.no-upgrade
+    ln -s $out/share/emacs/site-lisp/cask/bin/cask $out/bin/cask
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Project management for Emacs";
+    longDescription = ''
+      Cask is a project management tool for Emacs that helps automate the
+      package development cycle; development, dependencies, testing, building,
+      packaging and more.
+      Cask can also be used to manage dependencies for your local Emacs configuration.
+    '';
+
+    homepage = https://cask.readthedocs.io/en/latest/index.html;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.flexw ];
+  };
+
+  nativeBuildInputs = [ emacsPackagesNg.emacs python ];
+}
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index f44e76c0b8e5..c75baf454b34 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 = "11.8.0";
+  version = "11.9.2";
   # 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 = "1g9r0ny25r4iv7m5jf8fbfak4rhlcz7mm3x7mwwpmiyhnjbwz08s";
+    sha256 = "10zmaywq1vzch4a6zdvnm9kgil9ankc9napix9s9fw45wc0lw01p";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz";
-    sha256 = "07xg46dl2d0scb7hqn5gcg3g4icr28z03n3q2rgqckn4782ha2s1";
+    sha256 = "0845ylhb3i3jmi5q6aaix4hw9zdb83v5fhvif0xvvi2m7irg06lf";
   };
 in
 buildGoPackage rec {
@@ -29,7 +29,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "0jvhlcxlxpam2hr9gh0zcjgl04is3rm0lkm94v4m6wk9yxknx3wp";
+    sha256 = "00k4myca2djd6h3i83vjndahm5q1rnlkq0p69dhl5jbldwy614ph";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index ecfdc1b027c1..89df5c1241bb 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jenkins-${version}";
-  version = "2.150.1";
+  version = "2.164.2";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "0sb6mzynw1vg6s43mpd7b0dz1clbf8akga09i14q66isb9nmhf3s";
+    sha256 = "1pmya8g3gs5f9ibbgacdh5f6828jcrydw7v7xmg2j86kwc1vclf8";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/continuous-integration/jenkins/update.sh b/pkgs/development/tools/continuous-integration/jenkins/update.sh
index e8b6d9257758..66d1b4ceff66 100755
--- a/pkgs/development/tools/continuous-integration/jenkins/update.sh
+++ b/pkgs/development/tools/continuous-integration/jenkins/update.sh
@@ -3,11 +3,20 @@
 
 set -eu -o pipefail
 
-core_json="$(curl --fail --location https://updates.jenkins.io/stable/update-center.actual.json | jq .core)"
+core_json="$(curl -s --fail --location https://updates.jenkins.io/stable/update-center.actual.json | jq .core)"
+oldVersion=$(nix-instantiate --eval -E "with import ./. {}; jenkins.version or (builtins.parseDrvName jenkins.name).version" | tr -d '"')
 
 version="$(jq -r .version <<<$core_json)"
 sha256="$(jq -r .sha256 <<<$core_json)"
 hash="$(nix-hash --type sha256 --to-base32 "$sha256")"
 url="$(jq -r .url <<<$core_json)"
 
-update-source-version jenkins "$version" "$hash" "$url"
+if [ ! "${oldVersion}" = "${version}" ]; then
+  update-source-version jenkins "$version" "$hash" "$url"
+  nixpkgs="$(git rev-parse --show-toplevel)"
+  default_nix="$nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix"
+  git add "${default_nix}"
+  git commit -m "jenkins: ${oldVersion} -> ${version}"
+else
+  echo "jenkins is already up-to-date"
+fi
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index 4aa28be1326d..bd9dbbb71742 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://get-coursier.io/;
+    homepage = https://get-coursier.io/;
     description = "A Scala library to fetch dependencies from Maven / Ivy repositories";
     license = licenses.asl20;
     maintainers = with maintainers; [ adelbertc nequissimus ];
diff --git a/pkgs/development/tools/database/cdb/default.nix b/pkgs/development/tools/database/cdb/default.nix
index 8def71568e79..f0a4f6c34e25 100644
--- a/pkgs/development/tools/database/cdb/default.nix
+++ b/pkgs/development/tools/database/cdb/default.nix
@@ -52,6 +52,6 @@ in stdenv.mkDerivation {
     homepage = "https://cr.yp.to/cdb";
     license = lib.licenses.publicDomain;
     maintainers = [ lib.maintainers.Profpatsch ];
-    platforms = [ lib.platforms.unix ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/database/timescaledb-parallel-copy/default.nix b/pkgs/development/tools/database/timescaledb-parallel-copy/default.nix
index e559f714bd1b..1c12a8bc81cd 100644
--- a/pkgs/development/tools/database/timescaledb-parallel-copy/default.nix
+++ b/pkgs/development/tools/database/timescaledb-parallel-copy/default.nix
@@ -18,7 +18,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Bulk, parallel insert of CSV records into PostgreSQL";
-    homepage    = http://github.com/timescale/timescaledb-parallel-copy;
+    homepage    = https://github.com/timescale/timescaledb-parallel-copy;
     license     = licenses.asl20;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/pkgs/development/tools/dep2nix/default.nix b/pkgs/development/tools/dep2nix/default.nix
index e7033c44dd49..dcdb1053cf72 100644
--- a/pkgs/development/tools/dep2nix/default.nix
+++ b/pkgs/development/tools/dep2nix/default.nix
@@ -2,16 +2,16 @@
 , makeWrapper, nix-prefetch-scripts }:
 
 buildGoPackage rec {
-  name = "dep2nix-${version}";
-  version = "0.0.2";
+  pname = "dep2nix";
+  version = "unstable-2019-04-02";
 
   goPackagePath = "github.com/nixcloud/dep2nix";
 
   src = fetchFromGitHub {
     owner = "nixcloud";
-    repo = "dep2nix";
-    rev = version;
-    sha256 = "17csgnd6imr1l0gpirsvr5qg7z0mpzxj211p2nwqilrvbp8zj7vg";
+    repo = pname;
+    rev = "830684f920333b8ff0946d6b807e8be642eec3ef";
+    sha256 = "17sjxhzhmz4893x3x054anp4xvqd1px15nv3fj2m7i6r0vbgpm0j";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/dtools/default.nix b/pkgs/development/tools/dtools/default.nix
index 593287dbf21a..c223a8dc54a1 100644
--- a/pkgs/development/tools/dtools/default.nix
+++ b/pkgs/development/tools/dtools/default.nix
@@ -2,21 +2,21 @@
 
 stdenv.mkDerivation rec {
   name = "dtools-${version}";
-  version = "2.084.1";
+  version = "2.085.1";
 
   srcs = [
     (fetchFromGitHub {
       owner = "dlang";
       repo = "dmd";
       rev = "v${version}";
-      sha256 = "10ll5072rkv3ln7i5l88h2f9mzda567kw2jwh6466vm6ylzl4jms";
+      sha256 = "0ccidfcawrcwdpfjwjiln5xwr4ffp8i2hwx52p8zn3xmc5yxm660";
       name = "dmd";
     })
     (fetchFromGitHub {
       owner = "dlang";
       repo = "tools";
       rev = "v${version}";
-      sha256 = "0z3xkv9s1pdx8zdhsb92mwax2q5xhwjgh6g3iv53xip1nsxygn48";
+      sha256 = "1x85w4k2zqgv2bjbvhschxdc6kq8ygp89h499cy8rfqm6q23g0ws";
       name = "dtools";
     })
   ];
diff --git a/pkgs/development/tools/easyjson/default.nix b/pkgs/development/tools/easyjson/default.nix
index ed650f37698a..14d07a0108fa 100644
--- a/pkgs/development/tools/easyjson/default.nix
+++ b/pkgs/development/tools/easyjson/default.nix
@@ -2,15 +2,15 @@
 
 buildGoPackage rec {
   name = "easyjson-unstable-${version}";
-  version = "2018-08-23";
+  version = "2019-02-21";
   goPackagePath = "github.com/mailru/easyjson";
   goDeps = ./deps.nix;
 
   src = fetchFromGitHub {
     owner = "mailru";
     repo = "easyjson";
-    rev = "60711f1a8329503b04e1c88535f419d0bb440bff";
-    sha256 = "0234jp6134wkihdpdwq1hvzqblgl5khc1wp6dyi2h0hgh88bhdk1";
+    rev = "6243d8e04c3f819e79757e8bc3faa15c3cb27003";
+    sha256 = "160sj5pq4bv9jshniimkd5f9zcg6xrbgb027lhr9l895nsv4dlib";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/easyjson/deps.nix b/pkgs/development/tools/easyjson/deps.nix
index 3ba1d12a8048..0429d8876b29 100644
--- a/pkgs/development/tools/easyjson/deps.nix
+++ b/pkgs/development/tools/easyjson/deps.nix
@@ -1,3 +1,3 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
 ]
diff --git a/pkgs/development/tools/electron/3.x.nix b/pkgs/development/tools/electron/3.x.nix
index 23620a12530b..597e66f9b293 100644
--- a/pkgs/development/tools/electron/3.x.nix
+++ b/pkgs/development/tools/electron/3.x.nix
@@ -1,7 +1,7 @@
 { stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, gtk2, at-spi2-atk }:
 
 let
-  version = "3.1.4";
+  version = "3.1.8";
   name = "electron-${version}";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
@@ -19,19 +19,19 @@ let
     src = {
       i686-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "1llwpd10cz5nfwqimib7xkc3xxj3z4y19l97wxma3bciizmmgq3k";
+        sha256 = "1vq4vanlwixgk1q4v5d24f1ywgy2af1r14f9byzfy89vwds77yk9";
       };
       x86_64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "0mb7q82r9ndvz181lnkplmvwkijzc2msrpfwpghrhsc4j3zbh0bf";
+        sha256 = "13zds8bzn4z11544llkh99fw75gddxs5b9h1m5xgjzw37vf6rpws";
       };
       armv7l-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "0cf4jqq3n66dm11cy96q3nj1jxajv49yamhvn5g8a85nq4s5cx6f";
+        sha256 = "0rfw1ydlmixyhifpmm2qyxapx3iqav4nlnzp2km9z7a0hpc4lii6";
       };
       aarch64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "0lxp7fpccwk6qdw79dgjlm9hywfwl3aj932qg2aff18vs077skrg";
+        sha256 = "0qrnvzjz78fblfg4r6xpzc40p10y6865gqpwx2h5vsdfp6sgq898";
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
@@ -59,7 +59,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "1indim895a58ds09z91c8jfqmdp7ba85rx6bhq6dabgnvkykwmz0";
+      sha256 = "0ms75306dq2ym838zk9d9nypnd8yjipl0zqyq9bvd4r32p241hw9";
     };
 
     buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 8c6dce0114e8..e0d2d56e7fa5 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -1,7 +1,7 @@
 { stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk }:
 
 let
-  version = "4.0.6";
+  version = "4.1.4";
   name = "electron-${version}";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
@@ -16,23 +16,22 @@ let
 
   linux = {
     inherit name version meta;
-
     src = {
       i686-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "1ffv4wlj827wyq7y2hfaz2d0fapqr2r9likb90ayzh91vmkc8c2y";
+        sha256 = "0z1pr85mdw8c7vdsvznhixzmqmy3s6rrjaybym76c93hdvkr2ir9";
       };
       x86_64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "01b063jabx7fglh63dk7nh21xxadwxrrvavcwznpw6jhid48g2yz";
+        sha256 = "05lyq67paad4h4ng39h8bwkv84bmy6axbxh60fmvl6l1x55dsan6";
       };
       armv7l-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "18dsb3pyj9gfn8xyzhblx7nidgp39pfqs1ml07nxfkf1bjdh4c4w";
+        sha256 = "1ddc9b6h29qdqxnkc4vd6y5iah9i3f5i7v5zjb5b61rssz78wdbq";
       };
       aarch64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "0dx6bzj0laygqkyl8ngbh0yfzyc5mxr3fxlqb867cza9sz5hh95l";
+        sha256 = "0qha5klws8l2i0grmwjiz34srr66h93lpx1j0lsgz3pxjxhc33xs";
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
@@ -60,7 +59,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "0r1yn5lz808xdwp29g4kmlm5v0i1fsdxd4ph537gyz3sfn30dgq9";
+      sha256 = "0zbgrwphd1xfkzqai8n7mi9vpzqflq4wwwnl4pdryrkyi3k4yxa6";
     };
 
     buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/glslviewer/default.nix b/pkgs/development/tools/glslviewer/default.nix
index e8315e7b60c2..d85060add5eb 100644
--- a/pkgs/development/tools/glslviewer/default.nix
+++ b/pkgs/development/tools/glslviewer/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   name = "glslviewer-${version}";
-  version = "2018-01-31";
+  version = "2019-04-22";
 
   src = fetchFromGitHub {
     owner = "patriciogonzalezvivo";
     repo = "glslViewer";
-    rev = "cac40f6984dbeb638950744c9508aa88591fea6c";
-    sha256 = "1bykpp68hdxjlxvi1xicyb6822mz69q0adz24faaac372pls4bk0";
+    rev = "fa3e2ed4810927d189e480b704366cca22f281f3";
+    sha256 = "1888jxi84f2nnc0kpzqrn2cada1z4zqyq8ss4ppb5y3wy7d87qjn";
   };
 
   nativeBuildInputs = [ pkgconfig ensureNewerSourcesForZipFilesHook ];
diff --git a/pkgs/development/tools/go-langserver/default.nix b/pkgs/development/tools/go-langserver/default.nix
index 84efaf2a4b63..ec0e565eabd6 100644
--- a/pkgs/development/tools/go-langserver/default.nix
+++ b/pkgs/development/tools/go-langserver/default.nix
@@ -1,18 +1,17 @@
 { stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
-  name = "go-langserver-${version}";
-  version = "unstable-2018-03-05";
-  rev = "5d7a5dd74738978d635f709669241f164c120ebd";
+  pname = "go-langserver";
+  version = "2.0.0";
 
   goPackagePath = "github.com/sourcegraph/go-langserver";
   subPackages = [ "." ];
 
   src = fetchFromGitHub {
-    inherit rev;
+    rev = "v${version}";
     owner = "sourcegraph";
     repo = "go-langserver";
-    sha256 = "0aih0akk3wk3332znkhr2bzxcc3parijq7n089mdahnf20k69xyz";
+    sha256 = "1wv7xf81s3qi8xydxjkkp8vacdzrq8sbj04346fz73nsn85z0sgp";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/goa/default.nix b/pkgs/development/tools/goa/default.nix
index 7469d506244b..53d4bfaa483e 100644
--- a/pkgs/development/tools/goa/default.nix
+++ b/pkgs/development/tools/goa/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "goa-${version}";
-  version = "1.4.0";
+  version = "1.4.1";
 
   goPackagePath = "github.com/goadesign/goa";
   subPackages = [ "goagen" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "goadesign";
     repo = "goa";
     rev = "v${version}";
-    sha256 = "1qx3c7dyq5wqxidfrk3ywc55fk64najj63f2jmfisfq4ixgwxdw9";
+    sha256 = "0qcd4ii6arlpsivfdhcwidvnd8zbxxvf574jyxyvm1aazl8sqxj7";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/development/tools/goa/deps.nix b/pkgs/development/tools/goa/deps.nix
index d92489259055..bfe862a4006a 100644
--- a/pkgs/development/tools/goa/deps.nix
+++ b/pkgs/development/tools/goa/deps.nix
@@ -1,4 +1,4 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
   {
     goPackagePath = "github.com/dimfeld/httppath";
@@ -10,21 +10,21 @@
     };
   }
   {
-    goPackagePath = "github.com/manveru/faker";
+    goPackagePath = "github.com/gofrs/uuid";
     fetch = {
       type = "git";
-      url = "https://github.com/manveru/faker";
-      rev = "9fbc68a78c4dbc7914e1a23f88f126bea4383b97";
-      sha256 = "1cnrf4wdjhxd9fryhlp2krl9acz6dzwic89gshs49pg3aajlf4dy";
+      url = "https://github.com/gofrs/uuid";
+      rev = "e684523faa0581e44663968f097d478c499d4276";
+      sha256 = "1p2md0bmfnn7kaa866fnb8lfnmlzzb8wfhp4ym5915p8mv4whxgz";
     };
   }
   {
-    goPackagePath = "github.com/satori/go.uuid";
+    goPackagePath = "github.com/manveru/faker";
     fetch = {
       type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev = "36e9d2ebbde5e3f13ab2e25625fd453271d6522e";
-      sha256 = "0nc0ggn0a6bcwdrwinnx3z6889x65c20a2dwja0n8can3xblxs35";
+      url = "https://github.com/manveru/faker";
+      rev = "9fbc68a78c4dbc7914e1a23f88f126bea4383b97";
+      sha256 = "1cnrf4wdjhxd9fryhlp2krl9acz6dzwic89gshs49pg3aajlf4dy";
     };
   }
   {
@@ -59,8 +59,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/tools";
-      rev = "f60d9635b16a5a57b06eaa119614ba4df421966a";
-      sha256 = "1h587gvgwlpjdn8q3s8i1blfwfklqi0cpb0szj99w1mkgl0ads13";
+      rev = "a754db16a40a9d94359b6600b825419c0ca6f986";
+      sha256 = "0n0cwb2szcjbyncqhdia77spcjsbm05jcgpnh0i8rdr16ixwanyq";
     };
   }
   {
@@ -68,9 +68,8 @@
     fetch = {
       type = "git";
       url = "https://gopkg.in/yaml.v2";
-      rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183";
-      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+      rev = "51d6538a90f86fe93ac480b35f37b2be17fef232";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
     };
   }
 ]
-
diff --git a/pkgs/development/tools/gocode-gomod/default.nix b/pkgs/development/tools/gocode-gomod/default.nix
index b0069d3488e0..85e7c07b8cce 100644
--- a/pkgs/development/tools/gocode-gomod/default.nix
+++ b/pkgs/development/tools/gocode-gomod/default.nix
@@ -2,8 +2,8 @@
 
 buildGoPackage rec {
   name = "gocode-gomod-unstable-${version}";
-  version = "2018-10-16";
-  rev = "12640289f65065d652cc942ffa01a52bece1dd53";
+  version = "2019-02-12";
+  rev = "8cc90faaf4765d16de060350da41eadccc1a15d1";
 
   goPackagePath = "github.com/stamblerre/gocode";
 
@@ -19,7 +19,7 @@ buildGoPackage rec {
 
     owner = "stamblerre";
     repo = "gocode";
-    sha256 = "1avv0b5p2l8pv38m5gg97k57ndr5k9yy0rfkmmwjq96pa221hs1q";
+    sha256 = "0y5lc7sq3913mvvczwx8mq5l3l9yg34jzaw742q8jpd1jzqyza94";
   };
 
   goDeps = ./deps.nix;
@@ -45,6 +45,6 @@ buildGoPackage rec {
     homepage = https://github.com/stamblerre/gocode;
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = with maintainers; [ kalbasit ];
+    maintainers = with maintainers; [ kalbasit rvolosatovs ];
   };
 }
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix
index dd6a413cebf2..fe684bbf7b6f 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/default.nix
@@ -10,13 +10,13 @@ let
   };
 in stdenv.mkDerivation rec {
   name    = "godot-${version}";
-  version = "3.0.6";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner  = "godotengine";
     repo   = "godot";
     rev    = "${version}-stable";
-    sha256 = "0g64h0x8dlv6aa9ggfcidk2mknkfl5li7z1phcav8aqp9srj8avf";
+    sha256 = "1z37znqzbn0x8s04pb9dxzni9jzl8m59nfrr14vypww42f9l5i7i";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -51,10 +51,10 @@ in stdenv.mkDerivation rec {
     cp misc/dist/linux/godot.6 "$man/share/man/man6/"
 
     mkdir -p "$out"/share/{applications,icons/hicolor/scalable/apps}
-    cp misc/dist/linux/godot.desktop "$out/share/applications/"
+    cp misc/dist/linux/org.godotengine.Godot.desktop "$out/share/applications/"
     cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg"
     cp icon.png "$out/share/icons/godot.png"
-    substituteInPlace "$out/share/applications/godot.desktop" \
+    substituteInPlace "$out/share/applications/org.godotengine.Godot.desktop" \
       --replace "Exec=godot" "Exec=$out/bin/godot"
   '';
 
diff --git a/pkgs/development/tools/godot/dont_clobber_environment.patch b/pkgs/development/tools/godot/dont_clobber_environment.patch
index c57c85588a01..96a8464b5668 100644
--- a/pkgs/development/tools/godot/dont_clobber_environment.patch
+++ b/pkgs/development/tools/godot/dont_clobber_environment.patch
@@ -1,7 +1,7 @@
 +++ build/SConstruct
-@@ -69,10 +69,10 @@
-         custom_tools = ['mingw']
- 
+@@ -63,10 +63,10 @@ elif platform_arg == 'javascript':
+     custom_tools = ['cc', 'c++', 'ar', 'link', 'textfile', 'zip']
+
  env_base = Environment(tools=custom_tools)
 -if 'TERM' in os.environ:
 -    env_base['ENV']['TERM'] = os.environ['TERM']
@@ -11,6 +11,7 @@
 +    if (k in os.environ):
 +        env_base["ENV"][k] = os.environ[k]
 +
- env_base.global_defaults = global_defaults
  env_base.android_maven_repos = []
  env_base.android_flat_dirs = []
+ env_base.android_dependencies = []
+
diff --git a/pkgs/development/tools/godot/pkg_config_additions.patch b/pkgs/development/tools/godot/pkg_config_additions.patch
index 286372f060ae..409baaa6f266 100644
--- a/pkgs/development/tools/godot/pkg_config_additions.patch
+++ b/pkgs/development/tools/godot/pkg_config_additions.patch
@@ -1,13 +1,22 @@
 +++ b/platform/x11/detect.py
-@@ -142,6 +142,11 @@
-     env.ParseConfig('pkg-config xcursor --cflags --libs')
-     env.ParseConfig('pkg-config xinerama --cflags --libs')
-     env.ParseConfig('pkg-config xrandr --cflags --libs')
-+    env.ParseConfig('pkg-config xrender --cflags --libs')
+@@ -175,6 +175,11 @@ def configure(env):
+     env.ParseConfig('pkg-config xrender --cflags --libs')
+     env.ParseConfig('pkg-config xi --cflags --libs')
+ 
 +    env.ParseConfig('pkg-config xext --cflags --libs')
 +    env.ParseConfig('pkg-config xfixes --cflags --libs')
 +    env.ParseConfig('pkg-config glu --cflags --libs')
 +    env.ParseConfig('pkg-config zlib --cflags --libs')
- 
++
      if (env['touch']):
-         x11_error = os.system("pkg-config xi --modversion > /dev/null ")
+         env.Append(CPPFLAGS=['-DTOUCH_ENABLED'])
+ 
+@@ -264,7 +269,7 @@ def configure(env):
+         print("Enabling ALSA")
+         env.Append(CPPFLAGS=["-DALSA_ENABLED", "-DALSAMIDI_ENABLED"])
+ 	# Don't parse --cflags, we don't need to add /usr/include/alsa to include path
+-        env.ParseConfig('pkg-config alsa --libs')
++        env.ParseConfig('pkg-config alsa --cflags --libs')
+     else:
+         print("ALSA libraries not found, disabling driver")
+ 
diff --git a/pkgs/development/tools/icestorm/default.nix b/pkgs/development/tools/icestorm/default.nix
index b149703241e4..c287e40d823a 100644
--- a/pkgs/development/tools/icestorm/default.nix
+++ b/pkgs/development/tools/icestorm/default.nix
@@ -11,13 +11,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "icestorm-${version}";
-  version = "2019.02.23";
+  version = "2019.04.16";
 
   src = fetchFromGitHub {
     owner  = "cliffordwolf";
     repo   = "icestorm";
-    rev    = "3a2bfee5cbc0558641668114260d3f644d6b7c83";
-    sha256 = "1avc9b6w3xbmpq4y4lf9b5mym6aygh5hngzyasa9jyj0cx8mxcpf";
+    rev    = "d9ea2e15fccebbbce59409b0ae7a1481d78aab86";
+    sha256 = "1qa37p7hm7c2ga26xcvsd8xkqrp4hm0w6yh7cvz2q988yjzal5ky";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/jazzy/Gemfile.lock b/pkgs/development/tools/jazzy/Gemfile.lock
index a4e12cb6fe55..3affa961bef1 100644
--- a/pkgs/development/tools/jazzy/Gemfile.lock
+++ b/pkgs/development/tools/jazzy/Gemfile.lock
@@ -2,7 +2,7 @@ GEM
   remote: https://rubygems.org/
   specs:
     CFPropertyList (3.0.0)
-    activesupport (4.2.11)
+    activesupport (4.2.11.1)
       i18n (~> 0.7)
       minitest (~> 5.1)
       thread_safe (~> 0.3, >= 0.3.4)
@@ -32,7 +32,7 @@ GEM
       activesupport (>= 4.0.2, < 6)
       fuzzy_match (~> 2.0.4)
       nap (~> 1.0)
-    cocoapods-deintegrate (1.0.3)
+    cocoapods-deintegrate (1.0.4)
     cocoapods-downloader (1.2.2)
     cocoapods-plugins (1.0.0)
       nap
@@ -43,7 +43,7 @@ GEM
       netrc (~> 0.11)
     cocoapods-try (1.1.0)
     colored2 (3.1.2)
-    concurrent-ruby (1.1.4)
+    concurrent-ruby (1.1.5)
     escape (0.0.4)
     ffi (1.10.0)
     fourflusher (2.0.1)
@@ -51,7 +51,7 @@ GEM
     gh_inspector (1.1.3)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    jazzy (0.9.5)
+    jazzy (0.9.6)
       cocoapods (~> 1.5.3)
       mustache (~> 1.1.0)
       open4
@@ -85,7 +85,7 @@ GEM
       thread_safe (~> 0.1)
     xcinvoke (0.3.0)
       liferaft (~> 0.0.6)
-    xcodeproj (1.8.1)
+    xcodeproj (1.8.2)
       CFPropertyList (>= 2.3.3, < 4.0)
       atomos (~> 0.1.3)
       claide (>= 1.0.2, < 2.0)
diff --git a/pkgs/development/tools/jazzy/default.nix b/pkgs/development/tools/jazzy/default.nix
index 15a74f3c5955..981c9c1d0604 100644
--- a/pkgs/development/tools/jazzy/default.nix
+++ b/pkgs/development/tools/jazzy/default.nix
@@ -1,9 +1,10 @@
-{ lib, bundlerEnv, ruby }:
+{ lib, bundlerApp, ruby }:
 
-bundlerEnv rec {
+bundlerApp rec {
   inherit ruby;
   pname = "jazzy";
   gemdir = ./.;
+  exes = [ "jazzy" ];
 
   meta = with lib; {
     description     = "A command-line utility that generates documentation for Swift or Objective-C";
diff --git a/pkgs/development/tools/jazzy/gemset.nix b/pkgs/development/tools/jazzy/gemset.nix
index 5f4e93354632..0a8ea5f9a507 100644
--- a/pkgs/development/tools/jazzy/gemset.nix
+++ b/pkgs/development/tools/jazzy/gemset.nix
@@ -5,10 +5,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pqr25wmhvvlg8av7bi5p5c7r5464clhhhhv45j63bh7xw4ad6n4";
+      sha256 = "1vbq7a805bfvyik2q3kl9s3r418f5qzvysqbz2cwy4hr7m2q4ir6";
       type = "gem";
     };
-    version = "4.2.11";
+    version = "4.2.11.1";
   };
   atomos = {
     groups = ["default"];
@@ -65,10 +65,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m3hi4va9cr7anxkjf44as14j1hsrvw00bzvz7c906hyb8qcm4fp";
+      sha256 = "0bf524f1za92i6rlr4cr6jm3c4vfjszsdc9lsr6wk5125c76ipzn";
       type = "gem";
     };
-    version = "1.0.3";
+    version = "1.0.4";
   };
   cocoapods-downloader = {
     groups = ["default"];
@@ -139,10 +139,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ixcx9pfissxrga53jbdpza85qd5f6b5nq1sfqa9rnfq82qnlbp1";
+      sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an";
       type = "gem";
     };
-    version = "1.1.4";
+    version = "1.1.5";
   };
   escape = {
     source = {
@@ -205,10 +205,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13gn4zihfnf3k5ilki3jx7gzin5wdiqvca5q01qq9x7m87j924j6";
+      sha256 = "09df1mkf8fhzj0hmgdifnyvd8lhgxr1ps8yjyxfk8n2jkkbiyj7i";
       type = "gem";
     };
-    version = "0.9.5";
+    version = "0.9.6";
   };
   liferaft = {
     source = {
@@ -393,9 +393,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13z3109lwq632vhazndqjlccpwadljg58sflbyl0m57j9d4blv2y";
+      sha256 = "0ji3wmpr6xm4172vxh9y6731vm2xrvv7ccwk4ijd5n4if1dakm03";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "1.8.2";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix
new file mode 100644
index 000000000000..ccfa62c0b0df
--- /dev/null
+++ b/pkgs/development/tools/just/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchFromGitHub, rustPlatform, coreutils, bash, dash }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "just";
+  version = "0.4.2";
+
+  src = fetchFromGitHub {
+    owner = "casey";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0l35pri5m5k5j12zd42kr5pdx97q1xq1r0shif7hs768if0n8ihm";
+  };
+
+  cargoSha256 = "0wqjk2zxkd6lwki7blsdsbdnr250zs4d0ivjxc2w3i3xivlsjbw8";
+
+  checkInputs = [ coreutils bash dash ];
+
+  preCheck = ''
+    # USER must not be empty
+    export USER=just-user
+    export USERNAME=just-user
+
+    sed -i tests/integration.rs \
+        -e "s@/bin/echo@${coreutils}/bin/echo@g" \
+        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
+        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
+
+    sed -i tests/interrupts.rs \
+        -e "s@/bin/echo@${coreutils}/bin/echo@g" \
+        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
+        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
+
+    sed -i src/justfile.rs \
+        -e "s@/bin/echo@${coreutils}/bin/echo@g" \
+        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
+        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A handy way to save and run project-specific commands";
+    homepage = https://github.com/casey/just;
+    license = licenses.cc0;
+    maintainers = with maintainers; [ xrelkd ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/k6/default.nix b/pkgs/development/tools/k6/default.nix
index cf3b0414c7a3..b8071bf1ac26 100644
--- a/pkgs/development/tools/k6/default.nix
+++ b/pkgs/development/tools/k6/default.nix
@@ -1,16 +1,16 @@
 { stdenv, buildGoPackage, fetchFromGitHub }:
 
-buildGoPackage  rec {
-  name = "k6-${version}";
-  version = "0.23.1";
+buildGoPackage rec {
+  pname = "k6";
+  version = "0.24.0";
 
   goPackagePath = "github.com/loadimpact/k6";
 
   src = fetchFromGitHub {
     owner = "loadimpact";
-    repo = "k6";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "03krrpbb67h9hmrg5m94936kha667yh2lqzp9s7fv0b6khskr9r7";
+    sha256 = "1riyyi4lxdaqilzzkxzzw3hzcrjjcylq2jh3p3656f99wiisvj28";
   };
 
   subPackages = [ "./" ];
diff --git a/pkgs/development/tools/kafkacat/default.nix b/pkgs/development/tools/kafkacat/default.nix
index 3a1c4225bffb..4a837bcef652 100644
--- a/pkgs/development/tools/kafkacat/default.nix
+++ b/pkgs/development/tools/kafkacat/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "kafkacat-${version}";
 
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "edenhill";
     repo = "kafkacat";
     rev = "${version}";
-    sha256 = "1fgs04rclgfwri6vd9lj0mw545nmscav9p6kh7r28k5ap2g0gak5";
+    sha256 = "0zs2nmf3ghm9iar7phc0ncqsb9nhipav94v6qmpxkfwxd2ljkpds";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/kind/default.nix b/pkgs/development/tools/kind/default.nix
index 8cf08a93750b..f02105aede97 100644
--- a/pkgs/development/tools/kind/default.nix
+++ b/pkgs/development/tools/kind/default.nix
@@ -4,23 +4,26 @@ with stdenv.lib;
 
 buildGoPackage rec {
   name = "kind-${version}";
-  version = "0.1.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
-    rev = "${version}";
-    owner = "kubernetes-sigs";
-    repo = "kind";
-    sha256 = "01ifmnv3jid4ls6qw9d6j9vldjbbnrwclzv8spnh6fnzb2wprln2";
+    rev    = "${version}";
+    owner  = "kubernetes-sigs";
+    repo   = "kind";
+    sha256 = "14ddhml9rh7x4j315fb332206xbn1rzx3i0ngj3220vb6d5dv8if";
   };
 
+  # move dev tool package that confuses the go compiler
+  patchPhase = "rm -r hack";
+
   goPackagePath = "sigs.k8s.io/kind";
   excludedPackages = "images/base/entrypoint";
 
   meta = {
     description = "Kubernetes IN Docker - local clusters for testing Kubernetes";
-    homepage = https://github.com/kubernetes-sigs/kind;
+    homepage    = https://github.com/kubernetes-sigs/kind;
     maintainers = with maintainers; [ offline rawkode ];
-    license = stdenv.lib.licenses.asl20;
-    platforms = platforms.unix;
+    license     = stdenv.lib.licenses.asl20;
+    platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/ktlint/default.nix b/pkgs/development/tools/ktlint/default.nix
index 4ce2972e56da..bfad2a3d46a8 100644
--- a/pkgs/development/tools/ktlint/default.nix
+++ b/pkgs/development/tools/ktlint/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "ktlint-${version}";
-  version = "0.30.0";
+  version = "0.31.0";
 
   src = fetchurl {
     url = "https://github.com/shyiko/ktlint/releases/download/${version}/ktlint";
-    sha256 = "0l3h3q4qc7ij3sr9ij1mrhir18xic7qbzgb621fv16zgdk6rjghn";
+    sha256 = "0bqpflvnh423w54162r0d6l503lql1bwqykxw18s2fx1n1gb3n9a";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index 231a2009491f..d142078c50fa 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "lazygit-${version}";
-  version = "0.5";
+  version = "0.7.2";
 
   goPackagePath = "github.com/jesseduffield/lazygit";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "jesseduffield";
     repo = "lazygit";
     rev = "v${version}";
-    sha256 = "0xgda2b5p26ya15kq83502f8vh18kl05hl40k0lsfqx3m7pnidn1";
+    sha256 = "1b5mzmxw715cx7b0n22hvrpk0dbavzypljc7skwmh8k1nlx935jj";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/mdk/default.nix b/pkgs/development/tools/mdk/default.nix
index 8b5bea7ac6ce..27f0063e24be 100644
--- a/pkgs/development/tools/mdk/default.nix
+++ b/pkgs/development/tools/mdk/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, intltool, pkgconfig, glib }:
 
 stdenv.mkDerivation {
-  name = "gnu-mdk-1.2.9";
+  name = "gnu-mdk-1.2.10";
   src = fetchurl {
-    url = https://ftp.gnu.org/gnu/mdk/v1.2.9/mdk-1.2.9.tar.gz;
-    sha256 = "0c24wzrzbk0l4z1p5nnxihaqra75amwmw59va44554infkfms9kc";
+    url = https://ftp.gnu.org/gnu/mdk/v1.2.10/mdk-1.2.10.tar.gz;
+    sha256 = "1rwcq2b5vvv7318j92nxc5dayj27dpfhzc4rjiv4ccvsc0x35x5h";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ intltool glib ];
diff --git a/pkgs/development/tools/minizinc/default.nix b/pkgs/development/tools/minizinc/default.nix
index e35a310b1002..14f42ed9d40a 100644
--- a/pkgs/development/tools/minizinc/default.nix
+++ b/pkgs/development/tools/minizinc/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   };
 
   meta = with stdenv.lib; {
-    homepage = http://www.minizinc.org/;
+    homepage = https://www.minizinc.org/;
     description = "MiniZinc is a medium-level constraint modelling language.";
 
     longDescription = ''
@@ -31,4 +31,3 @@ stdenv.mkDerivation {
     maintainers = [ maintainers.sheenobu ];
   };
 }
-
diff --git a/pkgs/development/tools/misc/autobuild/default.nix b/pkgs/development/tools/misc/autobuild/default.nix
index 6919b03d47c1..8f425a929590 100644
--- a/pkgs/development/tools/misc/autobuild/default.nix
+++ b/pkgs/development/tools/misc/autobuild/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       summary of the build status, after reading the manual.
     '';
 
-    homepage = http://josefsson.org/autobuild/;
+    homepage = https://josefsson.org/autobuild/;
     license = stdenv.lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/development/tools/misc/automake/automake-1.15.x.nix b/pkgs/development/tools/misc/automake/automake-1.15.x.nix
new file mode 100644
index 000000000000..e1aeb025c30f
--- /dev/null
+++ b/pkgs/development/tools/misc/automake/automake-1.15.x.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl, perl, autoconf }:
+
+stdenv.mkDerivation rec {
+  name = "automake-1.15";
+
+  src = fetchurl {
+    url = "mirror://gnu/automake/${name}.tar.xz";
+    sha256 = "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r";
+  };
+
+  nativeBuildInputs = [ autoconf perl ];
+  buildInputs = [ autoconf ];
+
+  setupHook = ./setup-hook.sh;
+
+  # Disable indented log output from Make, otherwise "make.test" will
+  # fail.
+  preCheck = "unset NIX_INDENT_MAKE";
+  doCheck = false; # takes _a lot_ of time, fails 3 out of 2698 tests, all seem to be related to paths
+  doInstallCheck = false; # runs the same thing, fails the same tests
+
+  # The test suite can run in parallel.
+  enableParallelBuilding = true;
+
+  # Don't fixup "#! /bin/sh" in Libtool, otherwise it will use the
+  # "fixed" path in generated files!
+  dontPatchShebangs = true;
+
+  meta = {
+    branch = "1.15";
+    homepage = https://www.gnu.org/software/automake/;
+    description = "GNU standard-compliant makefile generator";
+    license = stdenv.lib.licenses.gpl2Plus;
+
+    longDescription = ''
+      GNU Automake is a tool for automatically generating
+      `Makefile.in' files compliant with the GNU Coding
+      Standards.  Automake requires the use of Autoconf.
+    '';
+
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/misc/cflow/default.nix b/pkgs/development/tools/misc/cflow/default.nix
index b2dbf65bcb08..ed4886305e3c 100644
--- a/pkgs/development/tools/misc/cflow/default.nix
+++ b/pkgs/development/tools/misc/cflow/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, gettext, emacs }:
 
 stdenv.mkDerivation rec {
-  name = "cflow-1.5";
+  name = "cflow-1.6";
 
   src = fetchurl {
     url = "mirror://gnu/cflow/${name}.tar.bz2";
-    sha256 = "0yq33k5ap1zpnja64n89iai4zh018ffr72wki5a6mzczd880mr3g";
+    sha256 = "1mzd3yf0dfv8h2av5vsxxlhpk21nw064h91b2kgfrdz92r0pnj1l";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/misc/dialog/default.nix b/pkgs/development/tools/misc/dialog/default.nix
index f25ea78ecd8d..efb850d5adef 100644
--- a/pkgs/development/tools/misc/dialog/default.nix
+++ b/pkgs/development/tools/misc/dialog/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   installTargets = "install${stdenv.lib.optionalString withLibrary "-full"}";
 
   meta = {
-    homepage = http://invisible-island.net/dialog/dialog.html;
+    homepage = https://invisible-island.net/dialog/dialog.html;
     description = "Display dialog boxes from shell";
     license = stdenv.lib.licenses.lgpl21Plus;
     maintainers = [ stdenv.lib.maintainers.spacefrogg ];
diff --git a/pkgs/development/tools/misc/doclifter/default.nix b/pkgs/development/tools/misc/doclifter/default.nix
index 9b35d2960a4d..9975f0f5465c 100644
--- a/pkgs/development/tools/misc/doclifter/default.nix
+++ b/pkgs/development/tools/misc/doclifter/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, python}:
 
 stdenv.mkDerivation {
-  name = "doclifter-2.18";
+  name = "doclifter-2.19";
   src = fetchurl {
-    url = http://www.catb.org/~esr/doclifter/doclifter-2.18.tar.gz;
-    sha256 = "0g39lbml7dclm2nb20j4ffzhq28226qiwxq1w37p7mpqijm7x3hw";
+    url = http://www.catb.org/~esr/doclifter/doclifter-2.19.tar.gz;
+    sha256 = "1as6z7mdjrrkw2kism41q5ybvyzvwcmj9qzla2fz98v9f4jbj2s2";
   };
   buildInputs = [ python ];
   
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
index 5b17cc00c31d..1cfd9caa626b 100644
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ b/pkgs/development/tools/misc/hydra/default.nix
@@ -110,6 +110,11 @@ in releaseTools.nixBuild rec {
       url = "https://github.com/NixOS/hydra/commit/08de434bdd0b0a22abc2081be6064a6c846d3920.patch";
       sha256 = "0kz77njp5ynn9l81g3q8zrryvnsr06nk3iw0a60187wxqzf5fmf8";
     })
+  ] ++ [
+    (fetchpatch {
+      url = "https://github.com/NixOS/hydra/pull/648/commits/4171ab4c4fd576c516dc03ba64d1c7945f769af0.patch";
+      sha256 = "1fxa2459kdws6qc419dv4084c1ssmys7kqg4ic7n643kybamsgrx";
+    })
   ];
 
   configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];
diff --git a/pkgs/development/tools/misc/kibana/default.nix b/pkgs/development/tools/misc/kibana/6.x.nix
index 9d5e94e7d76e..b7e9dd0aaef4 100644
--- a/pkgs/development/tools/misc/kibana/default.nix
+++ b/pkgs/development/tools/misc/kibana/6.x.nix
@@ -4,13 +4,14 @@
 , makeWrapper
 , fetchzip
 , fetchurl
-, nodejs
+, nodejs-10_x
 , coreutils
 , which
 }:
 
 with stdenv.lib;
 let
+  nodejs = nodejs-10_x;
   inherit (builtins) elemAt;
   info = splitString "-" stdenv.hostPlatform.system;
   arch = elemAt info 0;
@@ -18,26 +19,14 @@ let
   shas =
     if enableUnfree
     then {
-      "x86_64-linux"  = "0lip4bj3jazv83gydw99dnp03cb0fd1p4z3lvpjbisgmqffbbg5v";
-      "x86_64-darwin" = "0hjdnqagcwbjhpcfyr6w0zmy4sjnx4fyp79czb0vp7dig5arnwm3";
+      "x86_64-linux"  = "039ll00kvrp881cyybb04z90cw68j7p5cspgdxh0bky9lyi9qpwb";
+      "x86_64-darwin" = "0qrakrihcjwn9dic77b0k9ja3zf6nbz534v76xid9gv20md5dds3";
     }
     else {
-      "x86_64-linux"  = "1jybn4q7pz61iijzl85d948szlacfcbldn2nhhsb6063xwvf30sa";
-      "x86_64-darwin" = "1bl1h6hgp9l5cjq6pzj2x855wjaka8hbs0fn2c03lbzsc991dppr";
+      "x86_64-linux"  = "1v1fbmfkbnlx043z3yx02gaqqy63bj2ymvcby66n4qq0vlpahvwx";
+      "x86_64-darwin" = "1y4q7a2b9arln94d6sj547qkv3258jlgcz9b342fh6khlbpfjb8c";
     };
 
-  # For the correct phantomjs version see:
-  # https://github.com/elastic/kibana/blob/master/x-pack/plugins/reporting/server/browsers/phantom/paths.js
-  phantomjs = rec {
-    name = "phantomjs-${version}-linux-x86_64";
-    version = "2.1.1";
-    src = fetchzip {
-      inherit name;
-      url = "https://github.com/Medium/phantomjs/releases/download/v${version}/${name}.tar.bz2";
-      sha256 = "0g2dqjzr2daz6rkd6shj6rrlw55z4167vqh7bxadl8jl6jk7zbfv";
-    };
-  };
-
 in stdenv.mkDerivation rec {
   name = "kibana-${optionalString (!enableUnfree) "oss-"}${version}";
   version = elk6Version;
@@ -48,7 +37,7 @@ in stdenv.mkDerivation rec {
   };
 
   patches = [
-    # Kibana specifies it specifically needs nodejs 8.11.4 but nodejs in nixpkgs is at 8.12.0.
+    # Kibana specifies it specifically needs nodejs 10.15.2 but nodejs in nixpkgs is at 10.15.3.
     # The <nixpkgs/nixos/tests/elk.nix> test succeeds with this newer version so lets just
     # disable the version check.
     ./disable-nodejs-version-check.patch
@@ -63,13 +52,6 @@ in stdenv.mkDerivation rec {
     makeWrapper $out/libexec/kibana/bin/kibana $out/bin/kibana \
       --prefix PATH : "${stdenv.lib.makeBinPath [ nodejs coreutils which ]}"
     sed -i 's@NODE=.*@NODE=${nodejs}/bin/node@' $out/libexec/kibana/bin/kibana
-  '' +
-  # phantomjs is needed in the unfree version. When phantomjs doesn't exist in
-  # $out/libexec/kibana/data kibana will try to download and unpack it during
-  # runtime which will fail because the nix store is read-only. So we make sure
-  # it already exist in the nix store.
-  optionalString enableUnfree ''
-    ln -s ${phantomjs.src} $out/libexec/kibana/data/${phantomjs.name}
   '';
 
   meta = {
diff --git a/pkgs/development/tools/misc/kibana/7.x.nix b/pkgs/development/tools/misc/kibana/7.x.nix
new file mode 100644
index 000000000000..19590239caf8
--- /dev/null
+++ b/pkgs/development/tools/misc/kibana/7.x.nix
@@ -0,0 +1,64 @@
+{ elk7Version
+, enableUnfree ? true
+, stdenv
+, makeWrapper
+, fetchzip
+, fetchurl
+, nodejs-10_x
+, coreutils
+, which
+}:
+
+with stdenv.lib;
+let
+  nodejs = nodejs-10_x;
+  inherit (builtins) elemAt;
+  info = splitString "-" stdenv.hostPlatform.system;
+  arch = elemAt info 0;
+  plat = elemAt info 1;
+  shas =
+    if enableUnfree
+    then {
+      "x86_64-linux"  = "0awkbnbrffv2m6n9zqv8k4m23g4mril69rmj84ndqpdnv7shrk4l";
+      "x86_64-darwin" = "0mbaya0xq99vfl8bn1wgi4m43c8qjp910bxf26z436km64311pip";
+    }
+    else {
+      "x86_64-linux"  = "0fy8vh0x2p8n2r3n5f67h1r5z75qfx5q4fghgqwnqymray5798v4";
+      "x86_64-darwin" = "0zyhvbwvdj95v2nswx5b83n4cw3zy5a6bkrvypw6k1i833c6v5g7";
+    };
+
+in stdenv.mkDerivation rec {
+  name = "kibana-${optionalString (!enableUnfree) "oss-"}${version}";
+  version = elk7Version;
+
+  src = fetchurl {
+    url = "https://artifacts.elastic.co/downloads/kibana/${name}-${plat}-${arch}.tar.gz";
+    sha256 = shas."${stdenv.hostPlatform.system}" or (throw "Unknown architecture");
+  };
+
+  patches = [
+    # Kibana specifies it specifically needs nodejs 10.15.2 but nodejs in nixpkgs is at 10.15.3.
+    # The <nixpkgs/nixos/tests/elk.nix> test succeeds with this newer version so lets just
+    # disable the version check.
+    ./disable-nodejs-version-check.patch
+  ];
+
+  buildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/libexec/kibana $out/bin
+    mv * $out/libexec/kibana/
+    rm -r $out/libexec/kibana/node
+    makeWrapper $out/libexec/kibana/bin/kibana $out/bin/kibana \
+      --prefix PATH : "${stdenv.lib.makeBinPath [ nodejs coreutils which ]}"
+    sed -i 's@NODE=.*@NODE=${nodejs}/bin/node@' $out/libexec/kibana/bin/kibana
+  '';
+
+  meta = {
+    description = "Visualize logs and time-stamped data";
+    homepage = http://www.elasticsearch.org/overview/kibana;
+    license = if enableUnfree then licenses.elastic else licenses.asl20;
+    maintainers = with maintainers; [ offline rickynils basvandijk ];
+    platforms = with platforms; unix;
+  };
+}
diff --git a/pkgs/development/tools/misc/lit/default.nix b/pkgs/development/tools/misc/lit/default.nix
index 9784308b010e..c4164b414331 100644
--- a/pkgs/development/tools/misc/lit/default.nix
+++ b/pkgs/development/tools/misc/lit/default.nix
@@ -2,11 +2,11 @@
 
 python2.pkgs.buildPythonApplication rec {
   pname = "lit";
-  version = "0.7.1";
+  version = "0.8.0";
 
   src = python2.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "ecef2833aef7f411cb923dac109c7c9dcc7dbe7cafce0650c1e8d19c243d955f";
+    sha256 = "0lwx1w1vk3a0pc237chwycl8qc6lwq8bzf13036wnmk74m9kwi7c";
   };
 
   # Non-standard test suite. Needs custom checkPhase.
diff --git a/pkgs/development/tools/misc/macdylibbundler/default.nix b/pkgs/development/tools/misc/macdylibbundler/default.nix
new file mode 100644
index 000000000000..ebe62452440e
--- /dev/null
+++ b/pkgs/development/tools/misc/macdylibbundler/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "macdylibbundler-${version}";
+  version = "20180825";
+
+  src = fetchFromGitHub {
+    owner = "auriamg";
+    repo = "macdylibbundler";
+    rev = "ce13cb585ead5237813b85e68fe530f085fc0a9e";
+    sha256 = "149p3dcnap4hs3nhq5rfvr3m70rrb5hbr5xkj1h0gsfp0d7gvxnj";
+  };
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    description = "Utility to ease bundling libraries into executables for OSX";
+    longDescription = ''
+      dylibbundler is a small command-line programs that aims to make bundling
+      .dylibs as easy as possible. It automatically determines which dylibs are
+      needed by your program, copies these libraries inside the app bundle, and
+      fixes both them and the executable to be ready for distribution... all
+      this with a single command on the teminal! It will also work if your
+      program uses plug-ins that have dependencies too.
+    '';
+    homepage = https://github.com/auriamg/macdylibbundler;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.nomeata ];
+
+  };
+}
diff --git a/pkgs/development/tools/misc/mkcert/default.nix b/pkgs/development/tools/misc/mkcert/default.nix
new file mode 100644
index 000000000000..9532b6e34421
--- /dev/null
+++ b/pkgs/development/tools/misc/mkcert/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "mkcert";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "FiloSottile";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1aadnsx5pfmryf8mgxg9g0i083dm1pmrc6v4ln2mm3n89wwqc9b7";
+  };
+
+  modSha256 = "0snvvwhyfq01nwgjz55dgd5skpg7z0dzix7sdag90cslbrr983i1";
+
+  meta = with lib; {
+    homepage = https://github.com/FiloSottile/mkcert;
+    description = "A simple tool for making locally-trusted development certificates";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/development/tools/misc/objconv/default.nix b/pkgs/development/tools/misc/objconv/default.nix
index acd25a12f81b..a449c28ea289 100644
--- a/pkgs/development/tools/misc/objconv/default.nix
+++ b/pkgs/development/tools/misc/objconv/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Object and executable file converter, modifier and disassembler";
-    homepage = http://www.agner.org/optimize/;
+    homepage = https://www.agner.org/optimize/;
     license = licenses.gpl2;
     maintainers = with maintainers; [ orivej vrthra ];
     platforms = platforms.unix;
diff --git a/pkgs/development/tools/misc/pkgconf/default.nix b/pkgs/development/tools/misc/pkgconf/default.nix
index 5a9642057d8a..43d86966694f 100644
--- a/pkgs/development/tools/misc/pkgconf/default.nix
+++ b/pkgs/development/tools/misc/pkgconf/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "pkgconf-1.6.0";
+  pname = "pkgconf";
+  version = "1.6.1";
 
   src = fetchurl {
-    url = "https://distfiles.dereferenced.org/pkgconf/${name}.tar.xz";
-    sha256 = "1rgcw7lbmxv45y4ybnlh1wzhd1d15d2616499ajjnrvnnnms6db1";
+    url = "https://distfiles.dereferenced.org/${pname}/${pname}-${version}.tar.xz";
+    sha256 = "1310va0nm8iyb4ghgz9qlx7qb00iha1523hq1zbgj0c98cwfxf92";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/misc/pwndbg/default.nix b/pkgs/development/tools/misc/pwndbg/default.nix
index e299a7b0eb82..8f27609ababe 100644
--- a/pkgs/development/tools/misc/pwndbg/default.nix
+++ b/pkgs/development/tools/misc/pwndbg/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   name = "pwndbg-${version}";
-  version = "2018.07.29";
+  version = "2019.01.25";
 
   src = fetchFromGitHub {
     owner = "pwndbg";
     repo = "pwndbg";
     rev = version;
-    sha256 = "1illk1smknaaa0ck8mwvig15c8al5w7fdp42a748xvm8wvxqxdsc";
+    sha256 = "0k7n6pcrj62ccag801yzf04a9mj9znghpkbnqwrzz0qn3rs42vgs";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/misc/semver-tool/default.nix b/pkgs/development/tools/misc/semver-tool/default.nix
new file mode 100644
index 000000000000..879346a2b796
--- /dev/null
+++ b/pkgs/development/tools/misc/semver-tool/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, lib, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "semver-tool";
+  version = "2.1.0";
+
+  src = fetchFromGitHub {
+    owner = "fsaintjacques";
+    repo = pname;
+    rev = version;
+    sha256 = "0lpwsa86qb5w6vbnsn892nb3qpxxx9ifxch8pw3ahzx2dqhdgnrr";
+  };
+
+  dontBuild = true; # otherwise we try to 'make' which fails.
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    install src/semver $out/bin
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = https://github.com/fsaintjacques/semver-tool;
+    description = "semver bash implementation";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.qyliss ];
+  };
+}
diff --git a/pkgs/development/tools/misc/sysbench/default.nix b/pkgs/development/tools/misc/sysbench/default.nix
index 14374937fe09..7b6048eb475d 100644
--- a/pkgs/development/tools/misc/sysbench/default.nix
+++ b/pkgs/development/tools/misc/sysbench/default.nix
@@ -2,7 +2,7 @@
 , libaio }:
 
 stdenv.mkDerivation rec {
-  name = "sysbench-1.0.16";
+  name = "sysbench-1.0.17";
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ vim mysql.connector-c libaio ];
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "akopytov";
     repo = "sysbench";
-    rev = "1.0.16";
-    sha256 = "0ypain0m1yqn7yqfb5847fdph6a6m0rn2rnqbnkxcxz5g85kv1rg";
+    rev = "1.0.17";
+    sha256 = "02i9knvp0bjw6ri848xxiy2dbww2xv70nah9yn67a6zgw617hwa6";
   };
 
   meta = {
diff --git a/pkgs/development/tools/misc/tokei/default.nix b/pkgs/development/tools/misc/tokei/default.nix
index 66d9d521b058..65a210ed4b91 100644
--- a/pkgs/development/tools/misc/tokei/default.nix
+++ b/pkgs/development/tools/misc/tokei/default.nix
@@ -1,21 +1,21 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  name = "tokei-${version}";
-  version = "9.0.0";
+  pname = "tokei";
+  version = "9.1.1";
 
   src = fetchFromGitHub {
-    owner = "Aaronepower";
-    repo = "tokei";
+    owner = "XAMPPRocky";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "04d32w3yc98f6swxap19d6vrv8vi3w843cgnmf28mxcy4nbnls1n";
+    sha256 = "0gz8m5j9p7hwylyl7cdxbli9rpy1p6lsrbym4zk647819pg4k1jp";
   };
 
-  cargoSha256 = "0vjb4j8qwlmvw55i2jif1a7hwv928h90dzwlpcqb0h6nlv812fav";
+  cargoSha256 = "1xai3jxvs8r3s3v5d5w40miw6nihnj9gzlzzdrwphmgrkywr88c4";
 
   meta = with stdenv.lib; {
     description = "Program that displays statistics about your code";
-    homepage = https://github.com/Aaronepower/tokei;
+    homepage = https://github.com/XAMPPRocky/tokei;
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.all;
diff --git a/pkgs/development/tools/modd/default.nix b/pkgs/development/tools/modd/default.nix
new file mode 100644
index 000000000000..47beb1a22418
--- /dev/null
+++ b/pkgs/development/tools/modd/default.nix
@@ -0,0 +1,22 @@
+{ buildGoPackage, fetchFromGitHub, stdenv }:
+
+buildGoPackage rec {
+  pname = "modd";
+  version = "0.8";
+  src = fetchFromGitHub {
+    owner = "cortesi";
+    repo = "modd";
+    rev = "v${version}";
+    sha256 = "1dmfpbpcvbx4sl4q1hwbfpalq1ml03w1cca7x40y18g570qk7aq5";
+  };
+  goPackagePath = "github.com/cortesi/modd";
+  subPackages = [ "cmd/modd" ];
+  goDeps = ./deps.nix;
+  meta = with stdenv.lib; {
+    description = "A flexible developer tool that runs processes and responds to filesystem changes";
+    homepage = https://github.com/cortesi/modd;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kierdavis ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/modd/deps.nix b/pkgs/development/tools/modd/deps.nix
new file mode 100644
index 000000000000..42190e655778
--- /dev/null
+++ b/pkgs/development/tools/modd/deps.nix
@@ -0,0 +1,138 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev =  "a0175ee3bccc567396460bf5acd36800cb10c49c";
+      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
+    };
+  }
+  {
+    goPackagePath  = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev =  "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a";
+      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
+    };
+  }
+  {
+    goPackagePath  = "github.com/bmatcuk/doublestar";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bmatcuk/doublestar";
+      rev =  "85a78806aa1b4707d1dbace9be592cf1ece91ab3";
+      sha256 = "01fd5j142pgsj5gfba43646aa6vd09fzvjhhik2r30nj4lsyy3z8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cortesi/moddwatch";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cortesi/moddwatch";
+      rev =  "d27f53de245eb09b9e475d498cc01c91ba8e89c8";
+      sha256 = "1ivxk6zxrc5rhd0p5kqi8jg58ql2mwdvrxvfzz8fkj1lxz975p9p";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cortesi/termlog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cortesi/termlog";
+      rev =  "87cefd5ac843f65364f70a1fd2477bb6437690e8";
+      sha256 = "1mygv1bv6dkm5p1wsvzrsyq771k6apdcxlyfqdp5ay8vl75jxvmb";
+    };
+  }
+  {
+    goPackagePath  = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev =  "3f9d52f7176a6927daacff70a3e8d1dc2025c53e";
+      sha256 = "165ww24x6ba47ji4j14mp3f006ksnmi53ws9280pgd2zcw91nbn8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev =  "167de6bfdfba052fa6b2d3664c8f5272e23c9072";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev =  "6ca4dbf54d38eea1a992b3c722a76a5d1c4cb25c";
+      sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+    };
+  }
+  {
+    goPackagePath  = "github.com/rjeczalik/notify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rjeczalik/notify";
+      rev =  "629144ba06a1c6af28c1e42c228e3d42594ce081";
+      sha256 = "0745w0mdr9xfr4rxw4pfr1sl8apc7wr7mvfykdl4wslq3mdj8a91";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev =  "505ab145d0a99da450461ae2c1a9f6cd10d1f447";
+      sha256 = "1vbsvcvmjz6c00p5vf8ls533p52fx2y3gy6v4k5qrdlzl4wf0i5s";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev =  "927f97764cc334a6575f4b7a1584a147864d5723";
+      sha256 = "0np7b766gb92vbm514yhdl7cjmqvn0dxdxskd84aas2ri1fkpgw5";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev =  "37e7f081c4d4c64e13b10787722085407fe5d15f";
+      sha256 = "1bb0mw6ckb1k7z8v3iil2qlqwfj408fvvp8m1cik2b46p7snyjhm";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev =  "b4a75ba826a64a70990f11a225237acd6ef35c9f";
+      sha256 = "0kzrd2wywkcq35iakbzplqyma4bvf2ng3mzi7917kxcbdq3fflrj";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/alecthomas/kingpin.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/kingpin";
+      rev =  "947dcec5ba9c011838740e680966fd7087a71d0d";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath  = "mvdan.cc/sh";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mvdan/sh";
+      rev =  "8aeb0734cd0f08b7a473c9ac816be8687ca909cc";
+      sha256 = "1mj8qfkyb6k490qjy3riq6pm440qajf5lc8m74x7xhq5059qkgxx";
+    };
+  }
+]
\ No newline at end of file
diff --git a/pkgs/development/tools/ocaml/camlp5/META b/pkgs/development/tools/ocaml/camlp5/META
deleted file mode 100644
index e13b108ff247..000000000000
--- a/pkgs/development/tools/ocaml/camlp5/META
+++ /dev/null
@@ -1,94 +0,0 @@
-# Specifications for the "camlp5" preprocessor:
-requires = ""
-version = "[distributed with Ocaml]"
-description = "Base for camlp5 syntax extensions"
-
-# For the toploop:
-archive(byte,toploop,camlp5o) = "camlp5o.cma"
-archive(byte,toploop,camlp5r) = "camlp5r.cma"
-
-# Scheme-like syntax:
-# Do #predicates "syntax,camlp5scheme", followed by #require "camlp5"
-archive(byte,toploop,camlp5scheme) = "camlp5sch.cma"
-
-# Standard ML-like syntax:
-# Do #predicates "syntax,camlp5sml", followed by #require "camlp5"
-archive(byte,toploop,camlp5sml) = "gramlib.cma camlp5_top.cma pa_sml.cmo"
-
-# Lisp-like syntax:
-# Do #predicates "syntax,camlp5lisp", followed by #require "camlp5"
-archive(byte,toploop,camlp5lisp) = "gramlib.cma camlp5_top.cma pa_lisp.cmo"
-
-# For the preprocessor itself:
-archive(syntax,preprocessor,camlp5o) = "pa_o.cmo pa_op.cmo pr_dump.cmo"
-archive(syntax,preprocessor,camlp5r) = "pa_r.cmo pa_rp.cmo pr_dump.cmo"
-archive(syntax,preprocessor,camlp5sml) = "pa_sml.cmo pr_dump.cmo"
-archive(syntax,preprocessor,camlp5scheme) = "pa_scheme.cmo pr_dump.cmo"
-archive(syntax,preprocessor,camlp5lisp) = "pa_lisp.cmo pr_dump.cmo"
-preprocessor = "camlp5 -nolib"
-
-package "gramlib" (
-  requires(toploop) = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Grammar library to create syntax extensions"
-  archive(byte) = "gramlib.cma"
-  archive(byte,toploop) = ""  # already contained in camlp5*.cma
-  archive(native) = "gramlib.cmxa"
-)
-
-package "quotations" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Quotations to create AST nodes"
-  archive(syntax,preprocessor) = "q_MLast.cmo"
-  archive(syntax,toploop) = "q_MLast.cmo"
-)
-
-package "phony_quotations" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Phony quotations"
-  archive(syntax,preprocessor) = "q_phony.cmo"
-  archive(syntax,toploop) = "q_phony.cmo"
-)
-
-package "extend" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: EXTEND the camlp5 grammar"
-  archive(syntax,preprocessor) = "pa_extend.cmo"
-  archive(syntax,toploop) = "pa_extend.cmo"
-)
-
-package "extfun" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Extensible functions"
-  archive(syntax,preprocessor) = "pa_extfun.cmo"
-  archive(syntax,toploop) = "pa_extfun.cmo"
-)
-
-package "fstream" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Functional stream parsers"
-  archive(syntax,preprocessor) = "pa_fstream.cmo"
-  archive(syntax,toploop) = "pa_fstream.cmo"
-)
-
-package "macro" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Conditional compilation"
-  archive(syntax,preprocessor) = "pa_macro.cmo"
-  archive(syntax,toploop) = "pa_macro.cmo"
-)
-
-package "unit_constraints" (
-  requires = "camlp5"
-  version = "[distributed with Ocaml]"
-  description = "Syntax extension: Type constraints of type unit (revised syntax only)"
-  archive(syntax,preprocessor,camlp5r) = "pa_ru.cmo"
-  archive(syntax,toploop,camlp5r) = "pa_ru.cmo"
-  error(syntax,-camlp5r) = "Not available"
-)
diff --git a/pkgs/development/tools/ocaml/camlp5/default.nix b/pkgs/development/tools/ocaml/camlp5/default.nix
index ca053138d800..efd6e562c29a 100644
--- a/pkgs/development/tools/ocaml/camlp5/default.nix
+++ b/pkgs/development/tools/ocaml/camlp5/default.nix
@@ -1,35 +1,16 @@
-{ stdenv, fetchzip, ocaml, legacy ? false }:
-
-let params =
-  if legacy then {
-    minor-version = "06";
-    sha256 = "02zg6qjkzx58zmp79364s5jyqhh56nclcz1jzhh53hk37g9f96qf";
-  } else {
-    minor-version = "07";
-    sha256 = "1c8v45553ccbqha2ypfranqlgw06rr5wjr2hlnrx5bf9jfq0h0dn";
-  };
-  metafile = ./META;
-  opt = stdenv.lib.optionalString legacy;
-in
+{ stdenv, fetchzip, ocaml }:
 
 stdenv.mkDerivation {
 
-  name = "camlp5-7.${params.minor-version}";
+  name = "camlp5-7.07";
 
   src = fetchzip {
-    url = "https://github.com/camlp5/camlp5/archive/rel7${params.minor-version}.tar.gz";
-    inherit (params) sha256;
+    url = "https://github.com/camlp5/camlp5/archive/rel707.tar.gz";
+    sha256 = "1c8v45553ccbqha2ypfranqlgw06rr5wjr2hlnrx5bf9jfq0h0dn";
   };
 
   buildInputs = [ ocaml ];
 
-  postPatch = opt ''
-    for p in compile/compile.sh config/Makefile.tpl test/Makefile test/check_ocaml_versions.sh
-    do
-      substituteInPlace $p --replace '/bin/rm' rm
-    done
-  '';
-
   prefixKey = "-prefix ";
 
   preConfigure = "configureFlagsArray=(--strict" +
@@ -37,8 +18,6 @@ stdenv.mkDerivation {
 
   buildFlags = "world.opt";
 
-  postInstall = opt "cp ${metafile} $out/lib/ocaml/${ocaml.version}/site-lib/camlp5/META";
-
   dontStrip = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/ocaml/dune/default.nix b/pkgs/development/tools/ocaml/dune/default.nix
index be7a488e96e8..632fe9fff325 100644
--- a/pkgs/development/tools/ocaml/dune/default.nix
+++ b/pkgs/development/tools/ocaml/dune/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, ocamlPackages, opaline }:
+{ stdenv, fetchurl, ocaml, findlib, opaline }:
 
 stdenv.mkDerivation rec {
   name = "dune-${version}";
-  version = "1.8.2";
+  version = "1.9.1";
   src = fetchurl {
     url = "https://github.com/ocaml/dune/releases/download/${version}/dune-${version}.tbz";
-    sha256 = "1lbgnmzdgb3cp2k2wfhhm5zwlm6dbipab49lh308y2qmh1q6yk6a";
+    sha256 = "0z4jnj0a5vxjqlwksplhag9b3s3iqdcpcpjjzfazv5jdl5cf58f9";
   };
 
-  buildInputs = with ocamlPackages; [ ocaml findlib ];
+  buildInputs = [ ocaml findlib ];
 
   buildFlags = "release";
 
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "A composable build system";
     maintainers = [ stdenv.lib.maintainers.vbgl ];
     license = stdenv.lib.licenses.mit;
-    inherit (ocamlPackages.ocaml.meta) platforms;
+    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/tools/ocaml/opaline/default.nix b/pkgs/development/tools/ocaml/opaline/default.nix
index 10088cce4912..fa5393c1871c 100644
--- a/pkgs/development/tools/ocaml/opaline/default.nix
+++ b/pkgs/development/tools/ocaml/opaline/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ocamlPackages }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.1";
+  version = "0.3.2";
   name = "opaline-${version}";
 
   src = fetchFromGitHub {
     owner = "jaapb";
     repo = "opaline";
     rev = "v${version}";
-    sha256 = "0vd5xaf272hk4iqfj347jvbppy7my5p5gz8yqpkvl1d1i6lzh08v";
+    sha256 = "1aj1fdqymq3pnr39h47hn3kxk5v9pnwx0jap1z2jzh78x970z21m";
   };
 
   buildInputs = with ocamlPackages; [ ocaml findlib ocamlbuild opam-file-format ];
diff --git a/pkgs/development/tools/ocaml/opam/1.2.2.nix b/pkgs/development/tools/ocaml/opam/1.2.2.nix
index 7e84719ae47d..ddd8d4b9920b 100644
--- a/pkgs/development/tools/ocaml/opam/1.2.2.nix
+++ b/pkgs/development/tools/ocaml/opam/1.2.2.nix
@@ -27,15 +27,15 @@ let
       sha256 = "8dc4dae9b1a81bb3a42abb283df785ba3eb00ade29b13875821c69f03e00680e";
     };
     cmdliner = fetchurl {
-      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-0.9.7.tbz";
+      url = "https://erratique.ch/software/cmdliner/releases/cmdliner-0.9.7.tbz";
       sha256 = "9c19893cffb5d3c3469ee0cce85e3eeeba17d309b33b9ace31aba06f68f0bf7a";
     };
     uutf = fetchurl {
-      url = "http://erratique.ch/software/uutf/releases/uutf-0.9.3.tbz";
+      url = "https://erratique.ch/software/uutf/releases/uutf-0.9.3.tbz";
       sha256 = "1f364f89b1179e5182a4d3ad8975f57389d45548735d19054845e06a27107877";
     };
     jsonm = fetchurl {
-      url = "http://erratique.ch/software/jsonm/releases/jsonm-0.9.1.tbz";
+      url = "https://erratique.ch/software/jsonm/releases/jsonm-0.9.1.tbz";
       sha256 = "3fd4dca045d82332da847e65e981d8b504883571d299a3f7e71447d46bc65f73";
     };
     opam = fetchurl {
diff --git a/pkgs/development/tools/ocaml/opam/default.nix b/pkgs/development/tools/ocaml/opam/default.nix
index b3e9e71ebc05..f844b369eb32 100644
--- a/pkgs/development/tools/ocaml/opam/default.nix
+++ b/pkgs/development/tools/ocaml/opam/default.nix
@@ -7,7 +7,7 @@ assert lib.versionAtLeast ocaml.version "4.02.3";
 let
   srcs = {
     cmdliner = fetchurl {
-      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-1.0.2.tbz";
+      url = "https://erratique.ch/software/cmdliner/releases/cmdliner-1.0.2.tbz";
       sha256 = "18jqphjiifljlh9jg8zpl6310p3iwyaqphdkmf89acyaix0s4kj1";
     };
     cppo = fetchurl {
@@ -55,13 +55,13 @@ let
       sha256 = "02lb2d9i12bxrz2ba5wygk2bycan316skqlyri0597q7j9210g8r";
     };
     opam = fetchurl {
-      url = "https://github.com/ocaml/opam/archive/2.0.2.zip";
-      sha256 = "0hxf0ns3si03rl7dxix7i30limbl50ffyvdyk9bqqms4ir8dcza6";
+      url = "https://github.com/ocaml/opam/archive/2.0.4.zip";
+      sha256 = "1312nc9s4h0vksiimz7jsv3zw17fa05p6mdx23s5sii0qspvnx8c";
     };
   };
 in stdenv.mkDerivation rec {
   name = "opam-${version}";
-  version = "2.0.2";
+  version = "2.0.4";
 
   buildInputs = [ unzip curl ncurses ocaml makeWrapper getconf ] ++ lib.optional stdenv.isLinux bubblewrap;
 
@@ -104,7 +104,7 @@ in stdenv.mkDerivation rec {
     makeWrapper $out/bin/.opam-wrapped $out/bin/opam \
       --argv0 "opam" \
       --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin:${lib.optionalString stdenv.isLinux "${bubblewrap}/bin:"}${getconf}/bin \
-      --set OPAM_USER_PATH_RO /run/current-system/sw/bin:/nix/store
+      --set OPAM_USER_PATH_RO /run/current-system/sw/bin:/nix/
     $out/bin/opam-installer --prefix=$installer opam-installer.install
   '';
 
@@ -117,4 +117,4 @@ in stdenv.mkDerivation rec {
     platforms = platforms.all;
   };
 }
-# Generated by: ./opam.nix.pl -v 2.0.2 -p opam-shebangs.patch
+# Generated by: ./opam.nix.pl -v 2.0.4 -p opam-shebangs.patch
diff --git a/pkgs/development/tools/ocaml/opam/opam.nix.pl b/pkgs/development/tools/ocaml/opam/opam.nix.pl
index 537997eb8a45..59a1cd223b5d 100755
--- a/pkgs/development/tools/ocaml/opam/opam.nix.pl
+++ b/pkgs/development/tools/ocaml/opam/opam.nix.pl
@@ -114,7 +114,7 @@ print <<'EOF';
     makeWrapper $out/bin/.opam-wrapped $out/bin/opam \
       --argv0 "opam" \
       --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin:${lib.optionalString stdenv.isLinux "${bubblewrap}/bin:"}${getconf}/bin \
-      --set OPAM_USER_PATH_RO /run/current-system/sw/bin:/nix/store
+      --set OPAM_USER_PATH_RO /run/current-system/sw/bin:/nix/
     $out/bin/opam-installer --prefix=$installer opam-installer.install
   '';
 
diff --git a/pkgs/development/tools/parsing/antlr/2.7.7.nix b/pkgs/development/tools/parsing/antlr/2.7.7.nix
index 0c67baa96010..a054bc82d45d 100644
--- a/pkgs/development/tools/parsing/antlr/2.7.7.nix
+++ b/pkgs/development/tools/parsing/antlr/2.7.7.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
       frameworks. From a grammar, ANTLR generates a parser that can build and
       walk parse trees.
     '';
-    homepage = http://www.antlr.org/;
+    homepage = https://www.antlr.org/;
     license = licenses.bsd3;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/tools/parsing/antlr/3.4.nix b/pkgs/development/tools/parsing/antlr/3.4.nix
index 8074b7c35ad9..ad0ebbdebba0 100644
--- a/pkgs/development/tools/parsing/antlr/3.4.nix
+++ b/pkgs/development/tools/parsing/antlr/3.4.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       frameworks. From a grammar, ANTLR generates a parser that can build and
       walk parse trees.
     '';
-    homepage = http://www.antlr.org/;
+    homepage = https://www.antlr.org/;
     license = licenses.bsd3;
     platforms = platforms.linux ++ platforms.darwin;
   };
diff --git a/pkgs/development/tools/parsing/antlr/3.5.nix b/pkgs/development/tools/parsing/antlr/3.5.nix
index 35179b336026..cf37287beff8 100644
--- a/pkgs/development/tools/parsing/antlr/3.5.nix
+++ b/pkgs/development/tools/parsing/antlr/3.5.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       frameworks. From a grammar, ANTLR generates a parser that can build and
       walk parse trees.
     '';
-    homepage = http://www.antlr.org/;
+    homepage = https://www.antlr.org/;
     license = licenses.bsd3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/development/tools/parsing/antlr/4.7.nix b/pkgs/development/tools/parsing/antlr/4.7.nix
index 1ebf7d7dfe24..40f9bf74ac40 100644
--- a/pkgs/development/tools/parsing/antlr/4.7.nix
+++ b/pkgs/development/tools/parsing/antlr/4.7.nix
@@ -27,7 +27,7 @@ let
 
       meta = with stdenv.lib; {
         description = "C++ target for ANTLR 4";
-        homepage = http://www.antlr.org/;
+        homepage = https://www.antlr.org/;
         license = licenses.bsd3;
         platforms = platforms.unix;
       };
@@ -73,7 +73,7 @@ let
         frameworks. From a grammar, ANTLR generates a parser that can build and
         walk parse trees.
       '';
-      homepage = http://www.antlr.org/;
+      homepage = https://www.antlr.org/;
       license = licenses.bsd3;
       platforms = platforms.unix;
     };
diff --git a/pkgs/development/tools/parsing/byacc/default.nix b/pkgs/development/tools/parsing/byacc/default.nix
index fc0c6c9ed8a1..ba1b8f27e7c8 100644
--- a/pkgs/development/tools/parsing/byacc/default.nix
+++ b/pkgs/development/tools/parsing/byacc/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Berkeley YACC";
-    homepage = http://invisible-island.net/byacc/byacc.html;
+    homepage = https://invisible-island.net/byacc/byacc.html;
     license = licenses.publicDomain;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/tools/pipenv/default.nix b/pkgs/development/tools/pipenv/default.nix
index 3deb7b9643c2..8083151ef81f 100644
--- a/pkgs/development/tools/pipenv/default.nix
+++ b/pkgs/development/tools/pipenv/default.nix
@@ -24,6 +24,7 @@ buildPythonApplication rec {
 
   makeWrapperArgs = [
     "--set PYTHONPATH \"$PYTHONPATH\""
+    "--set PIP_IGNORE_INSTALLED 1"
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/profiling/pyflame/default.nix b/pkgs/development/tools/profiling/pyflame/default.nix
index ede8499694d3..acb5d9d943cb 100644
--- a/pkgs/development/tools/profiling/pyflame/default.nix
+++ b/pkgs/development/tools/profiling/pyflame/default.nix
@@ -1,11 +1,12 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, coreutils, pkgconfig
+{ stdenv, autoreconfHook, coreutils, fetchFromGitHub, fetchpatch, pkgconfig
 # pyflame needs one python version per ABI
 # are currently supported
 # * 2.6 or 2.7 for 2.x ABI
 # * 3.4 or 3.5 for 3.{4,5} ABI
-# * 3.6        for 3.6+ ABI
-# if you want to disable support for some ABI, make the corresponding argument null
-, python2, python35, python36, python3
+# * 3.6        for 3.6 ABI
+# * 3.7        for 3.7+ ABI
+# to disable support for an ABI, make the corresponding argument null
+, python2, python35, python36, python37, python3
 }:
 stdenv.mkDerivation rec {
   pname = "pyflame";
@@ -17,8 +18,57 @@ stdenv.mkDerivation rec {
     sha256 = "0hz1ryimh0w8zyxx4y8chcn54d6b02spflj5k9rcg26an2chkg2w";
   };
 
+  # Uber's abandoned this since Jun 2018, so we have to patch a lot.
+  # Yay.
+  patches = let
+    # "Add support for Python3.7 (#151)":
+    py37-support = [ # https://github.com/uber/pyflame/pull/153
+      (fetchpatch { # "Add support for python3.7"
+        url = "https://github.com/uber/pyflame/commit/5ee674c4b09a29b82a0e2d7a4ce064fea3df1f4c.patch";
+        sha256 = "19v0yl8frbsq1dkvcmr1zsxf9v75bs8hvlkiv2x8cwylndvz2g5n";
+      })
+      (fetchpatch { # "Add python3.7 to travis test matrix"
+        url = "https://github.com/uber/pyflame/commit/610b5281502ff6d57471e84071f17a33d30f3bcf.patch";
+        sha256 = "13kwzrz0zwmdiirg061wvz7zvdl2w9dnrc81xbkxpm1hh8h0mi9z";
+      })
+      (fetchpatch { # "Update ppa and Ubuntu version"
+        url = "https://github.com/uber/pyflame/commit/ec82a43c90da64815a87d4e3fe2a12ec3c93dc38.patch";
+        sha256 = "1rrcsj5095ns5iyk6ij9kylv8hsrflxjld7b4s5dbpk8jqkf3ndi";
+      })
+      (fetchpatch { # "Clang-Format"
+        url = "https://github.com/uber/pyflame/commit/fb81e40398d6209c38d49d0b6758d9581b3c2bba.patch";
+        sha256 = "024namalrsai8ppl87lqsalfgd2fbqsnbkhpg8q93bvsdxldwc6r";
+      })
+    ];
+
+    # "Fix pyflame for code compiled with ld -z separate-code":
+    separate-code-support = [ # https://github.com/uber/pyflame/pull/170
+      (fetchpatch { # "Fix for code compiled with ld -z separate-code"
+        url = "https://github.com/uber/pyflame/commit/739a77d9b9abf9599f633d49c9ec98a201bfe058.patch";
+        sha256 = "03xhdysr5s73bw3a7nj2h45dylj9a4c1f1i3xqm1nngpd6arq4y6";
+      })
+    ];
+
+    # "Improve PtraceSeize error output"
+    full-ptrace-seize-errors = [ # https://github.com/uber/pyflame/pull/152
+      (fetchpatch { # "Print whole error output from PtraceSeize"
+        url = "https://github.com/uber/pyflame/commit/4b0e2c1b442b0f0c6ac5f56471359cea9886aa0f.patch";
+        sha256 = "0nkqs5zszf78cna0bavcdg18g7rdmn72li3091ygpkgxn77cnvis";
+      })
+      (fetchpatch { # "Print whole error for PtraceSeize"
+        url = "https://github.com/uber/pyflame/commit/1abb23abe4912c4a27553f0b3b5c934753f41f6d.patch";
+        sha256 = "07razp9rlq3s92j8a3iak3qk2h4x4xwz4y915h52ivvnxayscj89";
+      })
+    ];
+  in stdenv.lib.concatLists [
+    py37-support
+    # Without this, tests will leak memory and run forever.
+    separate-code-support
+    full-ptrace-seize-errors
+  ];
+
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ python36 python2 python35 ];
+  buildInputs = [ python37 python36 python2 python35 ];
 
   postPatch = ''
     patchShebangs .
@@ -32,29 +82,30 @@ stdenv.mkDerivation rec {
   '';
 
   postInstall = ''
-    install	-D utils/flame-chart-json $out/bin/flame-chart-json
+    install -D utils/flame-chart-json $out/bin/flame-chart-json
   '';
 
   doCheck = true;
   # reproduces the logic of their test script, but without downloading pytest
   # from the internet with pip
-  checkPhase = with stdenv.lib; concatMapStringsSep "\n" (python: ''
-    set -x
-    PYMAJORVERSION=${head (strings.stringToCharacters python.version)} \
-      PATH=${makeBinPath [ coreutils ]}\
-      PYTHONPATH= \
-      ${python.pkgs.pytest}/bin/pytest tests/
-    set +x
-  '') (filter (x: x!=null) buildInputs);
+  checkPhase = let inherit (stdenv) lib; in
+    lib.concatMapStringsSep "\n" (python: ''
+      set -x
+      PYMAJORVERSION=${lib.substring 0 1 python.version} \
+        PATH=${lib.makeBinPath [ coreutils ]}\
+        PYTHONPATH= \
+        ${python.pkgs.pytest}/bin/pytest tests/
+      set +x
+    '') (lib.filter (x: x != null) buildInputs);
 
   meta = with stdenv.lib; {
     description = "A ptracing profiler for Python ";
     longDescription = ''
-      Pyflame is a high performance profiling tool that generates flame graphs for
-      Python. Pyflame uses the Linux ptrace(2) system call to collect profiling
-      information. It can take snapshots of the Python call stack without
-      explicit instrumentation, meaning you can profile a program without
-      modifying its source code.
+      Pyflame is a high performance profiling tool that generates flame graphs
+      for Python. Pyflame uses the Linux ptrace(2) system call to collect
+      profiling information. It can take snapshots of the Python call stack
+      without explicit instrumentation, meaning you can profile a program
+      without modifying its source code.
     '';
     homepage = https://github.com/uber/pyflame;
     license = licenses.asl20;
diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix
index 296d45723b24..720544f4b6c6 100644
--- a/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/pkgs/development/tools/profiling/sysprof/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sysprof";
-  version = "3.30.2";
+  version = "3.32.0";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "02xsr3cxyws3cnbhvbxgcc9sn22mri3iv9d7f38pkg89lpjph279";
+    sha256 = "0kamsnnig56lzs4ziwcxm3b1xyis4z361s9nj3nca0c78sgac8pw";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/pyre/default.nix b/pkgs/development/tools/pyre/default.nix
index 7ae95679482f..b5dfe3c8bfd9 100644
--- a/pkgs/development/tools/pyre/default.nix
+++ b/pkgs/development/tools/pyre/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ocamlPackages, writeScript
-, dune, python3, rsync, buck, watchman }:
+, dune, python3, rsync, buck, watchman, sqlite }:
 let
   # Manually set version - the setup script requires
   # hg and git + keeping the .git directory around.
-  pyre-version = "0.0.20";  # also change typeshed revision below with $pyre-src/.typeshed-version
+  pyre-version = "0.0.22";  # also change typeshed revision below with $pyre-src/.typeshed-version
   pyre-src = fetchFromGitHub {
     owner = "facebook";
     repo = "pyre-check";
     rev = "v${pyre-version}";
-    sha256 = "1alkhdhvmigdhxvvarh0lr5s3b1s6q4arykip2dqb62vs8064s17";
+    sha256 = "057vy6zmgwsi0ag9n4m6sszhahmfk2s1ywm36nyfs7w4d0wnk92s";
   };
   versionFile = writeScript "version.ml" ''
     cat > "./version.ml" <<EOF
@@ -41,6 +41,8 @@ let
     ppxlib
     dune
     ounit
+    base64
+    sqlite.dev
     # python36Packages.python36Full # TODO
   ];
 
@@ -115,7 +117,16 @@ in python3.pkgs.buildPythonApplication rec {
 
   buildInputs = [ pyre-bin ];
   nativeBuildInputs = [ rsync ]; # only required for build-pypi-package.sh
-  propagatedBuildInputs = with python3.pkgs; [ docutils typeshed ];
+  propagatedBuildInputs = with python3.pkgs; [
+    docutils
+    typeshed
+    click-log
+    ipython
+    sqlalchemy
+    munch
+    xxhash
+    ujson
+  ];
   buildPhase = ''
     bash scripts/build-pypi-package.sh --version ${pyre-version} --bundle-typeshed ${typeshed}
     cp -r build/dist dist
diff --git a/pkgs/development/tools/quicktemplate/default.nix b/pkgs/development/tools/quicktemplate/default.nix
index e283c162092a..9292d124545a 100644
--- a/pkgs/development/tools/quicktemplate/default.nix
+++ b/pkgs/development/tools/quicktemplate/default.nix
@@ -2,15 +2,15 @@
 
 buildGoPackage rec {
   name = "quicktemplate-unstable-${version}";
-  version = "2018-11-26";
+  version = "2019-01-31";
   goPackagePath = "github.com/valyala/quicktemplate";
   goDeps = ./deps.nix;
 
   src = fetchFromGitHub {
     owner = "valyala";
     repo = "quicktemplate";
-    rev = "4c04039b1358b0f49af22a699f9193f05d80be40";
-    sha256 = "1qf7wpalk3n2jmcc2sw05cnwysl4rx986avykbfic5wq4fgxh9a5";
+    rev = "d08324ac14fa81325830fae7eb30188ec68427f8";
+    sha256 = "0gpc1kcqvcn1f9mz2dww8bhrspnsk2fgxzvx398vy7a0xhxq8vhx";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/quilt/default.nix b/pkgs/development/tools/quilt/default.nix
index 7986fb2b1341..d5059aa6b93b 100644
--- a/pkgs/development/tools/quilt/default.nix
+++ b/pkgs/development/tools/quilt/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
 
-  name = "quilt-0.65";
+  name = "quilt-0.66";
 
   src = fetchurl {
     url = "mirror://savannah/quilt/${name}.tar.gz";
-    sha256 = "06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn";
+    sha256 = "01vfvk4pqigahx82fhaaffg921ivd3k7rylz1yfvy4zbdyd32jri";
   };
 
   buildInputs = [ makeWrapper perl bash diffutils patch findutils diffstat ];
diff --git a/pkgs/development/tools/remarshal/default.nix b/pkgs/development/tools/remarshal/default.nix
index 6632d0626339..10bfd0c2f2d0 100644
--- a/pkgs/development/tools/remarshal/default.nix
+++ b/pkgs/development/tools/remarshal/default.nix
@@ -2,13 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "remarshal";
-  version = "0.8.0";
+  version = "0.9.1";
 
-  src = fetchFromGitHub {
-    owner  = "dbohdan";
-    repo   = "remarshal";
-    rev    = "v${version}";
-    sha256 = "192r1mfd5yj6kg6fqmkjngdlgn25g5rkvm0p6xaflpvavnhvhnsj";
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "564ffe9cbde85bd28a9c184b90c764abd2003abd6101a30802262198b5c7fc40";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/development/tools/rhc/Gemfile b/pkgs/development/tools/rhc/Gemfile
deleted file mode 100644
index a780461e254e..000000000000
--- a/pkgs/development/tools/rhc/Gemfile
+++ /dev/null
@@ -1,4 +0,0 @@
-source 'https://rubygems.org'
-
-gem 'archive-tar-minitar', '>= 0.5.2.1', github: 'peterhoeg/archive-tar-minitar'
-gem 'rhc'
diff --git a/pkgs/development/tools/rhc/Gemfile.lock b/pkgs/development/tools/rhc/Gemfile.lock
deleted file mode 100644
index 004c293b9655..000000000000
--- a/pkgs/development/tools/rhc/Gemfile.lock
+++ /dev/null
@@ -1,40 +0,0 @@
-GIT
-  remote: git://github.com/peterhoeg/archive-tar-minitar.git
-  revision: dae32ca550a87dba32597115ae18805db4782ebe
-  specs:
-    archive-tar-minitar (0.5.2.1)
-
-GEM
-  remote: https://rubygems.org/
-  specs:
-    commander (4.2.1)
-      highline (~> 1.6.11)
-    highline (1.6.21)
-    httpclient (2.6.0.1)
-    net-scp (1.2.1)
-      net-ssh (>= 2.6.5)
-    net-ssh (4.0.1)
-    net-ssh-gateway (2.0.0)
-      net-ssh (>= 4.0.0)
-    net-ssh-multi (1.2.1)
-      net-ssh (>= 2.6.5)
-      net-ssh-gateway (>= 1.2.0)
-    open4 (1.3.4)
-    rhc (1.38.7)
-      archive-tar-minitar
-      commander (>= 4.0, < 4.3.0)
-      highline (~> 1.6.11)
-      httpclient (>= 2.4.0, < 2.7.0)
-      net-scp (>= 1.1.2)
-      net-ssh-multi (>= 1.2.0)
-      open4
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  archive-tar-minitar (>= 0.5.2.1)!
-  rhc
-
-BUNDLED WITH
-   1.13.6
diff --git a/pkgs/development/tools/rhc/default.nix b/pkgs/development/tools/rhc/default.nix
deleted file mode 100644
index 46665e8b47ec..000000000000
--- a/pkgs/development/tools/rhc/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, bundlerEnv, ruby, stdenv, makeWrapper }:
-
-stdenv.mkDerivation rec {
-  name = "rhc-1.38.7";
-
-  env = bundlerEnv {
-    name = "rhc-1.38.7-gems";
-
-    inherit ruby;
-
-    gemdir = ./.;
-  };
-
-  buildInputs = [ makeWrapper ];
-
-  phases = [ "installPhase" ];
-
-  installPhase = ''
-    mkdir -p $out/bin
-    makeWrapper ${env}/bin/rhc $out/bin/rhc
-  '';
-
-  meta = with lib; {
-    broken = true; # requires ruby 2.2
-    homepage = https://github.com/openshift/rhc;
-    description = "OpenShift client tools";
-    license = licenses.asl20;
-    maintainers = [ maintainers.szczyp ];
-  };
-}
diff --git a/pkgs/development/tools/rhc/gemset.nix b/pkgs/development/tools/rhc/gemset.nix
deleted file mode 100644
index 933a7dc95afa..000000000000
--- a/pkgs/development/tools/rhc/gemset.nix
+++ /dev/null
@@ -1,84 +0,0 @@
-{
-  archive-tar-minitar = {
-    source = {
-      fetchSubmodules = false;
-      rev = "dae32ca550a87dba32597115ae18805db4782ebe";
-      sha256 = "0fvxacbcb52fm5dis451kdd7dv74z8p6nm4vnfqf7jg2aghcxdkd";
-      type = "git";
-      url = "git://github.com/peterhoeg/archive-tar-minitar.git";
-    };
-    version = "0.5.2.1";
-  };
-  commander = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1zwfhswnbhwv0zzj2b3s0qvpqijbbnmh7zvq6v0274rqbxyf1jwc";
-      type = "gem";
-    };
-    version = "4.2.1";
-  };
-  highline = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "06bml1fjsnrhd956wqq5k3w8cyd09rv1vixdpa3zzkl6xs72jdn1";
-      type = "gem";
-    };
-    version = "1.6.21";
-  };
-  httpclient = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0haz4s9xnzr73mkfpgabspj43bhfm9znmpmgdk74n6gih1xlrx1l";
-      type = "gem";
-    };
-    version = "2.6.0.1";
-  };
-  net-scp = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
-      type = "gem";
-    };
-    version = "1.2.1";
-  };
-  net-ssh = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "02xj3pcpqr32nlak0vsx71gd5z65jl3q1hwi2x157vabw1kgjanq";
-      type = "gem";
-    };
-    version = "4.0.1";
-  };
-  net-ssh-gateway = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1l3v761y32aw0n8lm0c0m42lr4ay8cq6q4sc5yc68b9fwlfvb70x";
-      type = "gem";
-    };
-    version = "2.0.0";
-  };
-  net-ssh-multi = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "13kxz9b6kgr9mcds44zpavbndxyi6pvyzyda6bhk1kfmb5c10m71";
-      type = "gem";
-    };
-    version = "1.2.1";
-  };
-  open4 = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1cgls3f9dlrpil846q0w7h66vsc33jqn84nql4gcqkk221rh7px1";
-      type = "gem";
-    };
-    version = "1.3.4";
-  };
-  rhc = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1yaq42szq81ph44q7ckzml9yrhz1pkjfik77rxvfzlf90l1g2ibk";
-      type = "gem";
-    };
-    version = "1.38.7";
-  };
-}
\ No newline at end of file
diff --git a/pkgs/development/tools/rust/cargo-bloat/default.nix b/pkgs/development/tools/rust/cargo-bloat/default.nix
new file mode 100644
index 000000000000..d3ded6e9f589
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-bloat/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-bloat";
+  version = "0.6.2";
+
+  src = fetchFromGitHub {
+    owner = "RazrFalcon";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wf86r1s9skv0m4gp66g388847309nw9z1h8gadfg2c5w5idh3fb";
+  };
+
+  cargoSha256 = "1mmfcvpwwi6fjb47fz1azrpdkg1x5p3qn5bx4p6dyjcs1fmpdbbq";
+
+  meta = with stdenv.lib; {
+    description = "A tool and Cargo subcommand that helps you find out what takes most of the space in your executable";
+    homepage = https://github.com/RazrFalcon/cargo-bloat;
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ xrelkd ];
+  };
+}
+
diff --git a/pkgs/development/tools/rust/cargo-expand/default.nix b/pkgs/development/tools/rust/cargo-expand/default.nix
new file mode 100644
index 000000000000..88fd212dad2e
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-expand";
+  version = "0.4.11";
+
+  src = fetchFromGitHub {
+    owner = "dtolnay";
+    repo = pname;
+    rev = version;
+    sha256 = "051hy2320mqdxvafhafwnk1n8q2sq2d7jyhx5bbxvqmjjm55lg8h";
+  };
+
+  cargoSha256 = "0d1j01nrq5j0yrgd85lnvg1mzalcd8xadkza3yvwnqzf554idrcy";
+
+  meta = with stdenv.lib; {
+    description = "A utility and Cargo subcommand designed to let people expand macros in their Rust source code";
+    homepage = https://github.com/dtolnay/cargo-expand;
+    license = with licenses; [ mit asl20 ];
+    platforms = platforms.all;
+    maintainers = with maintainers; [ xrelkd ];
+  };
+}
diff --git a/pkgs/development/tools/rust/cargo-xbuild/default.nix b/pkgs/development/tools/rust/cargo-xbuild/default.nix
new file mode 100644
index 000000000000..346323c955cf
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-xbuild/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-xbuild";
+  version = "0.5.8";
+
+  src = fetchFromGitHub {
+    owner = "rust-osdev";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1ckrvgdjwkxvy3rc6kix9maynn87al0n7lsjshc9mdmkyvvx8h55";
+  };
+
+  cargoSha256 = "077qiqm470iqcgxqjzbmzxikxd5862vyg788hacli4yzpvyaq9r9";
+
+  meta = with stdenv.lib; {
+    description = "Automatically cross-compiles the sysroot crates core, compiler_builtins, and alloc";
+    homepage = https://github.com/rust-osdev/cargo-xbuild;
+    license = with licenses; [ mit asl20 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/rust/pyo3-pack/default.nix b/pkgs/development/tools/rust/pyo3-pack/default.nix
index 05c57e46b893..a0e29a2f3a5f 100644
--- a/pkgs/development/tools/rust/pyo3-pack/default.nix
+++ b/pkgs/development/tools/rust/pyo3-pack/default.nix
@@ -5,16 +5,16 @@ let
   inherit (darwin.apple_sdk.frameworks) Security;
 in rustPlatform.buildRustPackage rec {
   name = "pyo3-pack-${version}";
-  version = "0.3.8";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "PyO3";
     repo = "pyo3-pack";
     rev = "v${version}";
-    sha256 = "14343209w7wphkqh7pnw08pah09spjbwhk6l548g9ivra057gwaz";
+    sha256 = "0577v8nqjbb7l7fqvac706bg9zrcp8fbh9ca1mkj44db12v02kgb";
   };
 
-  cargoSha256 = "0n7z9p3v92ijqc2ix60wi74as5rql61k5qbqi8b1b02b71xmsp7j";
+  cargoSha256 = "1xrzz8c2pfb70i7ynv5lw0d89r284kvhkgjh8z8pgyk1j79ixv2v";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/development/tools/rust/rustfmt/default.nix b/pkgs/development/tools/rust/rustfmt/default.nix
index dac00aa4c969..e1afeee34223 100644
--- a/pkgs/development/tools/rust/rustfmt/default.nix
+++ b/pkgs/development/tools/rust/rustfmt/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   name = "rustfmt-${version}";
-  version = "1.0.1";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rustfmt";
-    rev = "${version}";
-    sha256 = "1l18ycbq3125sq8v3wgma630wd6kclarlf8f51cmi9blk322jg9p";
+    rev = "v${version}";
+    sha256 = "153pas7d5fchkmiw6mkbhn75lv3y69k85spzmm5i4lqnq7f0yqap";
   };
 
-  cargoSha256 = "1557783icdzlwn02c5zl4362yl85r5zj4nkjv80p6896yli9hk9h";
+  cargoSha256 = "08x6vy5v2vgrk3gsw3qcvv52a7hifsgcsnsg1phlk1ikaff21y4z";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
 
@@ -29,6 +29,7 @@ rustPlatform.buildRustPackage rec {
     homepage = https://github.com/rust-lang-nursery/rustfmt;
     license = with licenses; [ mit asl20 ];
     maintainers = [ maintainers.globin ];
+    broken = stdenv.isDarwin;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/tools/scalafmt/default.nix b/pkgs/development/tools/scalafmt/default.nix
index 40ed7f44d8c3..db3a2af8f5b5 100644
--- a/pkgs/development/tools/scalafmt/default.nix
+++ b/pkgs/development/tools/scalafmt/default.nix
@@ -2,18 +2,18 @@
 
 let
   baseName = "scalafmt";
-  version = "1.5.1";
+  version = "2.0.0-RC5";
   deps = stdenv.mkDerivation {
     name = "${baseName}-deps-${version}";
     buildCommand = ''
       export COURSIER_CACHE=$(pwd)
-      ${coursier}/bin/coursier fetch com.geirsson:scalafmt-cli_2.12:${version} > deps
+      ${coursier}/bin/coursier fetch org.scalameta:scalafmt-cli_2.12:${version} > deps
       mkdir -p $out/share/java
       cp $(< deps) $out/share/java/
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "15xfys9wdlx3rrqb2ab6qcfngkf6sa8v8q8shh10kk8jrc30g6dk";
+    outputHash     = "0y2nja4dj3l7f7m9dxr8xwda8vv27dwj090gfsa78a20vq1d3xxw";
   };
 in
 stdenv.mkDerivation rec {
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Opinionated code formatter for Scala";
-    homepage = http://scalafmt.org;
+    homepage = http://scalameta.org/scalafmt;
     license = licenses.asl20;
     maintainers = [ maintainers.markus1189 ];
   };
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index b1f8af2491c5..3d08a6b787d8 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,9 +2,9 @@
 
 buildGoPackage rec {
   name = "skaffold-${version}";
-  version = "0.25.0";
+  version = "0.26.0";
   # rev is the 0.25.0 commit, mainly for skaffold version command output
-  rev = "0f4b8fe88969e9fa38346934ea6af7c46772d603";
+  rev = "d88680e9ede62da65500702670ef72fc9272a06f";
 
   goPackagePath = "github.com/GoogleContainerTools/skaffold";
   subPackages = ["cmd/skaffold"];
@@ -20,7 +20,7 @@ buildGoPackage rec {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "0adcim029w64494sb3cw14xhv2vf33l8vhwm2wz8mnmr402nbvkx";
+    sha256 = "151x7hs1876ij5kc1xlm1m7pyff6i22ddhfvjsgwb8sjl4h1ays5";
   };
 
   meta = {
diff --git a/pkgs/development/tools/sourcetrail/default.nix b/pkgs/development/tools/sourcetrail/default.nix
index 2182f8697aab..42042b87198d 100644
--- a/pkgs/development/tools/sourcetrail/default.nix
+++ b/pkgs/development/tools/sourcetrail/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   name = "sourcetrail-${version}";
-  version = "2018.3.55";
+  version = "2019.1.11";
 
   src = fetchurl {
     name = "sourtrail.tar.gz";
     url = "https://www.sourcetrail.com/downloads/${version}/linux/64bit";
-    sha256 = "6f5fbbecc221e7165ecbf1c4d208e302dade4feea9d43eb3265521efc0a376e2";
+    sha256 = "09f3qdgdqg6dlai43050qh4iv1d4j43isk81q68swalpnvjn72w0";
   };
 
   nativeBuildInputs = [ autoPatchelfHook ];
diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix
index 5100b3624c42..c9df2703daa5 100644
--- a/pkgs/development/tools/spirv-tools/default.nix
+++ b/pkgs/development/tools/spirv-tools/default.nix
@@ -1,38 +1,25 @@
-{ stdenv, fetchFromGitHub, cmake, python }:
-
+{ stdenv, fetchFromGitHub, cmake, python, spirv-headers }:
 let
-
-spirv_sources = {
-  # `glslang` requires a specific version of `spirv-tools` and `spirv-headers` as specified in `known-good.json`.
-  tools = fetchFromGitHub {
-    owner = "KhronosGroup";
-    repo = "SPIRV-Tools";
-    rev = "9bfe0eb25e3dfdf4f3fd86ab6c0cda009c9bd661";
-    sha256 = "1spfii4zib1lmz40vnz1d1cr6is7q2n7rvar1vfzi33gwrn8rqhi";
-  };
-  headers = fetchFromGitHub {
-    owner = "KhronosGroup";
-    repo = "SPIRV-Headers";
-    rev = "d5b2e1255f706ce1f88812217e9a554f299848af";
-    sha256 = "18530mpa030ckjhn78z9vbfd35l5jgh3mg22ra6k8gw8zx4wjhsl";
-  };
-};
-
+  # Update spirv-headers rev in lockstep according to DEPs file
+  version = "2019.1";
 in
 
+assert version == spirv-headers.version;
 stdenv.mkDerivation rec {
   name = "spirv-tools-${version}";
-  version = "2018-09-20";
+  inherit version;
 
-  src = spirv_sources.tools;
-  patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "SPIRV-Tools";
+    rev = "v${version}";
+    sha256 = "0vddjzhkrhrm3l3i57nxmq2smv3r1s0ka5ff2kziaahr4hqb479r";
+  };
   enableParallelBuilding = true;
 
   buildInputs = [ cmake python ];
 
-  passthru = {
-    headers = spirv_sources.headers;
-  };
+  cmakeFlags = [ "-DSPIRV-Headers_SOURCE_DIR=${spirv-headers.src}" ];
 
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
diff --git a/pkgs/development/tools/stagit/default.nix b/pkgs/development/tools/stagit/default.nix
index ad23ed7e9dc4..21068a8b05f6 100644
--- a/pkgs/development/tools/stagit/default.nix
+++ b/pkgs/development/tools/stagit/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "stagit-${version}";
-  version = "0.6";
+  version = "0.9.1";
 
   src = fetchgit {
     url = git://git.codemadness.org/stagit;
     rev = version;
-    sha256 = "1xwjdqkf5akxa66ak7chd9gna89kgbdzjrpx4ch7f770ycp2s5sr";
+    sha256 = "0gh28spkry9wbmdj0hmvz3680fvbyzab9cifhj1p76f4fz27rnv9";
   };
 
   makeFlags = "PREFIX=$(out)";
diff --git a/pkgs/development/tools/statik/default.nix b/pkgs/development/tools/statik/default.nix
new file mode 100644
index 000000000000..0ad7d7f78d4a
--- /dev/null
+++ b/pkgs/development/tools/statik/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "statik-unstable-${version}";
+  version = "2018-11-28";
+  goPackagePath = "github.com/rakyll/statik";
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "rakyll";
+    repo = "statik";
+    rev = "79258177a57a85a8ab2eca7ce0936aad80307f4e";
+    sha256 = "14wqh38a7dhm2jgr1lsl2wdvjmkgdapzl2z4a1vl7ncv3x43gkg5";
+  };
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/rakyll/statik";
+    description = "Embed files into a Go executable ";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ chiiruno ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/statik/deps.nix b/pkgs/development/tools/statik/deps.nix
new file mode 100644
index 000000000000..0429d8876b29
--- /dev/null
+++ b/pkgs/development/tools/statik/deps.nix
@@ -0,0 +1,3 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
+[
+]
diff --git a/pkgs/development/tools/trellis/default.nix b/pkgs/development/tools/trellis/default.nix
index eeef99991db8..a348e295933e 100644
--- a/pkgs/development/tools/trellis/default.nix
+++ b/pkgs/development/tools/trellis/default.nix
@@ -8,14 +8,14 @@ let
 in
 stdenv.mkDerivation rec {
   name = "trellis-${version}";
-  version = "2019.02.21";
+  version = "2019.04.22";
 
   srcs = [
     (fetchFromGitHub {
        owner  = "symbiflow";
        repo   = "prjtrellis";
-       rev    = "90910577671cdd950e56df6cb29d848dadea9467";
-       sha256 = "0j5gnkqfkp8k01wmzsplg713dmw1zvg04hsy33bzbyxaqviybdip";
+       rev    = "5eb0ad870f30422b95d090ac9a476343809c62b9";
+       sha256 = "10jkjfhqdr2bff41mh3w8a7kszf2whqqgk5s1z5z07mlh6zfdjlg";
        name   = "trellis";
      })
     (fetchFromGitHub {
diff --git a/pkgs/development/tools/unity3d/default.nix b/pkgs/development/tools/unity3d/default.nix
index f962ef54b028..126ece257801 100644
--- a/pkgs/development/tools/unity3d/default.nix
+++ b/pkgs/development/tools/unity3d/default.nix
@@ -1,9 +1,10 @@
 { stdenv, lib, fetchurl, makeWrapper, file, getopt
-, gtk2, gdk_pixbuf, glib, libGL, libGLU, nss, nspr, udev, tbb
+, gtk2, gtk3, gdk_pixbuf, glib, libGL, libGLU, nss, nspr, udev, tbb
 , alsaLib, GConf, cups, libcap, fontconfig, freetype, pango
 , cairo, dbus, expat, zlib, libpng12, nodejs, gnutar, gcc, gcc_32bit
 , libX11, libXcursor, libXdamage, libXfixes, libXrender, libXi
 , libXcomposite, libXext, libXrandr, libXtst, libSM, libICE, libxcb, chromium
+, libpqxx
 }:
 
 let
@@ -13,20 +14,21 @@ let
     cairo dbus expat zlib libpng12 udev tbb
     libX11 libXcursor libXdamage libXfixes libXrender libXi
     libXcomposite libXext libXrandr libXtst libSM libICE libxcb
+    libpqxx gtk3 
   ];
   libPath32 = lib.makeLibraryPath [ gcc_32bit.cc ];
   binPath = lib.makeBinPath [ nodejs gnutar ];
 
-  ver = "2017.4.10";
-  build = "f1";
+  ver = "2018.3.0";
+  build = "f2";
 
 in stdenv.mkDerivation rec {
   name = "unity-editor-${version}";
   version = "${ver}x${build}";
 
   src = fetchurl {
-    url = "https://beta.unity3d.com/download/14396d76537e/LinuxEditorInstaller/Unity.tar.xz";
-    sha256 = "e1b4fe41c0ff793f7a9146c49a8eca8c71d30abdfa3e81922bd69699810b3f67";
+  	url = "https://beta.unity3d.com/download/6e9a27477296/LinuxEditorInstaller/Unity.tar.xz";
+    sha1 = "083imikkrgha5w9sihjvv1m74naxm5yv";
   };
 
   nosuidLib = ./unity-nosuid.c;
@@ -79,7 +81,8 @@ in stdenv.mkDerivation rec {
       fi
     }
 
-    upm_linux=$unitydir/Data/Resources/Upm/upm-linux
+    upm_linux=$unitydir/Data/Resources/PackageManager/Server/UnityPackageManager
+    
 
     orig_size=$(stat --printf=%s $upm_linux)
 
@@ -132,6 +135,6 @@ in stdenv.mkDerivation rec {
     '';
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ jb55 ];
+    maintainers = with maintainers; [ jb55 tesq0 ];
   };
 }
diff --git a/pkgs/development/tools/valadoc/default.nix b/pkgs/development/tools/valadoc/default.nix
index a36e251a4a28..ebeb81c90ec5 100644
--- a/pkgs/development/tools/valadoc/default.nix
+++ b/pkgs/development/tools/valadoc/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, gnome3, automake, autoconf, which, libtool, pkgconfig, graphviz, glib, gobject-introspection, expat}:
 stdenv.mkDerivation rec {
-  version = "0.36.1";
+  version = "0.36.2";
   name = "valadoc-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/valadoc/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "07501k2j9c016bd7rfr6xzaxdplq7j9sd18b5ixbqdbipvn6whnv";
+    sha256 = "0hfaskbm7y4z4jf6lxm8hg4c0b8621qn1gchxjxcngq0cpx79z9h";
   };
 
   nativeBuildInputs = [ automake autoconf which gnome3.vala libtool pkgconfig gobject-introspection ];
diff --git a/pkgs/development/tools/vulkan-validation-layers/default.nix b/pkgs/development/tools/vulkan-validation-layers/default.nix
index c76c670739e1..702b7a564b22 100644
--- a/pkgs/development/tools/vulkan-validation-layers/default.nix
+++ b/pkgs/development/tools/vulkan-validation-layers/default.nix
@@ -1,16 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, writeText, python3
+{ stdenv, callPackage, fetchFromGitHub, cmake, writeText, python3
 , vulkan-headers, vulkan-loader, glslang
 , pkgconfig, xlibsWrapper, libxcb, libXrandr, wayland }:
-
 stdenv.mkDerivation rec {
   name = "vulkan-validation-layers-${version}";
-  version = "1.1.85.0";
+  version = "1.1.101.0"; # WARNING: glslang overrides in all-packages.nix must be updated to match known-good.json!
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-ValidationLayers";
     rev = "sdk-${version}";
-    sha256 = "1y5ny587h62139fxnz760hsyv1dmw29m1a9vq096sn8qafh3jzbz";
+    sha256 = "00gz72m393i3m3rh5hv9d0znzlz39cpw35ifchzb4cr11bi4mzyz";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/yarn2nix/bin/yarn2nix.js b/pkgs/development/tools/yarn2nix/bin/yarn2nix.js
deleted file mode 100755
index 3eadea559032..000000000000
--- a/pkgs/development/tools/yarn2nix/bin/yarn2nix.js
+++ /dev/null
@@ -1,144 +0,0 @@
-#!/usr/bin/env node
-"use strict";
-
-const crypto = require('crypto');
-const fs = require("fs");
-const https = require("https");
-const path = require("path");
-const util = require("util");
-
-const lockfile = require("@yarnpkg/lockfile")
-const docopt = require("docopt").docopt;
-
-////////////////////////////////////////////////////////////////////////////////
-
-const USAGE = `
-Usage: yarn2nix [options]
-
-Options:
-  -h --help        Shows this help.
-  --no-nix         Hide the nix output
-  --no-patch       Don't patch the lockfile if hashes are missing
-  --lockfile=FILE  Specify path to the lockfile [default: ./yarn.lock].
-`
-
-const HEAD = `
-{fetchurl, linkFarm}: rec {
-  offline_cache = linkFarm "offline" packages;
-  packages = [
-`.trim();
-
-////////////////////////////////////////////////////////////////////////////////
-
-function generateNix(lockedDependencies) {
-  let found = {};
-
-  console.log(HEAD)
-
-  for (var depRange in lockedDependencies) {
-    let dep = lockedDependencies[depRange];
-
-    let depRangeParts = depRange.split('@');
-    let [url, sha1] = dep["resolved"].split("#");
-    let file_name = path.basename(url)
-
-    if (found.hasOwnProperty(file_name)) {
-      continue;
-    } else {
-      found[file_name] = null;
-    }
-
-
-    console.log(`
-    {
-      name = "${file_name}";
-      path = fetchurl {
-        name = "${file_name}";
-        url  = "${url}";
-        sha1 = "${sha1}";
-      };
-    }`)
-  }
-
-  console.log("  ];")
-  console.log("}")
-}
-
-
-function getSha1(url) {
-  return new Promise((resolve, reject) => {
-    https.get(url, (res) => {
-      const { statusCode } = res;
-      const hash = crypto.createHash('sha1');
-      if (statusCode !== 200) {
-        const err = new Error('Request Failed.\n' +
-                          `Status Code: ${statusCode}`);
-        // consume response data to free up memory
-        res.resume();
-        reject(err);
-      }
-
-      res.on('data', (chunk) => { hash.update(chunk); });
-      res.on('end', () => { resolve(hash.digest('hex')) });
-      res.on('error', reject);
-    });
-  });
-};
-
-function updateResolvedSha1(pkg) {
-  // local dependency
-  if (!pkg.resolved) { return Promise.resolve(); }
-  let [url, sha1] = pkg.resolved.split("#", 2)
-  if (!sha1) {
-    return new Promise((resolve, reject) => {
-      getSha1(url).then(sha1 => {
-        pkg.resolved = `${url}#${sha1}`;
-        resolve();
-      }).catch(reject);
-    });
-  } else {
-    // nothing to do
-    return Promise.resolve();
-  };
-}
-
-function values(obj) {
-  var entries = [];
-  for (let key in obj) {
-    entries.push(obj[key]);
-  }
-  return entries;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-// Main
-////////////////////////////////////////////////////////////////////////////////
-
-var options = docopt(USAGE);
-
-let data = fs.readFileSync(options['--lockfile'], 'utf8')
-let json = lockfile.parse(data)
-if (json.type != "success") {
-  throw new Error("yarn.lock parse error")
-}
-
-// Check fore missing hashes in the yarn.lock and patch if necessary
-var pkgs = values(json.object);
-Promise.all(pkgs.map(updateResolvedSha1)).then(() => {
-  let newData = lockfile.stringify(json.object);
-
-  if (newData != data) {
-    console.error("found changes in the lockfile", options["--lockfile"]);
-
-    if (options["--no-patch"]) {
-      console.error("...aborting");
-      process.exit(1);
-    }
-
-    fs.writeFileSync(options['--lockfile'], newData);
-  }
-
-  if (!options['--no-nix']) {
-    generateNix(json.object);
-  }
-})
diff --git a/pkgs/development/tools/yarn2nix/default.nix b/pkgs/development/tools/yarn2nix/default.nix
deleted file mode 100644
index e86c0aac2c99..000000000000
--- a/pkgs/development/tools/yarn2nix/default.nix
+++ /dev/null
@@ -1,199 +0,0 @@
-{ stdenv, lib, fetchurl, linkFarm, runCommand, nodejs, yarn }:
-
-let
-  unlessNull = item: alt:
-    if item == null then alt else item;
-
-  yarn2nix = mkYarnPackage {
-    src = ./.;
-    yarnNix = ./yarn.nix;
-
-    passthru = {
-      inherit
-        defaultYarnFlags
-        linkNodeModulesHook
-        mkYarnModules
-        mkYarnNix
-        mkYarnPackage
-        # Export yarn again to make it easier to find out which yarn was used.
-        yarn
-        ;
-    };
-
-    meta = with lib; {
-      description = "generate nix expressions from a yarn.lock file";
-      homepage = "https://github.com/moretea/yarn2nix";
-      license = licenses.gpl3;
-      maintainers = with maintainers; [ manveru zimbatm ];
-    };
-  };
-
-  # Generates the yarn.nix from the yarn.lock file
-  mkYarnNix = yarnLock:
-    runCommand "yarn.nix" {}
-      "${yarn2nix}/bin/yarn2nix --lockfile ${yarnLock} --no-patch > $out";
-
-  # Loads the generated offline cache. This will be used by yarn as
-  # the package source.
-  importOfflineCache = yarnNix:
-    let
-      pkg = import yarnNix { inherit fetchurl linkFarm; };
-    in
-      pkg.offline_cache;
-
-  defaultYarnFlags = [
-    "--offline"
-    "--frozen-lockfile"
-    "--ignore-engines"
-    "--ignore-scripts"
-  ];
-
-  mkYarnModules = {
-    name,
-    packageJSON,
-    yarnLock,
-    yarnNix ? mkYarnNix yarnLock,
-    yarnFlags ? defaultYarnFlags,
-    pkgConfig ? {},
-    preBuild ? "",
-  }:
-    let
-      offlineCache = importOfflineCache yarnNix;
-      extraBuildInputs = (lib.flatten (builtins.map (key:
-        pkgConfig.${key} . buildInputs or []
-      ) (builtins.attrNames pkgConfig)));
-      postInstall = (builtins.map (key:
-        if (pkgConfig.${key} ? postInstall) then
-          ''
-            for f in $(find -L -path '*/node_modules/${key}' -type d); do
-              (cd "$f" && (${pkgConfig.${key}.postInstall}))
-            done
-          ''
-        else
-          ""
-      ) (builtins.attrNames pkgConfig));
-    in
-    stdenv.mkDerivation {
-      inherit name preBuild;
-      phases = ["configurePhase" "buildPhase"];
-      buildInputs = [ yarn nodejs ] ++ extraBuildInputs;
-
-      configurePhase = ''
-        # Yarn writes cache directories etc to $HOME.
-        export HOME=$PWD/yarn_home
-      '';
-
-      buildPhase = ''
-        runHook preBuild
-
-        cp ${packageJSON} ./package.json
-        cp ${yarnLock} ./yarn.lock
-        chmod +w ./yarn.lock
-
-        yarn config --offline set yarn-offline-mirror ${offlineCache}
-
-        # Do not look up in the registry, but in the offline cache.
-        # TODO: Ask upstream to fix this mess.
-        sed -i -E 's|^(\s*resolved\s*")https?://.*/|\1|' yarn.lock
-        yarn install ${lib.escapeShellArgs yarnFlags}
-
-        ${lib.concatStringsSep "\n" postInstall}
-
-        mkdir $out
-        mv node_modules $out/
-        patchShebangs $out
-      '';
-    };
-
-  # This can be used as a shellHook in mkYarnPackage. It brings the built node_modules into
-  # the shell-hook environment.
-  linkNodeModulesHook = ''
-    if [[ -d node_modules || -L node_modules ]]; then
-      echo "./node_modules is present. Replacing."
-      rm -rf node_modules
-    fi
-
-    ln -s "$node_modules" node_modules
-  '';
-
-  mkYarnPackage = {
-    name ? null,
-    src,
-    packageJSON ? src + "/package.json",
-    yarnLock ? src + "/yarn.lock",
-    yarnNix ? mkYarnNix yarnLock,
-    yarnFlags ? defaultYarnFlags,
-    yarnPreBuild ? "",
-    pkgConfig ? {},
-    extraBuildInputs ? [],
-    publishBinsFor ? null,
-    ...
-  }@attrs:
-    let
-      package = lib.importJSON packageJSON;
-      pname = package.name;
-      version = package.version;
-      deps = mkYarnModules {
-        name = "${pname}-modules-${version}";
-        preBuild = yarnPreBuild;
-        inherit packageJSON yarnLock yarnNix yarnFlags pkgConfig;
-      };
-      publishBinsFor_ = unlessNull publishBinsFor [pname];
-    in stdenv.mkDerivation (builtins.removeAttrs attrs ["pkgConfig"] // {
-      inherit src;
-
-      name = unlessNull name "${pname}-${version}";
-
-      buildInputs = [ yarn nodejs ] ++ extraBuildInputs;
-
-      node_modules = deps + "/node_modules";
-
-      configurePhase = attrs.configurePhase or ''
-        runHook preConfigure
-
-        if [ -d npm-packages-offline-cache ]; then
-          echo "npm-pacakges-offline-cache dir present. Removing."
-          rm -rf npm-packages-offline-cache
-        fi
-
-        if [[ -d node_modules || -L node_modules ]]; then
-          echo "./node_modules is present. Removing."
-          rm -rf node_modules
-        fi
-
-        mkdir -p node_modules
-        ln -s $node_modules/* node_modules/
-        ln -s $node_modules/.bin node_modules/
-
-        if [ -d node_modules/${pname} ]; then
-          echo "Error! There is already an ${pname} package in the top level node_modules dir!"
-          exit 1
-        fi
-
-        runHook postConfigure
-      '';
-
-      # Replace this phase on frontend packages where only the generated
-      # files are an interesting output.
-      installPhase = attrs.installPhase or ''
-        runHook preInstall
-
-        mkdir -p $out
-        cp -r node_modules $out/node_modules
-        cp -r . $out/node_modules/${pname}
-        rm -rf $out/node_modules/${pname}/node_modules
-
-        mkdir $out/bin
-        node ${./fixup_bin.js} $out ${lib.concatStringsSep " " publishBinsFor_}
-
-        runHook postInstall
-      '';
-
-      passthru = {
-        inherit package deps;
-      } // (attrs.passthru or {});
-
-      # TODO: populate meta automatically
-    });
-in
-  yarn2nix
diff --git a/pkgs/development/tools/yarn2nix/fixup_bin.js b/pkgs/development/tools/yarn2nix/fixup_bin.js
deleted file mode 100644
index dab1759c2046..000000000000
--- a/pkgs/development/tools/yarn2nix/fixup_bin.js
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env node
-"use strict";
-
-/* Usage:
- * node fixup_bin.js <output_dir> [<bin_pkg_1>, <bin_pkg_2> ... ]
- */
-
-const fs = require("fs");
-const path = require("path");
-
-const output = process.argv[2];
-const packages_to_publish_bin = process.argv.slice(3);
-const derivation_bin_path = output + "/bin";
-
-function processPackage(name) {
-  console.log("Processing ", name);
-  const package_path = output + "/node_modules/" + name;
-  const package_json_path = package_path + "/package.json";
-  const package_json = JSON.parse(fs.readFileSync(package_json_path));
-
-  if (!package_json.bin) {
-    console.log("No binaries provided");
-    return;
-  }
-
-  // There are two alternative syntaxes for `bin`
-  // a) just a plain string, in which case the name of the package is the name of the binary.
-  // b) an object, where key is the name of the eventual binary, and the value the path to that binary.
-  if (typeof package_json.bin == "string") {
-    let bin_name = package_json.bin;
-    package_json.bin = { };
-    package_json.bin[package_json.name] = bin_name;
-  }
-
-  for (let binName in package_json.bin) {
-    const bin_path = package_json.bin[binName];
-    const full_bin_path = path.normalize(package_path + "/" + bin_path);
-    fs.symlinkSync(full_bin_path, derivation_bin_path + "/"+ binName);
-    console.log("Linked", binName);
-  }
-}
-
-packages_to_publish_bin.forEach((pkg) => {
-  processPackage(pkg);
-});
diff --git a/pkgs/development/tools/yarn2nix/package.json b/pkgs/development/tools/yarn2nix/package.json
deleted file mode 100644
index 130eee67c560..000000000000
--- a/pkgs/development/tools/yarn2nix/package.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "yarn2nix",
-  "version": "1.0.0",
-  "description": "Convert packages.json and yarn.lock into a Nix expression that downloads all the dependencies",
-  "main": "index.js",
-  "repository": ".",
-  "author": "Maarten Hoogendoorn <maarten@moretea.nl>",
-  "license": "MIT",
-  "scripts": {
-    "yarn2nix": "bin/yarn2nix.js"
-  },
-  "bin": {
-    "yarn2nix": "bin/yarn2nix.js"
-  },
-  "dependencies": {
-    "@yarnpkg/lockfile": "^1.0.0",
-    "docopt": "^0.6.2"
-  }
-}
diff --git a/pkgs/development/tools/yarn2nix/yarn.lock b/pkgs/development/tools/yarn2nix/yarn.lock
deleted file mode 100644
index 976d2c530e1e..000000000000
--- a/pkgs/development/tools/yarn2nix/yarn.lock
+++ /dev/null
@@ -1,11 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@yarnpkg/lockfile@^1.0.0":
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.0.tgz#33d1dbb659a23b81f87f048762b35a446172add3"
-
-docopt@^0.6.2:
-  version "0.6.2"
-  resolved "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz#b28e9e2220da5ec49f7ea5bb24a47787405eeb11"
\ No newline at end of file
diff --git a/pkgs/development/tools/yarn2nix/yarn.nix b/pkgs/development/tools/yarn2nix/yarn.nix
deleted file mode 100644
index a9e42e7d986c..000000000000
--- a/pkgs/development/tools/yarn2nix/yarn.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{fetchurl, linkFarm}: rec {
-  offline_cache = linkFarm "offline" packages;
-  packages = [
-
-    {
-      name = "lockfile-1.0.0.tgz";
-      path = fetchurl {
-        name = "lockfile-1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.0.tgz";
-        sha1 = "33d1dbb659a23b81f87f048762b35a446172add3";
-      };
-    }
-
-    {
-      name = "docopt-0.6.2.tgz";
-      path = fetchurl {
-        name = "docopt-0.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz";
-        sha1 = "b28e9e2220da5ec49f7ea5bb24a47787405eeb11";
-      };
-    }
-  ];
-}
diff --git a/pkgs/development/tools/yuicompressor/default.nix b/pkgs/development/tools/yuicompressor/default.nix
index 44edf443c110..c157ddd65a87 100644
--- a/pkgs/development/tools/yuicompressor/default.nix
+++ b/pkgs/development/tools/yuicompressor/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "2.4.8";
   
   src = fetchurl {
-    url = "http://github.com/yui/yuicompressor/releases/download/v${version}/${name}.jar";
+    url = "https://github.com/yui/yuicompressor/releases/download/v${version}/${name}.jar";
     sha256 = "1qjxlak9hbl9zd3dl5ks0w4zx5z64wjsbk7ic73r1r45fasisdrh";
   };