summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/audio/bsequencer/default.nix6
-rw-r--r--pkgs/applications/audio/bslizr/default.nix4
-rw-r--r--pkgs/applications/audio/helm/default.nix6
-rw-r--r--pkgs/applications/audio/mpc/default.nix8
-rw-r--r--pkgs/applications/audio/ncspot/default.nix10
-rw-r--r--pkgs/applications/audio/noise-repellent/default.nix29
-rw-r--r--pkgs/applications/audio/picard/default.nix4
-rw-r--r--pkgs/applications/audio/strawberry/default.nix6
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix10
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc.nix4
-rw-r--r--pkgs/applications/blockchains/dogecoin.nix4
-rw-r--r--pkgs/applications/blockchains/go-ethereum.nix37
-rw-r--r--pkgs/applications/blockchains/monero-gui/default.nix4
-rw-r--r--pkgs/applications/blockchains/zcash/default.nix28
-rw-r--r--pkgs/applications/blockchains/zcash/librustzcash/default.nix14
-rw-r--r--pkgs/applications/editors/android-studio/default.nix6
-rw-r--r--pkgs/applications/editors/mle/default.nix4
-rw-r--r--pkgs/applications/editors/tiled/default.nix4
-rw-r--r--pkgs/applications/graphics/avocode/default.nix4
-rw-r--r--pkgs/applications/graphics/cq-editor/default.nix57
-rw-r--r--pkgs/applications/graphics/kodelife/default.nix4
-rw-r--r--pkgs/applications/graphics/mypaint/default.nix44
-rw-r--r--pkgs/applications/graphics/openimageio/2.x.nix4
-rw-r--r--pkgs/applications/graphics/pdfcpu/default.nix4
-rw-r--r--pkgs/applications/graphics/xournalpp/default.nix4
-rw-r--r--pkgs/applications/misc/alacritty/default.nix12
-rw-r--r--pkgs/applications/misc/calibre/default.nix2
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--pkgs/applications/misc/hugo/default.nix6
-rw-r--r--pkgs/applications/misc/josm/default.nix4
-rw-r--r--pkgs/applications/misc/keepassx/community.nix4
-rw-r--r--pkgs/applications/misc/kitty/default.nix4
-rw-r--r--pkgs/applications/misc/kitty/no-werror.patch6
-rw-r--r--pkgs/applications/misc/mlterm/default.nix7
-rw-r--r--pkgs/applications/misc/osmium-tool/default.nix4
-rw-r--r--pkgs/applications/misc/qtpass/default.nix7
-rw-r--r--pkgs/applications/misc/simplenote/default.nix54
-rw-r--r--pkgs/applications/misc/slic3r/boost-compile-error.patch12
-rw-r--r--pkgs/applications/misc/slic3r/default.nix9
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/misc/xchm/default.nix4
-rw-r--r--pkgs/applications/misc/xmrig/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/next-gtk-webkit/default.nix25
-rw-r--r--pkgs/applications/networking/browsers/next/default.nix150
-rw-r--r--pkgs/applications/networking/browsers/next/next-gtk-webkit.nix50
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix8
-rw-r--r--pkgs/applications/networking/cawbird/default.nix52
-rw-r--r--pkgs/applications/networking/feedreaders/rssguard/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix21
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix27
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/node-env.nix540
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix1426
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/package.json27
-rw-r--r--pkgs/applications/networking/instant-messengers/matrixcli/default.nix53
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json2
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/wire-desktop/default.nix102
-rw-r--r--pkgs/applications/networking/mailreaders/balsa/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/imapfilter.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/neomutt/default.nix4
-rw-r--r--pkgs/applications/networking/newsreaders/quiterss/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/tribler/default.nix74
-rw-r--r--pkgs/applications/networking/remote/anydesk/default.nix6
-rw-r--r--pkgs/applications/radio/tlf/default.nix4
-rw-r--r--pkgs/applications/radio/urh/default.nix4
-rw-r--r--pkgs/applications/science/biology/hmmer/default.nix4
-rw-r--r--pkgs/applications/science/logic/coq/default.nix2
-rw-r--r--pkgs/applications/science/misc/root/setup-hook.sh6
-rw-r--r--pkgs/applications/version-management/bugseverywhere/default.nix34
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-machete/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix22
-rw-r--r--pkgs/applications/version-management/gitlab/data.json12
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix5
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile8
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock31
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/deps.nix670
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/gemset.nix42
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix18
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile47
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock196
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix280
-rw-r--r--pkgs/applications/version-management/gitlab/yarnPkgs.nix1488
-rw-r--r--pkgs/applications/version-management/gource/default.nix4
-rw-r--r--pkgs/applications/version-management/yadm/default.nix32
-rw-r--r--pkgs/applications/video/smplayer/default.nix4
-rw-r--r--pkgs/applications/virtualization/charliecloud/default.nix4
-rw-r--r--pkgs/applications/virtualization/cntr/default.nix4
-rw-r--r--pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--pkgs/applications/virtualization/docker-compose/default.nix4
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix17
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix2
-rw-r--r--pkgs/applications/virtualization/virtualbox/extpack.nix2
-rw-r--r--pkgs/applications/virtualization/x11docker/default.nix4
99 files changed, 4014 insertions, 2009 deletions
diff --git a/pkgs/applications/audio/bsequencer/default.nix b/pkgs/applications/audio/bsequencer/default.nix
index e4ac2fbbcdc..b91554f5716 100644
--- a/pkgs/applications/audio/bsequencer/default.nix
+++ b/pkgs/applications/audio/bsequencer/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BSEQuencer";
-  version = "0.4";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "0c3bm2z6z2bjjv1cy50383zr81h99rcb2frmxad0r7lhi27mjyqn";
+    rev = "${version}";
+    sha256 = "08xwz5v8wrar0rx7qdr9pkpjz2k9sw6bn5glhpn6sp6453fabf8q";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/bslizr/default.nix b/pkgs/applications/audio/bslizr/default.nix
index 8fbac6daf46..3273d7de68c 100644
--- a/pkgs/applications/audio/bslizr/default.nix
+++ b/pkgs/applications/audio/bslizr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BSlizr";
-  version = "1.2.0";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
     rev = "${version}";
-    sha256 = "1xqhpppfj47nzmyksbqgfvvi5j807g96hqla544w2f752zz4yi0s";
+    sha256 = "0q92ygz17iiriwzqylmaxd5ml2bhqy3n6c3f7g71n4hn9z3bl3s1";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/helm/default.nix b/pkgs/applications/audio/helm/default.nix
index 64de722afe9..84cf8ffc3bc 100644
--- a/pkgs/applications/audio/helm/default.nix
+++ b/pkgs/applications/audio/helm/default.nix
@@ -1,5 +1,5 @@
-  { stdenv, fetchFromGitHub , xorg, freetype, alsaLib, curl, libjack2
-  , lv2, pkgconfig, libGLU_combined }:
+{ stdenv, fetchFromGitHub , xorg, libGL, freetype, alsaLib, curl, libjack2
+, lv2, pkgconfig, libGLU_combined }:
 
   stdenv.mkDerivation {
   version = "0.9.0";
@@ -14,7 +14,7 @@
 
   buildInputs = [
     xorg.libX11 xorg.libXcomposite xorg.libXcursor xorg.libXext
-    xorg.libXinerama xorg.libXrender xorg.libXrandr
+    xorg.libXinerama xorg.libXrender xorg.libXrandr libGL
     freetype alsaLib curl libjack2 pkgconfig libGLU_combined lv2
   ];
 
diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix
index 9a273299297..1e8d73ce560 100644
--- a/pkgs/applications/audio/mpc/default.nix
+++ b/pkgs/applications/audio/mpc/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, mpd_clientlib, sphinx }:
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, mpd_clientlib, sphinx, libiconv }:
 
 stdenv.mkDerivation rec {
   pname = "mpc";
-  version = "0.31";
+  version = "0.33";
 
   src = fetchFromGitHub {
     owner  = "MusicPlayerDaemon";
     repo   = "mpc";
     rev    = "v${version}";
-    sha256 = "06wn5f24bgkqmhh2p8rbizmqibzqr4x1q7c6zl0pfq7mdy49g5ds";
+    sha256 = "1qbi0i9cq54rj8z2kapk8x8g1jkw2jz781niwb9i7kw4xfhvy5zx";
   };
 
-  buildInputs = [ mpd_clientlib ];
+  buildInputs = [ mpd_clientlib ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
 
   nativeBuildInputs = [ meson ninja pkgconfig sphinx ];
 
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 63ae9278c5d..136f6fc1427 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -11,17 +11,17 @@ let
     ++ lib.optional withPortAudio "portaudio_backend";
 in
 rustPlatform.buildRustPackage rec {
-  pname = "ncspot-unstable";
-  version = "2019-10-12";
+  pname = "ncspot";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "hrkfdn";
     repo = "ncspot";
-    rev = "4defded54646958268a20787917e4721ae96407d";
-    sha256 = "1w3cmilwjzk3pfnq97qgz6hzxgjgi27dm8jq7maw87qyl3v17gyg";
+    rev = "v${version}";
+    sha256 = "0ldisr45w6ys1j62qv99ssqfg5q9dwrrzxh2maggyrx1zqdlsk6m";
   };
 
-  cargoSha256 = "1w1fk39pragfy2i2myw99mqf63w6fw4nr2kri8ily2iqc6g9xpgw";
+  cargoSha256 = "0k765hinqxfm30li1z66m1chsv69v6hiz109q2zlkxzg937qbnjh";
 
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
 
diff --git a/pkgs/applications/audio/noise-repellent/default.nix b/pkgs/applications/audio/noise-repellent/default.nix
new file mode 100644
index 00000000000..146e13f34de
--- /dev/null
+++ b/pkgs/applications/audio/noise-repellent/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, fftwFloat, lv2 }:
+
+stdenv.mkDerivation rec {
+  pname = "noise-repellent";
+  version = "unstable-2018-12-29";
+
+  src = fetchFromGitHub {
+    owner = "lucianodato";
+    repo = pname;
+    rev = "9efdd0b41ec184a792087c87cbf5382f455e33ec";
+    sha256 = "0pn9cxapfvb5l62q86bchyfll1290vi0rhrzarb1jpc4ix7kz53c";
+    fetchSubmodules = true;
+  };
+
+  mesonFlags = ("--prefix=${placeholder "out"}/lib/lv2");
+
+  nativeBuildInputs = [ meson ninja pkgconfig ];
+  buildInputs = [
+    fftwFloat lv2
+  ];
+
+  meta = with stdenv.lib; {
+    description = "An lv2 plugin for broadband noise reduction";
+    homepage    = https://github.com/lucianodato/noise-repellent;
+    license     = licenses.gpl3;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "i686-darwin"  ];
+  };
+}
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index dc1118f47e0..b40ab6d4f7a 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -4,13 +4,13 @@ let
   pythonPackages = python3Packages;
 in pythonPackages.buildPythonApplication rec {
   pname = "picard";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "metabrainz";
     repo = pname;
     rev = "release-${version}";
-    sha256 = "1iibkvwpj862wcrl0fmyi6qhcgx4q5ay63yr0zyg0bkqgcka0gpr";
+    sha256 = "0lb4pzl03mr5hrzrzva99rxqd5yfip62b7sjmlg4j0imw8mxaj16";
   };
 
   nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ];
diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix
index 315bb624e51..bf17798531b 100644
--- a/pkgs/applications/audio/strawberry/default.nix
+++ b/pkgs/applications/audio/strawberry/default.nix
@@ -35,13 +35,13 @@
 
 mkDerivation rec {
   pname = "strawberry";
-  version = "0.6.5";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "jonaski";
     repo = pname;
     rev = version;
-    sha256 = "1kqx0q99n1p5pm6skvqjihz11byhxdid1qw6gqp67dh2na62z1lm";
+    sha256 = "113z2qdcg0fm6ff2k36nl5zbbj5wsidl94ca1sfnsv9bq9lkvck5";
   };
 
   buildInputs = [
@@ -93,7 +93,7 @@ mkDerivation rec {
     changelog = "https://raw.githubusercontent.com/jonaski/strawberry/${version}/Changelog";
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
-    # upstream says darwin should work but they lack maintainers as of 0.6.5
+    # upstream says darwin should work but they lack maintainers as of 0.6.6
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
index eeeb8ae2ea4..a8236b4b60f 100644
--- a/pkgs/applications/audio/zam-plugins/default.nix
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit , boost, libX11, libGLU_combined, liblo, libjack2, ladspaH, lv2, pkgconfig, rubberband, libsndfile, fftwFloat, libsamplerate }:
+{ stdenv, fetchgit , boost, libX11, libGL, liblo, libjack2, ladspaH, lv2, pkgconfig, rubberband, libsndfile, fftwFloat, libsamplerate }:
 
 stdenv.mkDerivation {
   pname = "zam-plugins";
@@ -12,16 +12,18 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ boost libX11 libGLU_combined liblo libjack2 ladspaH lv2 rubberband libsndfile fftwFloat libsamplerate ];
+  buildInputs = [ boost libX11 libGL liblo libjack2 ladspaH lv2 rubberband libsndfile fftwFloat libsamplerate ];
 
-  patchPhase = ''
+  postPatch = ''
     patchShebangs ./dpf/utils/generate-ttl.sh
   '';
 
   makeFlags = [
-    "PREFIX=$(out)"
+    "PREFIX=${placeholder ''out''}"
   ];
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     homepage = http://www.zamaudio.com/?p=976;
     description = "A collection of LV2/LADSPA/VST/JACK audio plugins by ZamAudio";
diff --git a/pkgs/applications/blockchains/bitcoin-abc.nix b/pkgs/applications/blockchains/bitcoin-abc.nix
index 0c806a89015..95dab9f18b9 100644
--- a/pkgs/applications/blockchains/bitcoin-abc.nix
+++ b/pkgs/applications/blockchains/bitcoin-abc.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
-  version = "0.20.5";
+  version = "0.20.6";
 
   src = fetchFromGitHub {
     owner = "bitcoin-ABC";
     repo = "bitcoin-abc";
     rev = "v${version}";
-    sha256 = "1adps3g99m7cxs58c48g2dgyihfv0v8d198klzcbbf4dq0s5v45c";
+    sha256 = "1a65pykdjkiic67fcs8cg2qrvzzrqifa93r1bzza3gdyfdvgv3ww";
   };
 
   patches = [ ./fix-bitcoin-qt-build.patch ];
diff --git a/pkgs/applications/blockchains/dogecoin.nix b/pkgs/applications/blockchains/dogecoin.nix
index e5f149a0efe..02744e50647 100644
--- a/pkgs/applications/blockchains/dogecoin.nix
+++ b/pkgs/applications/blockchains/dogecoin.nix
@@ -7,13 +7,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "dogecoin" + (toString (optional (!withGui) "d")) + "-" + version;
-  version = "1.14.1";
+  version = "1.14.2";
 
   src = fetchFromGitHub {
     owner = "dogecoin";
     repo = "dogecoin";
     rev = "v${version}";
-    sha256 = "0nmbi5gmms16baqs3fmdp2xm0yf8wawnyz80gcmca4j5ph2zka1v";
+    sha256 = "1gw46q63mjzwvb17ck6p1bap2xpdrap08szw2kjhasa3yvd5swyy";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/pkgs/applications/blockchains/go-ethereum.nix b/pkgs/applications/blockchains/go-ethereum.nix
index fe7a5f991dd..cfdb8dbdc60 100644
--- a/pkgs/applications/blockchains/go-ethereum.nix
+++ b/pkgs/applications/blockchains/go-ethereum.nix
@@ -1,22 +1,39 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, libobjc, IOKit }:
+{ stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "go-ethereum";
-  version = "1.9.7";
-
-  goPackagePath = "github.com/ethereum/go-ethereum";
-
-  # Fix for usb-related segmentation faults on darwin
-  propagatedBuildInputs =
-    stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
+  version = "1.9.8";
 
   src = fetchFromGitHub {
     owner = "ethereum";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07110dj91wmkpwz7iy0lmxx3y9wjxjrhk3rhkfdil74cxm0wkkn2";
+    sha256 = "0v4hchy6h3282347ps11iv7klcr60bmghha78rnp0iqpx2k8pqb4";
   };
 
+  modSha256 = "1l10p6a4qq77pfx7jmipkcg2qg6w3hg83q5a37yid3apily2scfa";
+
+  subPackages = [
+    "cmd/abigen"
+    "cmd/bootnode"
+    "cmd/checkpoint-admin"
+    "cmd/clef"
+    "cmd/devp2p"
+    "cmd/ethkey"
+    "cmd/evm"
+    "cmd/faucet"
+    "cmd/geth"
+    "cmd/p2psim"
+    "cmd/puppeth"
+    "cmd/rlpdump"
+    "cmd/utils"
+    "cmd/wnode"
+  ];
+
+  # Fix for usb-related segmentation faults on darwin
+  propagatedBuildInputs =
+    stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
+
   meta = with stdenv.lib; {
     homepage = "https://geth.ethereum.org/";
     description = "Official golang implementation of the Ethereum protocol";
diff --git a/pkgs/applications/blockchains/monero-gui/default.nix b/pkgs/applications/blockchains/monero-gui/default.nix
index dde324b39e1..7082794bba7 100644
--- a/pkgs/applications/blockchains/monero-gui/default.nix
+++ b/pkgs/applications/blockchains/monero-gui/default.nix
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "monero-gui";
-  version = "0.15.0.0";
+  version = "0.15.0.1";
 
   src = fetchFromGitHub {
     owner  = "monero-project";
     repo   = "monero-gui";
     rev    = "v${version}";
-    sha256 = "1shpnly2dym5jhvk8zk10p69mz062dihx979djg74q6hgkhhhqsh";
+    sha256 = "08j8kkncdn57xql0bhmlzjpjkdfhqbpda1p07r797q8qi0nl4w8n";
   };
 
   nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix
index 1852d72d326..f6114b3c213 100644
--- a/pkgs/applications/blockchains/zcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/default.nix
@@ -1,37 +1,29 @@
-{ stdenv, libsodium, fetchFromGitHub, wget, pkgconfig, autoreconfHook, openssl, db62, boost
-, zlib, gtest, gmock, callPackage, gmp, qt4, utillinux, protobuf, qrencode, libevent
-, libsnark, withGui }:
+{ stdenv, libsodium, fetchFromGitHub, wget, pkgconfig, autoreconfHook, openssl, db62, boost17x
+, zlib, gtest, gmock, callPackage, gmp, qt4, utillinux, protobuf, qrencode, libevent }:
 
 let librustzcash = callPackage ./librustzcash {};
 in
 with stdenv.lib;
 stdenv.mkDerivation rec {
 
-  name = "zcash" + (toString (optional (!withGui) "d")) + "-" + version;
-  version = "1.0.13";
+  pname = "zcash";
+  version = "2.1.0-1";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo  = "zcash";
     rev = "v${version}";
-    sha256 = "05y7wxs66anxr5akbf05r36mmjfzqpwawn6vyh3jhpva51hzzzyz";
+    sha256 = "05bnn4lxrrcv1ha3jdfrgwg4ar576161n3j9d4gpc14ww3zgf9vz";
   };
 
-  # Dependencies are underspecified: "make -C src gtest/zcash_gtest-test_merkletree.o"
-  # fails with "fatal error: test/data/merkle_roots.json.h: No such file or directory"
-  enableParallelBuilding = false;
-
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ gtest gmock gmp openssl wget db62 boost zlib
-                  protobuf libevent libsodium librustzcash libsnark ]
-                  ++ optionals stdenv.isLinux [ utillinux ]
-                  ++ optionals withGui [ qt4 qrencode ];
+  buildInputs = [ gtest gmock gmp openssl wget db62 boost17x zlib
+                  protobuf libevent libsodium librustzcash ]
+                  ++ optionals stdenv.isLinux [ utillinux ];
 
-  configureFlags = [ "--with-boost-libdir=${boost.out}/lib"
-                   ] ++ optionals withGui [ "--with-gui=qt4" ];
+  configureFlags = [ "--with-boost-libdir=${boost17x.out}/lib" ];
 
   patchPhase = ''
-    sed -i"" 's,-lboost_system-mt,-lboost_system,' configure.ac
     sed -i"" 's,-fvisibility=hidden,,g'            src/Makefile.am
   '';
 
@@ -42,7 +34,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Peer-to-peer, anonymous electronic cash system";
     homepage = https://z.cash/;
-    maintainers = with maintainers; [ rht ];
+    maintainers = with maintainers; [ rht tkerber ];
     license = licenses.mit;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/blockchains/zcash/librustzcash/default.nix b/pkgs/applications/blockchains/zcash/librustzcash/default.nix
index 634d4e8538a..31703f8fb2a 100644
--- a/pkgs/applications/blockchains/zcash/librustzcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/librustzcash/default.nix
@@ -2,28 +2,30 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "librustzcash-unstable";
-  version = "2017-03-17";
+  version = "2018-10-27";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo = "librustzcash";
-    rev = "91348647a86201a9482ad4ad68398152dc3d635e";
-    sha256 = "02l1f46frpvw1r6k1wfh77mrsnmsdvifqx0vnscxz4xgb9ia9d1c";
+    rev = "06da3b9ac8f278e5d4ae13088cf0a4c03d2c13f5";
+    sha256 = "0md0pp3k97iv7kfjpfkg14pjanhrql4vafa8ggbxpkajv1j4xldv";
   };
 
-  cargoSha256 = "1xlq8vkzfyr5q8gxvzkwi8r1kxg4rg8l1ckdwfdxlkhnw0yscbra";
+  cargoSha256 = "166v8cxlpfslbs5gljbh7wp0lxqakayw47ikxm9r9a39n7j36mq1";
 
   installPhase = ''
     mkdir -p $out/lib
     cp target/release/librustzcash.a $out/lib/
     mkdir -p $out/include
-    cp include/librustzcash.h $out/include/
+    cp librustzcash/include/librustzcash.h $out/include/
   '';
 
+  doCheck = false;
+
   meta = with stdenv.lib; {
     description = "Rust-language assets for Zcash";
     homepage = https://github.com/zcash/librustzcash;
-    maintainers = with maintainers; [ rht ];
+    maintainers = with maintainers; [ rht tkerber ];
     license = with licenses; [ mit asl20 ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index c9bd1d089ca..5c796e71fdf 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -18,9 +18,9 @@ let
     sha256Hash = "0wyyr6r0jzb1l4rn1mfgp0nnzvgk3x62imq629z6vrdbymy8psf1";
   };
   latestVersion = { # canary & dev
-    version = "4.0.0.3"; # "Android Studio 4.0 Canary 3"
-    build = "192.5994236";
-    sha256Hash = "14ig352anjs0df72f41v4r6jl7mlm2n4pn9syanmykaj87dm4kf4";
+    version = "4.0.0.4"; # "Android Studio 4.0 Canary 4"
+    build = "192.6008643";
+    sha256Hash = "1z1srginlg1xnp911nlilhf515mbpmngwhln29q6lxsir8g2cw2z";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/mle/default.nix b/pkgs/applications/editors/mle/default.nix
index e98759edd15..2c36be1c21b 100644
--- a/pkgs/applications/editors/mle/default.nix
+++ b/pkgs/applications/editors/mle/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mle";
-  version = "1.4.1";
+  version = "1.4.2";
 
   src = fetchFromGitHub {
     owner = "adsr";
     repo = "mle";
     rev = "v${version}";
-    sha256 = "15i5lzcp0zar2zh34ky9m6pvvi41zgdrl3hmylpgsqnnj4r87vqc";
+    sha256 = "053zvxkjx2zwq6lwkycirxz1m9sjc3zi9ic8fvp3mjvbqfri1y3x";
   };
 
   # Fix location of Lua 5.3 header and library
diff --git a/pkgs/applications/editors/tiled/default.nix b/pkgs/applications/editors/tiled/default.nix
index fa9cc155f36..e66530aaf76 100644
--- a/pkgs/applications/editors/tiled/default.nix
+++ b/pkgs/applications/editors/tiled/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "tiled";
-  version = "1.2.5";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "bjorn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0sz8klz0nz60dhvz7pdn44zwr9q578pq50sxsbynz7irhrv02b52";
+    sha256 = "1vhg8m1b7ccccrzlp0pyf3qskgvlf6sn1w956zsczmndrixbli9a";
   };
 
   nativeBuildInputs = [ pkgconfig qmake ];
diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix
index 1497fe19991..e2a7a9fe5c4 100644
--- a/pkgs/applications/graphics/avocode/default.nix
+++ b/pkgs/applications/graphics/avocode/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "avocode";
-  version = "3.9.6";
+  version = "4.0.1";
 
   src = fetchurl {
     url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
-    sha256 = "0jnl461dg2s5panrw12707bv34g6wxc1pxc90awnja13yq0z6bfc";
+    sha256 = "13jwxwvwb9nnjxcnh9vfi22n4c00bhdypl84wrpdg5xw9325zhvy";
   };
 
   libPath = stdenv.lib.makeLibraryPath (with xorg; [
diff --git a/pkgs/applications/graphics/cq-editor/default.nix b/pkgs/applications/graphics/cq-editor/default.nix
new file mode 100644
index 00000000000..32d079d85ff
--- /dev/null
+++ b/pkgs/applications/graphics/cq-editor/default.nix
@@ -0,0 +1,57 @@
+{ lib
+, mkDerivationWith
+, python3Packages
+, fetchFromGitHub
+}:
+
+mkDerivationWith python3Packages.buildPythonApplication rec {
+  pname = "cq-editor";
+  version = "0.1RC1";
+
+  src = fetchFromGitHub {
+    owner = "CadQuery";
+    repo = "CQ-editor";
+    rev = version;
+    sha256 = "0iwcpnj15s64k16948sakvkn1lb4mqwrhmbxk3r03bczs0z33zax";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    cadquery
+    Logbook
+    pyqt5
+    pyparsing
+    pyqtgraph
+    spyder
+    pathpy
+    qtconsole
+    requests
+  ];
+
+  postFixup = ''
+    wrapQtApp "$out/bin/cq-editor"
+  '';
+
+  checkInputs = with python3Packages; [
+    pytest
+    pytest-xvfb
+    pytest-mock
+    pytestcov
+    pytest-repeat
+    pytest-qt
+  ];
+
+  checkPhase = ''
+    pytest --no-xvfb
+  '';
+
+  # requires X server
+  doCheck = false;
+
+  meta = with lib; {
+    description = "CadQuery GUI editor based on PyQT";
+    homepage = "https://github.com/CadQuery/CQ-editor";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ costrouc marcus7070 ];
+  };
+
+}
diff --git a/pkgs/applications/graphics/kodelife/default.nix b/pkgs/applications/graphics/kodelife/default.nix
index 961b0175da9..f94e4ad698e 100644
--- a/pkgs/applications/graphics/kodelife/default.nix
+++ b/pkgs/applications/graphics/kodelife/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kodelife";
-  version = "0.8.6.101";
+  version = "0.8.7.105";
 
   src = fetchzip {
     url = "https://hexler.net/pub/${pname}/${pname}-${version}-linux-x86_64.zip";
-    sha256 = "1ldab1famdcby2djfys657g85d46s8k96m6mr71riw4v336ar238";
+    sha256 = "0ld4lwigzwlikx04qy3gskqqg0wzlk8m3ccrd704ifl8lsp46n5r";
   };
 
   dontConfigure = true;
diff --git a/pkgs/applications/graphics/mypaint/default.nix b/pkgs/applications/graphics/mypaint/default.nix
index c08bbbea766..1acaf4850eb 100644
--- a/pkgs/applications/graphics/mypaint/default.nix
+++ b/pkgs/applications/graphics/mypaint/default.nix
@@ -1,8 +1,22 @@
-{ stdenv, fetchFromGitHub, gtk3, intltool, json_c, lcms2, libpng, librsvg, gobject-introspection
-, gdk-pixbuf, pkgconfig, python2Packages, scons, swig, wrapGAppsHook }:
+{ stdenv
+, fetchFromGitHub
+, gtk3
+, intltool
+, json_c
+, lcms2
+, libpng
+, librsvg
+, gobject-introspection
+, gdk-pixbuf
+, pkgconfig
+, python2
+, scons
+, swig
+, wrapGAppsHook
+}:
 
 let
-  inherit (python2Packages) python pycairo pygobject3 numpy;
+  inherit (python2.pkgs) pycairo pygobject3 numpy;
 in stdenv.mkDerivation {
   pname = "mypaint";
   version = "1.2.1";
@@ -16,18 +30,32 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [
-    intltool pkgconfig scons swig wrapGAppsHook
+    intltool
+    pkgconfig
+    scons
+    swig
+    wrapGAppsHook
     gobject-introspection # for setup hook
   ];
 
   buildInputs = [
-    gtk3 gdk-pixbuf json_c lcms2 libpng librsvg pycairo pygobject3 python
+    gtk3
+    gdk-pixbuf
+    json_c
+    lcms2
+    libpng
+    librsvg
+    pycairo
+    pygobject3
+    python2
   ];
 
-  propagatedBuildInputs = [ numpy ];
+  propagatedBuildInputs = [
+    numpy
+  ];
 
   postInstall = ''
-    sed -i -e 's|/usr/bin/env python2.7|${python}/bin/python|' $out/bin/mypaint
+    sed -i -e 's|/usr/bin/env python2.7|${python2}/bin/python|' $out/bin/mypaint
   '';
 
   preFixup = ''
@@ -36,7 +64,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A graphics application for digital painters";
-    homepage = http://mypaint.org/;
+    homepage = "http://mypaint.org/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ goibhniu jtojnar ];
diff --git a/pkgs/applications/graphics/openimageio/2.x.nix b/pkgs/applications/graphics/openimageio/2.x.nix
index 69cc323b40f..bbd2f0b5929 100644
--- a/pkgs/applications/graphics/openimageio/2.x.nix
+++ b/pkgs/applications/graphics/openimageio/2.x.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openimageio";
-  version = "2.0.11";
+  version = "2.0.12";
 
   src = fetchFromGitHub {
     owner = "OpenImageIO";
     repo = "oiio";
     rev = "Release-${version}";
-    sha256 = "1kasp9as81wjvys9qrx10mgdf9bjbdgryhdgjqn05zdmv2rs95nc";
+    sha256 = "0v3k33jb0glb30jdhq3c732a9dxvnidaclz6b2wpqwik8l3658mj";
   };
 
   outputs = [ "bin" "out" "dev" "doc" ];
diff --git a/pkgs/applications/graphics/pdfcpu/default.nix b/pkgs/applications/graphics/pdfcpu/default.nix
index 3d6d04db553..3df2ab4ab40 100644
--- a/pkgs/applications/graphics/pdfcpu/default.nix
+++ b/pkgs/applications/graphics/pdfcpu/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pdfcpu";
-  version = "0.2.5";
+  version = "0.3";
 
   src = fetchFromGitHub {
     owner = "pdfcpu";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0fgdq8byb9pp9wiq3dm0vxw32kbspczqnk41agxpzjf303zmv75y";
+    sha256 = "03v4wc531dwmbjqgs3y3ncdn6g3xirv1w6h1mfgglb6sjll8jxp5";
   };
 
   modSha256 = "1nagb3k2ghfw27g4vcmn7v8s5flg387jpf1l18gw6c44a1xjcivs";
diff --git a/pkgs/applications/graphics/xournalpp/default.nix b/pkgs/applications/graphics/xournalpp/default.nix
index 3597b97fae6..76f8e03fa13 100644
--- a/pkgs/applications/graphics/xournalpp/default.nix
+++ b/pkgs/applications/graphics/xournalpp/default.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xournalpp";
-  version = "1.0.15";
+  version = "1.0.16";
 
   src = fetchFromGitHub {
     owner = "xournalpp";
     repo = pname;
     rev = version;
-    sha256 = "1q716hn2ajkxfba0dxp7vcnqfa31hx36ax09yz4d13sdw43rfjf4";
+    sha256 = "1bdmxxkcqpjvkckizmrz2839b4yspw4xv69bqkrrgkcyvxsr804w";
   };
 
   nativeBuildInputs = [ cmake gettext pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/misc/alacritty/default.nix b/pkgs/applications/misc/alacritty/default.nix
index 24f788ef468..4b4148bdc63 100644
--- a/pkgs/applications/misc/alacritty/default.nix
+++ b/pkgs/applications/misc/alacritty/default.nix
@@ -52,16 +52,16 @@ let
   ];
 in buildRustPackage rec {
   pname = "alacritty";
-  version = "0.3.3";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "jwilm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1h9zid7bi19qga3a8a2d4x3ma9wf1njmj74s4xnw7nzqqf3dh750";
+    sha256 = "0adaqdbma6gskb2g14yscrgr9gch5wf2g2clchplv72c2qr1k427";
   };
 
-  cargoSha256 = "1rxb5ljgvn881jkxm8772kf815mmp08ci7sqmn2x1jwdcrphhxr1";
+  cargoSha256 = "1r267g8f986nxh8ms5yhp50qy1yl8gly2jr78p738qqc6frlxlhv";
 
   nativeBuildInputs = [
     cmake
@@ -76,10 +76,6 @@ in buildRustPackage rec {
     ++ lib.optionals stdenv.isDarwin [ AppKit CoreGraphics CoreServices CoreText Foundation OpenGL ];
 
   outputs = [ "out" "terminfo" ];
-  postPatch = ''
-    substituteInPlace alacritty_terminal/src/config/mouse.rs \
-      --replace xdg-open ${xdg_utils}/bin/xdg-open
-  '';
 
   postBuild = lib.optionalString stdenv.isDarwin "make app";
 
@@ -118,7 +114,7 @@ in buildRustPackage rec {
     description = "GPU-accelerated terminal emulator";
     homepage = https://github.com/jwilm/alacritty;
     license = with licenses; [ asl20 ];
-    maintainers = with maintainers; [ mic92 ];
+    maintainers = with maintainers; [ filalex77 mic92 ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux" ];
   };
 }
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 22ae573353e..9701db3c0b7 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -47,7 +47,7 @@ mkDerivation rec {
     poppler_utils libpng imagemagick libjpeg
     fontconfig podofo qtbase chmlib icu sqlite libusb1 libmtp xdg_utils
   ] ++ (with pypkgs; [
-    apsw cssselect css-parser dateutil dnspython html5-parser lxml markdown netifaces pillow
+    apsw cssselect css-parser dateutil dnspython feedparser html5-parser lxml markdown netifaces pillow
     python pyqt5_with_qtwebkit sip
     regex msgpack beautifulsoup4 html2text
     # the following are distributed with calibre, but we use upstream instead
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index b1cd6a36e08..1a9789114dc 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.10.6";
+  version = "1.11.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0jbfp072rnb3pkqp10xds57bnlcn87vqjaz68nhpzkwvwhs3hr4w";
+    sha256 = "08py1f48ylw83712h8313rxz55igbszxcwr2yxkchpr4233avzph";
   };
 
   doCheck = false;
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 840f4c32e52..c2065d94353 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.58.3";
+  version = "0.60.0";
 
   goPackagePath = "github.com/gohugoio/hugo";
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner  = "gohugoio";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "00dhb6xilkwr9yhncpyc6alzqw77ch3vd85dc7lzsmhw1c80n0lc";
+    sha256 = "0g8rq79xp7c9p31xc0anfjyz7xp8n7qzv3vmvg2nmzl7nayg88aa";
   };
 
-  modSha256 = "0d6zc7hxb246zsvwsjz4ds6gdd2m95x6l3djh3mmciwfg9cd7prx";
+  modSha256 = "12h1ik1hgs4lkmk699wpa34rnycnm03qyr2vp1y5lywz1h93by20";
 
   buildFlags = "-tags extended";
 
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 857cc6c7456..a3cbdabeacf 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "josm";
-  version = "15390";
+  version = "15492";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "1wxncd3mjd4j14svgpmvrxc0nkzfkpn0xlci7m7wp9hfp1l81v9f";
+    sha256 = "0x7ndcrlvrvk2fd4pyn10npr3778khcwg6xzzh19vdw4glh5zfcl";
   };
 
   buildInputs = [ jdk11 makeWrapper ];
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index 6701c910a1f..06fc04ba8fb 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -34,13 +34,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "keepassxc";
-  version = "2.5.0";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = version;
-    sha256 = "053z6mzcn22w3vkf09i7kdi5p0c6zcd9g62v3p5i3yhd14cgviqr";
+    sha256 = "0dkya9smx81c5cgcwk2gi2m1pabfff1v9gd3ngl42sdvyb63wgdq";
   };
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index e87d09b50cc..cd04fdb2574 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -21,14 +21,14 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "kitty";
-  version = "0.14.6";
+  version = "0.15.0";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "1rb5ys9xsdhd2qa3kz5gqzz111c6b14za98va6hlglk69wqlmb51";
+    sha256 = "1gh8lcyqpkwvmjxwiq5d43sd43bg3c49fyy2x8drqdzj34gc49qg";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/kitty/no-werror.patch b/pkgs/applications/misc/kitty/no-werror.patch
index 8217b5ef51a..92a65258855 100644
--- a/pkgs/applications/misc/kitty/no-werror.patch
+++ b/pkgs/applications/misc/kitty/no-werror.patch
@@ -1,11 +1,11 @@
 --- a/setup.py
 +++ b/setup.py
-@@ -212,7 +212,7 @@
+@@ -217,7 +217,7 @@ def init_env(
      cflags = os.environ.get(
          'OVERRIDE_CFLAGS', (
-             '-Wextra -Wno-missing-field-initializers -Wall -Wstrict-prototypes -std=c11'
+             '-Wextra {} -Wno-missing-field-initializers -Wall -Wstrict-prototypes -std={}11'
 -            ' -pedantic-errors -Werror {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
 +            ' {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
          ).format(
+             float_conversion, std,
              optimize,
-             ' '.join(sanitize_args),
diff --git a/pkgs/applications/misc/mlterm/default.nix b/pkgs/applications/misc/mlterm/default.nix
index 303b9fe5e8b..0c8ad9ae1b3 100644
--- a/pkgs/applications/misc/mlterm/default.nix
+++ b/pkgs/applications/misc/mlterm/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mlterm";
-  version = "3.8.8";
+  version = "3.8.9";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/mlterm/01release/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "1jq3fv2wqhszfipkzj8d0lykr6g0zzksn7xy4d3kwincmzfskv7k";
+    sha256 = "1iy7wq953gcnygr1d04h5ddvhpmy8l575n5is2w0rj3ck31ihpqd";
   };
 
   nativeBuildInputs = [ pkgconfig autoconf ];
@@ -86,8 +86,9 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
+    description = "Multi Lingual TERMinal emulator on X11";
     homepage = http://mlterm.sourceforge.net/;
-    license = licenses.bsd2;
+    license = licenses.bsd3;
     maintainers = with maintainers; [ vrthra ramkromberg ];
     platforms = with platforms; linux;
   };
diff --git a/pkgs/applications/misc/osmium-tool/default.nix b/pkgs/applications/misc/osmium-tool/default.nix
index 19657da607f..82144e9689f 100644
--- a/pkgs/applications/misc/osmium-tool/default.nix
+++ b/pkgs/applications/misc/osmium-tool/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "osmium-tool";
-  version = "1.11.0";
+  version = "1.11.1";
 
   src = fetchFromGitHub {
     owner = "osmcode";
     repo = "osmium-tool";
     rev = "v${version}";
-    sha256 = "164r1w539dzy67ir2rqh21kwdvkjv87isd18gp51qyxbsprz6kq5";
+    sha256 = "199dvajik5d56nybk2061vdjyxwakngfd7frxj99wr2vsrp4aw2b";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/qtpass/default.nix b/pkgs/applications/misc/qtpass/default.nix
index 1256bb96608..f185524da58 100644
--- a/pkgs/applications/misc/qtpass/default.nix
+++ b/pkgs/applications/misc/qtpass/default.nix
@@ -1,5 +1,5 @@
 { lib, mkDerivation, fetchFromGitHub
-, git, gnupg, pass, pwgen
+, git, gnupg, pass, pwgen, qrencode
 , qtbase, qtsvg, qttools, qmake
 }:
 
@@ -14,6 +14,11 @@ mkDerivation rec {
     sha256 = "0748hjvhjrybi33ci3c8hcr74k9pdrf5jv8npf9hrsrmdyy1kr9x";
   };
 
+  postPatch = ''
+    substituteInPlace src/qtpass.cpp \
+      --replace "/usr/bin/qrencode" "${qrencode}/bin/qrencode"
+  '';
+
   buildInputs = [ git gnupg pass qtbase qtsvg ];
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/misc/simplenote/default.nix b/pkgs/applications/misc/simplenote/default.nix
index be8e2105401..1829407705b 100644
--- a/pkgs/applications/misc/simplenote/default.nix
+++ b/pkgs/applications/misc/simplenote/default.nix
@@ -1,23 +1,37 @@
-{ atomEnv, autoPatchelfHook, dpkg, fetchurl, makeDesktopItem, makeWrapper
-, stdenv, udev, wrapGAppsHook }:
+{ atomEnv
+, autoPatchelfHook
+, dpkg
+, fetchurl
+, makeDesktopItem
+, makeWrapper
+, stdenv
+, udev
+, wrapGAppsHook
+}:
 
 let
   inherit (stdenv.hostPlatform) system;
 
+  throwSystem = throw "Unsupported system: ${system}";
+
   pname = "simplenote";
 
-  version = "1.9.1";
+  version = "1.11.0";
 
   sha256 = {
-    x86_64-linux = "1zqrjh1xfdpkpj1fsri9r4qkazh9j89pbj8vjr474b39v56v693j";
-  }.${system};
+    x86_64-linux = "1ljam1yfiy1lh6lrknrq7cdqpj1q7f655mxjiiwv3izp98qr1f8s";
+  }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
     description = "The simplest way to keep notes";
     homepage = "https://github.com/Automattic/simplenote-electron";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ kiwi ];
-    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [
+      kiwi
+    ];
+    platforms = [
+      "x86_64-linux"
+    ];
   };
 
   linux = stdenv.mkDerivation rec {
@@ -31,14 +45,14 @@ let
     };
 
     desktopItem = makeDesktopItem {
-      name = "simplenote";
+      categories = "Development";
       comment = "Simplenote for Linux";
+      desktopName = "Simplenote";
       exec = "simplenote %U";
       icon = "simplenote";
-      type = "Application";
+      name = "simplenote";
       startupNotify = "true";
-      desktopName = "Simplenote";
-      categories = "Development";
+      type = "Application";
     };
 
     dontBuild = true;
@@ -46,9 +60,14 @@ let
     dontPatchELF = true;
     dontWrapGApps = true;
 
-    buildInputs = atomEnv.packages;
+    nativeBuildInputs = [
+      autoPatchelfHook
+      dpkg
+      makeWrapper
+      wrapGAppsHook
+    ];
 
-    nativeBuildInputs = [ dpkg makeWrapper autoPatchelfHook wrapGAppsHook ];
+    buildInputs = atomEnv.packages;
 
     unpackPhase = "dpkg-deb -x $src .";
 
@@ -62,14 +81,15 @@ let
       cp "${desktopItem}/share/applications/"* "$out/share/applications"
     '';
 
-    runtimeDependencies = [ udev.lib ];
+    runtimeDependencies = [
+      udev.lib
+    ];
 
     postFixup = ''
-      ls -ahl $out
       makeWrapper $out/opt/Simplenote/simplenote $out/bin/simplenote \
-      "''${gappsWrapperArgs[@]}"
+        "''${gappsWrapperArgs[@]}"
     '';
   };
 
 in
-  linux
+linux
diff --git a/pkgs/applications/misc/slic3r/boost-compile-error.patch b/pkgs/applications/misc/slic3r/boost-compile-error.patch
new file mode 100644
index 00000000000..4dbdb85f743
--- /dev/null
+++ b/pkgs/applications/misc/slic3r/boost-compile-error.patch
@@ -0,0 +1,12 @@
+diff --git a/xs/src/libslic3r/GCodeSender.hpp b/xs/src/libslic3r/GCodeSender.hpp
+index cc0b2983..0f39f5a3 100644
+--- a/xs/src/libslic3r/GCodeSender.hpp
++++ b/xs/src/libslic3r/GCodeSender.hpp
+@@ -9,6 +9,7 @@
+ #include <boost/asio.hpp>
+ #include <boost/bind.hpp>
+ #include <boost/thread.hpp>
++#include <boost/core/noncopyable.hpp>
+ 
+ namespace Slic3r {
+ 
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index cf9e93b87b3..8dbd0cd5776 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchgit, perl, makeWrapper, makeDesktopItem
-, which, perlPackages, boost
+{ lib, stdenv, fetchgit, perl, makeWrapper
+, makeDesktopItem, which, perlPackages, boost
 }:
 
 stdenv.mkDerivation rec {
@@ -40,6 +40,11 @@ stdenv.mkDerivation rec {
     sed -i 's|"/usr/include/asm-generic/ioctls.h"|<asm-generic/ioctls.h>|g' xs/src/libslic3r/GCodeSender.cpp
   '';
 
+  # note the boost-compile-error is fixed in
+  # https://github.com/slic3r/Slic3r/commit/90f108ae8e7a4315f82e317f2141733418d86a68
+  # this patch can be probably be removed in the next version after 1.3.0
+  patches = lib.optional (lib.versionAtLeast boost.version "1.56.0") ./boost-compile-error.patch;
+
   buildPhase = ''
     export SLIC3R_NO_AUTO=true
     export LD=$CXX
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 816ae664f8e..857dcfaf69f 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -20,14 +20,14 @@
 }:
 
 mkDerivation rec {
-  version = "0.10.2";
+  version = "0.10.3";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${version}";
-    sha256 = "09iq1rr70wwy5xk0jmfnwzvnigq409hvs2viy1j0khn9jhvnk6z0";
+    sha256 = "12s1v65h4z051k4gi1b5f3z4hpbgqnhkjnz2xv5bdwhs24zxrrif";
   };
 
   buildInputs = [ qtbase cpp-utilities qtutilities ]
diff --git a/pkgs/applications/misc/xchm/default.nix b/pkgs/applications/misc/xchm/default.nix
index 6a5e62f54e1..fb1b59ed01f 100644
--- a/pkgs/applications/misc/xchm/default.nix
+++ b/pkgs/applications/misc/xchm/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xchm";
-  version = "1.30";
+  version = "1.31";
 
   src = fetchFromGitHub {
     owner = "rzvncj";
     repo = "xCHM";
     rev = version;
-    sha256 = "1sjvh06m8jbb28k6y3knas3nkh1dfvff4mlwjs33x12ilhddhr8v";
+    sha256 = "1mzafbpc1c211byf8bnwl13by7vi8xvxlaykyrajb1bj0ynbmmgp";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/applications/misc/xmrig/default.nix b/pkgs/applications/misc/xmrig/default.nix
index 265c4c173fc..037d6be2299 100644
--- a/pkgs/applications/misc/xmrig/default.nix
+++ b/pkgs/applications/misc/xmrig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xmrig";
-  version = "5.0.0";
+  version = "5.0.1";
 
   src = fetchFromGitHub {
     owner = "xmrig";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "17bgz1rpix1zgzzn4zz84jp7hl6b2k968h918y3av5asxn0mji49";
+    sha256 = "0w6vbrp44l25jhv3kx1m0841rkv7im30581gds0qb7lhyqm0hnbg";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix b/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix
deleted file mode 100644
index 6ab53376310..00000000000
--- a/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, gcc7, pkg-config
-, next
-, webkitgtk, gsettings-desktop-schemas
-}:
-
-stdenv.mkDerivation rec {
-  pname = "next-gtk-webkit";
-  inherit (next) src version;
-
-  makeFlags = [ "gtk-webkit" "PREFIX=$(out)" ];
-  installTargets = "install-gtk-webkit";
-
-  nativeBuildInputs = [ gcc7 pkg-config ];
-  buildInputs = [
-    webkitgtk
-    gsettings-desktop-schemas
-  ];
-  meta = with stdenv.lib; {
-    description = "Infinitely extensible web-browser (user interface only)";
-    homepage = https://next.atlas.engineer;
-    license = licenses.bsd3;
-    maintainers = [ maintainers.lewo ];
-    platforms = [ "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/applications/networking/browsers/next/default.nix b/pkgs/applications/networking/browsers/next/default.nix
index 9b537c55337..97c65fc12ef 100644
--- a/pkgs/applications/networking/browsers/next/default.nix
+++ b/pkgs/applications/networking/browsers/next/default.nix
@@ -1,86 +1,90 @@
-{ pkgs, stdenv, fetchFromGitHub
-, gcc7, pkg-config, makeWrapper
-, glib-networking
-, next-gtk-webkit
+{ stdenv
+, fetchFromGitHub
 , lispPackages
 , sbcl
+, callPackage
 }:
 
-stdenv.mkDerivation rec {
-    pname = "next";
-    version = "1.3.4";
+let
+
+  # This is the wrapped webkitgtk platform port that we hardcode into the Lisp Core.
+  # See https://github.com/atlas-engineer/next/tree/master/ports#next-platform-ports
+  next-gtk-webkit = callPackage ./next-gtk-webkit.nix {};
 
-    src = fetchFromGitHub {
-      owner = "atlas-engineer";
-      repo = "next";
-      rev = version;
-      sha256 = "00iqv4xarabl98gdl1rzqkc5v0vfljx1nawsxqsx9x3a9mnxmgxi";
-    };
+in
+
+stdenv.mkDerivation rec {
+  pname = "next";
+  version = "1.3.4";
 
-    # Stripping destroys the generated SBCL image
-    dontStrip = true;
+  src = fetchFromGitHub {
+    owner = "atlas-engineer";
+    repo = "next";
+    rev = version;
+    sha256 = "00iqv4xarabl98gdl1rzqkc5v0vfljx1nawsxqsx9x3a9mnxmgxi";
+  };
 
-    prePatch = ''
-      substituteInPlace source/ports/gtk-webkit.lisp \
-        --replace "next-gtk-webkit" "${next-gtk-webkit}/bin/next-gtk-webkit"
-    '';
+  nativeBuildInputs = [
+    sbcl
+  ] ++ (with lispPackages; [
+    prove-asdf
+    trivial-features
+  ]);
 
-    nativeBuildInputs =
-      [ sbcl makeWrapper ] ++ (with lispPackages;
-      [ prove-asdf trivial-features ]);
+  buildInputs = with lispPackages; [
+    alexandria
+    bordeaux-threads
+    cl-annot
+    cl-ansi-text
+    cl-css
+    cl-hooks
+    cl-json
+    cl-markup
+    cl-ppcre
+    cl-ppcre-unicode
+    cl-prevalence
+    closer-mop
+    dbus
+    dexador
+    ironclad
+    local-time
+    log4cl
+    lparallel
+    mk-string-metrics
+    parenscript
+    quri
+    sqlite
+    str
+    swank
+    trivia
+    trivial-clipboard
+    unix-opts
+  ];
 
-    buildInputs = with lispPackages; [
-      alexandria
-      bordeaux-threads
-      cl-annot
-      cl-ansi-text
-      cl-css
-      cl-hooks
-      cl-json
-      cl-markup
-      cl-ppcre
-      cl-ppcre-unicode
-      cl-prevalence
-      closer-mop
-      dbus
-      dexador
-      ironclad
-      local-time
-      log4cl
-      lparallel
-      mk-string-metrics
-      parenscript
-      quri
-      sqlite
-      str
-      swank
-      trivia
-      trivial-clipboard
-      unix-opts
-    ];
-    propagatedBuildInputs = [ next-gtk-webkit ];
+  prePatch = ''
+    substituteInPlace source/ports/gtk-webkit.lisp \
+      --replace "next-gtk-webkit" "${next-gtk-webkit}/bin/next-gtk-webkit"
+  '';
 
-    buildPhase = ''
-      common-lisp.sh --eval "(require :asdf)" \
-                     --eval "(asdf:load-asd (truename \"next.asd\") :name \"next\")" \
-                     --eval '(asdf:make :next)' \
-                     --quit
-    '';
+  buildPhase = ''
+    common-lisp.sh --eval "(require :asdf)" \
+                   --eval "(asdf:load-asd (truename \"next.asd\") :name \"next\")" \
+                   --eval '(asdf:make :next)' \
+                   --quit
+  '';
 
-    installPhase = ''
-      install -D -m0755 next $out/bin/next
-    '';
+  installPhase = ''
+    install -D -m0755 next $out/bin/next
+  '';
 
-    preFixup = ''
-      wrapProgram $out/bin/next \
-        --prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules"
-    '';
+  # Stripping destroys the generated SBCL image
+  dontStrip = true;
 
-    meta = with stdenv.lib; {
-      description = "Infinitely extensible web-browser (with Lisp development files)";
-      homepage = https://next.atlas.engineer;
-      license = licenses.bsd3;
-      maintainers = [ maintainers.lewo ];
-      platforms = [ "x86_64-linux" ];
-    };
-  }
+  meta = with stdenv.lib; {
+    description = "Infinitely extensible web-browser (with Lisp development files using WebKitGTK platform port)";
+    homepage = https://next.atlas.engineer;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.lewo ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix b/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix
new file mode 100644
index 00000000000..a71583ffbec
--- /dev/null
+++ b/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix
@@ -0,0 +1,50 @@
+# https://github.com/atlas-engineer/next/tree/master/ports/gtk-webkit
+
+{ stdenv
+, pkg-config
+, next
+, webkitgtk
+, gtk3
+, glib
+, gsettings-desktop-schemas
+, glib-networking
+, gst_all_1
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "next-gtk-webkit";
+  inherit (next) src version;
+
+  nativeBuildInputs = [
+    pkg-config
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    glib
+    glib-networking
+    gsettings-desktop-schemas
+    gtk3
+    webkitgtk
+    gst_all_1.gst-plugins-base
+    gst_all_1.gstreamer
+  ];
+
+  makeFlags = [
+    "gtk-webkit"
+    "PREFIX=${placeholder "out"}"
+  ];
+
+  installTargets =  [
+    "install-gtk-webkit"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Infinitely extensible web-browser (user interface only)";
+    homepage = https://next.atlas.engineer;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.lewo ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 7b13d748fe0..8f2f5a2cf7e 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -10,23 +10,23 @@ assert withMediaPlayback -> gst_all_1 != null;
 
 let
   pdfjs = let
-    version = "2.2.228";
+    version = "2.3.200";
   in
   fetchzip rec {
     name = "pdfjs-${version}";
     url = "https://github.com/mozilla/pdf.js/releases/download/v${version}/${name}-dist.zip";
-    sha256 = "0yik4vfnz46j844jfw1gq5cshgzry42kpy2d5rr7fbn9fjf98bw6";
+    sha256 = "1fpxsw0hzahccyng08acvc7g0gk29j2x701p6w6fg1718mvcrm1q";
     stripRoot = false;
   };
 
 in mkDerivationWith python3Packages.buildPythonApplication rec {
   pname = "qutebrowser";
-  version = "1.8.1";
+  version = "1.8.2";
 
   # the release tarballs are different from the git checkout!
   src = fetchurl {
     url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "0ckffbw2zlg0afz4rgyywzdprnqs74va5qj0xqlaqc14ziiypxnw";
+    sha256 = "0walddppjb61k3dyq22cngkaw6alzn75k5npvnawla2l153irw5s";
   };
 
   # Needs tox
diff --git a/pkgs/applications/networking/cawbird/default.nix b/pkgs/applications/networking/cawbird/default.nix
index 02368990a01..5179cc9090d 100644
--- a/pkgs/applications/networking/cawbird/default.nix
+++ b/pkgs/applications/networking/cawbird/default.nix
@@ -1,6 +1,23 @@
-{ stdenv, fetchFromGitHub, glib, gtk3, json-glib, sqlite, libsoup, gettext, vala
-, meson, ninja, pkgconfig, gnome3, gst_all_1, wrapGAppsHook, gobject-introspection
-, glib-networking, python3 }:
+{ stdenv
+, fetchFromGitHub
+, glib
+, gtk3
+, json-glib
+, sqlite
+, libsoup
+, gettext
+, gspell
+, vala
+, meson
+, ninja
+, pkgconfig
+, gnome3
+, gst_all_1
+, wrapGAppsHook
+, gobject-introspection
+, glib-networking
+, python3
+}:
 
 stdenv.mkDerivation rec {
   version = "1.0.3.1";
@@ -14,13 +31,34 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja vala pkgconfig wrapGAppsHook python3
+    meson
+    ninja
+    vala
+    pkgconfig
+    wrapGAppsHook
+    python3
     gobject-introspection # for setup hook
   ];
 
   buildInputs = [
-    glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
-  ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-bad (gst-plugins-good.override { gtkSupport = true; }) gst-libav ]);
+    glib
+    gtk3
+    json-glib
+    sqlite
+    libsoup
+    gettext
+    gnome3.dconf
+    gspell
+    glib-networking
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-bad
+    (gst-plugins-good.override {
+      gtkSupport = true;
+    })
+    gst-libav
+  ]);
 
   postPatch = ''
     chmod +x data/meson_post_install.py # patchShebangs requires executable file
@@ -30,7 +68,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Native GTK Twitter client for the Linux desktop";
     longDescription = "Cawbird is a modern, easy and fun Twitter client. Fork of the discontinued Corebird.";
-    homepage = https://ibboard.co.uk/cawbird/;
+    homepage = "https://ibboard.co.uk/cawbird/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ jonafato schmittlauch ];
diff --git a/pkgs/applications/networking/feedreaders/rssguard/default.nix b/pkgs/applications/networking/feedreaders/rssguard/default.nix
index 169b88f2718..2bb592bfb42 100644
--- a/pkgs/applications/networking/feedreaders/rssguard/default.nix
+++ b/pkgs/applications/networking/feedreaders/rssguard/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, qmake, qtwebengine, qttools, wrapGAppsHook }:
+{ stdenv, fetchFromGitHub, qmake, qtwebengine, qttools, wrapGAppsHook, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "rssguard";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =  [ qtwebengine qttools ];
-  nativeBuildInputs = [ qmake wrapGAppsHook ];
+  nativeBuildInputs = [ qmake wrapGAppsHook wrapQtAppsHook ];
   qmakeFlags = [ "CONFIG+=release" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix
new file mode 100644
index 00000000000..e03bdd9909e
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix
@@ -0,0 +1,21 @@
+# This file has been generated by node2nix 1.7.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}:
+
+let
+  nodeEnv = import ./node-env.nix {
+    inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+    inherit nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+locpkgs = 
+import ./node-packages.nix {
+  inherit (pkgs) fetchurl fetchgit;
+  inherit nodeEnv;
+  globalBuildInputs = [
+    locpkgs.node-pre-gyp
+  ];
+};
+in locpkgs
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix
new file mode 100644
index 00000000000..633219626b6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, pkgs }:
+(import ./composition.nix {
+  inherit pkgs;
+  inherit (stdenv.hostPlatform) system;
+})."package".override {
+  postInstall = ''
+    mkdir "$out/bin"
+    echo '#!/bin/sh' >> "$out/bin/matrix-recorder"
+    echo "'${pkgs.nodejs-12_x}/bin/node'" \
+         "'$out/lib/node_modules/matrix-recorder/matrix-recorder.js'" \
+         '"$@"' >> "$out/bin/matrix-recorder"
+    echo '#!/bin/sh' >> "$out/bin/matrix-recorder-to-html"
+    echo 'cd "$1"' >> "$out/bin/matrix-recorder-to-html"
+    echo "test -d templates/ || ln -sfT '$out/lib/node_modules/matrix-recorder/templates' templates" >> "$out/bin/matrix-recorder-to-html"
+    echo "'${pkgs.nodejs-12_x}/bin/node'" \
+         "'$out/lib/node_modules/matrix-recorder/recorder-to-html.js'" \
+         '.' >> "$out/bin/matrix-recorder-to-html"
+    chmod a+x "$out/bin/matrix-recorder"
+    chmod a+x "$out/bin/matrix-recorder-to-html"
+  '';
+  meta = {
+    description = "Matrix message recorder";
+    homepage = "https://gitlab.com/argit/matrix-recorder/";
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.raskin ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/node-env.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-env.nix
new file mode 100644
index 00000000000..670556bf271
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-env.nix
@@ -0,0 +1,540 @@
+# This file originates from node2nix
+
+{stdenv, nodejs, python2, utillinux, libtool, runCommand, writeTextFile}:
+
+let
+  python = if nodejs ? python then nodejs.python else python2;
+
+  # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
+  tarWrapper = runCommand "tarWrapper" {} ''
+    mkdir -p $out/bin
+
+    cat > $out/bin/tar <<EOF
+    #! ${stdenv.shell} -e
+    $(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore
+    EOF
+
+    chmod +x $out/bin/tar
+  '';
+
+  # Function that generates a TGZ file from a NPM project
+  buildNodeSourceDist =
+    { name, version, src, ... }:
+
+    stdenv.mkDerivation {
+      name = "node-tarball-${name}-${version}";
+      inherit src;
+      buildInputs = [ nodejs ];
+      buildPhase = ''
+        export HOME=$TMPDIR
+        tgzFile=$(npm pack | tail -n 1) # Hooks to the pack command will add output (https://docs.npmjs.com/misc/scripts)
+      '';
+      installPhase = ''
+        mkdir -p $out/tarballs
+        mv $tgzFile $out/tarballs
+        mkdir -p $out/nix-support
+        echo "file source-dist $out/tarballs/$tgzFile" >> $out/nix-support/hydra-build-products
+      '';
+    };
+
+  includeDependencies = {dependencies}:
+    stdenv.lib.optionalString (dependencies != [])
+      (stdenv.lib.concatMapStrings (dependency:
+        ''
+          # Bundle the dependencies of the package
+          mkdir -p node_modules
+          cd node_modules
+
+          # Only include dependencies if they don't exist. They may also be bundled in the package.
+          if [ ! -e "${dependency.name}" ]
+          then
+              ${composePackage dependency}
+          fi
+
+          cd ..
+        ''
+      ) dependencies);
+
+  # Recursively composes the dependencies of a package
+  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
+    ''
+      DIR=$(pwd)
+      cd $TMPDIR
+
+      unpackFile ${src}
+
+      # Make the base dir in which the target dependency resides first
+      mkdir -p "$(dirname "$DIR/${packageName}")"
+
+      if [ -f "${src}" ]
+      then
+          # Figure out what directory has been unpacked
+          packageDir="$(find . -maxdepth 1 -type d | tail -1)"
+
+          # Restore write permissions to make building work
+          find "$packageDir" -type d -exec chmod u+x {} \;
+          chmod -R u+w "$packageDir"
+
+          # Move the extracted tarball into the output folder
+          mv "$packageDir" "$DIR/${packageName}"
+      elif [ -d "${src}" ]
+      then
+          # Get a stripped name (without hash) of the source directory.
+          # On old nixpkgs it's already set internally.
+          if [ -z "$strippedName" ]
+          then
+              strippedName="$(stripHash ${src})"
+          fi
+
+          # Restore write permissions to make building work
+          chmod -R u+w "$strippedName"
+
+          # Move the extracted directory into the output folder
+          mv "$strippedName" "$DIR/${packageName}"
+      fi
+
+      # Unset the stripped name to not confuse the next unpack step
+      unset strippedName
+
+      # Include the dependencies of the package
+      cd "$DIR/${packageName}"
+      ${includeDependencies { inherit dependencies; }}
+      cd ..
+      ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+    '';
+
+  pinpointDependencies = {dependencies, production}:
+    let
+      pinpointDependenciesFromPackageJSON = writeTextFile {
+        name = "pinpointDependencies.js";
+        text = ''
+          var fs = require('fs');
+          var path = require('path');
+
+          function resolveDependencyVersion(location, name) {
+              if(location == process.env['NIX_STORE']) {
+                  return null;
+              } else {
+                  var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json");
+
+                  if(fs.existsSync(dependencyPackageJSON)) {
+                      var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON));
+
+                      if(dependencyPackageObj.name == name) {
+                          return dependencyPackageObj.version;
+                      }
+                  } else {
+                      return resolveDependencyVersion(path.resolve(location, ".."), name);
+                  }
+              }
+          }
+
+          function replaceDependencies(dependencies) {
+              if(typeof dependencies == "object" && dependencies !== null) {
+                  for(var dependency in dependencies) {
+                      var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency);
+
+                      if(resolvedVersion === null) {
+                          process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n");
+                      } else {
+                          dependencies[dependency] = resolvedVersion;
+                      }
+                  }
+              }
+          }
+
+          /* Read the package.json configuration */
+          var packageObj = JSON.parse(fs.readFileSync('./package.json'));
+
+          /* Pinpoint all dependencies */
+          replaceDependencies(packageObj.dependencies);
+          if(process.argv[2] == "development") {
+              replaceDependencies(packageObj.devDependencies);
+          }
+          replaceDependencies(packageObj.optionalDependencies);
+
+          /* Write the fixed package.json file */
+          fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
+        '';
+      };
+    in
+    ''
+      node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
+
+      ${stdenv.lib.optionalString (dependencies != [])
+        ''
+          if [ -d node_modules ]
+          then
+              cd node_modules
+              ${stdenv.lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
+              cd ..
+          fi
+        ''}
+    '';
+
+  # Recursively traverses all dependencies of a package and pinpoints all
+  # dependencies in the package.json file to the versions that are actually
+  # being used.
+
+  pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
+    ''
+      if [ -d "${packageName}" ]
+      then
+          cd "${packageName}"
+          ${pinpointDependencies { inherit dependencies production; }}
+          cd ..
+          ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+      fi
+    '';
+
+  # Extract the Node.js source code which is used to compile packages with
+  # native bindings
+  nodeSources = runCommand "node-sources" {} ''
+    tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
+    mv node-* $out
+  '';
+
+  # Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty)
+  addIntegrityFieldsScript = writeTextFile {
+    name = "addintegrityfields.js";
+    text = ''
+      var fs = require('fs');
+      var path = require('path');
+
+      function augmentDependencies(baseDir, dependencies) {
+          for(var dependencyName in dependencies) {
+              var dependency = dependencies[dependencyName];
+
+              // Open package.json and augment metadata fields
+              var packageJSONDir = path.join(baseDir, "node_modules", dependencyName);
+              var packageJSONPath = path.join(packageJSONDir, "package.json");
+
+              if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored
+                  console.log("Adding metadata fields to: "+packageJSONPath);
+                  var packageObj = JSON.parse(fs.readFileSync(packageJSONPath));
+
+                  if(dependency.integrity) {
+                      packageObj["_integrity"] = dependency.integrity;
+                  } else {
+                      packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads.
+                  }
+
+                  if(dependency.resolved) {
+                      packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided
+                  } else {
+                      packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories.
+                  }
+
+                  if(dependency.from !== undefined) { // Adopt from property if one has been provided
+                      packageObj["_from"] = dependency.from;
+                  }
+
+                  fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2));
+              }
+
+              // Augment transitive dependencies
+              if(dependency.dependencies !== undefined) {
+                  augmentDependencies(packageJSONDir, dependency.dependencies);
+              }
+          }
+      }
+
+      if(fs.existsSync("./package-lock.json")) {
+          var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
+
+          if(packageLock.lockfileVersion !== 1) {
+             process.stderr.write("Sorry, I only understand lock file version 1!\n");
+             process.exit(1);
+          }
+
+          if(packageLock.dependencies !== undefined) {
+              augmentDependencies(".", packageLock.dependencies);
+          }
+      }
+    '';
+  };
+
+  # Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
+  reconstructPackageLock = writeTextFile {
+    name = "addintegrityfields.js";
+    text = ''
+      var fs = require('fs');
+      var path = require('path');
+
+      var packageObj = JSON.parse(fs.readFileSync("package.json"));
+
+      var lockObj = {
+          name: packageObj.name,
+          version: packageObj.version,
+          lockfileVersion: 1,
+          requires: true,
+          dependencies: {}
+      };
+
+      function augmentPackageJSON(filePath, dependencies) {
+          var packageJSON = path.join(filePath, "package.json");
+          if(fs.existsSync(packageJSON)) {
+              var packageObj = JSON.parse(fs.readFileSync(packageJSON));
+              dependencies[packageObj.name] = {
+                  version: packageObj.version,
+                  integrity: "sha1-000000000000000000000000000=",
+                  dependencies: {}
+              };
+              processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
+          }
+      }
+
+      function processDependencies(dir, dependencies) {
+          if(fs.existsSync(dir)) {
+              var files = fs.readdirSync(dir);
+
+              files.forEach(function(entry) {
+                  var filePath = path.join(dir, entry);
+                  var stats = fs.statSync(filePath);
+
+                  if(stats.isDirectory()) {
+                      if(entry.substr(0, 1) == "@") {
+                          // When we encounter a namespace folder, augment all packages belonging to the scope
+                          var pkgFiles = fs.readdirSync(filePath);
+
+                          pkgFiles.forEach(function(entry) {
+                              if(stats.isDirectory()) {
+                                  var pkgFilePath = path.join(filePath, entry);
+                                  augmentPackageJSON(pkgFilePath, dependencies);
+                              }
+                          });
+                      } else {
+                          augmentPackageJSON(filePath, dependencies);
+                      }
+                  }
+              });
+          }
+      }
+
+      processDependencies("node_modules", lockObj.dependencies);
+
+      fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
+    '';
+  };
+
+  prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
+    let
+      forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
+    in
+    ''
+        # Pinpoint the versions of all dependencies to the ones that are actually being used
+        echo "pinpointing versions of dependencies..."
+        source $pinpointDependenciesScriptPath
+
+        # Patch the shebangs of the bundled modules to prevent them from
+        # calling executables outside the Nix store as much as possible
+        patchShebangs .
+
+        # Deploy the Node.js package by running npm install. Since the
+        # dependencies have been provided already by ourselves, it should not
+        # attempt to install them again, which is good, because we want to make
+        # it Nix's responsibility. If it needs to install any dependencies
+        # anyway (e.g. because the dependency parameters are
+        # incomplete/incorrect), it fails.
+        #
+        # The other responsibilities of NPM are kept -- version checks, build
+        # steps, postprocessing etc.
+
+        export HOME=$TMPDIR
+        cd "${packageName}"
+        runHook preRebuild
+
+        ${stdenv.lib.optionalString bypassCache ''
+          ${stdenv.lib.optionalString reconstructLock ''
+            if [ -f package-lock.json ]
+            then
+                echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
+                echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
+                rm package-lock.json
+            else
+                echo "No package-lock.json file found, reconstructing..."
+            fi
+
+            node ${reconstructPackageLock}
+          ''}
+
+          node ${addIntegrityFieldsScript}
+        ''}
+
+        npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild
+
+        if [ "$dontNpmInstall" != "1" ]
+        then
+            # NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
+            rm -f npm-shrinkwrap.json
+
+            npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install
+        fi
+    '';
+
+  # Builds and composes an NPM package including all its dependencies
+  buildNodePackage =
+    { name
+    , packageName
+    , version
+    , dependencies ? []
+    , buildInputs ? []
+    , production ? true
+    , npmFlags ? ""
+    , dontNpmInstall ? false
+    , bypassCache ? false
+    , reconstructLock ? false
+    , preRebuild ? ""
+    , dontStrip ? true
+    , unpackPhase ? "true"
+    , buildPhase ? "true"
+    , ... }@args:
+
+    let
+      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
+    in
+    stdenv.mkDerivation ({
+      name = "node_${name}-${version}";
+      buildInputs = [ tarWrapper python nodejs ]
+        ++ stdenv.lib.optional (stdenv.isLinux) utillinux
+        ++ stdenv.lib.optional (stdenv.isDarwin) libtool
+        ++ buildInputs;
+
+      inherit dontStrip; # Stripping may fail a build for some package deployments
+      inherit dontNpmInstall preRebuild unpackPhase buildPhase;
+
+      compositionScript = composePackage args;
+      pinpointDependenciesScript = pinpointDependenciesOfPackage args;
+
+      passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
+
+      installPhase = ''
+        # Create and enter a root node_modules/ folder
+        mkdir -p $out/lib/node_modules
+        cd $out/lib/node_modules
+
+        # Compose the package and all its dependencies
+        source $compositionScriptPath
+
+        ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
+
+        # Create symlink to the deployed executable folder, if applicable
+        if [ -d "$out/lib/node_modules/.bin" ]
+        then
+            ln -s $out/lib/node_modules/.bin $out/bin
+        fi
+
+        # Create symlinks to the deployed manual page folders, if applicable
+        if [ -d "$out/lib/node_modules/${packageName}/man" ]
+        then
+            mkdir -p $out/share
+            for dir in "$out/lib/node_modules/${packageName}/man/"*
+            do
+                mkdir -p $out/share/man/$(basename "$dir")
+                for page in "$dir"/*
+                do
+                    ln -s $page $out/share/man/$(basename "$dir")
+                done
+            done
+        fi
+
+        # Run post install hook, if provided
+        runHook postInstall
+      '';
+    } // extraArgs);
+
+  # Builds a development shell
+  buildNodeShell =
+    { name
+    , packageName
+    , version
+    , src
+    , dependencies ? []
+    , buildInputs ? []
+    , production ? true
+    , npmFlags ? ""
+    , dontNpmInstall ? false
+    , bypassCache ? false
+    , reconstructLock ? false
+    , dontStrip ? true
+    , unpackPhase ? "true"
+    , buildPhase ? "true"
+    , ... }@args:
+
+    let
+      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
+
+      nodeDependencies = stdenv.mkDerivation ({
+        name = "node-dependencies-${name}-${version}";
+
+        buildInputs = [ tarWrapper python nodejs ]
+          ++ stdenv.lib.optional (stdenv.isLinux) utillinux
+          ++ stdenv.lib.optional (stdenv.isDarwin) libtool
+          ++ buildInputs;
+
+        inherit dontStrip; # Stripping may fail a build for some package deployments
+        inherit dontNpmInstall unpackPhase buildPhase;
+
+        includeScript = includeDependencies { inherit dependencies; };
+        pinpointDependenciesScript = pinpointDependenciesOfPackage args;
+
+        passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
+
+        installPhase = ''
+          mkdir -p $out/${packageName}
+          cd $out/${packageName}
+
+          source $includeScriptPath
+
+          # Create fake package.json to make the npm commands work properly
+          cp ${src}/package.json .
+          chmod 644 package.json
+          ${stdenv.lib.optionalString bypassCache ''
+            if [ -f ${src}/package-lock.json ]
+            then
+                cp ${src}/package-lock.json .
+            fi
+          ''}
+
+          # Go to the parent folder to make sure that all packages are pinpointed
+          cd ..
+          ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+
+          ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
+
+          # Expose the executables that were installed
+          cd ..
+          ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+
+          mv ${packageName} lib
+          ln -s $out/lib/node_modules/.bin $out/bin
+        '';
+      } // extraArgs);
+    in
+    stdenv.mkDerivation {
+      name = "node-shell-${name}-${version}";
+
+      buildInputs = [ python nodejs ] ++ stdenv.lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
+      buildCommand = ''
+        mkdir -p $out/bin
+        cat > $out/bin/shell <<EOF
+        #! ${stdenv.shell} -e
+        $shellHook
+        exec ${stdenv.shell}
+        EOF
+        chmod +x $out/bin/shell
+      '';
+
+      # Provide the dependencies in a development shell through the NODE_PATH environment variable
+      inherit nodeDependencies;
+      shellHook = stdenv.lib.optionalString (dependencies != []) ''
+        export NODE_PATH=$nodeDependencies/lib/node_modules
+        export PATH="$nodeDependencies/bin:$PATH"
+      '';
+    };
+in
+{
+  buildNodeSourceDist = stdenv.lib.makeOverridable buildNodeSourceDist;
+  buildNodePackage = stdenv.lib.makeOverridable buildNodePackage;
+  buildNodeShell = stdenv.lib.makeOverridable buildNodeShell;
+}
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix
new file mode 100644
index 00000000000..012ad195a71
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix
@@ -0,0 +1,1426 @@
+# This file has been generated by node2nix 1.7.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "abbrev-1.1.1" = {
+      name = "abbrev";
+      packageName = "abbrev";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz";
+        sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==";
+      };
+    };
+    "ajv-6.10.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.10.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz";
+        sha512 = "TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==";
+      };
+    };
+    "another-json-0.2.0" = {
+      name = "another-json";
+      packageName = "another-json";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/another-json/-/another-json-0.2.0.tgz";
+        sha1 = "b5f4019c973b6dd5c6506a2d93469cb6d32aeedc";
+      };
+    };
+    "ansi-regex-2.1.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    };
+    "aproba-1.2.0" = {
+      name = "aproba";
+      packageName = "aproba";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz";
+        sha512 = "Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==";
+      };
+    };
+    "are-we-there-yet-1.1.5" = {
+      name = "are-we-there-yet";
+      packageName = "are-we-there-yet";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz";
+        sha512 = "5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==";
+      };
+    };
+    "asn1-0.2.4" = {
+      name = "asn1";
+      packageName = "asn1";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
+        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
+      };
+    };
+    "assert-plus-1.0.0" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    };
+    "aws-sign2-0.7.0" = {
+      name = "aws-sign2";
+      packageName = "aws-sign2";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
+        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
+      };
+    };
+    "aws4-1.9.0" = {
+      name = "aws4";
+      packageName = "aws4";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz";
+        sha512 = "Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==";
+      };
+    };
+    "balanced-match-1.0.0" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
+        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+      };
+    };
+    "bcrypt-pbkdf-1.0.2" = {
+      name = "bcrypt-pbkdf";
+      packageName = "bcrypt-pbkdf";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
+        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
+      };
+    };
+    "brace-expansion-1.1.11" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    };
+    "browser-request-0.3.3" = {
+      name = "browser-request";
+      packageName = "browser-request";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz";
+        sha1 = "9ece5b5aca89a29932242e18bf933def9876cc17";
+      };
+    };
+    "caseless-0.12.0" = {
+      name = "caseless";
+      packageName = "caseless";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
+        sha1 = "1b681c21ff84033c826543090689420d187151dc";
+      };
+    };
+    "chownr-1.1.3" = {
+      name = "chownr";
+      packageName = "chownr";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz";
+        sha512 = "i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==";
+      };
+    };
+    "code-point-at-1.1.0" = {
+      name = "code-point-at";
+      packageName = "code-point-at";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz";
+        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
+      };
+    };
+    "combined-stream-1.0.8" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
+      };
+    };
+    "concat-map-0.0.1" = {
+      name = "concat-map";
+      packageName = "concat-map";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    };
+    "console-control-strings-1.1.0" = {
+      name = "console-control-strings";
+      packageName = "console-control-strings";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz";
+        sha1 = "3d7cf4464db6446ea644bf4b39507f9851008e8e";
+      };
+    };
+    "core-util-is-1.0.2" = {
+      name = "core-util-is";
+      packageName = "core-util-is";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    };
+    "dashdash-1.14.1" = {
+      name = "dashdash";
+      packageName = "dashdash";
+      version = "1.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
+        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
+      };
+    };
+    "debug-3.2.6" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz";
+        sha512 = "mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==";
+      };
+    };
+    "deep-extend-0.6.0" = {
+      name = "deep-extend";
+      packageName = "deep-extend";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    };
+    "delegates-1.0.0" = {
+      name = "delegates";
+      packageName = "delegates";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz";
+        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
+      };
+    };
+    "detect-libc-1.0.3" = {
+      name = "detect-libc";
+      packageName = "detect-libc";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz";
+        sha1 = "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b";
+      };
+    };
+    "ecc-jsbn-0.1.2" = {
+      name = "ecc-jsbn";
+      packageName = "ecc-jsbn";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
+        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
+      };
+    };
+    "encoding-0.1.12" = {
+      name = "encoding";
+      packageName = "encoding";
+      version = "0.1.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz";
+        sha1 = "538b66f3ee62cd1ab51ec323829d1f9480c74beb";
+      };
+    };
+    "extend-3.0.2" = {
+      name = "extend";
+      packageName = "extend";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
+        sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
+      };
+    };
+    "extsprintf-1.3.0" = {
+      name = "extsprintf";
+      packageName = "extsprintf";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
+        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
+      };
+    };
+    "fast-deep-equal-2.0.1" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
+        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+      };
+    };
+    "fast-json-stable-stringify-2.0.0" = {
+      name = "fast-json-stable-stringify";
+      packageName = "fast-json-stable-stringify";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
+        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+      };
+    };
+    "forever-agent-0.6.1" = {
+      name = "forever-agent";
+      packageName = "forever-agent";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+      };
+    };
+    "form-data-2.3.3" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
+        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
+      };
+    };
+    "fs-minipass-1.2.7" = {
+      name = "fs-minipass";
+      packageName = "fs-minipass";
+      version = "1.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz";
+        sha512 = "GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==";
+      };
+    };
+    "fs.realpath-1.0.0" = {
+      name = "fs.realpath";
+      packageName = "fs.realpath";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+      };
+    };
+    "gauge-2.7.4" = {
+      name = "gauge";
+      packageName = "gauge";
+      version = "2.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz";
+        sha1 = "2c03405c7538c39d7eb37b317022e325fb018bf7";
+      };
+    };
+    "getpass-0.1.7" = {
+      name = "getpass";
+      packageName = "getpass";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
+        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
+      };
+    };
+    "glob-7.1.6" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz";
+        sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==";
+      };
+    };
+    "graceful-fs-4.2.3" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha512 = "a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==";
+      };
+    };
+    "har-schema-2.0.0" = {
+      name = "har-schema";
+      packageName = "har-schema";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
+        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
+      };
+    };
+    "har-validator-5.1.3" = {
+      name = "har-validator";
+      packageName = "har-validator";
+      version = "5.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz";
+        sha512 = "sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==";
+      };
+    };
+    "has-unicode-2.0.1" = {
+      name = "has-unicode";
+      packageName = "has-unicode";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz";
+        sha1 = "e0e6fe6a28cf51138855e086d1691e771de2a8b9";
+      };
+    };
+    "http-signature-1.2.0" = {
+      name = "http-signature";
+      packageName = "http-signature";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    };
+    "iconv-lite-0.4.24" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
+      };
+    };
+    "ignore-walk-3.0.3" = {
+      name = "ignore-walk";
+      packageName = "ignore-walk";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz";
+        sha512 = "m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==";
+      };
+    };
+    "imurmurhash-0.1.4" = {
+      name = "imurmurhash";
+      packageName = "imurmurhash";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
+      };
+    };
+    "inflight-1.0.6" = {
+      name = "inflight";
+      packageName = "inflight";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    };
+    "inherits-2.0.4" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
+      };
+    };
+    "ini-1.3.5" = {
+      name = "ini";
+      packageName = "ini";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz";
+        sha512 = "RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==";
+      };
+    };
+    "is-fullwidth-code-point-1.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
+        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
+      };
+    };
+    "is-stream-1.1.0" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz";
+        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
+      };
+    };
+    "is-typedarray-1.0.0" = {
+      name = "is-typedarray";
+      packageName = "is-typedarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    };
+    "isarray-1.0.0" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    };
+    "isstream-0.1.2" = {
+      name = "isstream";
+      packageName = "isstream";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    };
+    "jsbn-0.1.1" = {
+      name = "jsbn";
+      packageName = "jsbn";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
+        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
+      };
+    };
+    "json-schema-0.2.3" = {
+      name = "json-schema";
+      packageName = "json-schema";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
+        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
+      };
+    };
+    "json-schema-traverse-0.4.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
+      };
+    };
+    "json-stringify-safe-5.0.1" = {
+      name = "json-stringify-safe";
+      packageName = "json-stringify-safe";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+      };
+    };
+    "jsprim-1.4.1" = {
+      name = "jsprim";
+      packageName = "jsprim";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
+        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
+      };
+    };
+    "marked-0.6.3" = {
+      name = "marked";
+      packageName = "marked";
+      version = "0.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/marked/-/marked-0.6.3.tgz";
+        sha512 = "Fqa7eq+UaxfMriqzYLayfqAE40WN03jf+zHjT18/uXNuzjq3TY0XTbrAoPeqSJrAmPz11VuUA+kBPYOhHt9oOQ==";
+      };
+    };
+    "matrix-js-sdk-0.7.13" = {
+      name = "matrix-js-sdk";
+      packageName = "matrix-js-sdk";
+      version = "0.7.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-0.7.13.tgz";
+        sha1 = "283accc710009f5a0b02367682f2e86155fd00c4";
+      };
+    };
+    "mime-db-1.42.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.42.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz";
+        sha512 = "UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==";
+      };
+    };
+    "mime-types-2.1.25" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.25";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz";
+        sha512 = "5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==";
+      };
+    };
+    "minimatch-3.0.4" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    };
+    "minimist-0.0.8" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+      };
+    };
+    "minimist-1.2.0" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
+        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+      };
+    };
+    "minipass-2.9.0" = {
+      name = "minipass";
+      packageName = "minipass";
+      version = "2.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz";
+        sha512 = "wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==";
+      };
+    };
+    "minizlib-1.3.3" = {
+      name = "minizlib";
+      packageName = "minizlib";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz";
+        sha512 = "6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==";
+      };
+    };
+    "mkdirp-0.5.1" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+      };
+    };
+    "ms-2.1.2" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
+      };
+    };
+    "mustache-2.3.2" = {
+      name = "mustache";
+      packageName = "mustache";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mustache/-/mustache-2.3.2.tgz";
+        sha512 = "KpMNwdQsYz3O/SBS1qJ/o3sqUJ5wSb8gb0pul8CO0S56b9Y2ALm8zCfsjPXsqGFfoNBkDwZuZIAjhsZI03gYVQ==";
+      };
+    };
+    "nan-2.14.0" = {
+      name = "nan";
+      packageName = "nan";
+      version = "2.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz";
+        sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==";
+      };
+    };
+    "needle-2.4.0" = {
+      name = "needle";
+      packageName = "needle";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz";
+        sha512 = "4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==";
+      };
+    };
+    "node-fetch-1.7.3" = {
+      name = "node-fetch";
+      packageName = "node-fetch";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz";
+        sha512 = "NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==";
+      };
+    };
+    "node-localstorage-1.3.1" = {
+      name = "node-localstorage";
+      packageName = "node-localstorage";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-localstorage/-/node-localstorage-1.3.1.tgz";
+        sha512 = "NMWCSWWc6JbHT5PyWlNT2i8r7PgGYXVntmKawY83k/M0UJScZ5jirb61TLnqKwd815DfBQu+lR3sRw08SPzIaQ==";
+      };
+    };
+    "node-pre-gyp-0.11.0" = {
+      name = "node-pre-gyp";
+      packageName = "node-pre-gyp";
+      version = "0.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.11.0.tgz";
+        sha512 = "TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q==";
+      };
+    };
+    "nopt-4.0.1" = {
+      name = "nopt";
+      packageName = "nopt";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz";
+        sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d";
+      };
+    };
+    "npm-bundled-1.0.6" = {
+      name = "npm-bundled";
+      packageName = "npm-bundled";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz";
+        sha512 = "8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==";
+      };
+    };
+    "npm-packlist-1.4.6" = {
+      name = "npm-packlist";
+      packageName = "npm-packlist";
+      version = "1.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.6.tgz";
+        sha512 = "u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg==";
+      };
+    };
+    "npmlog-4.1.2" = {
+      name = "npmlog";
+      packageName = "npmlog";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz";
+        sha512 = "2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==";
+      };
+    };
+    "number-is-nan-1.0.1" = {
+      name = "number-is-nan";
+      packageName = "number-is-nan";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz";
+        sha1 = "097b602b53422a522c1afb8790318336941a011d";
+      };
+    };
+    "oauth-sign-0.9.0" = {
+      name = "oauth-sign";
+      packageName = "oauth-sign";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz";
+        sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
+      };
+    };
+    "object-assign-4.1.1" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    };
+    "olm-https://packages.matrix.org/npm/olm/olm-2.3.0.tgz" = {
+      name = "olm";
+      packageName = "olm";
+      version = "2.3.0";
+      src = fetchurl {
+        name = "olm-2.3.0.tar.gz";
+        url = https://packages.matrix.org/npm/olm/olm-2.3.0.tgz;
+        sha256 = "1f0f037a025a44509646cb849ded7c1a1f55e7bfed240fad19676c002fcd953a";
+      };
+    };
+    "once-1.4.0" = {
+      name = "once";
+      packageName = "once";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    };
+    "os-homedir-1.0.2" = {
+      name = "os-homedir";
+      packageName = "os-homedir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz";
+        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+      };
+    };
+    "os-tmpdir-1.0.2" = {
+      name = "os-tmpdir";
+      packageName = "os-tmpdir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    };
+    "osenv-0.1.5" = {
+      name = "osenv";
+      packageName = "osenv";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz";
+        sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==";
+      };
+    };
+    "path-is-absolute-1.0.1" = {
+      name = "path-is-absolute";
+      packageName = "path-is-absolute";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    };
+    "performance-now-2.1.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
+        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
+      };
+    };
+    "process-nextick-args-2.0.1" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
+      };
+    };
+    "psl-1.4.0" = {
+      name = "psl";
+      packageName = "psl";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz";
+        sha512 = "HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==";
+      };
+    };
+    "punycode-1.4.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    };
+    "punycode-2.1.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+      };
+    };
+    "q-1.5.1" = {
+      name = "q";
+      packageName = "q";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-1.5.1.tgz";
+        sha1 = "7e32f75b41381291d04611f1bf14109ac00651d7";
+      };
+    };
+    "qs-6.5.2" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
+        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
+      };
+    };
+    "rc-1.2.8" = {
+      name = "rc";
+      packageName = "rc";
+      version = "1.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
+      };
+    };
+    "readable-stream-2.3.6" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz";
+        sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==";
+      };
+    };
+    "request-2.88.0" = {
+      name = "request";
+      packageName = "request";
+      version = "2.88.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request/-/request-2.88.0.tgz";
+        sha512 = "NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==";
+      };
+    };
+    "rimraf-2.7.1" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "2.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz";
+        sha512 = "uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safe-buffer-5.2.0" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz";
+        sha512 = "fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "sax-1.2.4" = {
+      name = "sax";
+      packageName = "sax";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz";
+        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
+      };
+    };
+    "semver-5.7.1" = {
+      name = "semver";
+      packageName = "semver";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz";
+        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
+      };
+    };
+    "set-blocking-2.0.0" = {
+      name = "set-blocking";
+      packageName = "set-blocking";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz";
+        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
+      };
+    };
+    "signal-exit-3.0.2" = {
+      name = "signal-exit";
+      packageName = "signal-exit";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz";
+        sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
+      };
+    };
+    "slide-1.1.6" = {
+      name = "slide";
+      packageName = "slide";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz";
+        sha1 = "56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707";
+      };
+    };
+    "sqlite3-4.1.0" = {
+      name = "sqlite3";
+      packageName = "sqlite3";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sqlite3/-/sqlite3-4.1.0.tgz";
+        sha512 = "RvqoKxq+8pDHsJo7aXxsFR18i+dU2Wp5o12qAJOV5LNcDt+fgJsc2QKKg3sIRfXrN9ZjzY1T7SNe/DFVqAXjaw==";
+      };
+    };
+    "sshpk-1.16.1" = {
+      name = "sshpk";
+      packageName = "sshpk";
+      version = "1.16.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz";
+        sha512 = "HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==";
+      };
+    };
+    "string-width-1.0.2" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz";
+        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
+      };
+    };
+    "string_decoder-1.1.1" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
+      };
+    };
+    "strip-ansi-3.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    };
+    "strip-json-comments-2.0.1" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
+      };
+    };
+    "tar-4.4.13" = {
+      name = "tar";
+      packageName = "tar";
+      version = "4.4.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz";
+        sha512 = "w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==";
+      };
+    };
+    "tough-cookie-2.4.3" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz";
+        sha512 = "Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==";
+      };
+    };
+    "tunnel-agent-0.6.0" = {
+      name = "tunnel-agent";
+      packageName = "tunnel-agent";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
+        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
+      };
+    };
+    "tweetnacl-0.14.5" = {
+      name = "tweetnacl";
+      packageName = "tweetnacl";
+      version = "0.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
+        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
+      };
+    };
+    "uri-js-4.2.2" = {
+      name = "uri-js";
+      packageName = "uri-js";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz";
+        sha512 = "KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==";
+      };
+    };
+    "util-deprecate-1.0.2" = {
+      name = "util-deprecate";
+      packageName = "util-deprecate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    };
+    "uuid-3.3.3" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz";
+        sha512 = "pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==";
+      };
+    };
+    "verror-1.10.0" = {
+      name = "verror";
+      packageName = "verror";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
+        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+      };
+    };
+    "wide-align-1.1.3" = {
+      name = "wide-align";
+      packageName = "wide-align";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz";
+        sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
+      };
+    };
+    "wrappy-1.0.2" = {
+      name = "wrappy";
+      packageName = "wrappy";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    };
+    "write-file-atomic-1.3.4" = {
+      name = "write-file-atomic";
+      packageName = "write-file-atomic";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz";
+        sha1 = "f807a4f0b1d9e913ae7a48112e6cc3af1991b45f";
+      };
+    };
+    "yallist-3.1.1" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz";
+        sha512 = "a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==";
+      };
+    };
+  };
+  node-pre-gyp = nodeEnv.buildNodePackage {
+    name = "node-pre-gyp";
+    packageName = "node-pre-gyp";
+    version = "0.14.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz";
+      sha512 = "+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==";
+    };
+    dependencies = [
+      sources."abbrev-1.1.1"
+      sources."ansi-regex-2.1.1"
+      sources."aproba-1.2.0"
+      sources."are-we-there-yet-1.1.5"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."chownr-1.1.3"
+      sources."code-point-at-1.1.0"
+      sources."concat-map-0.0.1"
+      sources."console-control-strings-1.1.0"
+      sources."core-util-is-1.0.2"
+      sources."debug-3.2.6"
+      sources."deep-extend-0.6.0"
+      sources."delegates-1.0.0"
+      sources."detect-libc-1.0.3"
+      sources."fs-minipass-1.2.7"
+      sources."fs.realpath-1.0.0"
+      sources."gauge-2.7.4"
+      sources."glob-7.1.6"
+      sources."has-unicode-2.0.1"
+      sources."iconv-lite-0.4.24"
+      sources."ignore-walk-3.0.3"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.5"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."isarray-1.0.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."minipass-2.9.0"
+      sources."minizlib-1.3.3"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.1.2"
+      sources."needle-2.4.0"
+      sources."nopt-4.0.1"
+      sources."npm-bundled-1.0.6"
+      sources."npm-packlist-1.4.6"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
+      sources."object-assign-4.1.1"
+      sources."once-1.4.0"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."osenv-0.1.5"
+      sources."path-is-absolute-1.0.1"
+      sources."process-nextick-args-2.0.1"
+      (sources."rc-1.2.8" // {
+        dependencies = [
+          sources."minimist-1.2.0"
+        ];
+      })
+      sources."readable-stream-2.3.6"
+      sources."rimraf-2.7.1"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."semver-5.7.1"
+      sources."set-blocking-2.0.0"
+      sources."signal-exit-3.0.2"
+      sources."string-width-1.0.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-json-comments-2.0.1"
+      sources."tar-4.4.13"
+      sources."util-deprecate-1.0.2"
+      sources."wide-align-1.1.3"
+      sources."wrappy-1.0.2"
+      sources."yallist-3.1.1"
+    ];
+    buildInputs = [];
+    meta = {
+      description = "Node.js native addon binary install tool";
+      homepage = "https://github.com/mapbox/node-pre-gyp#readme";
+      license = "BSD-3-Clause";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
+  args = {
+    name = "matrix-recorder";
+    packageName = "matrix-recorder";
+    version = "0.0.6";
+    src = fetchgit {
+      url = "https://gitlab.com/argit/matrix-recorder/";
+      rev = "006b78c8a4ddc636be8f6f1e3875b13a4a6d2c7c";
+      sha256 = "0m3kzwbrxymwl6hr981q6fsf752fqxwzbpxryx25j4lkwc23nmj3";
+    };
+    dependencies = [
+      sources."abbrev-1.1.1"
+      sources."ajv-6.10.2"
+      sources."another-json-0.2.0"
+      sources."ansi-regex-2.1.1"
+      sources."aproba-1.2.0"
+      sources."are-we-there-yet-1.1.5"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.9.0"
+      sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."browser-request-0.3.3"
+      sources."caseless-0.12.0"
+      sources."chownr-1.1.3"
+      sources."code-point-at-1.1.0"
+      sources."combined-stream-1.0.8"
+      sources."concat-map-0.0.1"
+      sources."console-control-strings-1.1.0"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-3.2.6"
+      sources."deep-extend-0.6.0"
+      sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
+      sources."detect-libc-1.0.3"
+      sources."ecc-jsbn-0.1.2"
+      sources."encoding-0.1.12"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-2.0.1"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.3"
+      sources."fs-minipass-1.2.7"
+      sources."fs.realpath-1.0.0"
+      sources."gauge-2.7.4"
+      sources."getpass-0.1.7"
+      sources."glob-7.1.6"
+      sources."graceful-fs-4.2.3"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.1.3"
+      sources."has-unicode-2.0.1"
+      sources."http-signature-1.2.0"
+      sources."iconv-lite-0.4.24"
+      sources."ignore-walk-3.0.3"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.5"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.4.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."marked-0.6.3"
+      sources."matrix-js-sdk-0.7.13"
+      sources."mime-db-1.42.0"
+      sources."mime-types-2.1.25"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."minipass-2.9.0"
+      sources."minizlib-1.3.3"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.1.2"
+      sources."mustache-2.3.2"
+      sources."nan-2.14.0"
+      sources."needle-2.4.0"
+      sources."node-fetch-1.7.3"
+      sources."node-localstorage-1.3.1"
+      sources."node-pre-gyp-0.11.0"
+      sources."nopt-4.0.1"
+      sources."npm-bundled-1.0.6"
+      sources."npm-packlist-1.4.6"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
+      sources."oauth-sign-0.9.0"
+      sources."object-assign-4.1.1"
+      sources."olm-https://packages.matrix.org/npm/olm/olm-2.3.0.tgz"
+      sources."once-1.4.0"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."osenv-0.1.5"
+      sources."path-is-absolute-1.0.1"
+      sources."performance-now-2.1.0"
+      sources."process-nextick-args-2.0.1"
+      sources."psl-1.4.0"
+      sources."punycode-2.1.1"
+      sources."q-1.5.1"
+      sources."qs-6.5.2"
+      (sources."rc-1.2.8" // {
+        dependencies = [
+          sources."minimist-1.2.0"
+        ];
+      })
+      (sources."readable-stream-2.3.6" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
+      sources."request-2.88.0"
+      sources."rimraf-2.7.1"
+      sources."safe-buffer-5.2.0"
+      sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."semver-5.7.1"
+      sources."set-blocking-2.0.0"
+      sources."signal-exit-3.0.2"
+      sources."slide-1.1.6"
+      sources."sqlite3-4.1.0"
+      sources."sshpk-1.16.1"
+      sources."string-width-1.0.2"
+      (sources."string_decoder-1.1.1" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
+      sources."strip-ansi-3.0.1"
+      sources."strip-json-comments-2.0.1"
+      sources."tar-4.4.13"
+      (sources."tough-cookie-2.4.3" // {
+        dependencies = [
+          sources."punycode-1.4.1"
+        ];
+      })
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."uri-js-4.2.2"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.3"
+      sources."verror-1.10.0"
+      sources."wide-align-1.1.3"
+      sources."wrappy-1.0.2"
+      sources."write-file-atomic-1.3.4"
+      sources."yallist-3.1.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A recorder that can record Matrix rooms you are a member of (including E2E-encrypted rooms).";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
+in
+{
+  tarball = nodeEnv.buildNodeSourceDist args;
+  package = nodeEnv.buildNodePackage args;
+  shell = nodeEnv.buildNodeShell args;
+  inherit node-pre-gyp;
+}
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/package.json b/pkgs/applications/networking/instant-messengers/matrix-recorder/package.json
new file mode 100644
index 00000000000..fc03d636ad2
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/package.json
@@ -0,0 +1,27 @@
+{
+  "name": "matrix-recorder",
+  "version": "0.0.6",
+  "description": "A recorder that can record Matrix rooms you are a member of (including E2E-encrypted rooms).",
+  "author": "Hello Matrix <hello@hello-matrix.net>",
+  "main": "matrix-recorder.js",
+  "scripts": {
+    "start": "node matrix-recorder.js"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://gitlab.com/argit/matrix-recorder.git"
+  },
+  "dependencies": {
+    "marked": "^0.6.2",
+    "matrix-js-sdk": "^0.7.13",
+    "mime-types": "^2.1.14",
+    "mustache": "^2.3.0",
+    "node-fetch": "^1.6.3",
+    "node-localstorage": "^1.3.0",
+    "sqlite3": "^4.0.7",
+    "olm": "https://packages.matrix.org/npm/olm/olm-2.3.0.tgz"
+  },
+  "license": "MIT",
+  "optionalDependencies": {
+  }
+}
diff --git a/pkgs/applications/networking/instant-messengers/matrixcli/default.nix b/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
new file mode 100644
index 00000000000..54b7ef2bd99
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchgit
+  , buildPythonApplication, buildPythonPackage
+  , pygobject3, pytestrunner, requests, responses, pytest, python-olm
+  , canonicaljson, olm
+}:
+let
+  mainsrc = fetchgit {
+    url = "https://github.com/saadnpq/matrixcli";
+    rev = "61ebde173ca2f77185c261c2b7f6db297ca89863";
+    sha256 = "0xcjjy2xwlcixr9fwgzcfjjkivqpk104h7dslfa7lz9jq9pzqzvq";
+    fetchSubmodules = true;
+  };
+
+  sdk = buildPythonPackage rec {
+    name = "${pname}-${version}";
+    pname = "matrix-python-sdk-matrixcli";
+    version = "0.0.2019-08-15";
+    
+    src = "${mainsrc}/matrix-python-sdk/";
+
+    propagatedBuildInputs = [
+      requests responses olm python-olm canonicaljson
+      pytestrunner pytest
+    ];
+
+    doCheck = false;
+    doInstallCheck = false;
+
+    meta = {
+      license = stdenv.lib.licenses.asl20;
+      description = "Fork of Matrix Python SDK";
+      platforms = stdenv.lib.platforms.linux;
+    };
+  };
+
+in
+buildPythonApplication rec {
+  name = "${pname}-${version}";
+  pname = "matrixcli";
+  version = "0.0.2019-08-15";
+
+  src = mainsrc;
+
+  propagatedBuildInputs = [pygobject3 sdk];
+
+  meta = {
+    description = "CLI client for Matrix";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://github.com/saadnpq/matrixcli";
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
index 30012970d78..3338f6159d9 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "riot-web",
   "productName": "Riot",
   "main": "src/electron-main.js",
-  "version": "1.5.0",
+  "version": "1.5.5",
   "description": "A feature-rich client for Matrix.org",
   "author": "New Vector Ltd.",
   "dependencies": {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
index 5dc61ff5cc8..c3fe4b9dd33 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
@@ -6,12 +6,12 @@
 
 let
   executableName = "riot-desktop";
-  version = "1.5.0";
+  version = "1.5.5";
   riot-web-src = fetchFromGitHub {
     owner = "vector-im";
     repo = "riot-web";
     rev = "v${version}";
-    sha256 = "1xi5zg3602d7gdjxskpk2q3anpn2drrkxyirfvi9mzcfp2r05557";
+    sha256 = "18xhqniwxp1sv49qcd9ah8nyy2n2yliy3wg613raxjl16qvvzxmc";
   };
 
 in mkYarnPackage rec {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
index ccfad7259a5..93c3d837b05 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "riot-web";
-  version = "1.5.0";
+  version = "1.5.5";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "08r9473ncfy3wzqhnds729s77fq82jjgz8w3yya07aahcxzasi94";
+    sha256 = "0isln25sl5jvvlqvh822w73a4i82x75g1ywf3p9n5m1a5sr9f537";
   };
 
   installPhase = let
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index 027b5b5805c..c821c4b0f44 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-cli";
-  version = "0.6.3";
+  version = "0.6.5";
 
   # Building from source would be preferred, but is much more involved.
   src = fetchurl {
     url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
-    sha256 = "1gvdifscyxmxn2dwlkqi684ahy5kbcj84mqda0m8l4aa8iaq1d59";
+    sha256 = "082kq8kadxbwzf31fmlq4in714id2irk0hhqsl53vsl3wmv45zvv";
   };
 
   buildInputs = lib.optional stdenv.isLinux [ libmatthew_java dbus dbus_java ];
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index 2893f21357b..a368473b0c8 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -7,7 +7,7 @@ let
 
   # Please keep the version x.y.0.z and do not update to x.y.76.z because the
   # source of the latter disappears much faster.
-  version = "8.54.0.85";
+  version = "8.54.0.91";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
@@ -63,7 +63,7 @@ let
           "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
           "https://web.archive.org/web/https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
         ];
-        sha256 = "09k260g9qy4n8vy6wr2jb5mm27cvqyapmv8vj4ff2j72f3ad31vm";
+        sha256 = "1hnha8sqk78zxkjqg62npmg6dymi5fnyj2bmxlwpgi61v3pyxj94";
       }
     else
       throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
index f395c2a8055..0079d9f324f 100644
--- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, fetchurl, makeDesktopItem
-
-, alsaLib, at-spi2-atk, atk, cairo, cups, dbus, dpkg, expat, fontconfig
-, freetype, gdk-pixbuf, glib, gtk3, hunspell, libX11, libXScrnSaver
-, libXcomposite, libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr
-, libXrender, libXtst, libnotify, libuuid, nspr, nss, pango, pciutils
-, pulseaudio, udev, xdg_utils, xorg
-
-, cpio, xar
+{ atomEnv
+, autoPatchelfHook
+, dpkg
+, fetchurl
+, makeDesktopItem
+, makeWrapper
+, stdenv
+, udev
+, wrapGAppsHook
+, cpio
+, xar
 }:
 
 let
@@ -18,13 +20,13 @@ let
   pname = "wire-desktop";
 
   version = {
-    x86_64-linux = "3.11.2912";
     x86_64-darwin = "3.10.3215";
+    x86_64-linux = "3.11.2912";
   }.${system} or throwSystem;
 
   sha256 = {
-    x86_64-linux = "1d2wa13d750dd2vslnvzf0ibwjmf5s299pxq0rs2x98y2sabw3sl";
     x86_64-darwin = "0ygm3fgy9k1dp2kjfwsrrwq1i88wgxc6k8y80yz61ivdawgph9wa";
+    x86_64-linux = "1d2wa13d750dd2vslnvzf0ibwjmf5s299pxq0rs2x98y2sabw3sl";
   }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
@@ -40,11 +42,19 @@ let
         * Timed messages and chats
         * Synced across your phone, desktop and tablet
     '';
-    homepage = https://wire.com/;
-    downloadPage = https://wire.com/download/;
+    homepage = "https://wire.com/";
+    downloadPage = "https://wire.com/download/";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ arianvp toonn worldofpeace ];
-    platforms = [ "x86_64-darwin" "x86_64-linux" ];
+    maintainers = with maintainers; [
+      arianvp
+      kiwi
+      toonn
+      worldofpeace
+    ];
+    platforms = [
+      "x86_64-darwin"
+      "x86_64-linux"
+    ];
   };
 
   linux = stdenv.mkDerivation rec {
@@ -52,54 +62,55 @@ let
 
     src = fetchurl {
       url = "https://wire-app.wire.com/linux/debian/pool/main/"
-        + "Wire-${version}_amd64.deb";
+      + "Wire-${version}_amd64.deb";
       inherit sha256;
     };
 
     desktopItem = makeDesktopItem {
-      name = "wire-desktop";
-      exec = "wire-desktop %U";
-      icon = "wire-desktop";
+      categories = "Network;InstantMessaging;Chat;VideoConference";
       comment = "Secure messenger for everyone";
       desktopName = "Wire Desktop";
+      exec = "wire-desktop %U";
       genericName = "Secure messenger";
-      categories = "Network;InstantMessaging;Chat;VideoConference";
+      icon = "wire-desktop";
+      name = "wire-desktop";
     };
 
     dontBuild = true;
-    dontPatchELF = true;
     dontConfigure = true;
+    dontPatchELF = true;
+    dontWrapGApps = true;
 
-    nativeBuildInputs = [ dpkg ];
-    rpath = stdenv.lib.makeLibraryPath [
-      alsaLib at-spi2-atk atk cairo cups dbus expat fontconfig freetype
-      gdk-pixbuf glib gtk3 hunspell libX11 libXScrnSaver libXcomposite
-      libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
-      libXtst libnotify libuuid nspr nss pango pciutils pulseaudio
-      stdenv.cc.cc udev xdg_utils xorg.libxcb
+    nativeBuildInputs = [
+      autoPatchelfHook
+      dpkg
+      makeWrapper
+      wrapGAppsHook
     ];
 
+    buildInputs = atomEnv.packages;
+
     unpackPhase = "dpkg-deb -x $src .";
 
     installPhase = ''
-      mkdir -p "$out"
+      mkdir -p "$out/bin"
       cp -R "opt" "$out"
       cp -R "usr/share" "$out/share"
       chmod -R g-w "$out"
 
-      # Patch wire-desktop
-      patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath "${rpath}:$out/opt/Wire" \
-        "$out/opt/Wire/wire-desktop"
-
-      # Symlink to bin
-      mkdir -p "$out/bin"
-      ln -s "$out/opt/Wire/wire-desktop" "$out/bin/wire-desktop"
-
       # Desktop file
       mkdir -p "$out/share/applications"
       cp "${desktopItem}/share/applications/"* "$out/share/applications"
     '';
+
+    runtimeDependencies = [
+      udev.lib
+    ];
+
+    postFixup = ''
+      makeWrapper $out/opt/Wire/wire-desktop $out/bin/wire-desktop \
+        "''${gappsWrapperArgs[@]}"
+    '';
   };
 
   darwin = stdenv.mkDerivation {
@@ -107,18 +118,20 @@ let
 
     src = fetchurl {
       url = "https://github.com/wireapp/wire-desktop/releases/download/"
-        + "macos%2F${version}/Wire.pkg";
+      + "macos%2F${version}/Wire.pkg";
       inherit sha256;
     };
 
-    buildInputs = [ cpio xar ];
+    buildInputs = [
+      cpio
+      xar
+    ];
 
     unpackPhase = ''
       xar -xf $src
       cd com.wearezeta.zclient.mac.pkg
     '';
 
-
     buildPhase = ''
       cat Payload | gunzip -dc | cpio -i
     '';
@@ -129,6 +142,7 @@ let
     '';
   };
 
-in if stdenv.isDarwin
-  then darwin
-  else linux
+in
+if stdenv.isDarwin
+then darwin
+else linux
diff --git a/pkgs/applications/networking/mailreaders/balsa/default.nix b/pkgs/applications/networking/mailreaders/balsa/default.nix
index ff659959876..e7c9d50cb9b 100644
--- a/pkgs/applications/networking/mailreaders/balsa/default.nix
+++ b/pkgs/applications/networking/mailreaders/balsa/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "balsa";
-  version = "2.5.7";
+  version = "2.5.9";
 
   src = fetchurl {
     url = "https://pawsa.fedorapeople.org/balsa/${pname}-${version}.tar.bz2";
-    sha256 = "0yfqhfpwm1qnwmbpr6dfn2f5w8a8xxq51pn8ypgg0fw973l1c1nx";
+    sha256 = "19gs1qfvbk9qx4rjmgrmvid00kl9k153zjjx8zjii2lz09w7g19i";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/imapfilter.nix b/pkgs/applications/networking/mailreaders/imapfilter.nix
index 9f05020f2c3..587cc40aada 100644
--- a/pkgs/applications/networking/mailreaders/imapfilter.nix
+++ b/pkgs/applications/networking/mailreaders/imapfilter.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "imapfilter";
-  version = "2.6.14";
+  version = "2.6.16";
 
   src = fetchFromGitHub {
     owner = "lefcha";
     repo = "imapfilter";
     rev = "v${version}";
-    sha256 = "09aq9gw1vz0zl6k4fb4zdm6cpjhddsl13asfjx3qy21pbw0azmj6";
+    sha256 = "0f65sg6hhv6778fxwsz4hvarbm97dsb8jj0mg7a9qs273r35pqck";
   };
 
   makeFlagsArray = "PREFIX=$(out)";
diff --git a/pkgs/applications/networking/mailreaders/neomutt/default.nix b/pkgs/applications/networking/mailreaders/neomutt/default.nix
index 4305294297a..79110ac37b2 100644
--- a/pkgs/applications/networking/mailreaders/neomutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/neomutt/default.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "20191111";
+  version = "20191129";
   pname = "neomutt";
 
   src = fetchFromGitHub {
     owner  = "neomutt";
     repo   = "neomutt";
     rev    = version;
-    sha256 = "16xr7wdmjw0i72xbnyyh098wx4cr0m8w2cr1szdi1b14p4kpgr67";
+    sha256 = "1zwnap307qzjkfcap0rxgwwmis77lhr7js4avig0qdqnmqbdlgbh";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/newsreaders/quiterss/default.nix b/pkgs/applications/networking/newsreaders/quiterss/default.nix
index 6274c1c345d..d54e8eca78e 100644
--- a/pkgs/applications/networking/newsreaders/quiterss/default.nix
+++ b/pkgs/applications/networking/newsreaders/quiterss/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "quiterss";
-  version = "0.19.1";
+  version = "0.19.2";
 
   src = fetchFromGitHub {
     owner = "QuiteRSS";
     repo = "quiterss";
     rev = version;
-    sha256 = "0zr17r33g99ylvb1avcbixg2jiwisaks4x91lywv2dy3g6dkpxml";
+    sha256 = "1dmfag5hmy4jac20nizwgd92w8h2hdl2ch57hvw5hmjyfckn9rpj";
   };
 
   nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/applications/networking/p2p/tribler/default.nix
index 65abcf35a35..683507f8b19 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/applications/networking/p2p/tribler/default.nix
@@ -1,48 +1,51 @@
-{ stdenv, fetchurl, pythonPackages, makeWrapper, imagemagick
-, enablePlayer ? true, vlc ? null, qt5 }:
+{ stdenv, fetchurl, pkgs, python3Packages, makeWrapper
+, enablePlayer ? true, vlc ? null, qt5, lib }:
 
 stdenv.mkDerivation rec {
   pname = "tribler";
-  version = "7.1.2";
+  version = "7.4.0-exp1";
 
   src = fetchurl {
-    url = "https://github.com/Tribler/tribler/releases/download/v${version}/Tribler-v${version}.tar.gz";
-    sha256 = "1ayzqx4358qlx56hsnsn5s8xl6mzdb6nw4kwsalmp86dw6vmmis8";
+    url = "https://github.com/Tribler/tribler/releases/download/v${version}/Tribler-v${version}.tar.xz";
+    sha256 = "18ziisg0v2gdxnprbhqsryz92yk270waj0la7m2h326k5qql3qkf";
   };
 
-  buildInputs = [
-    pythonPackages.python
-    pythonPackages.wrapPython
+  nativeBuildInputs = [
+    python3Packages.wrapPython
     makeWrapper
-    imagemagick
+  ];
+
+  buildInputs = [
+    python3Packages.python
   ];
 
   pythonPath = [
-    pythonPackages.libtorrentRasterbar
-    pythonPackages.apsw
-    pythonPackages.twisted
-    pythonPackages.netifaces
-    pythonPackages.pycrypto
-    pythonPackages.pyasn1
-    pythonPackages.requests
-    pythonPackages.setuptools
-    pythonPackages.m2crypto
-    pythonPackages.pyqt5
-    pythonPackages.chardet
-    pythonPackages.cherrypy
-    pythonPackages.cryptography
-    pythonPackages.libnacl
-    pythonPackages.configobj
-    pythonPackages.matplotlib
-    pythonPackages.plyvel
-    pythonPackages.decorator
-    pythonPackages.feedparser
-    pythonPackages.service-identity
-    pythonPackages.psutil
-    pythonPackages.meliae
-    pythonPackages.sip
-    pythonPackages.pillow
-    pythonPackages.networkx
+    python3Packages.libtorrentRasterbar
+    python3Packages.twisted
+    python3Packages.netifaces
+    python3Packages.pycrypto
+    python3Packages.pyasn1
+    python3Packages.requests
+    python3Packages.m2crypto
+    python3Packages.pyqt5
+    python3Packages.chardet
+    python3Packages.cherrypy
+    python3Packages.cryptography
+    python3Packages.libnacl
+    python3Packages.configobj
+    python3Packages.decorator
+    python3Packages.feedparser
+    python3Packages.service-identity
+    python3Packages.psutil
+    python3Packages.pillow
+    python3Packages.networkx
+    python3Packages.pony
+    python3Packages.lz4
+    python3Packages.pyqtgraph
+
+    # there is a BTC feature, but it requires some unclear version of
+    # bitcoinlib, so this doesn't work right now.
+    # python3Packages.bitcoinlib
   ];
 
   postPatch = ''
@@ -54,12 +57,11 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    find . -name '*.png' -exec convert -strip {} {} \;
     mkdir -pv $out
     # Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH.
     wrapPythonPrograms
     cp -prvd ./* $out/
-    makeWrapper ${pythonPackages.python}/bin/python $out/bin/tribler \
+    makeWrapper ${python3Packages.python}/bin/python $out/bin/tribler \
         --set QT_QPA_PLATFORM_PLUGIN_PATH ${qt5.qtbase.bin}/lib/qt-*/plugins/platforms \
         --set _TRIBLERPATH $out \
         --set PYTHONPATH $out:$program_PYTHONPATH \
diff --git a/pkgs/applications/networking/remote/anydesk/default.nix b/pkgs/applications/networking/remote/anydesk/default.nix
index e9dd022c313..0f4272985d0 100644
--- a/pkgs/applications/networking/remote/anydesk/default.nix
+++ b/pkgs/applications/networking/remote/anydesk/default.nix
@@ -5,8 +5,8 @@
 
 let
   sha256 = {
-    x86_64-linux = "1zdbgbbdavaqx4y02sw9y7i1r9wkxqccrqkn0sp5847a26cpk9k9";
-    i386-linux   = "11qwyxvy3c3n7hvksmlsfl9vvqaqkv3kwbk5rgjyy7vy8vn4kjmk";
+    x86_64-linux = "0dcg9znjxpnysypznnnq4xbaciiqz8l4p1hrbis3pazwi7bakizs";
+    i386-linux   = "04bvsvqjkayac17y9jcpdcfm3hzm2kq1brd9vwnx34gg07x9mn7g";
   }.${stdenv.hostPlatform.system} or (throw "system ${stdenv.hostPlatform.system} not supported");
 
   arch = {
@@ -28,7 +28,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "anydesk";
-  version = "5.4.1";
+  version = "5.5.0";
 
   src = fetchurl {
     url = "https://download.anydesk.com/linux/${pname}-${version}-${arch}.tar.gz";
diff --git a/pkgs/applications/radio/tlf/default.nix b/pkgs/applications/radio/tlf/default.nix
index f45e695486d..530008702f1 100644
--- a/pkgs/applications/radio/tlf/default.nix
+++ b/pkgs/applications/radio/tlf/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tlf";
-  version = "1.3.2";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "0gniysjm8aq5anq0a0az31vd6h1vyg56bifc7rpf53lsh9hkzmgc";
+    sha256 = "0f97hxiwc6blp5haik871q6zzvwy0b3p2jg8ad2dvaxg07xc76l0";
   };
 
   nativeBuildInputs = [ autoreconfHook autoconf automake pkgconfig perl ];
diff --git a/pkgs/applications/radio/urh/default.nix b/pkgs/applications/radio/urh/default.nix
index d4056dca7bf..eea9bb9027c 100644
--- a/pkgs/applications/radio/urh/default.nix
+++ b/pkgs/applications/radio/urh/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "urh";
-  version = "2.8.0";
+  version = "2.8.1";
 
   src = fetchFromGitHub {
     owner = "jopohl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1c87lff9bqhf574420ycqz88x6ad5hmy36wrb8pi0dqd1s1d72qb";
+    sha256 = "0vwc1jw1fjirdpavrnvc95bql8023ayrz9srbwn0p6n0ia038948";
   };
 
   nativeBuildInputs = [ qt5.wrapQtAppsHook ];
diff --git a/pkgs/applications/science/biology/hmmer/default.nix b/pkgs/applications/science/biology/hmmer/default.nix
index 3adbaf0079e..69ecb228697 100644
--- a/pkgs/applications/science/biology/hmmer/default.nix
+++ b/pkgs/applications/science/biology/hmmer/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.1";
+  version = "3.3";
   pname = "hmmer";
 
   src = fetchurl {
     url = "http://eddylab.org/software/hmmer/${pname}-${version}.tar.gz";
-    sha256 = "171bivy6xhgjsz5nv53n81pc3frnwz29ylblawk2bv46szwjjqd5";
+    sha256 = "0v3kcgkr6jihq0xmpgn2xd5q7wiwvj6yswa905k2c0v7mx0bz1h1";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index a463a2c5f3a..bf2d0396f69 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -124,7 +124,7 @@ self = stdenv.mkDerivation {
   setupHook = writeText "setupHook.sh" ''
     addCoqPath () {
       if test -d "''$1/lib/coq/${coq-version}/user-contrib"; then
-        export COQPATH="''${COQPATH}''${COQPATH:+:}''$1/lib/coq/${coq-version}/user-contrib/"
+        export COQPATH="''${COQPATH-}''${COQPATH:+:}''$1/lib/coq/${coq-version}/user-contrib/"
       fi
     }
 
diff --git a/pkgs/applications/science/misc/root/setup-hook.sh b/pkgs/applications/science/misc/root/setup-hook.sh
index fc2b697d8a8..b26cf9b779f 100644
--- a/pkgs/applications/science/misc/root/setup-hook.sh
+++ b/pkgs/applications/science/misc/root/setup-hook.sh
@@ -1,9 +1,13 @@
 thisroot () {
     # Workaround thisroot.sh dependency on man
-    if [ -z "${MANPATH}" ]; then
+    if [ -z "${MANPATH-}" ]; then
         MANPATH=:
     fi
+    local oldOpts="-u"
+    shopt -qo nounset || oldOpts="+u"
+    set +u
     source @out@/bin/thisroot.sh
+    set "$oldOpts"
 }
 
 postHooks+=(thisroot)
diff --git a/pkgs/applications/version-management/bugseverywhere/default.nix b/pkgs/applications/version-management/bugseverywhere/default.nix
deleted file mode 100644
index 7d1de378f53..00000000000
--- a/pkgs/applications/version-management/bugseverywhere/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv, pythonPackages, fetchurl }:
-
-#
-# Upstream stopped development of this package. If this package does not build
-# anymore, feel free to remove it by reverting the appropriate patch
-# (git log --grep bugseverywhere)
-#
-pythonPackages.buildPythonApplication rec {
-    version = "1.1.1";
-    pname = "bugseverywhere";
-
-    src = fetchurl {
-      url =
-      "mirror://pypi/b/bugs-everywhere/bugs-everywhere-${version}.tar.gz";
-      sha256 = "1ikm3ckwpimwcvx32vy7gh5gbp7q750j3327m17nvrj99g3daz2d";
-    };
-
-    # There are no tests in the repository.
-    doCheck = false;
-
-    buildInputs = with pythonPackages; [
-        jinja2
-        cherrypy
-    ];
-
-    meta = with stdenv.lib; {
-        description = "Bugtracker supporting distributed revision control";
-        homepage = http://www.bugseverywhere.org/;
-        license = licenses.gpl2Plus;
-        platforms = platforms.all;
-        maintainers = [ maintainers.matthiasbeyer ];
-    };
-}
-
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 68e10ed4e3e..d57ffd75d7f 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -129,6 +129,8 @@ let
 
   git-subrepo = callPackage ./git-subrepo { };
 
+  git-subtrac = callPackage ./git-subtrac { };
+
   git-sync = callPackage ./git-sync { };
 
   git-test = callPackage ./git-test { };
diff --git a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
index aafaa6659d3..32d3465016c 100644
--- a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonApplication rec {
   pname = "git-machete";
-  version = "2.12.1";
+  version = "2.12.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "114kq396zq45jlibn1lp0nk4lmanj4w1bcn48gi7xzdm0y1nkzfq";
+    sha256 = "0kmwm9rwngxm2qdlv6nvxyhwpfa0i95kbrmasrj1qqdz7rmyyzmi";
   };
 
   nativeBuildInputs = [ installShellFiles pbr ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
new file mode 100644
index 00000000000..07c63ea0119
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "git-subtrac";
+  version = "0.01";
+
+  src = fetchFromGitHub {
+    owner = "apenwarr";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1w6gd0x1902lzpqr74gsdrnxq36f6v14bv8h0vhlrfhbwbsih7n6";
+  };
+
+  modSha256 = "147vzllp1gydk2156hif313vwykagrj35vaiqy1swqczxs7p9hhs";
+
+  meta = with lib; {
+    description = "Keep the content for your git submodules all in one place: the parent repo";
+    homepage = "https://github.com/apenwarr/git-subtrac";
+    license = licenses.asl20;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index 722bbc11b30..b2a9c2a28fc 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,13 +1,13 @@
 {
-  "version": "12.4.3",
-  "repo_hash": "1qsd3qxvvb3rbyrlyrqvrday4c9s2krgics99ch7v74hprj3xfq9",
+  "version": "12.5.2",
+  "repo_hash": "18mviak37rkpj92m0hzh79rjbfsk8p91r5zzjp7y3y4qjnsf2a8p",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v12.4.3-ee",
+  "rev": "v12.5.2-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "1.67.0",
-    "GITLAB_PAGES_VERSION": "1.11.0",
+    "GITALY_SERVER_VERSION": "1.72.1",
+    "GITLAB_PAGES_VERSION": "1.12.0",
     "GITLAB_SHELL_VERSION": "10.2.0",
-    "GITLAB_WORKHORSE_VERSION": "8.14.0"
+    "GITLAB_WORKHORSE_VERSION": "8.14.1"
   }
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 545894cc1e5..60035990ed0 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -64,6 +64,11 @@ let
       # Fixup "resolved"-entries in yarn.lock to match our offline cache
       ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
 
+      # fixup_yarn_lock currently doesn't correctly fix the dagre-d3
+      # url, so we have to do it manually
+      ${replace}/bin/replace-literal -f -e '"https://codeload.github.com/dagrejs/dagre-d3/tar.gz/e1a00e5cb518f5d2304a35647e024f31d178e55b"' \
+                                           '"https___codeload.github.com_dagrejs_dagre_d3_tar.gz_e1a00e5cb518f5d2304a35647e024f31d178e55b"' yarn.lock
+
       yarn install --offline --frozen-lockfile --ignore-scripts --no-progress --non-interactive
 
       patchShebangs node_modules/
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
index 9478dc9a84b..841f6bfdefc 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
@@ -4,13 +4,13 @@ source 'https://rubygems.org'
 gem 'bundler', '>= 1.17.3'
 
 gem 'rugged', '~> 0.28'
-gem 'github-linguist', '~> 6.1', require: 'linguist'
+gem 'github-linguist', '~> 7.5', require: 'linguist'
 gem 'gitlab-markup', '~> 1.7.0'
 gem 'activesupport', '~> 5.2.3'
-gem 'rdoc', '~> 4.2'
+gem 'rdoc', '~> 6.0'
 gem 'gitlab-gollum-lib', '~> 4.2.7.7', require: false
 gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false
-gem 'grpc', '~> 1.19.0'
+gem 'grpc', '~> 1.24.0'
 gem 'sentry-raven', '~> 2.9.0', require: false
 gem 'faraday', '~> 0.12'
 gem 'rbtrace', require: false
@@ -22,7 +22,7 @@ gem 'gitlab-labkit', '~> 0.5.0'
 # This version needs to be in sync with GitLab CE/EE
 gem 'licensee', '~> 8.9.0'
 
-gem 'google-protobuf', '~> 3.7.1'
+gem 'google-protobuf', '~> 3.8.0'
 
 group :development, :test do
   gem 'rubocop', '~> 0.69', require: false
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
index cb292af8cc3..90c4e1bccea 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -49,10 +49,10 @@ GEM
     ffi (1.11.1)
     gemojione (3.3.0)
       json
-    github-linguist (6.4.1)
+    github-linguist (7.5.1)
       charlock_holmes (~> 0.7.6)
       escape_utils (~> 1.2.0)
-      mime-types (>= 1.19)
+      mini_mime (~> 1.0)
       rugged (>= 0.25.1)
     github-markup (1.7.0)
     gitlab-gollum-lib (4.2.7.7)
@@ -81,12 +81,12 @@ GEM
     gitlab-markup (1.7.0)
     gollum-grit_adapter (1.0.1)
       gitlab-grit (~> 2.7, >= 2.7.1)
-    google-protobuf (3.7.1)
+    google-protobuf (3.8.0)
     googleapis-common-protos-types (1.0.4)
       google-protobuf (~> 3.0)
-    grpc (1.19.0)
-      google-protobuf (~> 3.1)
-      googleapis-common-protos-types (~> 1.0.0)
+    grpc (1.24.0)
+      google-protobuf (~> 3.8)
+      googleapis-common-protos-types (~> 1.0)
     hashdiff (0.3.9)
     i18n (1.6.0)
       concurrent-ruby (~> 1.0)
@@ -99,7 +99,7 @@ GEM
     licensee (8.9.2)
       rugged (~> 0.24)
     listen (0.5.3)
-    loofah (2.2.3)
+    loofah (2.3.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     memoizable (0.4.2)
@@ -108,12 +108,13 @@ GEM
     mime-types (3.2.2)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2019.0331)
+    mini_mime (1.0.2)
     mini_portile2 (2.4.0)
     minitest (5.11.3)
     msgpack (1.3.0)
     multi_json (1.13.1)
     multipart-post (2.0.0)
-    nokogiri (1.10.4)
+    nokogiri (1.10.5)
       mini_portile2 (~> 2.4.0)
     nokogumbo (1.5.0)
       nokogiri
@@ -138,14 +139,14 @@ GEM
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
-    rails-html-sanitizer (1.2.0)
-      loofah (~> 2.2, >= 2.2.2)
+    rails-html-sanitizer (1.3.0)
+      loofah (~> 2.3)
     rainbow (3.0.0)
     rbtrace (0.4.11)
       ffi (>= 1.0.6)
       msgpack (>= 0.4.3)
       optimist (>= 3.0.0)
-    rdoc (4.3.0)
+    rdoc (6.2.0)
     redis (4.1.2)
     rouge (3.11.0)
     rspec (3.8.0)
@@ -217,18 +218,18 @@ DEPENDENCIES
   bundler (>= 1.17.3)
   factory_bot
   faraday (~> 0.12)
-  github-linguist (~> 6.1)
+  github-linguist (~> 7.5)
   gitlab-gollum-lib (~> 4.2.7.7)
   gitlab-gollum-rugged_adapter (~> 0.4.4.2)
   gitlab-labkit (~> 0.5.0)
   gitlab-markup (~> 1.7.0)
-  google-protobuf (~> 3.7.1)
-  grpc (~> 1.19.0)
+  google-protobuf (~> 3.8.0)
+  grpc (~> 1.24.0)
   licensee (~> 8.9.0)
   listen (~> 0.5.0)
   pry (~> 0.12.2)
   rbtrace
-  rdoc (~> 4.2)
+  rdoc (~> 6.0)
   rspec
   rspec-parameterized
   rubocop (~> 0.69)
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index dd17618dc74..2c764162230 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -17,14 +17,14 @@ let
       };
   };
 in buildGoPackage rec {
-  version = "1.67.0";
+  version = "1.72.1";
   pname = "gitaly";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "1mj2l15hnxwqmyc8xn79d6qpmpqbqw2ishalr8qvn83nzdsbk8l3";
+    sha256 = "0gnhw7p8fgy3w15828qjgkkxcd4dg7gf1hpanc3xqawb8jqpfc91";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitaly";
diff --git a/pkgs/applications/version-management/gitlab/gitaly/deps.nix b/pkgs/applications/version-management/gitlab/gitaly/deps.nix
index 34c30f71054..5f3a324a802 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/deps.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/deps.nix
@@ -19,6 +19,42 @@
     };
   }
   {
+    goPackagePath = "github.com/Joker/hpp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/hpp";
+      rev = "6893e659854a";
+      sha256 = "0lsx63c28rzqigv3lwzznqacpk7nr0dn6ig37v023x8lzc728ix5";
+    };
+  }
+  {
+    goPackagePath = "github.com/Joker/jade";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/jade";
+      rev = "v1.0.0";
+      sha256 = "0k9b8dcwwhajw6rzjmakqwmhw9z192pzzdhppcvam6dy63yl4zjf";
+    };
+  }
+  {
+    goPackagePath = "github.com/Shopify/goreferrer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Shopify/goreferrer";
+      rev = "ec9c9a553398";
+      sha256 = "0d740psj8czks1hl0nr6nlrwfbwq3nc51jj2p91d1wyhhmgn6jmn";
+    };
+  }
+  {
+    goPackagePath = "github.com/ajg/form";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ajg/form";
+      rev = "v1.5.1";
+      sha256 = "1d6sxzzf9yycdf8jm5877y0khmhkmhxfw3sc4xpdcsrdlc7gqh5a";
+    };
+  }
+  {
     goPackagePath = "github.com/alecthomas/template";
     fetch = {
       type = "git";
@@ -37,6 +73,15 @@
     };
   }
   {
+    goPackagePath = "github.com/aymerick/raymond";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aymerick/raymond";
+      rev = "v2.0.2";
+      sha256 = "1w6am4142k8lyjnwwcgx94c2d8zviflzi0a9c81gn2j0gyx475i3";
+    };
+  }
+  {
     goPackagePath = "github.com/beorn7/perks";
     fetch = {
       type = "git";
@@ -82,6 +127,15 @@
     };
   }
   {
+    goPackagePath = "github.com/codegangsta/inject";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/inject";
+      rev = "33e0aa1cb7c0";
+      sha256 = "1jqakr3z9l60qhcgrdzsb6rlk8ikcamisw0g2ndmrf27s0ibfcaj";
+    };
+  }
+  {
     goPackagePath = "github.com/davecgh/go-spew";
     fetch = {
       type = "git";
@@ -91,6 +145,42 @@
     };
   }
   {
+    goPackagePath = "github.com/dgrijalva/jwt-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgrijalva/jwt-go";
+      rev = "v3.2.0";
+      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
+    };
+  }
+  {
+    goPackagePath = "github.com/eknkc/amber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/eknkc/amber";
+      rev = "cdade1c07385";
+      sha256 = "152w97yckwncgw7lwjvgd8d00wy6y0nxzlvx72kl7nqqxs9vhxd9";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/structs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/structs";
+      rev = "v1.1.0";
+      sha256 = "1wrhb8wp8zpzggl61lapb627lw8yv281abvr6vqakmf569nswa9q";
+    };
+  }
+  {
+    goPackagePath = "github.com/flosch/pongo2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/flosch/pongo2";
+      rev = "bbf5a6c351f4";
+      sha256 = "0yqh58phznnxakm64w82gawrpndb0r85vsd1s7h244qqrq7w4avq";
+    };
+  }
+  {
     goPackagePath = "github.com/fsnotify/fsnotify";
     fetch = {
       type = "git";
@@ -100,15 +190,69 @@
     };
   }
   {
+    goPackagePath = "github.com/gavv/monotime";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gavv/monotime";
+      rev = "30dba4353424";
+      sha256 = "0w67yyc9y11dp7lp4b712dkcgbiln1qmgfx1nbbrw3mfkzr61d7g";
+    };
+  }
+  {
     goPackagePath = "github.com/getsentry/raven-go";
     fetch = {
       type = "git";
       url = "https://github.com/getsentry/raven-go";
-      rev = "v0.1.2";
+      rev = "v0.1.0";
       sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
     };
   }
   {
+    goPackagePath = "github.com/getsentry/sentry-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/sentry-go";
+      rev = "v0.3.0";
+      sha256 = "1919lhvg1swcqyfa6mck6nz53c7n4df21jsz46f7x4wncb6f5il1";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-contrib/sse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-contrib/sse";
+      rev = "5545eab6dad3";
+      sha256 = "0jhcvi66rn7c1wg3rf7q7sylrvlk7c40yk79c5lypnz1dpsdcrb5";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-gonic/gin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-gonic/gin";
+      rev = "v1.4.0";
+      sha256 = "19nxip48p2s8l7p1p7wpd5li2fcngi4c58rgcg71izdmsmj2iw1d";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-check/check";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-check/check";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-errors/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-errors/errors";
+      rev = "v1.0.1";
+      sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
+    };
+  }
+  {
     goPackagePath = "github.com/go-kit/kit";
     fetch = {
       type = "git";
@@ -127,6 +271,15 @@
     };
   }
   {
+    goPackagePath = "github.com/go-martini/martini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-martini/martini";
+      rev = "22fa46961aab";
+      sha256 = "01ip3mwbnm5isq120ww73yrvbcn6n5944prhhbyf2ggyf6g46ylh";
+    };
+  }
+  {
     goPackagePath = "github.com/go-stack/stack";
     fetch = {
       type = "git";
@@ -154,15 +307,6 @@
     };
   }
   {
-    goPackagePath = "github.com/golang/lint";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/lint";
-      rev = "06c8688daad7";
-      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
-    };
-  }
-  {
     goPackagePath = "github.com/golang/mock";
     fetch = {
       type = "git";
@@ -176,8 +320,26 @@
     fetch = {
       type = "git";
       url = "https://github.com/golang/protobuf";
-      rev = "v1.3.1";
-      sha256 = "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsyl";
+      rev = "v1.3.2";
+      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.2.0";
+      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-querystring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-querystring";
+      rev = "v1.0.0";
+      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
     };
   }
   {
@@ -190,6 +352,24 @@
     };
   }
   {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/schema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/schema";
+      rev = "v1.1.0";
+      sha256 = "14d31i3h6bg83r7ncmwm2pirab66z9hza38in18l89pbazxyh2n9";
+    };
+  }
+  {
     goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
     fetch = {
       type = "git";
@@ -217,6 +397,51 @@
     };
   }
   {
+    goPackagePath = "github.com/imkira/go-interpol";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imkira/go-interpol";
+      rev = "v1.1.0";
+      sha256 = "180h3pf2p0pch6hmqf45wk7wd87md83d3p122f8ll43x5nja5mph";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/blackfriday";
+      rev = "v2.0.0";
+      sha256 = "1gkizavajqmxm79il8r6cbi0g9ls3vwdh9wr0zy89vc9sq17p3im";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/formBinder";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/formBinder";
+      rev = "v5.0.0";
+      sha256 = "0mqk6j7a9d3y28ad4ylqc7z5w4hmn1ws5wwnyll918xn1wkzr5rg";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/go.uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/go.uuid";
+      rev = "v2.0.0";
+      sha256 = "0nc0ggn0a6bcwdrwinnx3z6889x65c20a2dwja0n8can3xblxs35";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/httpexpect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/httpexpect";
+      rev = "ebe99fcebbce";
+      sha256 = "126c50c6r5l2gdn60jirpb54pqwswxag3wgrv6wcn998h9w9gv8c";
+    };
+  }
+  {
     goPackagePath = "github.com/json-iterator/go";
     fetch = {
       type = "git";
@@ -226,6 +451,42 @@
     };
   }
   {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.20.0";
+      sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/errors";
+      rev = "089d3ea4e4d5";
+      sha256 = "056za75j1zgksky7pbf0pkjqz5ha15g3wj3p4ma10m9sywdyq79r";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/loggo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/loggo";
+      rev = "584905176618";
+      sha256 = "0hzi0652y74jf62wwyi9gf8bzrs7ynvhjfqc8rwr4l799d7i5gd4";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/testing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/testing";
+      rev = "472a3e8b2073";
+      sha256 = "05wjc2k0kwbam7anaxwnj30pl03dcdbrsz32icd70zl70ipsqsw4";
+    };
+  }
+  {
     goPackagePath = "github.com/julienschmidt/httprouter";
     fetch = {
       type = "git";
@@ -235,6 +496,42 @@
     };
   }
   {
+    goPackagePath = "github.com/k0kubun/colorstring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/k0kubun/colorstring";
+      rev = "9440f1994b88";
+      sha256 = "0isskya7ky4k9znrh85crfc2pxwyfz2s8j1a5cbjb8b8zf2v0qbj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/golog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/golog";
+      rev = "99c81de45f40";
+      sha256 = "1dgrsvhzymgj7da54ldv8plkxk3n8zh3kc995qxl6mrpz65j801p";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/iris";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/iris";
+      rev = "v11.1.1";
+      sha256 = "1rxpr5hdj9mji26mlfp4zic0pc6nh93akzccw24a5kynj07g68wg";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/pio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/pio";
+      rev = "ea782b38602d";
+      sha256 = "0ca29wmkpx19qwnvi4fja3avkxkzz14x9wyzmg1l9074bxbj8cgj";
+    };
+  }
+  {
     goPackagePath = "github.com/kelseyhightower/envconfig";
     fetch = {
       type = "git";
@@ -244,12 +541,21 @@
     };
   }
   {
-    goPackagePath = "github.com/kisielk/gotool";
+    goPackagePath = "github.com/klauspost/compress";
     fetch = {
       type = "git";
-      url = "https://github.com/kisielk/gotool";
-      rev = "v1.0.0";
-      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+      url = "https://github.com/klauspost/compress";
+      rev = "v1.4.0";
+      sha256 = "1y7951q0ji894d111lqqbacq64cxyi2dxsni5sqi9488zsasgw8s";
+    };
+  }
+  {
+    goPackagePath = "github.com/klauspost/cpuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/klauspost/cpuid";
+      rev = "e7e905edc00e";
+      sha256 = "0cmyv3rwv5r5iqvvfhbiwp3jsfa40c6xfm42nxbngd5lygjcwwgf";
     };
   }
   {
@@ -271,6 +577,51 @@
     };
   }
   {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/echo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/echo";
+      rev = "v4.1.10";
+      sha256 = "0qg9ykmhgldiv2v1w8sz8x0j0bgqf11ghzrim59fb6pxz8qgg25h";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/gommon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/gommon";
+      rev = "v0.3.0";
+      sha256 = "18z7akyzm75p6anm4b8qkqgm4iivx50z07hi5wf50w1pbsvbcdi0";
+    };
+  }
+  {
     goPackagePath = "github.com/libgit2/git2go";
     fetch = {
       type = "git";
@@ -289,6 +640,33 @@
     };
   }
   {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.2";
+      sha256 = "0512jm3wmzkkn7d99x9wflyqf48n5ri3npy1fqkq6l6adc5mni3n";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.9";
+      sha256 = "0i3km37lajahh1y2392g4hpgvq05arcgiiv93yhzxxyv0fpqj72m";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/goveralls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/goveralls";
+      rev = "v0.0.2";
+      sha256 = "13ffdikvc594g1mryhi94m87skr7irwkjnpxp8ad2kprn6syfslp";
+    };
+  }
+  {
     goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
     fetch = {
       type = "git";
@@ -298,6 +676,15 @@
     };
   }
   {
+    goPackagePath = "github.com/microcosm-cc/bluemonday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/microcosm-cc/bluemonday";
+      rev = "v1.0.2";
+      sha256 = "0j0aylsxqjcj49w7ph8cmpaqjlpvg7mb5mrcrd9bg71dlb9z9ir2";
+    };
+  }
+  {
     goPackagePath = "github.com/modern-go/concurrent";
     fetch = {
       type = "git";
@@ -316,6 +703,15 @@
     };
   }
   {
+    goPackagePath = "github.com/moul/http2curl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/moul/http2curl";
+      rev = "v1.0.0";
+      sha256 = "15bpx33d3ygya8dg8hbsn24h7acpajl27006pj8lw1c0bfvbnrl0";
+    };
+  }
+  {
     goPackagePath = "github.com/mwitkow/go-conntrack";
     fetch = {
       type = "git";
@@ -329,8 +725,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/onsi/ginkgo";
-      rev = "v1.7.0";
-      sha256 = "14wgpdrvpc35rdz3859bz53sc1g4vpr1fysy15wy3ff9gmqs14yg";
+      rev = "v1.10.1";
+      sha256 = "033a42h1wzmji57p86igg9whvsbp6nvfdsypskw738ys903n3z4d";
     };
   }
   {
@@ -338,8 +734,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/onsi/gomega";
-      rev = "v1.4.3";
-      sha256 = "1c8rqg5i2hz3snmq7s41yar1zjnzilb0fyiyhkg83v97afcfx79v";
+      rev = "v1.7.0";
+      sha256 = "09j6wq425wgzzsbwm9ckhfgl2capv3yyqbrf45qyrjwkzm49i02y";
     };
   }
   {
@@ -361,12 +757,21 @@
     };
   }
   {
+    goPackagePath = "github.com/pingcap/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pingcap/errors";
+      rev = "v0.11.1";
+      sha256 = "00wr0l4cwq0qx8jw51j0n7pbh9l7hdq2874x9rf1mz5svz1wbmcp";
+    };
+  }
+  {
     goPackagePath = "github.com/pkg/errors";
     fetch = {
       type = "git";
       url = "https://github.com/pkg/errors";
-      rev = "v0.8.0";
-      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+      rev = "v0.8.1";
+      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
     };
   }
   {
@@ -415,6 +820,33 @@
     };
   }
   {
+    goPackagePath = "github.com/ryanuber/columnize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/columnize";
+      rev = "v2.1.0";
+      sha256 = "0m9jhagb1k44zfcdai76xdf9vpi3bqdl7p078ffyibmz0z9jfap6";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.0.0";
+      sha256 = "0swiazj8wphs2zmk1qgq75xza6m19snif94h2m6fi8dqkwqdl7c7";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "v1.0.0";
+      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+    };
+  }
+  {
     goPackagePath = "github.com/sirupsen/logrus";
     fetch = {
       type = "git";
@@ -424,6 +856,24 @@
     };
   }
   {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "505e41936337";
+      sha256 = "07zjxwszayal88z1j2bwnqrsa32vg8l4nivks5yfr9j8xfsw7n6m";
+    };
+  }
+  {
     goPackagePath = "github.com/stretchr/objx";
     fetch = {
       type = "git";
@@ -437,8 +887,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/stretchr/testify";
-      rev = "v1.3.0";
-      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
+      rev = "v1.4.0";
+      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
     };
   }
   {
@@ -478,6 +928,123 @@
     };
   }
   {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "v1.1.4";
+      sha256 = "0ma2qvn5wqvjidpdz74x832a813qnr1cxbx6n6n125ak9b3wbn5w";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/negroni";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/negroni";
+      rev = "v1.0.0";
+      sha256 = "1gp6j74adi1cn8fq5v3wzlzhwl4zg43n2746m4fzdcdimihk3ccp";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/bytebufferpool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/bytebufferpool";
+      rev = "v1.0.0";
+      sha256 = "01lqzjddq6kz9v41nkky7wbgk7f1cw036sa7ldz10d82g5klzl93";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasthttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasthttp";
+      rev = "v1.4.0";
+      sha256 = "0kypc7r91n61fm6qsadza1aiy9n6byghvcxzvx7agi6yzrllk956";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasttemplate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasttemplate";
+      rev = "v1.0.1";
+      sha256 = "0l131znbv8v67y20s4q361mwiww2c33zdc68mwvxchzk1gpy5ywq";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/tcplisten";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/tcplisten";
+      rev = "ceec8f93295a";
+      sha256 = "0ksbj1gsdqanbnhly5w1wcc107bib4w0zpnyl00prr89zch3imnf";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonpointer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonpointer";
+      rev = "df4f5c81cb3b";
+      sha256 = "0dfwc66z5gq75m3z7va80c10c22ijiq99bahq86l26ki71g286xn";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonreference";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonreference";
+      rev = "bd5ef7bd5415";
+      sha256 = "1xby79padc7bmyb8rfbad8wfnfdzpnh51b1n8c0kibch0kwc1db5";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonschema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonschema";
+      rev = "v1.1.0";
+      sha256 = "10gn5y4l72zknj21mff29d9vnk4pz7jnw39xnlsb373lsiih91xg";
+    };
+  }
+  {
+    goPackagePath = "github.com/yalp/jsonpath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yalp/jsonpath";
+      rev = "5cc68e5049a0";
+      sha256 = "0kkyxp1cg3kfxy5hhwzxg132jin4xb492z5jpqq94ix15v6rdf4b";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/gojsondiff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/gojsondiff";
+      rev = "v1.0.0";
+      sha256 = "0qnymi0027mb8kxm24mmd22bvjrdkc56c7f4q3lbdf93x1vxbbc2";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/golcs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/golcs";
+      rev = "ecda9a501e82";
+      sha256 = "0mx6wc5fz05yhvg03vvps93bc5mw4vnng98fhmixd47385qb29pq";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/pp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/pp";
+      rev = "v2.0.1";
+      sha256 = "18vbc7jagnjw1wpvhqjffl0np7bzzqdd9jpdcisvj5h85lbyn5gk";
+    };
+  }
+  {
     goPackagePath = "gitlab.com/gitlab-org/labkit";
     fetch = {
       type = "git";
@@ -500,8 +1067,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "20be4c3c3ed5";
-      sha256 = "1ph7y8v30hc95h1dwr7vrhg1nzs47a261qin6zg8mhf12g5k2lxb";
+      rev = "4def268fd1a4";
+      sha256 = "1bfsnari529gw34cz0zqk3d9mrkcj1ay35kangri8kbgll0ss5a6";
     };
   }
   {
@@ -509,8 +1076,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/lint";
-      rev = "06c8688daad7";
-      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
+      rev = "d0100b6bd8b3";
+      sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7";
     };
   }
   {
@@ -536,8 +1103,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sync";
-      rev = "37e7f081c4d4";
-      sha256 = "1bb0mw6ckb1k7z8v3iil2qlqwfj408fvvp8m1cik2b46p7snyjhm";
+      rev = "112230192c58";
+      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
     };
   }
   {
@@ -545,8 +1112,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "953cdadca894";
-      sha256 = "0gkha4whk8xkcv3isigbs250akag99isxnd3v9xmy0kl3g88hxy1";
+      rev = "fde4db37ae7a";
+      sha256 = "16k4w4pzziq1kln18k5fg01qgk4hpzb5xsm7175kaky6d6gwyhg3";
     };
   }
   {
@@ -563,8 +1130,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/tools";
-      rev = "6cd1fcedba52";
-      sha256 = "00hl0vkmy8impsnmc2dmm55sdhia95k0kqcrjbdpynryn1lamn5d";
+      rev = "2c0ae7006135";
+      sha256 = "1lsi2ssxajclj3bciz2a41v1vjv768ja3v6wnbyhxy8xphwkp4fk";
     };
   }
   {
@@ -590,8 +1157,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/grpc/grpc-go";
-      rev = "v1.16.0";
-      sha256 = "0a9xl6c5j7lvsb4q6ry5p892rjm86p47d4f8xrf0r8lxblf79qbg";
+      rev = "v1.24.0";
+      sha256 = "0h8mwv74vzcfb7p4ai247x094skxca71vjp4wpj2wzmri0x9p4v6";
     };
   }
   {
@@ -631,6 +1198,33 @@
     };
   }
   {
+    goPackagePath = "gopkg.in/go-playground/assert.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/assert.v1";
+      rev = "v1.2.1";
+      sha256 = "1h4amgykpa0djwi619llr3g55p75ia0mi184h9s5zdl8l4rhn9pm";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/go-playground/validator.v8";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/validator.v8";
+      rev = "v8.18.2";
+      sha256 = "1m2i48ph5a3kw9nlw2srx8i04v7chicds2hlzlrfm15045crga55";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/mgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/mgo.v2";
+      rev = "9856a29383ce";
+      sha256 = "1gfbcmvpwwf1lydxj3g42wv2g9w3pf0y02igqk4f4f21h02sazkw";
+    };
+  }
+  {
     goPackagePath = "gopkg.in/tomb.v1";
     fetch = {
       type = "git";
@@ -653,8 +1247,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/dominikh/go-tools";
-      rev = "88497007e858";
-      sha256 = "0rinkyx3r2bq45mgcasnn5jb07cwbv3p3s2wwcrzxsarsj6wa5lc";
+      rev = "ea95bdfd59fc";
+      sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic";
     };
   }
 ]
diff --git a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
index a5140972ef0..47e1c3b3568 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
@@ -224,15 +224,15 @@
     version = "3.3.0";
   };
   github-linguist = {
-    dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
+    dependencies = ["charlock_holmes" "escape_utils" "mini_mime" "rugged"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nqsprsy4xd6yxzk3b54815hv0gk2r1xn0vsm81pkyy61bbm35hf";
+      sha256 = "092bq7bjfj2yvss2ig6jb71j0h04cigq79xxfis37j315iixl12j";
       type = "gem";
     };
-    version = "6.4.1";
+    version = "7.5.1";
   };
   github-markup = {
     source = {
@@ -308,10 +308,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04988m3hmllg4sl4syjb35x0wzsg7rj1nmvhx3d9ihml22w76gb2";
+      sha256 = "0by3289irdklb9gjqw41fq6mg6yja3iyzh99dj8p8z9l4brllqn4";
       type = "gem";
     };
-    version = "3.7.1";
+    version = "3.8.0";
   };
   googleapis-common-protos-types = {
     dependencies = ["google-protobuf"];
@@ -330,10 +330,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rdywzism5vxz8pnml6xjb9f19diclyy74014z69q01jzqwi1wgs";
+      sha256 = "18wikj9qd4jb4lks55cs2cf3q7fifnanm9z9ywnxhpj57vbnilpf";
       type = "gem";
     };
-    version = "1.19.0";
+    version = "1.24.0";
   };
   hashdiff = {
     groups = ["default" "development" "test"];
@@ -418,10 +418,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ccsid33xjajd0im2xv941aywi58z7ihwkvaf1w2bv89vn5bhsjg";
+      sha256 = "06kfq90vi38gv6i128f4zg462kj32szs5vsgm25hxgw9zd12pj9x";
       type = "gem";
     };
-    version = "2.2.3";
+    version = "2.3.0";
   };
   memoizable = {
     dependencies = ["thread_safe"];
@@ -459,6 +459,16 @@
     };
     version = "3.2019.0331";
   };
+  mini_mime = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
   mini_portile2 = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -507,10 +517,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
+      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
       type = "gem";
     };
-    version = "1.10.4";
+    version = "1.10.5";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
@@ -640,10 +650,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ilwxzm3a7bql5c9q2n9g9nb1hax7vd8d65a5yp3d967ld97nvrq";
+      sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.3.0";
   };
   rainbow = {
     source = {
@@ -663,12 +673,14 @@
     version = "0.4.11";
   };
   rdoc = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13ba2mhqqcsp3k97x3iz9x29xk26rv4561lfzzzibcy41vvj1n4c";
+      sha256 = "1gh7sc3xd4rgl9z90181cq580r1xqn063mmv51wdrhhsrkkw2bi9";
       type = "gem";
     };
-    version = "4.3.0";
+    version = "6.2.0";
   };
   redis = {
     groups = ["default"];
diff --git a/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix b/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
index d5ea22f960b..5b5d0b99bcf 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
@@ -163,15 +163,6 @@
     };
   }
   {
-    goPackagePath = "github.com/golang/lint";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/lint";
-      rev = "06c8688daad7";
-      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
-    };
-  }
-  {
     goPackagePath = "github.com/golang/mock";
     fetch = {
       type = "git";
@@ -262,15 +253,6 @@
     };
   }
   {
-    goPackagePath = "github.com/kisielk/gotool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/gotool";
-      rev = "v1.0.0";
-      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
-    };
-  }
-  {
     goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
     fetch = {
       type = "git";
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index aa8cf7c164c..4f3322f3d0f 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   pname = "gitlab-workhorse";
 
-  version = "8.14.0";
+  version = "8.14.1";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "1cqx75h4x4chjvp72kzbln8qkm5p7p2w7x8bdd99g38kf21wxxaq";
+    sha256 = "19flb9b9l9214ykwgjphcqrinncnfvhis7nrvcr4ns6rlpxnc9dl";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
index 920f778c053..d27bc276088 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -8,12 +8,12 @@ gem 'bootsnap', '~> 1.4'
 gem 'nakayoshi_fork', '~> 0.0.4'
 
 # Responders respond_to and respond_with
-gem 'responders', '~> 2.0'
+gem 'responders', '~> 3.0'
 
 gem 'sprockets', '~> 3.7.0'
 
 # Default values for AR models
-gem 'default_value_for', '~> 3.2.0'
+gem 'default_value_for', '~> 3.3.0'
 
 # Supported DBs
 gem 'pg', '~> 1.1'
@@ -42,7 +42,7 @@ gem 'omniauth-shibboleth', '~> 1.3.0'
 gem 'omniauth-twitter', '~> 1.4'
 gem 'omniauth_crowd', '~> 2.2.0'
 gem 'omniauth-authentiq', '~> 0.3.3'
-gem 'omniauth_openid_connect', '~> 0.3.1'
+gem 'omniauth_openid_connect', '~> 0.3.3'
 gem "omniauth-ultraauth", '~> 0.0.2'
 gem 'omniauth-salesforce', '~> 1.0.5'
 gem 'rack-oauth2', '~> 1.9.3'
@@ -64,7 +64,7 @@ gem 'u2f', '~> 0.2.1'
 
 # GitLab Pages
 gem 'validates_hostname', '~> 1.0.6'
-gem 'rubyzip', '~> 1.2.2', require: 'zip'
+gem 'rubyzip', '~> 1.3.0', require: 'zip'
 # GitLab Pages letsencrypt support
 gem 'acme-client', '~> 2.0.2'
 
@@ -72,7 +72,7 @@ gem 'acme-client', '~> 2.0.2'
 gem 'browser', '~> 2.5'
 
 # GPG
-gem 'gpgme', '~> 2.0.18'
+gem 'gpgme', '~> 2.0.19'
 
 # LDAP Auth
 # GitLab fork with several improvements to original library. For full list of changes
@@ -136,7 +136,7 @@ gem 'faraday_middleware-aws-signers-v4'
 
 # Markdown and HTML processing
 gem 'html-pipeline', '~> 2.8'
-gem 'deckar01-task_list', '2.2.0'
+gem 'deckar01-task_list', '2.2.1'
 gem 'gitlab-markup', '~> 1.7.0'
 gem 'github-markup', '~> 1.7.0', require: 'github/markup'
 gem 'commonmarker', '~> 0.17'
@@ -151,7 +151,7 @@ gem 'asciidoctor-plantuml', '0.0.9'
 gem 'rouge', '~> 3.11.0'
 gem 'truncato', '~> 0.7.11'
 gem 'bootstrap_form', '~> 4.2.0'
-gem 'nokogiri', '~> 1.10.4'
+gem 'nokogiri', '~> 1.10.5'
 gem 'escape_utils', '~> 1.1'
 
 # Calendar rendering
@@ -159,6 +159,7 @@ gem 'icalendar'
 
 # Diffs
 gem 'diffy', '~> 3.1.0'
+gem 'diff_match_patch', '~> 0.1.0'
 
 # Application server
 gem 'rack', '~> 2.0.7'
@@ -175,7 +176,7 @@ group :puma do
 end
 
 # State machine
-gem 'state_machines-activerecord', '~> 0.5.1'
+gem 'state_machines-activerecord', '~> 0.6.0'
 
 # Issue tags
 gem 'acts-as-taggable-on', '~> 6.0'
@@ -259,9 +260,6 @@ gem 'loofah', '~> 2.2'
 # Working with license
 gem 'licensee', '~> 8.9'
 
-# Protect against bruteforcing
-gem 'rack-attack', '~> 4.4.1'
-
 # Ace editor
 gem 'ace-rails-ap', '~> 4.1.0'
 
@@ -293,10 +291,13 @@ gem 'base32', '~> 0.3.0'
 
 gem "gitlab-license", "~> 1.0"
 
+# Protect against bruteforcing
+gem 'rack-attack', '~> 6.2.0'
+
 # Sentry integration
 gem 'sentry-raven', '~> 2.9'
 
-gem 'premailer-rails', '~> 1.9.7'
+gem 'premailer-rails', '~> 1.10.3'
 
 # LabKit: Tracing and Correlation
 gem 'gitlab-labkit', '~> 0.5'
@@ -331,7 +332,6 @@ group :metrics do
 end
 
 group :development do
-  gem 'foreman', '~> 0.84.0'
   gem 'brakeman', '~> 4.2', require: false
   gem 'danger', '~> 6.0', require: false
 
@@ -388,7 +388,6 @@ group :development, :test do
 
   gem 'benchmark-ips', '~> 2.3.0', require: false
 
-  gem 'license_finder', '~> 5.4', require: false
   gem 'knapsack', '~> 1.17'
 
   gem 'stackprof', '~> 0.2.10', require: false
@@ -398,6 +397,11 @@ group :development, :test do
   gem 'timecop', '~> 0.8.0'
 end
 
+# Gems required in omnibus-gitlab pipeline
+group :development, :test, :omnibus do
+  gem 'license_finder', '~> 5.4', require: false
+end
+
 group :test do
   gem 'shoulda-matchers', '~> 4.0.1', require: false
   gem 'email_spec', '~> 2.2.0'
@@ -407,6 +411,7 @@ group :test do
   gem 'concurrent-ruby', '~> 1.1'
   gem 'test-prof', '~> 0.10.0'
   gem 'rspec_junit_formatter'
+  gem 'guard-rspec'
 end
 
 gem 'octokit', '~> 4.9'
@@ -446,18 +451,18 @@ group :ed25519 do
 end
 
 # Gitaly GRPC protocol definitions
-gem 'gitaly', '~> 1.65.0'
+gem 'gitaly', '~> 1.70.0'
 
-gem 'grpc', '~> 1.19.0'
+gem 'grpc', '~> 1.24.0'
 
-gem 'google-protobuf', '~> 3.7.1'
+gem 'google-protobuf', '~> 3.8.0'
 
 gem 'toml-rb', '~> 1.0.0', require: false
 
 # Feature toggles
-gem 'flipper', '~> 0.13.0'
-gem 'flipper-active_record', '~> 0.13.0'
-gem 'flipper-active_support_cache_store', '~> 0.13.0'
+gem 'flipper', '~> 0.17.1'
+gem 'flipper-active_record', '~> 0.17.1'
+gem 'flipper-active_support_cache_store', '~> 0.17.1'
 gem 'unleash', '~> 0.1.5'
 
 # Structured logging
@@ -469,3 +474,5 @@ gem 'gitlab-net-dns', '~> 0.9.1'
 
 # Countries list
 gem 'countries', '~> 3.0'
+
+gem 'retriable', '~> 3.1.2'
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index 18160932c56..15465cd6b03 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -50,8 +50,8 @@ GEM
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
       tzinfo (~> 1.1)
-    acts-as-taggable-on (6.0.0)
-      activerecord (~> 5.0)
+    acts-as-taggable-on (6.5.0)
+      activerecord (>= 5.0, < 6.1)
     adamantium (0.2.0)
       ice_nine (~> 0.11.0)
       memoizable (~> 0.4.0)
@@ -80,14 +80,16 @@ GEM
       encryptor (~> 3.0.0)
     attr_required (1.0.1)
     awesome_print (1.8.0)
-    aws-sdk (2.9.32)
-      aws-sdk-resources (= 2.9.32)
-    aws-sdk-core (2.9.32)
+    aws-eventstream (1.0.3)
+    aws-sdk (2.11.374)
+      aws-sdk-resources (= 2.11.374)
+    aws-sdk-core (2.11.374)
       aws-sigv4 (~> 1.0)
       jmespath (~> 1.0)
-    aws-sdk-resources (2.9.32)
-      aws-sdk-core (= 2.9.32)
-    aws-sigv4 (1.0.0)
+    aws-sdk-resources (2.11.374)
+      aws-sdk-core (= 2.11.374)
+    aws-sigv4 (1.1.0)
+      aws-eventstream (~> 1.0, >= 1.0.2)
     axiom-types (0.1.1)
       descendants_tracker (~> 0.0.4)
       ice_nine (~> 0.11.0)
@@ -171,9 +173,9 @@ GEM
       unicode_utils (~> 1.4)
     crack (0.4.3)
       safe_yaml (~> 1.0.0)
-    crass (1.0.4)
+    crass (1.0.5)
     creole (0.5.0)
-    css_parser (1.5.0)
+    css_parser (1.7.0)
       addressable
     daemons (1.2.6)
     danger (6.0.9)
@@ -192,12 +194,12 @@ GEM
     database_cleaner (1.7.0)
     debug_inspector (0.0.3)
     debugger-ruby_core_source (1.3.8)
-    deckar01-task_list (2.2.0)
+    deckar01-task_list (2.2.1)
       html-pipeline
     declarative (0.0.10)
     declarative-option (0.1.0)
-    default_value_for (3.2.0)
-      activerecord (>= 3.2.0, < 6.0)
+    default_value_for (3.3.0)
+      activerecord (>= 3.2.0, < 6.1)
     derailed_benchmarks (1.3.5)
       benchmark-ips (~> 2)
       get_process_mem (~> 0)
@@ -222,6 +224,7 @@ GEM
       railties
       rotp (~> 2.0)
     diff-lcs (1.3)
+    diff_match_patch (0.1.0)
     diffy (3.1.0)
     discordrb-webhooks-blackst0ne (3.3.0)
       rest-client (~> 2.0)
@@ -285,13 +288,13 @@ GEM
     fast_gettext (1.6.0)
     ffaker (2.10.0)
     ffi (1.11.1)
-    flipper (0.13.0)
-    flipper-active_record (0.13.0)
-      activerecord (>= 3.2, < 6)
-      flipper (~> 0.13.0)
-    flipper-active_support_cache_store (0.13.0)
-      activesupport (>= 3.2, < 6)
-      flipper (~> 0.13.0)
+    flipper (0.17.1)
+    flipper-active_record (0.17.1)
+      activerecord (>= 4.2, < 7)
+      flipper (~> 0.17.1)
+    flipper-active_support_cache_store (0.17.1)
+      activesupport (>= 4.2, < 7)
+      flipper (~> 0.17.1)
     flowdock (0.7.1)
       httparty (~> 0.7)
       multi_json
@@ -332,10 +335,8 @@ GEM
     fog-xml (0.1.3)
       fog-core
       nokogiri (>= 1.5.11, < 2.0.0)
-    font-awesome-rails (4.7.0.4)
-      railties (>= 3.2, < 6.0)
-    foreman (0.84.0)
-      thor (~> 0.19.1)
+    font-awesome-rails (4.7.0.5)
+      railties (>= 3.2, < 6.1)
     formatador (0.2.5)
     fugit (1.2.1)
       et-orbi (~> 1.1, >= 1.1.8)
@@ -358,12 +359,12 @@ GEM
       po_to_json (>= 1.0.0)
       rails (>= 3.2.0)
     git (1.5.0)
-    gitaly (1.65.0)
+    gitaly (1.70.0)
       grpc (~> 1.0)
     github-markup (1.7.0)
-    gitlab-labkit (0.5.2)
-      actionpack (~> 5)
-      activesupport (~> 5)
+    gitlab-labkit (0.7.0)
+      actionpack (>= 5.0.0, < 6.1.0)
+      activesupport (>= 5.0.0, < 6.1.0)
       grpc (~> 1.19)
       jaeger-client (~> 0.10)
       opentracing (~> 0.4)
@@ -400,7 +401,7 @@ GEM
       mime-types (~> 3.0)
       representable (~> 3.0)
       retriable (>= 2.0, < 4.0)
-    google-protobuf (3.7.1)
+    google-protobuf (3.8.0)
     googleapis-common-protos-types (1.0.4)
       google-protobuf (~> 3.0)
     googleauth (0.6.6)
@@ -410,7 +411,7 @@ GEM
       multi_json (~> 1.11)
       os (>= 0.9, < 2.0)
       signet (~> 0.7)
-    gpgme (2.0.18)
+    gpgme (2.0.19)
       mini_portile2 (~> 2.3)
     grape (1.1.0)
       activesupport
@@ -440,11 +441,25 @@ GEM
       graphql (~> 1.6)
       html-pipeline (~> 2.8)
       sass (~> 3.4)
-    grpc (1.19.0)
-      google-protobuf (~> 3.1)
-      googleapis-common-protos-types (~> 1.0.0)
+    grpc (1.24.0)
+      google-protobuf (~> 3.8)
+      googleapis-common-protos-types (~> 1.0)
     gssapi (1.2.0)
       ffi (>= 1.0.1)
+    guard (2.15.1)
+      formatador (>= 0.2.4)
+      listen (>= 2.7, < 4.0)
+      lumberjack (>= 1.0.12, < 2.0)
+      nenv (~> 0.1)
+      notiffany (~> 0.0)
+      pry (>= 0.9.12)
+      shellany (~> 0.0)
+      thor (>= 0.18.1)
+    guard-compat (1.2.1)
+    guard-rspec (4.7.3)
+      guard (~> 2.1)
+      guard-compat (~> 1.1)
+      rspec (>= 2.99.0, < 4.0)
     haml (5.0.4)
       temple (>= 0.8.0)
       tilt
@@ -508,7 +523,7 @@ GEM
       atlassian-jwt
       multipart-post
       oauth (~> 0.5, >= 0.5.0)
-    jmespath (1.3.1)
+    jmespath (1.4.0)
     js_regex (3.1.1)
       character_set (~> 1.1)
       regexp_parser (~> 1.1)
@@ -560,15 +575,20 @@ GEM
       xml-simple
     licensee (8.9.2)
       rugged (~> 0.24)
+    listen (3.1.5)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+      ruby_dep (~> 1.2)
     locale (2.1.2)
     lograge (0.10.0)
       actionpack (>= 4)
       activesupport (>= 4)
       railties (>= 4)
       request_store (~> 1.0)
-    loofah (2.3.0)
+    loofah (2.3.1)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
+    lumberjack (1.0.13)
     mail (2.7.1)
       mini_mime (>= 0.1.1)
     mail_room (0.9.1)
@@ -584,7 +604,7 @@ GEM
     mime-types-data (3.2019.0331)
     mimemagic (0.3.2)
     mini_magick (4.9.5)
-    mini_mime (1.0.1)
+    mini_mime (1.0.2)
     mini_portile2 (2.4.0)
     minitest (5.11.3)
     msgpack (1.3.1)
@@ -597,16 +617,20 @@ GEM
       mustermann (~> 1.0.0)
     nakayoshi_fork (0.0.4)
     nap (1.1.0)
+    nenv (0.3.0)
     net-ldap (0.16.0)
     net-ntp (2.1.3)
     net-ssh (5.2.0)
     netrc (0.11.0)
     nio4r (2.3.1)
     no_proxy_fix (0.1.2)
-    nokogiri (1.10.4)
+    nokogiri (1.10.5)
       mini_portile2 (~> 2.4.0)
     nokogumbo (1.5.0)
       nokogiri
+    notiffany (0.1.3)
+      nenv (~> 0.1)
+      shellany (~> 0.0)
     numerizer (0.1.1)
     oauth (0.5.4)
     oauth2 (1.4.1)
@@ -675,12 +699,12 @@ GEM
       activesupport
       nokogiri (>= 1.4.4)
       omniauth (~> 1.0)
-    omniauth_openid_connect (0.3.1)
+    omniauth_openid_connect (0.3.3)
       addressable (~> 2.5)
-      omniauth (~> 1.3)
+      omniauth (~> 1.9)
       openid_connect (~> 1.1)
     open4 (1.3.4)
-    openid_connect (1.1.6)
+    openid_connect (1.1.8)
       activemodel
       attr_required (>= 1.0.0)
       json-jwt (>= 1.5.0)
@@ -703,12 +727,12 @@ GEM
     pg (1.1.4)
     po_to_json (1.0.1)
       json (>= 1.6.0)
-    premailer (1.10.4)
+    premailer (1.11.1)
       addressable
-      css_parser (>= 1.4.10)
+      css_parser (>= 1.6.0)
       htmlentities (>= 4.0.0)
-    premailer-rails (1.9.7)
-      actionmailer (>= 3, < 6)
+    premailer-rails (1.10.3)
+      actionmailer (>= 3)
       premailer (~> 1.7, >= 1.7.9)
     proc_to_ast (0.1.0)
       coderay
@@ -724,7 +748,7 @@ GEM
       pry (~> 0.10)
     pry-rails (0.3.6)
       pry (>= 0.10.4)
-    public_suffix (3.1.0)
+    public_suffix (3.1.1)
     puma (3.12.0)
     puma_worker_killer (0.1.0)
       get_process_mem (~> 0.2)
@@ -734,8 +758,8 @@ GEM
     rack (2.0.7)
     rack-accept (0.4.5)
       rack (>= 0.4)
-    rack-attack (4.4.1)
-      rack
+    rack-attack (6.2.0)
+      rack (>= 1.0, < 3)
     rack-cors (1.0.2)
     rack-oauth2 (1.9.3)
       activesupport
@@ -763,10 +787,10 @@ GEM
       bundler (>= 1.3.0)
       railties (= 5.2.3)
       sprockets-rails (>= 2.0.0)
-    rails-controller-testing (1.0.2)
-      actionpack (~> 5.x, >= 5.0.1)
-      actionview (~> 5.x, >= 5.0.1)
-      activesupport (~> 5.x)
+    rails-controller-testing (1.0.4)
+      actionpack (>= 5.0.1.x)
+      actionview (>= 5.0.1.x)
+      activesupport (>= 5.0.1.x)
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
@@ -798,25 +822,25 @@ GEM
     recaptcha (4.13.1)
       json
     recursive-open-struct (1.1.0)
-    redis (4.1.2)
-    redis-actionpack (5.0.2)
-      actionpack (>= 4.0, < 6)
+    redis (4.1.3)
+    redis-actionpack (5.1.0)
+      actionpack (>= 4.0, < 7)
       redis-rack (>= 1, < 3)
       redis-store (>= 1.1.0, < 2)
-    redis-activesupport (5.0.7)
-      activesupport (>= 3, < 6)
+    redis-activesupport (5.2.0)
+      activesupport (>= 3, < 7)
       redis-store (>= 1.3, < 2)
     redis-namespace (1.6.0)
       redis (>= 3.0.4)
-    redis-rack (2.0.5)
+    redis-rack (2.0.6)
       rack (>= 1.5, < 3)
       redis-store (>= 1.2, < 2)
     redis-rails (5.0.2)
       redis-actionpack (>= 5.0, < 6)
       redis-activesupport (>= 5.0, < 6)
       redis-store (>= 1.2, < 2)
-    redis-store (1.6.0)
-      redis (>= 2.2, < 5)
+    redis-store (1.8.1)
+      redis (>= 4, < 5)
     regexp_parser (1.5.1)
     regexp_property_values (0.3.4)
     representable (3.0.4)
@@ -824,9 +848,9 @@ GEM
       declarative-option (< 0.2.0)
       uber (< 0.2.0)
     request_store (1.3.1)
-    responders (2.4.1)
-      actionpack (>= 4.2.0, < 6.0)
-      railties (>= 4.2.0, < 6.0)
+    responders (3.0.0)
+      actionpack (>= 5.0)
+      railties (>= 5.0)
     rest-client (2.0.2)
       http-cookie (>= 1.0.2, < 2.0)
       mime-types (>= 1.16, < 4.0)
@@ -897,11 +921,12 @@ GEM
     ruby-progressbar (1.10.1)
     ruby-saml (1.7.2)
       nokogiri (>= 1.5.10)
+    ruby_dep (1.5.0)
     ruby_parser (3.13.1)
       sexp_processor (~> 4.9)
     rubyntlm (0.6.2)
     rubypants (0.2.0)
-    rubyzip (1.2.2)
+    rubyzip (1.3.0)
     rugged (0.28.3.1)
     safe_yaml (1.0.4)
     sanitize (4.6.6)
@@ -938,6 +963,7 @@ GEM
       faraday (>= 0.7.6, < 1.0)
     settingslogic (2.0.9)
     sexp_processor (4.12.0)
+    shellany (0.0.1)
     shoulda-matchers (4.0.1)
       activesupport (>= 4.2.0)
     sidekiq (5.2.7)
@@ -978,11 +1004,11 @@ GEM
     sshkey (2.0.0)
     stackprof (0.2.10)
     state_machines (0.5.0)
-    state_machines-activemodel (0.5.1)
-      activemodel (>= 4.1, < 6.0)
+    state_machines-activemodel (0.7.1)
+      activemodel (>= 4.1)
       state_machines (>= 0.5.0)
-    state_machines-activerecord (0.5.1)
-      activerecord (>= 4.1, < 6.0)
+    state_machines-activerecord (0.6.0)
+      activerecord (>= 4.1)
       state_machines-activemodel (>= 0.5.0)
     swd (1.1.2)
       activesupport (>= 3)
@@ -1127,12 +1153,13 @@ DEPENDENCIES
   creole (~> 0.5.0)
   danger (~> 6.0)
   database_cleaner (~> 1.7.0)
-  deckar01-task_list (= 2.2.0)
-  default_value_for (~> 3.2.0)
+  deckar01-task_list (= 2.2.1)
+  default_value_for (~> 3.3.0)
   derailed_benchmarks
   device_detector
   devise (~> 4.6)
   devise-two-factor (~> 3.0.0)
+  diff_match_patch (~> 0.1.0)
   diffy (~> 3.1.0)
   discordrb-webhooks-blackst0ne (~> 3.3)
   doorkeeper (~> 4.3)
@@ -1149,9 +1176,9 @@ DEPENDENCIES
   faraday_middleware-aws-signers-v4
   fast_blank
   ffaker (~> 2.10)
-  flipper (~> 0.13.0)
-  flipper-active_record (~> 0.13.0)
-  flipper-active_support_cache_store (~> 0.13.0)
+  flipper (~> 0.17.1)
+  flipper-active_record (~> 0.17.1)
+  flipper-active_support_cache_store (~> 0.17.1)
   flowdock (~> 0.7)
   fog-aliyun (~> 0.3)
   fog-aws (~> 3.5)
@@ -1161,14 +1188,13 @@ DEPENDENCIES
   fog-openstack (~> 1.0)
   fog-rackspace (~> 0.1.1)
   font-awesome-rails (~> 4.7)
-  foreman (~> 0.84.0)
   fugit (~> 1.2.1)
   fuubar (~> 2.2.0)
   gemojione (~> 3.3)
   gettext (~> 3.2.2)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.3)
-  gitaly (~> 1.65.0)
+  gitaly (~> 1.70.0)
   github-markup (~> 1.7.0)
   gitlab-labkit (~> 0.5)
   gitlab-license (~> 1.0)
@@ -1181,8 +1207,8 @@ DEPENDENCIES
   gitlab_omniauth-ldap (~> 2.1.1)
   gon (~> 6.2)
   google-api-client (~> 0.23)
-  google-protobuf (~> 3.7.1)
-  gpgme (~> 2.0.18)
+  google-protobuf (~> 3.8.0)
+  gpgme (~> 2.0.19)
   grape (~> 1.1.0)
   grape-entity (~> 0.7.1)
   grape-path-helpers (~> 1.1)
@@ -1190,8 +1216,9 @@ DEPENDENCIES
   graphiql-rails (~> 1.4.10)
   graphql (~> 1.9.11)
   graphql-docs (~> 1.6.0)
-  grpc (~> 1.19.0)
+  grpc (~> 1.24.0)
   gssapi
+  guard-rspec
   haml_lint (~> 0.31.0)
   hamlit (~> 2.8.8)
   hangouts-chat (~> 0.0.5)
@@ -1226,7 +1253,7 @@ DEPENDENCIES
   net-ldap
   net-ntp
   net-ssh (~> 5.2)
-  nokogiri (~> 1.10.4)
+  nokogiri (~> 1.10.5)
   oauth2 (~> 1.4)
   octokit (~> 4.9)
   omniauth (~> 1.8)
@@ -1246,17 +1273,17 @@ DEPENDENCIES
   omniauth-twitter (~> 1.4)
   omniauth-ultraauth (~> 0.0.2)
   omniauth_crowd (~> 2.2.0)
-  omniauth_openid_connect (~> 0.3.1)
+  omniauth_openid_connect (~> 0.3.3)
   org-ruby (~> 0.9.12)
   pg (~> 1.1)
-  premailer-rails (~> 1.9.7)
+  premailer-rails (~> 1.10.3)
   prometheus-client-mmap (~> 0.9.10)
   pry-byebug (~> 3.5.1)
   pry-rails (~> 0.3.4)
   puma (~> 3.12)
   puma_worker_killer
   rack (~> 2.0.7)
-  rack-attack (~> 4.4.1)
+  rack-attack (~> 6.2.0)
   rack-cors (~> 1.0.0)
   rack-oauth2 (~> 1.9.3)
   rack-proxy (~> 0.6.0)
@@ -1275,7 +1302,8 @@ DEPENDENCIES
   redis-namespace (~> 1.6.0)
   redis-rails (~> 5.0.2)
   request_store (~> 1.3)
-  responders (~> 2.0)
+  responders (~> 3.0)
+  retriable (~> 3.1.2)
   rouge (~> 3.11.0)
   rqrcode-rails3 (~> 0.1.7)
   rspec-parameterized
@@ -1291,7 +1319,7 @@ DEPENDENCIES
   ruby-prof (~> 1.0.0)
   ruby-progressbar
   ruby_parser (~> 3.8)
-  rubyzip (~> 1.2.2)
+  rubyzip (~> 1.3.0)
   rugged (~> 0.28)
   sanitize (~> 4.6)
   sassc-rails (~> 2.1.0)
@@ -1312,7 +1340,7 @@ DEPENDENCIES
   sprockets (~> 3.7.0)
   sshkey (~> 2.0)
   stackprof (~> 0.2.10)
-  state_machines-activerecord (~> 0.5.1)
+  state_machines-activerecord (~> 0.6.0)
   sys-filesystem (~> 1.1.6)
   test-prof (~> 0.10.0)
   thin (~> 1.7.0)
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index 84a984ea2b3..dc9c8128d2f 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -146,10 +146,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hl52pjgfzy3acdwnbxfqy08m808vlv9dmsyp03d5x7x0y499kvl";
+      sha256 = "1nvhd986xa6llyjnhikq4h1nrcf5b9r9s11if25qsj8358inrpga";
       type = "gem";
     };
-    version = "6.0.0";
+    version = "6.5.0";
   };
   adamantium = {
     dependencies = ["ice_nine" "memoizable"];
@@ -309,16 +309,26 @@
     };
     version = "1.8.0";
   };
+  aws-eventstream = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "100g77a5ixg4p5zwq77f28n2pdkk0y481f7v83qrlmnj22318qq6";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
   aws-sdk = {
     dependencies = ["aws-sdk-resources"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03r754cqa0jayf1nxpcmp1anaypxwpcjyjaq5cz7i04l9jdxvsnn";
+      sha256 = "1yvl9bxzaxgcyzix2yw46cgll9nl0xfg5qx1j6y3xc1i78rk7vy0";
       type = "gem";
     };
-    version = "2.9.32";
+    version = "2.11.374";
   };
   aws-sdk-core = {
     dependencies = ["aws-sigv4" "jmespath"];
@@ -326,10 +336,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pq09wwb74y4m5adk4hi4zlz05q6sxjxij6g71v6nkd0z83hi34x";
+      sha256 = "1d7nw1jihv7rglcmkd3hhidjflbzq5ik63n43q27pmx8ki108rd9";
       type = "gem";
     };
-    version = "2.9.32";
+    version = "2.11.374";
   };
   aws-sdk-resources = {
     dependencies = ["aws-sdk-core"];
@@ -337,20 +347,21 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15m56k12x9gzkcyhwrab1qhi3wqla0qmv84dkqcjwp44d7c2xjyi";
+      sha256 = "0qx2a67vsw8rz1y0m04f97p1q4zx7miy06a5ck78hm77nvsigjj4";
       type = "gem";
     };
-    version = "2.9.32";
+    version = "2.11.374";
   };
   aws-sigv4 = {
+    dependencies = ["aws-eventstream"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cnrfxbaxn86qrxhfidg10f89ka1hddihakdhcvnri0dljaw7dsz";
+      sha256 = "1dfc8i5cxjwlvi4b665lbpbwvks8a6wfy3vfmwr3pjdmxwdmc2cs";
       type = "gem";
     };
-    version = "1.0.0";
+    version = "1.1.0";
   };
   axiom-types = {
     dependencies = ["descendants_tracker" "ice_nine" "thread_safe"];
@@ -814,10 +825,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi";
+      sha256 = "030sc98kjrb36rh7g21qsbdfxrj6knsjkx0mn3b7gig8zknwhp2f";
       type = "gem";
     };
-    version = "1.0.4";
+    version = "1.0.5";
   };
   creole = {
     groups = ["default"];
@@ -835,10 +846,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jlr17cn044yaq4l3d9p42g3bghnamwsprq9c39xn6pxjrn5k1hy";
+      sha256 = "1y4vc018b5mzp7winw4pbb22jk0dpxp22pzzxq7w0rgvfxzi89pd";
       type = "gem";
     };
-    version = "1.5.0";
+    version = "1.7.0";
   };
   daemons = {
     groups = ["default" "development"];
@@ -901,10 +912,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s637v5pi5ipmv0gn9g2wwjpxdm27dvppfjd8ml0dc1m0jsm7964";
+      sha256 = "09k7rlxsl7pd5kn3wyswgqi0hhbmlj40b66l4mf8v9mqf3c7v0yk";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.2.1";
   };
   declarative = {
     groups = ["default"];
@@ -932,10 +943,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xj9d1y2fk3kxfm1kyiwasjpw6r1w7c1xjx26sm3c33xhmz57fla";
+      sha256 = "08hwnnqm3bxd4n627isliq79zysdlmfkf813403v0b4mkhika5my";
       type = "gem";
     };
-    version = "3.2.0";
+    version = "3.3.0";
   };
   derailed_benchmarks = {
     dependencies = ["benchmark-ips" "get_process_mem" "heapy" "memory_profiler" "rack" "rake" "thor"];
@@ -1001,6 +1012,16 @@
     };
     version = "1.3";
   };
+  diff_match_patch = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03n4g4w2pwiygmqq5lfhqrpbs9g6kv0jhb3vrffz3vgaryzmfq5k";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
   diffy = {
     groups = ["default"];
     platforms = [];
@@ -1374,10 +1395,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pdj9y3k6padiicfraxw9ibx9fm8yi2ihh608736lq5nnbf3k6gw";
+      sha256 = "01gbn1qmcvn49gjcbvd5fga57qc8l3915kb04ikkffvb6n09q7f7";
       type = "gem";
     };
-    version = "0.13.0";
+    version = "0.17.1";
   };
   flipper-active_record = {
     dependencies = ["activerecord" "flipper"];
@@ -1385,10 +1406,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rgm4h5h6xcbf17z47sw8ancaxva8x4hwlxmyqpm0vzj1pnc47c1";
+      sha256 = "154q9xajqs64gxa9fv4hwpad44x3rmwgpldrb941i8wi37dpzskg";
       type = "gem";
     };
-    version = "0.13.0";
+    version = "0.17.1";
   };
   flipper-active_support_cache_store = {
     dependencies = ["activesupport" "flipper"];
@@ -1396,10 +1417,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zpikmfhadb7l1ny6xbhk5d4840im6yq0wvfsnlw718spxi4ccgk";
+      sha256 = "0mkbyn3mx3f411x4z1l1djc9vix3wrfzd5rhrmxb83iqp60r42hg";
       type = "gem";
     };
-    version = "0.13.0";
+    version = "0.17.1";
   };
   flowdock = {
     dependencies = ["httparty" "multi_json"];
@@ -1517,21 +1538,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "11mf7bk2737pyxjwba3a9lpgcxzbp0vgq01n2dn30774zysc90hj";
+      sha256 = "0a32q69rdsdw9zhmf2cflvvnikg20amidhn40sv2afw2qk91fcrz";
       type = "gem";
     };
-    version = "4.7.0.4";
-  };
-  foreman = {
-    dependencies = ["thor"];
-    groups = ["development"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "06mq39lpmc17bxzlwhad9d8i0lcnbb08xr18smh2x79mm631wsw0";
-      type = "gem";
-    };
-    version = "0.84.0";
+    version = "4.7.0.5";
   };
   formatador = {
     groups = ["default"];
@@ -1645,10 +1655,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h8jzwifqgkrgh9d05g0vsdkyrnk75i53lmm3pfp9rj47gvn1z1j";
+      sha256 = "0b705d2fmdisirf3hydakswdr8jq786wbqn053gvxgssrwcdlrq3";
       type = "gem";
     };
-    version = "1.65.0";
+    version = "1.70.0";
   };
   github-markup = {
     groups = ["default"];
@@ -1666,10 +1676,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1j06gl4ksd83rycg3fb46bb77iw74i1ivs5li6pyf5klrxjq8k3h";
+      sha256 = "0r2zkxkj2l78c6qgr6k9lgcp7w6x7r703259rbsbrg7cfnjm43b7";
       type = "gem";
     };
-    version = "0.5.2";
+    version = "0.7.0";
   };
   gitlab-license = {
     groups = ["default"];
@@ -1794,10 +1804,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04988m3hmllg4sl4syjb35x0wzsg7rj1nmvhx3d9ihml22w76gb2";
+      sha256 = "0by3289irdklb9gjqw41fq6mg6yja3iyzh99dj8p8z9l4brllqn4";
       type = "gem";
     };
-    version = "3.7.1";
+    version = "3.8.0";
   };
   googleapis-common-protos-types = {
     dependencies = ["google-protobuf"];
@@ -1827,10 +1837,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12fqirxr964mc8jwsfl5nif6q4wcckrmj7w4c9ci4xg9xy2b9v6m";
+      sha256 = "0jbqajngi5ndqfarw9dxkhbphva0j71jav5wfym3fsiisvk5gg6p";
       type = "gem";
     };
-    version = "2.0.18";
+    version = "2.0.19";
   };
   grape = {
     dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
@@ -1914,10 +1924,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rdywzism5vxz8pnml6xjb9f19diclyy74014z69q01jzqwi1wgs";
+      sha256 = "18wikj9qd4jb4lks55cs2cf3q7fifnanm9z9ywnxhpj57vbnilpf";
       type = "gem";
     };
-    version = "1.19.0";
+    version = "1.24.0";
   };
   gssapi = {
     dependencies = ["ffi"];
@@ -1930,6 +1940,38 @@
     };
     version = "1.2.0";
   };
+  guard = {
+    dependencies = ["formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "000hn5cdqz3wl99b245q958c5byi2dlsqi814q5gmyljv7i47zwf";
+      type = "gem";
+    };
+    version = "2.15.1";
+  };
+  guard-compat = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zj6sr1k8w59mmi27rsii0v8xyy2rnsi09nqvwpgj1q10yq1mlis";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  guard-rspec = {
+    dependencies = ["guard" "guard-compat" "rspec"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jkm5xp90gm4c5s51pmf92i9hc10gslwwic6mvk72g0yplya0yx4";
+      type = "gem";
+    };
+    version = "4.7.3";
+  };
   haml = {
     dependencies = ["temple" "tilt"];
     groups = ["default" "development" "test"];
@@ -2241,10 +2283,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07w8ipjg59qavijq59hl82zs74jf3jsp7vxl9q3a2d0wpv5akz3y";
+      sha256 = "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf";
       type = "gem";
     };
-    version = "1.3.1";
+    version = "1.4.0";
   };
   js_regex = {
     dependencies = ["character_set" "regexp_parser" "regexp_property_values"];
@@ -2450,6 +2492,17 @@
     };
     version = "8.9.2";
   };
+  listen = {
+    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
+      type = "gem";
+    };
+    version = "3.1.5";
+  };
   locale = {
     groups = ["default" "development"];
     platforms = [];
@@ -2477,10 +2530,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06kfq90vi38gv6i128f4zg462kj32szs5vsgm25hxgw9zd12pj9x";
+      sha256 = "0npqav026zd7r4qdidq9x5nxcp2dzg71bnp421xxx7sngbxf2xbd";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.1";
+  };
+  lumberjack = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06im7gcg42x77yhz2w5da2ly9xz0n0c36y5ks7xs53v0l9g0vf5n";
+      type = "gem";
+    };
+    version = "1.0.13";
   };
   mail = {
     dependencies = ["mini_mime"];
@@ -2605,10 +2668,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
+      sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.0.2";
   };
   mini_portile2 = {
     groups = ["default" "development" "test"];
@@ -2721,6 +2784,16 @@
     };
     version = "1.1.0";
   };
+  nenv = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
   net-ldap = {
     groups = ["default"];
     platforms = [];
@@ -2787,10 +2860,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
+      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
       type = "gem";
     };
-    version = "1.10.4";
+    version = "1.10.5";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
@@ -2803,6 +2876,17 @@
     };
     version = "1.5.0";
   };
+  notiffany = {
+    dependencies = ["nenv" "shellany"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f47h3bmg1apr4x51szqfv3rh2vq58z3grh4w02cp3bzbdh6jxnk";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
   numerizer = {
     groups = ["default"];
     platforms = [];
@@ -3071,10 +3155,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ja7cjlm4z0k0pwwy64djl58pay3lzkw7im565fybs4a8q4wmacb";
+      sha256 = "0awybp2jnai0w2qfgqnr3f478g3nbg5r0vcm6pa5g8k5f4rs19qr";
       type = "gem";
     };
-    version = "0.3.1";
+    version = "0.3.3";
   };
   open4 = {
     groups = ["default" "development"];
@@ -3092,10 +3176,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1r13bv18nyvw0g1nw3fzffvv2si99zj24w0k5zgawf4q6nn5f7vd";
+      sha256 = "0r50vwf9hsf6r8gx5mwqs3w3w92l864ikiz9d0fcibqsr1489pbg";
       type = "gem";
     };
-    version = "1.1.6";
+    version = "1.1.8";
   };
   opentracing = {
     groups = ["default"];
@@ -3206,10 +3290,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "10w6f7r6snpkcnv3byxma9b08lyqzcfxkm083scb2dr2ly4xkzyf";
+      sha256 = "1xrhmialxn5vlp1nmf40a4db9gji4h2wbzd7f43sz64z8lvrjj6h";
       type = "gem";
     };
-    version = "1.10.4";
+    version = "1.11.1";
   };
   premailer-rails = {
     dependencies = ["actionmailer" "premailer"];
@@ -3217,10 +3301,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05czxmx6hnykg6g23hy2ww2bf86a69njbi02sv7lrds4w776jhim";
+      sha256 = "0bqi7d4f15vy3f1g0xb3bxmncfbzv9dd3ilhqj0plvw64xqbkp3w";
       type = "gem";
     };
-    version = "1.9.7";
+    version = "1.10.3";
   };
   proc_to_ast = {
     dependencies = ["coderay" "parser" "unparser"];
@@ -3299,10 +3383,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c7c5xxkx91hwj4572hbnyvxmydb90q69wlpr2l0dxrmwx2p365l";
+      sha256 = "0g9ds2ffzljl6jjmkjffwxc1z6lh5nkqqmhhkxjk71q5ggv0rkpm";
       type = "gem";
     };
-    version = "3.1.0";
+    version = "3.1.1";
   };
   puma = {
     groups = ["puma"];
@@ -3372,10 +3456,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1czx68p70x98y21dkdndsb64lrxf9qrv09wl1dbcxrypcjnpsdl1";
+      sha256 = "1sqjqwa18c0l59zdymcvvvnh5nk3pjggnzaydb2q1qbrk3rypcnq";
       type = "gem";
     };
-    version = "4.4.1";
+    version = "6.2.0";
   };
   rack-cors = {
     groups = ["default"];
@@ -3458,10 +3542,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "16kdkk73mhhs73iz3i1i0ryjm84dadiyh817b3nh8acdi490jyhy";
+      sha256 = "1m1rklj6pvzi4fydxcmcv4q0xd7913hhhw1hw530nfz1wkl7vjlf";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.4";
   };
   rails-dom-testing = {
     dependencies = ["activesupport" "nokogiri"];
@@ -3640,10 +3724,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mymdx7s5sr4mablklaipz679ckczsiigswm1g2v5mc93yj5amw3";
+      sha256 = "08v2y91q1pmv12g9zsvwj66w3s8j9d82yrmxgyv4y4gz380j3wyh";
       type = "gem";
     };
-    version = "4.1.2";
+    version = "4.1.3";
   };
   redis-actionpack = {
     dependencies = ["actionpack" "redis-rack" "redis-store"];
@@ -3651,10 +3735,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15k41gz7nygd4yydk2yd25gghya1j7q6zifk4mdrra6bwnwjbm63";
+      sha256 = "1hvai5ygkyii9wq8h98wim8shgrm7vkv0js62zpm85vdl1xzvphz";
       type = "gem";
     };
-    version = "5.0.2";
+    version = "5.1.0";
   };
   redis-activesupport = {
     dependencies = ["activesupport" "redis-store"];
@@ -3662,10 +3746,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0y1df62gpqgy0yrlmgl05rp4kb0xvn0kylprhv1k32bs33dgpv62";
+      sha256 = "14a3z8810j02ysvg53f3mvcfb4rw34m91yfd19zy9y5lb3yv2g59";
       type = "gem";
     };
-    version = "5.0.7";
+    version = "5.2.0";
   };
   redis-namespace = {
     dependencies = ["redis"];
@@ -3684,10 +3768,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03xgdmq4fh187aqlh8z05idbxrmgddcarlb8x1kw4wjfcsf5afqi";
+      sha256 = "1pa19ydbk0l6wilwbxcjn6knfs4ffgj0rhaaldrlhf76pjgkaiqb";
       type = "gem";
     };
-    version = "2.0.5";
+    version = "2.0.6";
   };
   redis-rails = {
     dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"];
@@ -3706,10 +3790,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mrcnjgkbmx1zf569mly82agdizqayjvnp2k6055k1iy07in3j8b";
+      sha256 = "1isqzzds9kszc2nn8jiy8ikry01qspn7637ba9z2k6sk7vky46d9";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.8.1";
   };
   regexp_parser = {
     groups = ["default" "development" "test"];
@@ -3758,10 +3842,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18lqbiyc7234vd6iwxia5yvvzg6bdvdwl2nm4a5y7ia5fxjl3kqm";
+      sha256 = "1p7pqcfq33q1z4xlp4qm94w4h3fzc1yvr3cny16d00i8b20v4rx2";
       type = "gem";
     };
-    version = "2.4.1";
+    version = "3.0.0";
   };
   rest-client = {
     dependencies = ["http-cookie" "mime-types" "netrc"];
@@ -4052,6 +4136,16 @@
     };
     version = "1.7.2";
   };
+  ruby_dep = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
   ruby_parser = {
     dependencies = ["sexp_processor"];
     groups = ["default"];
@@ -4084,14 +4178,14 @@
     version = "0.2.0";
   };
   rubyzip = {
-    groups = ["default" "development" "test"];
+    groups = ["default" "development" "omnibus" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
+      sha256 = "1qxc2zxwwipm6kviiar4gfhcakpx1jdcs89v6lvzivn5hq1xk78l";
       type = "gem";
     };
-    version = "1.2.2";
+    version = "1.3.0";
   };
   rugged = {
     groups = ["default"];
@@ -4243,6 +4337,16 @@
     };
     version = "4.12.0";
   };
+  shellany = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf";
+      type = "gem";
+    };
+    version = "0.0.1";
+  };
   shoulda-matchers = {
     dependencies = ["activesupport"];
     groups = ["test"];
@@ -4439,10 +4543,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0chhm5hs1y83dq8haff10m66r3yrm7jab35r9xg6adn6qd8ynv2l";
+      sha256 = "05c2dw3115zj3pmyyqh2iypc7afj8ibhrghisg0d61z7gzmir1rd";
       type = "gem";
     };
-    version = "0.5.1";
+    version = "0.7.1";
   };
   state_machines-activerecord = {
     dependencies = ["activerecord" "state_machines-activemodel"];
@@ -4450,10 +4554,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00h07gd4kb22ahgv61r8zca9hqxaw44fnk2sc28j00c1nmwsw6r3";
+      sha256 = "12g7yqy11fpfiprzc86pwa9jjky1h3haxj37kg47467fgg43p511";
       type = "gem";
     };
-    version = "0.5.1";
+    version = "0.6.0";
   };
   swd = {
     dependencies = ["activesupport" "attr_required" "httpclient"];
diff --git a/pkgs/applications/version-management/gitlab/yarnPkgs.nix b/pkgs/applications/version-management/gitlab/yarnPkgs.nix
index cff2603129d..04c0b44f4ac 100644
--- a/pkgs/applications/version-management/gitlab/yarnPkgs.nix
+++ b/pkgs/applications/version-management/gitlab/yarnPkgs.nix
@@ -42,14 +42,6 @@
       };
     }
     {
-      name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.3.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.3.0.tgz";
-        sha1 = "a1ac95a5d2b3e88ae5e54846bf462eeb81b318a4";
-      };
-    }
-    {
       name = "_babel_helper_call_delegate___helper_call_delegate_7.4.4.tgz";
       path = fetchurl {
         name = "_babel_helper_call_delegate___helper_call_delegate_7.4.4.tgz";
@@ -210,14 +202,6 @@
       };
     }
     {
-      name = "_babel_parser___parser_7.1.3.tgz";
-      path = fetchurl {
-        name = "_babel_parser___parser_7.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.3.tgz";
-        sha1 = "2c92469bac2b7fbff810b67fca07bd138b48af77";
-      };
-    }
-    {
       name = "_babel_parser___parser_7.6.2.tgz";
       path = fetchurl {
         name = "_babel_parser___parser_7.6.2.tgz";
@@ -242,22 +226,6 @@
       };
     }
     {
-      name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.4.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.4.4.tgz";
-        sha1 = "de9b2a1a8ab0196f378e2a82f10b6e2a36f21cc0";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_do_expressions___plugin_proposal_do_expressions_7.5.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_do_expressions___plugin_proposal_do_expressions_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-do-expressions/-/plugin-proposal-do-expressions-7.5.0.tgz";
-        sha1 = "ceb594d4a618545b00aa0b5cd61cad4aaaeb7a5a";
-      };
-    }
-    {
       name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.5.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.5.0.tgz";
@@ -266,38 +234,6 @@
       };
     }
     {
-      name = "_babel_plugin_proposal_export_default_from___plugin_proposal_export_default_from_7.5.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_export_default_from___plugin_proposal_export_default_from_7.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.5.2.tgz";
-        sha1 = "2c0ac2dcc36e3b2443fead2c3c5fc796fb1b5145";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_export_namespace_from___plugin_proposal_export_namespace_from_7.5.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_export_namespace_from___plugin_proposal_export_namespace_from_7.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.5.2.tgz";
-        sha1 = "ccd5ed05b06d700688ff1db01a9dd27155e0d2a0";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_function_bind___plugin_proposal_function_bind_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_function_bind___plugin_proposal_function_bind_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-function-bind/-/plugin-proposal-function-bind-7.2.0.tgz";
-        sha1 = "94dc2cdc505cafc4e225c0014335a01648056bf7";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_function_sent___plugin_proposal_function_sent_7.5.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_function_sent___plugin_proposal_function_sent_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-function-sent/-/plugin-proposal-function-sent-7.5.0.tgz";
-        sha1 = "39233aa801145e7d8072077cdb2d25f781c1ffd7";
-      };
-    }
-    {
       name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.2.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.2.0.tgz";
@@ -306,30 +242,6 @@
       };
     }
     {
-      name = "_babel_plugin_proposal_logical_assignment_operators___plugin_proposal_logical_assignment_operators_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_logical_assignment_operators___plugin_proposal_logical_assignment_operators_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.2.0.tgz";
-        sha1 = "8a5cea6c42a7c87446959e02fff5fad012c56f57";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.4.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.4.4.tgz";
-        sha1 = "41c360d59481d88e0ce3a3f837df10121a769b39";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.2.0.tgz";
-        sha1 = "646854daf4cd22fd6733f6076013a936310443ac";
-      };
-    }
-    {
       name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.6.2.tgz";
       path = fetchurl {
         name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.6.2.tgz";
@@ -346,22 +258,6 @@
       };
     }
     {
-      name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.2.0.tgz";
-        sha1 = "ae454f4c21c6c2ce8cb2397dc332ae8b420c5441";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_pipeline_operator___plugin_proposal_pipeline_operator_7.5.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_pipeline_operator___plugin_proposal_pipeline_operator_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-pipeline-operator/-/plugin-proposal-pipeline-operator-7.5.0.tgz";
-        sha1 = "4100ec55ef4f6a4c2490b5f5a4f2a22dfa272c06";
-      };
-    }
-    {
       name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.6.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.6.0.tgz";
@@ -370,14 +266,6 @@
       };
     }
     {
-      name = "_babel_plugin_proposal_throw_expressions___plugin_proposal_throw_expressions_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_throw_expressions___plugin_proposal_throw_expressions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-throw-expressions/-/plugin-proposal-throw-expressions-7.2.0.tgz";
-        sha1 = "2d9e452d370f139000e51db65d0a85dc60c64739";
-      };
-    }
-    {
       name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.6.2.tgz";
       path = fetchurl {
         name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.6.2.tgz";
@@ -394,22 +282,6 @@
       };
     }
     {
-      name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.2.0.tgz";
-        sha1 = "c50b1b957dcc69e4b1127b65e1c33eef61570c1b";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_do_expressions___plugin_syntax_do_expressions_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_do_expressions___plugin_syntax_do_expressions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-do-expressions/-/plugin-syntax-do-expressions-7.2.0.tgz";
-        sha1 = "f3d4b01be05ecde2892086d7cfd5f1fa1ead5a2a";
-      };
-    }
-    {
       name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.2.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.2.0.tgz";
@@ -418,46 +290,6 @@
       };
     }
     {
-      name = "_babel_plugin_syntax_export_default_from___plugin_syntax_export_default_from_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_export_default_from___plugin_syntax_export_default_from_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.2.0.tgz";
-        sha1 = "edd83b7adc2e0d059e2467ca96c650ab6d2f3820";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_export_namespace_from___plugin_syntax_export_namespace_from_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_export_namespace_from___plugin_syntax_export_namespace_from_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.2.0.tgz";
-        sha1 = "8d257838c6b3b779db52c0224443459bd27fb039";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.2.0.tgz";
-        sha1 = "a765f061f803bc48f240c26f8747faf97c26bf7c";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_function_bind___plugin_syntax_function_bind_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_function_bind___plugin_syntax_function_bind_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-function-bind/-/plugin-syntax-function-bind-7.2.0.tgz";
-        sha1 = "68fe85b0c0da67125f87bf239c68051b06c66309";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_function_sent___plugin_syntax_function_sent_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_function_sent___plugin_syntax_function_sent_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-function-sent/-/plugin-syntax-function-sent-7.2.0.tgz";
-        sha1 = "91474d4d400604e4c6cbd4d77cd6cb3b8565576c";
-      };
-    }
-    {
       name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.2.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.2.0.tgz";
@@ -474,38 +306,6 @@
       };
     }
     {
-      name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz";
-        sha1 = "0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_logical_assignment_operators___plugin_syntax_logical_assignment_operators_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_logical_assignment_operators___plugin_syntax_logical_assignment_operators_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.2.0.tgz";
-        sha1 = "fcab7388530e96c6f277ce494c55caa6c141fcfb";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.2.0.tgz";
-        sha1 = "f75083dfd5ade73e783db729bbd87e7b9efb7624";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.2.0.tgz";
-        sha1 = "7470fe070c2944469a756752a69a6963135018be";
-      };
-    }
-    {
       name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.2.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.2.0.tgz";
@@ -522,30 +322,6 @@
       };
     }
     {
-      name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.2.0.tgz";
-        sha1 = "a59d6ae8c167e7608eaa443fda9fa8fa6bf21dff";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_pipeline_operator___plugin_syntax_pipeline_operator_7.5.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_pipeline_operator___plugin_syntax_pipeline_operator_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-pipeline-operator/-/plugin-syntax-pipeline-operator-7.5.0.tgz";
-        sha1 = "8ea7c2c22847c797748bf07752722a317079dc1e";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_throw_expressions___plugin_syntax_throw_expressions_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_throw_expressions___plugin_syntax_throw_expressions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-throw-expressions/-/plugin-syntax-throw-expressions-7.2.0.tgz";
-        sha1 = "79001ee2afe1b174b1733cdc2fc69c9a46a0f1f8";
-      };
-    }
-    {
       name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.2.0.tgz";
       path = fetchurl {
         name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.2.0.tgz";
@@ -626,14 +402,6 @@
       };
     }
     {
-      name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.4.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.4.4.tgz";
-        sha1 = "d267a081f49a8705fc9146de0768c6b58dccd8f7";
-      };
-    }
-    {
       name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.4.4.tgz";
       path = fetchurl {
         name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.4.4.tgz";
@@ -738,38 +506,6 @@
       };
     }
     {
-      name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz";
-        sha1 = "ebfaed87834ce8dc4279609a4f0c324c156e3eb0";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz";
-        sha1 = "461e21ad9478f1031dd5e276108d027f1b5240ba";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.5.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.5.0.tgz";
-        sha1 = "583b10c49cf057e237085bcbd8cc960bd83bd96b";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.3.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz";
-        sha1 = "f2cab99026631c767e2745a5368b331cfe8f5290";
-      };
-    }
-    {
       name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.4.5.tgz";
       path = fetchurl {
         name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.4.5.tgz";
@@ -842,30 +578,6 @@
       };
     }
     {
-      name = "_babel_preset_flow___preset_flow_7.0.0.tgz";
-      path = fetchurl {
-        name = "_babel_preset_flow___preset_flow_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.0.0.tgz";
-        sha1 = "afd764835d9535ec63d8c7d4caf1c06457263da2";
-      };
-    }
-    {
-      name = "_babel_preset_react___preset_react_7.0.0.tgz";
-      path = fetchurl {
-        name = "_babel_preset_react___preset_react_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz";
-        sha1 = "e86b4b3d99433c7b3e9e91747e2653958bc6b3c0";
-      };
-    }
-    {
-      name = "_babel_preset_stage_0___preset_stage_0_7.0.0.tgz";
-      path = fetchurl {
-        name = "_babel_preset_stage_0___preset_stage_0_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-stage-0/-/preset-stage-0-7.0.0.tgz";
-        sha1 = "999aaec79ee8f0a763042c68c06539c97c6e0646";
-      };
-    }
-    {
       name = "_babel_standalone___standalone_7.5.5.tgz";
       path = fetchurl {
         name = "_babel_standalone___standalone_7.5.5.tgz";
@@ -938,27 +650,27 @@
       };
     }
     {
-      name = "_gitlab_svgs___svgs_1.78.0.tgz";
+      name = "_gitlab_svgs___svgs_1.82.0.tgz";
       path = fetchurl {
-        name = "_gitlab_svgs___svgs_1.78.0.tgz";
-        url  = "https://registry.yarnpkg.com/@gitlab/svgs/-/svgs-1.78.0.tgz";
-        sha1 = "469493bd6cdd254eb5d1271edeab22bbbee2f4c4";
+        name = "_gitlab_svgs___svgs_1.82.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/svgs/-/svgs-1.82.0.tgz";
+        sha1 = "c059c460afc13ebfe9df370521ca8963fa5afb80";
       };
     }
     {
-      name = "_gitlab_ui___ui_5.36.0.tgz";
+      name = "_gitlab_ui___ui_7.11.0.tgz";
       path = fetchurl {
-        name = "_gitlab_ui___ui_5.36.0.tgz";
-        url  = "https://registry.yarnpkg.com/@gitlab/ui/-/ui-5.36.0.tgz";
-        sha1 = "3087b23c138ad1c222f6b047e533f253371bc618";
+        name = "_gitlab_ui___ui_7.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/ui/-/ui-7.11.0.tgz";
+        sha1 = "b5c981f3b1edbf0ad75bcca8fa1cd81017676b3b";
       };
     }
     {
-      name = "_gitlab_visual_review_tools___visual_review_tools_1.0.3.tgz";
+      name = "_gitlab_visual_review_tools___visual_review_tools_1.2.0.tgz";
       path = fetchurl {
-        name = "_gitlab_visual_review_tools___visual_review_tools_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@gitlab/visual-review-tools/-/visual-review-tools-1.0.3.tgz";
-        sha1 = "b49c4a6fd8af3a1517d7e7d04096562f8bcb5d14";
+        name = "_gitlab_visual_review_tools___visual_review_tools_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/visual-review-tools/-/visual-review-tools-1.2.0.tgz";
+        sha1 = "8d6757917193c1023012bb4a316dc1a97309a27a";
       };
     }
     {
@@ -1074,6 +786,62 @@
       };
     }
     {
+      name = "_sentry_browser___browser_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_browser___browser_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/browser/-/browser-5.7.1.tgz";
+        sha1 = "1f8435e2a325d7a09f830065ebce40a2b3c708a4";
+      };
+    }
+    {
+      name = "_sentry_core___core_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_core___core_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/core/-/core-5.7.1.tgz";
+        sha1 = "3eb2b7662cac68245931ee939ec809bf7a639d0e";
+      };
+    }
+    {
+      name = "_sentry_hub___hub_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_hub___hub_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.7.1.tgz";
+        sha1 = "a52acd9fead7f3779d96e9965c6978aecc8b9cad";
+      };
+    }
+    {
+      name = "_sentry_minimal___minimal_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_minimal___minimal_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.7.1.tgz";
+        sha1 = "56afc537737586929e25349765e37a367958c1e1";
+      };
+    }
+    {
+      name = "_sentry_types___types_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_types___types_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/types/-/types-5.7.1.tgz";
+        sha1 = "4c4c1d4d891b6b8c2c3c7b367d306a8b1350f090";
+      };
+    }
+    {
+      name = "_sentry_utils___utils_5.7.1.tgz";
+      path = fetchurl {
+        name = "_sentry_utils___utils_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.7.1.tgz";
+        sha1 = "cf37ad55f78e317665cd8680f202d307fa77f1d0";
+      };
+    }
+    {
+      name = "_sourcegraph_code_host_integration___code_host_integration_0.0.13.tgz";
+      path = fetchurl {
+        name = "_sourcegraph_code_host_integration___code_host_integration_0.0.13.tgz";
+        url  = "https://registry.yarnpkg.com/@sourcegraph/code-host-integration/-/code-host-integration-0.0.13.tgz";
+        sha1 = "4fd5fe1e0088c63b2a26be231c5a2a4ca79b1596";
+      };
+    }
+    {
       name = "_types_anymatch___anymatch_1.3.0.tgz";
       path = fetchurl {
         name = "_types_anymatch___anymatch_1.3.0.tgz";
@@ -1434,6 +1202,22 @@
       };
     }
     {
+      name = "_wry_context___context_0.4.4.tgz";
+      path = fetchurl {
+        name = "_wry_context___context_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/@wry/context/-/context-0.4.4.tgz";
+        sha1 = "e50f5fa1d6cfaabf2977d1fda5ae91717f8815f8";
+      };
+    }
+    {
+      name = "_wry_equality___equality_0.1.9.tgz";
+      path = fetchurl {
+        name = "_wry_equality___equality_0.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.9.tgz";
+        sha1 = "b13e18b7a8053c6858aa6c85b54911fb31e3a909";
+      };
+    }
+    {
       name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
       path = fetchurl {
         name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
@@ -1458,14 +1242,6 @@
       };
     }
     {
-      name = "JSONStream___JSONStream_1.3.5.tgz";
-      path = fetchurl {
-        name = "JSONStream___JSONStream_1.3.5.tgz";
-        url  = "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz";
-        sha1 = "3208c1f08d3a4d99261ab64f92302bc15e111ca0";
-      };
-    }
-    {
       name = "abab___abab_2.0.0.tgz";
       path = fetchurl {
         name = "abab___abab_2.0.0.tgz";
@@ -1658,27 +1434,27 @@
       };
     }
     {
-      name = "apollo_cache_inmemory___apollo_cache_inmemory_1.5.1.tgz";
+      name = "apollo_cache_inmemory___apollo_cache_inmemory_1.6.3.tgz";
       path = fetchurl {
-        name = "apollo_cache_inmemory___apollo_cache_inmemory_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.5.1.tgz";
-        sha1 = "265d1ee67b0bf0aca9c37629d410bfae44e62953";
+        name = "apollo_cache_inmemory___apollo_cache_inmemory_1.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.6.3.tgz";
+        sha1 = "826861d20baca4abc45f7ca7a874105905b8525d";
       };
     }
     {
-      name = "apollo_cache___apollo_cache_1.2.1.tgz";
+      name = "apollo_cache___apollo_cache_1.3.2.tgz";
       path = fetchurl {
-        name = "apollo_cache___apollo_cache_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.2.1.tgz";
-        sha1 = "aae71eb4a11f1f7322adc343f84b1a39b0693644";
+        name = "apollo_cache___apollo_cache_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.3.2.tgz";
+        sha1 = "df4dce56240d6c95c613510d7e409f7214e6d26a";
       };
     }
     {
-      name = "apollo_client___apollo_client_2.5.1.tgz";
+      name = "apollo_client___apollo_client_2.6.4.tgz";
       path = fetchurl {
-        name = "apollo_client___apollo_client_2.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.5.1.tgz";
-        sha1 = "36126ed1d32edd79c3713c6684546a3bea80e6d1";
+        name = "apollo_client___apollo_client_2.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.6.4.tgz";
+        sha1 = "872c32927263a0d34655c5ef8a8949fbb20b6140";
       };
     }
     {
@@ -1698,14 +1474,6 @@
       };
     }
     {
-      name = "apollo_link_dedup___apollo_link_dedup_1.0.10.tgz";
-      path = fetchurl {
-        name = "apollo_link_dedup___apollo_link_dedup_1.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/apollo-link-dedup/-/apollo-link-dedup-1.0.10.tgz";
-        sha1 = "7b94589fe7f969777efd18a129043c78430800ae";
-      };
-    }
-    {
       name = "apollo_link_http_common___apollo_link_http_common_0.2.13.tgz";
       path = fetchurl {
         name = "apollo_link_http_common___apollo_link_http_common_0.2.13.tgz";
@@ -1730,19 +1498,11 @@
       };
     }
     {
-      name = "apollo_utilities___apollo_utilities_1.2.1.tgz";
+      name = "apollo_utilities___apollo_utilities_1.3.2.tgz";
       path = fetchurl {
-        name = "apollo_utilities___apollo_utilities_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.2.1.tgz";
-        sha1 = "1c3a1ebf5607d7c8efe7636daaf58e7463b41b3c";
-      };
-    }
-    {
-      name = "append_buffer___append_buffer_1.0.2.tgz";
-      path = fetchurl {
-        name = "append_buffer___append_buffer_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz";
-        sha1 = "d8220cf466081525efea50614f3de6514dfa58f1";
+        name = "apollo_utilities___apollo_utilities_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.3.2.tgz";
+        sha1 = "8cbdcf8b012f664cd6cb5767f6130f5aed9115c9";
       };
     }
     {
@@ -2122,14 +1882,6 @@
       };
     }
     {
-      name = "babelify___babelify_10.0.0.tgz";
-      path = fetchurl {
-        name = "babelify___babelify_10.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babelify/-/babelify-10.0.0.tgz";
-        sha1 = "fe73b1a22583f06680d8d072e25a1e0d1d1d7fb5";
-      };
-    }
-    {
       name = "babylon___babylon_7.0.0_beta.19.tgz";
       path = fetchurl {
         name = "babylon___babylon_7.0.0_beta.19.tgz";
@@ -2298,14 +2050,6 @@
       };
     }
     {
-      name = "body___body_5.1.0.tgz";
-      path = fetchurl {
-        name = "body___body_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/body/-/body-5.1.0.tgz";
-        sha1 = "e4ba0ce410a46936323367609ecb4e6553125069";
-      };
-    }
-    {
       name = "bonjour___bonjour_3.5.0.tgz";
       path = fetchurl {
         name = "bonjour___bonjour_3.5.0.tgz";
@@ -2458,14 +2202,6 @@
       };
     }
     {
-      name = "buffer_equal___buffer_equal_1.0.0.tgz";
-      path = fetchurl {
-        name = "buffer_equal___buffer_equal_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz";
-        sha1 = "59616b498304d556abd466966b22eeda3eca5fbe";
-      };
-    }
-    {
       name = "buffer_from___buffer_from_1.1.1.tgz";
       path = fetchurl {
         name = "buffer_from___buffer_from_1.1.1.tgz";
@@ -2490,14 +2226,6 @@
       };
     }
     {
-      name = "buffer_shims___buffer_shims_1.0.0.tgz";
-      path = fetchurl {
-        name = "buffer_shims___buffer_shims_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz";
-        sha1 = "9978ce317388c649ad8793028c3477ef044a8b51";
-      };
-    }
-    {
       name = "buffer_xor___buffer_xor_1.0.3.tgz";
       path = fetchurl {
         name = "buffer_xor___buffer_xor_1.0.3.tgz";
@@ -2522,14 +2250,6 @@
       };
     }
     {
-      name = "bytes___bytes_1.0.0.tgz";
-      path = fetchurl {
-        name = "bytes___bytes_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/bytes/-/bytes-1.0.0.tgz";
-        sha1 = "3569ede8ba34315fab99c3e92cb04c7220de1fa8";
-      };
-    }
-    {
       name = "bytes___bytes_3.0.0.tgz";
       path = fetchurl {
         name = "bytes___bytes_3.0.0.tgz";
@@ -2578,14 +2298,6 @@
       };
     }
     {
-      name = "cached_path_relative___cached_path_relative_1.0.2.tgz";
-      path = fetchurl {
-        name = "cached_path_relative___cached_path_relative_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.2.tgz";
-        sha1 = "a13df4196d26776220cc3356eb147a52dba2c6db";
-      };
-    }
-    {
       name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
       path = fetchurl {
         name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
@@ -2994,14 +2706,6 @@
       };
     }
     {
-      name = "clone_buffer___clone_buffer_1.0.0.tgz";
-      path = fetchurl {
-        name = "clone_buffer___clone_buffer_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz";
-        sha1 = "e3e25b207ac4e701af721e2cb5a16792cac3dc58";
-      };
-    }
-    {
       name = "clone_deep___clone_deep_4.0.1.tgz";
       path = fetchurl {
         name = "clone_deep___clone_deep_4.0.1.tgz";
@@ -3018,30 +2722,6 @@
       };
     }
     {
-      name = "clone_stats___clone_stats_1.0.0.tgz";
-      path = fetchurl {
-        name = "clone_stats___clone_stats_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz";
-        sha1 = "b3782dff8bb5474e18b9b6bf0fdfe782f8777680";
-      };
-    }
-    {
-      name = "clone___clone_2.1.2.tgz";
-      path = fetchurl {
-        name = "clone___clone_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz";
-        sha1 = "1b7f4b9f591f1e8f83670401600345a02887435f";
-      };
-    }
-    {
-      name = "cloneable_readable___cloneable_readable_1.1.3.tgz";
-      path = fetchurl {
-        name = "cloneable_readable___cloneable_readable_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz";
-        sha1 = "120a00cb053bfb63a222e709f9683ea2e11d8cec";
-      };
-    }
-    {
       name = "co___co_4.6.0.tgz";
       path = fetchurl {
         name = "co___co_4.6.0.tgz";
@@ -3138,14 +2818,6 @@
       };
     }
     {
-      name = "comma_separated_tokens___comma_separated_tokens_1.0.7.tgz";
-      path = fetchurl {
-        name = "comma_separated_tokens___comma_separated_tokens_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.7.tgz";
-        sha1 = "419cd7fb3258b1ed838dc0953167a25e152f5b59";
-      };
-    }
-    {
       name = "commander___commander_2.20.0.tgz";
       path = fetchurl {
         name = "commander___commander_2.20.0.tgz";
@@ -3242,14 +2914,6 @@
       };
     }
     {
-      name = "concat_stream___concat_stream_1.5.2.tgz";
-      path = fetchurl {
-        name = "concat_stream___concat_stream_1.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz";
-        sha1 = "708978624d856af41a5a741defdd261da752c266";
-      };
-    }
-    {
       name = "config_chain___config_chain_1.1.12.tgz";
       path = fetchurl {
         name = "config_chain___config_chain_1.1.12.tgz";
@@ -3346,14 +3010,6 @@
       };
     }
     {
-      name = "continuable_cache___continuable_cache_0.3.1.tgz";
-      path = fetchurl {
-        name = "continuable_cache___continuable_cache_0.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz";
-        sha1 = "bd727a7faed77e71ff3985ac93351a912733ad0f";
-      };
-    }
-    {
       name = "convert_source_map___convert_source_map_1.6.0.tgz";
       path = fetchurl {
         name = "convert_source_map___convert_source_map_1.6.0.tgz";
@@ -3554,6 +3210,14 @@
       };
     }
     {
+      name = "crypto_random_string___crypto_random_string_3.0.1.tgz";
+      path = fetchurl {
+        name = "crypto_random_string___crypto_random_string_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-3.0.1.tgz";
+        sha1 = "29d7dc759d577a768afb3b7b2765dd9bd7ffe36a";
+      };
+    }
+    {
       name = "css_b64_images___css_b64_images_0.2.5.tgz";
       path = fetchurl {
         name = "css_b64_images___css_b64_images_0.2.5.tgz";
@@ -3618,6 +3282,14 @@
       };
     }
     {
+      name = "cssfontparser___cssfontparser_1.2.1.tgz";
+      path = fetchurl {
+        name = "cssfontparser___cssfontparser_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cssfontparser/-/cssfontparser-1.2.1.tgz";
+        sha1 = "f4022fc8f9700c68029d542084afbaf425a3f3e3";
+      };
+    }
+    {
       name = "cssom___cssom_0.3.4.tgz";
       path = fetchurl {
         name = "cssom___cssom_0.3.4.tgz";
@@ -3946,27 +3618,27 @@
       };
     }
     {
-      name = "d3___d3_5.9.2.tgz";
+      name = "d3___d3_5.12.0.tgz";
       path = fetchurl {
-        name = "d3___d3_5.9.2.tgz";
-        url  = "https://registry.yarnpkg.com/d3/-/d3-5.9.2.tgz";
-        sha1 = "64e8a7e9c3d96d9e6e4999d2c8a2c829767e67f5";
+        name = "d3___d3_5.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3/-/d3-5.12.0.tgz";
+        sha1 = "0ddeac879c28c882317cd439b495290acd59ab61";
       };
     }
     {
-      name = "dagre_d3_renderer___dagre_d3_renderer_0.5.8.tgz";
+      name = "https___codeload.github.com_dagrejs_dagre_d3_tar.gz_e1a00e5cb518f5d2304a35647e024f31d178e55b";
       path = fetchurl {
-        name = "dagre_d3_renderer___dagre_d3_renderer_0.5.8.tgz";
-        url  = "https://registry.yarnpkg.com/dagre-d3-renderer/-/dagre-d3-renderer-0.5.8.tgz";
-        sha1 = "aa071bb71d3c4d67426925906f3f6ddead49c1a3";
+        name = "https___codeload.github.com_dagrejs_dagre_d3_tar.gz_e1a00e5cb518f5d2304a35647e024f31d178e55b";
+        url  = "https://codeload.github.com/dagrejs/dagre-d3/tar.gz/e1a00e5cb518f5d2304a35647e024f31d178e55b";
+        sha1 = "7400df3f5fe80538fde43d0201e1570e1d689004";
       };
     }
     {
-      name = "dagre_layout___dagre_layout_0.8.8.tgz";
+      name = "dagre___dagre_0.8.4.tgz";
       path = fetchurl {
-        name = "dagre_layout___dagre_layout_0.8.8.tgz";
-        url  = "https://registry.yarnpkg.com/dagre-layout/-/dagre-layout-0.8.8.tgz";
-        sha1 = "9b6792f24229f402441c14162c1049e3f261f6d9";
+        name = "dagre___dagre_0.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/dagre/-/dagre-0.8.4.tgz";
+        sha1 = "26b9fb8f7bdc60c6110a0458c375261836786061";
       };
     }
     {
@@ -4066,11 +3738,11 @@
       };
     }
     {
-      name = "deckar01_task_list___deckar01_task_list_2.2.0.tgz";
+      name = "deckar01_task_list___deckar01_task_list_2.2.1.tgz";
       path = fetchurl {
-        name = "deckar01_task_list___deckar01_task_list_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/deckar01-task_list/-/deckar01-task_list-2.2.0.tgz";
-        sha1 = "5cc3ea06f01d3d786b1a667064a462eb5d069bd3";
+        name = "deckar01_task_list___deckar01_task_list_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/deckar01-task_list/-/deckar01-task_list-2.2.1.tgz";
+        sha1 = "e1e8a16c4fd6e153e51fd9258fdbee067ebcd86b";
       };
     }
     {
@@ -4162,14 +3834,6 @@
       };
     }
     {
-      name = "defined___defined_1.0.0.tgz";
-      path = fetchurl {
-        name = "defined___defined_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz";
-        sha1 = "c98d9bcef75674188e110969151199e39b1fa693";
-      };
-    }
-    {
       name = "del___del_2.2.2.tgz";
       path = fetchurl {
         name = "del___del_2.2.2.tgz";
@@ -4242,14 +3906,6 @@
       };
     }
     {
-      name = "detab___detab_2.0.2.tgz";
-      path = fetchurl {
-        name = "detab___detab_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/detab/-/detab-2.0.2.tgz";
-        sha1 = "074970d1a807b045d0258a4235df5928dd683561";
-      };
-    }
-    {
       name = "detect_file___detect_file_1.0.0.tgz";
       path = fetchurl {
         name = "detect_file___detect_file_1.0.0.tgz";
@@ -4282,14 +3938,6 @@
       };
     }
     {
-      name = "detective___detective_4.7.1.tgz";
-      path = fetchurl {
-        name = "detective___detective_4.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/detective/-/detective-4.7.1.tgz";
-        sha1 = "0eca7314338442febb6d65da54c10bb1c82b246e";
-      };
-    }
-    {
       name = "di___di_0.0.1.tgz";
       path = fetchurl {
         name = "di___di_0.0.1.tgz";
@@ -4314,14 +3962,6 @@
       };
     }
     {
-      name = "diff___diff_4.0.1.tgz";
-      path = fetchurl {
-        name = "diff___diff_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/diff/-/diff-4.0.1.tgz";
-        sha1 = "0c667cb467ebbb5cea7f14f135cc2dba7780a8ff";
-      };
-    }
-    {
       name = "diffie_hellman___diffie_hellman_5.0.2.tgz";
       path = fetchurl {
         name = "diffie_hellman___diffie_hellman_5.0.2.tgz";
@@ -4370,14 +4010,6 @@
       };
     }
     {
-      name = "doctrine_temporary_fork___doctrine_temporary_fork_2.1.0.tgz";
-      path = fetchurl {
-        name = "doctrine_temporary_fork___doctrine_temporary_fork_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/doctrine-temporary-fork/-/doctrine-temporary-fork-2.1.0.tgz";
-        sha1 = "36f2154f556ee4f1e60311d391cd23de5187ed57";
-      };
-    }
-    {
       name = "doctrine___doctrine_1.5.0.tgz";
       path = fetchurl {
         name = "doctrine___doctrine_1.5.0.tgz";
@@ -4402,14 +4034,6 @@
       };
     }
     {
-      name = "documentation___documentation_12.0.3.tgz";
-      path = fetchurl {
-        name = "documentation___documentation_12.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/documentation/-/documentation-12.0.3.tgz";
-        sha1 = "32f91da8e5cb4104f69db9fd32c87773a1ad6240";
-      };
-    }
-    {
       name = "dom_serialize___dom_serialize_2.2.1.tgz";
       path = fetchurl {
         name = "dom_serialize___dom_serialize_2.2.1.tgz";
@@ -4490,14 +4114,6 @@
       };
     }
     {
-      name = "duplexer2___duplexer2_0.1.4.tgz";
-      path = fetchurl {
-        name = "duplexer2___duplexer2_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz";
-        sha1 = "8b12dab878c0d69e3e7891051662a32fc6bddcc1";
-      };
-    }
-    {
       name = "duplexer3___duplexer3_0.1.4.tgz";
       path = fetchurl {
         name = "duplexer3___duplexer3_0.1.4.tgz";
@@ -4586,14 +4202,6 @@
       };
     }
     {
-      name = "emoji_regex___emoji_regex_6.1.1.tgz";
-      path = fetchurl {
-        name = "emoji_regex___emoji_regex_6.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz";
-        sha1 = "c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e";
-      };
-    }
-    {
       name = "emoji_regex___emoji_regex_7.0.3.tgz";
       path = fetchurl {
         name = "emoji_regex___emoji_regex_7.0.3.tgz";
@@ -4714,14 +4322,6 @@
       };
     }
     {
-      name = "error___error_7.0.2.tgz";
-      path = fetchurl {
-        name = "error___error_7.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/error/-/error-7.0.2.tgz";
-        sha1 = "a5f75fff4d9926126ddac0ea5dc38e689153cb02";
-      };
-    }
-    {
       name = "es_abstract___es_abstract_1.13.0.tgz";
       path = fetchurl {
         name = "es_abstract___es_abstract_1.13.0.tgz";
@@ -5546,14 +5146,6 @@
       };
     }
     {
-      name = "fs_mkdirp_stream___fs_mkdirp_stream_1.0.0.tgz";
-      path = fetchurl {
-        name = "fs_mkdirp_stream___fs_mkdirp_stream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz";
-        sha1 = "0b7815fc3201c6a69e14db98ce098c16935259eb";
-      };
-    }
-    {
       name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
       path = fetchurl {
         name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
@@ -5650,14 +5242,6 @@
       };
     }
     {
-      name = "get_port___get_port_4.2.0.tgz";
-      path = fetchurl {
-        name = "get_port___get_port_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz";
-        sha1 = "e37368b1e863b7629c43c5a323625f95cf24b119";
-      };
-    }
-    {
       name = "get_stdin___get_stdin_4.0.1.tgz";
       path = fetchurl {
         name = "get_stdin___get_stdin_4.0.1.tgz";
@@ -5738,38 +5322,6 @@
       };
     }
     {
-      name = "git_up___git_up_2.1.0.tgz";
-      path = fetchurl {
-        name = "git_up___git_up_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/git-up/-/git-up-2.1.0.tgz";
-        sha1 = "2f14cfe78327e7c4a2b92fcac7bfc674fdfad40c";
-      };
-    }
-    {
-      name = "git_url_parse___git_url_parse_10.1.0.tgz";
-      path = fetchurl {
-        name = "git_url_parse___git_url_parse_10.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-10.1.0.tgz";
-        sha1 = "a27813218f8777e91d15f1c121b83bf14721b67e";
-      };
-    }
-    {
-      name = "github_slugger___github_slugger_1.2.0.tgz";
-      path = fetchurl {
-        name = "github_slugger___github_slugger_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.2.0.tgz";
-        sha1 = "8ada3286fd046d8951c3c952a8d7854cfd90fd9a";
-      };
-    }
-    {
-      name = "github_slugger___github_slugger_1.2.1.tgz";
-      path = fetchurl {
-        name = "github_slugger___github_slugger_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.2.1.tgz";
-        sha1 = "47e904e70bf2dccd0014748142d31126cfd49508";
-      };
-    }
-    {
       name = "glob_parent___glob_parent_3.1.0.tgz";
       path = fetchurl {
         name = "glob_parent___glob_parent_3.1.0.tgz";
@@ -5786,14 +5338,6 @@
       };
     }
     {
-      name = "glob_stream___glob_stream_6.1.0.tgz";
-      path = fetchurl {
-        name = "glob_stream___glob_stream_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz";
-        sha1 = "7045c99413b3eb94888d83ab46d0b404cc7bdde4";
-      };
-    }
-    {
       name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
       path = fetchurl {
         name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
@@ -5858,14 +5402,6 @@
       };
     }
     {
-      name = "globals_docs___globals_docs_2.4.0.tgz";
-      path = fetchurl {
-        name = "globals_docs___globals_docs_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals-docs/-/globals-docs-2.4.0.tgz";
-        sha1 = "f2c647544eb6161c7c38452808e16e693c2dafbb";
-      };
-    }
-    {
       name = "globals___globals_11.12.0.tgz";
       path = fetchurl {
         name = "globals___globals_11.12.0.tgz";
@@ -5962,11 +5498,11 @@
       };
     }
     {
-      name = "graphlibrary___graphlibrary_2.2.0.tgz";
+      name = "graphlib___graphlib_2.1.7.tgz";
       path = fetchurl {
-        name = "graphlibrary___graphlibrary_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/graphlibrary/-/graphlibrary-2.2.0.tgz";
-        sha1 = "017a14899775228dec4497a39babfdd6bf56eac6";
+        name = "graphlib___graphlib_2.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.7.tgz";
+        sha1 = "b6a69f9f44bd9de3963ce6804a2fc9e73d86aecc";
       };
     }
     {
@@ -6154,38 +5690,6 @@
       };
     }
     {
-      name = "hast_util_is_element___hast_util_is_element_1.0.3.tgz";
-      path = fetchurl {
-        name = "hast_util_is_element___hast_util_is_element_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.0.3.tgz";
-        sha1 = "423b4b26fe8bf1f25950fe052e9ce8f83fd5f6a4";
-      };
-    }
-    {
-      name = "hast_util_sanitize___hast_util_sanitize_1.3.1.tgz";
-      path = fetchurl {
-        name = "hast_util_sanitize___hast_util_sanitize_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/hast-util-sanitize/-/hast-util-sanitize-1.3.1.tgz";
-        sha1 = "4e60d66336bd67e52354d581967467029a933f2e";
-      };
-    }
-    {
-      name = "hast_util_to_html___hast_util_to_html_4.0.1.tgz";
-      path = fetchurl {
-        name = "hast_util_to_html___hast_util_to_html_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-4.0.1.tgz";
-        sha1 = "3666b05afb62bd69f8f5e6c94db04dea19438e2a";
-      };
-    }
-    {
-      name = "hast_util_whitespace___hast_util_whitespace_1.0.3.tgz";
-      path = fetchurl {
-        name = "hast_util_whitespace___hast_util_whitespace_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-1.0.3.tgz";
-        sha1 = "6d161b307bd0693b5ec000c7c7e8b5445109ee34";
-      };
-    }
-    {
       name = "he___he_1.2.0.tgz";
       path = fetchurl {
         name = "he___he_1.2.0.tgz";
@@ -6194,14 +5698,6 @@
       };
     }
     {
-      name = "highlight.js___highlight.js_9.15.8.tgz";
-      path = fetchurl {
-        name = "highlight.js___highlight.js_9.15.8.tgz";
-        url  = "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.15.8.tgz";
-        sha1 = "f344fda123f36f1a65490e932cf90569e4999971";
-      };
-    }
-    {
       name = "highlight.js___highlight.js_9.13.1.tgz";
       path = fetchurl {
         name = "highlight.js___highlight.js_9.13.1.tgz";
@@ -6282,14 +5778,6 @@
       };
     }
     {
-      name = "html_void_elements___html_void_elements_1.0.4.tgz";
-      path = fetchurl {
-        name = "html_void_elements___html_void_elements_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.4.tgz";
-        sha1 = "95e8bb5ecd6b88766569c2645f2b5f1591db9ba5";
-      };
-    }
-    {
       name = "htmlparser2___htmlparser2_3.10.0.tgz";
       path = fetchurl {
         name = "htmlparser2___htmlparser2_3.10.0.tgz";
@@ -6442,14 +5930,6 @@
       };
     }
     {
-      name = "immutable_tuple___immutable_tuple_0.4.9.tgz";
-      path = fetchurl {
-        name = "immutable_tuple___immutable_tuple_0.4.9.tgz";
-        url  = "https://registry.yarnpkg.com/immutable-tuple/-/immutable-tuple-0.4.9.tgz";
-        sha1 = "473ebdd6c169c461913a454bf87ef8f601a20ff0";
-      };
-    }
-    {
       name = "import_fresh___import_fresh_2.0.0.tgz";
       path = fetchurl {
         name = "import_fresh___import_fresh_2.0.0.tgz";
@@ -6658,14 +6138,6 @@
       };
     }
     {
-      name = "is_absolute___is_absolute_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_absolute___is_absolute_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz";
-        sha1 = "395e1ae84b11f26ad1795e73c17378e48a301576";
-      };
-    }
-    {
       name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
       path = fetchurl {
         name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
@@ -6922,14 +6394,6 @@
       };
     }
     {
-      name = "is_negated_glob___is_negated_glob_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_negated_glob___is_negated_glob_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz";
-        sha1 = "6910bca5da8c95e784b5751b976cf5a10fee36d2";
-      };
-    }
-    {
       name = "is_npm___is_npm_1.0.0.tgz";
       path = fetchurl {
         name = "is_npm___is_npm_1.0.0.tgz";
@@ -7066,14 +6530,6 @@
       };
     }
     {
-      name = "is_relative___is_relative_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_relative___is_relative_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz";
-        sha1 = "a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d";
-      };
-    }
-    {
       name = "is_resolvable___is_resolvable_1.1.0.tgz";
       path = fetchurl {
         name = "is_resolvable___is_resolvable_1.1.0.tgz";
@@ -7090,14 +6546,6 @@
       };
     }
     {
-      name = "is_ssh___is_ssh_1.3.1.tgz";
-      path = fetchurl {
-        name = "is_ssh___is_ssh_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.1.tgz";
-        sha1 = "f349a8cadd24e65298037a522cf7520f2e81a0f3";
-      };
-    }
-    {
       name = "is_stream___is_stream_1.1.0.tgz";
       path = fetchurl {
         name = "is_stream___is_stream_1.1.0.tgz";
@@ -7122,14 +6570,6 @@
       };
     }
     {
-      name = "is_unc_path___is_unc_path_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_unc_path___is_unc_path_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz";
-        sha1 = "d731e8898ed090a12c352ad2eaed5095ad322c9d";
-      };
-    }
-    {
       name = "is_utf8___is_utf8_0.2.1.tgz";
       path = fetchurl {
         name = "is_utf8___is_utf8_0.2.1.tgz";
@@ -7138,14 +6578,6 @@
       };
     }
     {
-      name = "is_valid_glob___is_valid_glob_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_valid_glob___is_valid_glob_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz";
-        sha1 = "29bf3eff701be2d4d315dbacc39bc39fe8f601aa";
-      };
-    }
-    {
       name = "is_whitespace_character___is_whitespace_character_1.0.2.tgz";
       path = fetchurl {
         name = "is_whitespace_character___is_whitespace_character_1.0.2.tgz";
@@ -7338,6 +6770,14 @@
       };
     }
     {
+      name = "jest_canvas_mock___jest_canvas_mock_2.1.2.tgz";
+      path = fetchurl {
+        name = "jest_canvas_mock___jest_canvas_mock_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/jest-canvas-mock/-/jest-canvas-mock-2.1.2.tgz";
+        sha1 = "0d16c9f91534f773fd132fc289f2e6b6db8faa28";
+      };
+    }
+    {
       name = "jest_changed_files___jest_changed_files_24.8.0.tgz";
       path = fetchurl {
         name = "jest_changed_files___jest_changed_files_24.8.0.tgz";
@@ -7802,14 +7242,6 @@
       };
     }
     {
-      name = "jsonparse___jsonparse_1.3.1.tgz";
-      path = fetchurl {
-        name = "jsonparse___jsonparse_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz";
-        sha1 = "3f4dae4a91fac315f71062f8521cc239f1366280";
-      };
-    }
-    {
       name = "jsprim___jsprim_1.4.1.tgz";
       path = fetchurl {
         name = "jsprim___jsprim_1.4.1.tgz";
@@ -7978,14 +7410,6 @@
       };
     }
     {
-      name = "lazystream___lazystream_1.0.0.tgz";
-      path = fetchurl {
-        name = "lazystream___lazystream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz";
-        sha1 = "f6995fe0f820392f61396be89462407bb77168e4";
-      };
-    }
-    {
       name = "lcid___lcid_1.0.0.tgz";
       path = fetchurl {
         name = "lcid___lcid_1.0.0.tgz";
@@ -8002,14 +7426,6 @@
       };
     }
     {
-      name = "lead___lead_1.0.0.tgz";
-      path = fetchurl {
-        name = "lead___lead_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz";
-        sha1 = "6f14f99a37be3a9dd784f5495690e5903466ee42";
-      };
-    }
-    {
       name = "left_pad___left_pad_1.3.0.tgz";
       path = fetchurl {
         name = "left_pad___left_pad_1.3.0.tgz";
@@ -8066,14 +7482,6 @@
       };
     }
     {
-      name = "livereload_js___livereload_js_2.4.0.tgz";
-      path = fetchurl {
-        name = "livereload_js___livereload_js_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.4.0.tgz";
-        sha1 = "447c31cf1ea9ab52fc20db615c5ddf678f78009c";
-      };
-    }
-    {
       name = "load_json_file___load_json_file_1.1.0.tgz";
       path = fetchurl {
         name = "load_json_file___load_json_file_1.1.0.tgz";
@@ -8186,6 +7594,22 @@
       };
     }
     {
+      name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
+      path = fetchurl {
+        name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz";
+        sha1 = "7c526a52d89b45c45cc690b88163be0497f550cb";
+      };
+    }
+    {
+      name = "lodash.isstring___lodash.isstring_4.0.1.tgz";
+      path = fetchurl {
+        name = "lodash.isstring___lodash.isstring_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz";
+        sha1 = "d527dfb5456eca7cc9bb95d5daeaf88ba54a5451";
+      };
+    }
+    {
       name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
       path = fetchurl {
         name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
@@ -8514,46 +7938,6 @@
       };
     }
     {
-      name = "mdast_util_definitions___mdast_util_definitions_1.2.4.tgz";
-      path = fetchurl {
-        name = "mdast_util_definitions___mdast_util_definitions_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-1.2.4.tgz";
-        sha1 = "2b54ad4eecaff9d9fcb6bf6f9f6b68b232d77ca7";
-      };
-    }
-    {
-      name = "mdast_util_inject___mdast_util_inject_1.1.0.tgz";
-      path = fetchurl {
-        name = "mdast_util_inject___mdast_util_inject_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/mdast-util-inject/-/mdast-util-inject-1.1.0.tgz";
-        sha1 = "db06b8b585be959a2dcd2f87f472ba9b756f3675";
-      };
-    }
-    {
-      name = "mdast_util_to_hast___mdast_util_to_hast_3.0.4.tgz";
-      path = fetchurl {
-        name = "mdast_util_to_hast___mdast_util_to_hast_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-3.0.4.tgz";
-        sha1 = "132001b266031192348d3366a6b011f28e54dc40";
-      };
-    }
-    {
-      name = "mdast_util_to_string___mdast_util_to_string_1.0.6.tgz";
-      path = fetchurl {
-        name = "mdast_util_to_string___mdast_util_to_string_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.0.6.tgz";
-        sha1 = "7d85421021343b33de1552fc71cb8e5b4ae7536d";
-      };
-    }
-    {
-      name = "mdast_util_toc___mdast_util_toc_3.1.0.tgz";
-      path = fetchurl {
-        name = "mdast_util_toc___mdast_util_toc_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/mdast-util-toc/-/mdast-util-toc-3.1.0.tgz";
-        sha1 = "395eeb877f067f9d2165d990d77c7eea6f740934";
-      };
-    }
-    {
       name = "mdurl___mdurl_1.0.1.tgz";
       path = fetchurl {
         name = "mdurl___mdurl_1.0.1.tgz";
@@ -8642,11 +8026,11 @@
       };
     }
     {
-      name = "mermaid___mermaid_8.2.6.tgz";
+      name = "mermaid___mermaid_8.4.2.tgz";
       path = fetchurl {
-        name = "mermaid___mermaid_8.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/mermaid/-/mermaid-8.2.6.tgz";
-        sha1 = "e73f396461a435c39a998819171c2114f59e46e1";
+        name = "mermaid___mermaid_8.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/mermaid/-/mermaid-8.4.2.tgz";
+        sha1 = "91d3d8e9541e72eed7a78d0e882db11564fab3bb";
       };
     }
     {
@@ -8834,14 +8218,6 @@
       };
     }
     {
-      name = "module_deps_sortable___module_deps_sortable_5.0.0.tgz";
-      path = fetchurl {
-        name = "module_deps_sortable___module_deps_sortable_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/module-deps-sortable/-/module-deps-sortable-5.0.0.tgz";
-        sha1 = "99db5bb08f7eab55e4c31f6b7c722c6a2144ba74";
-      };
-    }
-    {
       name = "moment_mini___moment_mini_2.22.1.tgz";
       path = fetchurl {
         name = "moment_mini___moment_mini_2.22.1.tgz";
@@ -9154,22 +8530,6 @@
       };
     }
     {
-      name = "normalize_url___normalize_url_1.9.1.tgz";
-      path = fetchurl {
-        name = "normalize_url___normalize_url_1.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz";
-        sha1 = "2cc0d66b31ea23036458436e3620d85954c66c3c";
-      };
-    }
-    {
-      name = "now_and_later___now_and_later_2.0.1.tgz";
-      path = fetchurl {
-        name = "now_and_later___now_and_later_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/now-and-later/-/now-and-later-2.0.1.tgz";
-        sha1 = "8e579c8685764a7cc02cb680380e94f43ccb1f7c";
-      };
-    }
-    {
       name = "npm_bundled___npm_bundled_1.0.6.tgz";
       path = fetchurl {
         name = "npm_bundled___npm_bundled_1.0.6.tgz";
@@ -9362,11 +8722,11 @@
       };
     }
     {
-      name = "optimism___optimism_0.6.9.tgz";
+      name = "optimism___optimism_0.10.3.tgz";
       path = fetchurl {
-        name = "optimism___optimism_0.6.9.tgz";
-        url  = "https://registry.yarnpkg.com/optimism/-/optimism-0.6.9.tgz";
-        sha1 = "19258ff8b3be0cea29ac35f06bff818e026e30bb";
+        name = "optimism___optimism_0.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/optimism/-/optimism-0.10.3.tgz";
+        sha1 = "163268fdc741dea2fb50f300bedda80356445fd7";
       };
     }
     {
@@ -9386,14 +8746,6 @@
       };
     }
     {
-      name = "ordered_read_streams___ordered_read_streams_1.0.1.tgz";
-      path = fetchurl {
-        name = "ordered_read_streams___ordered_read_streams_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz";
-        sha1 = "77c0cb37c41525d64166d990ffad7ec6a0e1363e";
-      };
-    }
-    {
       name = "orderedmap___orderedmap_1.0.0.tgz";
       path = fetchurl {
         name = "orderedmap___orderedmap_1.0.0.tgz";
@@ -9610,27 +8962,19 @@
       };
     }
     {
-      name = "parse_entities___parse_entities_1.2.0.tgz";
+      name = "parse_color___parse_color_1.0.0.tgz";
       path = fetchurl {
-        name = "parse_entities___parse_entities_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.2.0.tgz";
-        sha1 = "9deac087661b2e36814153cb78d7e54a4c5fd6f4";
+        name = "parse_color___parse_color_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz";
+        sha1 = "7b748b95a83f03f16a94f535e52d7f3d94658619";
       };
     }
     {
-      name = "parse_filepath___parse_filepath_1.0.2.tgz";
-      path = fetchurl {
-        name = "parse_filepath___parse_filepath_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz";
-        sha1 = "a632127f53aaf3d15876f5872f3ffac763d6c891";
-      };
-    }
-    {
-      name = "parse_git_config___parse_git_config_0.2.0.tgz";
+      name = "parse_entities___parse_entities_1.2.0.tgz";
       path = fetchurl {
-        name = "parse_git_config___parse_git_config_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/parse-git-config/-/parse-git-config-0.2.0.tgz";
-        sha1 = "272833fdd15fea146fb75d336d236b963b6ff706";
+        name = "parse_entities___parse_entities_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.2.0.tgz";
+        sha1 = "9deac087661b2e36814153cb78d7e54a4c5fd6f4";
       };
     }
     {
@@ -9658,22 +9002,6 @@
       };
     }
     {
-      name = "parse_path___parse_path_3.0.4.tgz";
-      path = fetchurl {
-        name = "parse_path___parse_path_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/parse-path/-/parse-path-3.0.4.tgz";
-        sha1 = "a48b7b529da41f34d9d1428602a39b29fc7180e4";
-      };
-    }
-    {
-      name = "parse_url___parse_url_3.0.2.tgz";
-      path = fetchurl {
-        name = "parse_url___parse_url_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/parse-url/-/parse-url-3.0.2.tgz";
-        sha1 = "602787a7063a795d72b8673197505e72f60610be";
-      };
-    }
-    {
       name = "parse5___parse5_4.0.0.tgz";
       path = fetchurl {
         name = "parse5___parse5_4.0.0.tgz";
@@ -9794,22 +9122,6 @@
       };
     }
     {
-      name = "path_root_regex___path_root_regex_0.1.2.tgz";
-      path = fetchurl {
-        name = "path_root_regex___path_root_regex_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz";
-        sha1 = "bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d";
-      };
-    }
-    {
-      name = "path_root___path_root_0.1.1.tgz";
-      path = fetchurl {
-        name = "path_root___path_root_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz";
-        sha1 = "9a4a6814cac1c0cd73360a95f32083c8ea4745b7";
-      };
-    }
-    {
       name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
       path = fetchurl {
         name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
@@ -10194,11 +9506,11 @@
       };
     }
     {
-      name = "postcss___postcss_7.0.18.tgz";
+      name = "postcss___postcss_7.0.21.tgz";
       path = fetchurl {
-        name = "postcss___postcss_7.0.18.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.18.tgz";
-        sha1 = "4b9cda95ae6c069c67a4d933029eddd4838ac233";
+        name = "postcss___postcss_7.0.21.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz";
+        sha1 = "06bb07824c19c2021c5d056d5b10c35b989f7e17";
       };
     }
     {
@@ -10258,14 +9570,6 @@
       };
     }
     {
-      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
-      path = fetchurl {
-        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
-        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
-      };
-    }
-    {
       name = "process_nextick_args___process_nextick_args_1.0.7.tgz";
       path = fetchurl {
         name = "process_nextick_args___process_nextick_args_1.0.7.tgz";
@@ -10274,6 +9578,14 @@
       };
     }
     {
+      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+      path = fetchurl {
+        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+      };
+    }
+    {
       name = "process___process_0.11.10.tgz";
       path = fetchurl {
         name = "process___process_0.11.10.tgz";
@@ -10306,14 +9618,6 @@
       };
     }
     {
-      name = "property_information___property_information_4.2.0.tgz";
-      path = fetchurl {
-        name = "property_information___property_information_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/property-information/-/property-information-4.2.0.tgz";
-        sha1 = "f0e66e07cbd6fed31d96844d958d153ad3eb486e";
-      };
-    }
-    {
       name = "prosemirror_commands___prosemirror_commands_1.0.7.tgz";
       path = fetchurl {
         name = "prosemirror_commands___prosemirror_commands_1.0.7.tgz";
@@ -10434,14 +9738,6 @@
       };
     }
     {
-      name = "protocols___protocols_1.4.7.tgz";
-      path = fetchurl {
-        name = "protocols___protocols_1.4.7.tgz";
-        url  = "https://registry.yarnpkg.com/protocols/-/protocols-1.4.7.tgz";
-        sha1 = "95f788a4f0e979b291ffefcf5636ad113d037d32";
-      };
-    }
-    {
       name = "proxy_addr___proxy_addr_2.0.5.tgz";
       path = fetchurl {
         name = "proxy_addr___proxy_addr_2.0.5.tgz";
@@ -10562,14 +9858,6 @@
       };
     }
     {
-      name = "query_string___query_string_4.3.4.tgz";
-      path = fetchurl {
-        name = "query_string___query_string_4.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz";
-        sha1 = "bbb693b9ca915c232515b228b1a02b609043dbeb";
-      };
-    }
-    {
       name = "querystring_es3___querystring_es3_0.2.1.tgz";
       path = fetchurl {
         name = "querystring_es3___querystring_es3_0.2.1.tgz";
@@ -10634,14 +9922,6 @@
       };
     }
     {
-      name = "raven_js___raven_js_3.22.1.tgz";
-      path = fetchurl {
-        name = "raven_js___raven_js_3.22.1.tgz";
-        url  = "https://registry.yarnpkg.com/raven-js/-/raven-js-3.22.1.tgz";
-        sha1 = "1117f00dfefaa427ef6e1a7d50bbb1fb998a24da";
-      };
-    }
-    {
       name = "raw_body___raw_body_2.4.0.tgz";
       path = fetchurl {
         name = "raw_body___raw_body_2.4.0.tgz";
@@ -10650,14 +9930,6 @@
       };
     }
     {
-      name = "raw_body___raw_body_1.1.7.tgz";
-      path = fetchurl {
-        name = "raw_body___raw_body_1.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/raw-body/-/raw-body-1.1.7.tgz";
-        sha1 = "1d027c2bfa116acc6623bca8f00016572a87d425";
-      };
-    }
-    {
       name = "raw_loader___raw_loader_3.1.0.tgz";
       path = fetchurl {
         name = "raw_loader___raw_loader_3.1.0.tgz";
@@ -10762,14 +10034,6 @@
       };
     }
     {
-      name = "readable_stream___readable_stream_2.1.5.tgz";
-      path = fetchurl {
-        name = "readable_stream___readable_stream_2.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz";
-        sha1 = "66fa8b720e1438b364681f2ad1a63c618448c9d0";
-      };
-    }
-    {
       name = "readdir_enhanced___readdir_enhanced_2.2.4.tgz";
       path = fetchurl {
         name = "readdir_enhanced___readdir_enhanced_2.2.4.tgz";
@@ -10930,22 +10194,6 @@
       };
     }
     {
-      name = "remark_html___remark_html_8.0.0.tgz";
-      path = fetchurl {
-        name = "remark_html___remark_html_8.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/remark-html/-/remark-html-8.0.0.tgz";
-        sha1 = "9fcb859a6f3cb40f3ef15402950f1a62ec301b3a";
-      };
-    }
-    {
-      name = "remark_parse___remark_parse_5.0.0.tgz";
-      path = fetchurl {
-        name = "remark_parse___remark_parse_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/remark-parse/-/remark-parse-5.0.0.tgz";
-        sha1 = "4c077f9e499044d1d5c13f80d7a98cf7b9285d95";
-      };
-    }
-    {
       name = "remark_parse___remark_parse_6.0.3.tgz";
       path = fetchurl {
         name = "remark_parse___remark_parse_6.0.3.tgz";
@@ -10954,30 +10202,6 @@
       };
     }
     {
-      name = "remark_reference_links___remark_reference_links_4.0.4.tgz";
-      path = fetchurl {
-        name = "remark_reference_links___remark_reference_links_4.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/remark-reference-links/-/remark-reference-links-4.0.4.tgz";
-        sha1 = "190579a0d6b002859d6cdbdc5aeb8bbdae4e06ab";
-      };
-    }
-    {
-      name = "remark_slug___remark_slug_5.1.2.tgz";
-      path = fetchurl {
-        name = "remark_slug___remark_slug_5.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/remark-slug/-/remark-slug-5.1.2.tgz";
-        sha1 = "715ecdef8df1226786204b1887d31ab16aa24609";
-      };
-    }
-    {
-      name = "remark_stringify___remark_stringify_5.0.0.tgz";
-      path = fetchurl {
-        name = "remark_stringify___remark_stringify_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-5.0.0.tgz";
-        sha1 = "336d3a4d4a6a3390d933eeba62e8de4bd280afba";
-      };
-    }
-    {
       name = "remark_stringify___remark_stringify_6.0.4.tgz";
       path = fetchurl {
         name = "remark_stringify___remark_stringify_6.0.4.tgz";
@@ -10986,14 +10210,6 @@
       };
     }
     {
-      name = "remark_toc___remark_toc_5.1.1.tgz";
-      path = fetchurl {
-        name = "remark_toc___remark_toc_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/remark-toc/-/remark-toc-5.1.1.tgz";
-        sha1 = "8c229d6f834cdb43fde6685e2d43248d3fc82d78";
-      };
-    }
-    {
       name = "remark___remark_10.0.1.tgz";
       path = fetchurl {
         name = "remark___remark_10.0.1.tgz";
@@ -11002,38 +10218,6 @@
       };
     }
     {
-      name = "remark___remark_9.0.0.tgz";
-      path = fetchurl {
-        name = "remark___remark_9.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/remark/-/remark-9.0.0.tgz";
-        sha1 = "c5cfa8ec535c73a67c4b0f12bfdbd3a67d8b2f60";
-      };
-    }
-    {
-      name = "remote_origin_url___remote_origin_url_0.4.0.tgz";
-      path = fetchurl {
-        name = "remote_origin_url___remote_origin_url_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/remote-origin-url/-/remote-origin-url-0.4.0.tgz";
-        sha1 = "4d3e2902f34e2d37d1c263d87710b77eb4086a30";
-      };
-    }
-    {
-      name = "remove_bom_buffer___remove_bom_buffer_3.0.0.tgz";
-      path = fetchurl {
-        name = "remove_bom_buffer___remove_bom_buffer_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz";
-        sha1 = "c2bf1e377520d324f623892e33c10cac2c252b53";
-      };
-    }
-    {
-      name = "remove_bom_stream___remove_bom_stream_1.2.0.tgz";
-      path = fetchurl {
-        name = "remove_bom_stream___remove_bom_stream_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz";
-        sha1 = "05f1a593f16e42e1fb90ebf59de8e569525f9523";
-      };
-    }
-    {
       name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
       path = fetchurl {
         name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
@@ -11202,14 +10386,6 @@
       };
     }
     {
-      name = "resolve_options___resolve_options_1.1.0.tgz";
-      path = fetchurl {
-        name = "resolve_options___resolve_options_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz";
-        sha1 = "32bb9e39c06d67338dc9378c0d6d6074566ad131";
-      };
-    }
-    {
       name = "resolve_url___resolve_url_0.2.1.tgz";
       path = fetchurl {
         name = "resolve_url___resolve_url_0.2.1.tgz";
@@ -11338,14 +10514,6 @@
       };
     }
     {
-      name = "safe_json_parse___safe_json_parse_1.0.1.tgz";
-      path = fetchurl {
-        name = "safe_json_parse___safe_json_parse_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/safe-json-parse/-/safe-json-parse-1.0.1.tgz";
-        sha1 = "3e76723e38dfdda13c9b1d29a1e07ffee4b30b57";
-      };
-    }
-    {
       name = "safe_regex___safe_regex_1.1.0.tgz";
       path = fetchurl {
         name = "safe_regex___safe_regex_1.1.0.tgz";
@@ -11370,11 +10538,11 @@
       };
     }
     {
-      name = "sanitize_html___sanitize_html_1.16.3.tgz";
+      name = "sanitize_html___sanitize_html_1.20.1.tgz";
       path = fetchurl {
-        name = "sanitize_html___sanitize_html_1.16.3.tgz";
-        url  = "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.16.3.tgz";
-        sha1 = "96c1b44a36ff7312e1c22a14b05274370ac8bd56";
+        name = "sanitize_html___sanitize_html_1.20.1.tgz";
+        url  = "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.20.1.tgz";
+        sha1 = "f6effdf55dd398807171215a62bfc21811bacf85";
       };
     }
     {
@@ -11778,14 +10946,6 @@
       };
     }
     {
-      name = "sort_keys___sort_keys_1.1.2.tgz";
-      path = fetchurl {
-        name = "sort_keys___sort_keys_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz";
-        sha1 = "441b6d4d346798f1b4e49e8920adfba0e543f9ad";
-      };
-    }
-    {
       name = "sortablejs___sortablejs_1.10.0.tgz";
       path = fetchurl {
         name = "sortablejs___sortablejs_1.10.0.tgz";
@@ -11866,14 +11026,6 @@
       };
     }
     {
-      name = "space_separated_tokens___space_separated_tokens_1.1.4.tgz";
-      path = fetchurl {
-        name = "space_separated_tokens___space_separated_tokens_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.4.tgz";
-        sha1 = "27910835ae00d0adfcdbd0ad7e611fb9544351fa";
-      };
-    }
-    {
       name = "spdx_correct___spdx_correct_1.0.2.tgz";
       path = fetchurl {
         name = "spdx_correct___spdx_correct_1.0.2.tgz";
@@ -12034,14 +11186,6 @@
       };
     }
     {
-      name = "stream_array___stream_array_1.1.2.tgz";
-      path = fetchurl {
-        name = "stream_array___stream_array_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/stream-array/-/stream-array-1.1.2.tgz";
-        sha1 = "9e5f7345f2137c30ee3b498b9114e80b52bb7eb5";
-      };
-    }
-    {
       name = "stream_browserify___stream_browserify_2.0.1.tgz";
       path = fetchurl {
         name = "stream_browserify___stream_browserify_2.0.1.tgz";
@@ -12050,14 +11194,6 @@
       };
     }
     {
-      name = "stream_combiner2___stream_combiner2_1.1.1.tgz";
-      path = fetchurl {
-        name = "stream_combiner2___stream_combiner2_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz";
-        sha1 = "fb4d8a1420ea362764e21ad4780397bebcb41cbe";
-      };
-    }
-    {
       name = "stream_each___stream_each_1.2.2.tgz";
       path = fetchurl {
         name = "stream_each___stream_each_1.2.2.tgz";
@@ -12090,14 +11226,6 @@
       };
     }
     {
-      name = "strict_uri_encode___strict_uri_encode_1.1.0.tgz";
-      path = fetchurl {
-        name = "strict_uri_encode___strict_uri_encode_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz";
-        sha1 = "279b225df1d582b1f54e65addd4352e18faa0713";
-      };
-    }
-    {
       name = "string_length___string_length_2.0.0.tgz";
       path = fetchurl {
         name = "string_length___string_length_2.0.0.tgz";
@@ -12106,14 +11234,6 @@
       };
     }
     {
-      name = "string_template___string_template_0.2.1.tgz";
-      path = fetchurl {
-        name = "string_template___string_template_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz";
-        sha1 = "42932e598a352d01fc22ec3367d9d84eec6c9add";
-      };
-    }
-    {
       name = "string_width___string_width_1.0.2.tgz";
       path = fetchurl {
         name = "string_width___string_width_1.0.2.tgz";
@@ -12146,14 +11266,6 @@
       };
     }
     {
-      name = "string_decoder___string_decoder_0.10.31.tgz";
-      path = fetchurl {
-        name = "string_decoder___string_decoder_0.10.31.tgz";
-        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz";
-        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
-      };
-    }
-    {
       name = "string_decoder___string_decoder_1.1.1.tgz";
       path = fetchurl {
         name = "string_decoder___string_decoder_1.1.1.tgz";
@@ -12162,6 +11274,14 @@
       };
     }
     {
+      name = "string_decoder___string_decoder_0.10.31.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_0.10.31.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz";
+        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+      };
+    }
+    {
       name = "stringify_entities___stringify_entities_1.3.2.tgz";
       path = fetchurl {
         name = "stringify_entities___stringify_entities_1.3.2.tgz";
@@ -12290,14 +11410,6 @@
       };
     }
     {
-      name = "subarg___subarg_1.0.0.tgz";
-      path = fetchurl {
-        name = "subarg___subarg_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz";
-        sha1 = "f62cf17581e996b48fc965699f54c06ae268b8d2";
-      };
-    }
-    {
       name = "sugarss___sugarss_2.0.0.tgz";
       path = fetchurl {
         name = "sugarss___sugarss_2.0.0.tgz";
@@ -12498,14 +11610,6 @@
       };
     }
     {
-      name = "through2_filter___through2_filter_3.0.0.tgz";
-      path = fetchurl {
-        name = "through2_filter___through2_filter_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz";
-        sha1 = "700e786df2367c2c88cd8aa5be4cf9c1e7831254";
-      };
-    }
-    {
       name = "through2___through2_2.0.5.tgz";
       path = fetchurl {
         name = "through2___through2_2.0.5.tgz";
@@ -12570,14 +11674,6 @@
       };
     }
     {
-      name = "tiny_lr___tiny_lr_1.1.1.tgz";
-      path = fetchurl {
-        name = "tiny_lr___tiny_lr_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.1.1.tgz";
-        sha1 = "9fa547412f238fedb068ee295af8b682c98b2aab";
-      };
-    }
-    {
       name = "tiptap_commands___tiptap_commands_1.4.0.tgz";
       path = fetchurl {
         name = "tiptap_commands___tiptap_commands_1.4.0.tgz";
@@ -12626,14 +11722,6 @@
       };
     }
     {
-      name = "to_absolute_glob___to_absolute_glob_2.0.2.tgz";
-      path = fetchurl {
-        name = "to_absolute_glob___to_absolute_glob_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz";
-        sha1 = "1865f43d9e74b0822db9f145b78cff7d0f7c849b";
-      };
-    }
-    {
       name = "to_array___to_array_0.1.4.tgz";
       path = fetchurl {
         name = "to_array___to_array_0.1.4.tgz";
@@ -12690,14 +11778,6 @@
       };
     }
     {
-      name = "to_through___to_through_2.0.0.tgz";
-      path = fetchurl {
-        name = "to_through___to_through_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz";
-        sha1 = "fc92adaba072647bc0b67d6b03664aa195093af6";
-      };
-    }
-    {
       name = "toggle_selection___toggle_selection_1.0.6.tgz";
       path = fetchurl {
         name = "toggle_selection___toggle_selection_1.0.6.tgz";
@@ -12738,14 +11818,6 @@
       };
     }
     {
-      name = "trim_lines___trim_lines_1.1.2.tgz";
-      path = fetchurl {
-        name = "trim_lines___trim_lines_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/trim-lines/-/trim-lines-1.1.2.tgz";
-        sha1 = "c8adbdbdae21bb5c2766240a661f693afe23e59b";
-      };
-    }
-    {
       name = "trim_newlines___trim_newlines_1.0.0.tgz";
       path = fetchurl {
         name = "trim_newlines___trim_newlines_1.0.0.tgz";
@@ -12818,14 +11890,6 @@
       };
     }
     {
-      name = "ts_invariant___ts_invariant_0.2.1.tgz";
-      path = fetchurl {
-        name = "ts_invariant___ts_invariant_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.2.1.tgz";
-        sha1 = "3d587f9d6e3bded97bf9ec17951dd9814d5a9d3f";
-      };
-    }
-    {
       name = "ts_invariant___ts_invariant_0.3.2.tgz";
       path = fetchurl {
         name = "ts_invariant___ts_invariant_0.3.2.tgz";
@@ -12834,6 +11898,14 @@
       };
     }
     {
+      name = "ts_invariant___ts_invariant_0.4.4.tgz";
+      path = fetchurl {
+        name = "ts_invariant___ts_invariant_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.4.4.tgz";
+        sha1 = "97a523518688f93aafad01b0e80eb803eb2abd86";
+      };
+    }
+    {
       name = "ts_jest___ts_jest_24.0.0.tgz";
       path = fetchurl {
         name = "ts_jest___ts_jest_24.0.0.tgz";
@@ -12882,6 +11954,14 @@
       };
     }
     {
+      name = "type_fest___type_fest_0.5.2.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.5.2.tgz";
+        sha1 = "d6ef42a0356c6cd45f49485c3b6281fc148e48a2";
+      };
+    }
+    {
       name = "type_is___type_is_1.6.18.tgz";
       path = fetchurl {
         name = "type_is___type_is_1.6.18.tgz";
@@ -12930,14 +12010,6 @@
       };
     }
     {
-      name = "unc_path_regex___unc_path_regex_0.1.2.tgz";
-      path = fetchurl {
-        name = "unc_path_regex___unc_path_regex_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz";
-        sha1 = "e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa";
-      };
-    }
-    {
       name = "undefsafe___undefsafe_2.0.2.tgz";
       path = fetchurl {
         name = "undefsafe___undefsafe_2.0.2.tgz";
@@ -13018,14 +12090,6 @@
       };
     }
     {
-      name = "unified___unified_6.2.0.tgz";
-      path = fetchurl {
-        name = "unified___unified_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/unified/-/unified-6.2.0.tgz";
-        sha1 = "7fbd630f719126d67d40c644b7e3f617035f6dba";
-      };
-    }
-    {
       name = "unified___unified_7.1.0.tgz";
       path = fetchurl {
         name = "unified___unified_7.1.0.tgz";
@@ -13066,14 +12130,6 @@
       };
     }
     {
-      name = "unique_stream___unique_stream_2.3.1.tgz";
-      path = fetchurl {
-        name = "unique_stream___unique_stream_2.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz";
-        sha1 = "c65d110e9a4adf9a6c5948b28053d9a8d04cbeac";
-      };
-    }
-    {
       name = "unique_string___unique_string_1.0.0.tgz";
       path = fetchurl {
         name = "unique_string___unique_string_1.0.0.tgz";
@@ -13082,14 +12138,6 @@
       };
     }
     {
-      name = "unist_builder___unist_builder_1.0.4.tgz";
-      path = fetchurl {
-        name = "unist_builder___unist_builder_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/unist-builder/-/unist-builder-1.0.4.tgz";
-        sha1 = "e1808aed30bd72adc3607f25afecebef4dd59e17";
-      };
-    }
-    {
       name = "unist_util_find_all_after___unist_util_find_all_after_1.0.2.tgz";
       path = fetchurl {
         name = "unist_util_find_all_after___unist_util_find_all_after_1.0.2.tgz";
@@ -13098,14 +12146,6 @@
       };
     }
     {
-      name = "unist_util_generated___unist_util_generated_1.1.4.tgz";
-      path = fetchurl {
-        name = "unist_util_generated___unist_util_generated_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.4.tgz";
-        sha1 = "2261c033d9fc23fae41872cdb7663746e972c1a7";
-      };
-    }
-    {
       name = "unist_util_is___unist_util_is_2.1.2.tgz";
       path = fetchurl {
         name = "unist_util_is___unist_util_is_2.1.2.tgz";
@@ -13114,14 +12154,6 @@
       };
     }
     {
-      name = "unist_util_position___unist_util_position_3.0.3.tgz";
-      path = fetchurl {
-        name = "unist_util_position___unist_util_position_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.0.3.tgz";
-        sha1 = "fff942b879538b242096c148153826664b1ca373";
-      };
-    }
-    {
       name = "unist_util_remove_position___unist_util_remove_position_1.1.2.tgz";
       path = fetchurl {
         name = "unist_util_remove_position___unist_util_remove_position_1.1.2.tgz";
@@ -13138,14 +12170,6 @@
       };
     }
     {
-      name = "unist_util_stringify_position___unist_util_stringify_position_2.0.1.tgz";
-      path = fetchurl {
-        name = "unist_util_stringify_position___unist_util_stringify_position_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.1.tgz";
-        sha1 = "de2a2bc8d3febfa606652673a91455b6a36fb9f3";
-      };
-    }
-    {
       name = "unist_util_visit_parents___unist_util_visit_parents_2.0.1.tgz";
       path = fetchurl {
         name = "unist_util_visit_parents___unist_util_visit_parents_2.0.1.tgz";
@@ -13362,14 +12386,6 @@
       };
     }
     {
-      name = "value_or_function___value_or_function_3.0.0.tgz";
-      path = fetchurl {
-        name = "value_or_function___value_or_function_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz";
-        sha1 = "1c243a50b595c1be54a754bfece8563b9ff8d813";
-      };
-    }
-    {
       name = "vary___vary_1.1.2.tgz";
       path = fetchurl {
         name = "vary___vary_1.1.2.tgz";
@@ -13402,46 +12418,6 @@
       };
     }
     {
-      name = "vfile_message___vfile_message_2.0.1.tgz";
-      path = fetchurl {
-        name = "vfile_message___vfile_message_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.1.tgz";
-        sha1 = "951881861c22fc1eb39f873c0b93e336a64e8f6d";
-      };
-    }
-    {
-      name = "vfile_reporter___vfile_reporter_6.0.0.tgz";
-      path = fetchurl {
-        name = "vfile_reporter___vfile_reporter_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/vfile-reporter/-/vfile-reporter-6.0.0.tgz";
-        sha1 = "753119f51dec9289b7508b457afc0cddf5e07f2e";
-      };
-    }
-    {
-      name = "vfile_sort___vfile_sort_2.2.1.tgz";
-      path = fetchurl {
-        name = "vfile_sort___vfile_sort_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/vfile-sort/-/vfile-sort-2.2.1.tgz";
-        sha1 = "74e714f9175618cdae96bcaedf1a3dc711d87567";
-      };
-    }
-    {
-      name = "vfile_statistics___vfile_statistics_1.1.3.tgz";
-      path = fetchurl {
-        name = "vfile_statistics___vfile_statistics_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/vfile-statistics/-/vfile-statistics-1.1.3.tgz";
-        sha1 = "e9c87071997fbcb4243764d2c3805e0bb0820c60";
-      };
-    }
-    {
-      name = "vfile___vfile_2.3.0.tgz";
-      path = fetchurl {
-        name = "vfile___vfile_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/vfile/-/vfile-2.3.0.tgz";
-        sha1 = "e62d8e72b20e83c324bc6c67278ee272488bf84a";
-      };
-    }
-    {
       name = "vfile___vfile_3.0.1.tgz";
       path = fetchurl {
         name = "vfile___vfile_3.0.1.tgz";
@@ -13450,38 +12426,6 @@
       };
     }
     {
-      name = "vfile___vfile_4.0.1.tgz";
-      path = fetchurl {
-        name = "vfile___vfile_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/vfile/-/vfile-4.0.1.tgz";
-        sha1 = "fc3d43a1c71916034216bf65926d5ee3c64ed60c";
-      };
-    }
-    {
-      name = "vinyl_fs___vinyl_fs_3.0.3.tgz";
-      path = fetchurl {
-        name = "vinyl_fs___vinyl_fs_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz";
-        sha1 = "c85849405f67428feabbbd5c5dbdd64f47d31bc7";
-      };
-    }
-    {
-      name = "vinyl_sourcemap___vinyl_sourcemap_1.1.0.tgz";
-      path = fetchurl {
-        name = "vinyl_sourcemap___vinyl_sourcemap_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz";
-        sha1 = "92a800593a38703a8cdb11d8b300ad4be63b3e16";
-      };
-    }
-    {
-      name = "vinyl___vinyl_2.2.0.tgz";
-      path = fetchurl {
-        name = "vinyl___vinyl_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.0.tgz";
-        sha1 = "d85b07da96e458d25b2ffe19fece9f2caa13ed86";
-      };
-    }
-    {
       name = "visibilityjs___visibilityjs_1.2.4.tgz";
       path = fetchurl {
         name = "visibilityjs___visibilityjs_1.2.4.tgz";
diff --git a/pkgs/applications/version-management/gource/default.nix b/pkgs/applications/version-management/gource/default.nix
index 0a24cfbb3a0..ca26fbc61e9 100644
--- a/pkgs/applications/version-management/gource/default.nix
+++ b/pkgs/applications/version-management/gource/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.49";
+  version = "0.51";
   pname = "gource";
 
   src = fetchurl {
     url = "https://github.com/acaudwell/Gource/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "12hf5ipcsp9dxsqn84n4kr63xaiskrnf5a084wr29qk171lj7pd9";
+    sha256 = "16p7b1x4r0915w883lp374jcdqqja37fnb7m8vnsfnl2n64gi8qr";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/version-management/yadm/default.nix b/pkgs/applications/version-management/yadm/default.nix
index 66b785e43b1..bebc9fef0c6 100644
--- a/pkgs/applications/version-management/yadm/default.nix
+++ b/pkgs/applications/version-management/yadm/default.nix
@@ -1,10 +1,12 @@
-{ stdenv, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, git, gnupg }:
 
 let version = "1.12.0"; in
 stdenv.mkDerivation {
   pname = "yadm";
   inherit version;
 
+  buildInputs = [ git gnupg ];
+
   src = fetchFromGitHub {
     owner  = "TheLocehiliosan";
     repo   = "yadm";
@@ -12,26 +14,26 @@ stdenv.mkDerivation {
     sha256 = "0873jgks7dpfkj5km1jchxdrhf7lia70p0f8zsrh9p4crj5f4pc6";
   };
 
-  buildCommand = ''
-    mkdir -p $out/bin
-    mkdir -p $out/share/man/man1
-    mkdir -p $out/share/zsh/site-functions
-    mkdir -p $out/share/bash-completion/completions
-    sed -e 's:/bin/bash:/usr/bin/env bash:' $src/yadm > $out/bin/yadm
-    chmod 755 $out/bin/yadm
-    install -m 644 $src/yadm.1 $out/share/man/man1/yadm.1
-    install -m644 $src/completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm
-    install -m644 $src/completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+    install -Dt $out/bin $src/yadm
+    install -Dt $out/share/man/man1 $src/yadm.1
+    install -D $src/completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm
+    install -D $src/completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash
+    runHook postInstall
   '';
 
   meta = {
     homepage = https://github.com/TheLocehiliosan/yadm;
     description = "Yet Another Dotfiles Manager";
     longDescription = ''
-    yadm is a dotfile management tool with 3 main features: Manages files across
-    systems using a single Git repository. Provides a way to use alternate files on
-    a specific OS or host. Supplies a method of encrypting confidential data so it
-    can safely be stored in your repository.
+      yadm is a dotfile management tool with 3 main features:
+      * Manages files across systems using a single Git repository.
+      * Provides a way to use alternate files on a specific OS or host.
+      * Supplies a method of encrypting confidential data so it can safely be stored in your repository.
     '';
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/video/smplayer/default.nix b/pkgs/applications/video/smplayer/default.nix
index facb8fabe26..65a7f358d6f 100644
--- a/pkgs/applications/video/smplayer/default.nix
+++ b/pkgs/applications/video/smplayer/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "smplayer";
-  version = "19.10.0";
+  version = "19.10.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "0sq7hr10b4pbbi0y1q4mxs24h2lb042nv4rqr03r72bp57353xsl";
+    sha256 = "0i2c15yxk4by2zyjhb7n08larz9pmpa6zw383aybjxqh0nd9zv9p";
   };
 
   buildInputs = [ qtscript ];
diff --git a/pkgs/applications/virtualization/charliecloud/default.nix b/pkgs/applications/virtualization/charliecloud/default.nix
index 35c78dfd50a..a0694b7efbe 100644
--- a/pkgs/applications/virtualization/charliecloud/default.nix
+++ b/pkgs/applications/virtualization/charliecloud/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
 
-  version = "0.11";
+  version = "0.12";
   pname = "charliecloud";
 
   src = fetchFromGitHub {
     owner = "hpc";
     repo = "charliecloud";
     rev = "v${version}";
-    sha256 = "10dzas5fyh2lpa0kf1xv8z9c4g4cf0zlmnpilyvpcyccyfjf6cp2";
+    sha256 = "177rcf1klcxsp6x9cw75cmz3y2izgd1hvi1rb9vc6iz9qx1nmk3v";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/applications/virtualization/cntr/default.nix b/pkgs/applications/virtualization/cntr/default.nix
index 13afe0a4261..698f6df0673 100644
--- a/pkgs/applications/virtualization/cntr/default.nix
+++ b/pkgs/applications/virtualization/cntr/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cntr";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "Mic92";
     repo = "cntr";
     rev = version;
-    sha256 = "0lmbsnjia44h4rskqkv9yc7xb6f3qjgbg8kcr9zqnr7ivr5fjcxg";
+    sha256 = "0dhfz7aj3cqi974ybf0axchih40rzrs9m8bxhwz1hgig57aisfc0";
   };
 
   cargoSha256 = "0xkwza9fx61pvlsm0s3dxc9i09mqp6c9df8w63fyiq7174vjxryx";
diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index fddf1741720..29111399ae9 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -17,7 +17,7 @@
 
 buildGoPackage rec {
   project = "cri-o";
-  version = "1.16.0";
+  version = "1.16.1";
   name = "${project}-${version}${flavor}";
 
   goPackagePath = "github.com/${project}/${project}";
@@ -26,7 +26,7 @@ buildGoPackage rec {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "1kbg544v7c1apaxrpndgrap0pb5c67d8fazbkgykg6ynskx6n344";
+    sha256 = "0w690zhc55gdqzc31jc34nrzwd253pfb3rq23z51q22nqwmlsh9p";
   };
 
   outputs = [ "bin" "out" ];
diff --git a/pkgs/applications/virtualization/docker-compose/default.nix b/pkgs/applications/virtualization/docker-compose/default.nix
index b1c42b099b6..7e8dbf33a7b 100644
--- a/pkgs/applications/virtualization/docker-compose/default.nix
+++ b/pkgs/applications/virtualization/docker-compose/default.nix
@@ -7,12 +7,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "1.24.1";
+  version = "1.25.0";
   pname = "docker-compose";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0lx7bx6jvhydbab8vwry0bclhdf0dfj6jrns1m5y45yp9ybqxmd5";
+    sha256 = "0zlprmsgmj4z627snsl0qmq8y7ggcyqrqm5vxvrvcigl7zywnprc";
   };
 
   # lots of networking and other fails
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 42860966fe1..99d20477a12 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -9,17 +9,12 @@
 
 with stdenv.lib;
 
-# TODO: remove after there's support for setupPyDistFlags
-let
-  setuppy = ../../../development/interpreters/python/run_setup.py;
-in
 python3Packages.buildPythonApplication rec {
-  name = "virt-manager-${version}";
+  pname = "virt-manager";
   version = "2.2.1";
-  namePrefix = "";
 
   src = fetchurl {
-    url = "http://virt-manager.org/download/sources/virt-manager/${name}.tar.gz";
+    url = "http://virt-manager.org/download/sources/virt-manager/${pname}-${version}.tar.gz";
     sha256 = "06ws0agxlip6p6n3n43knsnjyd91gqhh2dadgc33wl9lx1k8vn6g";
   };
 
@@ -49,13 +44,7 @@ python3Packages.buildPythonApplication rec {
     ${python3Packages.python.interpreter} setup.py configure --prefix=$out
   '';
 
-  # TODO: remove after there's support for setupPyDistFlags
-  buildPhase = ''
-    runHook preBuild
-    cp ${setuppy} nix_run_setup
-    ${python3Packages.python.pythonForBuild.interpreter} nix_run_setup --no-update-icon-cache build_ext bdist_wheel
-    runHook postBuild
-  '';
+  setupPyGlobalFlags = [ "--no-update-icon-cache" ];
 
   preFixup = ''
     gappsWrapperArgs+=(--set PYTHONPATH "$PYTHONPATH")
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index addcf125e27..13e70c2561d 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -214,7 +214,7 @@ in stdenv.mkDerivation {
     description = "PC emulator";
     license = licenses.gpl2;
     homepage = https://www.virtualbox.org/;
-    maintainers = with maintainers; [ flokli sander ];
+    maintainers = with maintainers; [ sander ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/virtualization/virtualbox/extpack.nix b/pkgs/applications/virtualization/virtualbox/extpack.nix
index 56400a75945..9357a641de2 100644
--- a/pkgs/applications/virtualization/virtualbox/extpack.nix
+++ b/pkgs/applications/virtualization/virtualbox/extpack.nix
@@ -18,7 +18,7 @@ fetchurl rec {
     description = "Oracle Extension pack for VirtualBox";
     license = licenses.virtualbox-puel;
     homepage = https://www.virtualbox.org/;
-    maintainers = with maintainers; [ flokli sander cdepillabout ];
+    maintainers = with maintainers; [ sander cdepillabout ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/virtualization/x11docker/default.nix b/pkgs/applications/virtualization/x11docker/default.nix
index c57a7f6e771..af136f7e545 100644
--- a/pkgs/applications/virtualization/x11docker/default.nix
+++ b/pkgs/applications/virtualization/x11docker/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, makeWrapper, nx-libs, xorg, getopt, gnugrep, gawk, ps, mount, iproute }:
 stdenv.mkDerivation rec {
   pname = "x11docker";
-  version = "6.3.0";
+  version = "6.4.0";
   src = fetchFromGitHub {
     owner = "mviereck";
     repo = "x11docker";
     rev = "v${version}";
-    sha256 = "0x2sx41y3ylzg511x52k3wh8mfbzp4ialpas6sn4ccagqxh2hc4y";
+    sha256 = "0s8gk2kqxkfwx1x44g19ckm7rqgrcax59y8brgmigajqizik7sql";
   };
   nativeBuildInputs = [ makeWrapper ];