about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/dapp.nix33
-rw-r--r--pkgs/applications/altcoins/default.nix6
-rw-r--r--pkgs/applications/altcoins/ethrun.nix26
-rw-r--r--pkgs/applications/altcoins/ethsign/default.nix60
-rw-r--r--pkgs/applications/altcoins/hevm.nix62
-rw-r--r--pkgs/applications/altcoins/seth.nix33
-rw-r--r--pkgs/applications/audio/mixxx/default.nix4
-rw-r--r--pkgs/applications/audio/opusfile/default.nix4
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/macport.nix4
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix44
-rw-r--r--pkgs/applications/misc/electron-cash/default.nix22
-rw-r--r--pkgs/applications/misc/mwic/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix8
-rw-r--r--pkgs/applications/networking/compactor/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/jackline/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/jackline/tls-0.9.0.patch29
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/server.nix8
-rw-r--r--pkgs/applications/networking/p2p/eiskaltdcpp/default.nix9
-rw-r--r--pkgs/applications/networking/testssl/default.nix4
-rw-r--r--pkgs/applications/office/treesheets/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix4
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile11
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile.lock76
-rw-r--r--pkgs/applications/version-management/gitaly/default.nix6
-rw-r--r--pkgs/applications/version-management/gitaly/gemset.nix95
-rw-r--r--pkgs/applications/version-management/gitlab-shell/default.nix9
-rw-r--r--pkgs/applications/version-management/gitlab-shell/fixes.patch16
-rw-r--r--pkgs/applications/version-management/gitlab-workhorse/default.nix15
-rw-r--r--pkgs/applications/version-management/gitlab/Gemfile99
-rw-r--r--pkgs/applications/version-management/gitlab/Gemfile.lock346
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix75
-rw-r--r--pkgs/applications/version-management/gitlab/fix-36783.patch29
-rw-r--r--pkgs/applications/version-management/gitlab/gemset.nix540
-rw-r--r--pkgs/applications/video/obs-studio/default.nix8
-rw-r--r--pkgs/applications/video/obs-studio/find-xcb.patch31
-rw-r--r--pkgs/build-support/emacs/wrapper.nix2
-rw-r--r--pkgs/build-support/vm/default.nix16
-rw-r--r--pkgs/data/fonts/ultimate-oldschool-pc-font-pack/default.nix31
-rw-r--r--pkgs/data/misc/hackage/default.nix4
-rw-r--r--pkgs/development/compilers/dotnet/sdk/default.nix6
-rw-r--r--pkgs/development/compilers/ghc/7.10.3.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.0.2.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.2.2.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.4.3.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.6.1.nix4
-rw-r--r--pkgs/development/compilers/ghc/head.nix4
-rw-r--r--pkgs/development/compilers/ghcjs-ng/default.nix11
-rw-r--r--pkgs/development/compilers/llvm/3.5/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/3.7/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/3.8/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/3.9/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/5/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/6/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/7/clang/default.nix106
-rw-r--r--pkgs/development/compilers/llvm/7/clang/purity.patch30
-rw-r--r--pkgs/development/compilers/llvm/7/compiler-rt-codesign.patch33
-rw-r--r--pkgs/development/compilers/llvm/7/compiler-rt.nix37
-rw-r--r--pkgs/development/compilers/llvm/7/default.nix92
-rw-r--r--pkgs/development/compilers/llvm/7/libc++/default.nix50
-rw-r--r--pkgs/development/compilers/llvm/7/libc++/setup-hook.sh6
-rw-r--r--pkgs/development/compilers/llvm/7/libc++abi.nix49
-rw-r--r--pkgs/development/compilers/llvm/7/lld.nix32
-rw-r--r--pkgs/development/compilers/llvm/7/lldb.nix56
-rw-r--r--pkgs/development/compilers/llvm/7/llvm-outputs.patch26
-rw-r--r--pkgs/development/compilers/llvm/7/llvm.nix174
-rw-r--r--pkgs/development/compilers/llvm/7/openmp.nix25
-rw-r--r--pkgs/development/compilers/llvm/7/sanitizers-nongnu.patch412
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix30
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml84
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix3
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix899
-rw-r--r--pkgs/development/interpreters/php/default.nix1
-rw-r--r--pkgs/development/interpreters/wasm-gc/default.nix25
-rw-r--r--pkgs/development/interpreters/wasm-gc/fix-build.patch34
-rw-r--r--pkgs/development/libraries/boost/generic.nix16
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix4
-rw-r--r--pkgs/development/libraries/libpfm/default.nix2
-rw-r--r--pkgs/development/libraries/libtins/default.nix4
-rw-r--r--pkgs/development/libraries/mono-addins/default.nix4
-rw-r--r--pkgs/development/libraries/physics/lhapdf/default.nix7
-rw-r--r--pkgs/development/libraries/protobuf/3.6.nix6
-rw-r--r--pkgs/development/libraries/protobuf/generic-v3.nix2
-rw-r--r--pkgs/development/ocaml-modules/doc-ock-html/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/doc-ock-xml/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/doc-ock/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/erm_xml/default.nix12
-rw-r--r--pkgs/development/ocaml-modules/erm_xmpp/0.3.nix29
-rw-r--r--pkgs/development/ocaml-modules/erm_xmpp/default.nix41
-rw-r--r--pkgs/development/ocaml-modules/odoc/default.nix28
-rw-r--r--pkgs/development/python-modules/click-completion/default.nix23
-rw-r--r--pkgs/development/python-modules/click-didyoumean/default.nix22
-rw-r--r--pkgs/development/python-modules/elasticsearch-dsl/default.nix39
-rw-r--r--pkgs/development/python-modules/ldappool/default.nix4
-rw-r--r--pkgs/development/python-modules/py3exiv2/default.nix9
-rw-r--r--pkgs/development/python-modules/py3exiv2/setup.patch2
-rw-r--r--pkgs/development/python-modules/pyftgl/default.nix18
-rw-r--r--pkgs/development/python-modules/pyjet/default.nix21
-rw-r--r--pkgs/development/python-modules/sharedmem/default.nix21
-rw-r--r--pkgs/development/python-modules/shellingham/default.nix19
-rw-r--r--pkgs/development/ruby-modules/solargraph/Gemfile.lock2
-rw-r--r--pkgs/development/ruby-modules/solargraph/gemset.nix4
-rw-r--r--pkgs/development/tools/misc/ycmd/default.nix6
-rw-r--r--pkgs/development/tools/profiling/EZTrace/default.nix6
-rw-r--r--pkgs/misc/emulators/blastem/default.nix48
-rw-r--r--pkgs/misc/libcardiacarrest/default.nix6
-rw-r--r--pkgs/misc/themes/shades-of-gray/default.nix30
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/YankRing1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clang_complete11
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clighter84
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/command-t5
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/cpsm13
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ctrlp-cmatcher5
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/deoplete-go7
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ensime-vim1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/taglist6
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-addon-manager1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-grammarous10
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-hier1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-isort4
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-wakatime1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xdebug1
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xkbswitch5
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-yapf4
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vimproc.vim9
-rw-r--r--pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme16
-rw-r--r--pkgs/os-specific/linux/iputils/default.nix10
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rpi.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/nfs-utils/default.nix2
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/generic.nix2
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/matrix-synapse/default.nix6
-rw-r--r--pkgs/servers/trezord/default.nix10
-rw-r--r--pkgs/servers/x11/xorg/default.nix6
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix4
-rw-r--r--pkgs/servers/x11/xorg/tarballs-7.7.list2
-rw-r--r--pkgs/test/default.nix2
-rw-r--r--pkgs/tools/X11/xloadimage/default.nix88
-rw-r--r--pkgs/tools/bluetooth/bluez-alsa/default.nix69
-rw-r--r--pkgs/tools/misc/agedu/default.nix6
-rw-r--r--pkgs/tools/misc/doitlive/default.nix6
-rw-r--r--pkgs/tools/misc/fzy/default.nix11
-rw-r--r--pkgs/tools/misc/hdf4/default.nix17
-rw-r--r--pkgs/tools/misc/jdupes/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/fortisslvpn/default.nix1
-rw-r--r--pkgs/tools/networking/network-manager/iodine/default.nix1
-rw-r--r--pkgs/tools/networking/network-manager/l2tp/default.nix1
-rw-r--r--pkgs/tools/networking/network-manager/openconnect/default.nix1
-rw-r--r--pkgs/tools/networking/network-manager/openvpn/default.nix1
-rw-r--r--pkgs/tools/networking/network-manager/vpnc/default.nix1
-rw-r--r--pkgs/tools/networking/twa/default.nix34
-rw-r--r--pkgs/tools/security/eid-mw/default.nix4
-rw-r--r--pkgs/tools/typesetting/tex/texlive/combine.nix4
-rw-r--r--pkgs/tools/virtualization/google-compute-engine/default.nix3
-rw-r--r--pkgs/top-level/all-packages.nix41
-rw-r--r--pkgs/top-level/haskell-packages.nix29
-rw-r--r--pkgs/top-level/ocaml-packages.nix10
-rw-r--r--pkgs/top-level/php-packages.nix8
-rw-r--r--pkgs/top-level/python-packages.nix34
-rw-r--r--pkgs/top-level/stage.nix2
167 files changed, 4014 insertions, 1930 deletions
diff --git a/pkgs/applications/altcoins/dapp.nix b/pkgs/applications/altcoins/dapp.nix
deleted file mode 100644
index a89725f6e30f..000000000000
--- a/pkgs/applications/altcoins/dapp.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper
-, seth, git, solc, shellcheck, nodejs, hevm }:
-
-stdenv.mkDerivation rec {
-  name = "dapp-${version}";
-  version = "0.5.7";
-
-  src = fetchFromGitHub {
-    owner = "dapphub";
-    repo = "dapp";
-    rev = "v${version}";
-    sha256 = "128f35hczarihb263as391wr9zbyc1q1p49qbxh30via23r1brb0";
-  };
-
-  nativeBuildInputs = [makeWrapper shellcheck];
-  buildPhase = "true";
-  doCheck = true;
-  checkPhase = "make test";
-  makeFlags = ["prefix=$(out)"];
-  postInstall = let path = lib.makeBinPath [
-    nodejs solc git seth hevm
-  ]; in ''
-    wrapProgram "$out/bin/dapp" --prefix PATH : "${path}"
-  '';
-
-  meta = {
-    description = "Simple tool for creating Ethereum-based dapps";
-    homepage = https://github.com/dapphub/dapp/;
-    maintainers = [stdenv.lib.maintainers.dbrock];
-    license = lib.licenses.gpl3;
-    inherit version;
-  };
-}
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index f075903332b4..e0a0dbef632c 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -50,7 +50,6 @@ rec {
   dogecoin  = callPackage ./dogecoin.nix { boost = boost165; withGui = true; };
   dogecoind = callPackage ./dogecoin.nix { boost = boost165; withGui = false; };
 
-  ethsign = callPackage ./ethsign { };
 
   freicoin = callPackage ./freicoin.nix { boost = boost155; };
   go-ethereum = callPackage ./go-ethereum.nix {
@@ -78,11 +77,6 @@ rec {
   namecoind = callPackage ./namecoin.nix { withGui = false; };
 
   ethabi = callPackage ./ethabi.nix { };
-  ethrun = callPackage ./ethrun.nix { };
-  seth = callPackage ./seth.nix { };
-  dapp = callPackage ./dapp.nix { };
-
-  hevm = (haskellPackages.callPackage ./hevm.nix {});
 
   stellar-core = callPackage ./stellar-core.nix { };
 
diff --git a/pkgs/applications/altcoins/ethrun.nix b/pkgs/applications/altcoins/ethrun.nix
deleted file mode 100644
index c58d9d8faf48..000000000000
--- a/pkgs/applications/altcoins/ethrun.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ stdenv, fetchFromGitHub, rustPlatform }:
-
-with rustPlatform;
-
-buildRustPackage rec {
-  name = "ethrun-${version}";
-  version = "0.1.0";
-
-  src = fetchFromGitHub {
-    owner = "dapphub";
-    repo = "ethrun";
-    rev = "v${version}";
-    sha256 = "1w651g4p2mc4ljp20l8lwvfx3l3fzyp6gf2izr85vyb1wjbaccqn";
-  };
-
-  cargoSha256 = "14x8pbjgkz0g724lnvd9mi2alqd6fipjljw6xsraf9gqwijn1kn0";
-
-  meta = with stdenv.lib; {
-    description = "Directly run Ethereum bytecode";
-    homepage = https://github.com/dapphub/ethrun/;
-    maintainers = [ maintainers.dbrock ];
-    license = licenses.gpl3;
-    broken = true; # mark temporary as broken
-    inherit version;
-  };
-}
diff --git a/pkgs/applications/altcoins/ethsign/default.nix b/pkgs/applications/altcoins/ethsign/default.nix
deleted file mode 100644
index 8e89de4d6906..000000000000
--- a/pkgs/applications/altcoins/ethsign/default.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, fetchgit }:
-
-buildGoPackage rec {
-  name = "ethsign-${version}";
-  version = "0.8.2";
-
-  goPackagePath = "github.com/dapphub/ethsign";
-  hardeningDisable = ["fortify"];
-
-  src = fetchFromGitHub {
-    owner = "dapphub";
-    repo = "ethsign";
-    rev = "v${version}";
-    sha256 = "1gd0bq5x49sjm83r2wivjf03dxvhdli6cvwb9b853wwcvy4inmmh";
-  };
-
-  extraSrcs = [
-    {
-      goPackagePath = "github.com/ethereum/go-ethereum";
-      src = fetchFromGitHub {
-        owner = "ethereum";
-        repo = "go-ethereum";
-        rev = "v1.7.3";
-        sha256 = "1w6rbq2qpjyf2v9mr18yiv2af1h2sgyvgrdk4bd8ixgl3qcd5b11";
-      };
-    }
-    {
-      goPackagePath = "gopkg.in/urfave/cli.v1";
-      src = fetchFromGitHub {
-        owner = "urfave";
-        repo = "cli";
-        rev = "v1.19.1";
-        sha256 = "1ny63c7bfwfrsp7vfkvb4i0xhq4v7yxqnwxa52y4xlfxs4r6v6fg";
-      };
-    }
-    {
-      goPackagePath = "golang.org/x/crypto";
-      src = fetchgit {
-        url = "https://go.googlesource.com/crypto";
-        rev = "94eea52f7b742c7cbe0b03b22f0c4c8631ece122";
-        sha256 = "095zyvjb0m2pz382500miqadhk7w3nis8z3j941z8cq4rdafijvi";
-      };
-    }
-    {
-      goPackagePath = "golang.org/x/sys";
-      src = fetchgit {
-        url = "https://go.googlesource.com/sys";
-        rev = "53aa286056ef226755cd898109dbcdaba8ac0b81";
-        sha256 = "1yd17ccklby099cpdcsgx6lf0lj968hsnppp16mwh9009ldf72r1";
-      };
-    }
-  ];
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/dapphub/ethsign;
-    description = "Make raw signed Ethereum transactions";
-    broken = stdenv.isDarwin;  # test with CoreFoundation 10.11
-    license = [licenses.gpl3];
-  };
-}
diff --git a/pkgs/applications/altcoins/hevm.nix b/pkgs/applications/altcoins/hevm.nix
deleted file mode 100644
index e7f47d0f2200..000000000000
--- a/pkgs/applications/altcoins/hevm.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-{ mkDerivation, abstract-par, aeson, ansi-wl-pprint, async, base
-, base16-bytestring, base64-bytestring, binary, brick, bytestring
-, cereal, containers, cryptonite, data-dword, deepseq, directory
-, filepath, ghci-pretty, here, HUnit, lens
-, lens-aeson, memory, monad-par, mtl, optparse-generic, process
-, QuickCheck, quickcheck-text, readline, rosezipper, scientific
-, stdenv, tasty, tasty-hunit, tasty-quickcheck, temporary, text
-, text-format, unordered-containers, vector, vty
-
-, restless-git
-
-, fetchFromGitHub, lib, makeWrapper
-, zlib, bzip2, solc, coreutils
-, bash
-}:
-
-lib.overrideDerivation (mkDerivation rec {
-  pname = "hevm";
-  version = "0.8.5";
-
-  src = fetchFromGitHub {
-    owner = "dapphub";
-    repo = "hevm";
-    rev = "v${version}";
-    sha256 = "1a27bh0azf2hdg5hp6s9azv2rhzy7vrlq1kmg688g9nfwwwhgkp0";
-  };
-
-  isLibrary = false;
-  isExecutable = true;
-  enableSharedExecutables = false;
-
-  postInstall = ''
-    wrapProgram $out/bin/hevm \
-       --add-flags '+RTS -N$((`${coreutils}/bin/nproc` - 1)) -RTS' \
-       --suffix PATH : "${lib.makeBinPath [bash coreutils]}"
-  '';
-
-  extraLibraries = [
-    abstract-par aeson ansi-wl-pprint base base16-bytestring
-    base64-bytestring binary brick bytestring cereal containers
-    cryptonite data-dword deepseq directory filepath ghci-pretty lens
-    lens-aeson memory monad-par mtl optparse-generic process QuickCheck
-    quickcheck-text readline rosezipper scientific temporary text text-format
-    unordered-containers vector vty restless-git
-  ];
-  executableHaskellDepends = [
-    async readline zlib bzip2
-  ];
-  testHaskellDepends = [
-    base binary bytestring ghci-pretty here HUnit lens mtl QuickCheck
-    tasty tasty-hunit tasty-quickcheck text vector
-  ];
-
-  homepage = https://github.com/dapphub/hevm;
-  description = "Ethereum virtual machine evaluator";
-  license = stdenv.lib.licenses.agpl3;
-  maintainers = [stdenv.lib.maintainers.dbrock];
-  broken = true; # 2018-04-10
-}) (attrs: {
-  buildInputs = attrs.buildInputs ++ [solc];
-  nativeBuildInputs = attrs.nativeBuildInputs ++ [makeWrapper];
-})
diff --git a/pkgs/applications/altcoins/seth.nix b/pkgs/applications/altcoins/seth.nix
deleted file mode 100644
index 334ec9277e1b..000000000000
--- a/pkgs/applications/altcoins/seth.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv, makeWrapper, lib, fetchFromGitHub
-, bc, coreutils, curl, ethabi, git, gnused, jshon, perl, solc, which
-, nodejs, ethsign
-}:
-
-stdenv.mkDerivation rec {
-  name = "seth-${version}";
-  version = "0.6.3";
-
-  src = fetchFromGitHub {
-    owner = "dapphub";
-    repo = "seth";
-    rev = "v${version}";
-    sha256 = "0la2nfqsscpbq6zwa6hsd73nimdnrhilrmgyy77yr3jca2wjhsjk";
-  };
-
-  nativeBuildInputs = [makeWrapper];
-  buildPhase = "true";
-  makeFlags = ["prefix=$(out)"];
-  postInstall = let path = lib.makeBinPath [
-    bc coreutils curl ethabi git gnused jshon perl solc which nodejs ethsign
-  ]; in ''
-    wrapProgram "$out/bin/seth" --prefix PATH : "${path}"
-  '';
-
-  meta = {
-    description = "Command-line client for talking to Ethereum nodes";
-    homepage = https://github.com/dapphub/seth/;
-    maintainers = [stdenv.lib.maintainers.dbrock];
-    license = lib.licenses.gpl3;
-    inherit version;
-  };
-}
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index f3318a7866b4..28e29850606a 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   name = "mixxx-${version}";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "mixxxdj";
     repo = "mixxx";
     rev = "release-${version}";
-    sha256 = "1fm8lkbnxka4haidf6yr8mb3r6vaxmc97hhrp8pcx0fvq2mnzvy2";
+    sha256 = "1q1px4033marraprvgr5yq9jlz943kcc10fdkn7py2ma8cfgnipq";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/audio/opusfile/default.nix b/pkgs/applications/audio/opusfile/default.nix
index d864d5972bce..993e3c4fe8c5 100644
--- a/pkgs/applications/audio/opusfile/default.nix
+++ b/pkgs/applications/audio/opusfile/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, pkgconfig, openssl, libogg, libopus }:
 
 stdenv.mkDerivation rec {
-  name = "opusfile-0.10";
+  name = "opusfile-0.11";
   src = fetchurl {
     url = "http://downloads.xiph.org/releases/opus/${name}.tar.gz";
-    sha256 = "0bs1376sd131qdh7198jp64vv5d17az5wyy4y7srrvw7p8k3bq28";
+    sha256 = "1gq3aszzl5glgbajw5p1f5a1kdyf23w5vjdmwwrk246syin9pkkl";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index f1a22bd839a0..baf49ff78e59 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, python3, wrapGAppsHook, gettext, intltool, libsoup, gnome3, gtk3, gdk_pixbuf,
-  tag ? "", xvfb_run, dbus, glibcLocales, glib, gobjectIntrospection,
+  tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobjectIntrospection,
   gst_all_1, withGstPlugins ? true,
   xineBackend ? false, xineLib,
   withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
@@ -24,7 +24,7 @@ python3.pkgs.buildPythonApplication rec {
 
   checkInputs = with python3.pkgs; [ pytest pytest_xdist pyflakes pycodestyle polib xvfb_run dbus.daemon glibcLocales ];
 
-  buildInputs = [ gnome3.defaultIconTheme libsoup glib gtk3 webkitgtk gdk_pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobjectIntrospection ]
+  buildInputs = [ gnome3.defaultIconTheme libsoup glib glib-networking gtk3 webkitgtk gdk_pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobjectIntrospection ]
     ++ (if xineBackend then [ xineLib ] else with gst_all_1;
     [ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]);
 
diff --git a/pkgs/applications/editors/emacs/macport.nix b/pkgs/applications/editors/emacs/macport.nix
index 8f74aca44885..71a41da57474 100644
--- a/pkgs/applications/editors/emacs/macport.nix
+++ b/pkgs/applications/editors/emacs/macport.nix
@@ -6,7 +6,7 @@
 stdenv.mkDerivation rec {
   emacsVersion = "26.1";
   emacsName = "emacs-${emacsVersion}";
-  macportVersion = "7.1";
+  macportVersion = "7.2";
   name = "emacs-mac-${emacsVersion}-${macportVersion}";
 
   builder = ./builder.sh;
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   macportSrc = fetchurl {
     url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${emacsName}-mac-${macportVersion}.tar.gz";
-    sha256 = "0d2ny54f68v3hjc2g3pkj83xv3yzv0hrwvn2cmpyb0jxjbsb2frc";
+    sha256 = "0j4dcjv7kh84d6lzzxdzambk6ybbdr2j7r63nkbivssjv29z7zag";
   };
 
   hiresSrc = fetchurl {
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index b46dddfc73e9..9bf80b050a86 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -249,12 +249,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1wjrki0awjyjmv7hh5rkhbpx40yqjssgh4nv61fvg189aric4rzj"; /* updated by script */
+      sha256 = "0ljzdjvlkm37gclny652nm7kw2hlyl1iiix6h44zq7fhszp5kmyr"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -262,12 +262,12 @@ in
 
   datagrip = buildDataGrip rec {
     name = "datagrip-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "0sfcl6bcq5hzwx1fdn8zfyl4qqjcmjmzwspa7v7niyqhbj5zdba9"; /* updated by script */
+      sha256 = "1m3b8pfmzz9x2b9izf19ax8h67p1myqqalvm214g1b8qqskqz60i"; /* updated by script */
     };
     wmClass = "jetbrains-datagrip";
     update-channel = "DataGrip 2018.2";
@@ -275,12 +275,12 @@ in
 
   goland = buildGoland rec {
     name = "goland-${version}";
-    version = "2018.2.1"; /* updated by script */
+    version = "2018.2.3"; /* updated by script */
     description = "Up and Coming Go IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/go/${name}.tar.gz";
-      sha256 = "0k96v00cbxkgxs9xby5m4dxl4w2kkm2lii54z1hqjwqmc9kxa2ia"; /* updated by script */
+      sha256 = "0pd01aw1mv6w47ksgc8zbc7ppgbb64qsdgyqghiyibdjf07h53hd"; /* updated by script */
     };
     wmClass = "jetbrains-goland";
     update-channel = "GoLand Release";
@@ -288,12 +288,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "1495zkccss1bkh803p6065nypqj72zra9dbnlx3iz4kkbawr7j15"; /* updated by script */
+      sha256 = "1syrxkp4pk95bvx02g2hg0mvn36w098h82k0qv0j6aqv0sidfzjy"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IntelliJ IDEA Release";
@@ -301,12 +301,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
-      sha256 = "04jzsmnfmxxf264dla6scshk576z8w8sv78mpzb2mc1ndwviwflx"; /* updated by script */
+      sha256 = "0z1ga6lzmkn7y7y24984vmp3ilrfc1ak1ddcgsdkwkiq5bx67ck8"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IntelliJ IDEA Release";
@@ -314,12 +314,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.3"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "1sjxavkfjg4g9rgjqjjb9d6wg53dwfs8n65w3qbp87c7x3pl006r"; /* updated by script */
+      sha256 = "1kdv3h749ly2sadixz3khaxrias3k72fi2ixrzniynwhgiqixz70"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PhpStorm 2018.2";
@@ -327,12 +327,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "0nq4xwqczppdrswi826yzjdzqpiwl4iyi70d7g6ncqd9wyiay4z4"; /* updated by script */
+      sha256 = "1vjvbaqa1qq173m0xy16v9avav8az43s1dzks55x0gvh5yj3cyqz"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm Release";
@@ -340,12 +340,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.4"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "1cf8z1wb532qhxlf0z4d791x084drfxzlaxq28hzy4f450bqbkp7"; /* updated by script */
+      sha256 = "14q4n62ppp1cxrv8mq2lxv9mjm95adag9856jpl9734s0gyjj3a5"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm Release";
@@ -353,12 +353,12 @@ in
 
   rider = buildRider rec {
     name = "rider-${version}";
-    version = "2018.2"; /* updated by script */
+    version = "2018.2.3"; /* updated by script */
     description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
-      sha256 = "0yigw9g53i6xamwva8vcd38f0aysxqkf77avms4l7l63dkap99nq"; /* updated by script */
+      sha256 = "1g2b7wszviknzd4srgcvwmci0pxyjbcmjzb4fg5clh62wwdpa16n"; /* updated by script */
     };
     wmClass = "jetbrains-rider";
     update-channel = "Rider 2018.2";
@@ -366,12 +366,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2018.2.1"; /* updated by script */
+    version = "2018.2.2"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "1gwcadjgs4cw5i3h1xn92ng415vzr5cxyrpgckr1qy37d5f4bhqg"; /* updated by script */
+      sha256 = "0585dnbvmzxnj2am6b04lfw75rdhk0fby2cbj58pzzcjz5xlrhvq"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "RubyMine 2018.2";
@@ -379,12 +379,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2018.2.2"; /* updated by script */
+    version = "2018.2.3"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "1a31q7wrg4ihap8j6n2cg98ml1zic78drkrp0p554rgsnh7v4hwr"; /* updated by script */
+      sha256 = "0y3a1p047knc598aamxxdmcf5nr86wk60w6nk2bhcasxjyqaw6r4"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WebStorm Release";
diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix
index 891222a0f10e..66a423238b34 100644
--- a/pkgs/applications/misc/electron-cash/default.nix
+++ b/pkgs/applications/misc/electron-cash/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python3Packages }:
+{ stdenv, fetchurl, python3Packages, qtbase, makeWrapper, lib }:
 
 let
 
@@ -7,14 +7,14 @@ let
 in
 
 python3Packages.buildPythonApplication rec {
-  version = "3.1.6";
+  version = "3.3.1";
   name = "electron-cash-${version}";
 
   src = fetchurl {
     url = "https://electroncash.org/downloads/${version}/win-linux/ElectronCash-${version}.tar.gz";
     # Verified using official SHA-1 and signature from
     # https://github.com/fyookball/keys-n-hashes
-    sha256 = "062k5iw0jcp10zxrffvgiyfg51c5xzs7gmm638icx01yy67d58dm";
+    sha256 = "1jdy89rfdwc2jadx3rqj5yvynpcn90cx6482ax9f1cj9gfxp9j2b";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -36,13 +36,14 @@ python3Packages.buildPythonApplication rec {
     trezor
   ];
 
+  nativeBuildInputs = [ makeWrapper ];
+
   postPatch = ''
     # Remove pyqt5 check
     sed -i '/pyqt5/d' setup.py
   '';
 
   preBuild = ''
-    sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
     pyrcc5 icons.qrc -o gui/qt/icons_rc.py
     # Recording the creation timestamps introduces indeterminism to the build
     sed -i '/Created: .*/d' gui/qt/icons_rc.py
@@ -51,18 +52,21 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   postInstall = ''
-    # Despite setting usr_share above, these files are installed under
-    # $out/nix ...
-    mv $out/${python.sitePackages}/nix/store"/"*/share $out
-    rm -rf $out/${python.sitePackages}/nix
+    # These files are installed under $out/homeless-shelter ...
+    mv $out/${python.sitePackages}/homeless-shelter/.local/share $out
+    rm -rf $out/${python.sitePackages}/homeless-shelter
 
     substituteInPlace $out/share/applications/electron-cash.desktop \
       --replace "Exec=electron-cash %u" "Exec=$out/bin/electron-cash %u"
+
+    # Please remove this when #44047 is fixed
+    wrapProgram $out/bin/electron-cash \
+      --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-5.${lib.versions.minor qtbase.version}/plugins
   '';
 
   doInstallCheck = true;
   installCheckPhase = ''
-    $out/bin/electrum help >/dev/null
+    $out/bin/electron-cash help >/dev/null
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/mwic/default.nix b/pkgs/applications/misc/mwic/default.nix
index 67e6ed3fa9ce..15904ab7c0ab 100644
--- a/pkgs/applications/misc/mwic/default.nix
+++ b/pkgs/applications/misc/mwic/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pythonPackages }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.5";
+  version = "0.7.6";
   name = "mwic-${version}";
 
   src = fetchurl {
     url = "https://github.com/jwilk/mwic/releases/download/${version}/${name}.tar.gz";
-    sha256 = "1b4fz9vs0aihg9nj9aj6d2jmykpa9nxi9rvz06v50wwk515plpmc";
+    sha256 = "0dl56979i54hrmz5l27c4q1f7jd1bpkmi7sm86946dagi4l1ns3i";
   };
 
   makeFlags=["PREFIX=\${out}"];
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 594cf175e9eb..1500597318f3 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,995 +1,995 @@
 {
-  version = "62.0";
+  version = "62.0.2";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ach/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ach/firefox-62.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "68a0802cccd72ffd36bc9188fb96b819b6357b889630173294f92af4dcf719389d678232b986ff6aeb258d2cd149d670d70c2bc90309dc61fb359b1d3011cc6a";
+      sha512 = "30660e1377c125ec195006d84ba5ae356c8b53b21865675ac7649ffadd169e578ab91d0107f18f26530788ae66aacb7edeec1c507bccb456e1aa89bac95351dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/af/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/af/firefox-62.0.2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "afdb463bc4bb5f0f3ba95a0af9430d5407a707b7cdd181c44ba0d343230d75e16a3078bc1f412dce8248991b8e752480be885355e394c1e4a4465c7c1929075e";
+      sha512 = "81e3d9b33af731c9a79bdac678c84d2f30de0b77b6d90d4adaa7da11383e360444f85bf7465add562048d13692cce88b3fb1bd63beac30a6d490f6b75eb9be26";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/an/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/an/firefox-62.0.2.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "c54b5365a97c44559aeac1c50a5d22250eabb94180987e3745bc875e7f2d7a843fd1282946cf5f27e53f4e0e6958a00376e6f761333e9bd5fd9ae7f6c081e1a0";
+      sha512 = "42d3118c2bba77aed919a1675538f52230841ec6c8398e2b9964631100c22c70335fc80f8757a916aef7c0ebabccc5356ca323901061d1bd0e5ad4eb0a10b483";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ar/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ar/firefox-62.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "08d5c5aefa22408c15a44646ef1b82ec3100a8bd69beb68a1d34029d2b0b554e110092ea5ee905bd866393cf506cd658591bba2e6f670943b21187015d99a836";
+      sha512 = "c6a5a647e17b8b4fb4e20a32c2e492c6102cb899acf5af2d3af3af3cd122d989bfa452638d038b9b7c8c0bbade604f6caa11f42cbde5a3260fb13e44080cd720";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/as/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/as/firefox-62.0.2.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "c403ca739506adc934e3453bff0e282ed514580895dcab70d41ac92499feabaa0d811a821b4441b988a3c12320735794d891620e06c8f081f13882f3bb6a56e8";
+      sha512 = "c1664a83e3dbd7b3041449ab4f7b9b41b038425c126572d380bf9c5d1d7318264a8ba798d670156ba91625de0865ed0b6e4e38bbd2ea700a118b64bbeea95b25";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ast/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ast/firefox-62.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "8d0e1c648c9eb8ddf8987360be83238eb6daf578f090687071ad5a63ff76028ebb4a988115a8ff9f7c40dc3522f06b4f79626f2ec8371040c76501457b93bcc6";
+      sha512 = "31c15cde2d9a0f93fa742c41032e8b6e06ad24a5e6126c953e70c0addc5d1a74c5b5d06088002b4c1516a1f75b2e3e82d9d04c0a624db781bde2d3e8182062f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/az/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/az/firefox-62.0.2.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "2cc58aa3833572ae3a97e0d2b70caf19f5429d360da8d3587399a3ef71b48bd1565b0a6eb560c032c45984930e74ad072ca6806686a18cbd7a0ee24805524a64";
+      sha512 = "8d3f949c325bd5efb9619e96f8d8688324d113ac7add21b1d3290c160bba1e2193f923a54d3ce295e75b2ea0a59ab9c718e117374a46963ef69c53f3ceaa1957";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/be/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/be/firefox-62.0.2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "fa196010cf483c3f8a4bf63934cb54f543fd00bf8cee45d76aac29675a2b95757f687f8584e7f9122fa1e82b007aa13ef06f0c8fed7dcdea059223f3607db0ed";
+      sha512 = "7cb5fd02ba28c54acb1c73320f794165c0debf35a35c5e15602ccb7677b879ef41c910deb4668c0f160663b7a6afa43f30492fc23691406848e6adde7fcd0b02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bg/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/bg/firefox-62.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "e0f107ab8248ee3e1bdb30ed081e415f03dba9068599f9596706dc4fb907be7737a9f2378e347aeedd667f2526a5b5753c4f35b004da6db6dfc9ca1593e9c91e";
+      sha512 = "c6484b8b19941e135d2dd983085325d9f5bef118105879b0f830762ec1899096146a454397510286a902d175f9ad4eb3e849fdce38844535bc8a92bcaa478862";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bn-BD/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/bn-BD/firefox-62.0.2.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "794d93fa5bc61186b3cc1d7866a13d155420d6f829e9b20377c8bd8ed66418b92eac08e843170893a23249fefd7fb4c5a93df89fc9249b8de00ad803b9aad0ab";
+      sha512 = "4526b294ea939f88c92a3275ea17fe16932b410b0114af03d9f3db892cf6ed1a9d0ae0a6e0a651a0599aaee9bf53c69273b8d0286b94656635b3357ee2ab021a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bn-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/bn-IN/firefox-62.0.2.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "1ba17cf852e267f1adf9192d0081e03b7d96f4a23cb83ff1a67f31d7340b234037a6def0c821fb4a872fd011999b14b464a3041d308cf5135382c2164f9832c8";
+      sha512 = "3a17f78a48c7657d7ed834f4c05b523d661c5a692e27751e48ed8ea6f580cee21295b025a2474bca10fdc803ade0acef0ff0f0ce40de992a1fd072ca70a1062e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/br/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/br/firefox-62.0.2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "7ff933244cabb95fbdad1a64ae900f6fd694dacf1d76621865b4a2066624c31f0686c4dff53add7523749d6f5befe6ec7bbf0160e426e1a02457f8d3d5e15016";
+      sha512 = "7932c59f390580c3a9f333fe40ddb9aace2c7d35703ec022468c503b4e58604fff777fb86e44cfcb84186845e8da26f55a7d0584d09982e88ee08e2b205f289e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bs/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/bs/firefox-62.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "dfd9a7b8f2f355f274dca7941349512339aeaa9da4412681a4e933cf0e1e9396d57d60887fca59c341e70496dd7073647794fbb4c8bcd1abd7b5062ee6809b53";
+      sha512 = "509b1d013a5ef5bf5f5a8167685a7232ee400202c1bfda37eab1ad8965cf0d7a6ae2988163be050b5d37741bb405df5b28aa937c82e086708cd6d943b5215ede";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ca/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ca/firefox-62.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "3785649ca22ab7882f751d0c2223589b7c8b5fa04bb0786ba5f64be405ba89a665244e7f4882d77a85569c46da9f6bc1d3fc95f0ff77e57f02cb8a7dc22f5b67";
+      sha512 = "75b918bb00c9039228b8881ac8fef4dbd36521b80651dc2d6b1ad1f6701ca39f3527b244c88d9e97ba1ac0a6e12ea7b6a3c40f9b95c0c2167e7c175b5d9ce37e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cak/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/cak/firefox-62.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "e367d02bf8c743f7a5c42b6ca19521813ba31f6a6525f4fbd4ecf418c9927a083d218ded1ae8b11084d4cc5707f97312b327a40735d638e1d3ea07056dce7070";
+      sha512 = "8803b41c4651174e4999804071b27d7cbf47497a8a5b83488654d0586fd6245d5d517c03e64e8e75ccc0991b2be47cb0ee95143d08828027e627409fe6c55cd6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cs/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/cs/firefox-62.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "cfa21baf935d6e325b6ea13d19796ae7adb51bfa6923f7f13e5138628f8064154bbfc5a4a0131a147383b2bf723e1abc46a79b698b2682602faa9a8f80b5e6cc";
+      sha512 = "182cd25579ad04713852e0343e0d9604f42772a4c6ad06da512a8286314451f7b90c667c2f199afd1a1162c8ff6d1320abfc87207602182a3cb32196916189d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cy/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/cy/firefox-62.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "0a9ad3a8ba02b863194fe4ba347be568fdb92bd72352251220f673349b77ebdb2b2c6e828e98c1c757fe3d4484783528e5f0129ae994a2f0226a17040a2f8c7a";
+      sha512 = "c65fff984a351cc67dba5574e7d2b3291de4e6c78f7659a6020d70f09cdb3bc951696ba88b778df4057633e9e06013799af58f5f2d0a052bdc22e7c98aaec278";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/da/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/da/firefox-62.0.2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "21ce01d959f36084dacdcd52cd26440a67e724c79361ed1897371fe4b33a853c72fc4feec6fee446ef47c1ce29c4a88392266bfca08189f1d99127ca637b8be1";
+      sha512 = "e9fa596fb6c825fd3c2b1d5f42ad1c192db42ee046ad2f348733a979135d41bf2b0efbcd8ac2fb68e0337890ac3131a3454425425ef727225786ab0cb51f4d9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/de/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/de/firefox-62.0.2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "cae69bd2193db9888ed3a415ed7147dc3002c05029a6cf3e7a010259919dfb0f209055b20e259459f008b99317a215cf6962ab173fac0f1e57c86341571d0eae";
+      sha512 = "7a4c786b18299378c4d8b797e99385e35ad501912f05c02bad311665be6d52a6435a3fa04c7a8ae8a562af654aa3cf17eb497fc9691fbd0b2cf46a67f5967353";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/dsb/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/dsb/firefox-62.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "4583f05b675973a2818b06baf771474b7bff9ec741c2e606cce13f6e4b153f92fadfb0c15d91c4a25d492a38fc3c48180cb6c7ea5e433aa774a9fffe26f4e593";
+      sha512 = "52ae2b79d9106fb304b4b3b945ac9960614efdc7780406e87bbe1dc15effc049e8cbb91c8f4f2dcd1966ed0085e3574e3e1a4234d933fa587e05901875234344";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/el/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/el/firefox-62.0.2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "4419885f9b6510edbf2797a047a08c97008731ce4fad19cda1fde4ab70b8912c9aa96df533f9b138d843303e549baa30ff9338bd9531b3044bdcc521cff14678";
+      sha512 = "956d5d36ec255ec122c09edda12a2242bbbb03793385fa9c417fbb8037fb19506298a31bed94eb39e825e4fcb66184901b3580ced8812cbc44f8a4d8ba339d19";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-CA/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/en-CA/firefox-62.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "86cf4dda9c21faea5d5031f423c7badb1876b225ad618fa8c1dd49803d65aec1032bedfded3278dc19d84c1f88688cd4ba31a27ad6f706ad55e9b407e3151f9a";
+      sha512 = "6a93cedce6724a19ea663e70ef9d57d27c144c1250c438ff15cd8d36c3d92b8a95c9e3f81fb53862b550d0765a8f0b7bdc14d6d9929a41f18357e0d0cfae732e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-GB/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/en-GB/firefox-62.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "278d00ec48c2d88d3aa5bedbc9443e82f367a2c9f8261f624eef42fcbfb83d74a3f35d6ad450ef3974ca8a19f7e654c93c40c1941264a2372fafdbb803c08f40";
+      sha512 = "c3f825196d8f1d1284644ebf07f08a7626086c869408603d50ded5b0eeaa98bb9f874c7df38bbbf3083dbb4a1ae8afa8e4c90ed35a83fd99bec78cf3813dd92e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-US/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/en-US/firefox-62.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "f4dfc51d6c8f9ccac869691ea4efb0f5fd8257d661698dba4eb7cc9fb7d28314e00a09ec595d424186cc928c8a6f9f93af0efcb3651eaa4fa40f81cfda73770d";
+      sha512 = "f19a938af6bfe6499bb4e4337ece1cc0918fe56b361ced0f131f010652b2849d98e48a7cd06277580cc87843454c7bdfe816b65c99189e1ba749aaa64059a6ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-ZA/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/en-ZA/firefox-62.0.2.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "f6036fe984da3057e76d324c76a2cfb17903d73f3e6bc7884338bb0ef0f9f68ef69e94ee93331f81e17a8eacc40827263c74e5aeb9a70420c7cf0670a205c61c";
+      sha512 = "0214fbf75843617b0623eea8c8ea2ef46d23d739f63a74ff47fc87ff16817d9110862696f92ba614167386bc51c5e94a9627d0dcdd22c19c20bac4a24543c126";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/eo/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/eo/firefox-62.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "011a742e57cdc2134115ea294782716bdc49ac4d2d7b06bfed048f75d18a5780cb93a16cd0ec6b8017e6b8299a5b260015adfcb3f093883703ed9403768555f0";
+      sha512 = "7da531166d26dfa3cd1edc327eecd583e10c8a2c41d007daba41e6f28e42159e1c43be5759061891c74ab0157ca3d4ce58b8a6a7d879ad4ce4c50586341b460e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-AR/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/es-AR/firefox-62.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "f86be240d21d47eda8bb04ff6b502ccee3c94afd6763239c5a79e094532facb8e8beefdf024c089d35ecffbd687febde5a4f10f362fd3c4d71bdabdc3ef1ce04";
+      sha512 = "e5bc4003ec881a41a28b6847dc9d90c81dec5ba9d103111922fdcc718713c67027f5b04a9d608d4e8b20a656abd94e0c5c8d5819135e8884d84eeb952b855590";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-CL/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/es-CL/firefox-62.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "e6be4bff771e5c64d35fdce320fcd80283c964e16fa938824adfa6dff9c69c721ee9184a1f37de86ac42f730ebc7b4c8355d151306e761bc96308868d6d349a9";
+      sha512 = "c5360481d7a86bddb87805672dedab22735e484e3a048e5e57e9265034ac40d0e5586bedab617da1cb54a4b7c1d3b4e18bd5f0cc0c8b8d3563df54b7ad506b23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-ES/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/es-ES/firefox-62.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "32473438f9d39f53249faef39e467546db58b3dce905cc1f4c0250b5fcf5ff2eb671baef0ab179b27ea47bd85bc5684f9bd4846c785f2454076035711642a7d7";
+      sha512 = "8977a46f5946da99c4e3f30e3451110adf7993ad5a64f5dee09016932ee55a63ebca9126f7c3196191e658aa39465701db347068bdc6e6acc85d061873ccf226";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-MX/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/es-MX/firefox-62.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "e81563bd3cc51241b129f084d4d9f5e8b7f34c1f5517f041bbf6992b50e0ad4fdf33fb36f0d1cc22d2bf9eb0bcbd0515a1b21b5cbb8d084cadd0f5d9d80c7b3d";
+      sha512 = "2bb3eeb2bef0f7c72c9bd95093e4c80b69e6f56ec41d0d4b3c54d2f8d7496884394583fb77e9f5e985ff6dedeb94711d4732baaaf5947e26e1f7b13f3024470b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/et/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/et/firefox-62.0.2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "5827c7dac8e12610e731e92128ed66f8f107c19de99937a730e7439b26dc404cf518145467cb702fb395d9cb3a0f4ad45c92484ffb053d88dc7ac858781f4ed0";
+      sha512 = "cad31e57d54d5e533f5c999b2009d29c22c9469b7b620499df7f433d0e86f14ba336665a9d9917a48f55d9a57e30be70dd461e8e2159092d5c2c1435e842603f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/eu/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/eu/firefox-62.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "c59ad7413f47ac19e9cd3a267150066099f561a455913714a18afd1b0e284202364f009cbe0361f5941b96d57b43c3d7d778235c9b9123133f864e75479556da";
+      sha512 = "6cfd46bc362a9dca327651ad9219979e321c8ec8ebef21fed64617e7c5540804ce0a16514848faff8e3a3018a454e8b90fac627054b92cb96f5fe8046326db50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fa/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/fa/firefox-62.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "fc3a1caac599a418ab0ce2208fa921dd40912e80ff075bf7d90ef64379057e83332483c1a7a44dece95a38be523d0ea2f92a57b45c300f032b174dde4812e5f8";
+      sha512 = "cfcd0562561478bf2d14ea6b2d87c081d86c5c6d30bd7c2c1eea673e2a82f875a2f954955fdac959ba96ce5fe8461c82137bd3c6313eefb3fb24bd4993692c29";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ff/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ff/firefox-62.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "629c2b79571980bfdbf9bece6760d1553cc002f91f26fe46d58d4fa5040f437b6a8b9b6ff41cdcb3d615c479c66a17d87d878fca65025070a31073165098ed26";
+      sha512 = "ffda297f92bfa0a76d613e7c54a71d376c2264570ee8d9f2bbed9faacded01cc8ea9fb171ae14f4d349702d91896899299bfd6b2cb66e9ded933bc6e34e63033";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fi/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/fi/firefox-62.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "4393019f9dec44bc62985d84f95585de0a26736a923f873b92d87f7d46d11f8f3e8af53812696ed4d312fad51c3bdd34026cd7ef933fd047f771441245b30213";
+      sha512 = "be791b05d114f2d49c23714898f240aeaf9593aae6b7d06a85fb3e6dbe9116ee19d5089aff137e1c0fc56873c172a73937e15b19eb76db15122019649dd83a58";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/fr/firefox-62.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "9d9afd43288fe6719b8d4f76c4542a26dd4b36376abcc8a0d8111c701bf397345451ccec5bc5ed1f2c2927549c62a429d4d97470d850d0c83ef8362c40531f0b";
+      sha512 = "1f167a7df26ee83671a7c3dea3bcccaa7797da0253110eafa3de5a17b7e19d1710966ac3a82bb0e7bee3d7287a6b39f59b9152672618dbad5d782e297ea6587e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fy-NL/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/fy-NL/firefox-62.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "12050decaa38a27ead08d67130d43ba36666728d3920cf40ad2dc0eb18de6a204e81dfff72cc0a33022b0d96097ec83fb36c88b463707f04669e5c907b8cac15";
+      sha512 = "ed9ee111ba5b451b5fa730bc0f8e14046ad7613d542a7695f68e28d9fddb279770e3663d8b9964617d803f073c7f02dc036e4cc6ce3a17b69ba5fba782831da0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ga-IE/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ga-IE/firefox-62.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "fb028d4b55cb5758eddb89a506b68d322c758d2e8ce01151a30678dd01c4ce625c9a051650a2e115705dbe02967f0db5894a4476d6460ff08313d4767dad9b7a";
+      sha512 = "073b104cebd63452fecff3949195ebeb794dde2d4c2defb44f62f4493165f5dcac20320da8229bd7c3e5410b840bb51b4699d77fdc886974848745e066ccec16";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gd/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/gd/firefox-62.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "a1173104e4be1fdb6cf3a0c8c997075d40e5eb950dc2482107b5795adb2590575c1c79f50daca87227de6426f4ad9d756233f95a0ddd3aa6e949ab773d319db2";
+      sha512 = "307262bb8874fc6115051608bf4a79e51fb08910de7d3df44a6bb3bbde64d3a76aa88361f10b811a2af9a05518d7ba42b6f2e078d5db32f0118cd08f8a3ec7fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/gl/firefox-62.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "b6b46ec64e4386c9196d1f5362674667e46b5006b756cdc164e6c1c42ebff417c57cacceee949d2e9a5f55c76b82471ed9cfa01cbddd8ab74d6669c6870864d9";
+      sha512 = "dbecb09308a701aaf13d278b208fb3b9e7631c8fc07b9b3fc99c27a4035ea7fd75da810063913449c2746933c63cf7a5175d4d5a17aa808f6bd8d19bf0692f0e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gn/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/gn/firefox-62.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "3c35f52d34d57dfbfe43d8df6be4f04bc10c79b3b9e08949525a503952ebecb90e59d99565c44adf25addff6f713088bce3034513eea3108a37c02b0921e2f01";
+      sha512 = "f62e0a0cb6794f6fc36c85f98952ccd313676d4389b12a054461789e30effd3effb6fc729bbdfd83674c2691d03aa219ddccfcb6eb74426ff49bd4a458ff7ca9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gu-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/gu-IN/firefox-62.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "0bdaed369d5318c59b929193686960ea2ed2173027c2cdb0384936d724585a9f8db058cd00d5a9d4b5ff8182a59c65066a9daf70e1e0b0d6013b3753e6f36adf";
+      sha512 = "b0624b04a3a20a48358027aeac449c52198139a3e9dbf0bc035a06c22fae3bcb44f34a07ad88a14a44e87dc16a3393688ce8d45d5070264d1ce63b2c183aceb1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/he/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/he/firefox-62.0.2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "07074488f2b83055b66300b357e8fd4cd94dea52c359227cf33908a0abdfcf1bb969dbc8d00454c42e5b83f35651aadfd8492507deb5a229d3e70b329753a86d";
+      sha512 = "7b3f4478100b6122c22fc50a944dc86e46b3d2d73893209be748c001461968a21500562b2eb18a40669d13068618ca3093ada082470833085b78f4083064767f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hi-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/hi-IN/firefox-62.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "8e6b126bbd13b6ca9ecdf088a049e28328942c5153937198b851ddfdf1705211a03c6dbe71e95b3afd8f7d3889705d2c6a1bb0b135e34ba389830cff519dfbf3";
+      sha512 = "13d42b552bca18e0020b891f6b3a563b66dd86b3e5fb9b5badae88ecf5a37b5febd5b9c927807f7996b81ddfcd4ef076553fc82655eb05c8a04a920f2a64ca71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/hr/firefox-62.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "d1c36d8cff63d070a827d24d3e95a823a1e302cd42a48ec50edd34ca3f76678f65897f060ff5365a677525e938baca6df512f27b0fa039eac6b78fcfd347b440";
+      sha512 = "5bf92b1abd156019935c8728435101fcee9973ea413cca05760322dce94b62fed9f7271699610e00e812f0c7d320cbc966bf03fd5250b9dbf9bb2ac2a5f96466";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hsb/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/hsb/firefox-62.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "384393359093655a50c6052cf25ba413fcc02000685fc6e97f15e3668cd93421dfd3fe95d266bd4ae5e687105ce7a4c364aef92faec9a5c01f6f5336c134fa21";
+      sha512 = "777ef75daae66a138f4013ff19fccaf7236700a8c2a46e6f0f811065326c7f4fb7dcb284ee9bac2dc3461b45cb8239015ff24731a691a85a199519398c03e53b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hu/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/hu/firefox-62.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "05c76472230f7ca011fd5f936568b50cfb646ce7efdde65d1640f0d4ccb31196873a8e5aa32ca6bc796e80400d52ea4c191e334270c04ed92354b6744ff4cb50";
+      sha512 = "800f1cecd46b4adfaf1ed20878d422191709801e148aef5e827c4cc3b9fbd46ecb475dd3c4b412a39ae2b05d4af2be8ec7d75515e2b98b1e07aef74fe49c4d70";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hy-AM/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/hy-AM/firefox-62.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "cd3f20095f0c31e20fb383089141f1aa22ba8f8e7734370fd377ba900cb71ba1f2e76e196bf30cf3e3a8139bd667575d139b03969ca3ceb3f2e1c231e70431bb";
+      sha512 = "910fe027a761480a4673207733fb5a78c0106249806f5c5347bb602de6853ba4299f2b13c896a088368eef036bef38962a487b4b3d6957f765f39eb06bedfebb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ia/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ia/firefox-62.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "834d2f397c3eefa2da5b184dcb4537ff28d26ade5ba985f916c4921473774d79a63cc97f3c72e49e19f37b4285a6efbc0bfd8ca78159b4a9e643027fbc4fc830";
+      sha512 = "4138b14e0cdb6f6760e5892bbdfea3c244460cf2c922e737a1af568b1df5aa0076cdebc836688cfd74d97ac859cb8fd71ba52752f5db1b28e8827ca59123756f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/id/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/id/firefox-62.0.2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "25b18c83fa9899f54a6fea9c617582c06b6ace769deb95e2ee6d1f3f4d32ce1654041605072096fb434c483b2f47913a35b4cdf392989db108f48ac9376d62ae";
+      sha512 = "463f2d340b7c439ee64ee6429021062cf05b2fd4f32226723bff37a67c5f25566ba5d6815a5e604d82df97b426b677b3158b2f8a565762a340cfa7425ea097ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/is/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/is/firefox-62.0.2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "596a5ae84a71ee3a5f1ba4896b794cd103d2bce08a505faa38ea6df9cdc5380d7b97b2c4b3c80cb525007bc2f08dfa2bccc2634a135e653c79b913c1624f56ea";
+      sha512 = "ec264aad9cfe095119f7f52f3391d376dc1864c24eb133bd51bde3349afc92c3cd1bcd0673b1fe95fa03ad36f869e0a6ee9835e97e922bd949228954779c075c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/it/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/it/firefox-62.0.2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "46bb6c5d0e575acdd510b72375677fefc3feba3c7ca2d1ad4a84f82ebfb3e7d14a9b419964850f6b640adad0970b105b3ae45bdee4a8a47200c5ac7f290c204e";
+      sha512 = "c81ee4ff685fae9108b07235931b9d0347ca46e3063211764fd1762e2ef9b5e4e337001304a14309c97593543859800d7dab9fbeb21a18af1b84a2b2b6c6d5cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ja/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ja/firefox-62.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "031a4aebd4d676f724c95812dab0fa4ca289fe4144417ffb28c6c4579580666bfa690737f544a3b09f5e07c7661200c334c4a336ea45700b6e8fbf5bbe5cd81c";
+      sha512 = "2f0ac4bbf507d3c306dc30dbfb94cb3bf8d907431f9a5c6b863505012cc4b077e22144af3658dca60e056d287273129f4742c72cf78f800162347e64d2b887f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ka/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ka/firefox-62.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "14979e42ecff3c9005fd229a5516d36a72958ef810766a64963c2a6028c31e0717ca9079abe6103ece951c5ade140adbd35227dcb73c6101a145f1bc9e241721";
+      sha512 = "4a85a9f34e69abb29d63ef8cae372f225d246a5065a26d03d99a22d137085609e6ef5adc03df70fd7fe1057731472808f510fde2a40926418fb98cdf8dd452ad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kab/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/kab/firefox-62.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "16189c288a8807afc94b1d781a3afad833a52c16ad8a805787b7ba5603ed6988bffe34d9c9a98ea3db0eda25341ff24430ab68b59a1cf9724bd16246a52c1847";
+      sha512 = "7b03433b9c79203feb40705469c6788b8df08505ec2e92c704570e0cc5b8066d2b305a68a4c7a61f81e07cb6ea7ea12c059b00e8c11870bc44be54406e8a224b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/kk/firefox-62.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "c4a35a83e41df1149c1ab38d8f243753865a50d6d896b89499bee42db45c8237b9b8d6599fb3c932717977c5e460ce7adc6c93d561fa69a4704e1931fc11d21f";
+      sha512 = "51c141c62e3251101a5b110573c26547533fb2a8bb2019cee63734ffe4ef2c4d1b4b6e5e540d88e0237721ec7d0d88c26bf5c179630f685c037e3f9eaa0a6f02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/km/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/km/firefox-62.0.2.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "dadea116c3bce18f18f2bfb3652ee1d26b3cd11442b8e941565772d202d2a8a2e7d6277a1737f39c63947b2972ed8a84680b4c7dc351563c5ff11abeebd6205f";
+      sha512 = "113303e05d1ea54c38ddcb0476873214696f38b17aeae64381a7bc00bd59d3ec551540125190c0a48e9e85abc4de9ab232bda0a6dacd1bf7584b7d09c9be67ad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kn/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/kn/firefox-62.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "dd6109e92bdc9a7b3c8e08d9e104691a1ee449f9f915b5a4090ca471089ea000da34dda44883f10f72f4a5ca21078263663444a413ab1f1e7599f85f01f3700a";
+      sha512 = "3dc579341533e0d9b82919aea3dddae1ad247f9a994d52d26699bd371c8910ae5b417e76be04002af53eb3caf5a6c2323261e48dccb8b4ffa63b27fe80272681";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ko/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ko/firefox-62.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "1dc4383f48dc1aedb80c373398a5539649397f1660664181c97ecfaa17eac2c503a976ae15b1e7607a83ed90e3b4f6c3b15d1bd60e13e22b8f071d91d373fab6";
+      sha512 = "4269f0f945c360e8385dd83d3a62450825a9e74c349dd74a9f8f18e683a83526113ed315e5e363dfe00706b59bad92739e6b08c004e27608addcbf599b7da21e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lij/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/lij/firefox-62.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "a26d5e50807efe3d4e3e01d10b0131ecbde0ef141f13310db4b01adcbac63d003db073ee24620745ab551ecba92965a5055e553b31fcfbd2df9af0a8913c7823";
+      sha512 = "ee26793ff03184b9221f7cfc88bb351f27ce01a04fbf74681f355e2a0c6b4330eded098a4ecabc3215e3c6b78fd2d09090275a4793c845b3c6debab962e2999c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lt/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/lt/firefox-62.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "dd99282b5eea3a1e4518644acdd9bebdcb1532cde148f8c60fc83177fd39757e98e7fe3cc54c681305c699a085788a14cd44e93e5f10e11a6812afae10b2db8c";
+      sha512 = "2f7b98d182b4aea92f8e370107d56f647e16a11a1966c2e2e47b8b4ce2b45d9b9742d09c19478c200cd7fe42889ec4c2498304626fefa7531e987ad134e3c05b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lv/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/lv/firefox-62.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "4be6a61d0ccf424ced36aad978f6419d00afb3db93751c1cd9f6d1ec0c2db8530e77099efbdd8883b333fc2dcb315143088423c359debdc7da5808853aa99268";
+      sha512 = "7c31be85ff6b3295636f50b9c7491fa467b2cba1e5ffe9c7ef997c3674d8cd801e14ab8fc9bc2d1ab75d2a379aa590109530c1ac81599f26b747a43cb557cfa9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mai/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/mai/firefox-62.0.2.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "71aa1872d28a5f741df79e4f1490b110fd9bc13e9f6c4f2aea8d5028b434d02f0bff859613dcac258e0af7e8840b5a5b37fe80eb6d94d4712e83b96d971a46bf";
+      sha512 = "e365c3e4a9d2ccb80871c1530ae1e372d4ac1a809cb2c72f82c682161dab6d7707591194a72481a312760a7819fba0e5dc9ae3f80308b7a9c45af66d97e47230";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/mk/firefox-62.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "5b9e7e8f865675c0488fb9f7e965dc37b35ff53f0ab84c3cc0d37f9baab0084bf5981e4a1dc65557a02f83de7a92302c5cc72c7c25c20baa484fc6abc552c279";
+      sha512 = "e28b9564ce368a8e68c27436e967cd5ad5adbff1b78b50bad64f7646cee32a28f2dfbeaf0bd049d7057ffef59ce709765cedc85ea139b84cb6b02d95c743cb81";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ml/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ml/firefox-62.0.2.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "d3ea17e668e021f9f002d775df1117c51e7b5bd92780b014bbdd869f93e50400e290a35e4f056c4ce8a235fc2851b630d24ddb3b8e6ccce7c21b65a94fe9816b";
+      sha512 = "50ce7dc0445a37d125fddfb51951d455b91bec19f807df262bcba0734a7cf855d455e965144e1d8da4692c4013861f62cb683e364e33e85f4962c99097b74838";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/mr/firefox-62.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "9022898d857eae94054ed357cc5d06bae72ea38fe2f1efb6d09baa6b18d55cb8a75a5c0f2b312458366e2146b36d12407373e8862278ef348e588a893c068a17";
+      sha512 = "defcaaf5c589d0a11104f06890f986ea3cb627db499c2bcd1fc39162402b09f8c1be3fd05ca33571dadae9e8d127d1d67dc5f08804f670e8f8db45b33ead6234";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ms/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ms/firefox-62.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "c81f40e528ec7f141de902432f1f367023a39889794a46de8b271e9c4bebcfbb4b6124dc8e0b86c560214c493d650389829a04c3f4a4d121b3243ae66092a100";
+      sha512 = "2f36fd10942b2a700b6901efafe2fc14e8a7cd97d41241a070f87edf4d1ebed63bcb1d202b1c557426bdd8fd96639ac263ffcf0c96ecad9196916cc69c9e3e90";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/my/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/my/firefox-62.0.2.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "ba942bcab35045de32a2d7914bf7f953dd1f683ff0d142246035df830d4528b47f195b8a6b96c95b62e2d03e89215c938072ae23b19af41bbbbc40bed3d0212e";
+      sha512 = "71001dd61027cd3acbb12f555a19ac3534c547b2d9b2c964a6bdb656524429ccb25b6c601422ec7f8af9e7d6319319e4bdf0db15df3f3833611d72d3d9eba410";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nb-NO/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/nb-NO/firefox-62.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "dc86c87a0e51105bd89ee579711aea9e61904f17afae27236ad12bf754831dd592f9ef938ab35d037b2da884aa301044eb71462a6c4ad26af97e9911e6356bd7";
+      sha512 = "2bbb7a4cd756757c0559294a487c972ab0c6bc6df005c948a24978a35f51c369b66269dcf6fa96795525758ae66e24670fe8ef7fa0f5b05b7d81bff79f2cb762";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ne-NP/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ne-NP/firefox-62.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "9bb1e18c015696ee9b17853a942537bf462101e687107771d34c4f62d3cb3f7d9debbbba9efdcf7acafd8a9f8c4f8c197b2df15c80b9c5a562ca1ee765867b3a";
+      sha512 = "4bd51046dd55004e6a08dd0fc646344f91d7d830249fa8a33284f4c66bd5f11b1913920119593e45d9488db1b9d7aad1a74b296226633d94a02c0c705f527a60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/nl/firefox-62.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "2fa2082a1a9cd71f0ae7019507055e6109292bdacc9ad4c860aa5ca9ea6896c37609a083981df309d2c53811674261147053ee6247908ec1ce7a2e030d320443";
+      sha512 = "408bf232f3c1e592a929ff2364b52af899aba1a7542e6199366a7bb0369ec14bf3c44964851a6dfb37ece8e9ffb342ce7448c11013c3013bb0d4e1d67a43e2ca";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nn-NO/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/nn-NO/firefox-62.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "4665302f9850b93c4cf178c3e2397e299716ccf92e4fbec9762892b17960f275c1167396de4073b899d4bdbd73bf06f87f10c36be7eda22934faaaa78925e8dc";
+      sha512 = "450239e4d62d03151b0ff093e04e4cd5cffafeaa91da7374390d31c5944366bdfd0361e6e59b162352418436f7bdb1ebdfbe959107efd14f0015de0e873cd5e1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/oc/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/oc/firefox-62.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "d0b9a462b7157a1452a54e2fd3d9d0c38ab478eb6c6391350c8c7c9c581e425262f42d33fdd0ac9e50eb8cf77f0d8b71372cf15b079254c2294f5bb613337bd2";
+      sha512 = "a7c00d91430494659a4a2285ae9505329e18a10985757a50f9543d46b6ddcb740cbc440e31a1718ba4b830661bed56a0054c5309b04bbd8029abc691b59f0c08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/or/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/or/firefox-62.0.2.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "555135a96975771bc9bef17601f1e2a2e308e07ba3681164512f2939da1892ac592a8f69264a365dfad36a473306d6d33712fc6868bc809ad5d5a3ef16eaf5e2";
+      sha512 = "e0ed4fc73fcffd0c59f87b6ed8d1ba4ebf8526acc79ab5a2fdbd689c1329d185bf9717cd34f0921d9ae2028a18bb12d485a0cfdd20dffb3e2a9b33969df943b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pa-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/pa-IN/firefox-62.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "a1d01ebf734b6357ecdddb3601b9062216c040966d633e282d61a28ecb830b5edb5152dff4c46a3cc273034fdc7110cc56858cbf31c6e90ada6efeb4130c510a";
+      sha512 = "8106baacbc84b053eed0527ef78f9ba4bdc94f0679c0d887d72bf19ef5c6a7950b6d8e9a35d493b51de031ef2e4720d03abb9677355a65b2a539c9e73a4ab633";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/pl/firefox-62.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "701b496e7d20e8eff7484db6bf5e15f1bac769fc97f69de028a0dcbfe0f681d0a9031242b30367833f8cf1f8fbb1acd6d469a225152bf5b220a38b369c740381";
+      sha512 = "9295362613e98387d10160af9f779a03c8318797e98daf39a514d70618eeffa53066113198257c6cbf1373fbcde33cef525c917c85fc3e838df5f918868e10b0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pt-BR/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/pt-BR/firefox-62.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "c4b3be3a9483ed76f7b8334998d75b293db031329852ec59ce8ae13e1184a541f2f35b5d1bce413ecf525d482277d27d7470444e477f297e361751d07cf64920";
+      sha512 = "d5bb188822c7b8e5ecba035585621685cd1b334950b8480d73b1841f871325236f9a13a3a4f0098d11588c0085c20fac7525a57cf83687a29d15f05cf9d9cbd2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pt-PT/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/pt-PT/firefox-62.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "389ffbbd4dfeb1c7149a02cdbcb70479be32ac8e91683570093f99e38b4c541f145ec27fc3cbe54f70ec3ebc21e5c0ded3b18124307976befd8f2ae1839c5dc2";
+      sha512 = "ee2f8aa32c2e20bb69ee291f3bd4ea931d5b2ab863f6f650bce92d35b331234491b93296803f5ede49ce49027b805241db44989bf48ee6d68722d262625b1fe1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/rm/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/rm/firefox-62.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "cf9b89f1828bec694147528a0db8a8ec4530fb60e8a1957b77c8202e95459217c95bea2f104ec303922074c3528321f775fd955080b5e012b8941bb7f6575bdb";
+      sha512 = "60605882860f1e1b805f8cb74539c421e45438aff07e79d6b3b1db3546d38950059665ca443d84617ddc9a4a3c104940d885f294932390170b3bc6c2eedd0529";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ro/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ro/firefox-62.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "44e3ac3e35af41616c1dfab41edb172b4dd92bc622aa53b8626375d782235ce3e9540e72e14b1d25dc19f4e44db5717fede7429b1fb245b644c20f2e13c0d7e3";
+      sha512 = "850063575dd69270903a031748e665cb8363105057f1e170e43f264b3a9b228976fc901f7e3749cee22e3d9489b3357240198dc3f22e20de5b9581729e8c601c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ru/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ru/firefox-62.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "7b38581a552ae9df2222ef9bd8f2c272cd98458d4a11c55a8f942870411d08c72da0c1dc5c4354b8e2e17d0a97794e4f2d59446a394e3c95376f5e7ee296d57b";
+      sha512 = "8491c625171c0bf7c88c3f3a053e5f49a7c56b9dfc7c0ea7c381bfcb7505ffdce6a1079d15c73ce6a4edc5f89125e849e8b5fe8d464a4440d4413dcf6666a0e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/si/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/si/firefox-62.0.2.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "dbb7cc9c9efd5c1305cb7c770db67ace1b10c2afa55d2dc9b8de896629e4e69e79bdc5d06cf3d7900635d03420c32e0dcb1b0b8ead25ab8fb3cd12a154eaf0c7";
+      sha512 = "bde4eaf6879cb40967ebc872738f5ac6b931f6a1a633886e35985fda76de4ea4c0a4ebc7e68585dab34f7f453cd54977bc84fbcca636d53d6c5eddfad6d13bde";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/sk/firefox-62.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "04f9b7c1977aff8144ad53a2bb7bc5aaaa11054cb8bd00b1747ab7ec34e3664d1fb3adf65b49b5d5acbbde2e1ab45ee642033e3ab57e99d5973ec853a1a6194c";
+      sha512 = "776ea025a2e087a7d8717c3b63e8a203f13ae7e44812e0bcbef8075aad1166f80cb6977970d88f68720772668cca982662c2172f1bfca02732a79daf45974112";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/sl/firefox-62.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "3202a009f73fab2326611c65ee97a8249f5ccf047365874db92da588c5cb8693ad1a7b7852511bbab10a9146d0beb7cefdc79d3269c3b7404205d616a7394dfa";
+      sha512 = "1bc1a53815d287acef056c981bf306b1ae7cc36d4c8acd3bf556f3a2f44e6af2c05bede49f04bf7fd591cc5f0be40dba10b38c5b64379c673705b57ac0853d79";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/son/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/son/firefox-62.0.2.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "a4f718670b73af088e87910197a78dace22d9e04bf268e4653709eebfa499ffa4a97b4048e4ac80c6a847afa598b0e19bdff07c6a7d6e164dfbf3d09f1070593";
+      sha512 = "ba3f5377ad15c8586c7e826ffe8c614ba71f49c9867caeb1fbddf9ffa86d513f299fcf39d750c7e91db88ba17533097d38def63c8614aca743946d2a3b0b0484";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sq/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/sq/firefox-62.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "8b67dfcd41328b677bb33a640c1045b3643368b8c0004cb55027d36ac2f3fb9cc99c272d132c355567ab0505a50d34fab80f6fdb8598cef09ea9806e19d6107e";
+      sha512 = "c3f35991e3ff9410c4829491acc4a7f7cdd61f9104778c168adf3e1d359d5d0c8cb57ef552aeed669f80098c546a72f7adaa09cac4f486dacf78bd381f5fad76";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/sr/firefox-62.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "51834193c037ca0e23f2c73800a351debd8327908f7c6b378a89424ea86b01a272bed893df59b1102760303592604812794c7ac70effcd50c20fbd676f4b5640";
+      sha512 = "df6bdface285322457f676d74703084cb677c6c429992a87dfb933bb3da25eff374dd2894f13c37616268266e3934a55cd61f3f6239a487595282ada58bf69ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sv-SE/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/sv-SE/firefox-62.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "8763a55b6a3f7ffb75afe854aaa54bd7bd5a5ee8dbd741f4348fd29ce015603f81cd98bed3547c628dafe98dfa800a97b64e281606223fbb400c03a0af332018";
+      sha512 = "a48a11e4b1e1bea955ddd73c77e7f5e1a7d03435b29659f7b610a089b604cdfed57893420d0c1827198efea6365a52ed236a8296646a980fabb6007b865a78e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ta/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ta/firefox-62.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "82d687d98f2e75b637e76416ed1b749d1af18c7ac140eab32f8fdf99238fec76f3f926caaf212fb42f054d51d8c807536da8cb0ac5354ad123a3030fdf46690d";
+      sha512 = "e01845b225c5516ecfc25afde98e9691b9afedf27405207cb91e655a9b48edb416786a2cb99ad73df37da41cb22c58958165836e5e6b1018c6c9f788f2b9337f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/te/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/te/firefox-62.0.2.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "2a690bbaf6f8ba90f98c2761d6ac6030fe17d384478a3bf7c07875bc6e3e6285f154e3e21db4b639602f205cc03360fb36bcfe26473ec48cb1749a65b781875d";
+      sha512 = "95b795fd6f995527d85fa83b122bfd9a2c091c792c879f7f4611dde63b4ddaf0502d3ae0ee33002363da359d1931d008c01e40611eea61f1ff66aafac2844f52";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/th/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/th/firefox-62.0.2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "ebc344d1439fc4fdb71d772b047466e5bc19a04a83de09e64e9c820d19bc057f3deeff5d0ec9bd9cb11ed2079f4bff459f3727b0ba92fb7426e2e186bd0cb4f6";
+      sha512 = "9ad3d99c9479155e20559ee1c8ef276a69b591be2cb96700075ca19352f033d9063d9f9b57ea9fbcab5db9bf46e1cb03c9b001e6254b6b0bee5547f8c91fb59c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/tr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/tr/firefox-62.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "9096da5a647463a3643e3e5f21dc51ee9be87d857004285de7dab164255103bca4ceb9d8474fce587ae497397c753803b8157c40d05dd8d3310d59e97965ca0c";
+      sha512 = "90fca950893500868edc6ae1c0aee417cbbee7b7a0f48e0f10421b3d7ba495a56e090543ffd097949c9bebe69784cb8fb03b559156863f9dee940aa867421135";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/uk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/uk/firefox-62.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "f9f609eb7f3050e95bff33de4b88d8e17949c4c167d3bbd7a9901cb0d19926a37f72e40a6bdde1f6c7610a3ffc67d7fbcfaf298659e519aca16592714c70bb4d";
+      sha512 = "18942b931cf09b03973a10e390ac15c6e5bfd1f730953b782b7929943838be19bf4a61f157b33979f1a8e13042f1f4facb08ab205b7825d285b9e96c0ac897b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ur/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/ur/firefox-62.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "35a755f1c1d93d9d8e4bd813c83a332a1cee74989d993921f987e023da90a851863f83b56a41c58878f5aed07b4e08e0ca9d3f4d4ccc8610544516bf903855c0";
+      sha512 = "7f16c4810467469385a88346f5ee3fac4d3d95342c6a6d37e0df7880f0b08896d0e39e77091eb0262a66ed7fa15c3151f244eb47ce4ea774ad21797b5da502ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/uz/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/uz/firefox-62.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "d957def873388aa5f5051ed3ab5cf51196f8b5fc83e2fc4b56476f63357ff26ef38e6f3d469cf4f117b094c3e31a0f561b1f5c0a90c85e827436ecfe0d61e98d";
+      sha512 = "8266d638c74a78fa26c939c1ba7a6abd05ede85a9e349135f1934a6e3df27e3f6172026486738cea28e50689b84c29c0dbc63cc8779faa11a6ae55b4f367c23d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/vi/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/vi/firefox-62.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "e7f10deacc80f55928f3f6ea4dff80142e790cf9dc814c38f173cd03ea59de45438fda5cce1073b0c9e1b528870c7d979d16254b038bd351834def51944193f8";
+      sha512 = "787e570afae27cb668d6f4b9b6e8b3097f02148c2e2974efd1c58e406354724def031f04fc69c0ed10a04ce5833cbf7bb2ae8fd77ef068f8f17bf2118d1305c5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/xh/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/xh/firefox-62.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "0e64c9a9c1ebada345f02d6dd40d2ab1ae157ee238b8716b011aeddfb18775c1594ae0f7706c4ddda97ca01c44304391570f526524f4f19d3eb5580a1839c19a";
+      sha512 = "805df0dcc24a7d77afca47335b31cbdfd0d0df51145c9cedfdaba4d865aae71697eee14e446351e6fd8db950e3264ed788f66d683356d4fbbab17ea9d7c2c452";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/zh-CN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/zh-CN/firefox-62.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "cf1381aeb00f19fa6f8665ffbda8a9c6c19939a29e16fb49a2cf9097dbb2674eaf4e32b658dfb126645540582c52ad86e87a9679c1dabe03757d57032e0d3d4a";
+      sha512 = "cb251f942c31cc0c30c46bab04f658567b16f379068e7bc946970ed512e2de08c6e3511990b722541756e95261dcdf96b03cb247072f0b230f66ba7afdb038f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/zh-TW/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-x86_64/zh-TW/firefox-62.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "9d28b0b773227d7efc611e300250d518b303b9e03396092420e8195872c6e8c78aed6f9985e491bb01f75c541299bb7f0cf78abdf25d3a8587b085e3f6489e0e";
+      sha512 = "afa5847337657cee3ec28896a089bfc0fc2b25750d6dc271bb83740ea5170e2f926fdf3158b0b136eabe0d2d6b4b81db1ecfabcd8c2049164af54cd796e9a7c2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ach/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ach/firefox-62.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "6de54e5cde101eff5c1edd43b7f3286f10cd631398f646608e0d6f22c9dc6d8dc2a3346c8d5fa9caf6ab1a82af8708ba3ee17fcf605d0404e2beb5d10b623ca9";
+      sha512 = "99781074276e530b9ceaf2cdb8f902673ceeba3df515a6c2c2ece3fb3dfa84e6f3d494a3a69346a3f9fef20d11f7bac0361eb80968ec7b9e76b603f8b001749b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/af/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/af/firefox-62.0.2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "29c5898b88cda4a1f365b8792789c854b954b4d6533ed7a556f7d0e3dde3f7705adf5a6c3bf14444268648ad3b3002eef49dac200d5eb89cbda5ee33e1cb4d4d";
+      sha512 = "bd9c6fe306a8802b22860cad8cb452b6591c0227e12ffc4a33db1a88b811d06725348e5f128d624240b9666393cef35b30f5bc7d12e41a046bb318dd346f63f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/an/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/an/firefox-62.0.2.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "484a8277cca9e437d8372f750403c71c5e4923b28b776b5809f58debb8d0d3ceb5d523df05691f326d06efba5970e27bb06abffcefc500748b04e99ee41664bf";
+      sha512 = "289c00b7bf464fb6d86cdbf24274514dca98dc47e78389125287792e8f77708090c120aeb5ebaf4688e16857c5fc6b78fc1eb6f0a7efd7afb62c22fee325e78d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ar/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ar/firefox-62.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "7e3deb89acab69012c5f1aa99219ec0ff0cb380ae5f1dd71eea078bee4434855c612c808a574bcf46512d2eb77b3e8f9c26ea524ece97b02699b2434d8cacf45";
+      sha512 = "412cdcb82e2d60e2f37658001638bbe50cdd3a7db1e9bb4cb0e2fab49b878fe64b62ef019e499c3a960bca3510266a0afb3fb4c57cc5a8b6bff22aca772e643f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/as/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/as/firefox-62.0.2.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "0836d6d22d13096db35f5ee3da13cd4a8504a55de73ce24897a8e4903eca5b7d56f244321d2b6b623a357b1741d419957f67ee65e71d1c71606db24bbbd95631";
+      sha512 = "8068c78be22e42f9174cd6f9e1e7dedff527a00865f722c6dd9062c6f5cce2b83693d0938ae5f56197f72f5af71bbb485b0970b632ca5dfec9190214558fea2a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ast/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ast/firefox-62.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "247817ddfd24b97b991ac916311e01871a831197c92025d3a2ea97937fe993869c7a12e118b32baa3aaca49ae469dfaa8e892150731b6dfdca1c4e0929c2ba08";
+      sha512 = "37ab6ad2899b3b115bd2b59f6be121e2d340c27eb745f698fd2942ab6424c0840273ddb4afeaf1083d9f458408b939270d971676e9b08e1f0fa409bca69f3e84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/az/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/az/firefox-62.0.2.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "4f0977cc5ce9e01c311d256d239a3e89dcc1db5b78b4c08f08999d7c52731fd58fce08c9f77a80fde1176a0a5289b5c59f06eb790cedd3625d96928dbdec46da";
+      sha512 = "5724ae7680d7e88061a4cc45706590d519a5bd769b204d06ee0e8e6e86f706b312b665354d22314853af0a73b073acf68be8b7c3ae9dadb87984e1222722b4a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/be/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/be/firefox-62.0.2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "294adf3029076f9dceb32a54330d63b10ba9219d9f688e3c7246e04fdff2ff10bdc24b577f48b18935c35b8d9acb2437a7d6cc3533fd6441b9027ca67e7cacc8";
+      sha512 = "6249b41382a1d2cdac2d9c9d235697a70bac76d0dfb341d3db41c0f329cce868ef66df6d2f249b4e22a1daf737d5ea3b7f2cad36a2d30b1dcd649fc1476218a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bg/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/bg/firefox-62.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "41b78104367cd25e67a38b71d3db6054995caa28fd0c4dfa0ebb494d2293c92c20a347fd763f88b65d31a514987c607102206390b2dc41335d00aabd9d5d589d";
+      sha512 = "a769ead4a10d4168d64ac9c2391c0cfcc5e0dc33f4521d6df73c5b53087e3aa073096af09adc49c901489e60af9839ac888483d63f7e9bcb1de2588236cba75a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bn-BD/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/bn-BD/firefox-62.0.2.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "79241d9dc44b5ad35ed76f7b33bc8be8bf7f5da09855df9e34354994554aff2ddd2dfe8a2a3410916887568fc92a70927b8cae4747f20d0dacb067206eec3d7a";
+      sha512 = "0761e32fd88fdea9c87686411ed87affa8875f2047ff9b1b1ec11376583001c9c9b421b2b27cedfe883cc5cd233d4d3a932aba74e50cbd74aea63a6aaeb64c8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bn-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/bn-IN/firefox-62.0.2.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "5194de3d21783d335a11c824cd46b0e01ea512f900a7e3fb45ed2567501acd27d5f5bf8dd68f146ff550f6ae4c70089d539f56823cf7280f02b67d5111715760";
+      sha512 = "1868b2d7d6f32936c6072998afd1ebfc232158940e5270bf483c6c29a8a30682f0ba729161e9b0aeef7d839c9e9209739380a20b8b118c49112bd71caba03ec9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/br/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/br/firefox-62.0.2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "59dfe19ea10c4698067a8ca70143b160ed5a73c38e0f6ed3a14d9a60209378acfaa1f8b09647a1a96d519e6fd6a34cb7e2a8bc3cc276653842c2bb3a6ee3cbe3";
+      sha512 = "43d1691d6b1d9aafaee55be50bf8c4934b75c0501c811314d12e1156c2b68cd58914362e167ed50fdf5267a0d7a2db9730c68bf318d492bacb8c33eee7bdd12e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bs/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/bs/firefox-62.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "7e6069ecc137c1b0b479159fc8eb323a8c417c81edd8c7d54498c47cea4f1a2fd4a1cc52bed17b899ca72df8b0fbaf88e1794b17f86086d249011ccb592ce5d1";
+      sha512 = "aeac8dc018ed59e2aeb68b63c1a1d6281e543975844e3ce5b7f22991968bf0e05f40cdf1ad3bf434cf9de774363b0ffa6f96d1c0b457f0372d4d1d943c0a40bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ca/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ca/firefox-62.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "932ce6517bd55ddbd927eb28935bc99ff5576ee924d239dc490fa79b3d90dd77f579a7b16c0b4fe4ddf8fedb4e825664aee7fe246145ebbe19c8f8841d098464";
+      sha512 = "10b6c40701b7cb8f2543e97a61335f426b210273d46d542034bcefd7d23c95124cada1d1df85c3b5e33d25e8680678b18815ed0c8ed58936061f670b0abf1d87";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cak/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/cak/firefox-62.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "38c4ed4be2e79145056bfbc5a476e3a03c4f1f6aed1ccb834a7ddb2576f99fc52305b93939145ee1e7ae9144b656e857bfcc6b084ea4b501c3a574e10d7438a8";
+      sha512 = "029cfee850c3ba5ac408b6db45d66dd9849db392097dcedc64d637756ffba893770a93915eaded6302f6e667f072949fe6decfdd918be292abb9ab8d1300c2fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cs/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/cs/firefox-62.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "1d569ba50f84ada02f0962e0418ee7f26e79fe19cc09f50dee4350a59262ddc87440dabbf10129d73172e512eff5904062f60561f4bd2d4eda395bc67af90dd1";
+      sha512 = "ce919ca42a629f171df4faacabc18fc3db0faf2d38f04912720ba697612215e0c26f650781a535b5e956dca912fd47d1d9b9528910b8e9b7a18841c411e25623";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cy/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/cy/firefox-62.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "9294f39bf32de7eb2a1bc2480cf7f7e51dcdd124d3281f9e45c4729b6926002f8ac99c30403ea53a5c6857077633ec08e0c35f5160ea8e08a7f5f881e8a90748";
+      sha512 = "727827fa6b47cdec5048f40005872f021cc506d7c72a7f1a6bef9f736612341fe3cc6127b3bf005f63620f17b180a00c3fa0f799f63e685111119f9661d9ca7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/da/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/da/firefox-62.0.2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "77bde4fc9cacdec311b513045f3f026c44d7c199cfe0520cde20ed711c1cdb40d6b64483944f4da47b8fb280764899ff5931a8e5639bd0a8a4e03425835d8f2e";
+      sha512 = "e795a7aaa38c28733a8864928229d91d752d6f0fe108bc5a3350b34e783155c3be14a5c0261eea26642097db2a583a34553d746d6040704f34de82953952f21a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/de/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/de/firefox-62.0.2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "b2bf1a5fc4536c3c0822d84c7f0138f04f6bf4597804eff101502d3d782f2b22fc54dff966c2f32821471622cb1602050de1c51aaf9f64c63314f8ba002ea201";
+      sha512 = "56185cb92f9a246140b58119cbbb6a128905c8e244a7ed8917613a65fe8f87a542b103afe69f1fa542e47efca18c8666e669c266e9c107661b800c5e3b4ebb75";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/dsb/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/dsb/firefox-62.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "812842664c8b0088f33acc42ae1581a33cb2527d3aaea0ed102fdc27a088c06008b96a3a052f95a900694d869591311dd986bea2e828a02238aaff854a77aaf6";
+      sha512 = "ff30865cf3135f466d67143487ad34a50b73c11000419b2caec1c232d4efc805cee5cbd282bd1e0b9ccaf03ccc95e08ac4d1baed93abde27b45b0f2af5d71fbe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/el/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/el/firefox-62.0.2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "f1116c938bed2333309d32c13ef69f806418c14fb8a2fc10f63c932d8d8ae169aa76a8e3835eb6bb2d61cde7c8d8dfec56240b8280695f1c2273899bb7c8aa4e";
+      sha512 = "e22d89c822843db26e05834c088e5d687c6d315a870ef2457f13126bd740135016ebacf83b9fae131128b4fcf62b474a68fcb1fa12098aec22f199a5871e63b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-CA/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/en-CA/firefox-62.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "ba07c206a4b4ee0bf27ff82e8ea14e3ddff262fec11e088a114253ef4a4a81951cd5c85cf6eb9f6e1ba06f97be0bf5787f5e26c65b7f2aadfedf27f968146efe";
+      sha512 = "0f462a6900bf92513c40f28a9fd2ecb0fb3a69678b2b0091e6495b89b9a2fbe6c805e48b2e55fe274996ff7a15c32294d02a3e025b97505f920069cd71b23341";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-GB/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/en-GB/firefox-62.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "558c10ec35144d696e1458a4b70de954ed3c8d3f05d5d1ae492374ee3b90752a93d55e6e41de30a64a3ee3b9e68bab88aa479066b849971d78121961ce2aaab9";
+      sha512 = "dd7a7fc0b05877f1e1f297b123075695c97247e2641311ff646b953e002278e2e16187682226eb46034cf3959880b2d17d74314ff7dcc654b1963beca6785410";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-US/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/en-US/firefox-62.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "51d606c5d9fdc2d6b611b1fea06c54ee4a6ac7666b4dce0a26dbaec99d110a2e304f88108d307b011f27312f8b935fcbf473f87b52056a465b667f8ecff9a48f";
+      sha512 = "bdb45cca1c207502ae5f76fe10e4b73d3f7e6079913bc9a6216e9325b8c70fac37d14e32b4e5ef6acadd73c301c3ca1aa2d72a5d44acc0b6cb0c22b481de2e46";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-ZA/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/en-ZA/firefox-62.0.2.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "b88ea68f4eabf086ff2f3fa6752cc42bd19391029d4c0565342bf24d90817717e5f07f774e164df234eeb735e426491adf35784dd9096475635365912e57ba62";
+      sha512 = "351ab5114b25daf11ff2ce1aa377e6c16a7adf9807a7609c97e04f30911f8680da727c6dd1d3067e028978d3f6f793351d99f500374372dc22b11ca760e4d36a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/eo/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/eo/firefox-62.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "b97c269786efad57ff954d27ec69a4983e18a7ee4e0ffdc6925268830104103a99a31247359eba915be0710455f0626379b801d5fbcf501f30e3cc0b9736eb32";
+      sha512 = "1ec40261c42db667f1680361e4e7f12db271f5fbe6d213d44d0722e692a93421bb92d73193f87f42e43df40700cfddc7913454d6a64f5e15fb78f08d7a5a3c0f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-AR/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/es-AR/firefox-62.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "a5fd087a8852f39e1208b388a2507981af3d989a8b86b1b0e2e83adcc9f6a494116050ff811e8b2225fd113ef1e689bace73a617c0e569df627df7e9c655a14e";
+      sha512 = "00cc8c232fb4b7b2c56aeed098719d60deb26abacb38f8a7ffd9117c8d8875c838fc702413a6d8584f862b35843262e2bd31074bfbbc7cefa6f62247d8a16abe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-CL/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/es-CL/firefox-62.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "bdf7aeb5fbb80711d7b8dd7ac30e544847e00f015f7bb8835315f5ee3023458bf781a368f0dcf11c57737fb1d0f077352c0eab28d32e801861bba36bce5e52cc";
+      sha512 = "70da97fd43b84b5475e707780c215f73b05a423577f6ccb67a31e01370842319d40c6d691c99da138db881d6c5de8f73c1bea8287fb9ba1cd3647bc74ff8125b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-ES/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/es-ES/firefox-62.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "47bf0dbb55435016312a6f6650033f28710471e7aaf14e0dc83488f1ff87e559de552fd95d5a58864420032392f84de06d8a1916efb8128423826c7e4577ab44";
+      sha512 = "76b717e852c1aa2f3801a5460a8f0d51256486d5bb688b30cb85abaa30eb8a441cb28391988ef8ac4fdd1a430e0c09a2c298c8738f7a76e6a18742bc2a4f3998";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-MX/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/es-MX/firefox-62.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "79e42f01744b05df6c1c7928743914ac28f3dd696a6918a08000a531b050fda95ca621ce0484c216f2eadf728db867707c1ec45188c70bb91ee611eaff7ac565";
+      sha512 = "e4e7f734ba533a0daf56d9c99881c0c1c758ba6e492e8e62b67944fc3a6c42c82df7e4d01a27fe797077708d49c810a51bb05d3fa4f2cf91fb63548f82e25322";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/et/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/et/firefox-62.0.2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "8489f6dcc733debebe1acbaa86cd093e5dcbdb4c8d60480414ec1e27710bf57590fef3a29fb208e9eeaa5d8858e5807d7cf0be5130d57bfe308b7653de431db4";
+      sha512 = "6b832c2b71b0e42db5a2292d90f1545ab545845f30b09baf277bd48597975e426cb98442fc16b7053d5c573d50d42e37e89cc49d7f325835aa5582262333fc4e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/eu/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/eu/firefox-62.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "92f49ebaf7777962eb2d1b13043a10e82cebcad1a0f43a3527d7e7a5a31e720b812febda86051125e64d5f0355225dcb6cb496df5ace1ed10c2c6a4cfbe16cf8";
+      sha512 = "5bc67a8afec07f48c99ad331257236cb2fdde7fa23afadeb3de8c270d78e93bf855702bf82781c9c90eb5a4a0b9966d83bcc6d8f357ff5ef2bc265378200d674";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fa/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/fa/firefox-62.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "1bf258264b77fc9cece834363a12c34be719121afd55378e23fb2af9cf20da2a7ef4ffdb2d39c34c9970ea5d259a47c894b6f9d703ecf75834a2239844d783e1";
+      sha512 = "43d16efdabc3eb39e3aa924387040f6e92c80333087369b754065c34403d202f0881c993bf667322f8ddf303a8e066c4203b2a4daebaf68ce5b95a8c1cf80844";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ff/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ff/firefox-62.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "0b60ade68d6f4b9f1fda4a3ce36fe54e69583efa5ecb41443f0f92d394257449c2d5ca7124d1e194fc7394ba0daeb67f828de4aaf13f78c89aff8dc273213ea5";
+      sha512 = "86837496c81d9f1209719d46aa396d17eca17a13f111ad0ac3b94f1d3f9bc60ddf8d8b10018e41100e091996d820975db897abb470fc85e0d87a0ff742a67b34";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fi/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/fi/firefox-62.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "f5cd4ed69914705a01765cce884e3f3fd66cea53e85d33da378087ac7ccbc9afcb1b2ebaa78bb4ffbdca2fc34b2ce4aebad6d55fdff44b8740a815265026d2dd";
+      sha512 = "baae77ef1bfc59c87eb72c3ad6f8524dbdf5fda9502abccf297c3b3f6e1033002d9b4e5b341c9fe101bbdbc93dbac768bd962ac9378088c9c567ec5d71ff00d4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/fr/firefox-62.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "3dc1eda7eba9e0112b246a370a296c6f5e11f318e514d08fc800d198afa5fc692f13ba66fa7b2ec891929c53572ade6caed21f967b880262cb36718fd76e18c1";
+      sha512 = "60fc885a6b5703a88dbbb60bed41296e2a1bf73405eba33a82e5f916ac0b22972377aec321c2b13d7007dbd94fdfcd24d43fc8f0acee37fcc9e23543c5a65f67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fy-NL/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/fy-NL/firefox-62.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "576b0645bb3c2367138e3f385282f77c72040b0a4c75ac5f39163a7f1e23a34e7702305857ae2250c96adcebd587c1cb83b1e7d129667307089b38842bc4e175";
+      sha512 = "945c2b7241e0faa83e1dfa1f36a3dc86cefb03d3c48191f2ae6b3dfe8384ae848440731d69363197f724da3c32988e20c0bbfa3adbc52e7eb99018b7ef8c4510";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ga-IE/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ga-IE/firefox-62.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "416cad5b5859bf1565f7e68fd3a53ca8b180609a488e2201f70d42eda3186fb1e22c647016c67fd3068d67b50af678bc6dcd96194001511844afff43e31611bb";
+      sha512 = "6b3ffd73216ce3879b26211a3dd26db393eba8f0ec3f35b6626bea3847a614d6624f1fd6fcedd5ac00e5bb08c9465b8ae63fd4105a79acf86bc357dd331d44c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gd/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/gd/firefox-62.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "167ac1a9411d1cc3ab052d3b206de6a119e8b56854b7e9588ed68815e7c9b9e1722210951a8b731e944aeb8b2890095cdfa7d73b03b473a5ac99a90095de6917";
+      sha512 = "cdea3ed1ffd14d02d6489983832cf11f87b1f17bc73539e4b27f7a76f267b491ddd3163a80ef9a953e3c79fe184631a32be842474427d9792b2d525df8006ffd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/gl/firefox-62.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "efefb9e9d53be16fda773e8f40073c357c4b46cedecedcfd311e890a45810b7fbfb368ea3e93b07efd0f9111b9fa7a67808298c0ce98be2c8bc7eff354f7efb8";
+      sha512 = "b098ab10e0fda3fe67a04bf3040112e08ae1e94e30d65a076fa0e1f4d4e30e1be99e9578e06650f2fcddc6cc6b57309afbbda71008af67ad97caf9eacc7dd550";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gn/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/gn/firefox-62.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "044c8e610d639ac8830b00ba2e4e2ff8e1bf827c3f91101edd45a6d478b5b8b99c1100c9fb2273a6fd378826f0bcbaf8817cdf1e3303bdb1b9b0e0c01cf095ec";
+      sha512 = "a83c0134556894a375ba91137d9513322a876299edd0347eead0869aebb4b04003dca12594cb276e3a521452d4b6ebbabc6be8f79040514f26f6827f55c15d3c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gu-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/gu-IN/firefox-62.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "433bc4b580bb3d164ad78a21ef8894e053b4c6d972d5e4aa46a9b8ac27cdf38e395164eb46e24815cc645d8048c237371a3abbd1bb639e69b65efbeff00a30b5";
+      sha512 = "d313657b11f3fecbb0ef26a0c5a2d4b9ead411f2a3c55bbb4bca3ea3a6d861ee54ed1950e9bd5b14b24b9fa569c7c67b73807353331af60e3cd942b570430a76";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/he/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/he/firefox-62.0.2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "d6acd3b06216d4b0f0856cb6576c36381dd9f48bfbd3543e410eb0e0e5aa11977cf3d68b38b0be7b6700831c1561e2a8dc75eb5193637bbd2484673d83bd3a1b";
+      sha512 = "a05a94f0634f1a857eab463825c97ebf2fa1b5315c44082095d6fb674884b77375968ebd39df05fe6f0f3892b87d9f1313532ea022012cb411eb32a43e1d01f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hi-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/hi-IN/firefox-62.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "49856be15be3ab0ca687f8d6616c481d61bc0380133b043d394cdcd21d1f7cd8816b2bca5538f2e601a32ffa8c51745e89f537f62bfa853da42759db70186ee1";
+      sha512 = "e4cc460637c6aefab1b323ac5a13674f9f95eaf5cf0bfc2020869a196fd13f1708814b33c938981017fc27cdaaf57e75591ce2917cc66e5f97b3c8f22d3d44ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/hr/firefox-62.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "0040ba7333a13820e4c0a85fb24c30131d4b477da3da9e4e04296088d1c0e938fd495777aedbe3bec22533a6c4766be902adbd8b470a81380fe4dd23f831d0f2";
+      sha512 = "74c11421c3815b5772cd9a5f74e1c48d914d335babcffbca984187b72dc7a5db0609e7b31915f58d358a12c52a0db204ff191c78af28609c1e68d002a32f313a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hsb/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/hsb/firefox-62.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "715d14b52fb82f255300dbc828ab05fd578f61325cdf4d4cf86f1a47e22fc1856b57bb459941a4bfa8d325b7168fb0e39c075122b56de3455933fa89927f025f";
+      sha512 = "8b399983719f73f65d2db17af40065faaab4793ab32ab1596e79b6f844d43fe4bf3386343b50a244480bb9f724defc795a6479703cfdce305dba0321e4b5fc09";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hu/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/hu/firefox-62.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "deac0b43865960d665f13a2f0a77cd9413ba9b3172fd2660695464b5f72944f4013f6d9a47801e528db63c3e05496aa7df890624a39ddc6651ff5e8d0d02883e";
+      sha512 = "a5443cc52bcc5881a7297f2f200418e2a9791835f705d472bb657caceb0bb59f8dc1a7c424b196c2a66bf1f0c042d092a55c5b0d04a085dea702e11e433ed98e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hy-AM/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/hy-AM/firefox-62.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "22e134785777ea4e4fd72cdc7f17765d5bf8e943be33a0991baada71fb254f60f9ce9b68b4ba5640dc807a6db0e4ac3c81784a7a33e5096cda1833b22336f9de";
+      sha512 = "ea3e471c41d3e17c99c5b819ab8c3de8759a275d1ee1af66f133f835ebb6be9c7aeb52ae8b6f79d849e489e0c8f79f69d557d101efe681b27ff38b4e8b306b54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ia/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ia/firefox-62.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "91112a783ed4402cec7ce357e68806609b202bd1553c649271ccf4cb90a724ec612951b3acfe0eb64646957870726cb40f66b4a233cc0b73fdeed51083d6894a";
+      sha512 = "8bd09d0a8bfefc1a73b3a256a2e5be976b88998055299485c6270afc7ee7805a90e6ea9de144bd5ee8d3e40c079adac1dc29e9beb6d7ca376514fbac902f8de2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/id/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/id/firefox-62.0.2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "8b87e2f13550334a96bde04fb7d61ac963548e35de2717b8738fd14fafb015944403a1bf175e2c13ceb7d4f482f5a6d56b57b44cf015b6dabfac3fed77d86f81";
+      sha512 = "c19859ab8b24aa239b0fc91930d8fb581850e631a9aa9033a98aea0287055d2a02ca6ae154ea23e37fd407a00999af1b5f7ce0854865b4b19a8462ccc3838cf5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/is/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/is/firefox-62.0.2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "8ea8972b5dc06bd12844fbafff92f6f493f604ebe03139043435fb5f761098cee81c0ccd42b67bcf3c7d1b370f3382858c08d4c14eb24a75fb851e78c51c296c";
+      sha512 = "68fc21b8b3aefe39bc6e87e8d90fb2652f2125af45520e7f91eef12615aff81d0c6237f3fbacce99259761f0f45c7b49aecb59894f161faa8760184271b2fbbb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/it/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/it/firefox-62.0.2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "b50a422dcd94d6ea69ab22426d6f79b3997313bf4e0e17f2af31d8b64ee85d603cde1768a730b279a10ff87639ba2af26185bdb81ea4bcb7b61947b1836ab700";
+      sha512 = "8c8866bff0ea8c2e70a82798253334feca4d96d2e79d37d479f8bf2b5580912565ce08bc47777ff9340ceb4e5677d01eda6cb1d28f25274bab400086493e4610";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ja/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ja/firefox-62.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "f52d31f997b291e2a0c9cedaafbcb5bc3ffd2148b52700eb5c140846f2809613c9061f339728b1810bc5f899fd208a3eedad06ace984dad41fac0a057c101ec1";
+      sha512 = "56e1bd61de818e9271d483bdbeac7c8a95e00a1a2acee2ad7d7e5779b0bba452170d8e0fa6463b0f978ee3c3df720bf338367b8b1f041e5000054268cf267af6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ka/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ka/firefox-62.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "e155d5c70de47d6f96f3f0e34ee317e90ac1aaeee4be68ed265d4bec46d52e6d67d7a140f3fb135dd086d9d6cfb5e8f80063a85f07e8b2197b23233a122efbb6";
+      sha512 = "de329fbe61b7563aaa2e62b1dad827445809df6f675518d7d19d9483acd6e23fc502f6abeabc13ed7c5eb2cc5b26a6ad0f0dd431c733f25a68a0ae7e2ee9923b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kab/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/kab/firefox-62.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "153ed4ce1692e6691222779860a066b27dc9a5e747d79f4e1bd3273541d849d4b093062b3ff8d702786542fe99caefcde13f63cada7d0f67f461531aa32603a1";
+      sha512 = "f739aa9432ce0bd8bea4917f590b076c0d88643aa595be951dfec27872d534fa3926a7ed8d82527e95a70689d365c1219d164cda79e06b7418b90652bd2b7cc7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/kk/firefox-62.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "dd88ca465251b9489e766c268755a66babdcaa5962d40ddb4ebdc3f100a31f34b9b962bcf5fb5a0e46b2871e7ebb8d4169982a3a7174bbdaf5e6716274321ae3";
+      sha512 = "131b3ab83b953130cda7c9c388bf096edf90c424f86d1b6f4221b3601829a2ae0b7cc073a9336d7e4af588e497fb5df7731cca80a8413edf40a2f605927ba410";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/km/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/km/firefox-62.0.2.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "ccb473d36522f34c889ae3d211a1cd4ebf4e60da341c51c34cf05d9d8d75615b91eb4b00e327409c6fe406aaeaa07f8eec53c364bec50ae87c48c37ac1602e69";
+      sha512 = "6b0f4a83a746630b87b5a6c933f9aa65d6dbdb2e686af870562800aaa683371a23fbe79f31dcb0ef6ed397f556df83e1e30f83cb493921631e6ac1c8cbcd37f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kn/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/kn/firefox-62.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "e1c718690141b6e89f4df017d5804efe07a1dfa838f1c23ca14b90438458278bfe90e178abb5ad6c52d43a993b6a65664c0e801a9f58ac57f9300a9bb6f9679a";
+      sha512 = "e4042bb8884ecf46396e9e45a70b57c22b0ef76dd6d452ee0609382e87669e6163c1d86845aa904e13894e750eb2f35d1c9a2b7987aa6e7d3fcd5eaad38d8199";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ko/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ko/firefox-62.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "e916fddce4044fd924f7aded0b0c082f82bb50fe0f7587d7aed4782d545be8b0dad67ed4d2c41bc75360f6ed7c236bd7c40cb3503b472792f1b27c8f0742f597";
+      sha512 = "02d30f4b2cc7285506239adfea681c780d0e16c1719c6cb68c908c54388e565bf98f1a3a3d98449b0e55b2cdda00627ad6c6f3e63fc9ad10f8c96b2df6138620";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lij/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/lij/firefox-62.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "ab86bf8a92b05bc5defee073afa19ab00be704ce49a2d26f032edcbb60d9e5ef4e7a6196d31bec8d6e090c586a88d6e9b69f576ed5e587ca09dcfb60a0661b3d";
+      sha512 = "3cf57550bc091d756c5a2bb707aabf78cfab1660e1486c9276de5ad37cbae91be24f2170f5b20560ecf7f53d21217bd738b4e4277504d6f8934d3fe1ca5fcb1f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lt/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/lt/firefox-62.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "d716f7fc2c4015f97962d07ba7ffd6903675a6c36416765f2e81da43f9e4aba759b3ff31bd82bb7cf64c7d8b99f9d7454716f4ce6daa022f9fa31f4a49d9efee";
+      sha512 = "606f27cc78c5ee0ea3a61f6110611ecc10c35af63cb9e7c5fa1d3d0ca7a74ac8cd81fec30c1ffe5573c27e0a7f5f04ed82105b8cf26b7c22d648ea217cb57e83";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lv/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/lv/firefox-62.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "453e0bbf9eb2e9678ed029ecb797b701b4b39e030f9555bcca7eb6d56676bb44366e2d1ccc613b12a09f95d99ed08f9d3f34cfc9dd16cf38c9ab8e162dbae3e0";
+      sha512 = "ab028d6f31a966ffee99cbcd5263b18cae94c6e0a6e3e055d2c86354849b68120d870a142678184a32f816c7e5803d221f3230b895c6ec71dda20a6540101c50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mai/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/mai/firefox-62.0.2.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "75e863c56d68cf2304f0c6c2f1861ce025d934d033341c23d3b95a70e73bfe66334c3beb77d9fd597f7b4091baf70729419ce452131009ccf03d2d33d16621c0";
+      sha512 = "faebf74c8a194f3dfe33addea35965b11f3f9e0c2b4bac4f9e4056c2248df24c26bc9e5a5696fe3f8c2e30e2172dae03fddcffef09bf7837fb6dd9fb6a1b3075";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/mk/firefox-62.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "bb87f94a4de4984544477837cde4186a55309eec70b85f0cffaf0cfe747b7c761d9a6553adfa1ab1fba72d732be855e2bb46e4c7f22a0f25529207b42b6da396";
+      sha512 = "dddef2e42aef03d11327ae2bc186c0dfd25e81b11845b319848e7c7253c101d32b2801548f6444f4ca01a91c365cb2bc6067e765490f3b876d149899a9edbf3e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ml/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ml/firefox-62.0.2.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "5754b4a0a3c6c67191f4ef3dda7bc208766ed8171de772d4250033039b2b39dddc3bee800a28fffe41c68cfca82a5c9c6005625fc6bb5bf232b256d7bd58de71";
+      sha512 = "0157abf3d8dbd54f50f6a17d796fba6c66e0270649b8dea1674a696a036d2a59f5841bda55d8b326d90266a198ec0dea3a65753b09fffa583b104c976ab75cd1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/mr/firefox-62.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "04e40c1d060b848cf957af34079f6d1cdd12589b0f31932f15b5ebf837e37d84d332fe3ee4a54c501ac47050233f891ec6617802d03472ae9d7e45baca809adc";
+      sha512 = "9c6aa7a0a943b8f62f6888effeb65c6c3f36aac3353ff54011eeba06ff2bb0b66ead6b75d1107ffc358184df927cb2dc7cd3bca183fc54879427baf74cb8e570";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ms/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ms/firefox-62.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "1b84fd0960c4952ff42bc50595683da47545fec9ab10d7b3fee3e3541b2a47aee084526766fb2bbf17dad413f4dd2dc458cb0c3e8153b7ef897a9573292abe2a";
+      sha512 = "b7a723f79a18db5b3d886c39e76a65975c2f6229022c62cab7d7e38c840206d9004c81da1783f4bf0cc373438518f1367f4a34e3764ea9919568ed4c8725c94a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/my/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/my/firefox-62.0.2.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "95fd60b8c2e9b0add3163c67a5b46e794f0105621293017838fdce48cf90a0b0bd62bcefec2693fa16b0616260b39587bf3c619b506d56b072f0c715398307ae";
+      sha512 = "5538fa15d3ff02409bf9145d384e1c8e28a182239a682aa5beba671c09a0b813b56af6482476d57084af6a5895ad21af1f6ead71ecf23ea817780aedbd33661b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nb-NO/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/nb-NO/firefox-62.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "05c83c17e5470f009ab369d0c8a1c64cb8ecc008161fe1ced3ca85e9065f36f7ee4e220f8ed7a0320305ac31b35a035b5c8f7525b3b04c6b96e95e4044418f33";
+      sha512 = "8349c51a6b01301de6b0e0e37b665f44bd83abe9f771bc086c3f369534b6d4efc692441a46576b2335afda93cd8dbeff60ce17936e205e3c7212a2ef1b2844ce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ne-NP/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ne-NP/firefox-62.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "2ad4756b8800554c54aa1f47effe512de332a61fcd7571e27ae83bd5e0100cd8b60fd5d8381764f9bc2b1d925ec4b53fc3c6c6a88840cb12f57e9acba892dc5d";
+      sha512 = "f16911685a7d233a8957780c5526be9e94c07f73b259dad09855b8c21bdba1756ca70ee71dd7b732ac56555135d749584986bf4501adb056373ded74f96e265d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/nl/firefox-62.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "a3ba32bb48a6bc386d49e4ec703f51cda3bf917673e23965d7f5e7977dc8ae0696b375535aa04d1a416b6b5655cb3302cb9738a238d9cc8a6bcb78dda52afae6";
+      sha512 = "07e271170d05cb87cee9361efe8fee2007ca032b462ce68c562406fde581f4baab96c2ccea66cf92b8e72aba4647e7bb8271ec50e3adcfff6b787699b687a23c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nn-NO/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/nn-NO/firefox-62.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "35bac6119415eaca5c8d9fd2d57e0a550abcd7d069454202a02ce6418f9e47ae59563224763008f23d49604cde09ad251dc8785d2205d4e9623c138a97b69533";
+      sha512 = "eaace3b808dbc919d05a9701e7af2bdb241d57cb0356e4eb60b4706def37372a16b7767540947efaa91d5a3f338785187f83caf8bfa5bffe5f4f92aa3bec13d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/oc/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/oc/firefox-62.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "40d3e74b204da461cdd79163cc838e538a5dbb8c4e693a59d801202363cfba4bf48e01bcc87d247dce6b1fdad0a24f2bdd15272399e407b26293156698f7bf7c";
+      sha512 = "aeaab0fc9ba77aae2c0ddd92d7096c167a99335b3d795f232a24e685d49b53678bed59b6e873ce1c7667f76d1527bf685b910bb51b8defc539999500eac14d5a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/or/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/or/firefox-62.0.2.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "2220ecdcb26b459ebb0fb3380bb8b9430c1a09aa899418b18a765a4ba76c8d35480f59b71edaf6047e0eae04146ec6dd6bf25ccb619f559a260ff6f2828a0db0";
+      sha512 = "92b82c7bca322a9bfb6e6df61c9f2b6d82cf39c67848f2905dd372a627eb0379d235982e5634577825ad72794fd1d49b2e591ad5347977dac9a745d1167f7467";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pa-IN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/pa-IN/firefox-62.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "91425dba14c27a3bbb744cf5added1545c071f466c6cfb77d7b2ff0b0b5ab289ffcb56821023e50d12deb4ff29cc5ae490c028420384da84811c661d277017f3";
+      sha512 = "2aec320ba120dd3632fa95599a9934ce133544e7b0d15a74236fb20435ab0a9ad44d6515f82897e7badeeeae19eb80d6b68fec4d000d63772d4e5ccd1f11d1eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/pl/firefox-62.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "a5581c2e2d7de1187967af10802c4a6577a5bbf9a0ab56448b0695ca3fdee845117fa364ea53149b81a5aeb3ddab22c58ff65863fc981445bd34858766fb438c";
+      sha512 = "b62565b94eaae3ee225f2bbc8981f493594f48d40e8e8d83564a6d4ac6a4194c952663f9db52d7694993f08f714463b7607d659790236a727cbf803b084eb73e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pt-BR/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/pt-BR/firefox-62.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "70a9cc592980afbaa3efa37b57e190f6bd6c76fe975ee16b3a3b2e3498c65e792a83870f569836fe79fabc289c201b7f6764d4d512f9d561058eb496d1bc1cf8";
+      sha512 = "2b218b66feb456a86919b395d1cdc40aa73de6ebbca3bc4135c54d5dc1ac993bfaf169bc7b0d2d770aa6f4565e71ead1fa2aaab02dc7362a9f4e5a896dae2c2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pt-PT/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/pt-PT/firefox-62.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "8e1d94b4b3e01e684387b4e3c9439ee1df9712cef607f370d63ff0072876c2ad9e22a978fcaba14c03802c8fd5b559c6dc412fdadaa6a01425bb491852c4ce02";
+      sha512 = "d89122b993083bee798279c72a2d6296a5b966f7ac30269edcfe17a2036db648cd3e1e77eaf5f2479afc3c6831657267b22f2507176d62ee08dfaf4c100e074c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/rm/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/rm/firefox-62.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "77500b96558c055ea90750d99aeb096d789a920fac4fd368b95a032cfa565ea0ee1259503ef0d198c4802bbeeb847a3ca22f06ae79b6e554c54d336a99f61687";
+      sha512 = "4ecba1d3bc6b3bbbc3ca974afa86e9b6e7664a0dd23605ea34349bbf822fc2098e7dd394f132b43e2e4127eeec36ec820710391671405b14c414d966540b63e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ro/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ro/firefox-62.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "e3cfec0059f0372d2b3764a4c3809b7a8c9ee6e795bb1d8eccf663feb1d054be58c15569b8dcad55b5ad37a1332d950f5286ad88ca5db55441c1cb3dd879bb8d";
+      sha512 = "97e8ebd7bc491bd320106765408bdd88542bd932c3c1b43a373aa5679f20e2a0aa12b48182454ec36812dbf4044364850cfe3e6878bec670ee46e8971e9293cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ru/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ru/firefox-62.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "91077e66da0403828807fe1a3ee274ac162898efafd651b3c243c315c9f0f1cfb88925e738b9bf25fa7fc0c7b747f2a9f2a5a1c77b87cb83d3aa620475239822";
+      sha512 = "f8f433e0d2970d028a01f1039951f1e725cae8e263bed9f0dff64387913ae269558f037d672a65d32614408cdd3267ddd65677dbcf212188c531d04960266535";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/si/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/si/firefox-62.0.2.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "f770321771e965776b55d7681783e3782b7ce4df3c3d7cce581a3de1db0f8fc8c3ded3d606fc7f7f61e62b33986e8e05ff64e49427a8cb85b68b7b6fe43f6c3b";
+      sha512 = "11620e27c01dd91114d5e2080b430876282316ce6d527100305806314b4e7fccc38f2e93165f3e544cd3ef63b03aeaf738d6079201a0f7ae3f867b2e0b28239f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/sk/firefox-62.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "150792fbeebcd0969fdbef0827b617f83383bcaaf3eed9dac0790aa0ffb893d4498dae29eb480fda05a2feaca0428cf600bfb3398dfbcc921e92cf2ca01c7a1c";
+      sha512 = "0a43e8fdc1c3f2bc63b6bacc15f9e3f3527302d0d7f0f0e0cc9498bab7728cca944fddf886c33ab67c60bcd9bafa051db97c8e8a77e781d6869a4bdb8096f4b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sl/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/sl/firefox-62.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "d423c10683ba690a8d8eec50e4e966b7233d565e2c35b5fdd70aa917908daab5d01f847c32f7e24c604aa19ab941ca70c6e6613b39271d01f1370dbd974800fa";
+      sha512 = "343a22feab53142ff585985fbaa8a037dbe9c3d3c2c073361f8d4af3b74272a47e5df2053ea91b333bf0da15334b9512c0513726ae80176838774020a7c7c639";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/son/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/son/firefox-62.0.2.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "7f1d638cbd729b51d959b0b1ee0e4ec5473f5478bf315c890fd9df20e3065861a5c8447399e973cac78bd078d2a1f0e1bad829f6b462ec6ffc55e7748760677a";
+      sha512 = "bb9c9c4bc82550b6d83c3b9995a1ca3afadc9fb5b27a5de4503682d29428ed7751895d1225a3b5ba8472d539c9efca957522187e4119e4e134f46b37da2f43e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sq/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/sq/firefox-62.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "823b4b5043e3fd8fcf0bcb345d00dbfa38e6e03fdf172a30c272f51eee7f9057ec99423c7117ab8d21e9037bcc1e19a7082401a0b25514e2258542aef4c4af80";
+      sha512 = "97b2c394f71e9bda6fa679353c579a01f40a4fb5b588bc177329d6fbfcff0d126e2db072c868eafd6078c26f9190f1a2d4c65f887754af4d25eb9c128d807030";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/sr/firefox-62.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "a08ef0de87e4f01c11b20301e45e98d3bf10bbd4d2699de56f66470d7f4298aec3744f44888ba46ec1293fb713487f6df20bb9f5682a57827993f0ddd28cdde3";
+      sha512 = "84024816cfd48076ef5ddbe0af392ab5ae0bcb8a02cc0ee1f6d0dafdf5673d9dfee377e83f0a9508c11593d8f4db682ad400c336a1c37591c25864c9299939f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sv-SE/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/sv-SE/firefox-62.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "e3e65e32e5e11547e220bb34d0009257f3c4f18aec0fe961f310ef4b76311d8d885a01d6bc4420c2b97687b886c3d00c09d43af0c6c7eaca8e6a804d78d4bfe7";
+      sha512 = "b630b627b038b16ae1b97f669e79afccba95e66a93dc3b7358e26960ae836f1f3663a49394b7a9be9906871a2301824c6b1f78f1f38943b54e4631f9beb90407";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ta/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ta/firefox-62.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "47753ccbe4471ab3d3de3ea11992cd332251868ae3a7772e860531d013c657f5ff559d34592fedf7b52ecf3a54476dc2e0fc68119170afb9c482fccd04a36776";
+      sha512 = "1306d444c620f558894ea81512944e1d07dfe706306206d1638c2e86ae5a2dba4e02b5927e4c9250df3cbc607d15da15bf2cb1c9e1ff74332354ae883c6bcc42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/te/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/te/firefox-62.0.2.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "90327dd95f3a597692cf5ea54258c31ed813261f102a7f668f5bc5062499a6bfe64d2d241dc33ffdc5cd152802e7d462c7ffdbe4498825ad88be48d21031919b";
+      sha512 = "3b0e1d6fea01ac99e315419365afdee54c107dd33ad577b19fcd9a59de1a176f34497e607fc7466217ddef5a6c442a62f1dd41cdb137651c0274274cb9357171";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/th/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/th/firefox-62.0.2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "652a7bf7f2a7c6fa27edbd5e78cfecd2df661e1a7a01cc532b1caaed53bd40025aaee2126dd1116e77ef9e050777e78e96537ed2decfe493caa1d03c7bbb0646";
+      sha512 = "7bcb0d7e17d397a7b114172234f3306f9faa28e7d9f8bb2db1399b58c28bd36ce4e478686c3ec98c76793cc75bbb974a316599b3a7c38fb034e852100ffa13e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/tr/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/tr/firefox-62.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "f98d45b831f51a0caa47fcaaaf1ed37f267035e1f1ab95ae0cfbafa06f03b89f99b7a7accb9812644f862b819c2bb294f5a3454ece80f775359ac77734a99d44";
+      sha512 = "5c543b8bf79fdcb605b6d763688ca5bcd1e61b0e2088441e1d6d6dd4f0823f9f3d2075f39776d582bb468dc41ef39f7d562c7ebb6d5e4f084c3c1aaf1e61de8e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/uk/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/uk/firefox-62.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "6c67554c87c7941fec8193bfcdd9d5d0af906d13ab237e0ddd97733816d2df27fee5e11eb450e85f9143f71049219e8ef9c6cd4d327faf3e335247130cdd26f6";
+      sha512 = "2fe636a02d0adc75d00f67620fcfaba902d16b5d828c2c9770560300c33cd0a8a8bd7208f146943cd62ac0aa8e3be784ff8549de78eb4f247783e1cfc823dd1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ur/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/ur/firefox-62.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "0c90e5575d057d9f32c18a102d2db7848f8821d71edb3cb9ae4f2565a1cc2851da7fb1bd493e81dca003a50a9f26454af8cf0ef7f947ea42aa22baf20abc06d8";
+      sha512 = "c84e1bf737b3a4b93f77098a087bd7ae598364d6a15110d3032bab4ee8aab6d1a64ce3ec4ef17b197b920e334f1e57a7a093581b8ac3b1ecab85d9cbb2da2c50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/uz/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/uz/firefox-62.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "fc35bb30011063bda8c256b6c405bffae55ae7d67ce5809367aaadaddb1094acfe0186f2cd84b2dceb55a76358ee46e29ec013058e035123a7797b5ac49b6e4d";
+      sha512 = "cee9849825181c517a82c6f6cb07920767ff2c02d54b87c8e509e60bef3adff260f282882b9495b6034fa61b11e2cf831e3adc3ed3928ff32792a62084cf115b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/vi/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/vi/firefox-62.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "0c6a94f811ba509dc468b31f9448eba7f1004e6652a418db8ef84d03d79ff850237bd7555b8f73d515f8a0c546df371a18bc51ccd3dad069bc481f58f9a4c989";
+      sha512 = "a0eddaf392addf41017108ded0d32418175ab5ff7cddf74e3224929da93bc84cf07312671f16aa5652ecdc315707a4301c69b856be709f4298861298541a065f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/xh/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/xh/firefox-62.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "b113f1f4a81a7cac63a8604a8152bf651ebee3ad48eaabef84d09d3576b37b529f56c04fc9fd1b3326364aeaefad77cc123a97b662c85665c7f239384f5c6d7c";
+      sha512 = "50741d2ff1b7f1d9cf503af66ec61a2d19600ad7240db837392440b2943c6d96a7b8d5538ca24f0d528cbe9fbaede7964c9f8404474f95a1c022e193fa91f81e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/zh-CN/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/zh-CN/firefox-62.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "7c3da83ebdfbcaf8a67ac8cf953d648dd3eb54d1c9f6e74680b00ef94e01a0384a53d27c4a78312e25e284209f3e4c53661958347e3250eb820a20873e66c3fd";
+      sha512 = "103be3f37fa7a92c00d6465f93bedffc31527939bd85df0c742c04ac75f9ddec4018a368a2ff29730f5a055459b018c64afa344df255638ec3c26bb295e1a31a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/zh-TW/firefox-62.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0.2/linux-i686/zh-TW/firefox-62.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "659ea2bbd51d99a0c3573043a55ee580839e5f0323c57bb7b086ebc41a19f493baadecf67b64443b5abcf5db69e7e82e0c965a40b151d141557cda04b3ce6d52";
+      sha512 = "0ac22e595f2d87f75b586eabab07470f9eec16026a45902fb40c19fd2cbf93f2f88241900a13703edb89290953127c689bacbc0eccd560822e43bc07a97e3ddf";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 11222cc65ba3..935be6230cd3 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -20,10 +20,10 @@ rec {
 
   firefox = common rec {
     pname = "firefox";
-    version = "62.0";
+    version = "62.0.2";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "0byxslbgr37sm1ra3wywl5c2a39qbkjwc227yp4j2l930m5j86m5g7rmv8zm944vv5vnyzmwhym972si229fm2lwq74p4xam5rfv948";
+      sha512 = "0j5q1aa7jhq4pydaywp8ymibc319wv3gw2q15qp14i069qk3fpn33zb5z86lhb6z864f88ikx3zxv6phqs96qvzj25yqbh7nxmzwhvv";
     };
 
     patches = nixpkgsPatches ++ [
@@ -70,10 +70,10 @@ rec {
 
   firefox-esr-60 = common rec {
     pname = "firefox-esr";
-    version = "60.2.0esr";
+    version = "60.2.1esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "1nf7nsycvzafvy4jjli5xh59d2mac17gfx91a1jh86f41w6qcsi3lvkfa8xhxsq8wfdsmqk1f4hmqzyx63h4m691qji7838g2nk49k7";
+      sha512 = "2mklws09haki91w3js2i5pv8g3z5ck4blnzxvdbk5qllqlv465hn7rvns78hbcbids55mqx50fsn0161la73v25zs04bf8xdhbkcpsm";
     };
 
     patches = nixpkgsPatches ++ [
diff --git a/pkgs/applications/networking/compactor/default.nix b/pkgs/applications/networking/compactor/default.nix
index d2b1a8eba367..48f85c80e0eb 100644
--- a/pkgs/applications/networking/compactor/default.nix
+++ b/pkgs/applications/networking/compactor/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "compactor-${version}";
-  version = "0.11.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "dns-stats";
     repo = "compactor";
     rev = "${version}";
-    sha256 = "1zn6w99xqq5igaz0n89429i78a5pj4nnfn1mm5yv1yfbn1lm0y3l";
+    sha256 = "0bd82956nkpdmfj8f05z37hy7f33cd2nfdxr7s9fgz1xi5flnzjc";
   };
 
   # cbor-diag, cddl and wireshark-cli are only used for tests.
diff --git a/pkgs/applications/networking/instant-messengers/jackline/default.nix b/pkgs/applications/networking/instant-messengers/jackline/default.nix
index 9f85c940c1bc..689445d7dcb8 100644
--- a/pkgs/applications/networking/instant-messengers/jackline/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jackline/default.nix
@@ -3,21 +3,19 @@
 assert stdenv.lib.versionAtLeast ocamlPackages.ocaml.version "4.02.2";
 
 stdenv.mkDerivation rec {
-  version = "2017-12-24";
+  version = "2018-05-11";
   name = "jackline-${version}";
 
   src = fetchFromGitHub {
     owner  = "hannesm";
     repo   = "jackline";
-    rev    = "8678e8a1a06e641218a31ae25150040202f89289";
-    sha256 = "05z9kvd7gwr59ic7hnmbayhwyyqd41xxz01cvdlcgplk3z7zlwg5";
+    rev    = "bc36b1c8b80fee6baba4f91011cd01b82a06e8eb";
+    sha256 = "1xx2yx8a95m84sa1bkxi3rlx7pd39zkqwk3znj0zzz3cni6apfrz";
   };
 
-  patches = [ ./tls-0.9.0.patch ];
-
   buildInputs = with ocamlPackages; [
                   ocaml ocamlbuild findlib topkg ppx_sexp_conv
-                  erm_xmpp_0_3 tls nocrypto x509 ocaml_lwt otr astring
+                  erm_xmpp tls nocrypto x509 ocaml_lwt otr astring
                   ptime notty sexplib hex uutf
                 ];
 
diff --git a/pkgs/applications/networking/instant-messengers/jackline/tls-0.9.0.patch b/pkgs/applications/networking/instant-messengers/jackline/tls-0.9.0.patch
deleted file mode 100644
index 38f38a03a802..000000000000
--- a/pkgs/applications/networking/instant-messengers/jackline/tls-0.9.0.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/cli/cli_config.ml b/cli/cli_config.ml
-index 991ee77..59a0edb 100644
---- a/cli/cli_config.ml
-+++ b/cli/cli_config.ml
-@@ -207,7 +207,9 @@ let configure term () =
-     ask above "CA file: " (fun x -> x) (fun x -> if Sys.file_exists x then `Ok x else `Invalid) term >>= fun trust_anchor ->
-     Lwt_unix.access trust_anchor [ Unix.F_OK ; Unix.R_OK ] >>= fun () ->
-     X509_lwt.certs_of_pem trust_anchor >>= fun tas ->
--    (match X509.Validation.valid_cas ~time:(Unix.time ()) tas with
-+    let time = match Ptime.of_float_s (Unix.time ())
-+      with Some time -> time | None -> assert false in
-+    (match X509.Validation.valid_cas ~time tas with
-      | [] -> Lwt.fail (Invalid_argument "trust anchor file is empty!")
-      | _ -> Lwt.return (`Trust_anchor trust_anchor))
-   | Some fp -> Lwt.return (`Fingerprint fp) ) >>= fun authenticator ->
-diff --git a/cli/cli_state.ml b/cli/cli_state.ml
-index d5db502..91540c9 100644
---- a/cli/cli_state.ml
-+++ b/cli/cli_state.ml
-@@ -262,7 +262,8 @@ module Connect = struct
-           (match config.Xconfig.authenticator with
-            | `Trust_anchor x -> X509_lwt.authenticator (`Ca_file x)
-            | `Fingerprint fp ->
--             let time = Unix.gettimeofday () in
-+             let time = match Ptime.of_float_s (Unix.gettimeofday ())
-+               with Some time -> time | None -> assert false in
-              let fp =
-                Nocrypto.Uncommon.Cs.of_hex
-                  (String.map (function ':' -> ' ' | x -> x) fp)
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
index c86de07bc842..bd1346b12194 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, makeWrapper }:
 
 let
-  version = "3.0.13.6";
+  version = "3.3.0";
   arch = if stdenv.is64bit then "amd64" else "x86";
   libDir = if stdenv.is64bit then "lib64" else "lib";
 in
@@ -14,9 +14,9 @@ stdenv.mkDerivation {
       "http://dl.4players.de/ts/releases/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2"
       "http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2"
     ];
-    sha256 = if stdenv.is64bit 
-      then "19ccd8db5427758d972a864b70d4a1263ebb9628fcc42c3de75ba87de105d179"
-      else "2f70b3e70a3d9bf86106fab67a938922c8d27fec24e66e229913f78a0791b967";
+    sha256 = if stdenv.is64bit
+      then "1jv5c1br3ypxz8px7fl5rg75j0kfdg8mqasdk2gka6yvgf7qc97i"
+      else "0m889xl9iz3fmq7wyjjn42swprpspagbkn52a82nzkhgvagd45bz";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
index 48b2d883849b..db30da82bdb2 100644
--- a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
+++ b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, qt4, boost, bzip2, libX11
-, fetchpatch, pcre-cpp, libidn, lua5, miniupnpc, aspell, gettext }:
+, fetchpatch, libiconv, pcre-cpp, libidn, lua5, miniupnpc, aspell, gettext }:
 
 stdenv.mkDerivation rec {
   name = "eiskaltdcpp-${version}";
@@ -12,8 +12,9 @@ stdenv.mkDerivation rec {
     sha256 = "1mqz0g69njmlghcra3izarjxbxi1jrhiwn4ww94b8jv8xb9cv682";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ cmake qt4 boost bzip2 libX11 pcre-cpp libidn lua5 miniupnpc aspell gettext ];
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ qt4 boost bzip2 libX11 pcre-cpp libidn lua5 miniupnpc aspell gettext ]
+    ++ stdenv.lib.optional stdenv.isDarwin libiconv;
 
   patches = [
     (fetchpatch {
@@ -59,6 +60,6 @@ stdenv.mkDerivation rec {
     description = "A cross-platform program that uses the Direct Connect and ADC protocols";
     homepage = https://github.com/eiskaltdcpp/eiskaltdcpp;
     license = licenses.gpl3Plus;
-    platforms = platforms.all;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/testssl/default.nix b/pkgs/applications/networking/testssl/default.nix
index cc0cffb6e3b3..4a1f71f4b4f7 100644
--- a/pkgs/applications/networking/testssl/default.nix
+++ b/pkgs/applications/networking/testssl/default.nix
@@ -2,7 +2,7 @@
 , dnsutils, coreutils, openssl, nettools, utillinux, procps }:
 
 let
-  version = "2.9.5-6";
+  version = "2.9.5-7";
 
 in stdenv.mkDerivation rec {
   name = "testssl.sh-${version}";
@@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
     owner = "drwetter";
     repo = "testssl.sh";
     rev = "v${version}";
-    sha256 = "0wn7lxz0ibv59v0acbsk5z3rsmr65zr1q7n4kxva1cw5xzq9ya6k";
+    sha256 = "02xp0yi53xf6jw6v633zs2ws2iyyvq3mlkimg0cv3zvj7nw9x5wr";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix
index d8e6cdd86ea9..d0a4953c426b 100644
--- a/pkgs/applications/office/treesheets/default.nix
+++ b/pkgs/applications/office/treesheets/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name    = "treesheets-${version}";
-  version = "2017-03-27";
+  version = "2018-08-18";
 
   src = fetchFromGitHub {
     owner  = "aardappel";
     repo   = "treesheets";
-    rev    = "1d1d6b214e3ae88445eb1ec0032d5fef14160f32";
-    sha256 = "0np91c4skq3yxq76c4zi33w73qb1w2nrcin490kkvrxk53jspklb";
+    rev    = "3af41d99c8f9f32603a36ab64af3560b6d61dd73";
+    sha256 = "147y8ggh3clwjgsi15z8i4jnzlkh8p17mmlg532jym53zzbcva65";
   };
 
   buildInputs = [ wxGTK makeWrapper ];
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     '';
 
     homepage    = http://strlen.com/treesheets/;
-    maintainers = with maintainers; [ obadz ];
+    maintainers = with maintainers; [ obadz avery ];
     platforms   = platforms.linux;
     license     = licenses.zlib;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index 6d2753e45437..a407f6e7ab12 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec {
   installPhase = ''
     make install
     make install-doc
+
+    substituteInPlace contrib/tig-completion.zsh \
+      --replace 'e=$(dirname ''${funcsourcetrace[1]%:*})/tig-completion.bash' "e=$out/etc/bash_completion.d/tig-completion.bash"
+
     install -D contrib/tig-completion.bash $out/etc/bash_completion.d/tig-completion.bash
     install -D contrib/tig-completion.zsh $out/share/zsh/site-functions/_tig
     cp contrib/vim.tigrc $out/etc/
diff --git a/pkgs/applications/version-management/gitaly/Gemfile b/pkgs/applications/version-management/gitaly/Gemfile
index fd8e6b40225b..2b752992fecd 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitaly/Gemfile
@@ -1,15 +1,16 @@
 source 'https://rubygems.org'
 
-gem 'rugged', '~> 0.27.0'
-gem 'github-linguist', '~> 5.3.3', require: 'linguist'
-gem 'gitlab-markup', '~> 1.6.2'
-gem 'gitaly-proto', '~> 0.99.0', require: 'gitaly'
+gem 'rugged', '~> 0.27.4'
+gem 'github-linguist', '~> 6.1', require: 'linguist'
+gem 'gitlab-markup', '~> 1.6.4'
+gem 'gitaly-proto', '~> 0.116.0', require: 'gitaly'
 gem 'activesupport', '~> 5.0.2'
 gem 'rdoc', '~> 4.2'
 gem 'gitlab-gollum-lib', '~> 4.2', require: false
 gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4', require: false
-gem 'grpc', '~> 1.10.0'
+gem 'grpc', '~> 1.11.0'
 gem 'sentry-raven', '~> 2.7.2', require: false
+gem 'faraday', '~> 0.12'
 
 # Detects the open source license the repository includes
 # This version needs to be in sync with GitLab CE/EE
diff --git a/pkgs/applications/version-management/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitaly/Gemfile.lock
index fb63553221dc..d76ba86c398a 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitaly/Gemfile.lock
@@ -11,30 +11,31 @@ GEM
     ast (2.3.0)
     charlock_holmes (0.7.6)
     concurrent-ruby (1.0.5)
+    crass (1.0.4)
     diff-lcs (1.3)
-    escape_utils (1.1.1)
-    faraday (0.14.0)
+    escape_utils (1.2.1)
+    faraday (0.12.2)
       multipart-post (>= 1.2, < 3)
     gemojione (3.3.0)
       json
-    gitaly-proto (0.99.0)
+    gitaly-proto (0.116.0)
       google-protobuf (~> 3.1)
       grpc (~> 1.10)
-    github-linguist (5.3.3)
-      charlock_holmes (~> 0.7.5)
-      escape_utils (~> 1.1.0)
+    github-linguist (6.2.0)
+      charlock_holmes (~> 0.7.6)
+      escape_utils (~> 1.2.0)
       mime-types (>= 1.19)
       rugged (>= 0.25.1)
     github-markup (1.7.0)
-    gitlab-gollum-lib (4.2.7.1)
+    gitlab-gollum-lib (4.2.7.5)
       gemojione (~> 3.2)
       github-markup (~> 1.6)
       gollum-grit_adapter (~> 1.0)
       nokogiri (>= 1.6.1, < 2.0)
-      rouge (~> 2.1)
-      sanitize (~> 2.1)
+      rouge (~> 3.1)
+      sanitize (~> 4.6.4)
       stringex (~> 2.6)
-    gitlab-gollum-rugged_adapter (0.4.4)
+    gitlab-gollum-rugged_adapter (0.4.4.1)
       mime-types (>= 1.15)
       rugged (~> 0.25)
     gitlab-grit (2.8.2)
@@ -42,7 +43,7 @@ GEM
       diff-lcs (~> 1.1)
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
-    gitlab-markup (1.6.3)
+    gitlab-markup (1.6.4)
     gitlab-styles (2.0.0)
       rubocop (~> 0.49)
       rubocop-gitlab-security (~> 0.1.0)
@@ -60,7 +61,7 @@ GEM
       multi_json (~> 1.11)
       os (~> 0.9)
       signet (~> 0.7)
-    grpc (1.10.0)
+    grpc (1.11.0)
       google-protobuf (~> 3.1)
       googleapis-common-protos-types (~> 1.0.0)
       googleauth (>= 0.5.1, < 0.7)
@@ -74,15 +75,17 @@ GEM
       little-plugger (~> 1.1)
       multi_json (~> 1.10)
     memoist (0.16.0)
-    mime-types (3.1)
+    mime-types (3.2.2)
       mime-types-data (~> 3.2015)
-    mime-types-data (3.2016.0521)
+    mime-types-data (3.2018.0812)
     mini_portile2 (2.3.0)
     minitest (5.9.1)
     multi_json (1.13.1)
     multipart-post (2.0.0)
-    nokogiri (1.8.2)
+    nokogiri (1.8.4)
       mini_portile2 (~> 2.3.0)
+    nokogumbo (1.5.0)
+      nokogiri
     os (0.9.6)
     parallel (1.12.0)
     parser (2.4.0.0)
@@ -94,20 +97,20 @@ GEM
       rake
     rake (12.1.0)
     rdoc (4.3.0)
-    rouge (2.2.1)
-    rspec (3.6.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-    rspec-core (3.6.0)
-      rspec-support (~> 3.6.0)
-    rspec-expectations (3.6.0)
+    rouge (3.2.1)
+    rspec (3.7.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+    rspec-core (3.7.1)
+      rspec-support (~> 3.7.0)
+    rspec-expectations (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-mocks (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-mocks (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-support (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-support (3.7.1)
     rubocop (0.50.0)
       parallel (~> 1.10)
       parser (>= 2.3.3.1, < 3.0)
@@ -120,9 +123,11 @@ GEM
     rubocop-rspec (1.17.0)
       rubocop (>= 0.50.0)
     ruby-progressbar (1.8.3)
-    rugged (0.27.0)
-    sanitize (2.1.0)
+    rugged (0.27.4)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
       nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
     sentry-raven (2.7.2)
       faraday (>= 0.7.6, < 1.0)
     signet (0.8.1)
@@ -141,19 +146,20 @@ PLATFORMS
 
 DEPENDENCIES
   activesupport (~> 5.0.2)
-  gitaly-proto (~> 0.99.0)
-  github-linguist (~> 5.3.3)
+  faraday (~> 0.12)
+  gitaly-proto (~> 0.116.0)
+  github-linguist (~> 6.1)
   gitlab-gollum-lib (~> 4.2)
   gitlab-gollum-rugged_adapter (~> 0.4.4)
-  gitlab-markup (~> 1.6.2)
+  gitlab-markup (~> 1.6.4)
   gitlab-styles (~> 2.0.0)
   google-protobuf (= 3.5.1)
-  grpc (~> 1.10.0)
+  grpc (~> 1.11.0)
   licensee (~> 8.9.0)
   rdoc (~> 4.2)
   rspec
-  rugged (~> 0.27.0)
+  rugged (~> 0.27.4)
   sentry-raven (~> 2.7.2)
 
 BUNDLED WITH
-   1.16.1
+   1.16.4
diff --git a/pkgs/applications/version-management/gitaly/default.nix b/pkgs/applications/version-management/gitaly/default.nix
index 52d46a991187..b7eee8926aa5 100644
--- a/pkgs/applications/version-management/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitaly/default.nix
@@ -7,14 +7,14 @@ let
     gemdir = ./.;
   };
 in buildGoPackage rec {
-  version = "0.100.0";
+  version = "0.120.0";
   name = "gitaly-${version}";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "0lnyk3abk1jxhii4cx009w11fm082c3va0nnnnycghrmfkv2r1rs";
+    sha256 = "0jsk6n1vmddpnnccr8mjvcsfjzaagqy1600q5yss6lbz896w2bx4";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitaly";
@@ -23,7 +23,7 @@ in buildGoPackage rec {
     inherit rubyEnv;
   };
 
-  buildInputs = [rubyEnv.wrappedRuby];
+  buildInputs = [ rubyEnv.wrappedRuby ];
 
   postInstall = ''
     mkdir -p $ruby
diff --git a/pkgs/applications/version-management/gitaly/gemset.nix b/pkgs/applications/version-management/gitaly/gemset.nix
index bd192d0b2e43..0717555b3829 100644
--- a/pkgs/applications/version-management/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitaly/gemset.nix
@@ -41,6 +41,14 @@
     };
     version = "1.0.5";
   };
+  crass = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
   diff-lcs = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -52,19 +60,19 @@
   escape_utils = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "088r5c2mz2vy2jbbx1xjbi8msnzg631ggli29nhik2spbcp1z6vh";
+      sha256 = "0qminivnyzwmqjhrh3b92halwbk0zcl9xn828p5rnap1szl2yag5";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.2.1";
   };
   faraday = {
     dependencies = ["multipart-post"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr";
+      sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
       type = "gem";
     };
-    version = "0.14.0";
+    version = "0.12.2";
   };
   gemojione = {
     dependencies = ["json"];
@@ -79,19 +87,19 @@
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1y5sn60h71ssxmc8br32fqhgmfqxgrmdlg4vya8dyy37ai20f85z";
+      sha256 = "15946776v5v8c2jisknjm82s4q3b3q9x2xygjf4bkk4m45n766w1";
       type = "gem";
     };
-    version = "0.99.0";
+    version = "0.116.0";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0kgashbqpypv329m63b85ri1dx0gppwd0832hvwh124lk5b19drk";
+      sha256 = "1fs0i5xxsl91hnfa17ipk8cwxrg84kjg9mzxvxkd4ykldfdp353y";
       type = "gem";
     };
-    version = "5.3.3";
+    version = "6.2.0";
   };
   github-markup = {
     source = {
@@ -105,19 +113,19 @@
     dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lk5ly17a40xjz8b7l05b4hkrlnq8vawjy4szxl5w0hkaa24m97s";
+      sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
       type = "gem";
     };
-    version = "4.2.7.1";
+    version = "4.2.7.5";
   };
   gitlab-gollum-rugged_adapter = {
     dependencies = ["mime-types" "rugged"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zk89c2ljv9skcxzwnr84rqxv3iam30n5liv5r8hgl0l67qbg1mg";
+      sha256 = "092i02k3kd4ghk1h1l5yrvi9b180dgfxrvwni26facb2kc9f3wbi";
       type = "gem";
     };
-    version = "0.4.4";
+    version = "0.4.4.1";
   };
   gitlab-grit = {
     dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
@@ -131,10 +139,10 @@
   gitlab-markup = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
+      sha256 = "1v6w3z7smmkqnhphb4ghgpqg61vimflqzpszybji0li99f2k1jb6";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.4";
   };
   gitlab-styles = {
     dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
@@ -184,10 +192,10 @@
     dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17wvqhjmldxph4li402rvfbyzi5455lzmfr2y19kq9ghrzjyad82";
+      sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz";
       type = "gem";
     };
-    version = "1.10.0";
+    version = "1.11.0";
   };
   i18n = {
     source = {
@@ -251,18 +259,18 @@
     dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
       type = "gem";
     };
-    version = "3.1";
+    version = "3.2.2";
   };
   mime-types-data = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
       type = "gem";
     };
-    version = "3.2016.0521";
+    version = "3.2018.0812";
   };
   mini_portile2 = {
     source = {
@@ -300,10 +308,19 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
       type = "gem";
     };
-    version = "1.8.2";
+    version = "1.8.4";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
   };
   os = {
     source = {
@@ -382,54 +399,54 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
+      sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f";
       type = "gem";
     };
-    version = "2.2.1";
+    version = "3.2.1";
   };
   rspec = {
     dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
+      sha256 = "0134g96wzxjlig2gxzd240gm2dxfw8izcyi2h6hjmr40syzcyx01";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-core = {
     dependencies = ["rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
+      sha256 = "0zvjbymx3avxm3lf8v4gka3a862vnaxldmwvp6767bpy48nhnvjj";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
+      sha256 = "1fw06wm8jdj8k7wrb8xmzj0fr1wjyb0ya13x31hidnyblm41hmvy";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
+      sha256 = "0b02ya3qhqgmcywqv4570dlhav70r656f7dmvwg89whpkq1z1xr3";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-support = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
+      sha256 = "1nl30xb6jmcl0awhqp6jycl01wdssblifwy921phfml70rd9flj1";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rubocop = {
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
@@ -469,19 +486,19 @@
   rugged = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0q1krxgd0ql03x8m9m05x5sxizw5sc7lms7rkp44qf45grpdk3v3";
+      sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
       type = "gem";
     };
-    version = "0.27.0";
+    version = "0.27.4";
   };
   sanitize = {
-    dependencies = ["nokogiri"];
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3";
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "4.6.6";
   };
   sentry-raven = {
     dependencies = ["faraday"];
diff --git a/pkgs/applications/version-management/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab-shell/default.nix
index 09c1cd13d440..69c4b9a255e3 100644
--- a/pkgs/applications/version-management/gitlab-shell/default.nix
+++ b/pkgs/applications/version-management/gitlab-shell/default.nix
@@ -1,19 +1,19 @@
 { stdenv, ruby, bundler, fetchFromGitLab, go }:
 
 stdenv.mkDerivation rec {
-  version = "7.1.2";
+  version = "8.3.3";
   name = "gitlab-shell-${version}";
 
-  srcs = fetchFromGitLab {
+  src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-shell";
     rev = "v${version}";
-    sha256 = "1mkr2k2ldn5hl84acajvfify97qy80lmicxx49jbpln22vh9rcni";
+    sha256 = "1qapw0yvlw1nxjik7jpbbbl3yx299sfvdx67zsd5ai7bhk1gd8xl";
   };
 
   buildInputs = [ ruby bundler go ];
 
-  patches = [ ./remove-hardcoded-locations.patch ./fixes.patch ];
+  patches = [ ./remove-hardcoded-locations.patch ];
 
   installPhase = ''
     ruby bin/compile
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
+    description = "SSH access and repository management app for GitLab";
     homepage = http://www.gitlab.com/;
     platforms = platforms.unix;
     maintainers = with maintainers; [ fpletz globin ];
diff --git a/pkgs/applications/version-management/gitlab-shell/fixes.patch b/pkgs/applications/version-management/gitlab-shell/fixes.patch
deleted file mode 100644
index 29e4dccb26c7..000000000000
--- a/pkgs/applications/version-management/gitlab-shell/fixes.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/support/go_build.rb b/support/go_build.rb
-index 30a6b71..46b4dfa 100644
---- a/support/go_build.rb
-+++ b/support/go_build.rb
-@@ -26,8 +26,8 @@ module GoBuild
-     raise "env must be a hash" unless env.is_a?(Hash)
-     raise "cmd must be an array" unless cmd.is_a?(Array)
- 
--    unless system(env, *cmd)
--      abort "command failed: #{env.inspect} #{cmd.join(' ')}"
--    end
-+    puts "Starting #{env.inspect} #{cmd.join(' ')}"
-+    Process::wait(Process::spawn(env, *cmd))
-+    abort "command failed: #{env.inspect} #{cmd.join(' ')}" unless $?.exitstatus == 0
-   end
- end
diff --git a/pkgs/applications/version-management/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab-workhorse/default.nix
index 723d2faeb267..1fe8c844ebf0 100644
--- a/pkgs/applications/version-management/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab-workhorse/default.nix
@@ -1,28 +1,21 @@
 { stdenv, fetchFromGitLab, git, go }:
-
 stdenv.mkDerivation rec {
-  version = "4.2.0";
   name = "gitlab-workhorse-${version}";
 
+  version = "6.1.0";
+
   srcs = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "11n43mfp7a59iq8k7sh9bnww3bq56ml2p6752csclg77xii6dzyy";
+    sha256 = "0h0mqalia4ldb2icr2h6x75pnr5jb5y23pi4kv4ri3w3ddnl74bq";
   };
 
   buildInputs = [ git go ];
 
   patches = [ ./remove-hardcoded-paths.patch ];
 
-  buildPhase = ''
-    make PREFIX=$out
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    make install PREFIX=$out
-  '';
+  makeFlags = [ "PREFIX=$(out)" "VERSION=${version}" ];
 
   meta = with stdenv.lib; {
     homepage = http://www.gitlab.com/;
diff --git a/pkgs/applications/version-management/gitlab/Gemfile b/pkgs/applications/version-management/gitlab/Gemfile
index 89febc9bc0c2..f14e05d43e06 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile
+++ b/pkgs/applications/version-management/gitlab/Gemfile
@@ -6,7 +6,7 @@ end
 gem_versions = {}
 gem_versions['activerecord_sane_schema_dumper'] = rails5? ? '1.0'      : '0.2'
 gem_versions['default_value_for']               = rails5? ? '~> 3.0.5' : '~> 3.0.0'
-gem_versions['rails']                           = rails5? ? '5.0.6'    : '4.2.10'
+gem_versions['rails']                           = rails5? ? '5.0.7'    : '4.2.10'
 gem_versions['rails-i18n']                      = rails5? ? '~> 5.1'   : '~> 4.0.9'
 # --- The end of special code for migrating to Rails 5.0 ---
 
@@ -28,14 +28,14 @@ gem 'mysql2', '~> 0.4.10', group: :mysql
 gem 'pg', '~> 0.18.2', group: :postgres
 
 gem 'rugged', '~> 0.27'
-gem 'grape-route-helpers', '~> 2.1.0'
+gem 'grape-path-helpers', '~> 1.0'
 
 gem 'faraday', '~> 0.12'
 
 # Authentication libraries
 gem 'devise', '~> 4.4'
 gem 'doorkeeper', '~> 4.3'
-gem 'doorkeeper-openid_connect', '~> 1.3'
+gem 'doorkeeper-openid_connect', '~> 1.5'
 gem 'omniauth', '~> 1.8'
 gem 'omniauth-auth0', '~> 2.0.0'
 gem 'omniauth-azure-oauth2', '~> 0.0.9'
@@ -47,10 +47,10 @@ gem 'omniauth-google-oauth2', '~> 0.5.3'
 gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
 gem 'omniauth-oauth2-generic', '~> 0.2.2'
 gem 'omniauth-saml', '~> 1.10'
-gem 'omniauth-shibboleth', '~> 1.2.0'
+gem 'omniauth-shibboleth', '~> 1.3.0'
 gem 'omniauth-twitter', '~> 1.4'
 gem 'omniauth_crowd', '~> 2.2.0'
-gem 'omniauth-authentiq', '~> 0.3.1'
+gem 'omniauth-authentiq', '~> 0.3.3'
 gem 'rack-oauth2', '~> 1.2.1'
 gem 'jwt', '~> 1.5.6'
 
@@ -68,7 +68,7 @@ gem 'u2f', '~> 0.2.1'
 gem 'validates_hostname', '~> 1.0.6'
 
 # Browser detection
-gem 'browser', '~> 2.2'
+gem 'browser', '~> 2.5'
 
 # GPG
 gem 'gpgme'
@@ -93,6 +93,10 @@ gem 'grape', '~> 1.0'
 gem 'grape-entity', '~> 0.7.1'
 gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
 
+# GraphQL API
+gem 'graphql', '~> 1.8.0'
+gem 'graphiql-rails', '~> 1.4.10'
+
 # Disable strong_params so that Mash does not respond to :permitted?
 gem 'hashie-forbidden_attributes'
 
@@ -100,10 +104,13 @@ gem 'hashie-forbidden_attributes'
 gem 'kaminari', '~> 1.0'
 
 # HAML
-gem 'hamlit', '~> 2.6.1'
+gem 'hamlit', '~> 2.8.8'
 
 # Files attachments
-gem 'carrierwave', '~> 1.2'
+# Locked until https://github.com/carrierwaveuploader/carrierwave/pull/2332/files is merged.
+# config/initializers/carrierwave_patch.rb can be removed once that change is released.
+gem 'carrierwave', '= 1.2.3'
+gem 'mini_magick'
 
 # Drag and Drop UI
 gem 'dropzonejs-rails', '~> 0.7.1'
@@ -111,14 +118,14 @@ gem 'dropzonejs-rails', '~> 0.7.1'
 # for backups
 gem 'fog-aws', '~> 2.0.1'
 gem 'fog-core', '~> 1.44'
-gem 'fog-google', '~> 1.3.3'
+gem 'fog-google', '~> 1.7.1'
 gem 'fog-local', '~> 0.3'
 gem 'fog-openstack', '~> 0.1'
 gem 'fog-rackspace', '~> 0.1.1'
 gem 'fog-aliyun', '~> 0.2.0'
 
 # for Google storage
-gem 'google-api-client', '~> 0.19.8'
+gem 'google-api-client', '~> 0.23'
 
 # for aws storage
 gem 'unf', '~> 0.1.4'
@@ -127,13 +134,13 @@ gem 'unf', '~> 0.1.4'
 gem 'seed-fu', '~> 2.3.7'
 
 # Markdown and HTML processing
-gem 'html-pipeline', '~> 2.7.1'
+gem 'html-pipeline', '~> 2.8'
 gem 'deckar01-task_list', '2.0.0'
-gem 'gitlab-markup', '~> 1.6.2'
+gem 'gitlab-markup', '~> 1.6.4'
 gem 'redcarpet', '~> 3.4'
 gem 'commonmarker', '~> 0.17'
 gem 'RedCloth', '~> 4.3.2'
-gem 'rdoc', '~> 4.2'
+gem 'rdoc', '~> 6.0'
 gem 'org-ruby', '~> 0.9.12'
 gem 'creole', '~> 0.5.0'
 gem 'wikicloth', '0.8.1'
@@ -144,6 +151,9 @@ gem 'truncato', '~> 0.7.9'
 gem 'bootstrap_form', '~> 2.7.0'
 gem 'nokogiri', '~> 1.8.2'
 
+# Calendar rendering
+gem 'icalendar'
+
 # Diffs
 gem 'diffy', '~> 3.1.0'
 
@@ -160,9 +170,9 @@ gem 'state_machines-activerecord', '~> 0.5.1'
 gem 'acts-as-taggable-on', '~> 5.0'
 
 # Background jobs
-gem 'sidekiq', '~> 5.0'
+gem 'sidekiq', '~> 5.1'
 gem 'sidekiq-cron', '~> 0.6.0'
-gem 'redis-namespace', '~> 1.5.2'
+gem 'redis-namespace', '~> 1.6.0'
 gem 'sidekiq-limit_fetch', '~> 3.4', require: false
 
 # Cron Parser
@@ -172,7 +182,10 @@ gem 'rufus-scheduler', '~> 3.4'
 gem 'httparty', '~> 0.13.3'
 
 # Colored output to console
-gem 'rainbow', '~> 2.2'
+gem 'rainbow', '~> 3.0'
+
+# Progress bar
+gem 'ruby-progressbar'
 
 # GitLab settings
 gem 'settingslogic', '~> 2.0.9'
@@ -184,6 +197,9 @@ gem 're2', '~> 1.1.1'
 
 gem 'version_sorter', '~> 2.1.0'
 
+# Export Ruby Regex to Javascript
+gem 'js_regex', '~> 2.2.1'
+
 # User agent parsing
 gem 'device_detector'
 
@@ -203,12 +219,12 @@ gem 'jira-ruby', '~> 1.4'
 # Flowdock integration
 gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
 
-# Gemnasium integration
-gem 'gemnasium-gitlab-service', '~> 0.2'
-
 # Slack integration
 gem 'slack-notifier', '~> 1.5.1'
 
+# Hangouts Chat integration
+gem 'hangouts-chat', '~> 0.0.5'
+
 # Asana integration
 gem 'asana', '~> 0.6.0'
 
@@ -216,13 +232,10 @@ gem 'asana', '~> 0.6.0'
 gem 'ruby-fogbugz', '~> 0.2.1'
 
 # Kubernetes integration
-gem 'kubeclient', '~> 3.0'
-
-# d3
-gem 'd3_rails', '~> 3.5.0'
+gem 'kubeclient', '~> 3.1.0'
 
 # Sanitize user input
-gem 'sanitize', '~> 2.0'
+gem 'sanitize', '~> 4.6'
 gem 'babosa', '~> 1.0.2'
 
 # Sanitizes SVG input
@@ -257,10 +270,9 @@ gem 'sass-rails', '~> 5.0.6'
 gem 'uglifier', '~> 2.7.2'
 
 gem 'addressable', '~> 2.5.2'
-gem 'bootstrap-sass', '~> 3.3.0'
 gem 'font-awesome-rails', '~> 4.7'
 gem 'gemojione', '~> 3.3'
-gem 'gon', '~> 6.1.0'
+gem 'gon', '~> 6.2'
 gem 'jquery-atwho-rails', '~> 1.3.2'
 gem 'request_store', '~> 1.3'
 gem 'select2-rails', '~> 3.5.9'
@@ -292,12 +304,11 @@ gem 'peek-sidekiq', '~> 1.0.3'
 
 # Metrics
 group :metrics do
-  gem 'allocations', '~> 1.0', require: false, platform: :mri
   gem 'method_source', '~> 0.8', require: false
   gem 'influxdb', '~> 0.2', require: false
 
   # Prometheus
-  gem 'prometheus-client-mmap', '~> 0.9.1'
+  gem 'prometheus-client-mmap', '~> 0.9.4'
   gem 'raindrops', '~> 0.18'
 end
 
@@ -317,19 +328,18 @@ group :development do
 end
 
 group :development, :test do
+  gem 'bootsnap', '~> 1.3'
   gem 'bullet', '~> 5.5.0', require: !!ENV['ENABLE_BULLET']
   gem 'pry-byebug', '~> 3.4.1', platform: :mri
   gem 'pry-rails', '~> 0.3.4'
 
-  gem 'awesome_print', '~> 1.2.0', require: false
+  gem 'awesome_print', require: false
   gem 'fuubar', '~> 2.2.0'
 
   gem 'database_cleaner', '~> 1.5.0'
   gem 'factory_bot_rails', '~> 4.8.2'
-  gem 'rspec-rails', '~> 3.6.0'
+  gem 'rspec-rails', '~> 3.7.0'
   gem 'rspec-retry', '~> 0.4.5'
-  gem 'spinach-rails', '~> 0.2.1'
-  gem 'spinach-rerun-reporter', '~> 0.0.2'
   gem 'rspec_profiling', '~> 0.0.5'
   gem 'rspec-set', '~> 0.1.3'
   gem 'rspec-parameterized', require: false
@@ -342,26 +352,24 @@ group :development, :test do
 
   gem 'capybara', '~> 2.15'
   gem 'capybara-screenshot', '~> 1.0.0'
-  gem 'selenium-webdriver', '~> 3.5'
+  gem 'selenium-webdriver', '~> 3.12'
 
   gem 'spring', '~> 2.0.0'
   gem 'spring-commands-rspec', '~> 1.0.4'
-  gem 'spring-commands-spinach', '~> 1.1.0'
 
-  gem 'gitlab-styles', '~> 2.3', require: false
+  gem 'gitlab-styles', '~> 2.4', require: false
   # Pin these dependencies, otherwise a new rule could break the CI pipelines
-  gem 'rubocop', '~> 0.52.1'
+  gem 'rubocop', '~> 0.54.0'
   gem 'rubocop-rspec', '~> 1.22.1'
 
   gem 'scss_lint', '~> 0.56.0', require: false
   gem 'haml_lint', '~> 0.26.0', require: false
   gem 'simplecov', '~> 0.14.0', require: false
-  gem 'flay', '~> 2.10.0', require: false
   gem 'bundler-audit', '~> 0.5.0', require: false
 
   gem 'benchmark-ips', '~> 2.3.0', require: false
 
-  gem 'license_finder', '~> 3.1', require: false
+  gem 'license_finder', '~> 5.4', require: false
   gem 'knapsack', '~> 1.16'
 
   gem 'activerecord_sane_schema_dumper', gem_versions['activerecord_sane_schema_dumper']
@@ -375,7 +383,7 @@ end
 
 group :test do
   gem 'shoulda-matchers', '~> 3.1.2', require: false
-  gem 'email_spec', '~> 1.6.0'
+  gem 'email_spec', '~> 2.2.0'
   gem 'json-schema', '~> 2.8.0'
   gem 'webmock', '~> 2.3.2'
   gem 'rails-controller-testing' if rails5? # Rails5 only gem.
@@ -383,9 +391,10 @@ group :test do
   gem 'sham_rack', '~> 1.3.6'
   gem 'concurrent-ruby', '~> 1.0.5'
   gem 'test-prof', '~> 0.2.5'
+  gem 'rspec_junit_formatter'
 end
 
-gem 'octokit', '~> 4.8'
+gem 'octokit', '~> 4.9'
 
 gem 'mail_room', '~> 0.9.1'
 
@@ -393,6 +402,7 @@ gem 'email_reply_trimmer', '~> 0.1'
 gem 'html2text'
 
 gem 'ruby-prof', '~> 0.17.0'
+gem 'rbtrace', '~> 0.4', require: false
 
 # OAuth
 gem 'oauth2', '~> 1.4'
@@ -405,18 +415,17 @@ gem 'vmstat', '~> 2.3.0'
 gem 'sys-filesystem', '~> 1.1.6'
 
 # SSH host key support
-gem 'net-ssh', '~> 4.2.0'
+gem 'net-ssh', '~> 5.0'
 gem 'sshkey', '~> 1.9.0'
 
 # Required for ED25519 SSH host key support
 group :ed25519 do
-  gem 'rbnacl-libsodium'
-  gem 'rbnacl', '~> 4.0'
+  gem 'ed25519', '~> 1.2'
   gem 'bcrypt_pbkdf', '~> 1.0'
 end
 
 # Gitaly GRPC client
-gem 'gitaly-proto', '~> 0.99.0', require: 'gitaly'
+gem 'gitaly-proto', '~> 0.117.0', require: 'gitaly'
 gem 'grpc', '~> 1.11.0'
 
 # Locked until https://github.com/google/protobuf/issues/4210 is closed
@@ -434,4 +443,4 @@ gem 'lograge', '~> 0.5'
 gem 'grape_logging', '~> 1.7'
 
 # Asset synchronization
-gem 'asset_sync', '~> 2.2.0'
+gem 'asset_sync', '~> 2.4'
diff --git a/pkgs/applications/version-management/gitlab/Gemfile.lock b/pkgs/applications/version-management/gitlab/Gemfile.lock
index 2a63ee6a5328..e41719ec79d3 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/Gemfile.lock
@@ -49,7 +49,6 @@ GEM
       public_suffix (>= 2.0.2, < 4.0)
     aes_key_wrap (1.0.1)
     akismet (2.0.0)
-    allocations (1.0.5)
     arel (6.0.4)
     asana (0.6.0)
       faraday (~> 0.9)
@@ -59,7 +58,7 @@ GEM
     asciidoctor (1.5.6.2)
     asciidoctor-plantuml (0.0.8)
       asciidoctor (~> 1.5)
-    asset_sync (2.2.0)
+    asset_sync (2.4.0)
       activemodel (>= 4.1.0)
       fog-core
       mime-types (>= 2.99)
@@ -69,10 +68,7 @@ GEM
     attr_encrypted (3.1.0)
       encryptor (~> 3.0.0)
     attr_required (1.0.0)
-    autoprefixer-rails (6.2.3)
-      execjs
-      json
-    awesome_print (1.2.0)
+    awesome_print (1.8.0)
     axiom-types (0.1.1)
       descendants_tracker (~> 0.0.4)
       ice_nine (~> 0.11.0)
@@ -80,7 +76,7 @@ GEM
     babosa (1.0.2)
     base32 (0.3.2)
     batch-loader (1.2.1)
-    bcrypt (3.1.11)
+    bcrypt (3.1.12)
     bcrypt_pbkdf (1.0.0)
     benchmark-ips (2.3.0)
     better_errors (2.1.1)
@@ -90,13 +86,11 @@ GEM
     bindata (2.4.3)
     binding_of_caller (0.7.2)
       debug_inspector (>= 0.0.1)
-    blankslate (2.1.2.4)
-    bootstrap-sass (3.3.6)
-      autoprefixer-rails (>= 5.2.1)
-      sass (>= 3.3.4)
+    bootsnap (1.3.1)
+      msgpack (~> 1.0)
     bootstrap_form (2.7.0)
     brakeman (4.2.1)
-    browser (2.2.0)
+    browser (2.5.3)
     builder (3.2.3)
     bullet (5.5.1)
       activesupport (>= 3.0.0)
@@ -115,24 +109,23 @@ GEM
     capybara-screenshot (1.0.14)
       capybara (>= 1.0, < 3)
       launchy
-    carrierwave (1.2.1)
+    carrierwave (1.2.3)
       activemodel (>= 4.0.0)
       activesupport (>= 4.0.0)
       mime-types (>= 1.16)
     cause (0.1)
     charlock_holmes (0.7.6)
-    childprocess (0.7.0)
+    childprocess (0.9.0)
       ffi (~> 1.0, >= 1.0.11)
     chronic (0.10.2)
     chronic_duration (0.10.6)
       numerizer (~> 0.1.1)
     chunky_png (1.3.5)
     citrus (3.0.2)
-    coderay (1.1.1)
+    coderay (1.1.2)
     coercible (1.0.0)
       descendants_tracker (~> 0.0.1)
-    colorize (0.7.7)
-    commonmarker (0.17.8)
+    commonmarker (0.17.13)
       ruby-enum (~> 0.5)
     concord (0.1.5)
       adamantium (~> 0.2.0)
@@ -147,8 +140,6 @@ GEM
     creole (0.5.0)
     css_parser (1.5.0)
       addressable
-    d3_rails (3.5.11)
-      railties (>= 3.1.0)
     daemons (1.2.3)
     database_cleaner (1.5.3)
     debug_inspector (0.0.2)
@@ -177,19 +168,21 @@ GEM
     diff-lcs (1.3)
     diffy (3.1.0)
     docile (1.1.5)
-    domain_name (0.5.20170404)
+    domain_name (0.5.20180417)
       unf (>= 0.0.5, < 1.0.0)
     doorkeeper (4.3.2)
       railties (>= 4.2)
-    doorkeeper-openid_connect (1.3.0)
+    doorkeeper-openid_connect (1.5.0)
       doorkeeper (~> 4.3)
       json-jwt (~> 1.6)
     dropzonejs-rails (0.7.2)
       rails (> 3.1)
+    ed25519 (1.2.4)
     email_reply_trimmer (0.1.6)
-    email_spec (1.6.0)
+    email_spec (2.2.0)
+      htmlentities (~> 4.3.3)
       launchy (~> 2.1)
-      mail (~> 2.2)
+      mail (~> 2.7)
     encryptor (3.0.0)
     equalizer (0.0.11)
     erubis (2.7.0)
@@ -197,7 +190,7 @@ GEM
     et-orbi (1.0.3)
       tzinfo
     eventmachine (1.0.8)
-    excon (0.60.0)
+    excon (0.62.0)
     execjs (2.6.0)
     expression_parser (0.9.0)
     factory_bot (4.8.2)
@@ -215,12 +208,7 @@ GEM
     fast_blank (1.0.0)
     fast_gettext (1.6.0)
     ffaker (2.4.0)
-    ffi (1.9.18)
-    flay (2.10.0)
-      erubis (~> 2.7.0)
-      path_expander (~> 1.0)
-      ruby_parser (~> 3.0)
-      sexp_processor (~> 4.0)
+    ffi (1.9.25)
     flipper (0.13.0)
     flipper-active_record (0.13.0)
       activerecord (>= 3.2, < 6)
@@ -245,11 +233,11 @@ GEM
       builder
       excon (~> 0.58)
       formatador (~> 0.2)
-    fog-google (1.3.3)
+    fog-google (1.7.1)
       fog-core
       fog-json
       fog-xml
-      google-api-client (~> 0.19.1)
+      google-api-client (~> 0.23.0)
     fog-json (1.0.2)
       fog-core (~> 1.0)
       multi_json (~> 1.10)
@@ -275,8 +263,6 @@ GEM
     fuubar (2.2.0)
       rspec-core (~> 3.0)
       ruby-progressbar (~> 1.4)
-    gemnasium-gitlab-service (0.2.6)
-      rugged (~> 0.21)
     gemojione (3.3.0)
       json
     get_process_mem (0.2.0)
@@ -290,8 +276,7 @@ GEM
       gettext_i18n_rails (>= 0.7.1)
       po_to_json (>= 1.0.0)
       rails (>= 3.2.0)
-    gherkin-ruby (0.3.2)
-    gitaly-proto (0.99.0)
+    gitaly-proto (0.117.0)
       google-protobuf (~> 3.1)
       grpc (~> 1.10)
     github-linguist (5.3.3)
@@ -304,15 +289,15 @@ GEM
       flowdock (~> 0.7)
       gitlab-grit (>= 2.4.1)
       multi_json
-    gitlab-gollum-lib (4.2.7.2)
+    gitlab-gollum-lib (4.2.7.5)
       gemojione (~> 3.2)
       github-markup (~> 1.6)
       gollum-grit_adapter (~> 1.0)
       nokogiri (>= 1.6.1, < 2.0)
       rouge (~> 3.1)
-      sanitize (~> 2.1)
+      sanitize (~> 4.6.4)
       stringex (~> 2.6)
-    gitlab-gollum-rugged_adapter (0.4.4)
+    gitlab-gollum-rugged_adapter (0.4.4.1)
       mime-types (>= 1.15)
       rugged (~> 0.25)
     gitlab-grit (2.8.2)
@@ -320,9 +305,9 @@ GEM
       diff-lcs (~> 1.1)
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
-    gitlab-markup (1.6.3)
-    gitlab-styles (2.3.2)
-      rubocop (~> 0.51)
+    gitlab-markup (1.6.4)
+    gitlab-styles (2.4.1)
+      rubocop (~> 0.54.0)
       rubocop-gitlab-security (~> 0.1.0)
       rubocop-rspec (~> 1.19)
     gitlab_omniauth-ldap (2.0.4)
@@ -334,12 +319,11 @@ GEM
       activesupport (>= 4.2.0)
     gollum-grit_adapter (1.0.1)
       gitlab-grit (~> 2.7, >= 2.7.1)
-    gon (6.1.0)
+    gon (6.2.0)
       actionpack (>= 3.0)
-      json
       multi_json
       request_store (>= 1.0)
-    google-api-client (0.19.8)
+    google-api-client (0.23.4)
       addressable (~> 2.5, >= 2.5.1)
       googleauth (>= 0.5, < 0.7.0)
       httpclient (>= 2.8.1, < 3.0)
@@ -359,7 +343,7 @@ GEM
       signet (~> 0.7)
     gpgme (2.0.13)
       mini_portile2 (~> 2.1)
-    grape (1.0.2)
+    grape (1.0.3)
       activesupport
       builder
       mustermann-grape (~> 1.0.0)
@@ -369,17 +353,22 @@ GEM
     grape-entity (0.7.1)
       activesupport (>= 4.0)
       multi_json (>= 1.3.2)
-    grape-route-helpers (2.1.0)
-      activesupport
-      grape (>= 0.16.0)
-      rake
+    grape-path-helpers (1.0.6)
+      activesupport (>= 4, < 5.1)
+      grape (~> 1.0)
+      rake (~> 12)
     grape_logging (1.7.0)
       grape
+    graphiql-rails (1.4.10)
+      railties
+      sprockets-rails
+    graphql (1.8.1)
     grpc (1.11.0)
       google-protobuf (~> 3.1)
       googleapis-common-protos-types (~> 1.0.0)
       googleauth (>= 0.5.1, < 0.7)
-    haml (4.0.7)
+    haml (5.0.4)
+      temple (>= 0.8.0)
       tilt
     haml_lint (0.26.0)
       haml (>= 4.0, < 5.1)
@@ -387,10 +376,11 @@ GEM
       rake (>= 10, < 13)
       rubocop (>= 0.49.0)
       sysexits (~> 1.1)
-    hamlit (2.6.1)
-      temple (~> 0.7.6)
+    hamlit (2.8.8)
+      temple (>= 0.8.0)
       thor
       tilt
+    hangouts-chat (0.0.5)
     hashdiff (0.3.4)
     hashie (3.5.7)
     hashie-forbidden_attributes (0.1.1)
@@ -400,7 +390,7 @@ GEM
     hipchat (1.5.2)
       httparty
       mimemagic
-    html-pipeline (2.7.1)
+    html-pipeline (2.8.4)
       activesupport (>= 2)
       nokogiri (>= 1.4)
     html2text (0.2.0)
@@ -421,6 +411,7 @@ GEM
     httpclient (2.8.3)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
+    icalendar (2.4.1)
     ice_nine (0.11.2)
     influxdb (0.2.3)
       cause
@@ -431,13 +422,13 @@ GEM
       multipart-post
       oauth (~> 0.5, >= 0.5.0)
     jquery-atwho-rails (1.3.2)
+    js_regex (2.2.1)
+      regexp_parser (>= 0.4.11, <= 0.5.0)
     json (1.8.6)
-    json-jwt (1.9.2)
+    json-jwt (1.9.4)
       activesupport
       aes_key_wrap
       bindata
-      securecompare
-      url_safe_base64
     json-schema (2.8.0)
       addressable (>= 2.4)
     jwt (1.5.6)
@@ -456,10 +447,9 @@ GEM
     kgio (2.10.0)
     knapsack (1.16.0)
       rake
-      timecop (>= 0.1.0)
-    kubeclient (3.0.0)
+    kubeclient (3.1.0)
       http (~> 2.2.2)
-      recursive-open-struct (~> 1.0.4)
+      recursive-open-struct (~> 1.0, >= 1.0.4)
       rest-client (~> 2.0)
     launchy (2.4.3)
       addressable (~> 2.3)
@@ -469,13 +459,12 @@ GEM
       actionmailer (>= 3.2)
       letter_opener (~> 1.0)
       railties (>= 3.2)
-    license_finder (3.1.1)
+    license_finder (5.4.0)
       bundler
-      httparty
       rubyzip
       thor
-      toml (= 0.1.2)
-      with_env (> 1.0)
+      toml (= 0.2.0)
+      with_env (= 1.1.0)
       xml-simple
     licensee (8.9.2)
       rugged (~> 0.24)
@@ -498,15 +487,17 @@ GEM
     memoist (0.16.0)
     memoizable (0.4.2)
       thread_safe (~> 0.3, >= 0.3.1)
-    method_source (0.8.2)
+    method_source (0.9.0)
     mime-types (3.1)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2016.0521)
     mimemagic (0.3.0)
+    mini_magick (4.8.0)
     mini_mime (1.0.0)
     mini_portile2 (2.3.0)
     minitest (5.7.0)
     mousetrap-rails (1.4.6)
+    msgpack (1.2.4)
     multi_json (1.13.1)
     multi_xml (0.6.0)
     multipart-post (2.0.0)
@@ -515,10 +506,12 @@ GEM
       mustermann (~> 1.0.0)
     mysql2 (0.4.10)
     net-ldap (0.16.0)
-    net-ssh (4.2.0)
+    net-ssh (5.0.1)
     netrc (0.11.0)
-    nokogiri (1.8.2)
+    nokogiri (1.8.4)
       mini_portile2 (~> 2.3.0)
+    nokogumbo (1.5.0)
+      nokogiri
     numerizer (0.1.1)
     oauth (0.5.4)
     oauth2 (1.4.0)
@@ -527,15 +520,16 @@ GEM
       multi_json (~> 1.3)
       multi_xml (~> 0.5)
       rack (>= 1.2, < 3)
-    octokit (4.8.0)
+    octokit (4.9.0)
       sawyer (~> 0.8.0, >= 0.5.3)
     omniauth (1.8.1)
       hashie (>= 3.4.6, < 3.6.0)
       rack (>= 1.6.2, < 3)
     omniauth-auth0 (2.0.0)
       omniauth-oauth2 (~> 1.4)
-    omniauth-authentiq (0.3.1)
-      omniauth-oauth2 (~> 1.3, >= 1.3.1)
+    omniauth-authentiq (0.3.3)
+      jwt (>= 1.5)
+      omniauth-oauth2 (>= 1.5)
     omniauth-azure-oauth2 (0.0.9)
       jwt (~> 1.0)
       omniauth (~> 1.0)
@@ -549,7 +543,7 @@ GEM
     omniauth-github (1.3.0)
       omniauth (~> 1.5)
       omniauth-oauth2 (>= 1.4.0, < 2.0)
-    omniauth-gitlab (1.0.2)
+    omniauth-gitlab (1.0.3)
       omniauth (~> 1.0)
       omniauth-oauth2 (~> 1.0)
     omniauth-google-oauth2 (0.5.3)
@@ -572,7 +566,7 @@ GEM
     omniauth-saml (1.10.0)
       omniauth (~> 1.3, >= 1.3.2)
       ruby-saml (~> 1.7)
-    omniauth-shibboleth (1.2.1)
+    omniauth-shibboleth (1.3.0)
       omniauth (>= 1.0.0)
     omniauth-twitter (1.4.0)
       omniauth-oauth (~> 1.1)
@@ -588,9 +582,7 @@ GEM
     parallel (1.12.1)
     parser (2.5.1.0)
       ast (~> 2.4.0)
-    parslet (1.5.0)
-      blankslate (~> 2.0)
-    path_expander (1.0.2)
+    parslet (1.8.2)
     peek (1.0.1)
       concurrent-ruby (>= 0.9.0)
       concurrent-ruby-ext (>= 0.9.0)
@@ -634,13 +626,12 @@ GEM
       parser
       unparser
     procto (0.0.3)
-    prometheus-client-mmap (0.9.1)
-    pry (0.10.4)
+    prometheus-client-mmap (0.9.4)
+    pry (0.11.3)
       coderay (~> 1.1.0)
-      method_source (~> 0.8.1)
-      slop (~> 3.4)
-    pry-byebug (3.4.2)
-      byebug (~> 9.0)
+      method_source (~> 0.9.0)
+    pry-byebug (3.4.3)
+      byebug (>= 9.0, < 9.1)
       pry (~> 0.10)
     pry-rails (0.3.5)
       pry (>= 0.9.10)
@@ -691,8 +682,7 @@ GEM
       activesupport (= 4.2.10)
       rake (>= 0.8.7)
       thor (>= 0.18.1, < 2.0)
-    rainbow (2.2.2)
-      rake
+    rainbow (3.0.0)
     raindrops (0.18.0)
     rake (12.3.1)
     rb-fsevent (0.10.2)
@@ -700,16 +690,15 @@ GEM
       ffi (>= 0.5.0, < 2)
     rblineprof (0.3.6)
       debugger-ruby_core_source (~> 1.3)
-    rbnacl (4.0.2)
-      ffi
-    rbnacl-libsodium (1.0.11)
-      rbnacl (>= 3.0.1)
-    rdoc (4.2.2)
-      json (~> 1.4)
+    rbtrace (0.4.10)
+      ffi (>= 1.0.6)
+      msgpack (>= 0.4.3)
+      trollop (>= 1.16.2)
+    rdoc (6.0.4)
     re2 (1.1.1)
     recaptcha (3.0.0)
       json
-    recursive-open-struct (1.0.5)
+    recursive-open-struct (1.1.0)
     redcarpet (3.4.0)
     redis (3.3.5)
     redis-actionpack (5.0.2)
@@ -719,8 +708,8 @@ GEM
     redis-activesupport (5.0.4)
       activesupport (>= 3, < 6)
       redis-store (>= 1.3, < 2)
-    redis-namespace (1.5.2)
-      redis (~> 3.0, >= 3.0.4)
+    redis-namespace (1.6.0)
+      redis (>= 3.0.4)
     redis-rack (2.0.4)
       rack (>= 1.5, < 3)
       redis-store (>= 1.2, < 2)
@@ -730,6 +719,7 @@ GEM
       redis-store (>= 1.2, < 2)
     redis-store (1.4.1)
       redis (>= 2.2, < 5)
+    regexp_parser (0.5.0)
     representable (3.0.4)
       declarative (< 0.1.0)
       declarative-option (< 0.2.0)
@@ -742,59 +732,62 @@ GEM
       http-cookie (>= 1.0.2, < 2.0)
       mime-types (>= 1.16, < 4.0)
       netrc (~> 0.8)
-    retriable (3.1.1)
+    retriable (3.1.2)
     rinku (2.0.0)
     rotp (2.1.2)
-    rouge (3.1.1)
+    rouge (3.2.1)
     rqrcode (0.7.0)
       chunky_png
     rqrcode-rails3 (0.1.7)
       rqrcode (>= 0.4.2)
-    rspec (3.6.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-    rspec-core (3.6.0)
-      rspec-support (~> 3.6.0)
-    rspec-expectations (3.6.0)
+    rspec (3.7.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+    rspec-core (3.7.1)
+      rspec-support (~> 3.7.0)
+    rspec-expectations (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-mocks (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-mocks (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
+      rspec-support (~> 3.7.0)
     rspec-parameterized (0.4.0)
       binding_of_caller
       parser
       proc_to_ast
       rspec (>= 2.13, < 4)
       unparser
-    rspec-rails (3.6.0)
+    rspec-rails (3.7.2)
       actionpack (>= 3.0)
       activesupport (>= 3.0)
       railties (>= 3.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-      rspec-support (~> 3.6.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+      rspec-support (~> 3.7.0)
     rspec-retry (0.4.5)
       rspec-core
     rspec-set (0.1.3)
-    rspec-support (3.6.0)
+    rspec-support (3.7.1)
+    rspec_junit_formatter (0.2.3)
+      builder (< 4)
+      rspec-core (>= 2, < 4, != 2.12.0)
     rspec_profiling (0.0.5)
       activerecord
       pg
       rails
       sqlite3
-    rubocop (0.52.1)
+    rubocop (0.54.0)
       parallel (~> 1.10)
-      parser (>= 2.4.0.2, < 3.0)
+      parser (>= 2.5)
       powerpack (~> 0.1)
       rainbow (>= 2.2.2, < 4.0)
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
     rubocop-gitlab-security (0.1.1)
       rubocop (>= 0.51)
-    rubocop-rspec (1.22.1)
+    rubocop-rspec (1.22.2)
       rubocop (>= 0.52.1)
     ruby-enum (0.7.2)
       i18n
@@ -808,13 +801,15 @@ GEM
       sexp_processor (~> 4.1)
     rubyntlm (0.6.2)
     rubypants (0.2.0)
-    rubyzip (1.2.1)
+    rubyzip (1.2.2)
     rufus-scheduler (3.4.0)
       et-orbi (~> 1.0)
-    rugged (0.27.0)
+    rugged (0.27.4)
     safe_yaml (1.0.4)
-    sanitize (2.1.0)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
       nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
     sass (3.5.5)
       sass-listen (~> 4.0.0)
     sass-listen (4.0.0)
@@ -832,15 +827,14 @@ GEM
     scss_lint (0.56.0)
       rake (>= 0.9, < 13)
       sass (~> 3.5.3)
-    securecompare (1.0.0)
     seed-fu (2.3.7)
       activerecord (>= 3.1)
       activesupport (>= 3.1)
     select2-rails (3.5.9.3)
       thor (~> 0.14)
-    selenium-webdriver (3.5.0)
+    selenium-webdriver (3.12.0)
       childprocess (~> 0.5)
-      rubyzip (~> 1.0)
+      rubyzip (~> 1.2)
     sentry-raven (2.7.2)
       faraday (>= 0.7.6, < 1.0)
     settingslogic (2.0.9)
@@ -849,11 +843,11 @@ GEM
       rack
     shoulda-matchers (3.1.2)
       activesupport (>= 4.0.0)
-    sidekiq (5.0.5)
+    sidekiq (5.1.3)
       concurrent-ruby (~> 1.0)
       connection_pool (~> 2.2, >= 2.2.0)
       rack-protection (>= 1.5.0)
-      redis (>= 3.3.4, < 5)
+      redis (>= 3.3.5, < 5)
     sidekiq-cron (0.6.0)
       rufus-scheduler (>= 3.3.0)
       sidekiq (>= 4.2.1)
@@ -871,24 +865,11 @@ GEM
       simplecov-html (~> 0.10.0)
     simplecov-html (0.10.0)
     slack-notifier (1.5.1)
-    slop (3.6.0)
-    spinach (0.8.10)
-      colorize
-      gherkin-ruby (>= 0.3.2)
-      json
-    spinach-rails (0.2.1)
-      capybara (>= 2.0.0)
-      railties (>= 3)
-      spinach (>= 0.4)
-    spinach-rerun-reporter (0.0.2)
-      spinach (~> 0.8)
     spring (2.0.1)
       activesupport (>= 4.2)
     spring-commands-rspec (1.0.4)
       spring (>= 0.9.1)
-    spring-commands-spinach (1.1.0)
-      spring (>= 0.9.1)
-    sprockets (3.7.1)
+    sprockets (3.7.2)
       concurrent-ruby (~> 1.0)
       rack (> 1, < 3)
     sprockets-rails (3.2.1)
@@ -909,7 +890,7 @@ GEM
     sys-filesystem (1.1.6)
       ffi
     sysexits (1.2.0)
-    temple (0.7.7)
+    temple (0.8.0)
     test-prof (0.2.5)
     test_after_commit (1.1.0)
       activerecord (>= 3.2)
@@ -920,13 +901,14 @@ GEM
       rack (>= 1, < 3)
     thor (0.19.4)
     thread_safe (0.3.6)
-    tilt (2.0.6)
+    tilt (2.0.8)
     timecop (0.8.1)
     timfel-krb5-auth (0.8.3)
-    toml (0.1.2)
-      parslet (~> 1.5.0)
+    toml (0.2.0)
+      parslet (~> 1.8.0)
     toml-rb (1.0.0)
       citrus (~> 3.0, > 3.0)
+    trollop (2.1.3)
     truncato (0.7.10)
       htmlentities (~> 4.3.1)
       nokogiri (~> 1.8.0, >= 1.7.0)
@@ -940,7 +922,7 @@ GEM
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.7.5)
-    unicode-display_width (1.3.0)
+    unicode-display_width (1.3.2)
     unicorn (5.1.0)
       kgio (~> 2.6)
       raindrops (~> 0.7)
@@ -956,7 +938,6 @@ GEM
       equalizer (~> 0.0.9)
       parser (>= 2.3.1.2, < 2.6)
       procto (~> 0.0.2)
-    url_safe_base64 (0.2.2)
     validates_hostname (1.0.6)
       activerecord (>= 3.0)
       activesupport (>= 3.0)
@@ -994,13 +975,12 @@ DEPENDENCIES
   acts-as-taggable-on (~> 5.0)
   addressable (~> 2.5.2)
   akismet (~> 2.0)
-  allocations (~> 1.0)
   asana (~> 0.6.0)
   asciidoctor (~> 1.5.6)
   asciidoctor-plantuml (= 0.0.8)
-  asset_sync (~> 2.2.0)
+  asset_sync (~> 2.4)
   attr_encrypted (~> 3.1.0)
-  awesome_print (~> 1.2.0)
+  awesome_print
   babosa (~> 1.0.2)
   base32 (~> 0.3.0)
   batch-loader (~> 1.2.1)
@@ -1008,15 +988,15 @@ DEPENDENCIES
   benchmark-ips (~> 2.3.0)
   better_errors (~> 2.1.0)
   binding_of_caller (~> 0.7.2)
-  bootstrap-sass (~> 3.3.0)
+  bootsnap (~> 1.3)
   bootstrap_form (~> 2.7.0)
   brakeman (~> 4.2)
-  browser (~> 2.2)
+  browser (~> 2.5)
   bullet (~> 5.5.0)
   bundler-audit (~> 0.5.0)
   capybara (~> 2.15)
   capybara-screenshot (~> 1.0.0)
-  carrierwave (~> 1.2)
+  carrierwave (= 1.2.3)
   charlock_holmes (~> 0.7.5)
   chronic (~> 0.10.2)
   chronic_duration (~> 0.10.6)
@@ -1024,7 +1004,6 @@ DEPENDENCIES
   concurrent-ruby (~> 1.0.5)
   connection_pool (~> 2.0)
   creole (~> 0.5.0)
-  d3_rails (~> 3.5.0)
   database_cleaner (~> 1.5.0)
   deckar01-task_list (= 2.0.0)
   default_value_for (~> 3.0.0)
@@ -1033,84 +1012,89 @@ DEPENDENCIES
   devise-two-factor (~> 3.0.0)
   diffy (~> 3.1.0)
   doorkeeper (~> 4.3)
-  doorkeeper-openid_connect (~> 1.3)
+  doorkeeper-openid_connect (~> 1.5)
   dropzonejs-rails (~> 0.7.1)
+  ed25519 (~> 1.2)
   email_reply_trimmer (~> 0.1)
-  email_spec (~> 1.6.0)
+  email_spec (~> 2.2.0)
   factory_bot_rails (~> 4.8.2)
   faraday (~> 0.12)
   fast_blank
   ffaker (~> 2.4)
-  flay (~> 2.10.0)
   flipper (~> 0.13.0)
   flipper-active_record (~> 0.13.0)
   flipper-active_support_cache_store (~> 0.13.0)
   fog-aliyun (~> 0.2.0)
   fog-aws (~> 2.0.1)
   fog-core (~> 1.44)
-  fog-google (~> 1.3.3)
+  fog-google (~> 1.7.1)
   fog-local (~> 0.3)
   fog-openstack (~> 0.1)
   fog-rackspace (~> 0.1.1)
   font-awesome-rails (~> 4.7)
   foreman (~> 0.84.0)
   fuubar (~> 2.2.0)
-  gemnasium-gitlab-service (~> 0.2)
   gemojione (~> 3.3)
   gettext (~> 3.2.2)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.3)
-  gitaly-proto (~> 0.99.0)
+  gitaly-proto (~> 0.117.0)
   github-linguist (~> 5.3.3)
   gitlab-flowdock-git-hook (~> 1.0.1)
   gitlab-gollum-lib (~> 4.2)
   gitlab-gollum-rugged_adapter (~> 0.4.4)
-  gitlab-markup (~> 1.6.2)
-  gitlab-styles (~> 2.3)
+  gitlab-markup (~> 1.6.4)
+  gitlab-styles (~> 2.4)
   gitlab_omniauth-ldap (~> 2.0.4)
-  gon (~> 6.1.0)
-  google-api-client (~> 0.19.8)
+  gon (~> 6.2)
+  google-api-client (~> 0.23)
   google-protobuf (= 3.5.1)
   gpgme
   grape (~> 1.0)
   grape-entity (~> 0.7.1)
-  grape-route-helpers (~> 2.1.0)
+  grape-path-helpers (~> 1.0)
   grape_logging (~> 1.7)
+  graphiql-rails (~> 1.4.10)
+  graphql (~> 1.8.0)
   grpc (~> 1.11.0)
   haml_lint (~> 0.26.0)
-  hamlit (~> 2.6.1)
+  hamlit (~> 2.8.8)
+  hangouts-chat (~> 0.0.5)
   hashie-forbidden_attributes
   health_check (~> 2.6.0)
   hipchat (~> 1.5.0)
-  html-pipeline (~> 2.7.1)
+  html-pipeline (~> 2.8)
   html2text
   httparty (~> 0.13.3)
+  icalendar
   influxdb (~> 0.2)
   jira-ruby (~> 1.4)
   jquery-atwho-rails (~> 1.3.2)
+  js_regex (~> 2.2.1)
   json-schema (~> 2.8.0)
   jwt (~> 1.5.6)
   kaminari (~> 1.0)
   knapsack (~> 1.16)
-  kubeclient (~> 3.0)
+  kubeclient (~> 3.1.0)
   letter_opener_web (~> 1.3.0)
-  license_finder (~> 3.1)
+  license_finder (~> 5.4)
   licensee (~> 8.9)
   lograge (~> 0.5)
   loofah (~> 2.2)
   mail_room (~> 0.9.1)
   method_source (~> 0.8)
+  mini_magick
   minitest (~> 5.7.0)
   mousetrap-rails (~> 1.4.6)
   mysql2 (~> 0.4.10)
   net-ldap
-  net-ssh (~> 4.2.0)
+  net-ssh (~> 5.0)
   nokogiri (~> 1.8.2)
   oauth2 (~> 1.4)
-  octokit (~> 4.8)
+  octokit (~> 4.9)
   omniauth (~> 1.8)
   omniauth-auth0 (~> 2.0.0)
-  omniauth-authentiq (~> 0.3.1)
+  omniauth-authentiq (~> 0.3.3)
   omniauth-azure-oauth2 (~> 0.0.9)
   omniauth-cas3 (~> 1.1.4)
   omniauth-facebook (~> 4.0.0)
@@ -1120,7 +1104,7 @@ DEPENDENCIES
   omniauth-kerberos (~> 0.3.0)
   omniauth-oauth2-generic (~> 0.2.2)
   omniauth-saml (~> 1.10)
-  omniauth-shibboleth (~> 1.2.0)
+  omniauth-shibboleth (~> 1.3.0)
   omniauth-twitter (~> 1.4)
   omniauth_crowd (~> 2.2.0)
   org-ruby (~> 0.9.12)
@@ -1133,7 +1117,7 @@ DEPENDENCIES
   peek-sidekiq (~> 1.0.3)
   pg (~> 0.18.2)
   premailer-rails (~> 1.9.7)
-  prometheus-client-mmap (~> 0.9.1)
+  prometheus-client-mmap (~> 0.9.4)
   pry-byebug (~> 3.4.1)
   pry-rails (~> 0.3.4)
   rack-attack (~> 4.4.1)
@@ -1143,55 +1127,53 @@ DEPENDENCIES
   rails (= 4.2.10)
   rails-deprecated_sanitizer (~> 1.0.3)
   rails-i18n (~> 4.0.9)
-  rainbow (~> 2.2)
+  rainbow (~> 3.0)
   raindrops (~> 0.18)
   rblineprof (~> 0.3.6)
-  rbnacl (~> 4.0)
-  rbnacl-libsodium
-  rdoc (~> 4.2)
+  rbtrace (~> 0.4)
+  rdoc (~> 6.0)
   re2 (~> 1.1.1)
   recaptcha (~> 3.0)
   redcarpet (~> 3.4)
   redis (~> 3.2)
-  redis-namespace (~> 1.5.2)
+  redis-namespace (~> 1.6.0)
   redis-rails (~> 5.0.2)
   request_store (~> 1.3)
   responders (~> 2.0)
   rouge (~> 3.1)
   rqrcode-rails3 (~> 0.1.7)
   rspec-parameterized
-  rspec-rails (~> 3.6.0)
+  rspec-rails (~> 3.7.0)
   rspec-retry (~> 0.4.5)
   rspec-set (~> 0.1.3)
+  rspec_junit_formatter
   rspec_profiling (~> 0.0.5)
-  rubocop (~> 0.52.1)
+  rubocop (~> 0.54.0)
   rubocop-rspec (~> 1.22.1)
   ruby-fogbugz (~> 0.2.1)
   ruby-prof (~> 0.17.0)
+  ruby-progressbar
   ruby_parser (~> 3.8)
   rufus-scheduler (~> 3.4)
   rugged (~> 0.27)
-  sanitize (~> 2.0)
+  sanitize (~> 4.6)
   sass-rails (~> 5.0.6)
   scss_lint (~> 0.56.0)
   seed-fu (~> 2.3.7)
   select2-rails (~> 3.5.9)
-  selenium-webdriver (~> 3.5)
+  selenium-webdriver (~> 3.12)
   sentry-raven (~> 2.7)
   settingslogic (~> 2.0.9)
   sham_rack (~> 1.3.6)
   shoulda-matchers (~> 3.1.2)
-  sidekiq (~> 5.0)
+  sidekiq (~> 5.1)
   sidekiq-cron (~> 0.6.0)
   sidekiq-limit_fetch (~> 3.4)
   simple_po_parser (~> 1.1.2)
   simplecov (~> 0.14.0)
   slack-notifier (~> 1.5.1)
-  spinach-rails (~> 0.2.1)
-  spinach-rerun-reporter (~> 0.0.2)
   spring (~> 2.0.0)
   spring-commands-rspec (~> 1.0.4)
-  spring-commands-spinach (~> 1.1.0)
   sprockets (~> 3.7.0)
   sshkey (~> 1.9.0)
   stackprof (~> 0.2.10)
@@ -1217,4 +1199,4 @@ DEPENDENCIES
   wikicloth (= 0.8.1)
 
 BUNDLED WITH
-   1.16.1
+   1.16.4
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 64e0ef2b59d0..98e2e739e0d7 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, lib, fetchurl, fetchFromGitHub, bundlerEnv
+{ stdenv, lib, fetchurl, fetchFromGitLab, bundlerEnv
 , ruby, tzdata, git, procps, nettools
+, gitlabEnterprise ? false
 }:
 
 let
@@ -8,40 +9,46 @@ let
     inherit ruby;
     gemdir = ./.;
     groups = [ "default" "unicorn" "ed25519" "metrics" ];
-    meta = with lib; {
-      homepage = http://www.gitlab.com/;
-      platforms = platforms.linux;
-      maintainers = with maintainers; [ fpletz globin ];
-      license = licenses.mit;
-    };
   };
 
-  version = "10.8.0";
+  version = "11.3.0";
 
-  gitlabDeb = fetchurl {
-    url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
-    sha256 = "0j5jrlwfpgwfirjnqb9w4snl9w213kdxb1ajyrla211q603d4j34";
+  sources = if gitlabEnterprise then {
+    gitlabDeb = fetchurl {
+      url = "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_${version}-ee.0_amd64.deb/download.deb";
+      sha256 = "1l5cfbc45xa3gq90wyly3szn93szh162g9szc6dnkqx0db70j9l3";
+    };
+    gitlab = fetchFromGitLab {
+      owner = "gitlab-org";
+      repo = "gitlab-ee";
+      rev = "v${version}-ee";
+      sha256 = "0gmainjhs21hipbvshga5dzkjrpmlkk9vxxnxgwjaqbg9wrhw47m";
+    };
+  } else {
+    gitlabDeb = fetchurl {
+      url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_${version}-ce.0_amd64.deb/download.deb";
+      sha256 = "162xy8xpa2qhz10nh2dw0vbd0665pz9984vnim9i30xcafr5picq";
+    };
+    gitlab = fetchFromGitLab {
+      owner = "gitlab-org";
+      repo = "gitlab-ce";
+      rev = "v${version}";
+      sha256 = "158n2qnp1zsj5kk2w3v9xyakgdb739n955hlq3i9sl80q8f4xda3";
+    };
   };
 
 in
 
 stdenv.mkDerivation rec {
-  name = "gitlab-${version}";
+  name = "gitlab${if gitlabEnterprise then "-ee" else ""}-${version}";
 
-  src = fetchFromGitHub {
-    owner = "gitlabhq";
-    repo = "gitlabhq";
-    rev = "v${version}";
-    sha256 = "1idvi27xpghvvb3sv62afhcnnswvjlrbg5lld79a761kd4187cym";
-  };
+  src = sources.gitlab;
 
   buildInputs = [
     rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler tzdata git procps nettools
   ];
 
-  patches = [
-    ./remove-hardcoded-locations.patch
-  ];
+  patches = [ ./remove-hardcoded-locations.patch ];
 
   postPatch = ''
     # For reasons I don't understand "bundle exec" ignores the
@@ -72,13 +79,14 @@ stdenv.mkDerivation rec {
   buildPhase = ''
     mv config/gitlab.yml.example config/gitlab.yml
 
-    # work around unpacking deb containing binary with suid bit
-    ar p ${gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
+    # Building this requires yarn, node &c, so we just get it from the deb
+    ar p ${sources.gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
+    # Work around unpacking deb containing binary with suid bit
     tar -f gitlab-deb-data.tar --delete ./opt/gitlab/embedded/bin/ksu
     tar -xf gitlab-deb-data.tar
 
     mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public
-    rm -rf opt
+    rm -rf opt # only directory in data.tar.gz
 
     mv config/gitlab.yml config/gitlab.yml.example
     rm -f config/secrets.yml
@@ -105,10 +113,19 @@ stdenv.mkDerivation rec {
     ruby = rubyEnv.wrappedRuby;
   };
 
-  meta = with stdenv.lib; {
-    description = "Web-based Git-repository manager";
-    homepage = https://gitlab.com;
-    license = licenses.mit;
+  meta = with lib; {
+    homepage = http://www.gitlab.com/;
     platforms = platforms.linux;
-  };
+    maintainers = with maintainers; [ fpletz globin krav ];
+  } // (if gitlabEnterprise then
+    {
+      license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE
+      description = "GitLab Enterprise Edition";
+    }
+  else
+    {
+      license = licenses.mit;
+      description = "GitLab Community Edition";
+      longDescription = "GitLab Community Edition (CE) is an open source end-to-end software development platform with built-in version control, issue tracking, code review, CI/CD, and more. Self-host GitLab CE on your own servers, in a container, or on a cloud provider.";
+    });
 }
diff --git a/pkgs/applications/version-management/gitlab/fix-36783.patch b/pkgs/applications/version-management/gitlab/fix-36783.patch
deleted file mode 100644
index 64301fa2c526..000000000000
--- a/pkgs/applications/version-management/gitlab/fix-36783.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/app/workers/post_receive.rb
-+++ b/app/workers/post_receive.rb
-@@ -3,7 +3,9 @@ class PostReceive
-   include DedicatedSidekiqQueue
-
-   def perform(gl_repository, identifier, changes)
--    project, is_wiki = Gitlab::GlRepository.parse(gl_repository)
-+    # XXX: https://gitlab.com/gitlab-org/gitlab-ce/issues/36783
-+    # project, is_wiki = Gitlab::GlRepository.parse(gl_repository)
-+    project, is_wiki = parse_project_identifier(gl_repository)
-
-     if project.nil?
-       log("Triggered hook for non-existing project with gl_repository \"#{gl_repository}\"")
-@@ -59,6 +61,15 @@ class PostReceive
-     # Nothing defined here yet.
-   end
-
-+  # XXX: https://gitlab.com/gitlab-org/gitlab-ce/issues/36783
-+  def parse_project_identifier(project_identifier)
-+    if project_identifier.start_with?('/')
-+      Gitlab::RepoPath.parse(project_identifier)
-+    else
-+      Gitlab::GlRepository.parse(project_identifier)
-+    end
-+  end
-+
-   def log(message)
-     Gitlab::GitLogger.error("POST-RECEIVE: #{message}")
-   end
diff --git a/pkgs/applications/version-management/gitlab/gemset.nix b/pkgs/applications/version-management/gitlab/gemset.nix
index 57c274566166..65aac9891037 100644
--- a/pkgs/applications/version-management/gitlab/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gemset.nix
@@ -130,14 +130,6 @@
     };
     version = "2.0.0";
   };
-  allocations = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1y7z66lpzabyvviphk1fnzvrj5vhv7v9vppcnkrf0n5wh8qwx2zi";
-      type = "gem";
-    };
-    version = "1.0.5";
-  };
   arel = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -176,10 +168,10 @@
     dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "044nqqnbib1bpld33j5jxcql06d6fr6zmhq8hlm69zqd0xd509p0";
+      sha256 = "0wjd662yyg72dwwc6cav7gk2bjv9nkhn056f03h8zmyank451hdf";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.4.0";
   };
   ast = {
     source = {
@@ -214,22 +206,13 @@
     };
     version = "1.0.0";
   };
-  autoprefixer-rails = {
-    dependencies = ["execjs" "json"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0m1w42ncz0p48r5hbyglayxkzrnplw18r99dc1ia2cb3nizkwllx";
-      type = "gem";
-    };
-    version = "6.2.3";
-  };
   awesome_print = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1k85hckprq0s9pakgadf42k1d5s07q23m3y6cs977i6xmwdivyzr";
+      sha256 = "14arh1ixfsd6j5md0agyzvksm5svfkvchb90fp32nn7y3avcmc2h";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.8.0";
   };
   axiom-types = {
     dependencies = ["descendants_tracker" "ice_nine" "thread_safe"];
@@ -267,10 +250,10 @@
   bcrypt = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1d254sdhdj6mzak3fb5x3jam8b94pvl1srladvs53j05a89j5z50";
+      sha256 = "0ysblqxkclmnhrd0kmb5mr8p38mbar633gdsb14b7dhkhgawgzfy";
       type = "gem";
     };
-    version = "3.1.11";
+    version = "3.1.12";
   };
   bcrypt_pbkdf = {
     source = {
@@ -314,22 +297,14 @@
     };
     version = "0.7.2";
   };
-  blankslate = {
+  bootsnap = {
+    dependencies = ["msgpack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jnnq5q5dwy2rbfcl769vd9bk1yn0242f6yjlb9mnqdm9627cdcx";
+      sha256 = "1i3llrdqkndxzhv1a7a2yjpavmdabyq5ps296vmb32hv8fy95xk9";
       type = "gem";
     };
-    version = "2.1.2.4";
-  };
-  bootstrap-sass = {
-    dependencies = ["autoprefixer-rails" "sass"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12hhw42hk9clwfj6yz5v0c5p35wrn5yjnji7bnzsfs99vi2q00ld";
-      type = "gem";
-    };
-    version = "3.3.6";
+    version = "1.3.1";
   };
   bootstrap_form = {
     source = {
@@ -350,10 +325,10 @@
   browser = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "055r4wyc3z61r7mg2bgqpzabpkg8db2q5rciwfx9lwfyhjx19pbv";
+      sha256 = "0sdx0ny34i6vqxdsc7sy9g0nafdbrw8kvvb5xh9m18x1bzpqk92f";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.5.3";
   };
   builder = {
     source = {
@@ -411,10 +386,10 @@
     dependencies = ["activemodel" "activesupport" "mime-types"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "012b5jks7hxis1agiy7rbra5h4zhmwhy95gck3kr22nwdxfk71ii";
+      sha256 = "1k9kla5ncygm97vn33lsrs7ch5zy4qqhhvc8m3khm986yaqh75qs";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.2.3";
   };
   cause = {
     source = {
@@ -436,10 +411,10 @@
     dependencies = ["ffi"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rqf595gv0bb48awck2cvipk78jy5pj08p1r4xbrfpd0i60jb9hd";
+      sha256 = "0a61922kmvcxyj5l70fycapr87gz1dzzlkfpq85rfqk5vdh3d28p";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.9.0";
   };
   chronic = {
     source = {
@@ -477,10 +452,10 @@
   coderay = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x6z923iwr1hi04k6kz5a6llrixflz8h5sskl9mhaaxy9jx2x93r";
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.2";
   };
   coercible = {
     dependencies = ["descendants_tracker"];
@@ -491,22 +466,14 @@
     };
     version = "1.0.0";
   };
-  colorize = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "16bsjcqb6pg3k94dh1l5g3hhx5g2g4g8rlr76dnc78yyzjjrbayn";
-      type = "gem";
-    };
-    version = "0.7.7";
-  };
   commonmarker = {
     dependencies = ["ruby-enum"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02iz27421qk6lnn0xwlz95w5l65dc4rnfqlwyal0h6mnawwy3b5i";
+      sha256 = "1pmjm87p0hxnknp33cxyvkgbr1swfp9gcznssmalm9z8kwyancb9";
       type = "gem";
     };
-    version = "0.17.8";
+    version = "0.17.13";
   };
   concord = {
     dependencies = ["adamantium" "equalizer"];
@@ -576,15 +543,6 @@
     };
     version = "1.5.0";
   };
-  d3_rails = {
-    dependencies = ["railties"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12vxiiflnnkcxak2wmbajyf5wzmcv9wkl4drsp0am72azl8a6g9x";
-      type = "gem";
-    };
-    version = "3.5.11";
-  };
   daemons = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -714,10 +672,10 @@
     dependencies = ["unf"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12hs8yijhak7p2hf1xkh98g0mnp5phq3mrrhywzaxpwz1gw5r3kf";
+      sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
       type = "gem";
     };
-    version = "0.5.20170404";
+    version = "0.5.20180417";
   };
   doorkeeper = {
     dependencies = ["railties"];
@@ -732,10 +690,10 @@
     dependencies = ["doorkeeper" "json-jwt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sknjc7gdyswvyh6bry3l4l57hjcab0bmkyz88i9k7qbb4p1fwck";
+      sha256 = "1wgrz0xcply5vl6d1m62blqwcbn4v0b27bswyws2y9wbyglz6f95";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.5.0";
   };
   dropzonejs-rails = {
     dependencies = ["rails"];
@@ -746,6 +704,14 @@
     };
     version = "0.7.2";
   };
+  ed25519 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
   email_reply_trimmer = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -755,13 +721,13 @@
     version = "0.1.6";
   };
   email_spec = {
-    dependencies = ["launchy" "mail"];
+    dependencies = ["htmlentities" "launchy" "mail"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00p1cc69ncrgg7m45va43pszip8anx5735w1lsb7p5ygkyw8nnpv";
+      sha256 = "0yadaif80cf2ry0nvhir1s70xmm22xzncq6vfvvffdd8h02ridv0";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "2.2.0";
   };
   encryptor = {
     source = {
@@ -815,10 +781,10 @@
   excon = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rxwlfs7dq4r3bi9avgn7j6bz4hq1a3hdlr9xwdiyp4dp4286xfc";
+      sha256 = "15l9w0938c19nxmrp09n75qpmm64k12xj69h47yvxzcxcpbgnkb2";
       type = "gem";
     };
-    version = "0.60.0";
+    version = "0.62.0";
   };
   execjs = {
     source = {
@@ -908,19 +874,10 @@
   ffi = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
-      type = "gem";
-    };
-    version = "1.9.18";
-  };
-  flay = {
-    dependencies = ["erubis" "path_expander" "ruby_parser" "sexp_processor"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0rzggr9w6z2jvs3mv0bp7d64yjivpp93ww9g4j9azzcfjqnh9hn3";
+      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
       type = "gem";
     };
-    version = "2.10.0";
+    version = "1.9.25";
   };
   flipper = {
     source = {
@@ -988,10 +945,10 @@
     dependencies = ["fog-core" "fog-json" "fog-xml" "google-api-client"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09q0khxyaqckgz2d44sp4zkw61gbmhjdww0wsqjy5mwj041bwn3i";
+      sha256 = "0azs1i061ig0x1cljdy68hjskzj8d25xkq8nqf3z7qya5lmfn1z2";
       type = "gem";
     };
-    version = "1.3.3";
+    version = "1.7.1";
   };
   fog-json = {
     dependencies = ["fog-core" "multi_json"];
@@ -1073,15 +1030,6 @@
     };
     version = "2.2.0";
   };
-  gemnasium-gitlab-service = {
-    dependencies = ["rugged"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1qv7fkahmqkah3770ycrxd0x2ais4z41hb43a0r8q8wcdklns3m3";
-      type = "gem";
-    };
-    version = "0.2.6";
-  };
   gemojione = {
     dependencies = ["json"];
     source = {
@@ -1126,22 +1074,14 @@
     };
     version = "1.3.0";
   };
-  gherkin-ruby = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "18ay7yiibf4sl9n94k7mbi4k5zj2igl4j71qcmkswv69znyx0sn1";
-      type = "gem";
-    };
-    version = "0.3.2";
-  };
   gitaly-proto = {
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1y5sn60h71ssxmc8br32fqhgmfqxgrmdlg4vya8dyy37ai20f85z";
+      sha256 = "0ixgzw4clmhjhmv3fy9niq4x16k1yn9iyjbc99z5674xlp7nm40i";
       type = "gem";
     };
-    version = "0.99.0";
+    version = "0.117.0";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@@ -1173,19 +1113,19 @@
     dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1a1dv8n33pj2il07c8z7gz5542iby0z2qwymv8yj1kcn4avs4dxv";
+      sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
       type = "gem";
     };
-    version = "4.2.7.2";
+    version = "4.2.7.5";
   };
   gitlab-gollum-rugged_adapter = {
     dependencies = ["mime-types" "rugged"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zk89c2ljv9skcxzwnr84rqxv3iam30n5liv5r8hgl0l67qbg1mg";
+      sha256 = "092i02k3kd4ghk1h1l5yrvi9b180dgfxrvwni26facb2kc9f3wbi";
       type = "gem";
     };
-    version = "0.4.4";
+    version = "0.4.4.1";
   };
   gitlab-grit = {
     dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
@@ -1199,19 +1139,19 @@
   gitlab-markup = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
+      sha256 = "1v6w3z7smmkqnhphb4ghgpqg61vimflqzpszybji0li99f2k1jb6";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.4";
   };
   gitlab-styles = {
     dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m0ihbp7kjis03pcdx5310j7nzsxh22hfailnz0j467zab9jiap0";
+      sha256 = "1ywizn3191mjl7ibxlfajaxm5vkywwl4i9q2xh6miq37nk2q98dx";
       type = "gem";
     };
-    version = "2.3.2";
+    version = "2.4.1";
   };
   gitlab_omniauth-ldap = {
     dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
@@ -1241,22 +1181,22 @@
     version = "1.0.1";
   };
   gon = {
-    dependencies = ["actionpack" "json" "multi_json" "request_store"];
+    dependencies = ["actionpack" "multi_json" "request_store"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jmf6ly9wfrg52xkk9qb4hlfn3zdmz62ivclhp4f424m39rd9ngz";
+      sha256 = "0q9nvnw98mbb40h7mlzn1zk40r2l29yybhinmiqhrq8a6adsv806";
       type = "gem";
     };
-    version = "6.1.0";
+    version = "6.2.0";
   };
   google-api-client = {
     dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gk6c21na1sizgsi71c6l6gpyjgib863jg991ycmrdnpr12mvs0q";
+      sha256 = "05h2lca9b334ayabgs3h0mzc2wg3csvkqv1lv3iirpgf90ypbk1k";
       type = "gem";
     };
-    version = "0.19.8";
+    version = "0.23.4";
   };
   google-protobuf = {
     source = {
@@ -1297,10 +1237,10 @@
     dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nv7ijyr20can779cfgna76dwrckmscpc7nxj699lrwarr9as17v";
+      sha256 = "1lz17804lpip6cm3g0j9xyzc38lxsn84cl3v3ixn6djnwlmp6427";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   grape-entity = {
     dependencies = ["activesupport" "multi_json"];
@@ -1311,14 +1251,14 @@
     };
     version = "0.7.1";
   };
-  grape-route-helpers = {
+  grape-path-helpers = {
     dependencies = ["activesupport" "grape" "rake"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ja4dlakk6r8p2cx113kymz9sbhdybjsiynnqpfs71lv0r6mmghj";
+      sha256 = "13h5575xfc144wsr48sp3qngpwvh4ikz4r3m55j8jmdr6sa16rbw";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "1.0.6";
   };
   grape_logging = {
     dependencies = ["grape"];
@@ -1329,6 +1269,23 @@
     };
     version = "1.7.0";
   };
+  graphiql-rails = {
+    dependencies = ["railties" "sprockets-rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q5zipwgjgaan9lfqakdkm5ry8afgkq79bkimgksn6jyyvpz6w8";
+      type = "gem";
+    };
+    version = "1.4.10";
+  };
+  graphql = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10bnl8yjyg5x6h787cfkpd5gphl5z5jblj8fc9lbmgk27n2knssl";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
   grpc = {
     dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
@@ -1339,13 +1296,13 @@
     version = "1.11.0";
   };
   haml = {
-    dependencies = ["tilt"];
+    dependencies = ["temple" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mrzjgkygvfii66bbylj2j93na8i89998yi01fin3whwqbvx0m1p";
+      sha256 = "1q0a9fvqh8kn6wm97fcks6qzbjd400bv8bx748w8v87m7p4klhac";
       type = "gem";
     };
-    version = "4.0.7";
+    version = "5.0.4";
   };
   haml_lint = {
     dependencies = ["haml" "rainbow" "rake" "rubocop" "sysexits"];
@@ -1360,10 +1317,18 @@
     dependencies = ["temple" "thor" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ph4kv2ddr538f9ni2fmk7aq38djv5am29r3m6y64adg52n6jma9";
+      sha256 = "0hk338vkzmwszxdh0q02iw88rbr3bj3fd7fzn4psm8wy80zcgl9i";
       type = "gem";
     };
-    version = "2.6.1";
+    version = "2.8.8";
+  };
+  hangouts-chat = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dmnv3723c22683bzys8walkl6wi74xzawxjbhwqzjdbwk3bdgmx";
+      type = "gem";
+    };
+    version = "0.0.5";
   };
   hashdiff = {
     source = {
@@ -1412,10 +1377,10 @@
     dependencies = ["activesupport" "nokogiri"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hkx70z9ijgnncmrna9qdh9ajn9m7v146k91j257lrzyq2f6jdjd";
+      sha256 = "1mpj5y13jk1arqkhdk66n49kyglmci980c1l6np7pqgyjllb68ad";
       type = "gem";
     };
-    version = "2.7.1";
+    version = "2.8.4";
   };
   html2text = {
     dependencies = ["nokogiri"];
@@ -1494,6 +1459,14 @@
     };
     version = "0.9.5";
   };
+  icalendar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xsydpp2xph00awi25axv2mwjd5p2rlgd4qb3kh05lvq795kirxd";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
   ice_nine = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1536,6 +1509,15 @@
     };
     version = "1.3.2";
   };
+  js_regex = {
+    dependencies = ["regexp_parser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lnyd4c7lybhra3l6dai7j83lh3xapqjb340pp0h4bnqjgx52bkf";
+      type = "gem";
+    };
+    version = "2.2.1";
+  };
   json = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1545,13 +1527,13 @@
     version = "1.8.6";
   };
   json-jwt = {
-    dependencies = ["activesupport" "aes_key_wrap" "bindata" "securecompare" "url_safe_base64"];
+    dependencies = ["activesupport" "aes_key_wrap" "bindata"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08sisbiz851ny0bgikfqdqjn1hqpgrzsfzddpm7s5a8ln51s9x78";
+      sha256 = "065k7vffdki73f4nz89lxi6wxmcw5dlf593831pgvlbralll6x3r";
       type = "gem";
     };
-    version = "1.9.2";
+    version = "1.9.4";
   };
   json-schema = {
     dependencies = ["addressable"];
@@ -1614,7 +1596,7 @@
     version = "2.10.0";
   };
   knapsack = {
-    dependencies = ["rake" "timecop"];
+    dependencies = ["rake"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1q2y7mb8ii1ncdrlp46l9v2x909gdnjaid2dg5gcicj39hna36di";
@@ -1626,10 +1608,10 @@
     dependencies = ["http" "recursive-open-struct" "rest-client"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "14kmip7zprb7q6rp4lj011ikv33x193sy1642l2gmf8yv320h0sw";
+      sha256 = "1czzdp9lfsrah2jkaddkqzmphyvnk096zm1ra6jddh626d8d53r4";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.1.0";
   };
   launchy = {
     dependencies = ["addressable"];
@@ -1659,13 +1641,13 @@
     version = "1.3.0";
   };
   license_finder = {
-    dependencies = ["httparty" "rubyzip" "thor" "toml" "with_env" "xml-simple"];
+    dependencies = ["rubyzip" "thor" "toml" "with_env" "xml-simple"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12p18a34q8dgzjwi2plgv889kxnxqnnmrqhvjs3ng2z26hv2zfag";
+      sha256 = "01rhqm5m3m22gq6q9f1x9fh3x3wrf9khnnsycblj0xg5frdjv77v";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "5.4.0";
   };
   licensee = {
     dependencies = ["rugged"];
@@ -1756,10 +1738,10 @@
   method_source = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
+      sha256 = "0xqj21j3vfq4ldia6i2akhn2qd84m0iqcnsl49kfpq3xk6x0dzgn";
       type = "gem";
     };
-    version = "0.8.2";
+    version = "0.9.0";
   };
   mime-types = {
     dependencies = ["mime-types-data"];
@@ -1786,6 +1768,14 @@
     };
     version = "0.3.0";
   };
+  mini_magick = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1djxfs9rxw6q6vr6wb4ndxhp1vj1zbwb55s1kf6mz9bzgmswqg0n";
+      type = "gem";
+    };
+    version = "4.8.0";
+  };
   mini_mime = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1818,6 +1808,14 @@
     };
     version = "1.4.6";
   };
+  msgpack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
   multi_json = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1878,10 +1876,10 @@
   net-ssh = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07c4v97zl1daabmri9zlbzs6yvkl56z1q14bw74d53jdj0c17nhx";
+      sha256 = "0hj2i8rk5wb6235r5n19in1hkrp1fbz2bf40xmagavb5ahv7205w";
       type = "gem";
     };
-    version = "4.2.0";
+    version = "5.0.1";
   };
   netrc = {
     source = {
@@ -1895,10 +1893,19 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
       type = "gem";
     };
-    version = "1.8.2";
+    version = "1.8.4";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
   };
   numerizer = {
     source = {
@@ -1929,10 +1936,10 @@
     dependencies = ["sawyer"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1hp77svmpxcwnfajb324i1g2b7jazg23fn4ccjr5y3lww0rnj1dg";
+      sha256 = "1ssn5iyax07a22mvmj0y45bfy8ali129bl1qmasp6bcg03bvk298";
       type = "gem";
     };
-    version = "4.8.0";
+    version = "4.9.0";
   };
   omniauth = {
     dependencies = ["hashie" "rack"];
@@ -1953,13 +1960,13 @@
     version = "2.0.0";
   };
   omniauth-authentiq = {
-    dependencies = ["omniauth-oauth2"];
+    dependencies = ["jwt" "omniauth-oauth2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06hfga3ar8cl4glc3i2plwzhzvssfsz63sqjrvhzsjp4mz81k38c";
+      sha256 = "0k7vajxwplsp188xfj4mi9iqbc7f7djqh02by4mphc51hl87kcqi";
       type = "gem";
     };
-    version = "0.3.1";
+    version = "0.3.3";
   };
   omniauth-azure-oauth2 = {
     dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
@@ -2001,10 +2008,10 @@
     dependencies = ["omniauth" "omniauth-oauth2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hv672p372jq7p9p6dw8i7qyisbny3lq0si077yys1fy4bjw127x";
+      sha256 = "19ydk2zd2mz8zi80z3l03pajpm9357sg3lrankrcb3pirkkdb9fp";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   omniauth-google-oauth2 = {
     dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
@@ -2073,10 +2080,10 @@
     dependencies = ["omniauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0a8pwy23aybxhn545357zdjy0hnpfgldwqk5snmz9kxingpq12jl";
+      sha256 = "04yin7j8xpr8llvank3ivzahqkc6ss5bppc7q6znzdswxmf75fxh";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.3.0";
   };
   omniauth-twitter = {
     dependencies = ["omniauth-oauth" "rack"];
@@ -2139,21 +2146,12 @@
     version = "2.5.1.0";
   };
   parslet = {
-    dependencies = ["blankslate"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0qp1m8n3m6k6g22nn1ivcfkvccq5jmbkw53vvcjw5xssq179l9z3";
-      type = "gem";
-    };
-    version = "1.5.0";
-  };
-  path_expander = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wsymhprfjazdkmfv02kski3iwjjkciwxqjg9brh56sbymcgk34a";
+      sha256 = "12nrzfwjphjlakb9pmpj70hgjwgzvnr8i1zfzddifgyd44vspl88";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.8.2";
   };
   peek = {
     dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "railties"];
@@ -2289,28 +2287,28 @@
   prometheus-client-mmap = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1p3xkk9zal95di5v999mk7sq02fk0fimg633ixvhvv70ph6c8dhn";
+      sha256 = "14ww8c2qy43jw3fzmq54hsljmqmlx9a7zg9sv6ddw48qy118ls10";
       type = "gem";
     };
-    version = "0.9.1";
+    version = "0.9.4";
   };
   pry = {
-    dependencies = ["coderay" "method_source" "slop"];
+    dependencies = ["coderay" "method_source"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05xbzyin63aj2prrv8fbq2d5df2mid93m81hz5bvf2v4hnzs42ar";
+      sha256 = "1mh312k3y94sj0pi160wpia0ps8f4kmzvm505i6bvwynfdh7v30g";
       type = "gem";
     };
-    version = "0.10.4";
+    version = "0.11.3";
   };
   pry-byebug = {
     dependencies = ["byebug" "pry"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lwqc8vjq7b177xfknmigxvahp6dc8i1fy09d3n8ld1ndd909xjq";
+      sha256 = "0g820bqmlq8vvh78895zgrzgmj3g6n63px7cba11s02lpz56630n";
       type = "gem";
     };
-    version = "3.4.2";
+    version = "3.4.3";
   };
   pry-rails = {
     dependencies = ["pry"];
@@ -2462,13 +2460,12 @@
     version = "4.2.10";
   };
   rainbow = {
-    dependencies = ["rake"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
       type = "gem";
     };
-    version = "2.2.2";
+    version = "3.0.0";
   };
   raindrops = {
     source = {
@@ -2512,32 +2509,22 @@
     };
     version = "0.3.6";
   };
-  rbnacl = {
-    dependencies = ["ffi"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "08dkigw8wdx53hviw1zqrs7rcrzqcwh9jd3dvwr72013z9fmyp48";
-      type = "gem";
-    };
-    version = "4.0.2";
-  };
-  rbnacl-libsodium = {
-    dependencies = ["rbnacl"];
+  rbtrace = {
+    dependencies = ["ffi" "msgpack" "trollop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qxrlig0i711zln0qzs9z37bs3wys1i6139bn7p7qxmdpnb9qgda";
+      sha256 = "1zj9xwazjp0g0fmhvc918irzcp2wyciwqzr0y199vc7r5qdr4sqv";
       type = "gem";
     };
-    version = "1.0.11";
+    version = "0.4.10";
   };
   rdoc = {
-    dependencies = ["json"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "027dvwz1g1h4bm40v3kxqbim4p7ww4fcmxa2l1mvwiqm5cjiqd7k";
+      sha256 = "0anv42cqcdc6g4n386mrva7mgav5i0c2ry3yzvzzc6z6hymkmcr7";
       type = "gem";
     };
-    version = "4.2.2";
+    version = "6.0.4";
   };
   re2 = {
     source = {
@@ -2559,10 +2546,10 @@
   recursive-open-struct = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p8x9w9zzv56ka6czdmzl5sbsqjhnb9lkchvw55rf5lp8h0z3r6z";
+      sha256 = "0wfcyigmf5mwrxy76p0bi4sdb4h9afs8jc73pjav5cnqszljjl3c";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.1.0";
   };
   redcarpet = {
     source = {
@@ -2610,10 +2597,10 @@
     dependencies = ["redis"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rp8gfkznfxqzxk9s976k71jnljkh0clkrhnp6vgx46s5yhj9g25";
+      sha256 = "0r7daagrjjribn098dxwbv9zivrbq2rsffbkj2ccxyn9lmjjbgah";
       type = "gem";
     };
-    version = "1.5.2";
+    version = "1.6.0";
   };
   redis-rack = {
     dependencies = ["rack" "redis-store"];
@@ -2642,6 +2629,14 @@
     };
     version = "1.4.1";
   };
+  regexp_parser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1375q2v74cccjh290d9x28fdircvy18v6h0ww7a8i66qhh1jf2pb";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
   representable = {
     dependencies = ["declarative" "declarative-option" "uber"];
     source = {
@@ -2680,10 +2675,10 @@
   retriable = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pnriyn9zh120hxm92vb12hfsf7c98nawyims1shxj3ldpl0l3ar";
+      sha256 = "1q48hqws2dy1vws9schc0kmina40gy7sn5qsndpsfqdslh65snha";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "3.1.2";
   };
   rinku = {
     source = {
@@ -2704,10 +2699,10 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sfhy0xxqjnzqa7qxmpz1bmy0mzcr55qyvi410gsb6d6i4ialbw3";
+      sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "3.2.1";
   };
   rqrcode = {
     dependencies = ["chunky_png"];
@@ -2731,37 +2726,37 @@
     dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
+      sha256 = "0134g96wzxjlig2gxzd240gm2dxfw8izcyi2h6hjmr40syzcyx01";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-core = {
     dependencies = ["rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
+      sha256 = "0zvjbymx3avxm3lf8v4gka3a862vnaxldmwvp6767bpy48nhnvjj";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
+      sha256 = "1fw06wm8jdj8k7wrb8xmzj0fr1wjyb0ya13x31hidnyblm41hmvy";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
+      sha256 = "0b02ya3qhqgmcywqv4570dlhav70r656f7dmvwg89whpkq1z1xr3";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-parameterized = {
     dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"];
@@ -2776,10 +2771,10 @@
     dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cvlmbn90k4rymlfb20ksayns5h199r9ggs67shnnanmrnh9zvyj";
+      sha256 = "0cdcnbv5dppwy3b4jdp5a0wd9m07a8wlqwb9yazn8i7k1k2mwgvx";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.2";
   };
   rspec-retry = {
     dependencies = ["rspec-core"];
@@ -2801,10 +2796,19 @@
   rspec-support = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
+      sha256 = "1nl30xb6jmcl0awhqp6jycl01wdssblifwy921phfml70rd9flj1";
+      type = "gem";
+    };
+    version = "3.7.1";
+  };
+  rspec_junit_formatter = {
+    dependencies = ["builder" "rspec-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hphl8iggqh1mpbbv0avf8735x6jgry5wmkqyzgv1zwnimvja1ai";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "0.2.3";
   };
   rspec_profiling = {
     dependencies = ["activerecord" "pg" "rails" "sqlite3"];
@@ -2819,10 +2823,10 @@
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0d22rr1jnjfkw10rbnqb8plyd7kzf553nm3sbv14xil65s4mkijf";
+      sha256 = "106y99lq0fg62k3vk1w5wwb4vq16pnh4l61skc82xck627z0h8is";
       type = "gem";
     };
-    version = "0.52.1";
+    version = "0.54.0";
   };
   rubocop-gitlab-security = {
     dependencies = ["rubocop"];
@@ -2837,10 +2841,10 @@
     dependencies = ["rubocop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18rd3w2q07vkfdk9nl8apkpyjfw1478qg82zgfnd4hn3r40jkbcx";
+      sha256 = "0vk51h9swvgshan8vp8yjz03qv9vn5vs29i9iddhjwcwgzsganla";
       type = "gem";
     };
-    version = "1.22.1";
+    version = "1.22.2";
   };
   ruby-enum = {
     dependencies = ["i18n"];
@@ -2913,10 +2917,10 @@
   rubyzip = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
+      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.2.2";
   };
   rufus-scheduler = {
     dependencies = ["et-orbi"];
@@ -2930,10 +2934,10 @@
   rugged = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0q1krxgd0ql03x8m9m05x5sxizw5sc7lms7rkp44qf45grpdk3v3";
+      sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
       type = "gem";
     };
-    version = "0.27.0";
+    version = "0.27.4";
   };
   safe_yaml = {
     source = {
@@ -2944,13 +2948,13 @@
     version = "1.0.4";
   };
   sanitize = {
-    dependencies = ["nokogiri"];
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3";
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "4.6.6";
   };
   sass = {
     dependencies = ["sass-listen"];
@@ -2997,14 +3001,6 @@
     };
     version = "0.56.0";
   };
-  securecompare = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0ay65wba4i7bvfqyvf5i4r48q6g70s5m724diz9gdvdavscna36b";
-      type = "gem";
-    };
-    version = "1.0.0";
-  };
   seed-fu = {
     dependencies = ["activerecord" "activesupport"];
     source = {
@@ -3027,10 +3023,10 @@
     dependencies = ["childprocess" "rubyzip"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0w6r0k1w7hpk853qfw18lipyzxs0r0d6xr70zqsjfdn2dwr0rb30";
+      sha256 = "07bl3wjkf254r3ljfl4qdazz5aw60s6nqjwrbbgq754j9b7226kz";
       type = "gem";
     };
-    version = "3.5.0";
+    version = "3.12.0";
   };
   sentry-raven = {
     dependencies = ["faraday"];
@@ -3079,10 +3075,10 @@
     dependencies = ["concurrent-ruby" "connection_pool" "rack-protection" "redis"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mmmv6k4l5rd74zw4xmwsadi0pbbcyzk1cm73zd8fzwra6nfz7sh";
+      sha256 = "0af7sh9ckds36wv80azlanw1ch29nbvr1w3m00mlj1hbk2il6cxh";
       type = "gem";
     };
-    version = "5.0.5";
+    version = "5.1.3";
   };
   sidekiq-cron = {
     dependencies = ["rufus-scheduler" "sidekiq"];
@@ -3144,41 +3140,6 @@
     };
     version = "1.5.1";
   };
-  slop = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
-      type = "gem";
-    };
-    version = "3.6.0";
-  };
-  spinach = {
-    dependencies = ["colorize" "gherkin-ruby" "json"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0phfjs4iw2iqxdaljzwk6qxmi2x86pl3hirmpgw2pgfx76wfx688";
-      type = "gem";
-    };
-    version = "0.8.10";
-  };
-  spinach-rails = {
-    dependencies = ["capybara" "railties" "spinach"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1nfacfylkncfgi59g2wga6m4nzdcjqb8s50cax4nbx362ap4bl70";
-      type = "gem";
-    };
-    version = "0.2.1";
-  };
-  spinach-rerun-reporter = {
-    dependencies = ["spinach"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0fkmp99cpxrdzkjrxw9y9qp8qxk5d1arpmmlg5njx40rlcvx002k";
-      type = "gem";
-    };
-    version = "0.0.2";
-  };
   spring = {
     dependencies = ["activesupport"];
     source = {
@@ -3197,23 +3158,14 @@
     };
     version = "1.0.4";
   };
-  spring-commands-spinach = {
-    dependencies = ["spring"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12qa60sclhnclwi6lskhdgr1l007bca831vhp35f06hq1zmimi2x";
-      type = "gem";
-    };
-    version = "1.1.0";
-  };
   sprockets = {
     dependencies = ["concurrent-ruby" "rack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sv3zk5hwxyjvg7iy9sggjc7k3mfxxif7w8p260rharfyib939ar";
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
       type = "gem";
     };
-    version = "3.7.1";
+    version = "3.7.2";
   };
   sprockets-rails = {
     dependencies = ["actionpack" "activesupport" "sprockets"];
@@ -3302,10 +3254,10 @@
   temple = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xlf1if32xj14mkfwh8nxy3zzjzd9lipni0v2bghknp2kfc1hcz6";
+      sha256 = "00nxf610nzi4n1i2lkby43nrnarvl89fcl6lg19406msr0k3ycmq";
       type = "gem";
     };
-    version = "0.7.7";
+    version = "0.8.0";
   };
   test-prof = {
     source = {
@@ -3360,10 +3312,10 @@
   tilt = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qsyzq2k7blyp1rph56xczwfqi8gplns2whswyr67mdfzdi60vvm";
+      sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
       type = "gem";
     };
-    version = "2.0.6";
+    version = "2.0.8";
   };
   timecop = {
     source = {
@@ -3385,10 +3337,10 @@
     dependencies = ["parslet"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wnvi1g8id1sg6776fvzf98lhfbscchgiy1fp5pvd58a8ds2fq9v";
+      sha256 = "0xj460rkyqvg74xc8kivmbvgc46c6mm7r8mbjs5m2gq8khf8sbki";
       type = "gem";
     };
-    version = "0.1.2";
+    version = "0.2.0";
   };
   toml-rb = {
     dependencies = ["citrus"];
@@ -3399,6 +3351,14 @@
     };
     version = "1.0.0";
   };
+  trollop = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rzx9rkacpq58dsvbbzs4cpybls1v1h36xskkfs5q2askpdr00wq";
+      type = "gem";
+    };
+    version = "2.1.3";
+  };
   truncato = {
     dependencies = ["htmlentities" "nokogiri"];
     source = {
@@ -3462,10 +3422,10 @@
   unicode-display_width = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12pi0gwqdnbx1lv5136v3vyr0img9wr0kxcn4wn54ipq4y41zxq8";
+      sha256 = "0x31fgv1acywbb50prp7y4fr677c2d9gsl6wxmfcrlxbwz7nxn5n";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.3.2";
   };
   unicorn = {
     dependencies = ["kgio" "raindrops"];
@@ -3502,14 +3462,6 @@
     };
     version = "0.2.7";
   };
-  url_safe_base64 = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1wgslyapmw4m6l5f6xvcvrvdz3hbkqczkhmjp96s6pzwcgxvcazz";
-      type = "gem";
-    };
-    version = "0.2.2";
-  };
   validates_hostname = {
     dependencies = ["activerecord" "activesupport"];
     source = {
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index a07a15177d04..cacad5a3e629 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -18,6 +18,7 @@
 , makeWrapper
 , pkgconfig
 , vlc
+, mbedtls
 
 , alsaSupport ? false
 , alsaLib
@@ -29,17 +30,15 @@ let
   optional = stdenv.lib.optional;
 in stdenv.mkDerivation rec {
   name = "obs-studio-${version}";
-  version = "21.1.2";
+  version = "22.0.2";
 
   src = fetchFromGitHub {
     owner = "jp9000";
     repo = "obs-studio";
     rev = "${version}";
-    sha256 = "1gl6qibvckczk3yl44h3yshml6sn3izwn58qpxils5837rpkwlc5";
+    sha256 = "1bgp2lirpsbp54vvl3p345njlpgv0d78vac2aqwbl34wqx5sqdk0";
   };
 
-  patches = [ ./find-xcb.patch ];
-
   nativeBuildInputs = [ cmake
                         pkgconfig
                       ];
@@ -59,6 +58,7 @@ in stdenv.mkDerivation rec {
                   x264
                   vlc
                   makeWrapper
+                  mbedtls
                 ]
                 ++ optional alsaSupport alsaLib
                 ++ optional pulseaudioSupport libpulseaudio;
diff --git a/pkgs/applications/video/obs-studio/find-xcb.patch b/pkgs/applications/video/obs-studio/find-xcb.patch
deleted file mode 100644
index c45aba4ce2f0..000000000000
--- a/pkgs/applications/video/obs-studio/find-xcb.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt
-index cd2b80e1..7d829cdb 100644
---- a/libobs/CMakeLists.txt
-+++ b/libobs/CMakeLists.txt
-@@ -15,6 +15,7 @@ if(UNIX)
- 	find_package(DBus QUIET)
- 	if (NOT APPLE)
- 		find_package(X11_XCB REQUIRED)
-+		find_package(XCB REQUIRED)
- 	endif()
- else()
- 	set(HAVE_DBUS "0")
-@@ -161,12 +162,15 @@ elseif(UNIX)
- 	endif()
- 
- 	include_directories(
--		${X11_XCB_INCLUDE_DIRS})
-+		${X11_XCB_INCLUDE_DIRS}
-+		${XCB_INCLUDE_DIRS})
- 	add_definitions(
--		${X11_XCB_DEFINITIONS})
-+		${X11_XCB_DEFINITIONS}
-+		${XCB_DEFINITIONS})
- 	set(libobs_PLATFORM_DEPS
- 		${libobs_PLATFORM_DEPS}
--		${X11_XCB_LIBRARIES})
-+		${X11_XCB_LIBRARIES}
-+		${XCB_LIBRARIES})
- 
- 	if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
- 		# use the sysinfo compatibility library on bsd
diff --git a/pkgs/build-support/emacs/wrapper.nix b/pkgs/build-support/emacs/wrapper.nix
index 4e780b104b08..e161daffbd37 100644
--- a/pkgs/build-support/emacs/wrapper.nix
+++ b/pkgs/build-support/emacs/wrapper.nix
@@ -21,7 +21,7 @@ set which contains `emacsWithPackages`. For example, to override
 `emacsPackagesNg.emacsWithPackages`,
 ```
 let customEmacsPackages =
-      emacsPackagesNg.overrideScope (super: self: {
+      emacsPackagesNg.overrideScope' (self: super: {
         # use a custom version of emacs
         emacs = ...;
         # use the unstable MELPA version of magit
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 03b3fb1f9f27..6e98099460f8 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -3,8 +3,9 @@
 , img ? pkgs.stdenv.hostPlatform.platform.kernelTarget
 , storeDir ? builtins.storeDir
 , rootModules ?
-    [ "virtio_pci" "virtio_mmio" "virtio_blk" "virtio_balloon" "virtio_rng" "ext4" "unix" "9p" "9pnet_virtio" "crc32c_generic" ]
+    [ "virtio_pci" "virtio_mmio" "virtio_blk" "virtio_balloon" "virtio_rng" "ext4" "unix" "9p" "9pnet_virtio" "crc32c_generic" "sym53c8xx" "virtio_scsi" "ahci "]
       ++ pkgs.lib.optional (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) "rtc_cmos"
+, config
 }:
 
 with pkgs;
@@ -196,9 +197,17 @@ rec {
     ${qemuBinary qemu} \
       -nographic -no-reboot \
       -device virtio-rng-pci \
+      ${if "$diskInterface" == "scsi" then '' \
+        \ # FIXME: /dev/sda is not created within the VM
+        -device lsi53c895a \
+        -device scsi-hd,drive=hd,id=scsi1,bootindex=1 \
+        ''${diskImage:+-drive file=$diskImage,media=disk,if=none,id=hd,cache=unsafe,werror=report} \
+      '' else '' \
+        -drive file=$diskImage,media=disk,if=none,id=hd \
+        -device virtio-blk-pci,scsi=off,drive=hd,id=virtio0,bootindex=1 \
+      \''}
       -virtfs local,path=${storeDir},security_model=none,mount_tag=store \
       -virtfs local,path=$TMPDIR/xchg,security_model=none,mount_tag=xchg \
-      ''${diskImage:+-drive file=$diskImage,if=virtio,cache=unsafe,werror=report} \
       -kernel ${kernel}/${img} \
       -initrd ${initrd}/initrd \
       -append "console=${qemuSerialDevice} panic=1 command=${stage2Init} out=$out mountDisk=$mountDisk loglevel=4" \
@@ -298,12 +307,13 @@ rec {
      `run-vm' will be left behind in the temporary build directory
      that allows you to boot into the VM and debug it interactively. */
 
-  runInLinuxVM = drv: lib.overrideDerivation drv ({ memSize ? 512, QEMU_OPTS ? "", args, builder, ... }: {
+  runInLinuxVM = drv: lib.overrideDerivation drv ({ memSize ? 512, QEMU_OPTS ? "", args, builder, ...  } @ moreArgs : {
     requiredSystemFeatures = [ "kvm" ];
     builder = "${bash}/bin/sh";
     args = ["-e" (vmRunCommand qemuCommandLinux)];
     origArgs = args;
     origBuilder = builder;
+    diskInterface = "${moreArgs.diskInterface}";
     QEMU_OPTS = "${QEMU_OPTS} -m ${toString memSize}";
     passAsFile = []; # HACK fix - see https://github.com/NixOS/nixpkgs/issues/16742
   });
diff --git a/pkgs/data/fonts/ultimate-oldschool-pc-font-pack/default.nix b/pkgs/data/fonts/ultimate-oldschool-pc-font-pack/default.nix
new file mode 100644
index 000000000000..cb68c30a4a2c
--- /dev/null
+++ b/pkgs/data/fonts/ultimate-oldschool-pc-font-pack/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, unzip }:
+
+stdenv.mkDerivation rec {
+  name = "ultimate-oldschool-pc-font-pack-${version}";
+  version = "1.0";
+
+  src = fetchurl {
+    url = "http://int10h.org/oldschool-pc-fonts/download/ultimate_oldschool_pc_font_pack_v${version}.zip";
+    sha256 = "7666cf23176e34ea03a218b5c1500f4ad729d97150ab7bdb7cf2adf4c99a9a7a";
+  };
+
+  buildInputs = [ unzip ];
+
+  dontBuild = true;
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/truetype
+    cp 'Px437 (TrueType - DOS charset)'/*.ttf $out/share/fonts/truetype
+    cp 'PxPlus (TrueType - extended charset)'/*.ttf $out/share/fonts/truetype
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The Ultimate Oldschool PC Font Pack (TTF Fonts)";
+    homepage = "http://int10h.org/oldschool-pc-fonts/";
+    platforms = platforms.unix;
+    license = licenses.cc-by-sa-40;
+    maintainers = [ maintainers.endgame ];
+  };
+}
diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix
index a72c94759fa8..3c837feb6be5 100644
--- a/pkgs/data/misc/hackage/default.nix
+++ b/pkgs/data/misc/hackage/default.nix
@@ -1,6 +1,6 @@
 { fetchurl }:
 
 fetchurl {
-  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/e44c7d34b0e57883da9cc0e09b0b5de3b065fe98.tar.gz";
-  sha256 = "1manarsja8lsvs75zd3jnjhy5yb1576yv8ba0jqa4a1rszrkil1d";
+  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/b16aa9c85633ea49e19aee5e1678d082ce953a17.tar.gz";
+  sha256 = "185p6112b35s2vgbswrmy5lwf09q27gzkpcfla6dbddmbk948d38";
 }
diff --git a/pkgs/development/compilers/dotnet/sdk/default.nix b/pkgs/development/compilers/dotnet/sdk/default.nix
index 0e28e041cc5d..d1db965bc814 100644
--- a/pkgs/development/compilers/dotnet/sdk/default.nix
+++ b/pkgs/development/compilers/dotnet/sdk/default.nix
@@ -21,7 +21,11 @@ in
       sha512 = "639f9f68f225246d9cce798d72d011f65c7eda0d775914d1394df050bddf93e2886555f5eed85a75d6c72e9063a54d8aa053c64c326c683b94e9e0a0570e5654";
     };
 
-    unpackPhase = "tar xvzf $src";
+    unpackPhase = ''
+      mkdir src
+      cd src
+      tar xvzf $src
+    '';
 
     buildPhase = ''
       runHook preBuild
diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix
index 9c87d815b4a9..a4374a452402 100644
--- a/pkgs/development/compilers/ghc/7.10.3.nix
+++ b/pkgs/development/compilers/ghc/7.10.3.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, hscolour
+, bootPkgs
 , coreutils, fetchurl, perl
 , docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, libxml2, libxslt
 
@@ -142,7 +142,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42
-    ghc hscolour
+    ghc bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix
index 935d09b57446..0946db713783 100644
--- a/pkgs/development/compilers/ghc/8.0.2.nix
+++ b/pkgs/development/compilers/ghc/8.0.2.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, hscolour
+, bootPkgs
 , coreutils, fetchpatch, fetchurl, perl, sphinx
 
 , libiconv ? null, ncurses
@@ -144,7 +144,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     perl sphinx
-    ghc hscolour
+    ghc bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghc/8.2.2.nix b/pkgs/development/compilers/ghc/8.2.2.nix
index cf448d8d849a..6a1914a9c2c8 100644
--- a/pkgs/development/compilers/ghc/8.2.2.nix
+++ b/pkgs/development/compilers/ghc/8.2.2.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, alex, happy, hscolour
+, bootPkgs
 , autoconf, autoreconfHook, automake, coreutils, fetchurl, fetchpatch, perl, python3, sphinx
 , runCommand
 
@@ -182,7 +182,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoconf autoreconfHook automake perl python3 sphinx
-    ghc alex happy hscolour
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghc/8.4.3.nix b/pkgs/development/compilers/ghc/8.4.3.nix
index 365f401119da..8fba60d527fd 100644
--- a/pkgs/development/compilers/ghc/8.4.3.nix
+++ b/pkgs/development/compilers/ghc/8.4.3.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, alex, happy, hscolour
+, bootPkgs
 , autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4
 
 , libiconv ? null, ncurses
@@ -184,7 +184,7 @@ stdenv.mkDerivation (rec {
 
   nativeBuildInputs = [
     perl autoconf automake m4 python3
-    ghc alex happy hscolour
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghc/8.6.1.nix b/pkgs/development/compilers/ghc/8.6.1.nix
index d4f2f931c31c..c12401f05778 100644
--- a/pkgs/development/compilers/ghc/8.6.1.nix
+++ b/pkgs/development/compilers/ghc/8.6.1.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, alex, happy, hscolour
+, bootPkgs
 , autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4
 
 , libiconv ? null, ncurses
@@ -169,7 +169,7 @@ stdenv.mkDerivation (rec {
 
   nativeBuildInputs = [
     perl autoconf automake m4 python3
-    ghc alex happy hscolour
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index ee95bd0f6047..af5efbd7df8c 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -1,7 +1,7 @@
 { stdenv, targetPackages
 
 # build-tools
-, bootPkgs, alex, happy, hscolour
+, bootPkgs
 , autoconf, automake, coreutils, fetchgit, perl, python3, m4
 
 , libiconv ? null, ncurses
@@ -150,7 +150,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     perl autoconf automake m4 python3
-    ghc alex happy hscolour
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghcjs-ng/default.nix b/pkgs/development/compilers/ghcjs-ng/default.nix
index 5db2777c8bb0..92211042acd9 100644
--- a/pkgs/development/compilers/ghcjs-ng/default.nix
+++ b/pkgs/development/compilers/ghcjs-ng/default.nix
@@ -4,8 +4,6 @@
 , ghcjsSrcJson ? null
 , ghcjsSrc ? fetchgit (builtins.fromJSON (builtins.readFile ghcjsSrcJson))
 , bootPkgs
-, alex
-, happy
 , stage0
 , haskellLib
 , cabal-install
@@ -24,8 +22,8 @@
 let
   passthru = {
     configuredSrc = callPackage ./configured-ghcjs-src.nix {
-      inherit ghcjsSrc alex happy;
-      inherit (bootPkgs) ghc;
+      inherit ghcjsSrc;
+      inherit (bootPkgs) ghc alex happy;
     };
     genStage0 = callPackage ./mk-stage0.nix { inherit (passthru) configuredSrc; };
     bootPkgs = bootPkgs.extend (lib.foldr lib.composeExtensions (_:_:{}) [
@@ -34,7 +32,10 @@ let
         inherit (self) callPackage;
       })
 
-      (callPackage ./common-overrides.nix { inherit haskellLib alex happy; })
+      (callPackage ./common-overrides.nix {
+        inherit haskellLib;
+        inherit (bootPkgs) alex happy;
+      })
       ghcjsDepOverrides
     ]);
 
diff --git a/pkgs/development/compilers/llvm/3.5/default.nix b/pkgs/development/compilers/llvm/3.5/default.nix
index f588eb4407b5..b87fa747f145 100644
--- a/pkgs/development/compilers/llvm/3.5/default.nix
+++ b/pkgs/development/compilers/llvm/3.5/default.nix
@@ -6,7 +6,7 @@ let
 
   fetch = fetch_v version;
   fetch_v = ver: name: sha256: fetchurl {
-    url = "http://llvm.org/releases/${ver}/${name}-${ver}.src.tar.xz";
+    url = "https://releases.llvm.org/${ver}/${name}-${ver}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/3.7/default.nix b/pkgs/development/compilers/llvm/3.7/default.nix
index f176894dedb9..3c557711449f 100644
--- a/pkgs/development/compilers/llvm/3.7/default.nix
+++ b/pkgs/development/compilers/llvm/3.7/default.nix
@@ -9,7 +9,7 @@ let
 
   fetch = fetch_v version;
   fetch_v = ver: name: sha256: fetchurl {
-    url = "http://llvm.org/releases/${ver}/${name}-${ver}.src.tar.xz";
+    url = "https://releases.llvm.org/${ver}/${name}-${ver}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/3.8/default.nix b/pkgs/development/compilers/llvm/3.8/default.nix
index 99869e6e80a7..a848c8b9252b 100644
--- a/pkgs/development/compilers/llvm/3.8/default.nix
+++ b/pkgs/development/compilers/llvm/3.8/default.nix
@@ -8,7 +8,7 @@ let
 
   fetch = fetch_v version;
   fetch_v = ver: name: sha256: fetchurl {
-    url = "http://llvm.org/releases/${ver}/${name}-${ver}.src.tar.xz";
+    url = "https://releases.llvm.org/${ver}/${name}-${ver}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/3.9/default.nix b/pkgs/development/compilers/llvm/3.9/default.nix
index 01c08f4bd209..752790cdd853 100644
--- a/pkgs/development/compilers/llvm/3.9/default.nix
+++ b/pkgs/development/compilers/llvm/3.9/default.nix
@@ -8,7 +8,7 @@ let
 
   fetch = fetch_v version;
   fetch_v = ver: name: sha256: fetchurl {
-    url = "http://llvm.org/releases/${version}/${name}-${ver}.src.tar.xz";
+    url = "https://releases.llvm.org/${version}/${name}-${ver}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/5/default.nix b/pkgs/development/compilers/llvm/5/default.nix
index 38d2b0d461d4..68ee80fa7a62 100644
--- a/pkgs/development/compilers/llvm/5/default.nix
+++ b/pkgs/development/compilers/llvm/5/default.nix
@@ -9,7 +9,7 @@ let
   version = release_version; # differentiating these is important for rc's
 
   fetch = name: sha256: fetchurl {
-    url = "http://llvm.org/releases/${release_version}/${name}-${version}.src.tar.xz";
+    url = "https://releases.llvm.org/${release_version}/${name}-${version}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/6/default.nix b/pkgs/development/compilers/llvm/6/default.nix
index 831e4b65344c..5ee551f6b6b1 100644
--- a/pkgs/development/compilers/llvm/6/default.nix
+++ b/pkgs/development/compilers/llvm/6/default.nix
@@ -9,7 +9,7 @@ let
   version = release_version; # differentiating these is important for rc's
 
   fetch = name: sha256: fetchurl {
-    url = "http://releases.llvm.org/${release_version}/${name}-${version}.src.tar.xz";
+    url = "https://releases.llvm.org/${release_version}/${name}-${version}.src.tar.xz";
     inherit sha256;
   };
 
diff --git a/pkgs/development/compilers/llvm/7/clang/default.nix b/pkgs/development/compilers/llvm/7/clang/default.nix
new file mode 100644
index 000000000000..e1f4eb303603
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/clang/default.nix
@@ -0,0 +1,106 @@
+{ stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python
+, fixDarwinDylibNames
+, enableManpages ? false
+}:
+
+let
+  gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
+  self = stdenv.mkDerivation ({
+    name = "clang-${version}";
+
+    unpackPhase = ''
+      unpackFile ${fetch "cfe" "0mdsbgj3p7mayhzm8hclzl3i46r2lwa8fr1cz399f9km3iqi40jm"}
+      mv cfe-${version}* clang
+      sourceRoot=$PWD/clang
+      unpackFile ${clang-tools-extra_src}
+      mv clang-tools-extra-* $sourceRoot/tools/extra
+    '';
+
+    nativeBuildInputs = [ cmake python ]
+      ++ stdenv.lib.optional enableManpages python.pkgs.sphinx;
+
+    buildInputs = [ libxml2 llvm ]
+      ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+    cmakeFlags = [
+      "-DCMAKE_CXX_FLAGS=-std=c++11"
+    ] ++ stdenv.lib.optionals enableManpages [
+      "-DCLANG_INCLUDE_DOCS=ON"
+      "-DLLVM_ENABLE_SPHINX=ON"
+      "-DSPHINX_OUTPUT_MAN=ON"
+      "-DSPHINX_OUTPUT_HTML=OFF"
+      "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ];
+
+    patches = [ ./purity.patch ];
+
+    postPatch = ''
+      sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
+             -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
+             lib/Driver/ToolChains/*.cpp
+
+      # Patch for standalone doc building
+      sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
+    '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
+    '';
+
+    outputs = [ "out" "lib" "python" ];
+
+    # Clang expects to find LLVMgold in its own prefix
+    postInstall = ''
+      if [ -e ${llvm}/lib/LLVMgold.so ]; then
+        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      fi
+
+      ln -sv $out/bin/clang $out/bin/cpp
+
+      # Move libclang to 'lib' output
+      moveToOutput "lib/libclang.*" "$lib"
+      substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \
+          --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang."
+
+      mkdir -p $python/bin $python/share/clang/
+      mv $out/bin/{git-clang-format,scan-view} $python/bin
+      if [ -e $out/bin/set-xcode-analyzer ]; then
+        mv $out/bin/set-xcode-analyzer $python/bin
+      fi
+      mv $out/share/clang/*.py $python/share/clang
+      rm $out/bin/c-index-test
+    '';
+
+    enableParallelBuilding = true;
+
+    passthru = {
+      isClang = true;
+      inherit llvm;
+    } // stdenv.lib.optionalAttrs stdenv.targetPlatform.isLinux {
+      inherit gcc;
+    };
+
+    meta = {
+      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
+      homepage    = http://llvm.org/;
+      license     = stdenv.lib.licenses.ncsa;
+      platforms   = stdenv.lib.platforms.all;
+    };
+  } // stdenv.lib.optionalAttrs enableManpages {
+    name = "clang-manpages-${version}";
+
+    buildPhase = ''
+      make docs-clang-man
+    '';
+
+    installPhase = ''
+      mkdir -p $out/share/man/man1
+      # Manually install clang manpage
+      cp docs/man/*.1 $out/share/man/man1/
+    '';
+
+    outputs = [ "out" ];
+
+    doCheck = false;
+
+    meta.description = "man page for Clang ${version}";
+  });
+in self
diff --git a/pkgs/development/compilers/llvm/7/clang/purity.patch b/pkgs/development/compilers/llvm/7/clang/purity.patch
new file mode 100644
index 000000000000..b30d0d0b5d5b
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/clang/purity.patch
@@ -0,0 +1,30 @@
+From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Thu, 18 May 2017 11:56:12 -0500
+Subject: [PATCH] "purity" patch for 5.0
+
+---
+ lib/Driver/ToolChains/Gnu.cpp | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
+index fe3c0191bb..c6a482bece 100644
+--- a/lib/Driver/ToolChains/Gnu.cpp
++++ b/lib/Driver/ToolChains/Gnu.cpp
+@@ -494,13 +494,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
+   if (!Args.hasArg(options::OPT_static)) {
+     if (Args.hasArg(options::OPT_rdynamic))
+       CmdArgs.push_back("-export-dynamic");
+-
+-    if (!Args.hasArg(options::OPT_shared)) {
+-      const std::string Loader =
+-          D.DyldPrefix + ToolChain.getDynamicLinker(Args);
+-      CmdArgs.push_back("-dynamic-linker");
+-      CmdArgs.push_back(Args.MakeArgString(Loader));
+-    }
+   }
+ 
+   CmdArgs.push_back("-o");
+-- 
+2.11.0
+
diff --git a/pkgs/development/compilers/llvm/7/compiler-rt-codesign.patch b/pkgs/development/compilers/llvm/7/compiler-rt-codesign.patch
new file mode 100644
index 000000000000..3cc12b94b200
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/compiler-rt-codesign.patch
@@ -0,0 +1,33 @@
+From 3dec5f3475a26aeb4678627795c4b67c6b7b4785 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Tue, 19 Sep 2017 13:13:06 -0500
+Subject: [PATCH] remove codesign use on Apple, disable ios sim testing that
+ needs it
+
+---
+ cmake/Modules/AddCompilerRT.cmake |  8 ------
+ test/asan/CMakeLists.txt          | 52 ---------------------------------------
+ test/tsan/CMakeLists.txt          | 47 -----------------------------------
+ 3 files changed, 107 deletions(-)
+
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index bc5fb9ff7..b64eb4246 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -210,14 +210,6 @@ function(add_compiler_rt_runtime name type)
+         set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "")
+         set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib")
+       endif()
+-      if(APPLE)
+-        # Ad-hoc sign the dylibs
+-        add_custom_command(TARGET ${libname}
+-          POST_BUILD  
+-          COMMAND codesign --sign - $<TARGET_FILE:${libname}>
+-          WORKING_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR}
+-        )
+-      endif()
+     endif()
+     install(TARGETS ${libname}
+       ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR}
+2.14.1
+
diff --git a/pkgs/development/compilers/llvm/7/compiler-rt.nix b/pkgs/development/compilers/llvm/7/compiler-rt.nix
new file mode 100644
index 000000000000..ec739d22dd7a
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/compiler-rt.nix
@@ -0,0 +1,37 @@
+{ stdenv, version, fetch, cmake, python, llvm, libcxxabi }:
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "compiler-rt-${version}";
+  inherit version;
+  src = fetch "compiler-rt" "1mkhqvs8cxbfmprkzwyq7lmnzr1sv45znzf0arbgb19crzipzv5x";
+
+  nativeBuildInputs = [ cmake python llvm ];
+  buildInputs = stdenv.lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
+
+  configureFlags = [
+    "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+  ] ++ optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch;
+
+  # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
+  # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
+  # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd
+  # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by
+  # a flag and turn the flag off during the stdenv build.
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace cmake/config-ix.cmake \
+      --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
+  '';
+
+  # Hack around weird upsream RPATH bug
+  postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
+    ln -s "$out/lib"/*/* "$out/lib"
+  '';
+
+  enableParallelBuilding = true;
+}
diff --git a/pkgs/development/compilers/llvm/7/default.nix b/pkgs/development/compilers/llvm/7/default.nix
new file mode 100644
index 000000000000..5446f1b362a9
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/default.nix
@@ -0,0 +1,92 @@
+{ lowPrio, newScope, pkgs, stdenv, cmake, libstdcxxHook
+, libxml2, python, isl, fetchurl, overrideCC, wrapCCWith
+, buildLlvmTools # tools, but from the previous stage, for cross
+, targetLlvmLibraries # libraries, but from the next stage, for cross
+}:
+
+let
+  release_version = "7.0.0";
+  version = release_version; # differentiating these is important for rc's
+
+  fetch = name: sha256: fetchurl {
+    url = "https://releases.llvm.org/${release_version}/${name}-${version}.src.tar.xz";
+    inherit sha256;
+  };
+
+  clang-tools-extra_src = fetch "clang-tools-extra" "1glxl7bnr4k3j16s8xy8r9cl0llyg524f50591g1ig23ij65lz4k";
+
+  tools = stdenv.lib.makeExtensible (tools: let
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python isl release_version version fetch; });
+    mkExtraBuildCommands = cc: ''
+      rsrc="$out/resource-root"
+      mkdir "$rsrc"
+      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+    '' + stdenv.lib.optionalString stdenv.targetPlatform.isLinux ''
+      echo "--gcc-toolchain=${tools.clang-unwrapped.gcc}" >> $out/nix-support/cc-cflags
+    '';
+  in {
+
+    llvm = callPackage ./llvm.nix { };
+
+    clang-unwrapped = callPackage ./clang {
+      inherit clang-tools-extra_src;
+    };
+
+    llvm-manpages = lowPrio (tools.llvm.override {
+      enableManpages = true;
+      python = pkgs.python;  # don't use python-boot
+    });
+
+    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+      enableManpages = true;
+      python = pkgs.python;  # don't use python-boot
+    });
+
+    libclang = tools.clang-unwrapped.lib;
+
+    clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
+
+    libstdcxxClang = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      extraPackages = [
+        libstdcxxHook
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = mkExtraBuildCommands cc;
+    };
+
+    libcxxClang = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      extraPackages = [
+        targetLlvmLibraries.libcxx
+        targetLlvmLibraries.libcxxabi
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = mkExtraBuildCommands cc;
+    };
+
+    lld = callPackage ./lld.nix {};
+
+    lldb = callPackage ./lldb.nix {};
+  });
+
+  libraries = stdenv.lib.makeExtensible (libraries: let
+    callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python isl release_version version fetch; });
+  in {
+
+    compiler-rt = callPackage ./compiler-rt.nix {};
+
+    stdenv = overrideCC stdenv buildLlvmTools.clang;
+
+    libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
+
+    libcxx = callPackage ./libc++ {};
+
+    libcxxabi = callPackage ./libc++abi.nix {};
+
+    openmp = callPackage ./openmp.nix {};
+  });
+
+in { inherit tools libraries; } // libraries // tools
diff --git a/pkgs/development/compilers/llvm/7/libc++/default.nix b/pkgs/development/compilers/llvm/7/libc++/default.nix
new file mode 100644
index 000000000000..76bfb34975e6
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/libc++/default.nix
@@ -0,0 +1,50 @@
+{ lib, stdenv, fetch, cmake, python, libcxxabi, fixDarwinDylibNames, version }:
+
+stdenv.mkDerivation rec {
+  name = "libc++-${version}";
+
+  src = fetch "libcxx" "1w1l472p03csgz76p70pn9yk7h0nw5hj1av44ysnakigp8jjcd4v";
+
+  postUnpack = ''
+    unpackFile ${libcxxabi.src}
+    export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
+  '';
+
+  patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+
+  prePatch = ''
+    substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
+  '';
+
+  preConfigure = ''
+    # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
+    cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
+  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
+    patchShebangs utils/cat_files.py
+  '';
+  nativeBuildInputs = [ cmake ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl python;
+
+  buildInputs = [ libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+  cmakeFlags = [
+    "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
+    "-DLIBCXX_LIBCPPABI_VERSION=2"
+    "-DLIBCXX_CXX_ABI=libcxxabi"
+  ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "-DLIBCXX_HAS_MUSL_LIBC=1";
+
+  enableParallelBuilding = true;
+
+  linkCxxAbi = stdenv.isLinux;
+
+  setupHooks = [
+    ../../../../../build-support/setup-hooks/role.bash
+    ./setup-hook.sh
+  ];
+
+  meta = {
+    homepage = http://libcxx.llvm.org/;
+    description = "A new implementation of the C++ standard library, targeting C++11";
+    license = with stdenv.lib.licenses; [ ncsa mit ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/development/compilers/llvm/7/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/7/libc++/setup-hook.sh
new file mode 100644
index 000000000000..6611259165ae
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/libc++/setup-hook.sh
@@ -0,0 +1,6 @@
+# See pkgs/build-support/setup-hooks/role.bash
+getHostRole
+
+linkCxxAbi="@linkCxxAbi@"
+export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
+export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
diff --git a/pkgs/development/compilers/llvm/7/libc++abi.nix b/pkgs/development/compilers/llvm/7/libc++abi.nix
new file mode 100644
index 000000000000..7dbda6c365e0
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/libc++abi.nix
@@ -0,0 +1,49 @@
+{ stdenv, cmake, fetch, libcxx, libunwind, llvm, version }:
+
+stdenv.mkDerivation {
+  name = "libc++abi-${version}";
+
+  src = fetch "libcxxabi" "0pr4xfx61r5mwmvhg4j9pb6df6vvha1gyf6rwkm14x9rzxcwficv";
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
+
+  postUnpack = ''
+    unpackFile ${libcxx.src}
+    unpackFile ${llvm.src}
+    export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    export TRIPLE=x86_64-apple-darwin
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch}
+  '';
+
+  installPhase = if stdenv.isDarwin
+    then ''
+      for file in lib/*.dylib; do
+        # this should be done in CMake, but having trouble figuring out
+        # the magic combination of necessary CMake variables
+        # if you fancy a try, take a look at
+        # http://www.cmake.org/Wiki/CMake_RPATH_handling
+        install_name_tool -id $out/$file $file
+      done
+      make install
+      install -d 755 $out/include
+      install -m 644 ../include/*.h $out/include
+    ''
+    else ''
+      install -d -m 755 $out/include $out/lib
+      install -m 644 lib/libc++abi.so.1.0 $out/lib
+      install -m 644 ../include/cxxabi.h $out/include
+      ln -s libc++abi.so.1.0 $out/lib/libc++abi.so
+      ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
+    '';
+
+  meta = {
+    homepage = http://libcxxabi.llvm.org/;
+    description = "A new implementation of low level support for a standard C++ library";
+    license = with stdenv.lib.licenses; [ ncsa mit ];
+    maintainers = with stdenv.lib.maintainers; [ vlstill ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/development/compilers/llvm/7/lld.nix b/pkgs/development/compilers/llvm/7/lld.nix
new file mode 100644
index 000000000000..f6ce768d6484
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/lld.nix
@@ -0,0 +1,32 @@
+{ stdenv
+, fetch
+, cmake
+, libxml2
+, llvm
+, version
+}:
+
+stdenv.mkDerivation {
+  name = "lld-${version}";
+
+  src = fetch "lld" "173z50vx5mlsaiqmbz7asxy2297z4xivrfxrdfncvx23wp2lgkzv";
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ llvm libxml2 ];
+
+  outputs = [ "out" "dev" ];
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    moveToOutput include "$dev"
+    moveToOutput lib "$dev"
+  '';
+
+  meta = {
+    description = "The LLVM Linker";
+    homepage    = http://lld.llvm.org/;
+    license     = stdenv.lib.licenses.ncsa;
+    platforms   = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/compilers/llvm/7/lldb.nix b/pkgs/development/compilers/llvm/7/lldb.nix
new file mode 100644
index 000000000000..6c3f0699978f
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/lldb.nix
@@ -0,0 +1,56 @@
+{ stdenv
+, fetch
+, cmake
+, zlib
+, ncurses
+, swig
+, which
+, libedit
+, libxml2
+, llvm
+, clang-unwrapped
+, python
+, version
+, darwin
+}:
+
+stdenv.mkDerivation {
+  name = "lldb-${version}";
+
+  src = fetch "lldb" "0cmah36ybyfws0z2ikq9fqn5k4kvjci7vgk97ddx4xwrwkzdixkz";
+
+  postPatch = ''
+    # Fix up various paths that assume llvm and clang are installed in the same place
+    sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
+      cmake/modules/LLDBStandalone.cmake
+    sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
+      cmake/modules/LLDBStandalone.cmake
+    sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
+      cmake/modules/LLDBStandalone.cmake
+  '';
+
+  nativeBuildInputs = [ cmake python which swig ];
+  buildInputs = [ ncurses zlib libedit libxml2 llvm ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa ];
+
+  CXXFLAGS = "-fno-rtti";
+  hardeningDisable = [ "format" ];
+
+  cmakeFlags = [
+    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ];
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    mkdir -p $out/share/man/man1
+    cp ../docs/lldb.1 $out/share/man/man1/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A next-generation high-performance debugger";
+    homepage    = http://llvm.org/;
+    license     = licenses.ncsa;
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/compilers/llvm/7/llvm-outputs.patch b/pkgs/development/compilers/llvm/7/llvm-outputs.patch
new file mode 100644
index 000000000000..40096fa3497f
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/llvm-outputs.patch
@@ -0,0 +1,26 @@
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 94d426b..37f7794 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -333,6 +333,21 @@ int main(int argc, char **argv) {
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
++  /// Nix-specific multiple-output handling: override ActiveLibDir if --link-shared
++  if (!IsInDevelopmentTree) {
++    bool WantShared = true;
++    for (int i = 1; i < argc; ++i) {
++      StringRef Arg = argv[i];
++      if (Arg == "--link-shared")
++        WantShared = true;
++      else if (Arg == "--link-static")
++        WantShared = false; // the last one wins
++    }
++
++    if (WantShared)
++      ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX;
++  }
++
+   /// We only use `shared library` mode in cases where the static library form
+   /// of the components provided are not available; note however that this is
+   /// skipped if we're run from within the build dir. However, once installed,
diff --git a/pkgs/development/compilers/llvm/7/llvm.nix b/pkgs/development/compilers/llvm/7/llvm.nix
new file mode 100644
index 000000000000..67bde813feed
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/llvm.nix
@@ -0,0 +1,174 @@
+{ stdenv
+, fetch
+, cmake
+, python
+, libffi
+, libbfd
+, libpfm
+, libxml2
+, ncurses
+, version
+, release_version
+, zlib
+, debugVersion ? false
+, enableManpages ? false
+, enableSharedLibraries ? true
+, enableWasm ? true
+, enablePFM ? !stdenv.isDarwin
+}:
+
+let
+  src = fetch "llvm" "08p27wv1pr9ql2zc3f3qkkymci46q7myvh8r5ijippnbwr2gihcb";
+
+  # Used when creating a version-suffixed symlink of libLLVM.dylib
+  shortVersion = with stdenv.lib;
+    concatStringsSep "." (take 1 (splitString "." release_version));
+in stdenv.mkDerivation (rec {
+  name = "llvm-${version}";
+
+  unpackPhase = ''
+    unpackFile ${src}
+    mv llvm-${version}* llvm
+    sourceRoot=$PWD/llvm
+  '';
+
+  outputs = [ "out" "python" ]
+    ++ stdenv.lib.optional enableSharedLibraries "lib";
+
+  nativeBuildInputs = [ cmake python ]
+    ++ stdenv.lib.optional enableManpages python.pkgs.sphinx;
+
+  buildInputs = [ libxml2 libffi ]
+    ++ stdenv.lib.optional enablePFM libpfm; # exegesis
+
+  propagatedBuildInputs = [ ncurses zlib ];
+
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace cmake/modules/AddLLVM.cmake \
+      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir INSTALL_NAME_DIR "$lib/lib")" \
+      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+  ''
+  # Patch llvm-config to return correct library path based on --link-{shared,static}.
+  + stdenv.lib.optionalString (enableSharedLibraries) ''
+    substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib
+    patch -p1 < ./llvm-outputs.patch
+  '' + ''
+    # FileSystem permissions tests fail with various special bits
+    substituteInPlace unittests/Support/CMakeLists.txt \
+      --replace "Path.cpp" ""
+    rm unittests/Support/Path.cpp
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -i ${../TLI-musl.patch}
+    substituteInPlace unittests/Support/CMakeLists.txt \
+      --replace "add_subdirectory(DynamicLibrary)" ""
+    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
+  '' + ''
+    patchShebangs test/BugPoint/compile-custom.ll.py
+  '';
+
+  # hacky fix: created binaries need to be run before installation
+  preBuild = ''
+    mkdir -p $out/
+    ln -sv $PWD/lib $out
+  '';
+
+  cmakeFlags = with stdenv; [
+    "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
+    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
+    "-DLLVM_BUILD_TESTS=ON"
+    "-DLLVM_ENABLE_FFI=ON"
+    "-DLLVM_ENABLE_RTTI=ON"
+
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.hostPlatform.config}"
+
+    "-DLLVM_ENABLE_DUMP=ON"
+  ]
+  ++ stdenv.lib.optional enableSharedLibraries
+    "-DLLVM_LINK_LLVM_DYLIB=ON"
+  ++ stdenv.lib.optionals enableManpages [
+    "-DLLVM_BUILD_DOCS=ON"
+    "-DLLVM_ENABLE_SPHINX=ON"
+    "-DSPHINX_OUTPUT_MAN=ON"
+    "-DSPHINX_OUTPUT_HTML=OFF"
+    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+  ]
+  ++ stdenv.lib.optional (!isDarwin)
+    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
+  ++ stdenv.lib.optionals (isDarwin) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DCAN_TARGET_i386=false"
+  ]
+  ++ stdenv.lib.optional enableWasm
+   "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly"
+  ;
+
+  postBuild = ''
+    rm -fR $out
+
+    paxmark m bin/{lli,llvm-rtdyld}
+    paxmark m unittests/ExecutionEngine/MCJIT/MCJITTests
+    paxmark m unittests/ExecutionEngine/Orc/OrcJITTests
+    paxmark m unittests/Support/SupportTests
+    paxmark m bin/lli-child-target
+  '';
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib
+  '';
+
+  postInstall = ''
+    mkdir -p $python/share
+    mv $out/share/opt-viewer $python/share/opt-viewer
+  ''
+  + stdenv.lib.optionalString enableSharedLibraries ''
+    moveToOutput "lib/libLLVM-*" "$lib"
+    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
+    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+  ''
+  + stdenv.lib.optionalString (stdenv.isDarwin && enableSharedLibraries) ''
+    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
+    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
+    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  '';
+
+  doCheck = stdenv.isLinux && (!stdenv.isi686);
+
+  checkTarget = "check-all";
+
+  enableParallelBuilding = true;
+
+  passthru.src = src;
+
+  meta = {
+    description = "Collection of modular and reusable compiler and toolchain technologies";
+    homepage    = http://llvm.org/;
+    license     = stdenv.lib.licenses.ncsa;
+    maintainers = with stdenv.lib.maintainers; [ lovek323 raskin dtzWill ];
+    platforms   = stdenv.lib.platforms.all;
+  };
+} // stdenv.lib.optionalAttrs enableManpages {
+  name = "llvm-manpages-${version}";
+
+  buildPhase = ''
+    make docs-llvm-man
+  '';
+
+  propagatedBuildInputs = [];
+
+  installPhase = ''
+    make -C docs install
+  '';
+
+  postPatch = null;
+  postInstall = null;
+
+  outputs = [ "out" ];
+
+  doCheck = false;
+
+  meta.description = "man pages for LLVM ${version}";
+})
diff --git a/pkgs/development/compilers/llvm/7/openmp.nix b/pkgs/development/compilers/llvm/7/openmp.nix
new file mode 100644
index 000000000000..31059b7c4c04
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/openmp.nix
@@ -0,0 +1,25 @@
+{ stdenv
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  name = "openmp-${version}";
+
+  src = fetch "openmp" "1zrqlaxr954sp8lcr7g8m0z0pr8xyq4i6p11x6gcamjm5xijnrih";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Components required to build an executable OpenMP program";
+    homepage    = http://openmp.llvm.org/;
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/compilers/llvm/7/sanitizers-nongnu.patch b/pkgs/development/compilers/llvm/7/sanitizers-nongnu.patch
new file mode 100644
index 000000000000..1f2ac97818eb
--- /dev/null
+++ b/pkgs/development/compilers/llvm/7/sanitizers-nongnu.patch
@@ -0,0 +1,412 @@
+From f7a253f8f85d0f49df6b73996737a3e84ac64236 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Mon, 24 Sep 2018 11:17:25 -0500
+Subject: [PATCH] Ported to 7.0, taken from gentoo-musl project.
+
+------
+Ported to compiler-rt-sanitizers-5.0.0. Taken from
+
+https://gist.githubusercontent.com/pwaller/2337f3290f12634cad3e3730cff0a6c1/raw/83c87a8585e2f9662494db5662e5361beb093c26/nongnu.patch
+Signed-off-by: Jory A. Pratt <anarchy@gentoo.org>
+
+Taken from gentoo-musl project, with a few additional minor fixes.
+---
+ lib/asan/asan_linux.cc                        |  4 +-
+ lib/interception/interception_linux.cc        |  2 +-
+ lib/interception/interception_linux.h         |  2 +-
+ lib/msan/msan_linux.cc                        |  2 +-
+ lib/sanitizer_common/sanitizer_allocator.cc   |  2 +-
+ .../sanitizer_common_interceptors_ioctl.inc   |  4 +-
+ .../sanitizer_common_syscalls.inc             |  2 +-
+ lib/sanitizer_common/sanitizer_linux.cc       |  8 +++-
+ .../sanitizer_linux_libcdep.cc                | 10 ++---
+ lib/sanitizer_common/sanitizer_platform.h     |  6 +++
+ .../sanitizer_platform_interceptors.h         |  4 +-
+ .../sanitizer_platform_limits_posix.cc        | 37 +++++++++++--------
+ lib/tsan/rtl/tsan_platform_linux.cc           |  2 +-
+ 13 files changed, 51 insertions(+), 34 deletions(-)
+
+diff --git a/lib/asan/asan_linux.cc b/lib/asan/asan_linux.cc
+index 625f32d40..73cf77aca 100644
+--- a/lib/asan/asan_linux.cc
++++ b/lib/asan/asan_linux.cc
+@@ -46,7 +46,7 @@
+ #include <link.h>
+ #endif
+ 
+-#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS
++#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU
+ #include <ucontext.h>
+ extern "C" void* _DYNAMIC;
+ #elif SANITIZER_NETBSD
+@@ -139,7 +139,7 @@ void AsanApplyToGlobals(globals_op_fptr op, const void *needle) {
+   UNIMPLEMENTED();
+ }
+ 
+-#if SANITIZER_ANDROID
++#if SANITIZER_ANDROID || SANITIZER_NONGNU
+ // FIXME: should we do anything for Android?
+ void AsanCheckDynamicRTPrereqs() {}
+ void AsanCheckIncompatibleRT() {}
+diff --git a/lib/interception/interception_linux.cc b/lib/interception/interception_linux.cc
+index 26bfcd8f6..529b234f7 100644
+--- a/lib/interception/interception_linux.cc
++++ b/lib/interception/interception_linux.cc
+@@ -43,7 +43,7 @@ bool GetRealFunctionAddress(const char *func_name, uptr *func_addr,
+ }
+ 
+ // Android and Solaris do not have dlvsym
+-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD
++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ void *GetFuncAddrVer(const char *func_name, const char *ver) {
+   return dlvsym(RTLD_NEXT, func_name, ver);
+ }
+diff --git a/lib/interception/interception_linux.h b/lib/interception/interception_linux.h
+index 942c25609..24a4d5080 100644
+--- a/lib/interception/interception_linux.h
++++ b/lib/interception/interception_linux.h
+@@ -36,7 +36,7 @@ void *GetFuncAddrVer(const char *func_name, const char *ver);
+       (::__interception::uptr) & WRAP(func))
+ 
+ // Android,  Solaris and OpenBSD do not have dlvsym
+-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD
++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ #define INTERCEPT_FUNCTION_VER_LINUX_OR_FREEBSD(func, symver) \
+   (::__interception::real_##func = (func##_f)(                \
+        unsigned long)::__interception::GetFuncAddrVer(#func, symver))
+diff --git a/lib/msan/msan_linux.cc b/lib/msan/msan_linux.cc
+index 385a650c4..6e30a8ce9 100644
+--- a/lib/msan/msan_linux.cc
++++ b/lib/msan/msan_linux.cc
+@@ -13,7 +13,7 @@
+ //===----------------------------------------------------------------------===//
+ 
+ #include "sanitizer_common/sanitizer_platform.h"
+-#if SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD
++#if SANITIZER_FREEBSD || (SANITIZER_LINUX && !SANITIZER_NONGNU) || SANITIZER_NETBSD
+ 
+ #include "msan.h"
+ #include "msan_report.h"
+diff --git a/lib/sanitizer_common/sanitizer_allocator.cc b/lib/sanitizer_common/sanitizer_allocator.cc
+index 6bfd5e5ee..048f6154f 100644
+--- a/lib/sanitizer_common/sanitizer_allocator.cc
++++ b/lib/sanitizer_common/sanitizer_allocator.cc
+@@ -27,7 +27,7 @@ const char *SecondaryAllocatorName = "LargeMmapAllocator";
+ 
+ // ThreadSanitizer for Go uses libc malloc/free.
+ #if SANITIZER_GO || defined(SANITIZER_USE_MALLOC)
+-# if SANITIZER_LINUX && !SANITIZER_ANDROID
++# if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ extern "C" void *__libc_malloc(uptr size);
+ #  if !SANITIZER_GO
+ extern "C" void *__libc_memalign(uptr alignment, uptr size);
+diff --git a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
+index 2d633c173..b6eb23116 100644
+--- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
++++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
+@@ -104,7 +104,7 @@ static void ioctl_table_fill() {
+   _(SIOCGETVIFCNT, WRITE, struct_sioc_vif_req_sz);
+ #endif
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+   // Conflicting request ids.
+   // _(CDROMAUDIOBUFSIZ, NONE, 0);
+   // _(SNDCTL_TMR_CONTINUE, NONE, 0);
+@@ -365,7 +365,7 @@ static void ioctl_table_fill() {
+   _(VT_WAITACTIVE, NONE, 0);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   // _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE
+   _(CYGETDEFTHRESH, WRITE, sizeof(int));
+   _(CYGETDEFTIMEOUT, WRITE, sizeof(int));
+diff --git a/lib/sanitizer_common/sanitizer_common_syscalls.inc b/lib/sanitizer_common/sanitizer_common_syscalls.inc
+index 469c8eb7e..24f87867d 100644
+--- a/lib/sanitizer_common/sanitizer_common_syscalls.inc
++++ b/lib/sanitizer_common/sanitizer_common_syscalls.inc
+@@ -2038,7 +2038,7 @@ POST_SYSCALL(setrlimit)(long res, long resource, void *rlim) {
+   }
+ }
+ 
+-#if !SANITIZER_ANDROID
++#if !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ PRE_SYSCALL(prlimit64)(long pid, long resource, const void *new_rlim,
+                        void *old_rlim) {
+   if (new_rlim) PRE_READ(new_rlim, struct_rlimit64_sz);
+diff --git a/lib/sanitizer_common/sanitizer_linux.cc b/lib/sanitizer_common/sanitizer_linux.cc
+index 96d6c1eff..9e2b7fb9d 100644
+--- a/lib/sanitizer_common/sanitizer_linux.cc
++++ b/lib/sanitizer_common/sanitizer_linux.cc
+@@ -541,13 +541,13 @@ const char *GetEnv(const char *name) {
+ #endif
+ }
+ 
+-#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD
++#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ extern "C" {
+ SANITIZER_WEAK_ATTRIBUTE extern void *__libc_stack_end;
+ }
+ #endif
+ 
+-#if !SANITIZER_GO && !SANITIZER_FREEBSD && !SANITIZER_NETBSD &&                \
++#if (!SANITIZER_GO || SANITIZER_NONGNU) && !SANITIZER_FREEBSD && !SANITIZER_NETBSD &&                \
+     !SANITIZER_OPENBSD
+ static void ReadNullSepFileToArray(const char *path, char ***arr,
+                                    int arr_size) {
+@@ -590,6 +590,10 @@ static void GetArgsAndEnv(char ***argv, char ***envp) {
+ #elif SANITIZER_NETBSD
+   *argv = __ps_strings->ps_argvstr;
+   *envp = __ps_strings->ps_envstr;
++#elif SANITIZER_NONGNU
++    static const int kMaxArgv = 2000, kMaxEnvp = 2000;
++    ReadNullSepFileToArray("/proc/self/cmdline", argv, kMaxArgv);
++    ReadNullSepFileToArray("/proc/self/environ", envp, kMaxEnvp);
+ #else // SANITIZER_FREEBSD
+ #if !SANITIZER_GO
+   if (&__libc_stack_end) {
+diff --git a/lib/sanitizer_common/sanitizer_linux_libcdep.cc b/lib/sanitizer_common/sanitizer_linux_libcdep.cc
+index 4962ff832..438f94dbe 100644
+--- a/lib/sanitizer_common/sanitizer_linux_libcdep.cc
++++ b/lib/sanitizer_common/sanitizer_linux_libcdep.cc
+@@ -179,7 +179,7 @@ __attribute__((unused)) static bool GetLibcVersion(int *major, int *minor,
+ }
+ 
+ #if !SANITIZER_FREEBSD && !SANITIZER_ANDROID && !SANITIZER_GO &&               \
+-    !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS
++    !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS && !SANITIZER_NONGNU
+ static uptr g_tls_size;
+ 
+ #ifdef __i386__
+@@ -261,7 +261,7 @@ void InitTlsSize() { }
+ #if (defined(__x86_64__) || defined(__i386__) || defined(__mips__) ||          \
+      defined(__aarch64__) || defined(__powerpc64__) || defined(__s390__) ||    \
+      defined(__arm__)) &&                                                      \
+-    SANITIZER_LINUX && !SANITIZER_ANDROID
++    SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ // sizeof(struct pthread) from glibc.
+ static atomic_uintptr_t thread_descriptor_size;
+ 
+@@ -426,7 +426,7 @@ int GetSizeFromHdr(struct dl_phdr_info *info, size_t size, void *data) {
+ 
+ #if !SANITIZER_GO
+ static void GetTls(uptr *addr, uptr *size) {
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ # if defined(__x86_64__) || defined(__i386__) || defined(__s390__)
+   *addr = ThreadSelf();
+   *size = GetTlsSize();
+@@ -470,7 +470,7 @@ static void GetTls(uptr *addr, uptr *size) {
+ #elif SANITIZER_OPENBSD
+   *addr = 0;
+   *size = 0;
+-#elif SANITIZER_ANDROID
++#elif SANITIZER_ANDROID || SANITIZER_NONGNU
+   *addr = 0;
+   *size = 0;
+ #elif SANITIZER_SOLARIS
+@@ -486,7 +486,7 @@ static void GetTls(uptr *addr, uptr *size) {
+ #if !SANITIZER_GO
+ uptr GetTlsSize() {
+ #if SANITIZER_FREEBSD || SANITIZER_ANDROID || SANITIZER_NETBSD ||              \
+-    SANITIZER_OPENBSD || SANITIZER_SOLARIS
++    SANITIZER_OPENBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU
+   uptr addr, size;
+   GetTls(&addr, &size);
+   return size;
+diff --git a/lib/sanitizer_common/sanitizer_platform.h b/lib/sanitizer_common/sanitizer_platform.h
+index d81e25580..e10680ac8 100644
+--- a/lib/sanitizer_common/sanitizer_platform.h
++++ b/lib/sanitizer_common/sanitizer_platform.h
+@@ -208,6 +208,12 @@
+ # define SANITIZER_SOLARIS32 0
+ #endif
+ 
++#if defined(__linux__) && !defined(__GLIBC__)
++# define SANITIZER_NONGNU 1
++#else
++# define SANITIZER_NONGNU 0
++#endif
++
+ #if defined(__myriad2__)
+ # define SANITIZER_MYRIAD2 1
+ #else
+diff --git a/lib/sanitizer_common/sanitizer_platform_interceptors.h b/lib/sanitizer_common/sanitizer_platform_interceptors.h
+index f95539a73..6c53b3415 100644
+--- a/lib/sanitizer_common/sanitizer_platform_interceptors.h
++++ b/lib/sanitizer_common/sanitizer_platform_interceptors.h
+@@ -39,7 +39,7 @@
+ # include "sanitizer_platform_limits_solaris.h"
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ # define SI_LINUX_NOT_ANDROID 1
+ #else
+ # define SI_LINUX_NOT_ANDROID 0
+@@ -322,7 +322,7 @@
+ #define SANITIZER_INTERCEPT_ETHER_R (SI_FREEBSD || SI_LINUX_NOT_ANDROID)
+ #define SANITIZER_INTERCEPT_SHMCTL          \
+   (SI_NETBSD || SI_OPENBSD || SI_SOLARIS || \
+-  ((SI_FREEBSD || SI_LINUX_NOT_ANDROID) && \
++  ((SI_FREEBSD || SI_LINUX_NOT_ANDROID || SANITIZER_NONGNU) && \
+     SANITIZER_WORDSIZE == 64))  // NOLINT
+ #define SANITIZER_INTERCEPT_RANDOM_R SI_LINUX_NOT_ANDROID
+ #define SANITIZER_INTERCEPT_PTHREAD_ATTR_GET SI_POSIX
+diff --git a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 54da635d7..2f6ff69c3 100644
+--- a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -14,6 +14,9 @@
+ 
+ #include "sanitizer_platform.h"
+ 
++// Workaround musl <--> linux conflicting definition of 'struct sysinfo'
++#define _LINUX_SYSINFO_H
++
+ #if SANITIZER_LINUX || SANITIZER_FREEBSD || SANITIZER_MAC
+ // Tests in this file assume that off_t-dependent data structures match the
+ // libc ABI. For example, struct dirent here is what readdir() function (as
+@@ -138,12 +141,14 @@ typedef struct user_fpregs elf_fpregset_t;
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+ #include <glob.h>
+-#include <obstack.h>
++#  if !SANITIZER_NONGNU
++#    include <obstack.h>
++#  endif
+ #include <mqueue.h>
+-#include <net/if_ppp.h>
+-#include <netax25/ax25.h>
+-#include <netipx/ipx.h>
+-#include <netrom/netrom.h>
++#include <linux/if_ppp.h>
++#include <linux/ax25.h>
++#include <linux/ipx.h>
++#include <linux/netrom.h>
+ #if HAVE_RPC_XDR_H
+ # include <rpc/xdr.h>
+ #elif HAVE_TIRPC_RPC_XDR_H
+@@ -251,7 +256,7 @@ namespace __sanitizer {
+   unsigned struct_itimerspec_sz = sizeof(struct itimerspec);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
+   // has been removed from glibc 2.28.
+ #if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
+@@ -322,7 +327,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(ElfW(Phdr));
+ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+ #endif
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   int glob_nomatch = GLOB_NOMATCH;
+   int glob_altdirfunc = GLOB_ALTDIRFUNC;
+ #endif
+@@ -416,7 +421,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned struct_termios_sz = sizeof(struct termios);
+   unsigned struct_winsize_sz = sizeof(struct winsize);
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+   unsigned struct_arpreq_sz = sizeof(struct arpreq);
+   unsigned struct_cdrom_msf_sz = sizeof(struct cdrom_msf);
+   unsigned struct_cdrom_multisession_sz = sizeof(struct cdrom_multisession);
+@@ -466,7 +471,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned struct_vt_mode_sz = sizeof(struct vt_mode);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct);
+   unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor);
+ #if EV_VERSION > (0x010000)
+@@ -834,7 +839,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned IOCTL_VT_WAITACTIVE = VT_WAITACTIVE;
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH;
+   unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT;
+   unsigned IOCTL_CYGETMON = CYGETMON;
+@@ -989,7 +994,7 @@ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phdr);
+ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phnum);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(glob_t);
+ CHECK_SIZE_AND_OFFSET(glob_t, gl_pathc);
+ CHECK_SIZE_AND_OFFSET(glob_t, gl_pathv);
+@@ -1023,6 +1028,7 @@ CHECK_TYPE_SIZE(iovec);
+ CHECK_SIZE_AND_OFFSET(iovec, iov_base);
+ CHECK_SIZE_AND_OFFSET(iovec, iov_len);
+ 
++#if !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(msghdr);
+ CHECK_SIZE_AND_OFFSET(msghdr, msg_name);
+ CHECK_SIZE_AND_OFFSET(msghdr, msg_namelen);
+@@ -1036,6 +1042,7 @@ CHECK_TYPE_SIZE(cmsghdr);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type);
++#endif
+ 
+ #ifndef __GLIBC_PREREQ
+ #define __GLIBC_PREREQ(x, y) 0
+@@ -1145,7 +1152,7 @@ CHECK_SIZE_AND_OFFSET(mntent, mnt_passno);
+ 
+ CHECK_TYPE_SIZE(ether_addr);
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(ipc_perm);
+ # if SANITIZER_FREEBSD
+ CHECK_SIZE_AND_OFFSET(ipc_perm, key);
+@@ -1206,7 +1213,7 @@ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_dstaddr);
+ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_data);
+ #endif
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer_mallinfo) == sizeof(struct mallinfo));
+ #endif
+ 
+@@ -1256,7 +1263,7 @@ COMPILER_CHECK(__sanitizer_XDR_DECODE == XDR_DECODE);
+ COMPILER_CHECK(__sanitizer_XDR_FREE == XDR_FREE);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer_FILE) <= sizeof(FILE));
+ CHECK_SIZE_AND_OFFSET(FILE, _flags);
+ CHECK_SIZE_AND_OFFSET(FILE, _IO_read_ptr);
+@@ -1275,7 +1282,7 @@ CHECK_SIZE_AND_OFFSET(FILE, _chain);
+ CHECK_SIZE_AND_OFFSET(FILE, _fileno);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer__obstack_chunk) <= sizeof(_obstack_chunk));
+ CHECK_SIZE_AND_OFFSET(_obstack_chunk, limit);
+ CHECK_SIZE_AND_OFFSET(_obstack_chunk, prev);
+diff --git a/lib/tsan/rtl/tsan_platform_linux.cc b/lib/tsan/rtl/tsan_platform_linux.cc
+index de989b780..51a97b554 100644
+--- a/lib/tsan/rtl/tsan_platform_linux.cc
++++ b/lib/tsan/rtl/tsan_platform_linux.cc
+@@ -294,7 +294,7 @@ void InitializePlatform() {
+ // This is required to properly "close" the fds, because we do not see internal
+ // closes within glibc. The code is a pure hack.
+ int ExtractResolvFDs(void *state, int *fds, int nfd) {
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   int cnt = 0;
+   struct __res_state *statp = (struct __res_state*)state;
+   for (int i = 0; i < MAXNS && cnt < nfd; i++) {
+-- 
+2.19.0
+
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 64a82ed42a87..8beca9572e7e 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -927,8 +927,9 @@ self: super: {
   text-icu = dontCheck super.text-icu;
 
   # https://github.com/haskell/cabal/issues/4969
-  haddock-library_1_4_4 = dontHaddock super.haddock-library_1_4_4;
-  haddock-api = super.haddock-api.override { haddock-library = self.haddock-library_1_4_4; };
+  haddock-api = (super.haddock-api.overrideScope (self: super: {
+    haddock-library = self.haddock-library_1_6_0;
+  })).override { hspec = self.hspec_2_4_8; };
 
   # Jailbreak "unix-compat >=0.1.2 && <0.5".
   # Jailbreak "graphviz >=2999.18.1 && <2999.20".
@@ -1112,7 +1113,7 @@ self: super: {
     })) ./patches/sexpr-0.2.1.patch;
 
   # Can be removed once yi-language >= 0.18 is in the LTS
-  yi-core = super.yi-core.override { yi-language = self.yi-language_0_18_0; };
+  yi-core = super.yi-core.overrideScope (self: super: { yi-language = self.yi-language_0_18_0; });
 
   # https://github.com/MarcWeber/hasktags/issues/52
   hasktags = dontCheck super.hasktags;
@@ -1124,11 +1125,11 @@ self: super: {
   xmlhtml = doJailbreak super.xmlhtml;
 
   # https://github.com/NixOS/nixpkgs/issues/46467
-  safe-money-aeson = super.safe-money-aeson.override { safe-money = self.safe-money_0_7; };
-  safe-money-store = super.safe-money-store.override { safe-money = self.safe-money_0_7; };
-  safe-money-cereal = super.safe-money-cereal.override { safe-money = self.safe-money_0_7; };
-  safe-money-serialise = super.safe-money-serialise.override { safe-money = self.safe-money_0_7; };
-  safe-money-xmlbf = super.safe-money-xmlbf.override { safe-money = self.safe-money_0_7; };
+  safe-money-aeson = super.safe-money-aeson.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
+  safe-money-store = super.safe-money-store.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
+  safe-money-cereal = super.safe-money-cereal.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
+  safe-money-serialise = super.safe-money-serialise.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
+  safe-money-xmlbf = super.safe-money-xmlbf.overrideScope (self: super: { safe-money = self.safe-money_0_7; });
 
   # https://github.com/adinapoli/mandrill/pull/52
   mandrill = appendPatch super.mandrill (pkgs.fetchpatch {
@@ -1136,4 +1137,17 @@ self: super: {
     sha256 = "1qair09xs6vln3vsjz7sy4hhv037146zak4mq3iv6kdhmp606hqv";
   });
 
+  # Can be removed once vinyl >= 0.10 is in the LTS.
+  Frames = super.Frames.overrideScope (self: super: { vinyl = self.vinyl_0_10_0; });
+
+  # https://github.com/Euterpea/Euterpea2/pull/22
+  Euterpea = overrideSrc super.Euterpea {
+    src = pkgs.fetchFromGitHub {
+      owner = "Euterpea";
+      repo = "Euterpea2";
+      rev = "6f49b790adfb8b65d95a758116c20098fb0cd34c";
+      sha256 = "0qz1svb96n42nmig16vyphwxas34hypgayvwc91ri7w7xd6yi1ba";
+    };
+  };
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
index 5684d14caddf..85efecc8ed3b 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
@@ -40,8 +40,8 @@ self: super: {
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
   parsec_3_1_13_0 = addBuildDepends super.parsec_3_1_13_0 [self.fail self.semigroups];
-  stm = self.stm_2_4_5_1;
-  text = self.text_1_2_3_0;
+  stm = self.stm_2_5_0_0;
+  text = self.text_1_2_3_1;
 
   # Build jailbreak-cabal with the latest version of Cabal.
   jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_1_24_2_0; };
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
index a28682004239..e0d2753a5849 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
@@ -39,8 +39,8 @@ self: super: {
   # These are now core libraries in GHC 8.4.x.
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
-  stm = self.stm_2_4_5_1;
-  text = self.text_1_2_3_0;
+  stm = self.stm_2_5_0_0;
+  text = self.text_1_2_3_1;
 
   # https://github.com/bmillwood/applicative-quoters/issues/6
   applicative-quoters = appendPatch super.applicative-quoters (pkgs.fetchpatch {
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index af96a7425d1c..7a5b78ba74c6 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -39,8 +39,8 @@ self: super: {
   # These are now core libraries in GHC 8.4.x.
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
-  stm = self.stm_2_4_5_1;
-  text = self.text_1_2_3_0;
+  stm = self.stm_2_5_0_0;
+  text = self.text_1_2_3_1;
 
   # Make sure we can still build Cabal 1.x.
   Cabal_1_24_2_0 = overrideCabal super.Cabal_1_24_2_0 (drv: {
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
index 42712df3295b..b49b9cea60bb 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -44,9 +44,16 @@ self: super: {
   # Use to be a core-library, but no longer is since GHC 8.4.x.
   hoopl = self.hoopl_3_10_2_2;
 
-  # lts-12.x versions do not compile.
+  # LTS-12.x versions do not compile.
+  contravariant = self.contravariant_1_5;
+  doctest = self.doctest_0_16_0_1;
+  hspec-core = self.hspec-core_2_5_7;
+  hspec-core_2_5_7 = super.hspec-core_2_5_7.overrideScope (self: super: { QuickCheck = self.QuickCheck_2_12_4; });
+  hspec-meta = self.hspec-meta_2_5_6;
+  hspec-meta_2_5_6 = super.hspec-meta_2_5_6.overrideScope (self: super: { QuickCheck = self.QuickCheck_2_12_4; });
   primitive = self.primitive_0_6_4_0;
   tagged = self.tagged_0_8_6;
+  unordered-containers = dontCheck super.unordered-containers;
 
   # Over-specified constraints.
   async = doJailbreak super.async;                           # base >=4.3 && <4.12, stm >=2.2 && <2.5
@@ -54,6 +61,8 @@ self: super: {
   hashable = doJailbreak super.hashable;                     # base >=4.4 && <4.1
   hashable-time = doJailbreak super.hashable-time;           # base >=4.7 && <4.12
   integer-logarithms = doJailbreak super.integer-logarithms; # base >=4.3 && <4.12
+  optparse-applicative = doJailbreak super.optparse-applicative;   # https://github.com/pcapriotti/optparse-applicative/issues/319
+  polyparse = markBrokenVersion "1.12" super.polyparse;      # version 1.12 fails to compile
   tar = doJailbreak super.tar;                               # containers >=0.2 && <0.6
   test-framework = doJailbreak super.test-framework;         # containers >=0.1 && <0.6
 
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix
index 7e8bc1a1e8e3..489f363db6a0 100644
--- a/pkgs/development/haskell-modules/configuration-ghcjs.nix
+++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix
@@ -25,7 +25,7 @@ self: super:
 
   # GHCJS does not ship with the same core packages as GHC.
   # https://github.com/ghcjs/ghcjs/issues/676
-  stm = self.stm_2_4_5_1;
+  stm = self.stm_2_5_0_0;
   ghc-compact = self.ghc-compact_0_1_0_0;
 
   network = addBuildTools super.network (pkgs.lib.optional pkgs.buildPlatform.isDarwin pkgs.buildPackages.darwin.libiconv);
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 2eefe636ca97..5d7173bf44a4 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -2400,7 +2400,6 @@ extra-packages:
   - haddock-api == 2.17.*               # required on GHC 8.0.x
   - haddock-library == 1.2.*            # required for haddock-api-2.16.x
   - haddock-library == 1.4.3            # required for haddock-api-2.17.x
-  - haddock-library == 1.4.4            # required for haddock-api-2.18.x
   - haddock-library == 1.5.*            # required for stylish-cabal-0.4.0.1
   - happy <1.19.6                       # newer versions break Agda
   - haskell-gi-overloading == 0.0       # gi-* packages use this dependency to disable overloading support
@@ -2807,6 +2806,7 @@ dont-distribute-packages:
   anticiv:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   antigate:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   antimirov:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  antiope-contract:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   antiope-core:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   antiope-dynamodb:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   antiope-messages:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -2851,6 +2851,7 @@ dont-distribute-packages:
   ApproxFun-hs:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   arb-fft:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   arbb-vm:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  arbor-postgres:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   arbtt:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   archiver:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   archlinux-web:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -2879,6 +2880,7 @@ dont-distribute-packages:
   ArrowVHDL:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   artery:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   ascii-flatten:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ascii-string:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   ascii-table:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   ascii-vector-avc:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   ascii85-conduit:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -2897,6 +2899,7 @@ dont-distribute-packages:
   ast-monad:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   astrds:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   astview:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  async-combinators:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   async-dejafu:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   async-manager:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   asynchronous-exceptions:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -2936,6 +2939,7 @@ dont-distribute-packages:
   augur:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   aur-api:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   aur:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  aura:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   Aurochs:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   authenticate-ldap:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   authoring:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -2977,6 +2981,7 @@ dont-distribute-packages:
   aws-sign4:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   aws-simple:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   aws-sns:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  axel:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   axiom:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   azubi:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   azure-service-api:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3185,6 +3190,7 @@ dont-distribute-packages:
   Blueprint:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   bluetile:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   bluetileutils:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  blunk-hask-tests:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   blunt:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   BNFC-meta:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   BNFC:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3209,10 +3215,12 @@ dont-distribute-packages:
   bowntz:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   braid:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   brain-bleep:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  brainheck:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Bravo:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   breakout:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   breve:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   brians-brain:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  brick-skylighting:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   bricks-internal-test:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   bricks-internal:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   bricks-parsec:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3220,6 +3228,10 @@ dont-distribute-packages:
   bricks-syntax:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   bricks:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   brillig:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  brittany:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  broadcast-chan-conduit:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  broadcast-chan-pipes:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  broadcast-chan-tests:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   broccoli:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   broker-haskell:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   bronyradiogermany-streaming:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3232,6 +3244,7 @@ dont-distribute-packages:
   buffer-builder-aeson:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   buffer:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   buffon:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  bugsnag-haskell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   bugzilla:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   build:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   buildable:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3336,6 +3349,7 @@ dont-distribute-packages:
   cao:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   cap:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   Capabilities:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  capnp:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   capped-list:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   capri:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   car-pool:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3620,6 +3634,7 @@ dont-distribute-packages:
   concrete-haskell-autogen:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   concrete-haskell:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   concrete-typerep:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
+  concurrency-benchmarks:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   concurrent-buffer:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   Concurrent-Cache:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   concurrent-dns-cache:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3963,6 +3978,7 @@ dont-distribute-packages:
   delude:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   demarcate:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   denominate:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  dense-int-set:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   dependent-monoidal-map:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   dependent-state:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   dependent-sum-aeson-orphans:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4041,6 +4057,7 @@ dont-distribute-packages:
   dirfiles:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   discogs-haskell:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   discord-gateway:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  discord-haskell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   discord-hs:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   discord-rest:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   discord-types:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4088,6 +4105,7 @@ dont-distribute-packages:
   doc-review:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   doccheck:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   docidx:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  docker-build-cacher:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   doctest-discover-configurator:                [ i686-linux, x86_64-linux, x86_64-darwin ]
   doctest-driver-gen:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   DocTest:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4220,6 +4238,7 @@ dont-distribute-packages:
   email-postmark:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   email-validator:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   email:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  emailaddress:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   emailparse:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   embeddock-example:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   embeddock:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4348,6 +4367,7 @@ dont-distribute-packages:
   extract-dependencies:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   extractelf:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   ez-couch:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  f-ree-hack-cheats-free-v-bucks-generator:       [ i686-linux, x86_64-linux, x86_64-darwin ]
   Facebook-Password-Hacker-Online-Latest-Version: [ i686-linux, x86_64-linux, x86_64-darwin ]
   faceted:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   factory:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4510,6 +4530,7 @@ dont-distribute-packages:
   foldl-transduce:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   folds-common:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   follow-file:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  follow:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   follower:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   foma:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   font-opengl-basic4x6:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4549,6 +4570,7 @@ dont-distribute-packages:
   Fractaler:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   fractals:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   frag:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Frames-beam:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   Frames:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   franchise:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Frank:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4563,6 +4585,8 @@ dont-distribute-packages:
   free-theorems-seq:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   free-theorems-webui:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   free-theorems:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  free-v-bucks-generator-no-survey:               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  free-v-bucks-generator-ps4-no-survey:           [ i686-linux, x86_64-linux, x86_64-darwin ]
   free-vector-spaces:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   freekick2:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   freelude:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4665,6 +4689,7 @@ dont-distribute-packages:
   generic-accessors:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   generic-binary:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   generic-church:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  generic-data:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   generic-enum:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   generic-lens-labels:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   generic-lens:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4807,8 +4832,12 @@ dont-distribute-packages:
   glome-hs:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   GlomeTrace:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   GlomeView:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gloss-algorithms:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   gloss-banana:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   gloss-devil:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gloss-examples:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gloss-game:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  gloss-juicy:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   gloss-sodium:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   glpk-hs:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   glue-common:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5053,6 +5082,8 @@ dont-distribute-packages:
   Grow:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   growler:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   GrowlNotify:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  grpc-api-etcd:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  grpc-etcd-client:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   gruff-examples:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   gruff:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   gsl-random-fu:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5297,11 +5328,13 @@ dont-distribute-packages:
   haskell-names:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-neo4j-client:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-openflow:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskell-overridez:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-packages:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-pdf-presenter:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-platform-test:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-player:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-plot:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskell-postal:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-read-editor:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-reflect:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskell-rules:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5356,11 +5389,13 @@ dont-distribute-packages:
   haskheap:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskhol-core:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskmon:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskoin-bitcoind:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-core:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-crypto:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-node:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-protocol:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-script:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  haskoin-store:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-util:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin-wallet:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   haskoin:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5470,6 +5505,8 @@ dont-distribute-packages:
   hdr-histogram:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   HDRUtils:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   headergen:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  heatitup-complete:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  heatitup:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   heavy-logger-amazon:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   heavy-logger-instances:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   heavy-logger:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5672,6 +5709,7 @@ dont-distribute-packages:
   hmatrix-static:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmatrix-sundials:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmatrix-syntax:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hmatrix-tests:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmeap-utils:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmeap:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmenu:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5978,6 +6016,7 @@ dont-distribute-packages:
   html-kure:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   html-rules:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   html-tokenizer:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  htoml-megaparsec:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hts:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   htsn-import:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   htsn:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6244,6 +6283,7 @@ dont-distribute-packages:
   isobmff-builder:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   isohunt:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   isotope:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  itcli:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   itemfield:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   iter-stats:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   iteratee-compress:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6289,6 +6329,7 @@ dont-distribute-packages:
   jenga:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   jenkinsPlugins2nix:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   jespresso:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  jinquantities:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   jml-web-service:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   jobqueue:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   join-api:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6426,6 +6467,7 @@ dont-distribute-packages:
   krpc:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   KSP:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   ktx:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Kulitta:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   kure-your-boilerplate:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   kure:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   KyotoCabinet:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6501,6 +6543,7 @@ dont-distribute-packages:
   language-ninja:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-oberon:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-objc:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  language-ocaml:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-openscad:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-pig:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-puppet:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6585,6 +6628,7 @@ dont-distribute-packages:
   liblinear-enumerator:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   libltdl:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   libmolude:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  libnix:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   liboath-hs:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   liboleg:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   libpafe:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6597,6 +6641,7 @@ dont-distribute-packages:
   libxml-enumerator:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   libxslt:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   licensor:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  lifted-base-tf:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   lifted-protolude:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   lifter:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   ligature:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6740,6 +6785,7 @@ dont-distribute-packages:
   ls-usb:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   lscabal:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   LslPlus:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  lsp-test:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   lsystem:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ltext:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   ltk:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6909,6 +6955,7 @@ dont-distribute-packages:
   MHask:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mi:                                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   Michelangelo:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  miconix-test:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   microaeson:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   microformats2-types:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   microgroove:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6943,11 +6990,15 @@ dont-distribute-packages:
   missing-py2:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   MissingPy:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   mixed-strategies:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mixpanel-client:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   mkbndl:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   mkcabal:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ml-w:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   mlist:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mltool:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mmark-cli:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mmark-ext:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mmark:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtf:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtl-base:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   mmtl:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7352,6 +7403,7 @@ dont-distribute-packages:
   opaleye-classy:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   opaleye-sqlite:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   opaleye-trans:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  opaleye:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   open-haddock:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   open-pandoc:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   open-signals:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7379,6 +7431,7 @@ dont-distribute-packages:
   opensoundcontrol-ht:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   openssh-github-keys:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   opentheory-char:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  opentok:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   opentype:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   OpenVG:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   OpenVGRaw:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7386,6 +7439,7 @@ dont-distribute-packages:
   Operads:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   operational-extra:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   opml-conduit:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  optima:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   optimal-blocks:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   optimusprime:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   optional:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7411,6 +7465,7 @@ dont-distribute-packages:
   OrPatterns:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   osc:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   oscpacking:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Oslo-Vectize:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   osm-conduit:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   osm-download:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   OSM:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7543,6 +7598,7 @@ dont-distribute-packages:
   perhaps:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   periodic:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   perm:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  permutations:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   permute:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   PermuteEffects:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   persist2er:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7631,6 +7687,7 @@ dont-distribute-packages:
   pitchtrack:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   pivotal-tracker:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   pixelated-avatar-generator:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  piyo:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   pkcs10:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   pkcs7:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   pkggraph:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7639,6 +7696,7 @@ dont-distribute-packages:
   plan-b:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   planar-graph:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   planb-token-introspection:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  planet-mitchell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   plankton:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   plat:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   platinum-parsing:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7752,6 +7810,7 @@ dont-distribute-packages:
   pretty-sop:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   prettyprinter-vty:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   preview:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  prim-instances:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   primes-type:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   primesieve:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   primitive-checked:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7811,6 +7870,8 @@ dont-distribute-packages:
   prosper:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   proto-lens-combinators:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   proto-lens-descriptors:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  proto-lens-runtime:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
+  proto-lens-setup:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   protobuf-native:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   protocol-buffers-descriptor-fork:               [ i686-linux, x86_64-linux, x86_64-darwin ]
   protocol-buffers-fork:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7842,6 +7903,7 @@ dont-distribute-packages:
   pure-io:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   pure-priority-queue-tests:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   pure-priority-queue:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  purescript-iso:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   purescript-tsd-gen:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   purescript:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   push-notify-ccs:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7905,6 +7967,7 @@ dont-distribute-packages:
   quickcheck-state-machine-distributed:           [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickcheck-state-machine:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickcheck-webdriver:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  quickcheck-with-counterexamples:                [ i686-linux, x86_64-linux, x86_64-darwin ]
   QuickCheckVariant:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   QuickPlot:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickpull:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7929,6 +7992,7 @@ dont-distribute-packages:
   rad:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   radium-formula-parser:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   radium:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  radix-tree:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   radix:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   rados-haskell:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   raft:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8336,6 +8400,7 @@ dont-distribute-packages:
   scrobble:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   scrz:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   Scurry:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  scythe:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   scyther-proof:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   sde-solver:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   sdl2-cairo-image:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8412,6 +8477,7 @@ dont-distribute-packages:
   servant-generic:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-github:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-haxl-client:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-hmac-auth:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-iCalendar:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-jquery:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-js:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8573,6 +8639,7 @@ dont-distribute-packages:
   skeletons:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   skell:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   skemmtun:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  skews:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   skulk:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   skylark-client:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   skype4hs:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8693,6 +8760,7 @@ dont-distribute-packages:
   socketson:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   sodium:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   soegtk:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  softfloat-hs:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   solga-swagger:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   solga:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   solr:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8786,6 +8854,7 @@ dont-distribute-packages:
   stack-network:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   stack-run-auto:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   stack-run:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  stack2nix:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   stackage-build-plan:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   stackage-cabal:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   stackage-cli:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9099,6 +9168,7 @@ dont-distribute-packages:
   text-format-heavy:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   text-generic-pretty:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   text-icu-normalized:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  text-icu-translit:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   text-json-qq:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   text-lens:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   text-locale-encoding:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9208,12 +9278,14 @@ dont-distribute-packages:
   toilet:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokenify:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokenizer-monad:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  tokstyle:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   toktok:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokyocabinet-haskell:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokyotyrant-haskell:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   tomato-rubato-openal:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   toml-parser:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   toml:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  tomlcheck:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Top:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   top:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   topkata:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9233,6 +9305,7 @@ dont-distribute-packages:
   traced:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tracker:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   trackit:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  traction:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   tracy:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   traildb:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   trajectory:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9300,6 +9373,7 @@ dont-distribute-packages:
   turtle-options:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   TV:                                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   tweak:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  twee:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   tweet-hs:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   twentefp-eventloop-graphics:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   twentefp-eventloop-trees:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9457,6 +9531,9 @@ dont-distribute-packages:
   utf8-prelude:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   utf8-validator:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   UTFTConverter:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  util-exception:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  util-primitive-control:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  util-primitive:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   uu-cco-examples:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   uu-cco-hut-parsing:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   uu-cco-uu-parsinglib:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9491,6 +9568,7 @@ dont-distribute-packages:
   varying:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   vault-tool-server:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   vault-tool:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  vault-trans:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   vaultaire-common:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   vcard:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   vcatt:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9586,6 +9664,7 @@ dont-distribute-packages:
   wai-middleware-headers:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   wai-middleware-hmac-client:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   wai-middleware-preprocessor:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  wai-middleware-prometheus:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   wai-middleware-rollbar:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   wai-middleware-route:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   wai-middleware-static-caching:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9670,6 +9749,7 @@ dont-distribute-packages:
   winio:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   wire-streams:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   wiring:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  wkt-geom:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   wkt:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   wl-pprint-ansiterm:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   WL500gPControl:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9701,6 +9781,7 @@ dont-distribute-packages:
   wsdl:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   wsedit:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   wsjtx-udp:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  wss-client:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   wtk-gtk:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   wtk:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   wumpus-basic:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9948,6 +10029,7 @@ dont-distribute-packages:
   zeromq4-conduit:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   zeromq4-haskell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   zeromq4-patterns:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  zeromq4-simple:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   zeroth:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   ZFS:                                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   zifter-cabal:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index c3df7d38bfd0..43ba2d000eb5 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -517,4 +517,7 @@ self: super: builtins.intersectAttrs super {
     postPatch = ''
       sed -i -e 's|"z3"|"${pkgs.z3}/bin/z3"|' Data/SBV/Provers/Z3.hs'';
   });
+
+  # The test-suite requires a running PostgreSQL server.
+  Frames-beam = dontCheck super.Frames-beam;
 }
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 6db88796b64c..1007be349fc9 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -5837,6 +5837,7 @@ self: {
        ];
        description = "A library for accessing Postgres tables as in-memory data structures";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "Frank" = callPackage
@@ -6581,6 +6582,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Glob_0_9_3" = callPackage
+    ({ mkDerivation, base, containers, directory, dlist, filepath
+     , HUnit, QuickCheck, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "Glob";
+       version = "0.9.3";
+       sha256 = "1s69lk3ic6zlkikhvb78ly9wl3g70a1h1m6ndhsca01pp8z8axrs";
+       libraryHaskellDepends = [
+         base containers directory dlist filepath transformers
+         transformers-compat
+       ];
+       testHaskellDepends = [
+         base containers directory dlist filepath HUnit QuickCheck
+         test-framework test-framework-hunit test-framework-quickcheck2
+         transformers transformers-compat
+       ];
+       description = "Globbing library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "GlomeTrace" = callPackage
     ({ mkDerivation, array, base, GlomeVec }:
      mkDerivation {
@@ -8572,6 +8596,8 @@ self: {
        pname = "HTTP";
        version = "4000.3.12";
        sha256 = "140r6qy1ay25piv0z3hih11zhigyi08nkwc32097j43pjff6mzx3";
+       revision = "1";
+       editedCabalFile = "108i60vy6r7k1yaraw9g6xc7r82nwb9h84vsk9q5s01z980c7kk4";
        libraryHaskellDepends = [
          array base bytestring mtl network network-uri parsec time
        ];
@@ -10997,6 +11023,7 @@ self: {
        ];
        description = "Library for automated composition and musical learning";
        license = "unknown";
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "KyotoCabinet" = callPackage
@@ -13417,6 +13444,8 @@ self: {
        pname = "OTP";
        version = "0.1.0.0";
        sha256 = "1r7vpc0bv89d70j6pc3z3vam93gahl4j0y5w8smknxwjliwqxkcb";
+       revision = "1";
+       editedCabalFile = "1bcp6mixf0yxn6qmql3zhyshpa55mkrfnxdb1ma6gvbs7h28lnin";
        libraryHaskellDepends = [
          base bytestring cryptohash-sha1 cryptohash-sha256 cryptohash-sha512
          time
@@ -13899,13 +13928,14 @@ self: {
        pname = "Oslo-Vectize";
        version = "0.2";
        sha256 = "05lgpaw6glwflczsa3400fhih717ry4sikhs9ypyd7xlqvraad57";
-       revision = "1";
-       editedCabalFile = "03fchm31c0yl36l8nn3bykgncidrhp3ql44j0r3853s3vknai9gp";
+       revision = "2";
+       editedCabalFile = "0axdqcpl3rl9lh9rvd5cn4llvglca8y82p1l3rvka97b33lfj8ky";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base ];
-       description = "Tests";
+       description = "spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "PArrows" = callPackage
@@ -15350,8 +15380,8 @@ self: {
      }:
      mkDerivation {
        pname = "Raincat";
-       version = "1.2";
-       sha256 = "1zyxkvjxkadwakg03xnjii1hx0gs45ap9rfkpi4kxipzxppq1klk";
+       version = "1.2.1";
+       sha256 = "10y9zi22m6hf13c9h8zd9vg7mljpwbw0r3djb6r80bna701fdf6c";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -17250,6 +17280,8 @@ self: {
        pname = "Strafunski-StrategyLib";
        version = "5.0.1.0";
        sha256 = "15d2m7ahb3jwriariaff0yz93mmrhpv579wink9838w9091cf650";
+       revision = "1";
+       editedCabalFile = "1hngxq1f7fybg6ixkdhmvgsw608mhnxkwbw04ql5zspcfl78v6l2";
        libraryHaskellDepends = [ base directory mtl syb transformers ];
        description = "Library for strategic programming";
        license = stdenv.lib.licenses.bsd3;
@@ -23102,8 +23134,8 @@ self: {
     ({ mkDerivation, base, syb, template-haskell }:
      mkDerivation {
        pname = "algebraic-classes";
-       version = "0.9.1";
-       sha256 = "129s5690wc4w92sg246pcmnradzgfdddqpv961a53k2cx9ynmvc6";
+       version = "0.9.2";
+       sha256 = "131rd3liqkdp146fyc8b0mcbkn08mib9iljyjj3mp40fs64sy1c9";
        libraryHaskellDepends = [ base syb template-haskell ];
        description = "Conversions between algebraic classes and F-algebras";
        license = stdenv.lib.licenses.bsd3;
@@ -26952,6 +26984,7 @@ self: {
          aeson antiope-s3 avro base bytestring text
        ];
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-core" = callPackage
@@ -28133,6 +28166,7 @@ self: {
        ];
        description = "Convenience types and functions for postgresql-simple";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "arbtt" = callPackage
@@ -28567,6 +28601,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "arithmoi_0_8_0_0" = callPackage
+    ({ mkDerivation, array, base, containers, deepseq, exact-pi, gauge
+     , ghc-prim, integer-gmp, integer-logarithms, QuickCheck, random
+     , smallcheck, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck, transformers, vector
+     }:
+     mkDerivation {
+       pname = "arithmoi";
+       version = "0.8.0.0";
+       sha256 = "17nk0n89fb0qh6w8535ll45mq4msir32w6fhqzpzhlpbily3mlw2";
+       revision = "1";
+       editedCabalFile = "00s941gdf4y04sf0jxl329mnpcpa6cydmsa6l4mja8sdv6akzq52";
+       configureFlags = [ "-f-llvm" ];
+       libraryHaskellDepends = [
+         array base containers deepseq exact-pi ghc-prim integer-gmp
+         integer-logarithms random transformers vector
+       ];
+       testHaskellDepends = [
+         base containers exact-pi integer-gmp QuickCheck smallcheck tasty
+         tasty-hunit tasty-quickcheck tasty-smallcheck transformers vector
+       ];
+       benchmarkHaskellDepends = [
+         base containers deepseq gauge integer-logarithms random vector
+       ];
+       description = "Efficient basic number-theoretic functions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "armada" = callPackage
     ({ mkDerivation, base, GLUT, mtl, OpenGL, stm }:
      mkDerivation {
@@ -28645,8 +28708,8 @@ self: {
        pname = "array";
        version = "0.5.2.0";
        sha256 = "12v83s2imxb3p2crnlzrpjh0nk6lpysw9bdk9yahs6f37csa5jaj";
-       revision = "1";
-       editedCabalFile = "195c914pc0vk1ya6lz42kb4gmhkam7s0xi7x0dgzhpb5gkcrs5qx";
+       revision = "2";
+       editedCabalFile = "1irpwz3spy3yy27kzw8sklhcvxz3mx9fkgqia7r9m069w5wid9kg";
        libraryHaskellDepends = [ base ];
        description = "Mutable and immutable arrays";
        license = stdenv.lib.licenses.bsd3;
@@ -28972,6 +29035,7 @@ self: {
        ];
        description = "Compact representation of ASCII strings";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ascii-table" = callPackage
@@ -29524,6 +29588,7 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "Async combinators";
        license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "async-dejafu" = callPackage
@@ -30739,6 +30804,7 @@ self: {
        ];
        description = "A secure package manager for Arch Linux and the AUR, written in Haskell";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "authenticate" = callPackage
@@ -31941,6 +32007,7 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "The Axel programming language";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "axiom" = callPackage
@@ -32665,12 +32732,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "base_4_11_1_0" = callPackage
+  "base_4_12_0_0" = callPackage
     ({ mkDerivation, ghc-prim, invalid-cabal-flag-settings, rts }:
      mkDerivation {
        pname = "base";
-       version = "4.11.1.0";
-       sha256 = "0q2ygfqy4qim8h9fmlb5iwfnf2lrly27bqqvnckdlmh775fmq07g";
+       version = "4.12.0.0";
+       sha256 = "0ka18cvw1cjvjdd20n03rjmxfm10083mh19wxwz1f1kqiyc92g3w";
        libraryHaskellDepends = [
          ghc-prim invalid-cabal-flag-settings rts
        ];
@@ -32744,6 +32811,8 @@ self: {
        pname = "base-encoding";
        version = "0.1.0.0";
        sha256 = "1chmx5qvglf91i0c9ih9xydzb37v8j4bykvmb2g6pyg7wdq0s8si";
+       revision = "1";
+       editedCabalFile = "0miysladpqwm5qhphv23qhvambd7245n14qbkgvp664xj56y6df1";
        libraryHaskellDepends = [
          base base16-bytestring base64-bytestring bytestring text
        ];
@@ -32792,8 +32861,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "base-noprelude";
-       version = "4.11.1.0";
-       sha256 = "19d1x487kwhc60qjix7xx53dlszbx08rdhxd2zab1pwjw62ws3c8";
+       version = "4.12.0.0";
+       sha256 = "1hb25nj49k4lcxi4w33qvcy8izkgsvls5kasmva6hjlvg8b35ymb";
        libraryHaskellDepends = [ base ];
        doHaddock = false;
        description = "\"base\" package sans \"Prelude\" module";
@@ -33853,8 +33922,8 @@ self: {
      }:
      mkDerivation {
        pname = "bench-graph";
-       version = "0.1.3";
-       sha256 = "15xsaqxms61p8d5r0lsxhlrdfh451ha6fpldcmh8vcw0q4yb1q47";
+       version = "0.1.4";
+       sha256 = "144al44v3m00lh1rrhjyah0gacbi2n6hjlqvml3yqwf8j9c37wnw";
        libraryHaskellDepends = [
          base Chart Chart-diagrams csv directory filepath transformers
        ];
@@ -35983,6 +36052,8 @@ self: {
        pname = "biohazard";
        version = "1.0.4";
        sha256 = "1gj5xr0b9s2zifknm10bynkh0gvsi0gmw2sa3zcp1if17ixndv2c";
+       revision = "2";
+       editedCabalFile = "0r1fz9h92zyb7ryk8lngqlyl75djr8ngbcfrr9bbmz8img2ipb2a";
        libraryHaskellDepends = [
          async attoparsec base base-prelude bytestring containers exceptions
          hashable primitive stm text transformers unix unordered-containers
@@ -37838,11 +37909,14 @@ self: {
        pname = "blunk-hask-tests";
        version = "0.2";
        sha256 = "10x4xjlp1mj9gmsibvd21k76gj97prdsgwxxpg39425xgrzph6ll";
+       revision = "1";
+       editedCabalFile = "0wnp6rzq3iisi9vfk0nci4cb8kdwijdyv60f6kg0bhz1xzn7i6ww";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base ];
-       description = "Tests for the Blunk sequencer library";
+       description = "spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "blunt" = callPackage
@@ -38757,6 +38831,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion text ];
        description = "Brainh*ck interpreter in haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "break" = callPackage
@@ -38900,6 +38975,7 @@ self: {
        ];
        description = "Show syntax-highlighted text in your Brick UI";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bricks" = callPackage
@@ -39084,6 +39160,7 @@ self: {
        ];
        description = "Haskell source code formatter";
        license = stdenv.lib.licenses.agpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "broadcast-chan" = callPackage
@@ -39128,6 +39205,7 @@ self: {
        ];
        description = "Conduit-based parallel streaming code for broadcast-chan";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "broadcast-chan-pipes" = callPackage
@@ -39144,6 +39222,7 @@ self: {
        ];
        description = "Pipes-based parallel streaming code for broadcast-chan";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "broadcast-chan-tests" = callPackage
@@ -39166,6 +39245,7 @@ self: {
        ];
        description = "Helpers for generating tests for broadcast-chan";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "broccoli" = callPackage
@@ -39609,6 +39689,7 @@ self: {
        ];
        description = "Bugsnag error reporter for Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bugzilla" = callPackage
@@ -40955,12 +41036,12 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-cargs";
-       version = "1.0.0";
-       sha256 = "025cdf78kg572b8bk5xxz4qxibjn4c72x2d3rxn6crz722139rf0";
+       version = "1.1.0";
+       sha256 = "0lrhgbzkswjm4abffacyw6zp4s3na3vp0vkprpxcygm6yjs7db2q";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring Cabal cabal-lenses cmdargs directory lens
+         base bytestring Cabal cabal-lenses cmdargs directory filepath lens
          system-fileio system-filepath text transformers
          unordered-containers
        ];
@@ -41423,6 +41504,8 @@ self: {
        pname = "cabal-plan";
        version = "0.4.0.0";
        sha256 = "0cbk0xhv189jv656x6a2s0bcnhkks4rlpkhvxbb215v5ldmrkpb1";
+       revision = "1";
+       editedCabalFile = "161vgfbwm8psqa6ncs12j7sn5lqjag1xi62vllvp8xbz9lcvbchb";
        configureFlags = [ "-fexe" ];
        isLibrary = true;
        isExecutable = true;
@@ -41802,14 +41885,14 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
-  "cabal2spec_2_2_1" = callPackage
+  "cabal2spec_2_2_2" = callPackage
     ({ mkDerivation, base, Cabal, filepath, optparse-applicative, tasty
      , tasty-golden, time
      }:
      mkDerivation {
        pname = "cabal2spec";
-       version = "2.2.1";
-       sha256 = "1j4y942r2v1s9cvvgnpjckl7s9bmpby1w4z4gffpbfirrc2h1nq6";
+       version = "2.2.2";
+       sha256 = "1rb7z4lslqsf8ipsyy7nc3mz4ixz5f5cv5jn5nidj0pc5rl16sxw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Cabal filepath time ];
@@ -42785,6 +42868,7 @@ self: {
        ];
        description = "Cap'n Proto for Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "capped-list" = callPackage
@@ -43470,6 +43554,8 @@ self: {
        pname = "cassava";
        version = "0.5.1.0";
        sha256 = "0xs2c5lpy0g5lsmp2cx0dm5lnxij7cgry6xd5gsn3bfdlap8lb3n";
+       revision = "1";
+       editedCabalFile = "1brz20js95synh0yw942ihy4y9y6nk4xnsqcjqi9580y24zcigkl";
        configureFlags = [ "-f-bytestring--lt-0_10_4" ];
        libraryHaskellDepends = [
          array attoparsec base bytestring containers deepseq hashable Only
@@ -50211,8 +50297,8 @@ self: {
      }:
      mkDerivation {
        pname = "concraft";
-       version = "0.11.0";
-       sha256 = "07da6r8rw4vphr7q5i0lfap80vlbq1jm9lsbjp6khc7n59l5b2j7";
+       version = "0.12.1";
+       sha256 = "1zjrv58fl4lkknmmih0dwi9ds241mxi42q3fxlpd8z5hlgq9pxpj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -50258,8 +50344,8 @@ self: {
      }:
      mkDerivation {
        pname = "concraft-pl";
-       version = "2.0.2";
-       sha256 = "0vl49khchpsyxlwxa55xpah8gnjqgfx0vb9jrjzdbfaj293g77sm";
+       version = "2.1.1";
+       sha256 = "1fznivcsgyjhb62jzk9a3wsv8rmynr7y7473ldbqypkjgy2rmvf2";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -50409,6 +50495,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "concurrency_1_6_1_0" = callPackage
+    ({ mkDerivation, array, atomic-primops, base, exceptions
+     , monad-control, mtl, stm, transformers
+     }:
+     mkDerivation {
+       pname = "concurrency";
+       version = "1.6.1.0";
+       sha256 = "00cycrgs2zl2jsg1acc1glcw9ladmgqwxxdqq1ss6v36j8qhk920";
+       libraryHaskellDepends = [
+         array atomic-primops base exceptions monad-control mtl stm
+         transformers
+       ];
+       description = "Typeclasses, functions, and data types for concurrency and STM";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "concurrency-benchmarks" = callPackage
     ({ mkDerivation, async, base, bench-graph, bytestring, Chart
      , Chart-diagrams, csv, deepseq, directory, gauge, getopt-generics
@@ -50429,6 +50532,7 @@ self: {
        ];
        description = "Benchmarks to compare concurrency APIs";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "concurrent-barrier" = callPackage
@@ -50552,6 +50656,23 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "concurrent-output_1_10_7" = callPackage
+    ({ mkDerivation, ansi-terminal, async, base, directory, exceptions
+     , process, stm, terminal-size, text, transformers, unix
+     }:
+     mkDerivation {
+       pname = "concurrent-output";
+       version = "1.10.7";
+       sha256 = "0w5x81n9ljs8l2b8ypy2naazvrv16qqlm1lfzvsksnii2nm1al30";
+       libraryHaskellDepends = [
+         ansi-terminal async base directory exceptions process stm
+         terminal-size text transformers unix
+       ];
+       description = "Ungarble output from several threads or commands";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "concurrent-rpc" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -51322,8 +51443,8 @@ self: {
        pname = "config-schema";
        version = "0.5.0.1";
        sha256 = "18zdq0w65cs2zy8p0pvb0jfqffcyxq9km1c2h5fvky8c689lp0gp";
-       revision = "2";
-       editedCabalFile = "0wibr3739xwkvdl48cahppaxn8v20gcmhrjxjj8hkhvgnbpfi2gn";
+       revision = "3";
+       editedCabalFile = "102mwr18aas924hlxsyyx5pi8skkb2misic1h95f6khpz7wcy3vy";
        libraryHaskellDepends = [
          base config-value containers free kan-extensions pretty
          semigroupoids text transformers
@@ -51355,6 +51476,8 @@ self: {
        pname = "config-value";
        version = "0.6.3.1";
        sha256 = "0gfr9qcw8a7y1y9cn6635y8fgvrpkmcqx31bn2a070rbrmk3757z";
+       revision = "1";
+       editedCabalFile = "16h47yc8z3fkxs6gdyzfkahi9ibm7narkc72xcx67bmk309xb46c";
        libraryHaskellDepends = [ array base pretty text ];
        libraryToolDepends = [ alex happy ];
        description = "Simple, layout-based value language similar to YAML or JSON";
@@ -54168,8 +54291,8 @@ self: {
      }:
      mkDerivation {
        pname = "crf-chain1-constrained";
-       version = "0.4.0";
-       sha256 = "1mqprywxh51hvbchw1pvg66bsdf24rx6ywk06z98sx88rlvc4a2q";
+       version = "0.5.0";
+       sha256 = "194mcafkf23lifmx2n2hnvsaxl0mfdl9zgl9awigddwxvpxsrmjq";
        libraryHaskellDepends = [
          array base binary containers data-lens data-memocombinators
          logfloat monad-codec parallel pedestrian-dag random sgd vector
@@ -54259,6 +54382,8 @@ self: {
        pname = "criterion";
        version = "1.4.1.0";
        sha256 = "0v429araqkcw3wwwi6fsp0g7g1hy3l47p061lcy7r4m7d9khd4y4";
+       revision = "1";
+       editedCabalFile = "0jg7mk9y9br5aqi29vrrrq28mnyknyg96zmr8rrlxw0rf68l892a";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -55240,6 +55365,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) openssl;};
 
+  "cryptostore" = callPackage
+    ({ mkDerivation, asn1-encoding, asn1-types, base, basement
+     , bytestring, cryptonite, hourglass, memory, pem, tasty
+     , tasty-hunit, tasty-quickcheck, x509
+     }:
+     mkDerivation {
+       pname = "cryptostore";
+       version = "0.1.0.0";
+       sha256 = "1pq53k0dx0akwp1rkgadyb256w0lds8iq7yn2xb217nyjyghyrqz";
+       libraryHaskellDepends = [
+         asn1-encoding asn1-types base basement bytestring cryptonite
+         hourglass memory pem x509
+       ];
+       testHaskellDepends = [
+         asn1-types base bytestring cryptonite hourglass memory pem tasty
+         tasty-hunit tasty-quickcheck x509
+       ];
+       description = "Serialization of cryptographic data types";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "cryptsy-api" = callPackage
     ({ mkDerivation, aeson, base, bytestring, deepseq, either
      , http-client, http-client-tls, old-locale, pipes-attoparsec
@@ -58198,6 +58344,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "data-ref_0_0_1_2" = callPackage
+    ({ mkDerivation, base, stm, transformers }:
+     mkDerivation {
+       pname = "data-ref";
+       version = "0.0.1.2";
+       sha256 = "0896wjkpk52cndlzkdr51s1rasi0n9b100058f1sb4qzl1dgcp30";
+       libraryHaskellDepends = [ base stm transformers ];
+       description = "Unify STRef and IORef in plain Haskell 98";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "data-reify" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -60007,16 +60165,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "deepseq_1_4_3_0" = callPackage
+  "deepseq_1_4_4_0" = callPackage
     ({ mkDerivation, array, base, ghc-prim, HUnit, test-framework
      , test-framework-hunit
      }:
      mkDerivation {
        pname = "deepseq";
-       version = "1.4.3.0";
-       sha256 = "0fjdmsd8fqqv78m7111m10pdfswnxmn02zx1fsv2k26b5jckb0bd";
-       revision = "1";
-       editedCabalFile = "0djisxi7z2xyx3wps550avgz5x56rl4xzks17j996crdsrdrcqh9";
+       version = "1.4.4.0";
+       sha256 = "09kfpmgl679l74b6dadia11pvhya9ik4wrd8x76cgkxk7gwcbkrc";
        libraryHaskellDepends = [ array base ];
        testHaskellDepends = [
          array base ghc-prim HUnit test-framework test-framework-hunit
@@ -60058,8 +60214,8 @@ self: {
        pname = "deepseq-generics";
        version = "0.2.0.0";
        sha256 = "17bwghc15mc9pchfd1w46jh2p3wzc86aj6a537wqwxn08rayzcxh";
-       revision = "2";
-       editedCabalFile = "1pnidf8w8x0w5fsqgv8hhrw07slmhxwy5x4fikgk0bd6k76aqicb";
+       revision = "3";
+       editedCabalFile = "0734x6dm7ny1422n5ik4agzmjybvd3yybj1mnrc8z0kb89xdprcs";
        libraryHaskellDepends = [ base deepseq ghc-prim ];
        testHaskellDepends = [
          base deepseq ghc-prim HUnit test-framework test-framework-hunit
@@ -60516,6 +60672,7 @@ self: {
        ];
        description = "Dense int-set";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "dependency" = callPackage
@@ -63342,6 +63499,7 @@ self: {
        ];
        description = "Write bots for Discord in Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "discord-hs" = callPackage
@@ -64876,6 +65034,7 @@ self: {
        ];
        description = "Builds a docker image and caches all of its intermediate stages";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "dockercook" = callPackage
@@ -65017,6 +65176,36 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "doctest_0_16_0_1" = callPackage
+    ({ mkDerivation, base, base-compat, code-page, deepseq, directory
+     , filepath, ghc, ghc-paths, hspec, HUnit, mockery, process
+     , QuickCheck, setenv, silently, stringbuilder, syb, transformers
+     , with-location
+     }:
+     mkDerivation {
+       pname = "doctest";
+       version = "0.16.0.1";
+       sha256 = "106pc4rs4cfym7754gzdgy36dm9aidwmnqpjm9k7yq1hfd4pallv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base base-compat code-page deepseq directory filepath ghc ghc-paths
+         process syb transformers
+       ];
+       executableHaskellDepends = [
+         base base-compat code-page deepseq directory filepath ghc ghc-paths
+         process syb transformers
+       ];
+       testHaskellDepends = [
+         base base-compat code-page deepseq directory filepath ghc ghc-paths
+         hspec HUnit mockery process QuickCheck setenv silently
+         stringbuilder syb transformers with-location
+       ];
+       description = "Test interactive Haskell examples";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "doctest-discover" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, doctest
      , filepath
@@ -68879,6 +69068,7 @@ self: {
        testHaskellDepends = [ base doctest Glob ];
        description = "Wrapper around email-validate library adding instances for common type classes";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "emailparse" = callPackage
@@ -69285,6 +69475,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "entropy_0_4_1_3" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, directory, filepath
+     , process, unix
+     }:
+     mkDerivation {
+       pname = "entropy";
+       version = "0.4.1.3";
+       sha256 = "07596n4ligi1a6jddkh5kf94mrcg03kybs5wa198672d2gdfn2ji";
+       setupHaskellDepends = [ base Cabal directory filepath process ];
+       libraryHaskellDepends = [ base bytestring unix ];
+       description = "A platform independent entropy source";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "enum-subset-generate" = callPackage
     ({ mkDerivation, base, generic-random, hspec, microlens, QuickCheck
      , template-haskell
@@ -69776,6 +69981,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "equivalence_0_3_3" = callPackage
+    ({ mkDerivation, base, containers, mtl, QuickCheck, STMonadTrans
+     , template-haskell, test-framework, test-framework-quickcheck2
+     , transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "equivalence";
+       version = "0.3.3";
+       sha256 = "02jhn8z1aqyxp3krylhfnwr7zzjcd17q9qriyd9653i92b7di3gf";
+       libraryHaskellDepends = [
+         base containers mtl STMonadTrans transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base containers mtl QuickCheck STMonadTrans template-haskell
+         test-framework test-framework-quickcheck2 transformers
+         transformers-compat
+       ];
+       description = "Maintaining an equivalence relation implemented as union-find using STT";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "erd" = callPackage
     ({ mkDerivation, base, bytestring, containers, graphviz, parsec
      , text
@@ -72467,6 +72694,7 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "faceted" = callPackage
@@ -74613,8 +74841,8 @@ self: {
        pname = "filepath-crypto";
        version = "0.1.0.0";
        sha256 = "1bj9haa4ignmk6c6gdiqb4rnwy395pwqdyfy4kgg0z16w0l39mw0";
-       revision = "5";
-       editedCabalFile = "1xyrac6m3szzj7x68fnrf7nh43gq03g9rwyynfxdx290bgc38gch";
+       revision = "6";
+       editedCabalFile = "0lg22k1f9l51a8bdnhkwq07mg0m3w3rhgavp1lxi3vmsszsmpmvc";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive cryptoids cryptoids-class
          cryptoids-types exceptions filepath sandi template-haskell
@@ -76584,6 +76812,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fold-debounce_0_2_0_8" = callPackage
+    ({ mkDerivation, base, data-default-class, hspec, stm, stm-delay
+     , time
+     }:
+     mkDerivation {
+       pname = "fold-debounce";
+       version = "0.2.0.8";
+       sha256 = "1j7v11nq2q7p50z27lbmprwqrhvcf9qa5zy2hql68zsi53q3wszw";
+       libraryHaskellDepends = [
+         base data-default-class stm stm-delay time
+       ];
+       testHaskellDepends = [ base hspec stm time ];
+       description = "Fold multiple events that happen in a given period of time";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fold-debounce-conduit" = callPackage
     ({ mkDerivation, base, conduit, fold-debounce, hspec, resourcet
      , stm, transformers, transformers-base
@@ -76603,6 +76848,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fold-debounce-conduit_0_2_0_2" = callPackage
+    ({ mkDerivation, base, conduit, fold-debounce, hspec, resourcet
+     , stm, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "fold-debounce-conduit";
+       version = "0.2.0.2";
+       sha256 = "18hxlcm0fixx4iiac26cdbkkqivg71qk3z50k71l9n3yashijjdc";
+       libraryHaskellDepends = [
+         base conduit fold-debounce resourcet stm transformers
+         transformers-base
+       ];
+       testHaskellDepends = [
+         base conduit hspec resourcet stm transformers
+       ];
+       description = "Regulate input traffic from conduit Source with Control.FoldDebounce";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "foldable1" = callPackage
     ({ mkDerivation, base, transformers, util }:
      mkDerivation {
@@ -76813,6 +77078,7 @@ self: {
        ];
        description = "Haskell library to follow content published on any subject";
        license = stdenv.lib.licenses.lgpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "follow-file" = callPackage
@@ -77849,18 +78115,15 @@ self: {
 
   "free-functors" = callPackage
     ({ mkDerivation, algebraic-classes, base, bifunctors, comonad
-     , constraints, contravariant, profunctors, template-haskell
-     , transformers
+     , contravariant, profunctors, template-haskell, transformers
      }:
      mkDerivation {
        pname = "free-functors";
-       version = "0.8.4";
-       sha256 = "0qdllnqghnx6j51zyxqblnz809w7l86qp0d9dg8a4l4kllp1y703";
-       revision = "1";
-       editedCabalFile = "0yl71dl7rp8si7gshj1f713cjxmk5dzkb6m6d3vicc97b37s6r5j";
+       version = "1.0";
+       sha256 = "061xly5fl7a28dsjw9m8dzyh59fkjrs6ijhcqfn2n4y8azch9f6c";
        libraryHaskellDepends = [
-         algebraic-classes base bifunctors comonad constraints contravariant
-         profunctors template-haskell transformers
+         algebraic-classes base bifunctors comonad contravariant profunctors
+         template-haskell transformers
        ];
        description = "Free functors, adjoint to functors that forget class constraints";
        license = stdenv.lib.licenses.bsd3;
@@ -78027,6 +78290,7 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "free-v-bucks-generator-ps4-no-survey" = callPackage
@@ -78042,6 +78306,7 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "free-vector-spaces" = callPackage
@@ -80582,6 +80847,7 @@ self: {
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Utilities for GHC.Generics";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "generic-deepseq" = callPackage
@@ -81619,8 +81885,8 @@ self: {
      }:
      mkDerivation {
        pname = "geoip2";
-       version = "0.3.1.0";
-       sha256 = "1w9iqfkyi0ij33kng4adczi6m8chyhsadc2af5ryp8xzl7w64l8m";
+       version = "0.3.1.1";
+       sha256 = "0nq4kijjd0dmii5949xr7wf4w7fi2ffpbqr9bg7qklxhsrmwywb8";
        libraryHaskellDepends = [
          base bytestring cereal containers iproute mmap reinterpret-cast
          text
@@ -81881,14 +82147,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot_8_4_3" = callPackage
+  "ghc-boot_8_6_1" = callPackage
     ({ mkDerivation, base, binary, bytestring, directory, filepath
      , ghc-boot-th
      }:
      mkDerivation {
        pname = "ghc-boot";
-       version = "8.4.3";
-       sha256 = "028x85pmvacndkv6mm9vrg9j6p6zw0a6v2mdwibhf3ck3wwm9v8m";
+       version = "8.6.1";
+       sha256 = "0dy9p2vz7ccwrhk9l4vs4fhfg6w9p7pk88iy44i46089svzx0wja";
        libraryHaskellDepends = [
          base binary bytestring directory filepath ghc-boot-th
        ];
@@ -81897,12 +82163,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot-th_8_4_3" = callPackage
+  "ghc-boot-th_8_6_1" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "ghc-boot-th";
-       version = "8.4.3";
-       sha256 = "19q4j9n0ir0b5cc54sazzf4m51fd6mz6705wzplva4qh5602dafi";
+       version = "8.6.1";
+       sha256 = "0z3d9niqzsv1zihazs1ghdwag53fcmdigj77z37licc5q0g0lc49";
        libraryHaskellDepends = [ base ];
        description = "Shared functionality between GHC and the @template-haskell@ library";
        license = stdenv.lib.licenses.bsd3;
@@ -81926,8 +82192,8 @@ self: {
        pname = "ghc-compact";
        version = "0.1.0.0";
        sha256 = "03sf8ap1ncjsibp9z7k9xgcsj9s0q3q6l4shf8k7p8dkwpjl1g2h";
-       revision = "1";
-       editedCabalFile = "1fwcfk515lv3pjzxz87bddk3kdbkaxswxrr37spdlkvyyfrbxyak";
+       revision = "2";
+       editedCabalFile = "1i775sc8sb89gali1w7qxs7l6y8vawp1mdd564d5mz95sxj4757b";
        libraryHaskellDepends = [ base bytestring ghc-prim ];
        description = "In memory storage of deeply evaluated data structure";
        license = stdenv.lib.licenses.bsd3;
@@ -82158,15 +82424,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc-exactprint_0_5_8_0" = callPackage
+  "ghc-exactprint_0_5_8_1" = callPackage
     ({ mkDerivation, base, bytestring, containers, Diff, directory
      , filemanip, filepath, free, ghc, ghc-boot, ghc-paths, HUnit, mtl
      , silently, syb
      }:
      mkDerivation {
        pname = "ghc-exactprint";
-       version = "0.5.8.0";
-       sha256 = "1hmyk5d0sbf4kqp4bzcl6q3vf6dpbx2imqky7r206g39xkx3y3fh";
+       version = "0.5.8.1";
+       sha256 = "1qjl137f4lpadkgdyfjnkkga8vqyw0x27plpyw57aqhc8qmcylhh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -82455,8 +82721,8 @@ self: {
        pname = "ghc-paths";
        version = "0.1.0.9";
        sha256 = "0ibrr1dxa35xx20cpp8jzgfak1rdmy344dfwq4vlq013c6w8z9mg";
-       revision = "3";
-       editedCabalFile = "1gx47xbm3qviqccnbsibzkfnlzljvls33jh1ry4l506yvfnf4j10";
+       revision = "4";
+       editedCabalFile = "1fp0jyvi6prqsv0dxn010c7q4mmiwlcy1xk6ppd4d539adxxy67d";
        setupHaskellDepends = [ base Cabal directory ];
        libraryHaskellDepends = [ base ];
        description = "Knowledge of GHC's installation directories";
@@ -82689,6 +82955,8 @@ self: {
        pname = "ghc-tcplugins-extra";
        version = "0.3";
        sha256 = "0k1ph8za52mx6f146xhaakn630xrzk42ylchv4b9r04hslhzvb1h";
+       revision = "1";
+       editedCabalFile = "0x2d4bp5lhyfrqjshmgbirdn2ihc057a8a6khqmz91jj9zlhf7vb";
        libraryHaskellDepends = [ base ghc ];
        description = "Utilities for writing GHC type-checker plugins";
        license = stdenv.lib.licenses.bsd2;
@@ -82890,23 +83158,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghci_8_4_3" = callPackage
+  "ghci_8_6_1" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
-     , deepseq, filepath, ghc-boot, ghc-boot-th, template-haskell
-     , transformers, unix
+     , deepseq, filepath, ghc-boot, ghc-boot-th, ghc-heap
+     , template-haskell, transformers, unix
      }:
      mkDerivation {
        pname = "ghci";
-       version = "8.4.3";
-       sha256 = "1jzzig7ikyy14xsanga0zaaqk3xj57pkwx301db89cns8yyq7vxj";
+       version = "8.6.1";
+       sha256 = "0ffv5xmq63y53fhfldx37g6881l07nvlgdsp9kfqz70flh0c1wm8";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq filepath ghc-boot
-         ghc-boot-th template-haskell transformers unix
+         ghc-boot-th ghc-heap template-haskell transformers unix
        ];
        description = "The library supporting GHC's interactive interpreter";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
+       broken = true;
+     }) {ghc-heap = null;};
 
   "ghci-diagrams" = callPackage
     ({ mkDerivation, base, cairo, colour, diagrams, gtk }:
@@ -85985,6 +86254,7 @@ self: {
        libraryHaskellDepends = [ base containers ghc-prim gloss ];
        description = "Data structures and algorithms for working with 2D graphics";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gloss-banana" = callPackage
@@ -86030,6 +86300,7 @@ self: {
        ];
        description = "Examples using the gloss library";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gloss-export" = callPackage
@@ -86060,6 +86331,7 @@ self: {
        libraryHaskellDepends = [ base gloss gloss-juicy ];
        description = "Gloss wrapper that simplifies writing games";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gloss-juicy" = callPackage
@@ -86081,6 +86353,7 @@ self: {
        ];
        description = "Load any image supported by Juicy.Pixels in your gloss application";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gloss-raster" = callPackage
@@ -89775,6 +90048,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "greskell-websocket_0_1_1_1" = callPackage
+    ({ mkDerivation, aeson, async, base, base64-bytestring, bytestring
+     , greskell-core, hashtables, hspec, safe-exceptions, stm, text
+     , unordered-containers, uuid, vector, websockets
+     }:
+     mkDerivation {
+       pname = "greskell-websocket";
+       version = "0.1.1.1";
+       sha256 = "133jwmqm5swm214sav8kigg8lqvk64g1nly5zk1xcij6rajxryci";
+       libraryHaskellDepends = [
+         aeson async base base64-bytestring bytestring greskell-core
+         hashtables safe-exceptions stm text unordered-containers uuid
+         vector websockets
+       ];
+       testHaskellDepends = [
+         aeson base bytestring greskell-core hspec unordered-containers uuid
+         vector
+       ];
+       description = "Haskell client for Gremlin Server using WebSocket serializer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "grid" = callPackage
     ({ mkDerivation, base, cereal, containers, QuickCheck
      , test-framework, test-framework-quickcheck2
@@ -90227,6 +90523,7 @@ self: {
        libraryHaskellDepends = [ base proto-lens proto-lens-runtime ];
        description = "Generated messages and instances for etcd gRPC";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "grpc-etcd-client" = callPackage
@@ -90243,6 +90540,7 @@ self: {
        ];
        description = "gRPC client for etcd";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "gruff" = callPackage
@@ -94998,8 +95296,8 @@ self: {
        pname = "happy";
        version = "1.19.9";
        sha256 = "138xpxdb7x62lpmgmb6b3v3vgdqqvqn4273jaap3mjmc2gla709y";
-       revision = "2";
-       editedCabalFile = "1zxi8zfwiwxidrhr0yj5srpzp32z66sld9xv0k4yz7046rkl3577";
+       revision = "3";
+       editedCabalFile = "0kwlh964nyqvfbm02np8vpc28gbhsby0r65jhz1918rm0wip9izq";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal directory filepath ];
@@ -97007,6 +97305,7 @@ self: {
        ];
        description = "Manage nix overrides for haskell packages";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haskell-packages" = callPackage
@@ -97129,6 +97428,7 @@ self: {
        testPkgconfigDepends = [ libpostal ];
        description = "Haskell binding for the libpostal library";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {libpostal = null;};
 
   "haskell-proxy-list" = callPackage
@@ -98611,6 +98911,7 @@ self: {
        ];
        description = "An adapter for haskoin to network-bitcoin";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haskoin-core" = callPackage
@@ -98762,6 +99063,7 @@ self: {
        ];
        description = "Storage and index for Bitcoin and Bitcoin Cash";
        license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "haskoin-util" = callPackage
@@ -101125,6 +101427,7 @@ self: {
        ];
        description = "Find and annotate ITDs";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "heatitup-complete" = callPackage
@@ -101148,6 +101451,7 @@ self: {
        ];
        description = "Find and annotate ITDs with assembly or read pair joining";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "heatshrink" = callPackage
@@ -101303,6 +101607,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hedgehog_0_6_1" = callPackage
+    ({ mkDerivation, ansi-terminal, async, base, bytestring
+     , concurrent-output, containers, directory, exceptions
+     , lifted-async, mmorph, monad-control, mtl, pretty-show, primitive
+     , random, resourcet, semigroups, stm, template-haskell, text
+     , th-lift, time, transformers, transformers-base, unix
+     , wl-pprint-annotated
+     }:
+     mkDerivation {
+       pname = "hedgehog";
+       version = "0.6.1";
+       sha256 = "0xz10ycdm5vk9nrcym1fi83k19frfwqz18bz8bnpzwvaj0j41yfj";
+       libraryHaskellDepends = [
+         ansi-terminal async base bytestring concurrent-output containers
+         directory exceptions lifted-async mmorph monad-control mtl
+         pretty-show primitive random resourcet semigroups stm
+         template-haskell text th-lift time transformers transformers-base
+         unix wl-pprint-annotated
+       ];
+       testHaskellDepends = [
+         base containers pretty-show semigroups text transformers
+       ];
+       description = "Hedgehog will eat all your bugs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hedgehog-checkers" = callPackage
     ({ mkDerivation, base, containers, either, hedgehog, semigroupoids
      , semigroups
@@ -105751,6 +106082,7 @@ self: {
        benchmarkHaskellDepends = [ base HUnit QuickCheck random ];
        description = "Tests for hmatrix";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hmatrix-vector-sized" = callPackage
@@ -109663,17 +109995,20 @@ self: {
      }) {};
 
   "hsc2hs" = callPackage
-    ({ mkDerivation, base, containers, directory, filepath, process }:
+    ({ mkDerivation, base, containers, directory, filepath, process
+     , tasty, tasty-hspec
+     }:
      mkDerivation {
        pname = "hsc2hs";
-       version = "0.68.3";
-       sha256 = "0q46l4mvclw7lys53zljgrcj142rbwzk5zc2djk2qj956ah1i25h";
+       version = "0.68.4";
+       sha256 = "07qzyr1j76gxrrsds65vivm5cx33paxpifvxdlmkxprrm3s4z7z6";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
          base containers directory filepath process
        ];
+       testHaskellDepends = [ base tasty tasty-hspec ];
        description = "A preprocessor that helps with writing Haskell bindings to C code";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -111228,14 +111563,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec_2_5_6" = callPackage
+  "hspec_2_5_7" = callPackage
     ({ mkDerivation, base, hspec-core, hspec-discover
      , hspec-expectations, QuickCheck
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.5.6";
-       sha256 = "0nfs2a0ymh8nw5v5v16qlbf3np8j1rv7nw3jwa9ib7mlqrmfp9ly";
+       version = "2.5.7";
+       sha256 = "1bbxj0bxxhwkzvxg31a8gjyan1px3kx9md4j0ba177g3mk2fnxxy";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -111343,7 +111678,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-core_2_5_6" = callPackage
+  "hspec-core_2_5_7" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
      , deepseq, directory, filepath, hspec-expectations, hspec-meta
      , HUnit, process, QuickCheck, quickcheck-io, random, setenv
@@ -111351,8 +111686,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.5.6";
-       sha256 = "0pj53qna5x742vnkdlhid7ginqv61awgw4csgb5ay2rd6br8q63g";
+       version = "2.5.7";
+       sha256 = "0rlrc8q92jq3r6qf3bmyy8llz0dv9sdp0n169ni803wzlshaixsn";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -111426,13 +111761,13 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-discover_2_5_6" = callPackage
+  "hspec-discover_2_5_7" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.5.6";
-       sha256 = "0ilaq6l4gikpv6m82dyzfzhdq2d6x3h5jc7zlmw84jx43asqk5lc";
+       version = "2.5.7";
+       sha256 = "042v6wmxw7dwak6wgr02af1majq6qr5migrp360cm3frjfkw22cx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -113343,6 +113678,7 @@ self: {
        doHaddock = false;
        description = "Parser for TOML files";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "htrace" = callPackage
@@ -119952,6 +120288,8 @@ self: {
        pname = "int-cast";
        version = "0.2.0.0";
        sha256 = "0s8rqm5d9f4y2sskajsw8ff7q8xp52vwqa18m6bajldp11m9a1p0";
+       revision = "1";
+       editedCabalFile = "111pac97pcrp01zphf96crdx22fnq7ha2s27av0mqki5421rghpm";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -120802,8 +121140,8 @@ self: {
        pname = "io-streams";
        version = "1.5.0.1";
        sha256 = "12rcdg2d70644bvn838fxcjkssqj8pssnx5y657si5rijcbkgjsx";
-       revision = "1";
-       editedCabalFile = "1d7rpwi10rqcry58d4hc651xvk9xzni6n6k22wm9532l14i3x21c";
+       revision = "2";
+       editedCabalFile = "1mcab95d6hm098myh9gp7sh10srigjphgvm8s9pfs7jg5hzghy14";
        configureFlags = [ "-fNoInteractiveTests" ];
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-builder network primitive
@@ -121269,6 +121607,27 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "irc-client_1_1_0_5" = callPackage
+    ({ mkDerivation, base, bytestring, conduit, connection, containers
+     , contravariant, exceptions, irc-conduit, irc-ctcp, mtl
+     , network-conduit-tls, old-locale, profunctors, stm, stm-chans
+     , text, time, tls, transformers, x509, x509-store, x509-validation
+     }:
+     mkDerivation {
+       pname = "irc-client";
+       version = "1.1.0.5";
+       sha256 = "13qc5acpkgd80nazlpac3q2viqp76fhq6qjk7fp5dp1w6bhj9qi7";
+       libraryHaskellDepends = [
+         base bytestring conduit connection containers contravariant
+         exceptions irc-conduit irc-ctcp mtl network-conduit-tls old-locale
+         profunctors stm stm-chans text time tls transformers x509
+         x509-store x509-validation
+       ];
+       description = "An IRC client library";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "irc-colors" = callPackage
     ({ mkDerivation, base, text }:
      mkDerivation {
@@ -121841,6 +122200,7 @@ self: {
        ];
        description = "Issue Tracker for the CLI";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "itemfield" = callPackage
@@ -122035,10 +122395,12 @@ self: {
     ({ mkDerivation, alg, base, smallcheck, tasty, tasty-smallcheck }:
      mkDerivation {
        pname = "ival";
-       version = "0.1.0.0";
-       sha256 = "16iffzyhqm160sy6qskfxr0wrbjic9bxrm8y9f1ych7gmzp3cdwk";
+       version = "0.2.0.0";
+       sha256 = "1djgkxz6npymkzf5802hdcvr40jlc16pmyxd3qpi98f1c1h4rg5x";
        libraryHaskellDepends = [ alg base ];
-       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       testHaskellDepends = [
+         alg base smallcheck tasty tasty-smallcheck
+       ];
        description = "Intervals";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -123000,6 +123362,7 @@ self: {
        ];
        description = "Unit conversion and manipulation library";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "jmacro" = callPackage
@@ -124130,8 +124493,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-stream";
-       version = "0.4.2.3";
-       sha256 = "0ijic6vfrpykzy7j3li94fjmaj1vclvp0in1ymb5z5whvljlynw7";
+       version = "0.4.2.4";
+       sha256 = "1ryv2738ajagb0wdkac5lka1kzprrf85gqxabafmm3g5szllxjl1";
        libraryHaskellDepends = [
          aeson base bytestring scientific text unordered-containers vector
        ];
@@ -124553,8 +124916,8 @@ self: {
      }:
      mkDerivation {
        pname = "jukebox";
-       version = "0.4.1";
-       sha256 = "1vpd5j71x85ni6wmvmifb5fw8h3y77l67a3dsngsdcs22jilbbgw";
+       version = "0.4.2";
+       sha256 = "0vxy06dan6iq03p8p2frzvyab5zaahh4pd37rzqg2vh71m6rqka7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -126051,8 +126414,8 @@ self: {
        pname = "keycode";
        version = "0.2.2";
        sha256 = "046k8d1h5wwadf5z4pppjkc3g7v2zxlzb06s1xgixc42y5y41yan";
-       revision = "2";
-       editedCabalFile = "0g19sjk2sh1w9ahn93dnvjkim4mqapq0plmdd37179qfgi49qnp8";
+       revision = "3";
+       editedCabalFile = "18dgbpf3xwdm3x9j63vsr5q7l028qvifgc6jmjf1ar4p2wv1fzz0";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -127748,20 +128111,20 @@ self: {
 
   "language-ats" = callPackage
     ({ mkDerivation, alex, ansi-wl-pprint, array, base
-     , composition-prelude, containers, cpphs, criterion, deepseq, happy
-     , hspec, hspec-dirstream, microlens, recursion, system-filepath
+     , composition-prelude, containers, criterion, deepseq, happy, hspec
+     , hspec-dirstream, microlens, recursion, system-filepath
      , transformers
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "1.7.0.3";
-       sha256 = "0lmqic0pwn1f5l5zm3830ipyfjv6cj799kzgx0ia0mdy9wh8pfg9";
+       version = "1.7.0.4";
+       sha256 = "1dqmb2wp47smjg55klwb2si8v14yahkrqzgzw9sssla9kyqna46n";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array base composition-prelude containers deepseq
          microlens recursion transformers
        ];
-       libraryToolDepends = [ alex cpphs happy ];
+       libraryToolDepends = [ alex happy ];
        testHaskellDepends = [
          base hspec hspec-dirstream system-filepath
        ];
@@ -128516,6 +128879,7 @@ self: {
        ];
        description = "Language tools for manipulating OCaml programs in Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) zlib;};
 
   "language-openscad" = callPackage
@@ -130717,8 +131081,8 @@ self: {
      }:
      mkDerivation {
        pname = "lhs2tex";
-       version = "1.21";
-       sha256 = "17yfqvsrd2p39fxfmzfvnliwbmkfx5kxmdk0fw5rx9v17acjmnc7";
+       version = "1.22";
+       sha256 = "1g9966m4pw5rp7a83839k46jmih64rn6w0xnmjlrl0df9ddkpsky";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [
@@ -131107,6 +131471,7 @@ self: {
        ];
        description = "Bindings to the nix package manager";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "libnotify" = callPackage
@@ -131638,6 +132003,7 @@ self: {
        ];
        description = "lifted IO operations from the base library";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lifted-protolude" = callPackage
@@ -135273,6 +135639,7 @@ self: {
        ];
        description = "Functional test framework for LSP servers";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lss" = callPackage
@@ -135897,8 +136264,8 @@ self: {
        pname = "lzma";
        version = "0.0.0.3";
        sha256 = "0i416gqi8j55nd1pqbkxvf3f6hn6fjys6gq98lkkxphva71j30xg";
-       revision = "2";
-       editedCabalFile = "0c6jkr22w797jvmad9vki2mm7cdzxpqqxkpv836fh5m248nnc618";
+       revision = "3";
+       editedCabalFile = "1sify6gnsalyp6dakfzi0mdy5jcz2kcp9jsdsgkmxd40nfzgd44m";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ lzma ];
        testHaskellDepends = [
@@ -135971,8 +136338,8 @@ self: {
        pname = "lzma-streams";
        version = "0.1.0.0";
        sha256 = "1w8s0xvcz8c3s171gizjkc9iadccjznw7rnfq5wpydkc7x4hxjdn";
-       revision = "2";
-       editedCabalFile = "068k1y57r8vsvm36c682jylv27nsdw646fsx1bkjxccgq7h6mbbb";
+       revision = "3";
+       editedCabalFile = "1zx9y1pls8mnad78ancf52kffyw6ixp9x9bbvp7qfmmi8dc8s90r";
        libraryHaskellDepends = [ base bytestring io-streams lzma ];
        testHaskellDepends = [
          base bytestring HUnit io-streams QuickCheck test-framework
@@ -140023,13 +140390,14 @@ self: {
        pname = "miconix-test";
        version = "0.2";
        sha256 = "02p2m11chfva4i6293if0yf8rvdbxjf8wz38ckmksiicmzhss10y";
-       revision = "2";
-       editedCabalFile = "061f5whj0f9bmqwgnp14zi96ja5c5m28hr56qlcf07pv6rsk5fz6";
+       revision = "3";
+       editedCabalFile = "1rkx448wrvq08qi84g5vqxk3fc27xb4jgwf9vi6hqj5a9gwnjfcg";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base ];
-       description = "a";
+       description = "spam";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "micro-recursion-schemes" = callPackage
@@ -140056,6 +140424,8 @@ self: {
        pname = "microaeson";
        version = "0.1.0.0";
        sha256 = "1hbpyz6p9snnd85h2y0pdqp20svxrggavbv0q8z33sc5i4p8b7iz";
+       revision = "1";
+       editedCabalFile = "0pxgpmr0xv355rnpr8m7l07swbzsjbfiba3dxyz53bdjcc8ya9dq";
        libraryHaskellDepends = [
          array base bytestring containers deepseq text
        ];
@@ -141320,6 +141690,7 @@ self: {
        testToolDepends = [ hspec-discover markdown-unlit ];
        description = "Mixpanel client";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mkbndl" = callPackage
@@ -141448,6 +141819,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion text weigh ];
        description = "Strict markdown processor for writers";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mmark_0_0_6_0" = callPackage
@@ -141499,6 +141871,7 @@ self: {
        ];
        description = "Command line interface to MMark markdown processor";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mmark-cli_0_0_4_0" = callPackage
@@ -141541,6 +141914,7 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Commonly useful extensions for the MMark markdown processor";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mmorph" = callPackage
@@ -147962,8 +148336,8 @@ self: {
        pname = "netrc";
        version = "0.2.0.0";
        sha256 = "11iax3ick0im397jyyjkny7lax9bgrlgk90a25dp2jsglkphfpls";
-       revision = "4";
-       editedCabalFile = "0g1c3nbalpb7qh6kddir5b84wwg57j2852al2fg5xza3akdd8jsr";
+       revision = "5";
+       editedCabalFile = "0v383hy7iw44xxnpdp2fla2dc8ivrhwgh2m303ps4z9fsw25cyka";
        libraryHaskellDepends = [ base bytestring deepseq parsec ];
        testHaskellDepends = [
          base bytestring tasty tasty-golden tasty-quickcheck
@@ -152511,6 +152885,7 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "An SQL-generating DSL targeting PostgreSQL";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "opaleye-classy" = callPackage
@@ -153351,6 +153726,7 @@ self: {
        ];
        description = "An OpenTok SDK for Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "opentype" = callPackage
@@ -153536,6 +153912,7 @@ self: {
        testHaskellDepends = [ attoparsec-data rerebase ];
        description = "Simple command line interface arguments parser";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "optimal-blocks" = callPackage
@@ -154455,6 +154832,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "packcheck_0_4_0" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "packcheck";
+       version = "0.4.0";
+       sha256 = "1dlvrad746ns76ah07wr9jgw454srag1wjrfp39pld26i70isif6";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base ];
+       benchmarkHaskellDepends = [ base ];
+       description = "Universal build and CI testing for Haskell packages";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "packdeps" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
      , filepath, optparse-applicative, process, semigroups, split, tar
@@ -155219,8 +155610,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-placetable";
-       version = "0.5";
-       sha256 = "0kjlx2krgwf32y30cca09xnf1h3c91s0pzsv5xf7l8zw85jikxah";
+       version = "0.5.1";
+       sha256 = "0zfqmsq86jvwm4kpjb02whcdxk5xpgaj1sbdh471kr2vz8q4p112";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -155381,15 +155772,16 @@ self: {
      }) {inherit (pkgs.gnome2) pango;};
 
   "pangraph" = callPackage
-    ({ mkDerivation, algebraic-graphs, base, bytestring, containers
-     , hexml, HUnit
+    ({ mkDerivation, algebraic-graphs, attoparsec, base, bytestring
+     , containers, fgl, hexml, html-entities, HUnit, text
      }:
      mkDerivation {
        pname = "pangraph";
-       version = "0.1.2";
-       sha256 = "03iqf77j7a382m7zwkgh872frbii98l04agh6sr4ic96554b0gzl";
+       version = "0.2.0";
+       sha256 = "1zm19gbidi6a27vi7x66dlw3q0syy5vwdykck716kdfka88vr9k5";
        libraryHaskellDepends = [
-         algebraic-graphs base bytestring containers hexml
+         algebraic-graphs attoparsec base bytestring containers fgl hexml
+         html-entities text
        ];
        testHaskellDepends = [ base bytestring containers HUnit ];
        description = "A set of parsers for graph languages and conversions to graph libaries";
@@ -157174,6 +157566,8 @@ self: {
        pname = "paths";
        version = "0.2.0.0";
        sha256 = "18pzjlnmx7w79riig7qzyhw13jla92lals9lwayl23qr02ndna4v";
+       revision = "1";
+       editedCabalFile = "1k477vwhahdgkf3sm2yjl1638qwq6ddm2x10vdf3cq48js2pkrw5";
        libraryHaskellDepends = [
          base bytestring deepseq directory filepath template-haskell text
          time
@@ -158456,6 +158850,7 @@ self: {
        ];
        description = "Permutations of finite sets";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "permute" = callPackage
@@ -159991,8 +160386,8 @@ self: {
      }:
      mkDerivation {
        pname = "pier";
-       version = "0.2.0.1";
-       sha256 = "0j26bwm58lh0dddn0595hr6pq9f8plkvg670k3g0va1aqbd2i48k";
+       version = "0.3.0.0";
+       sha256 = "1rv5k8apxshh8kbbbjzcw23bfx819634ryz83jp2iqhixlgcqz69";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -160013,8 +160408,8 @@ self: {
      }:
      mkDerivation {
        pname = "pier-core";
-       version = "0.2.0.1";
-       sha256 = "1kd6z5vw2v61kpgpf95a8hs4m97lnydsl2k0xqxq5bg59q281b64";
+       version = "0.3.0.0";
+       sha256 = "0sxdswnkxhdcfcg4xq11lvgsip05nr4qd361qdrw2nxafq9q3dnj";
        libraryHaskellDepends = [
          base base64-bytestring binary bytestring Cabal containers
          cryptohash-sha256 directory hashable http-client http-client-tls
@@ -161405,6 +161800,7 @@ self: {
        ];
        description = "Haskell game engine like fantasy console";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "pkcs1" = callPackage
@@ -161629,6 +162025,7 @@ self: {
        ];
        description = "Planet Mitchell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "plankton" = callPackage
@@ -163732,8 +164129,8 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-simple-opts";
-       version = "0.3.0.0";
-       sha256 = "1lr9jj2dv01njjv2iqvirim1gv8bgb5pzaipni04f1dr5bhgkfhd";
+       version = "0.3.0.1";
+       sha256 = "19jhrz2lghiycb81dzzz5g2kwzaahn27q7diw6nn9qmcpwgw3rly";
        libraryHaskellDepends = [
          base bytestring data-default either generic-deriving
          optparse-applicative optparse-generic postgresql-simple split
@@ -165323,6 +165720,7 @@ self: {
        ];
        description = "prim typeclass instances";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "prim-ref" = callPackage
@@ -167245,6 +167643,7 @@ self: {
        ];
        doHaddock = false;
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "proto-lens-setup" = callPackage
@@ -167261,6 +167660,7 @@ self: {
        ];
        description = "Cabal support for codegen with proto-lens";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "protobuf" = callPackage
@@ -168324,6 +168724,7 @@ self: {
        ];
        description = "Isomorphic trivial data type definitions over JSON";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "purescript-tsd-gen" = callPackage
@@ -169942,6 +170343,7 @@ self: {
        libraryHaskellDepends = [ base QuickCheck template-haskell ];
        description = "Get counterexamples from QuickCheck as Haskell values";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "quicklz" = callPackage
@@ -170492,6 +170894,7 @@ self: {
        ];
        description = "Radix tree data structive over short byte-strings";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "radixtree" = callPackage
@@ -181641,6 +182044,7 @@ self: {
        executableHaskellDepends = [ base bytestring ];
        description = "Fast CSV lexing on ByteString";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "scyther-proof" = callPackage
@@ -183600,6 +184004,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-auth-server_0_4_0_1" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, blaze-builder
+     , bytestring, bytestring-conversion, case-insensitive, cookie
+     , crypto-api, data-default-class, entropy, hspec, hspec-discover
+     , http-api-data, http-client, http-types, jose, lens, lens-aeson
+     , markdown-unlit, monad-time, mtl, QuickCheck, servant
+     , servant-auth, servant-server, tagged, text, time, transformers
+     , unordered-containers, wai, warp, wreq
+     }:
+     mkDerivation {
+       pname = "servant-auth-server";
+       version = "0.4.0.1";
+       sha256 = "196dcnh1ycb23x6wb5m1p3iy8bws2grlx5i9mnnsav9n95yf15n9";
+       libraryHaskellDepends = [
+         aeson base base64-bytestring blaze-builder bytestring
+         bytestring-conversion case-insensitive cookie crypto-api
+         data-default-class entropy http-api-data http-types jose lens
+         monad-time mtl servant servant-auth servant-server tagged text time
+         unordered-containers wai
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive hspec http-client http-types
+         jose lens lens-aeson markdown-unlit mtl QuickCheck servant-auth
+         servant-server time transformers wai warp wreq
+       ];
+       testToolDepends = [ hspec-discover markdown-unlit ];
+       description = "servant-server/servant-auth compatibility";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-auth-swagger" = callPackage
     ({ mkDerivation, base, hspec, hspec-discover, lens, QuickCheck
      , servant, servant-auth, servant-swagger, swagger2, text
@@ -184263,6 +184698,7 @@ self: {
        testHaskellDepends = [ base ];
        description = "Servant authentication with HMAC";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-iCalendar" = callPackage
@@ -188330,8 +188766,8 @@ self: {
      }:
      mkDerivation {
        pname = "simple-sql-parser";
-       version = "0.4.3";
-       sha256 = "125k5vz05spmyd5gws1sfrqamp4pnbpyim21mvz1vx8avj548xi8";
+       version = "0.4.4";
+       sha256 = "1j1p94mfb7kzrayi39xcwmagxcf5j9lvxi7niqxc5jr70958csnl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl parsec pretty ];
@@ -189266,6 +189702,7 @@ self: {
        ];
        description = "A very quick-and-dirty WebSocket server";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "skip-list" = callPackage
@@ -192131,6 +192568,7 @@ self: {
        librarySystemDepends = [ softfloat ];
        description = "Haskell bindings for SoftFloat";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {softfloat = null;};
 
   "solga" = callPackage
@@ -194779,6 +195217,7 @@ self: {
        testHaskellDepends = [ base hspec ];
        description = "Convert stack.yaml files into Nix build instructions.";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "stackage" = callPackage
@@ -196004,12 +196443,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "stm_2_4_5_1" = callPackage
+  "stm_2_5_0_0" = callPackage
     ({ mkDerivation, array, base }:
      mkDerivation {
        pname = "stm";
-       version = "2.4.5.1";
-       sha256 = "1x53lg07j6d42vnmmk2f9sfqx2v4hxjk3hm11fccjdi70s0c5w3c";
+       version = "2.5.0.0";
+       sha256 = "1illcj8zgzmpl91hzgk0j74ha436a379gw13siq4gifbcrf6iqsr";
        libraryHaskellDepends = [ array base ];
        description = "Software Transactional Memory";
        license = stdenv.lib.licenses.bsd3;
@@ -196290,6 +196729,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "stm-split_0_0_2_1" = callPackage
+    ({ mkDerivation, base, stm }:
+     mkDerivation {
+       pname = "stm-split";
+       version = "0.0.2.1";
+       sha256 = "06c41p01x62p79bzwryjxr34l7cj65gl227fwwsvd9l6ihk8grp8";
+       libraryHaskellDepends = [ base stm ];
+       description = "TMVars, TVars and TChans with distinguished input and output side";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "stm-stats" = callPackage
     ({ mkDerivation, base, containers, stm, template-haskell, time }:
      mkDerivation {
@@ -203173,12 +203624,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "template-haskell_2_13_0_0" = callPackage
+  "template-haskell_2_14_0_0" = callPackage
     ({ mkDerivation, base, ghc-boot-th, pretty }:
      mkDerivation {
        pname = "template-haskell";
-       version = "2.13.0.0";
-       sha256 = "0j61d0xnlsywgn33k72a6dmnp9i93zjn0gba1fhxs9qwdb1xcfk3";
+       version = "2.14.0.0";
+       sha256 = "1y8l2g95mhd2j09bq05q2rj6rn2ni86yhf4kgha3y5qig7j8lyy9";
        libraryHaskellDepends = [ base ghc-boot-th pretty ];
        description = "Support library for Template Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -204664,7 +205115,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "text_1_2_3_0" = callPackage
+  "text_1_2_3_1" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, deepseq
      , directory, ghc-prim, HUnit, integer-gmp, QuickCheck
      , quickcheck-unicode, random, test-framework, test-framework-hunit
@@ -204672,8 +205123,8 @@ self: {
      }:
      mkDerivation {
        pname = "text";
-       version = "1.2.3.0";
-       sha256 = "06iir7q99rnffzxi8gagn8w1k9m49368sbidgz634fv1gxib3q10";
+       version = "1.2.3.1";
+       sha256 = "19j725g8xma1811avl3nz2vndwynsmpx3sqf6bd7iwh1bm6n4q43";
        libraryHaskellDepends = [
          array base binary bytestring deepseq ghc-prim integer-gmp
        ];
@@ -204961,6 +205412,7 @@ self: {
        ];
        description = "ICU transliteration";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) icu;};
 
   "text-json-qq" = callPackage
@@ -205106,8 +205558,8 @@ self: {
        pname = "text-metrics";
        version = "0.3.0";
        sha256 = "18mzxwkdvjp31r720ai9bnxr638qq8x3a2v408bz0d8f0rsayx1q";
-       revision = "3";
-       editedCabalFile = "0wgkpc8zsfgc8rwbzylpf7r2nnrwhw6rani2chzc9r7lfygpqmn1";
+       revision = "4";
+       editedCabalFile = "017drxq9x56b345d8w5m8xdsi1zzs0z16pbdx8j35cd1lsnh3kf1";
        libraryHaskellDepends = [ base containers text vector ];
        testHaskellDepends = [ base hspec QuickCheck text ];
        benchmarkHaskellDepends = [ base criterion deepseq text weigh ];
@@ -205848,6 +206300,8 @@ self: {
        pname = "th-expand-syns";
        version = "0.4.4.0";
        sha256 = "01prlvh3py5hq5ccjidfyp9ixq2zd88dkbsidyjrpkja6v8m43yc";
+       revision = "1";
+       editedCabalFile = "1zbdg3hrqv7rzlsrw4a2vjr3g4nzny32wvjcpxamlvx77b1jvsw9";
        libraryHaskellDepends = [ base containers syb template-haskell ];
        testHaskellDepends = [ base template-haskell ];
        description = "Expands type synonyms in Template Haskell ASTs";
@@ -208314,12 +208768,13 @@ self: {
 
   "tldr" = callPackage
     ({ mkDerivation, ansi-terminal, base, bytestring, cmark, directory
-     , filepath, optparse-applicative, semigroups, text, typed-process
+     , filepath, optparse-applicative, semigroups, tasty, tasty-golden
+     , text, typed-process
      }:
      mkDerivation {
        pname = "tldr";
-       version = "0.3.0";
-       sha256 = "1wnc1l1c9d56y64d5hlkj2z1m4vl87shfya7ix49h22l77df0jq7";
+       version = "0.4.0";
+       sha256 = "017x3lqphbyayl9gx9ykn62i73xzb180df0a8r6ic6chk6yhivfg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -208329,7 +208784,7 @@ self: {
          base directory filepath optparse-applicative semigroups
          typed-process
        ];
-       testHaskellDepends = [ base ];
+       testHaskellDepends = [ base tasty tasty-golden ];
        description = "Haskell tldr client";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -208716,6 +209171,7 @@ self: {
        executableHaskellDepends = [ base ];
        description = "TokTok C code style checker";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "toktok" = callPackage
@@ -208870,6 +209326,7 @@ self: {
        ];
        description = "Command-line tool to check syntax of TOML files";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "toolshed" = callPackage
@@ -209377,6 +209834,7 @@ self: {
          base hedgehog mmorph postgresql-simple resource-pool text
        ];
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tracy" = callPackage
@@ -211127,6 +211585,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "turtle_1_5_11" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, async, base, bytestring, clock
+     , containers, criterion, directory, doctest, exceptions, foldl
+     , hostname, managed, optional-args, optparse-applicative, process
+     , semigroups, stm, system-fileio, system-filepath, temporary, text
+     , time, transformers, unix, unix-compat
+     }:
+     mkDerivation {
+       pname = "turtle";
+       version = "1.5.11";
+       sha256 = "19jn9k70qwhdlzkm8kq1jq37i8ck3q4fnkzn1x75prwhs60rgr0f";
+       libraryHaskellDepends = [
+         ansi-wl-pprint async base bytestring clock containers directory
+         exceptions foldl hostname managed optional-args
+         optparse-applicative process semigroups stm system-fileio
+         system-filepath temporary text time transformers unix unix-compat
+       ];
+       testHaskellDepends = [ base doctest system-filepath temporary ];
+       benchmarkHaskellDepends = [ base criterion text ];
+       description = "Shell programming, Haskell-style";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "turtle-options" = callPackage
     ({ mkDerivation, base, HUnit, optional-args, parsec, text, turtle
      }:
@@ -211185,6 +211667,7 @@ self: {
        ];
        description = "An equational theorem prover";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "twee-lib" = callPackage
@@ -211211,8 +211694,8 @@ self: {
      }:
      mkDerivation {
        pname = "tweet-hs";
-       version = "1.0.1.42";
-       sha256 = "1jf3w8cw9nmg6b2wxs5agxxi1igfsykj857cjkqjsfr04z060v37";
+       version = "1.0.1.43";
+       sha256 = "10bxkllxiwm1xbvpz4wh1gd24qkz8y0b7z4ciwqk13jz5ha966x0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -213222,8 +213705,8 @@ self: {
        pname = "uhttpc";
        version = "0.1.1.0";
        sha256 = "1knf8r8zq8nnidmbj1blazjxkpngczs55jjx0phnnxlc026ppynb";
-       revision = "3";
-       editedCabalFile = "1s35m2mrcaamj0293yb78ya185fzm71zdx0jq62im7rc5fdhfiry";
+       revision = "4";
+       editedCabalFile = "0g4rcm7kbanayv18bad7pakrnghqg2qpxq4aib1n4d8h7ximgly2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -213538,6 +214021,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "unescaping-print" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "unescaping-print";
+       version = "0.1";
+       sha256 = "0a1ryvnpgsk668wagwwapksi7i9kbhhjfpqlvmg2z9kv1anr6mp5";
+       libraryHaskellDepends = [ base ];
+       description = "Tiny package providing unescaping versions of show and print";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "unexceptionalio" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -213569,8 +214063,8 @@ self: {
        pname = "unfoldable";
        version = "0.9.6";
        sha256 = "18gaay37mjgyd5rfpfs84p4q7vqdnv4lcjabaprgm315pblym46d";
-       revision = "1";
-       editedCabalFile = "1lgyfmv339zfkrf6s4bw1ksk0757vcc1vx07yc4l33idmpsgz77c";
+       revision = "2";
+       editedCabalFile = "08rx8ci2jpa77q1dl4lghlyhd27if990ic9kaz30hczsazlzi44b";
        libraryHaskellDepends = [
          base containers ghc-prim one-liner QuickCheck random transformers
        ];
@@ -214455,8 +214949,8 @@ self: {
        pname = "unix";
        version = "2.7.2.2";
        sha256 = "1b6ygkasn5bvmdci8g3zjkahl34kfqhf5jrayibvnrcdnaqlxpcq";
-       revision = "1";
-       editedCabalFile = "0cag1vm2pmzgy0v1j27lhp37iipck06n6gjlphpl26p5xw3gwd31";
+       revision = "2";
+       editedCabalFile = "0d6dv944rp8g69p336b1ik9xl1f182jd8lz82ykhfjhasw8d1waf";
        libraryHaskellDepends = [ base bytestring time ];
        description = "POSIX functionality";
        license = stdenv.lib.licenses.bsd3;
@@ -214635,6 +215129,8 @@ self: {
        pname = "unliftio";
        version = "0.2.8.0";
        sha256 = "04i03j1ffa3babh0i79zzvxk7xnm4v8ci0mpfzc4dm7m65cwk1h5";
+       revision = "1";
+       editedCabalFile = "1l9hncv1pavdqyy1zmjfypqd23m243x5fiid7vh1rki71fdlh9z0";
        libraryHaskellDepends = [
          async base deepseq directory filepath process stm time transformers
          unix unliftio-core
@@ -214647,12 +215143,37 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "unliftio_0_2_8_1" = callPackage
+    ({ mkDerivation, async, base, deepseq, directory, filepath, hspec
+     , process, stm, time, transformers, unix, unliftio-core
+     }:
+     mkDerivation {
+       pname = "unliftio";
+       version = "0.2.8.1";
+       sha256 = "18v8rzm2nxpck5xvg8qixkarhliy16yswgvj6vbjzq8bn4n6nydz";
+       revision = "1";
+       editedCabalFile = "1zx2h1mnjcjszjdchg17gqrnj3d56x46947jm92snmdjw8x231wg";
+       libraryHaskellDepends = [
+         async base deepseq directory filepath process stm time transformers
+         unix unliftio-core
+       ];
+       testHaskellDepends = [
+         async base deepseq directory filepath hspec process stm time
+         transformers unix unliftio-core
+       ];
+       description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unliftio-core" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "unliftio-core";
        version = "0.1.2.0";
        sha256 = "0y3siyx3drkw7igs380a87h8qfbbgcyxxlcnshp698hcc4yqphr4";
+       revision = "1";
+       editedCabalFile = "0s6xfg9d0i3sfil5gjbamlq017wdxa69csk73bcqjkficg43vm29";
        libraryHaskellDepends = [ base transformers ];
        description = "The MonadUnliftIO typeclass for unlifting monads to IO";
        license = stdenv.lib.licenses.mit;
@@ -215899,6 +216420,7 @@ self: {
        libraryHaskellDepends = [ base basic control lifted-base-tf util ];
        description = "Exceptional utilities";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "util-plus" = callPackage
@@ -215926,6 +216448,7 @@ self: {
        libraryHaskellDepends = [ base primitive ];
        description = "Primitive memory-related utilities";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "util-primitive-control" = callPackage
@@ -215941,6 +216464,7 @@ self: {
        doHaddock = false;
        description = "Utilities for stateful primitive types and types based on them";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "util-universe" = callPackage
@@ -216971,6 +217495,7 @@ self: {
        ];
        description = "A monad transformer for vault-tool";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "vaultaire-common" = callPackage
@@ -219909,6 +220434,7 @@ self: {
        testHaskellDepends = [ base doctest prometheus-client ];
        description = "WAI middlware for exposing http://prometheus.io metrics.";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wai-middleware-rollbar" = callPackage
@@ -222388,6 +222914,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "wild-bind_0_1_2_2" = callPackage
+    ({ mkDerivation, base, containers, hspec, microlens, QuickCheck
+     , semigroups, stm, text, transformers
+     }:
+     mkDerivation {
+       pname = "wild-bind";
+       version = "0.1.2.2";
+       sha256 = "0s1hwgc1fzr2mgls6na6xsc51iw8xp11ydwgwcaqq527gcij101p";
+       libraryHaskellDepends = [
+         base containers semigroups text transformers
+       ];
+       testHaskellDepends = [
+         base hspec microlens QuickCheck stm transformers
+       ];
+       description = "Dynamic key binding framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wild-bind-indicator" = callPackage
     ({ mkDerivation, base, containers, gtk, text, transformers
      , wild-bind
@@ -222439,6 +222984,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "wild-bind-x11_0_2_0_5" = callPackage
+    ({ mkDerivation, async, base, containers, fold-debounce, hspec, mtl
+     , semigroups, stm, text, time, transformers, wild-bind, X11
+     }:
+     mkDerivation {
+       pname = "wild-bind-x11";
+       version = "0.2.0.5";
+       sha256 = "0r9nlv96f1aavigd70r33q11a125kn3zah17z5vvsjlw55br0wxy";
+       libraryHaskellDepends = [
+         base containers fold-debounce mtl semigroups stm text transformers
+         wild-bind X11
+       ];
+       testHaskellDepends = [
+         async base hspec text time transformers wild-bind X11
+       ];
+       description = "X11-specific implementation for WildBind";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wilton-ffi" = callPackage
     ({ mkDerivation, aeson, base, bytestring, utf8-string }:
      mkDerivation {
@@ -222470,8 +223035,8 @@ self: {
        pname = "windns";
        version = "0.1.0.0";
        sha256 = "1hphwmwc1182p5aqjswcgqjbilm91rv5svjqhd93cqq599gg8q0c";
-       revision = "2";
-       editedCabalFile = "19n1nb65mgz9rdp37z7sdmjxwcl2wnlrflqcwbhr99ly2anx0sy7";
+       revision = "3";
+       editedCabalFile = "0j6gqyvhv7hxm5n249nrv0d9r41qb0yc4qdrzkjgs6lchndi6mrp";
        libraryHaskellDepends = [ base bytestring deepseq ];
        librarySystemDepends = [ dnsapi ];
        description = "Domain Name Service (DNS) lookup via the Windows dnsapi standard library";
@@ -222796,6 +223361,7 @@ self: {
        ];
        description = "A parser of WKT, WKB and eWKB";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wl-pprint" = callPackage
@@ -223875,6 +224441,7 @@ self: {
        testHaskellDepends = [ base bytestring envy hspec skews text ];
        description = "A-little-higher-level WebSocket client";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wtk" = callPackage
@@ -230756,6 +231323,7 @@ self: {
        ];
        description = "More constrained extensions to zeromq4-haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "zeroth" = callPackage
@@ -230962,6 +231530,35 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "zip_1_2_0" = callPackage
+    ({ mkDerivation, base, bytestring, bzlib-conduit, case-insensitive
+     , cereal, conduit, conduit-extra, containers, digest, directory
+     , dlist, exceptions, filepath, hspec, monad-control, mtl
+     , QuickCheck, resourcet, temporary, text, time, transformers
+     , transformers-base
+     }:
+     mkDerivation {
+       pname = "zip";
+       version = "1.2.0";
+       sha256 = "1jbxnbiizdklv0pw8f22h38xbmk6d4wggy27w8injdsfi18f27dn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring bzlib-conduit case-insensitive cereal conduit
+         conduit-extra containers digest directory dlist exceptions filepath
+         monad-control mtl resourcet text time transformers
+         transformers-base
+       ];
+       executableHaskellDepends = [ base filepath ];
+       testHaskellDepends = [
+         base bytestring conduit containers directory dlist exceptions
+         filepath hspec QuickCheck temporary text time transformers
+       ];
+       description = "Operations on zip archives";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "zip-archive" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, Cabal, containers
      , digest, directory, filepath, HUnit, mtl, pretty, process
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix
index 5af569a5e7c8..67c38a354b43 100644
--- a/pkgs/development/interpreters/php/default.nix
+++ b/pkgs/development/interpreters/php/default.nix
@@ -133,6 +133,7 @@ let
       ++ optionals mysqliSupport [
         "--with-mysqli=${if mysqlndSupport then "mysqlnd" else "${mysql.connector-c}/bin/mysql_config"}"
       ]
+      ++ optional ( pdo_mysqlSupport || mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock"
       ++ optional bcmathSupport "--enable-bcmath"
       # FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
       ++ optionals gdSupport [
diff --git a/pkgs/development/interpreters/wasm-gc/default.nix b/pkgs/development/interpreters/wasm-gc/default.nix
new file mode 100644
index 000000000000..cf0fad18d1ca
--- /dev/null
+++ b/pkgs/development/interpreters/wasm-gc/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  name = "wasm-gc-${version}";
+  version = "0.1.6";
+
+  src = fetchFromGitHub {
+    owner = "alexcrichton";
+    repo = "wasm-gc";
+    rev = version;
+    sha256 = "1lc30xxqp3vv1r269xzznh2lf2dzdq89bi5f1vmqjw4yc3xmawm7";
+  };
+
+  cargoPatches = [ ./fix-build.patch ]; # Cargo.lock is not up-to-date
+
+  cargoSha256 = "1jvk9n324p3x3j6q6x0p5diig3b5c683k74cfflff25i7gsmmvc7";
+
+  meta = with stdenv.lib; {
+    description = "gc-sections for wasm";
+    homepage = "https://github.com/alexcrichton/wasm-gc";
+    maintainers = with maintainers; [ ekleog ];
+    platforms = platforms.all;
+    license = with licenses; [ mit asl20 ];
+  };
+}
diff --git a/pkgs/development/interpreters/wasm-gc/fix-build.patch b/pkgs/development/interpreters/wasm-gc/fix-build.patch
new file mode 100644
index 000000000000..3144dd898374
--- /dev/null
+++ b/pkgs/development/interpreters/wasm-gc/fix-build.patch
@@ -0,0 +1,34 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 923ed91..71f17c8 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -212,16 +212,16 @@ dependencies = [
+ 
+ [[package]]
+ name = "wasm-gc"
+-version = "0.1.1"
++version = "0.1.6"
+ dependencies = [
+  "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
+  "getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-gc-api 0.1.5",
++ "wasm-gc-api 0.1.6",
+ ]
+ 
+ [[package]]
+ name = "wasm-gc-api"
+-version = "0.1.5"
++version = "0.1.6"
+ dependencies = [
+  "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "parity-wasm 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -234,7 +234,7 @@ version = "0.1.0"
+ dependencies = [
+  "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+  "wasm-bindgen 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-gc-api 0.1.5",
++ "wasm-gc-api 0.1.6",
+ ]
+ 
+ [[package]]
+
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index 32899b748113..4131e5f7a27c 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -47,10 +47,24 @@ let
   # To avoid library name collisions
   layout = if taggedLayout then "tagged" else "system";
 
+  # Versions of b2 before 1.65 have job limits; specifically:
+  #   - Versions before 1.58 support up to 64 jobs[0]
+  #   - Versions before 1.65 support up to 256 jobs[1]
+  #
+  # [0]: https://github.com/boostorg/build/commit/0ef40cb86728f1cd804830fef89a6d39153ff632
+  # [1]: https://github.com/boostorg/build/commit/316e26ca718afc65d6170029284521392524e4f8
+  jobs =
+    if versionOlder version "1.58" then
+      "$(($NIX_BUILD_CORES<=64 ? $NIX_BUILD_CORES : 64))"
+    else if versionOlder version "1.65" then
+      "$(($NIX_BUILD_CORES<=256 ? $NIX_BUILD_CORES : 256))"
+    else
+      "$NIX_BUILD_CORES";
+
   b2Args = concatStringsSep " " ([
     "--includedir=$dev/include"
     "--libdir=$out/lib"
-    "-j$NIX_BUILD_CORES"
+    "-j${jobs}"
     "--layout=${layout}"
     "variant=${variant}"
     "threading=${threading}"
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index c4f41663c848..1ef2c6914ae4 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "18.08";
+  version = "18.08.1";
   name = "libmediainfo-${version}";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    sha256 = "0h9fkfkil9y5xjxa7q4gxxihkn9kv9hak6ral2isvks5x3sy0ca8";
+    sha256 = "1h6brg98i39xprcl54gvs1scmv8d6f3iw5h2diwz5bbz4lspy8vs";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/development/libraries/libpfm/default.nix b/pkgs/development/libraries/libpfm/default.nix
index 25e55e45d1e2..ffd195b6462d 100644
--- a/pkgs/development/libraries/libpfm/default.nix
+++ b/pkgs/development/libraries/libpfm/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
 
   installFlags = "DESTDIR=\${out} PREFIX= LDCONFIG=true";
 
+  NIX_CFLAGS_COMPILE = [ "-Wno-error" ];
+
   meta = with stdenv.lib; {
     description = "Helper library to program the performance monitoring events";
     longDescription = ''
diff --git a/pkgs/development/libraries/libtins/default.nix b/pkgs/development/libraries/libtins/default.nix
index efd63148fb10..1af7548ac962 100644
--- a/pkgs/development/libraries/libtins/default.nix
+++ b/pkgs/development/libraries/libtins/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libtins-${version}";
-  version = "3.5";
+  version = "4.0";
   
   src = fetchFromGitHub {
     owner = "mfontanini";
     repo = "libtins";
     rev = "v${version}";
-    sha256 = "00d1fxyg8q6djljm79ms69gcrsqxxksny3b16v99bzf3aivfss5x";
+    sha256 = "13sdqad976j7gq2k1il6g51yxwr8rlqdkzf1kj9mzhihjq8541qs";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/mono-addins/default.nix b/pkgs/development/libraries/mono-addins/default.nix
index 780f68e7d485..345c6e51f0b7 100644
--- a/pkgs/development/libraries/mono-addins/default.nix
+++ b/pkgs/development/libraries/mono-addins/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   name = "mono-addins-${version}";
-  version = "1.2";
+  version = "1.3.3";
 
   src = fetchFromGitHub {
     owner = "mono";
     repo = "mono-addins";
 
     rev = "mono-addins-${version}";
-    sha256 = "1hnn0a2qsjcjprsxas424bzvhsdwy0yc2jj5xbp698c0m9kfk24y";
+    sha256 = "018g3bd8afjc39h22h2j5r6ldsdn08ynx7wg889gdvnxg3hrxgl2";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/pkgs/development/libraries/physics/lhapdf/default.nix b/pkgs/development/libraries/physics/lhapdf/default.nix
index 7f89c92772c3..11a2640e97c8 100644
--- a/pkgs/development/libraries/physics/lhapdf/default.nix
+++ b/pkgs/development/libraries/physics/lhapdf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2 }:
+{ stdenv, fetchurl, python2, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "lhapdf-${version}";
@@ -9,6 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0bi02xcmq5as0wf0jn6i3hx0qy0hj61m02sbrbzd1gwjhpccwmvd";
   };
 
+  nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ python2 ];
 
   enableParallelBuilding = true;
@@ -17,6 +18,10 @@ stdenv.mkDerivation rec {
     pdf_sets = import ./pdf_sets.nix { inherit stdenv fetchurl; };
   };
 
+  postInstall = ''
+    wrapProgram $out/bin/lhapdf --prefix PYTHONPATH : "$(toPythonPath "$out")"
+  '';
+
   meta = {
     description = "A general purpose interpolator, used for evaluating Parton Distribution Functions from discretised data files";
     license     = stdenv.lib.licenses.gpl2;
diff --git a/pkgs/development/libraries/protobuf/3.6.nix b/pkgs/development/libraries/protobuf/3.6.nix
new file mode 100644
index 000000000000..0009209d9cef
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/3.6.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... }:
+
+callPackage ./generic-v3.nix {
+  version = "3.6.1";
+  sha256 = "1bg40miylzpy2wgbd7l7zjgmk43l12q38fq0zkn0vzy1lsj457sq";
+}
diff --git a/pkgs/development/libraries/protobuf/generic-v3.nix b/pkgs/development/libraries/protobuf/generic-v3.nix
index 5f0006c05894..79e4c387cdf5 100644
--- a/pkgs/development/libraries/protobuf/generic-v3.nix
+++ b/pkgs/development/libraries/protobuf/generic-v3.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   # make sure you test also -A pythonPackages.protobuf
   src = fetchFromGitHub {
-    owner = "google";
+    owner = "protocolbuffers";
     repo = "protobuf";
     rev = "v${version}";
     inherit sha256;
diff --git a/pkgs/development/ocaml-modules/doc-ock-html/default.nix b/pkgs/development/ocaml-modules/doc-ock-html/default.nix
new file mode 100644
index 000000000000..cb2756b0977c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/doc-ock-html/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, doc-ock, tyxml, xmlm }:
+
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-doc-ock-html-${version}";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "ocaml-doc";
+    repo = "doc-ock-html";
+    rev = "v${version}";
+    sha256 = "1y620h48qrplmcm78g7c78zibpkai4j3icwmnx95zb3r8xq8554y";
+  };
+
+  buildInputs = [ ocaml findlib dune ];
+
+  propagatedBuildInputs = [ doc-ock tyxml xmlm ];
+
+  inherit (dune) installPhase;
+
+  meta = {
+    description = "From doc-ock to HTML";
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+    inherit (src.meta) homepage;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/doc-ock-xml/default.nix b/pkgs/development/ocaml-modules/doc-ock-xml/default.nix
new file mode 100644
index 000000000000..72e562cb5f36
--- /dev/null
+++ b/pkgs/development/ocaml-modules/doc-ock-xml/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, doc-ock, menhir, xmlm }:
+
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-doc-ock-xml-${version}";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "ocaml-doc";
+    repo = "doc-ock-xml";
+    rev = "v${version}";
+    sha256 = "1s27ri7vj9ixi5p5ixg6g6invk96807bvxbqjrr1dm8sxgl1nd20";
+  };
+
+  buildInputs = [ ocaml findlib dune ];
+
+  propagatedBuildInputs = [ doc-ock menhir xmlm ];
+
+  inherit (dune) installPhase;
+
+  meta = {
+    description = "XML printer and parser for Doc-Ock";
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+    inherit (src.meta) homepage;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/doc-ock/default.nix b/pkgs/development/ocaml-modules/doc-ock/default.nix
new file mode 100644
index 000000000000..c158f08b0687
--- /dev/null
+++ b/pkgs/development/ocaml-modules/doc-ock/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, octavius, cppo }:
+
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-doc-ock-${version}";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "ocaml-doc";
+    repo = "doc-ock";
+    rev = "v${version}";
+    sha256 = "090vprm12jrl55yllk1hdzbsqyr107yjs2qnc49yahdhvnr4h5b7";
+  };
+
+  buildInputs = [ ocaml findlib dune cppo ];
+
+  propagatedBuildInputs = [ octavius ];
+
+  inherit (dune) installPhase;
+
+  meta = {
+    description = "Extract documentation from OCaml files";
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+    inherit (src.meta) homepage;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/erm_xml/default.nix b/pkgs/development/ocaml-modules/erm_xml/default.nix
index c944752ff6b6..35b5c73b578b 100644
--- a/pkgs/development/ocaml-modules/erm_xml/default.nix
+++ b/pkgs/development/ocaml-modules/erm_xml/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchzip, ocaml, findlib, ocamlbuild }:
 
-if stdenv.lib.versionAtLeast ocaml.version "4.06"
+if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "erm_xml is not available for OCaml ${ocaml.version}"
 else
 
-let version = "0.3"; in
+let version = "0.3+20180112"; in
 
 stdenv.mkDerivation {
-  name = "ocaml-erm_xml-${version}";
+  name = "ocaml${ocaml.version}-erm_xml-${version}";
 
   src = fetchzip {
-    url = "https://github.com/ermine/xml/archive/v${version}.tar.gz";
-    sha256 = "19znk5w0qiw3wij4n6w3h5bcr221yy57jf815fr8k9m8kin710g3";
+    url = "https://github.com/hannesm/xml/archive/bbabdade807d8281fc48806da054b70dfe482479.tar.gz";
+    sha256 = "1gawpmg8plip0wia0xq60m024dn7l3ykwbjpbqx9f9bdmx74n1rr";
   };
 
   buildInputs = [ ocaml findlib ocamlbuild ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   createFindlibDestdir = true;
 
   meta = {
-    homepage = https://github.com/ermine/xml;
+    homepage = https://github.com/hannesm/xml;
     description = "XML Parser for discrete data";
     platforms = ocaml.meta.platforms or [];
     license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/ocaml-modules/erm_xmpp/0.3.nix b/pkgs/development/ocaml-modules/erm_xmpp/0.3.nix
deleted file mode 100644
index 1a8f854185a2..000000000000
--- a/pkgs/development/ocaml-modules/erm_xmpp/0.3.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, buildOcaml, fetchFromGitHub, ocaml, findlib, erm_xml, nocrypto }:
-
-buildOcaml rec {
-  version = "0.3";
-  name = "erm_xmpp";
-
-  src = fetchFromGitHub {
-    owner  = "hannesm";
-    repo   = "xmpp";
-    rev    = "eee18bd3dd343550169969c0b45548eafd51cfe1";
-    sha256 = "0hzs528lrx1ayalv6fh555pjn0b4l8xch1f72hd3b07g1xahdas5";
-  };
-
-  buildInputs = [ ocaml findlib ];
-  propagatedBuildInputs = [ erm_xml nocrypto ];
-
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
-  buildPhase = "ocaml setup.ml -build";
-  installPhase = "ocaml setup.ml -install";
-
-  createFindlibDestdir = true;
-
-  meta = {
-    homepage = https://github.com/hannesm/xmpp;
-    description = "OCaml based XMPP implementation (fork)";
-    license = stdenv.lib.licenses.bsd3;
-    maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/erm_xmpp/default.nix b/pkgs/development/ocaml-modules/erm_xmpp/default.nix
index c6027ce11ce5..a6bb75e61c24 100644
--- a/pkgs/development/ocaml-modules/erm_xmpp/default.nix
+++ b/pkgs/development/ocaml-modules/erm_xmpp/default.nix
@@ -1,33 +1,32 @@
-{ stdenv, fetchurl, fetchzip, ocaml, findlib, ocamlbuild, erm_xml, cryptokit, camlp4 }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, camlp4, ocamlbuild
+, erm_xml, nocrypto
+}:
 
-let
-  version = "0.2";
-  disable-tests = fetchurl {
-    url = https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/erm_xmpp/erm_xmpp.0.2/files/disable_tests.patch;
-    sha256 = "09d8630nmx2x8kb8ap1zmsb93zs14cqg7ga1gmdl92jvsjxbhgc1";
-  };
-in
-
-stdenv.mkDerivation {
-  name = "ocaml-erm_xmpp-${version}";
+stdenv.mkDerivation rec {
+  version = "0.3+20180112";
+  name = "ocaml${ocaml.version}-erm_xmpp-${version}";
 
-  src = fetchzip {
-    url = "https://github.com/ermine/xmpp/archive/v${version}.tar.gz";
-    sha256 = "0saw2dmrzv2aadrznvyvchnhivvcwm78x9nwf6flq5v0pqddapk2";
+  src = fetchFromGitHub {
+    owner  = "hannesm";
+    repo   = "xmpp";
+    rev    = "184dc70fab7d46d09b9148ca4448f07f1e0a2df2";
+    sha256 = "1dsqsfacvd9xqsqjzh6xwbnf2mv1dvhy210riyvjd260q085ch6n";
   };
 
-  patches = [ disable-tests ];
-
   buildInputs = [ ocaml findlib ocamlbuild camlp4 ];
-  propagatedBuildInputs = [ erm_xml cryptokit ];
+  propagatedBuildInputs = [ erm_xml nocrypto ];
+
+  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  buildPhase = "ocaml setup.ml -build";
+  installPhase = "ocaml setup.ml -install";
 
   createFindlibDestdir = true;
 
   meta = {
-    homepage = https://github.com/ermine/xmpp;
-    description = "OCaml based XMPP implementation";
-    platforms = ocaml.meta.platforms or [];
+    homepage = https://github.com/hannesm/xmpp;
+    description = "OCaml based XMPP implementation (fork)";
     license = stdenv.lib.licenses.bsd3;
-    maintainers = with stdenv.lib.maintainers; [ vbgl ];
+    maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
+    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/odoc/default.nix b/pkgs/development/ocaml-modules/odoc/default.nix
new file mode 100644
index 000000000000..4c5da695eb6c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/odoc/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
+, bos, cmdliner, doc-ock-html, doc-ock-xml
+}:
+
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-odoc-${version}";
+  version = "1.2.0";
+  src = fetchFromGitHub {
+    owner = "ocaml";
+    repo = "odoc";
+    rev = "v${version}";
+    sha256 = "0ixnhfpm1nw4bvjj8qhcyy283pdr5acqpg5wxwq3n1l4mad79cgh";
+  };
+
+  buildInputs = [ ocaml findlib dune cmdliner ];
+
+  propagatedBuildInputs = [ bos doc-ock-html doc-ock-xml ];
+
+  inherit (dune) installPhase;
+
+  meta = {
+    description = "A documentation generator for OCaml";
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+    inherit (src.meta) homepage;
+  };
+}
diff --git a/pkgs/development/python-modules/click-completion/default.nix b/pkgs/development/python-modules/click-completion/default.nix
new file mode 100644
index 000000000000..a6b36232531b
--- /dev/null
+++ b/pkgs/development/python-modules/click-completion/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k,
+  click, jinja2, shellingham, six
+}:
+
+buildPythonPackage rec {
+  pname = "click-completion";
+  version = "0.4.1";
+  disabled = (!isPy3k);
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1fjm22dyma26jrx4ki2z4dwbhcah4r848fz381x64sz5xxq3xdrk";
+  };
+
+  propagatedBuildInputs = [ click jinja2 shellingham six ];
+
+  meta = with stdenv.lib; {
+    description = "Add or enhance bash, fish, zsh and powershell completion in Click";
+    homepage = https://github.com/click-contrib/click-completion;
+    license = licenses.mit;
+    maintainers = with maintainers; [ mbode ];
+  };
+}
diff --git a/pkgs/development/python-modules/click-didyoumean/default.nix b/pkgs/development/python-modules/click-didyoumean/default.nix
new file mode 100644
index 000000000000..4cd2ea15029b
--- /dev/null
+++ b/pkgs/development/python-modules/click-didyoumean/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, fetchPypi,
+  click
+}:
+
+buildPythonPackage rec {
+  pname = "click-didyoumean";
+  version = "0.0.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1svaza5lpvdbmyrx5xi0riqzq4hb9wnlpqrg6r8zy14pbi42j8hi";
+  };
+
+  propagatedBuildInputs = [ click ];
+
+  meta = with stdenv.lib; {
+    description = "Enable git-like did-you-mean feature in click";
+    homepage = https://github.com/click-contrib/click-didyoumean;
+    license = licenses.mit;
+    maintainers = with maintainers; [ mbode ];
+  };
+}
diff --git a/pkgs/development/python-modules/elasticsearch-dsl/default.nix b/pkgs/development/python-modules/elasticsearch-dsl/default.nix
new file mode 100644
index 000000000000..94d47073764e
--- /dev/null
+++ b/pkgs/development/python-modules/elasticsearch-dsl/default.nix
@@ -0,0 +1,39 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, elasticsearch
+, ipaddress
+, python-dateutil
+, pytz
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "elasticsearch-dsl";
+  version = "6.2.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0f0w23kzyym0fkzisdkcl4xpnm8fsi97v1kskyvfrhj3mxy179fh";
+  };
+
+  propagatedBuildInputs = [ elasticsearch python-dateutil six ]
+                          ++ stdenv.lib.optional (!isPy3k) ipaddress;
+
+  # ImportError: No module named test_elasticsearch_dsl
+  # Tests require a local instance of elasticsearch
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "High level Python client for Elasticsearch";
+    longDescription = ''
+      Elasticsearch DSL is a high-level library whose aim is to help with
+      writing and running queries against Elasticsearch. It is built on top of
+      the official low-level client (elasticsearch-py).
+    '';
+    homepage = https://github.com/elasticsearch/elasticsearch-dsl-py;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ desiderius ];
+  };
+}
diff --git a/pkgs/development/python-modules/ldappool/default.nix b/pkgs/development/python-modules/ldappool/default.nix
index a09fa75ce349..02d10b832ff2 100644
--- a/pkgs/development/python-modules/ldappool/default.nix
+++ b/pkgs/development/python-modules/ldappool/default.nix
@@ -3,12 +3,12 @@
 
 buildPythonPackage rec {
   name = "ldappool-${version}";
-  version = "2.3.0";
+  version = "2.2.0";
 
   src = fetchPypi {
     pname = "ldappool";
     inherit version;
-    sha256 = "899d38e891372981166350c813ff5ce2ad8ac383311edccda8102362c1d60952";
+    sha256 = "1akmzf51cjfvmd0nvvm562z1w9vq45zsx6fa72kraqgsgxhnrhqz";
   };
 
   nativeBuildInputs = [ pbr ];
diff --git a/pkgs/development/python-modules/py3exiv2/default.nix b/pkgs/development/python-modules/py3exiv2/default.nix
index d8633488102b..4c6ca0bad338 100644
--- a/pkgs/development/python-modules/py3exiv2/default.nix
+++ b/pkgs/development/python-modules/py3exiv2/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, isPy3k, fetchPypi, stdenv, exiv2, boost, libcxx }:
+{ buildPythonPackage, isPy3k, fetchPypi, stdenv, exiv2, boost, libcxx, substituteAll, python }:
 
 buildPythonPackage rec {
   pname = "py3exiv2";
@@ -16,7 +16,12 @@ buildPythonPackage rec {
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
 
   # fix broken libboost_python3 detection
-  patches = [ ./setup.patch ];
+  patches = [
+    (substituteAll {
+      src = ./setup.patch;
+      version = "3${stdenv.lib.versions.minor python.version}";
+    })
+  ];
 
   meta = {
     homepage = "https://launchpad.net/py3exiv2";
diff --git a/pkgs/development/python-modules/py3exiv2/setup.patch b/pkgs/development/python-modules/py3exiv2/setup.patch
index bb4b11523479..8b0619c5bc5f 100644
--- a/pkgs/development/python-modules/py3exiv2/setup.patch
+++ b/pkgs/development/python-modules/py3exiv2/setup.patch
@@ -5,7 +5,7 @@
                      return l.replace('libboost', 'boost')
  
 -libboost = get_libboost_name()
-+libboost = 'boost_python3'
++libboost = 'boost_python@version@'
  
  setup(
      name='py3exiv2',
diff --git a/pkgs/development/python-modules/pyftgl/default.nix b/pkgs/development/python-modules/pyftgl/default.nix
index a85837472255..1163f007b092 100644
--- a/pkgs/development/python-modules/pyftgl/default.nix
+++ b/pkgs/development/python-modules/pyftgl/default.nix
@@ -1,5 +1,13 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub, isPy3k
-, boost, freetype, ftgl, libGLU_combined }:
+{ lib, buildPythonPackage, fetchFromGitHub, isPy3k
+, boost, freetype, ftgl, libGLU_combined
+, python
+}:
+
+let
+
+  pythonVersion = with lib.versions; "${major python.version}${minor python.version}";
+
+in
 
 buildPythonPackage rec {
   pname = "pyftgl";
@@ -13,13 +21,13 @@ buildPythonPackage rec {
     sha256 = "12zcjv4cwwjihiaf74kslrdmmk4bs47h7006gyqfwdfchfjdgg4r";
   };
 
-  postPatch = stdenv.lib.optional isPy3k ''
-    sed -i "s,'boost_python','boost_python3',g" setup.py
+  postPatch = ''
+    sed -i "s,'boost_python','boost_python${pythonVersion}',g" setup.py
   '';
 
   buildInputs = [ boost freetype ftgl libGLU_combined ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Python bindings for FTGL (FreeType for OpenGL)";
     license = licenses.gpl2Plus;
   };
diff --git a/pkgs/development/python-modules/pyjet/default.nix b/pkgs/development/python-modules/pyjet/default.nix
new file mode 100644
index 000000000000..69d20863a772
--- /dev/null
+++ b/pkgs/development/python-modules/pyjet/default.nix
@@ -0,0 +1,21 @@
+{ lib, buildPythonPackage, fetchPypi, nose, numpy }:
+
+buildPythonPackage rec {
+  pname = "pyjet";
+  version = "1.3.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1glcwv9ni8i40smfw6m456xjadlkackim5nk33xmas1fa96lpagg";
+  };
+
+  propagatedBuildInputs = [ numpy ];
+  checkInputs = [ nose ];
+
+  meta = with lib; {
+    homepage = "https://github.com/scikit-hep/pyjet";
+    description = "The interface between FastJet and NumPy";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/pkgs/development/python-modules/sharedmem/default.nix b/pkgs/development/python-modules/sharedmem/default.nix
new file mode 100644
index 000000000000..60c91b641098
--- /dev/null
+++ b/pkgs/development/python-modules/sharedmem/default.nix
@@ -0,0 +1,21 @@
+{ buildPythonPackage, fetchPypi, lib, numpy }:
+
+buildPythonPackage rec {
+
+  pname = "sharedmem";
+  version = "0.3.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1wr438m1jmcj6ccskzm6pchv6ldx7031h040adadjmkivz5rry41";
+  };
+
+  propagatedBuildInputs = [ numpy ];
+
+  meta = {
+    homepage = http://rainwoodman.github.io/sharedmem/;
+    description = "Easier parallel programming on shared memory computers";
+    maintainers = with lib.maintainers; [ edwtjo ];
+    license = lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/development/python-modules/shellingham/default.nix b/pkgs/development/python-modules/shellingham/default.nix
new file mode 100644
index 000000000000..57cafe2624c5
--- /dev/null
+++ b/pkgs/development/python-modules/shellingham/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, buildPythonPackage, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "shellingham";
+  version = "1.2.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0x1hja3jzvh7xmd0sxnfw9hi3k419s95vb7jjzh76yydzvss1r2q";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Tool to Detect Surrounding Shell";
+    homepage = https://github.com/sarugaku/shellingham;
+    license = licenses.isc;
+    maintainers = with maintainers; [ mbode ];
+  };
+}
diff --git a/pkgs/development/ruby-modules/solargraph/Gemfile.lock b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
index 436d31830ff4..04d274d05621 100644
--- a/pkgs/development/ruby-modules/solargraph/Gemfile.lock
+++ b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
@@ -26,7 +26,7 @@ GEM
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
     ruby-progressbar (1.10.0)
-    solargraph (0.27.1)
+    solargraph (0.28.1)
       coderay (~> 1.1)
       eventmachine (~> 1.2, >= 1.2.5)
       htmlentities (~> 4.3, >= 4.3.4)
diff --git a/pkgs/development/ruby-modules/solargraph/gemset.nix b/pkgs/development/ruby-modules/solargraph/gemset.nix
index 840cf922419b..3319f2a68de5 100644
--- a/pkgs/development/ruby-modules/solargraph/gemset.nix
+++ b/pkgs/development/ruby-modules/solargraph/gemset.nix
@@ -127,10 +127,10 @@
     dependencies = ["coderay" "eventmachine" "htmlentities" "kramdown" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wp4k6ayv9gv1rzxqccz6zb1fss7klszqwha9wvs6mj3c1vhghac";
+      sha256 = "11l759mrzjla2iqy5wdd20r01196pfxkw0b0gzgskdbfi8y8mvg5";
       type = "gem";
     };
-    version = "0.27.1";
+    version = "0.28.1";
   };
   thor = {
     source = {
diff --git a/pkgs/development/tools/misc/ycmd/default.nix b/pkgs/development/tools/misc/ycmd/default.nix
index c0e12aa22c44..062f90e3389d 100644
--- a/pkgs/development/tools/misc/ycmd/default.nix
+++ b/pkgs/development/tools/misc/ycmd/default.nix
@@ -7,12 +7,12 @@
 
 stdenv.mkDerivation rec {
   name = "ycmd-${version}";
-  version = "2018-07-24";
+  version = "2018-09-20";
 
   src = fetchgit {
     url = "https://github.com/Valloric/ycmd.git";
-    rev = "f8a8b04892b925efeee24298a957cc6d6a69ad06";
-    sha256 = "1br2sh6bs0fg1axq2hq9f48fz8klkzydi1mf0j0jdsh3zjzkmxbn";
+    rev = "bf658fd78722c517674c0aaf2381e199bca8f163";
+    sha256 = "1lwa8xr76vapfpncvp81cn3m9219yw14fl7fzk5gnly60zkphbbl";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/profiling/EZTrace/default.nix b/pkgs/development/tools/profiling/EZTrace/default.nix
index 2ff337ef2083..8155f3016c3f 100644
--- a/pkgs/development/tools/profiling/EZTrace/default.nix
+++ b/pkgs/development/tools/profiling/EZTrace/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.0.6";
+  version = "1.1-7";
   name = "EZTrace-${version}";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/file/34082/eztrace-${version}.tar.gz";
-    sha256 = "06q5y9qmdn1h0wjmy28z6gwswskmph49j7simfqcqwv05gvd9svr";
+    url = "https://gforge.inria.fr/frs/download.php/file/37155/eztrace-${version}.tar.gz";
+    sha256 = "0cr2d4fdv4ljvag55dsz3rpha1jan2gc3jhr06ycyk43450pl58p";
   };
 
   # Goes past the rpl_malloc linking failure; fixes silent file breakage
diff --git a/pkgs/misc/emulators/blastem/default.nix b/pkgs/misc/emulators/blastem/default.nix
new file mode 100644
index 000000000000..afc555cb51ea
--- /dev/null
+++ b/pkgs/misc/emulators/blastem/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, SDL2, glew, xcftools, python, pillow, makeWrapper }:
+
+let
+  vasm =
+    stdenv.mkDerivation rec {
+      name = "vasm-${version}";
+      version = "1.8c";
+      src = fetchFromGitHub {
+        owner = "mbitsnbites";
+        repo = "vasm";
+        rev = "244f8bbbdf64ae603f9f6c09a3067943837459ec";
+        sha256 = "0x4y5q7ygxfjfy2wxijkps9khsjjfb169sbda410vaw0m88wqj5p";
+      };
+      makeFlags = "CPU=m68k SYNTAX=mot";
+      installPhase = ''
+        mkdir -p $out/bin
+        cp vasmm68k_mot $out/bin
+      '';
+    };
+in
+stdenv.mkDerivation rec {
+  name = "blastem-${version}";
+  version = "0.5.1";
+  src = fetchurl {
+    url = "https://www.retrodev.com/repos/blastem/archive/3d48cb0c28be.tar.gz";
+    sha256 = "07wzbmzp0y8mh59jxg81q17gqagz3psxigxh8dmzsipgg68y6a8r";
+  };
+  buildInputs = [ pkgconfig SDL2 glew xcftools python pillow vasm makeWrapper ];
+  preBuild = ''
+    patchShebangs img2tiles.py
+  '';
+  postBuild = ''
+    make menu.bin
+  '';
+  installPhase = ''
+    mkdir -p $out/bin $out/share/blastem
+    cp -r {blastem,menu.bin,default.cfg,rom.db,shaders} $out/share/blastem/
+    makeWrapper $out/share/blastem/blastem $out/bin/blastem
+  '';
+
+  meta = {
+    homepage = https://www.retrodev.com/blastem/;
+    description = "The fast and accurate Genesis emulator";
+    maintainers = with stdenv.lib.maintainers; [ puffnfresh ];
+    license = stdenv.lib.licenses.gpl3;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/misc/libcardiacarrest/default.nix b/pkgs/misc/libcardiacarrest/default.nix
index 28e9b81df86a..1a07878b3302 100644
--- a/pkgs/misc/libcardiacarrest/default.nix
+++ b/pkgs/misc/libcardiacarrest/default.nix
@@ -4,13 +4,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "libcardiacarrest-${version}";
-  version = "12.1-6"; # <PA API version>-<version>
+  version = "12.1-7"; # <PA API version>-<version>
 
   src = fetchFromGitHub {
     owner = "oxij";
     repo = "libcardiacarrest";
-    rev = "4df92b6cc66c7f9fe947dd9bbf4802cf20fe63a2";
-    sha256 = "0zfjn4nvcx8r4f6czcix5b9nsszhhhlbypcwqzi4ddhazl1gyfm6";
+    rev = "d44288d9a24d6b7793fb36a4c9a548b6b55375ec";
+    sha256 = "0j3l5s6r9hgpy5y7q7kx0rkh05rk0bgfdvzbmadqps720lqjs4xm";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/misc/themes/shades-of-gray/default.nix b/pkgs/misc/themes/shades-of-gray/default.nix
new file mode 100644
index 000000000000..009a45b39dd9
--- /dev/null
+++ b/pkgs/misc/themes/shades-of-gray/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, gtk_engines, gtk-engine-murrine }:
+
+stdenv.mkDerivation rec {
+  name = "shades-of-gray-theme-${version}";
+  version = "1.1.1";
+
+  src = fetchFromGitHub {
+    owner = "WernerFP";
+    repo = "Shades-of-gray-theme";
+    rev = version;
+    sha256 = "1m75m6aq4hh39m8qrmbkaw31j4gzkh63ial4xnhw2habf31av682";
+  };
+
+  buildInputs = [ gtk_engines ];
+
+  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+
+  installPhase = ''
+    mkdir -p $out/share/themes
+    cp -a Shades-of-gray* README.md preview_01.png $out/share/themes/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A flat dark GTK-theme with ergonomic contrasts";
+    homepage = https://github.com/WernerFP/Shades-of-gray-theme;
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/YankRing b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/YankRing
deleted file mode 100644
index 1776c1b91ea5..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/YankRing
+++ /dev/null
@@ -1 +0,0 @@
-    sourceRoot = ".";
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clang_complete b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clang_complete
deleted file mode 100644
index ed88e08742ed..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clang_complete
+++ /dev/null
@@ -1,11 +0,0 @@
-    # In addition to the arguments you pass to your compiler, you also need to
-    # specify the path of the C++ std header (if you are using C++).
-    # These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper).
-    # The linked ruby code shows generates the required '.clang_complete' for cmake based projects
-    # https://gist.github.com/Mic92/135e83803ed29162817fce4098dec144
-    # as an alternative you can execute the following command:
-    # $ eval echo $(nix-instantiate --eval --expr 'with (import <nixpkgs>) {}; clang.default_cxx_stdlib_compile')
-    preFixup = ''
-      substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \
-        --replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'"
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clighter8 b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clighter8
deleted file mode 100644
index 8965ebe29810..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/clighter8
+++ /dev/null
@@ -1,4 +0,0 @@
-    preFixup = ''
-      sed "/^let g:clighter8_libclang_path/s|')$|${llvmPackages.clang.cc}/lib/libclang.so')|" \
-        -i "$out"/share/vim-plugins/clighter8/plugin/clighter8.vim
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/command-t b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/command-t
deleted file mode 100644
index f850425cba77..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/command-t
+++ /dev/null
@@ -1,5 +0,0 @@
-    buildInputs = [ ruby rake ];
-    buildPhase = ''
-      rake make
-      rm ruby/command-t/ext/command-t/*.o
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/cpsm b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/cpsm
deleted file mode 100644
index c3a210a642d2..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/cpsm
+++ /dev/null
@@ -1,13 +0,0 @@
-    buildInputs = [
-      python3
-      stdenv
-      cmake
-      boost
-      icu
-      ncurses
-    ];
-    buildPhase = ''
-      patchShebangs .
-      export PY3=ON
-      ./install.sh
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ctrlp-cmatcher b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ctrlp-cmatcher
deleted file mode 100644
index bd4a4fa989ba..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ctrlp-cmatcher
+++ /dev/null
@@ -1,5 +0,0 @@
-    buildInputs = [ python ];
-    buildPhase = ''
-      patchShebangs .
-      ./install.sh
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/deoplete-go b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/deoplete-go
deleted file mode 100644
index 80cfd9af6538..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/deoplete-go
+++ /dev/null
@@ -1,7 +0,0 @@
-    buildInputs = [ python3 ]; 
-    buildPhase = ''
-      pushd ./rplugin/python3/deoplete/ujson
-      python3 setup.py build --build-base=$PWD/build --build-lib=$PWD/build
-      popd
-      find ./rplugin/ -name "ujson*.so" -exec mv -v {} ./rplugin/python3/ \;
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ensime-vim b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ensime-vim
deleted file mode 100644
index e065e0db4f47..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/ensime-vim
+++ /dev/null
@@ -1 +0,0 @@
-    passthru.python3Dependencies = ps: with ps; [ sexpdata websocket_client ];
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/taglist b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/taglist
deleted file mode 100644
index 90f6e3367a3b..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/taglist
+++ /dev/null
@@ -1,6 +0,0 @@
-    setSourceRoot = ''
-      export sourceRoot=taglist
-      mkdir taglist
-      mv doc taglist
-      mv plugin taglist
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-addon-manager b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-addon-manager
deleted file mode 100644
index e3d8dfb69210..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-addon-manager
+++ /dev/null
@@ -1 +0,0 @@
-    buildInputs = stdenv.lib.optional stdenv.isDarwin Cocoa;
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-grammarous b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-grammarous
deleted file mode 100644
index 66a91b619d16..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-grammarous
+++ /dev/null
@@ -1,10 +0,0 @@
-    # use `:GrammarousCheck` to initialize checking
-    # In neovim, you also want to use set
-    #   let g:grammarous#show_first_error = 1
-    # see https://github.com/rhysd/vim-grammarous/issues/39
-    patches = [
-      (substituteAll {
-        src = ./patches/vim-grammarous/set_default_languagetool.patch;
-        inherit languagetool;
-      })
-    ];
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-hier b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-hier
deleted file mode 100644
index d1f756a99d3b..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-hier
+++ /dev/null
@@ -1 +0,0 @@
-    buildInputs = [ vim ];
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-isort b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-isort
deleted file mode 100644
index febd2185bac3..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-isort
+++ /dev/null
@@ -1,4 +0,0 @@
-    postPatch = ''
-      substituteInPlace ftplugin/python_vimisort.vim \
-          --replace 'import vim' 'import vim; import sys; sys.path.append("${pythonPackages.isort}/${python.sitePackages}")'
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-wakatime b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-wakatime
deleted file mode 100644
index 31ffa7f8ff97..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-wakatime
+++ /dev/null
@@ -1 +0,0 @@
-    buildInputs = [ python ];
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xdebug b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xdebug
deleted file mode 100644
index 62a3c22c0369..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xdebug
+++ /dev/null
@@ -1 +0,0 @@
-    postInstall = false;
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xkbswitch b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xkbswitch
deleted file mode 100644
index 4e73ac9a73b3..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-xkbswitch
+++ /dev/null
@@ -1,5 +0,0 @@
-    patchPhase = ''
-      substituteInPlace plugin/xkbswitch.vim \
-              --replace /usr/local/lib/libxkbswitch.so ${xkb_switch}/lib/libxkbswitch.so
-    '';
-    buildInputs = [ xkb_switch ];
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-yapf b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-yapf
deleted file mode 100644
index c1eb9efefc36..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vim-yapf
+++ /dev/null
@@ -1,4 +0,0 @@
-    buildPhase = ''
-      substituteInPlace ftplugin/python_yapf.vim \
-        --replace '"yapf"' '"${python3Packages.yapf}/bin/yapf"'
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vimproc.vim b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vimproc.vim
deleted file mode 100644
index e720559fa3d6..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/vimproc.vim
+++ /dev/null
@@ -1,9 +0,0 @@
-    buildInputs = [ which ];
-
-    buildPhase = ''
-      substituteInPlace autoload/vimproc.vim \
-        --replace vimproc_mac.so vimproc_unix.so \
-        --replace vimproc_linux64.so vimproc_unix.so \
-        --replace vimproc_linux32.so vimproc_unix.so
-      make -f make_unix.mak
-    '';
diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme
deleted file mode 100644
index 278343dab6e0..000000000000
--- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme
+++ /dev/null
@@ -1,16 +0,0 @@
-    buildPhase = ''
-      substituteInPlace plugin/youcompleteme.vim \
-        --replace "'ycm_path_to_python_interpreter', '''" \
-                  "'ycm_path_to_python_interpreter', '${python}/bin/python'"
-
-      rm -r third_party/ycmd
-      ln -s ${ycmd}/lib/ycmd third_party
-    '';
-
-    meta = {
-      description = "Fastest non utf-8 aware word and C completion engine for Vim";
-      homepage = https://github.com/Valloric/YouCompleteMe;
-      license = stdenv.lib.licenses.gpl3;
-      maintainers = with stdenv.lib.maintainers; [marcweber jagajaga];
-      platforms = stdenv.lib.platforms.unix;
-    };
diff --git a/pkgs/os-specific/linux/iputils/default.nix b/pkgs/os-specific/linux/iputils/default.nix
index e66dbe41d013..2248f0329c60 100644
--- a/pkgs/os-specific/linux/iputils/default.nix
+++ b/pkgs/os-specific/linux/iputils/default.nix
@@ -30,6 +30,16 @@ in stdenv.mkDerivation {
       url = "https://github.com/iputils/iputils/commit/d0ff83e87ea9064d9215a18e93076b85f0f9e828.patch";
       sha256 = "05wrwf0bfmax69bsgzh3b40n7rvyzw097j8z5ix0xsg0kciygjvx";
     })
+    (fetchpatch {
+      name = "add-missing-idn-declarations.patch";
+      url = "https://github.com/iputils/iputils/commit/5007d7067918fb3d950d34c01d059e5222db679a.patch";
+      sha256 = "0dhgxdhjcbb2q6snm3mjp38l066knykmrx4k8rn167cizn7akpdx";
+    })
+    (fetchpatch {
+      name = "fix-ping-idn.patch";
+      url = "https://github.com/iputils/iputils/commit/25899e849aa3abc1ad29ebf0b830262a859eaed5.patch";
+      sha256 = "1bqjcdjjnc2j6indcli7s7gbbhkcaligvh94asixfrmjzkbn533n";
+    })
   ];
 
   prePatch = ''
diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix
index d061e41eb2fe..d95c2caa2cf0 100644
--- a/pkgs/os-specific/linux/kernel/linux-rpi.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix
@@ -1,10 +1,10 @@
-{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args:
+{ stdenv, lib, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args:
 
 let
   modDirVersion = "4.14.62";
   tag = "1.20180817";
 in
-stdenv.lib.overrideDerivation (buildLinux (args // rec {
+lib.overrideDerivation (buildLinux (args // rec {
   version = "${modDirVersion}-${tag}";
   inherit modDirVersion;
 
@@ -18,6 +18,7 @@ stdenv.lib.overrideDerivation (buildLinux (args // rec {
   defconfig = {
     "armv6l-linux" = "bcmrpi_defconfig";
     "armv7l-linux" = "bcm2709_defconfig";
+    "aarch64-linux" = "bcmrpi3_defconfig";
   }.${stdenv.hostPlatform.system} or (throw "linux_rpi not supported on '${stdenv.hostPlatform.system}'");
 
   features = {
@@ -31,14 +32,15 @@ stdenv.lib.overrideDerivation (buildLinux (args // rec {
     sed -i $buildRoot/.config -e 's/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=""/'
   '';
 
+  # Make copies of the DTBs named after the upstream names so that U-Boot finds them.
+  # This is ugly as heck, but I don't know a better solution so far.
   postFixup = ''
-    # Make copies of the DTBs named after the upstream names so that U-Boot finds them.
-    # This is ugly as heck, but I don't know a better solution so far.
-    rm $out/dtbs/bcm283*.dtb
+    dtbDir=${if stdenv.isAarch64 then "$out/dtbs/broadcom" else "$out/dtbs"}
+    rm $dtbDir/bcm283*.dtb
     copyDTB() {
-      cp -v "$out/dtbs/$1" "$out/dtbs/$2"
+      cp -v "$dtbDir/$1" "$dtbDir/$2"
     }
-
+  '' + lib.optionalString (lib.elem stdenv.hostPlatform.system ["armv6l-linux"]) ''
     copyDTB bcm2708-rpi-0-w.dtb bcm2835-rpi-zero.dtb
     copyDTB bcm2708-rpi-0-w.dtb bcm2835-rpi-zero-w.dtb
     copyDTB bcm2708-rpi-b.dtb bcm2835-rpi-a.dtb
@@ -48,7 +50,9 @@ stdenv.lib.overrideDerivation (buildLinux (args // rec {
     copyDTB bcm2708-rpi-b-plus.dtb bcm2835-rpi-b-plus.dtb
     copyDTB bcm2708-rpi-b-plus.dtb bcm2835-rpi-zero.dtb
     copyDTB bcm2708-rpi-cm.dtb bcm2835-rpi-cm.dtb
+  '' + lib.optionalString (lib.elem stdenv.hostPlatform.system ["armv7l-linux"]) ''
     copyDTB bcm2709-rpi-2-b.dtb bcm2836-rpi-2-b.dtb
+  '' + lib.optionalString (lib.elem stdenv.hostPlatform.system ["armv7l-linux" "aarch64-linux"]) ''
     copyDTB bcm2710-rpi-3-b.dtb bcm2837-rpi-3-b.dtb
     copyDTB bcm2710-rpi-3-b-plus.dtb bcm2837-rpi-3-b-plus.dtb
     copyDTB bcm2710-rpi-cm3.dtb bcm2837-rpi-cm3.dtb
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 4bfea7a10988..4b6be2556637 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.19-rc4";
-  modDirVersion = "4.19.0-rc4";
+  version = "4.19-rc5";
+  modDirVersion = "4.19.0-rc5";
   extraMeta.branch = "4.19";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "083nlh25zddrbg1hzyxfpg9i7h91ij9f299i52r5zwzi85yi8whn";
+    sha256 = "0fpv2g6x1hgdrxvh1acjcxmyk2fzqcx1ypi0mqw72swbm587irck";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix
index f67663b31061..657f17c16849 100644
--- a/pkgs/os-specific/linux/nfs-utils/default.nix
+++ b/pkgs/os-specific/linux/nfs-utils/default.nix
@@ -83,6 +83,8 @@ in stdenv.mkDerivation rec {
     "statdpath=$(TMPDIR)"
   ];
 
+  stripDebugList = [ "lib" "libexec" "bin" "etc/systemd/system-generators" ];
+
   postInstall =
     ''
       # Not used on NixOS
diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix
index 06125787a588..090fce3a485c 100644
--- a/pkgs/os-specific/linux/nvidia-x11/generic.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix
@@ -62,7 +62,7 @@ let
     dontStrip = true;
     dontPatchELF = true;
 
-    libPath = makeLibraryPath [ xorg.libXext xorg.libX11 xorg.libXv xorg.libXrandr zlib stdenv.cc.cc ];
+    libPath = makeLibraryPath [ xorg.libXext xorg.libX11 xorg.libXv xorg.libXrandr xorg.libxcb zlib stdenv.cc.cc ];
 
     nativeBuildInputs = [ perl nukeReferences ]
       ++ optionals (!libsOnly) kernel.moduleBuildDependencies;
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 49f7b59ddc6f..fe416876546c 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jackett-${version}";
-  version = "0.10.160";
+  version = "0.10.198";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "1msy11s89r63vcan6d8mjn2jic1zwvl2j852mjj06bfb3yldx6vq";
+    sha256 = "1svlb38iy47bv88rbk1nimb7pixxh142xr4xf761l3nm69w9qyfq";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 2aea521611c4..8cb93c209de1 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -26,13 +26,13 @@ let
   };
 in python2Packages.buildPythonApplication rec {
   name = "matrix-synapse-${version}";
-  version = "0.33.3.1";
+  version = "0.33.5";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "synapse";
     rev = "v${version}";
-    sha256 = "0q7rjh2qwj1ym5alnv9dvgw07bm7kk7igfai9ix72c6n7qb4z4i3";
+    sha256 = "0m8pyh27cxz761wiwspj6w5dqxpm683nlrjn40fsrgf1sgiprgl6";
   };
 
   patches = [
@@ -45,7 +45,7 @@ in python2Packages.buildPythonApplication rec {
     signedjson systemd twisted ujson unpaddedbase64 pyyaml prometheus_client
     matrix-angular-sdk bleach netaddr jinja2 psycopg2
     psutil msgpack-python lxml matrix-synapse-ldap3
-    phonenumbers jsonschema affinity bcrypt sortedcontainers
+    phonenumbers jsonschema affinity bcrypt sortedcontainers treq
   ];
 
   # Checks fail because of Tox.
diff --git a/pkgs/servers/trezord/default.nix b/pkgs/servers/trezord/default.nix
index 2db004d9000f..9869da95a048 100644
--- a/pkgs/servers/trezord/default.nix
+++ b/pkgs/servers/trezord/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "trezord-go-${version}";
-  version = "2.0.14";
+  version = "2.0.19";
 
   # Fixes Cgo related build failures (see https://github.com/NixOS/nixpkgs/issues/25959 )
   hardeningDisable = [ "fortify" ];
@@ -13,14 +13,14 @@ buildGoPackage rec {
     owner  = "trezor";
     repo   = "trezord-go";
     rev    = "v${version}";
-    sha256 = "1bnzib1cbs7cj6vdf015vr60vm5wgfgbqajcpqxcikfckwhjsykv";
+    sha256 = "19am5zs2mx36w2f8b5001i1sg6v72y1nq5cagnw6rza8qxyw83qs";
   };
 
   meta = with stdenv.lib; {
     description = "TREZOR Communication Daemon aka TREZOR Bridge";
-    homepage = https://mytrezor.com;
-    license = licenses.gpl3;
-    maintainers = with stdenv.lib.maintainers; [ canndrew jb55 ];
+    homepage = https://trezor.io;
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ canndrew jb55 maintainers."1000101"];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index c9e8dd04c470..5bd35b509ad8 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -1760,11 +1760,11 @@ let
   }) // {inherit inputproto xorgserver xproto ;};
 
   xf86inputlibinput = (mkDerivation "xf86inputlibinput" {
-    name = "xf86-input-libinput-0.26.0";
+    name = "xf86-input-libinput-0.28.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/driver/xf86-input-libinput-0.26.0.tar.bz2;
-      sha256 = "0yrqs88b7yn9nljwlxzn76jfmvf0sh939kzij5b2jvr2qa7mbjmb";
+      url = mirror://xorg/individual/driver/xf86-input-libinput-0.28.0.tar.bz2;
+      sha256 = "189h8vl0005yizwrs4d0sng6j8lwkd3xi1zwqg8qavn2bw34v691";
     };
     nativeBuildInputs = [ pkgconfig ];
     buildInputs = [ inputproto xorgserver xproto ];
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index b1a749c7ec4a..32a4e67642ad 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -335,10 +335,10 @@ in
   };
 
   xf86inputlibinput = attrs: attrs // rec {
-    name = "xf86-input-libinput-0.26.0";
+    name = "xf86-input-libinput-0.28.0";
     src = args.fetchurl {
       url = "mirror://xorg/individual/driver/${name}.tar.bz2";
-      sha256 = "0yrqs88b7yn9nljwlxzn76jfmvf0sh939kzij5b2jvr2qa7mbjmb";
+      sha256 = "189h8vl0005yizwrs4d0sng6j8lwkd3xi1zwqg8qavn2bw34v691";
     };
     outputs = [ "out" "dev" ];
     buildInputs = attrs.buildInputs ++ [ args.libinput ];
diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list
index 6e67e8eb6e14..ca77e6408149 100644
--- a/pkgs/servers/x11/xorg/tarballs-7.7.list
+++ b/pkgs/servers/x11/xorg/tarballs-7.7.list
@@ -123,7 +123,7 @@ mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2
 mirror://xorg/individual/driver/xf86-input-evdev-2.10.5.tar.bz2
 mirror://xorg/individual/driver/xf86-input-joystick-1.6.3.tar.bz2
 mirror://xorg/individual/driver/xf86-input-keyboard-1.9.0.tar.bz2
-mirror://xorg/individual/driver/xf86-input-libinput-0.26.0.tar.bz2
+mirror://xorg/individual/driver/xf86-input-libinput-0.28.0.tar.bz2
 mirror://xorg/individual/driver/xf86-input-mouse-1.9.2.tar.bz2
 mirror://xorg/individual/driver/xf86-input-synaptics-1.9.0.tar.bz2
 mirror://xorg/individual/driver/xf86-input-vmmouse-13.1.0.tar.bz2
diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix
index 774077949b25..24255f3f6555 100644
--- a/pkgs/test/default.nix
+++ b/pkgs/test/default.nix
@@ -17,6 +17,8 @@ with pkgs;
   cc-wrapper-libcxx-5 = callPackage ./cc-wrapper { stdenv = llvmPackages_5.libcxxStdenv; };
   cc-wrapper-clang-6 = callPackage ./cc-wrapper { stdenv = llvmPackages_6.stdenv; };
   cc-wrapper-libcxx-6 = callPackage ./cc-wrapper { stdenv = llvmPackages_6.libcxxStdenv; };
+  cc-wrapper-clang-7 = callPackage ./cc-wrapper { stdenv = llvmPackages_7.stdenv; };
+  cc-wrapper-libcxx-7 = callPackage ./cc-wrapper { stdenv = llvmPackages_7.libcxxStdenv; };
   stdenv-inputs = callPackage ./stdenv-inputs { };
 
   cc-multilib-gcc = callPackage ./cc-wrapper/multilib.nix { stdenv = gccMultiStdenv; };
diff --git a/pkgs/tools/X11/xloadimage/default.nix b/pkgs/tools/X11/xloadimage/default.nix
new file mode 100644
index 000000000000..a58d16ab82e8
--- /dev/null
+++ b/pkgs/tools/X11/xloadimage/default.nix
@@ -0,0 +1,88 @@
+{ stdenv
+, fetchurl
+, libX11
+, libXt
+
+, libjpeg ? null
+, libpng ? null
+, libtiff ? null
+
+, withJpegSupport ? true
+, withPngSupport ? true
+, withTiffSupport ? true
+}:
+
+assert withJpegSupport -> libjpeg != null;
+assert withPngSupport -> libpng != null;
+assert withTiffSupport -> libtiff != null;
+
+let
+  deb_patch = "25";
+in
+stdenv.mkDerivation rec {
+  version = "4.1";
+  name = "xloadimage-${version}";
+
+  src = fetchurl {
+    url = "mirror://debian/pool/main/x/xloadimage/xloadimage_${version}.orig.tar.gz";
+    sha256 = "1i7miyvk5ydhi6yi8593vapavhwxcwciir8wg9d2dcyg9pccf2s0";
+  };
+
+  patches = fetchurl {
+    url = "mirror://debian/pool/main/x/xloadimage/xloadimage_${version}-${deb_patch}.debian.tar.xz";
+    sha256 = "17k518vrdrya5c9dqhpmm4g0h2vlkq1iy87sg2ngzygypbli1xvn";
+  };
+
+  buildInputs = [
+    libX11 libXt
+  ] ++ stdenv.lib.optionals withJpegSupport [
+    libjpeg
+  ] ++ stdenv.lib.optionals withPngSupport [
+    libpng
+  ] ++ stdenv.lib.optionals withTiffSupport [
+    libtiff
+  ];
+
+  # NOTE: we patch the build-info script so that it never detects the utilities
+  # it's trying to find; one of the Debian patches adds support for
+  # $SOURCE_DATE_EPOCH, but we want to make sure we don't even call these.
+  preConfigure = ''
+    substituteInPlace build-info \
+      --replace '[ -x /bin/date ]' 'false' \
+      --replace '[ -x /bin/id ]' 'false' \
+      --replace '[ -x /bin/uname ]' 'false' \
+      --replace '[ -x /usr/bin/id ]' 'false'
+
+    chmod +x build-info configure
+  '';
+
+  enableParallelBuilding = true;
+
+  # NOTE: we're not installing the `uufilter` binary; if needed, the standard
+  # `uudecode` tool should work just fine.
+  installPhase = ''
+    install -Dm755 xloadimage $out/bin/xloadimage
+    ln -sv $out/bin/{xloadimage,xsetbg}
+
+    install -D -m644 xloadimagerc $out/etc/xloadimagerc.example
+    install -D -m644 xloadimage.man $out/share/man/man1/xloadimage.1x
+    ln -sv $out/share/man/man1/{xloadimage,xsetbg}.1x
+  '';
+
+  meta = {
+    description = "Graphics file viewer under X11";
+
+    longDescription = ''
+      Can view png, jpeg, gif, tiff, niff, sunraster, fbm, cmuraster, pbm,
+      faces, rle, xwd, vff, mcidas, vicar, pcx, gem, macpaint, xpm and xbm
+      files. Can view images, put them on the root window, or dump them. Does a
+      variety of processing, including: clipping, dithering, depth reduction,
+      zoom, brightening/darkening and merging.
+    '';
+
+    license = stdenv.lib.licenses.gpl2Plus;
+
+    maintainers = with stdenv.lib.maintainers; [ andrew-d ];
+    platforms = stdenv.lib.platforms.linux;  # arbitrary choice
+  };
+}
diff --git a/pkgs/tools/bluetooth/bluez-alsa/default.nix b/pkgs/tools/bluetooth/bluez-alsa/default.nix
new file mode 100644
index 000000000000..70bf187a2283
--- /dev/null
+++ b/pkgs/tools/bluetooth/bluez-alsa/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook
+, alsaLib, bluez, glib, sbc
+
+# optional, but useful utils
+, readline, libbsd, ncurses
+
+# optional codecs
+, aacSupport ? true, fdk_aac
+# TODO: aptxSupport
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "bluez-alsa-${version}";
+  version = "1.3.1";
+
+  src = fetchFromGitHub {
+    owner = "Arkq";
+    repo = "bluez-alsa";
+    rev = "v${version}";
+    sha256 = "1rzcl65gipszsmlcg24gh1xkjkyk4929xhakn6y2smrgwv1zjqdh";
+  };
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+
+  buildInputs = [
+    alsaLib bluez glib sbc
+    readline libbsd ncurses
+  ]
+  ++ optional aacSupport fdk_aac;
+
+  configureFlags = [
+    "--with-alsaplugindir=\$out/lib/alsa-lib"
+    "--enable-rfcomm"
+    "--enable-hcitop"
+  ]
+  ++ optional aacSupport "--enable-aac";
+
+  doCheck = false; # fails 1 of 3 tests, needs access to ALSA
+
+  meta = {
+    description = "Bluez 5 Bluetooth Audio ALSA Backend";
+    longDescription = ''
+      Bluez-ALSA (BlueALSA) is an ALSA backend for Bluez 5 audio interface.
+      Bluez-ALSA registers all Bluetooth devices with audio profiles in Bluez
+      under a virtual ALSA PCM device called `bluealsa` that supports both
+      playback and capture.
+
+      Some backstory: Bluez 5 removed built-in support for ALSA in favor of a
+      generic interface for 3rd party appliations. Thereafter, PulseAudio
+      implemented a backend for that interface and became the only way to get
+      Bluetooth audio with Bluez 5. Users prefering ALSA stayed on Bluez 4.
+      However, Bluez 4 eventually became deprecated.
+
+      This package is a rebirth of a direct interface between ALSA and Bluez 5,
+      that, unlike PulseAudio, provides KISS near-metal-like experience. It is
+      not possible to run BluezALSA and PulseAudio Bluetooth at the same time
+      due to limitations in Bluez, but it is possible to run PulseAudio over
+      BluezALSA if you disable `bluetooth-discover` and `bluez5-discover`
+      modules in PA and configure it to play/capture sound over `bluealsa` PCM.
+    '';
+    homepage = src.meta.homepage;
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.oxij ];
+  };
+
+}
diff --git a/pkgs/tools/misc/agedu/default.nix b/pkgs/tools/misc/agedu/default.nix
index 2f9615a1fdbb..d0254e9ce9f5 100644
--- a/pkgs/tools/misc/agedu/default.nix
+++ b/pkgs/tools/misc/agedu/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchgit, autoreconfHook, halibut}:
 let
-  date = "20180522";
-  rev = "5b12791";
+  date = "20180918";
+  rev = "80c7beb";
 in
 stdenv.mkDerivation {
   name = "agedu-${date}.${rev}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   src = fetchgit {
     url = https://git.tartarus.org/simon/agedu.git;
     inherit rev;
-    sha256 = "1zyxif0i3yil4xm8y9aqk6wsdwi7b3jg682lv6ds6a6bl047fz1q";
+    sha256 = "0i930izna3s73p2q52qa377ixd14zij5q1n7w3irl7csyy78g0cd";
   };
 
   nativeBuildInputs = [autoreconfHook halibut];
diff --git a/pkgs/tools/misc/doitlive/default.nix b/pkgs/tools/misc/doitlive/default.nix
index 3520d67abd21..a8ff34af9757 100644
--- a/pkgs/tools/misc/doitlive/default.nix
+++ b/pkgs/tools/misc/doitlive/default.nix
@@ -2,14 +2,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "doitlive";
-  version = "3.0.3";
+  version = "4.0.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "19i16ca835rb3gal1sxyvpyilj9a80n6nikf0smlzmxck38x86fj";
+    sha256 = "1icnjkczy52i3cp1fmsijqny571fz1h4b3wpdzz79cn90fr326pc";
   };
 
-  propagatedBuildInputs = with python3Packages; [ click ];
+  propagatedBuildInputs = with python3Packages; [ click click-completion click-didyoumean ];
 
   # disable tests (too many failures)
   doCheck = false;
diff --git a/pkgs/tools/misc/fzy/default.nix b/pkgs/tools/misc/fzy/default.nix
index f1b049ba2cee..6a04213e21ae 100644
--- a/pkgs/tools/misc/fzy/default.nix
+++ b/pkgs/tools/misc/fzy/default.nix
@@ -2,21 +2,22 @@
 
 stdenv.mkDerivation rec {
   name = "fzy-${version}";
-  version = "0.9";
+  version = "1.0";
 
   src = fetchFromGitHub {
     owner = "jhawthorn";
     repo = "fzy";
     rev = version;
-    sha256 = "1f1sh88ivdgnqaqha5ircfd9vb0xmss976qns022n0ddb91k5ka6";
+    sha256 = "1gkzdvj73f71388jvym47075l9zw61v6l8wdv2lnc0mns6dxig0k";
   };
 
   makeFlags = "PREFIX=$(out)";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A better fuzzy finder";
     homepage = https://github.com/jhawthorn/fzy;
-    license = stdenv.lib.licenses.mit;
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.mit;
+    maintainers = with maintainers; [ dywedir ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/misc/hdf4/default.nix b/pkgs/tools/misc/hdf4/default.nix
index d0bbd10d1e51..ef3839f67de9 100644
--- a/pkgs/tools/misc/hdf4/default.nix
+++ b/pkgs/tools/misc/hdf4/default.nix
@@ -1,4 +1,5 @@
 { stdenv
+, fetchpatch
 , fetchurl
 , cmake
 , libjpeg
@@ -14,6 +15,22 @@ stdenv.mkDerivation rec {
     sha256 = "0n29klrrbwan9307np0d9hr128dlpc4nnlf57a140080ll3jmp8l";
   };
 
+  patches = let
+    # The Debian patch revision to fetch from; this may differ from our package
+    # version, but older patches should still apply.
+    patchRev = "4.2.13-4";
+    getPatch = name: sha256: fetchpatch {
+      inherit sha256;
+      url = "https://salsa.debian.org/debian-gis-team/hdf4/raw/debian/${patchRev}/debian/patches/${name}";
+    };
+
+  in [
+    (getPatch "64bit"                     "1xqk9zpch4m6ipa0f3x2cm8rwaz4p0ppp1vqglvz18j6q91p8b5y")
+    (getPatch "hdfi.h"                    "01fr9csylnvk9jd9jn9y23bvxy192s07p32pr76mm3gwhgs9h7r4")
+    (getPatch "hdf-4.2.10-aarch64.patch"  "1hl0xw5pd9xhpq49xpwgg7c4z6vv5p19x6qayixw0myvgwj1r4zn")
+    (getPatch "reproducible-builds.patch" "02j639w26xkxpxx3pdhbi18ywz8w3qmjpqjb83n47gq29y4g13hc")
+  ];
+
   buildInputs = [
     cmake
     libjpeg
diff --git a/pkgs/tools/misc/jdupes/default.nix b/pkgs/tools/misc/jdupes/default.nix
index bf5e04a511f7..991066690ee4 100644
--- a/pkgs/tools/misc/jdupes/default.nix
+++ b/pkgs/tools/misc/jdupes/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "jdupes-${version}";
-  version = "1.10.2";
+  version = "1.10.4";
 
   src = fetchFromGitHub {
     owner = "jbruchon";
     repo  = "jdupes";
     rev   = "v${version}";
-    sha256 = "0msp68h1gaipwpvdylpwd6w9al5gcmawj9cmvi7nw8ihh184g3m7";
+    sha256 = "03a2jxv634xy5qwjrk784k3y3pd8f94pndf5m84yg2y7i8dvppnk";
     # Unicode file names lead to different checksums on HFS+ vs. other
     # filesystems because of unicode normalisation. The testdir
     # directories have such files and will be removed.
diff --git a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix
index 16964e4db945..facf1b6a6670 100644
--- a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix
+++ b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix
@@ -28,6 +28,7 @@ in stdenv.mkDerivation rec {
     "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
     "--localstatedir=/tmp"
+    "--enable-absolute-paths"
   ];
 
   passthru = {
diff --git a/pkgs/tools/networking/network-manager/iodine/default.nix b/pkgs/tools/networking/network-manager/iodine/default.nix
index a6fd3e7303df..ad58dc97b0a6 100644
--- a/pkgs/tools/networking/network-manager/iodine/default.nix
+++ b/pkgs/tools/networking/network-manager/iodine/default.nix
@@ -31,6 +31,7 @@ in stdenv.mkDerivation rec {
     "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
     "--localstatedir=/" # needed for the management socket under /run/NetworkManager
+    "--enable-absolute-paths"
   ];
 
   passthru = {
diff --git a/pkgs/tools/networking/network-manager/l2tp/default.nix b/pkgs/tools/networking/network-manager/l2tp/default.nix
index 3cac1b5e63cf..b44933f7f5f8 100644
--- a/pkgs/tools/networking/network-manager/l2tp/default.nix
+++ b/pkgs/tools/networking/network-manager/l2tp/default.nix
@@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
     "--with-gnome=${if withGnome then "yes" else "no"}"
     "--localstatedir=/var"
     "--sysconfdir=$(out)/etc"
+    "--enable-absolute-paths"
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/networking/network-manager/openconnect/default.nix b/pkgs/tools/networking/network-manager/openconnect/default.nix
index 23d4c816a20d..0c02569aa27a 100644
--- a/pkgs/tools/networking/network-manager/openconnect/default.nix
+++ b/pkgs/tools/networking/network-manager/openconnect/default.nix
@@ -26,6 +26,7 @@ in stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--enable-absolute-paths"
   ];
 
   passthru = {
diff --git a/pkgs/tools/networking/network-manager/openvpn/default.nix b/pkgs/tools/networking/network-manager/openvpn/default.nix
index 0d3a4174744f..66a306ffb66c 100644
--- a/pkgs/tools/networking/network-manager/openvpn/default.nix
+++ b/pkgs/tools/networking/network-manager/openvpn/default.nix
@@ -28,6 +28,7 @@ in stdenv.mkDerivation rec {
     "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
     "--localstatedir=/" # needed for the management socket under /run/NetworkManager
+    "--enable-absolute-paths"
   ];
 
   passthru = {
diff --git a/pkgs/tools/networking/network-manager/vpnc/default.nix b/pkgs/tools/networking/network-manager/vpnc/default.nix
index ef45defb7d5a..5d77be86dffe 100644
--- a/pkgs/tools/networking/network-manager/vpnc/default.nix
+++ b/pkgs/tools/networking/network-manager/vpnc/default.nix
@@ -26,6 +26,7 @@ in stdenv.mkDerivation rec {
   configureFlags = [
     "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--enable-absolute-paths"
   ];
 
   passthru = {
diff --git a/pkgs/tools/networking/twa/default.nix b/pkgs/tools/networking/twa/default.nix
new file mode 100644
index 000000000000..f8004ad0068d
--- /dev/null
+++ b/pkgs/tools/networking/twa/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, makeWrapper, bash, gawk, curl, netcat, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "twa-${version}";
+  version = "1.3.1";
+
+  src = fetchFromGitHub {
+    owner = "trailofbits";
+    repo = "twa";
+    rev = version;
+    sha256 = "16x9nzsrf10waqmjm423vx44820c6mls7gxc8azrdqnz18vdy1h4";
+  };
+
+  dontBuild = true;
+
+  buildInputs = [ makeWrapper bash gawk curl netcat ];
+
+  installPhase = ''
+    install -Dm 0755 twa "$out/bin/twa"
+    install -Dm 0755 tscore "$out/bin/tscore"
+    install -Dm 0644 twa.1 "$out/share/man/man1/twa.1"
+    install -Dm 0644 README.md "$out/share/doc/twa/README.md"
+
+    wrapProgram "$out/bin/twa" \
+      --prefix PATH : ${stdenv.lib.makeBinPath [ curl netcat ncurses ]}
+  '';
+
+  meta = {
+    description = "A tiny web auditor with strong opinions";
+    homepage = https://github.com/trailofbits/twa;
+    license = stdenv.lib.licenses.mit;
+    maintainers = with stdenv.lib.maintainers; [ avaq ];
+  };
+}
diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix
index 9f334b4a9602..143b95d92c40 100644
--- a/pkgs/tools/security/eid-mw/default.nix
+++ b/pkgs/tools/security/eid-mw/default.nix
@@ -7,10 +7,10 @@
 
 stdenv.mkDerivation rec {
   name = "eid-mw-${version}";
-  version = "4.4.3";
+  version = "4.4.7";
 
   src = fetchFromGitHub {
-    sha256 = "1h90iz4l85drchpkmhlsvg7f9abhw6890fdr9x5n5ir3kxikwcdm"; 
+    sha256 = "0b1i4slxw1l2p1gpfhd5v6n1fzwi8qwf4gsbxmrbhj9qxi4c73ci"; 
     rev = "v${version}";
     repo = "eid-mw";
     owner = "Fedict";
diff --git a/pkgs/tools/typesetting/tex/texlive/combine.nix b/pkgs/tools/typesetting/tex/texlive/combine.nix
index 41ec8ad52694..8a01ac744145 100644
--- a/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -12,11 +12,9 @@ let
       (bin.core.doc // { pname = "core"; tlType = "doc"; })
     ];
   };
-  partition = builtins.partition or (pred: l:
-    { right = builtins.filter pred l; wrong = builtins.filter (e: !(pred e)) l; });
   pkgList = rec {
     all = lib.filter pkgFilter (combinePkgs pkgSet);
-    splitBin = partition (p: p.tlType == "bin") all;
+    splitBin = builtins.partition (p: p.tlType == "bin") all;
     bin = mkUniquePkgs splitBin.right
       ++ lib.optional
           (lib.any (p: p.tlType == "run" && p.pname == "pdfcrop") splitBin.wrong)
diff --git a/pkgs/tools/virtualization/google-compute-engine/default.nix b/pkgs/tools/virtualization/google-compute-engine/default.nix
index bfa8217b9a09..51fcbb572053 100644
--- a/pkgs/tools/virtualization/google-compute-engine/default.nix
+++ b/pkgs/tools/virtualization/google-compute-engine/default.nix
@@ -6,6 +6,7 @@
 , utillinux
 , boto
 , setuptools
+, distro
 }:
 
 buildPythonApplication rec {
@@ -42,7 +43,7 @@ buildPythonApplication rec {
     cp -r google_config/udev/*.rules $out/lib/udev/rules.d
   '';
 
-  propagatedBuildInputs = [ boto setuptools ];
+  propagatedBuildInputs = [ boto setuptools distro ];
 
   doCheck = false;
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 76564b38c01d..ce86b1d3d7fe 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -929,6 +929,8 @@ with pkgs;
     libgit2 = libgit2_0_27;
   };
 
+  bluez-alsa = callPackage ../tools/bluetooth/bluez-alsa { };
+
   bluez-tools = callPackage ../tools/bluetooth/bluez-tools { };
 
   bmon = callPackage ../tools/misc/bmon { };
@@ -1658,6 +1660,10 @@ with pkgs;
 
   biber = callPackage ../tools/typesetting/biber { };
 
+  blastem = callPackage ../misc/emulators/blastem {
+    inherit (python27Packages) pillow;
+  };
+
   blueman = callPackage ../tools/bluetooth/blueman {
     withPulseAudio = config.pulseaudio or true;
   };
@@ -2767,6 +2773,7 @@ with pkgs;
   gitkraken = callPackage ../applications/version-management/gitkraken { };
 
   gitlab = callPackage ../applications/version-management/gitlab { };
+  gitlab-ee = callPackage ../applications/version-management/gitlab { gitlabEnterprise = true; };
 
   gitlab-runner = callPackage ../development/tools/continuous-integration/gitlab-runner { };
   gitlab-runner_1_11 = callPackage ../development/tools/continuous-integration/gitlab-runner/v1.nix { };
@@ -6380,6 +6387,7 @@ with pkgs;
     };
   };
 
+  clang_7  = llvmPackages_7.clang;
   clang_6  = llvmPackages_6.clang;
   clang_5  = llvmPackages_5.clang;
   clang_4  = llvmPackages_4.clang;
@@ -6977,15 +6985,18 @@ with pkgs;
   lld_4 = llvmPackages_4.lld;
   lld_5 = llvmPackages_5.lld;
   lld_6 = llvmPackages_6.lld;
+  lld_7 = llvmPackages_7.lld;
 
   lldb = llvmPackages.lldb;
   lldb_4 = llvmPackages_4.lldb;
   lldb_5 = llvmPackages_5.lldb;
   lldb_6 = llvmPackages_6.lldb;
+  lldb_7 = llvmPackages_7.lldb;
 
   llvm = llvmPackages.llvm;
   llvm-manpages = llvmPackages.llvm-manpages;
 
+  llvm_7  = llvmPackages_7.llvm;
   llvm_6  = llvmPackages_6.llvm;
   llvm_5  = llvmPackages_5.llvm;
   llvm_4  = llvmPackages_4.llvm;
@@ -7050,6 +7061,14 @@ with pkgs;
     stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4'
   });
 
+  llvmPackages_7 = callPackage ../development/compilers/llvm/7 ({
+    inherit (stdenvAdapters) overrideCC;
+    buildLlvmTools = buildPackages.llvmPackages_7.tools;
+    targetLlvmLibraries = targetPackages.llvmPackages_7.libraries;
+  } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) {
+    stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4'
+  });
+
   manticore = callPackage ../development/compilers/manticore { };
 
   mentorToolchains = recurseIntoAttrs (
@@ -7808,6 +7827,8 @@ with pkgs;
 
   wasm = callPackage ../development/interpreters/wasm { };
 
+  wasm-gc = callPackage ../development/interpreters/wasm-gc { };
+
 
   ### DEVELOPMENT / MISC
 
@@ -11627,6 +11648,7 @@ with pkgs;
 
   protobuf = protobuf3_4;
 
+  protobuf3_6 = callPackage ../development/libraries/protobuf/3.6.nix { };
   protobuf3_5 = callPackage ../development/libraries/protobuf/3.5.nix { };
   protobuf3_4 = callPackage ../development/libraries/protobuf/3.4.nix { };
   protobuf3_1 = callPackage ../development/libraries/protobuf/3.1.nix { };
@@ -14718,6 +14740,8 @@ with pkgs;
 
   tunctl = callPackage ../os-specific/linux/tunctl { };
 
+  twa = callPackage ../tools/networking/twa { };
+
   # Upstream U-Boots:
   inherit (callPackage ../misc/uboot {})
     buildUBoot
@@ -15321,6 +15345,8 @@ with pkgs;
 
   ucs-fonts = callPackage ../data/fonts/ucs-fonts { };
 
+  ultimate-oldschool-pc-font-pack = callPackage ../data/fonts/ultimate-oldschool-pc-font-pack { };
+
   uni-vga = callPackage ../data/fonts/uni-vga { };
 
   unifont = callPackage ../data/fonts/unifont { };
@@ -15519,12 +15545,7 @@ with pkgs;
 
 
   go-ethereum = self.altcoins.go-ethereum;
-  ethsign = self.altcoins.ethsign;
   ethabi = self.altcoins.ethabi;
-  ethrun = self.altcoins.ethrun;
-  seth = self.altcoins.seth;
-  dapp = self.altcoins.dapp;
-  hevm = self.altcoins.hevm;
 
   parity = self.altcoins.parity;
   parity-beta = self.altcoins.parity-beta;
@@ -16951,9 +16972,7 @@ with pkgs;
     extra-packages = [ csound ];
   };
 
-  jackline = callPackage ../applications/networking/instant-messengers/jackline {
-    ocamlPackages = ocaml-ng.ocamlPackages_4_05;
-  };
+  jackline = callPackage ../applications/networking/instant-messengers/jackline { };
 
   slack = callPackage ../applications/networking/instant-messengers/slack { };
 
@@ -18995,7 +19014,7 @@ with pkgs;
 
   tree = callPackage ../tools/system/tree {};
 
-  treesheets = callPackage ../applications/office/treesheets { wxGTK = wxGTK30; };
+  treesheets = callPackage ../applications/office/treesheets { wxGTK = wxGTK31; };
 
   trezor-bridge = callPackage ../applications/networking/browsers/mozilla-plugins/trezor { };
 
@@ -19603,6 +19622,8 @@ with pkgs;
 
   xss-lock = callPackage ../misc/screensavers/xss-lock { };
 
+  xloadimage = callPackage ../tools/X11/xloadimage { };
+
   xssproxy = callPackage ../misc/screensavers/xssproxy { };
 
   xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { };
@@ -22013,6 +22034,8 @@ with pkgs;
     libsemanage = libsemanage.override { python = python3; };
   };
 
+  shades-of-gray-theme = callPackage ../misc/themes/shades-of-gray { };
+
   sierra-gtk-theme = callPackage ../misc/themes/sierra { };
 
   slock = callPackage ../misc/screensavers/slock {
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 0dd0e8edf17a..bbb028ceb4b8 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -36,7 +36,10 @@ let
     });
   };
 
-in rec {
+  # Use this rather than `rec { ... }` below for sake of overlays.
+  inherit (pkgs.haskell) compiler packages;
+
+in {
   lib = haskellLib;
 
   compiler = {
@@ -44,41 +47,35 @@ in rec {
     ghc7103Binary = callPackage ../development/compilers/ghc/7.10.3-binary.nix { };
     ghc821Binary = callPackage ../development/compilers/ghc/8.2.1-binary.nix { };
 
-    ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix rec {
+    ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix {
       bootPkgs = packages.ghc7103Binary;
-      inherit (bootPkgs) hscolour;
       buildLlvmPackages = buildPackages.llvmPackages_35;
       llvmPackages = pkgs.llvmPackages_35;
     };
-    ghc802 = callPackage ../development/compilers/ghc/8.0.2.nix rec {
+    ghc802 = callPackage ../development/compilers/ghc/8.0.2.nix {
       bootPkgs = packages.ghc7103Binary;
-      inherit (bootPkgs) hscolour;
       sphinx = pkgs.python27Packages.sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_37;
       llvmPackages = pkgs.llvmPackages_37;
     };
-    ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix rec {
+    ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix {
       bootPkgs = packages.ghc821Binary;
-      inherit (bootPkgs) hscolour alex happy;
       sphinx = pkgs.python3Packages.sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_39;
       llvmPackages = pkgs.llvmPackages_39;
     };
-    ghc843 = callPackage ../development/compilers/ghc/8.4.3.nix rec {
+    ghc843 = callPackage ../development/compilers/ghc/8.4.3.nix {
       bootPkgs = packages.ghc821Binary;
-      inherit (bootPkgs) alex happy hscolour;
       buildLlvmPackages = buildPackages.llvmPackages_5;
       llvmPackages = pkgs.llvmPackages_5;
     };
-    ghc861 = callPackage ../development/compilers/ghc/8.6.1.nix rec {
+    ghc861 = callPackage ../development/compilers/ghc/8.6.1.nix {
       bootPkgs = packages.ghc822;
-      inherit (bootPkgs) alex happy hscolour;
       buildLlvmPackages = buildPackages.llvmPackages_6;
       llvmPackages = pkgs.llvmPackages_6;
     };
-    ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec {
+    ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
       bootPkgs = packages.ghc821Binary;
-      inherit (bootPkgs) alex happy hscolour;
       buildLlvmPackages = buildPackages.llvmPackages_5;
       llvmPackages = pkgs.llvmPackages_5;
     };
@@ -91,15 +88,13 @@ in rec {
       bootPkgs = packages.ghc802;
       inherit (pkgs) cabal-install;
     };
-    ghcjs82 = callPackage ../development/compilers/ghcjs-ng rec {
+    ghcjs82 = callPackage ../development/compilers/ghcjs-ng {
       bootPkgs = packages.ghc822;
-      inherit (bootPkgs) alex happy;
       ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.2/git.json;
       stage0 = ../development/compilers/ghcjs-ng/8.2/stage0.nix;
     };
-    ghcjs84 = callPackage ../development/compilers/ghcjs-ng rec {
+    ghcjs84 = callPackage ../development/compilers/ghcjs-ng {
       bootPkgs = packages.ghc843;
-      inherit (bootPkgs) alex happy;
       ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.4/git.json;
       stage0 = ../development/compilers/ghcjs-ng/8.4/stage0.nix;
       ghcjsDepOverrides = callPackage ../development/compilers/ghcjs-ng/8.4/dep-overrides.nix {};
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index f5e5cfb3972b..779a24352bf8 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -220,6 +220,12 @@ let
 
     digestif =  callPackage ../development/ocaml-modules/digestif { };
 
+    doc-ock =  callPackage ../development/ocaml-modules/doc-ock { };
+
+    doc-ock-html =  callPackage ../development/ocaml-modules/doc-ock-html { };
+
+    doc-ock-xml =  callPackage ../development/ocaml-modules/doc-ock-xml { };
+
     dolmen =  callPackage ../development/ocaml-modules/dolmen { };
 
     dolog = callPackage ../development/ocaml-modules/dolog { };
@@ -240,8 +246,6 @@ let
 
     erm_xmpp = callPackage ../development/ocaml-modules/erm_xmpp { };
 
-    erm_xmpp_0_3 = callPackage ../development/ocaml-modules/erm_xmpp/0.3.nix { };
-
     estring = callPackage ../development/ocaml-modules/estring { };
 
     ezjsonm = callPackage ../development/ocaml-modules/ezjsonm { };
@@ -535,6 +539,8 @@ let
 
     octavius = callPackage ../development/ocaml-modules/octavius { };
 
+    odoc = callPackage ../development/ocaml-modules/odoc { };
+
     ojquery = callPackage ../development/ocaml-modules/ojquery { };
 
     omd = callPackage ../development/ocaml-modules/omd { };
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index f235cb639df4..0f8f8b5dd30c 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -450,11 +450,11 @@ let
 
   phpcs = pkgs.stdenv.mkDerivation rec {
     name = "phpcs-${version}";
-    version = "3.3.1";
+    version = "3.3.2";
 
     src = pkgs.fetchurl {
       url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
-      sha256 = "0kw1ffr688wbcip2hmr7yi7bpdf4kzwh22yvxw17lyddzq6vrqaw";
+      sha256 = "0np3bsj32mwyrcccw5pgypz7wchd5l89bq951w9a7bxh80gjhak9";
     };
 
     phases = [ "installPhase" ];
@@ -477,11 +477,11 @@ let
 
   phpcbf = pkgs.stdenv.mkDerivation rec {
     name = "phpcbf-${version}";
-    version = "3.3.1";
+    version = "3.3.2";
 
     src = pkgs.fetchurl {
       url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
-      sha256 = "0q75h8y4rbysyzh3i5nzqqln2d8592p0sz6y11rr2hz0g9qw4gim";
+      sha256 = "1qxcd7lkqrfjibkrqq1f5szrcjmd6682mwaxha7v93pj9f92wgn4";
     };
 
     phases = [ "installPhase" ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index df28860accff..c8fc8c64de39 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -560,6 +560,8 @@ in {
 
   serversyncstorage = callPackage ../development/python-modules/serversyncstorage {};
 
+  shellingham = callPackage ../development/python-modules/shellingham {};
+
   simpleeval = callPackage ../development/python-modules/simpleeval { };
 
   singledispatch = callPackage ../development/python-modules/singledispatch { };
@@ -1544,6 +1546,10 @@ in {
 
   click = callPackage ../development/python-modules/click {};
 
+  click-completion = callPackage ../development/python-modules/click-completion {};
+
+  click-didyoumean = callPackage ../development/python-modules/click-didyoumean {};
+
   click-log = callPackage ../development/python-modules/click-log {};
 
   click-plugins = callPackage ../development/python-modules/click-plugins {};
@@ -1841,6 +1847,8 @@ in {
 
   pyjade = callPackage ../development/python-modules/pyjade {};
 
+  pyjet = callPackage ../development/python-modules/pyjet {};
+
   PyLD = callPackage ../development/python-modules/PyLD { };
 
   python-jose = callPackage ../development/python-modules/python-jose {};
@@ -2201,27 +2209,9 @@ in {
 
   elasticsearch = callPackage ../development/python-modules/elasticsearch { };
 
-  elasticsearchdsl = buildPythonPackage (rec {
-    name = "elasticsearch-dsl-0.0.9";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/e/elasticsearch-dsl/${name}.tar.gz";
-      sha256 = "1gdcdshk881vy18p0czcmbb3i4s5hl8llnfg6961b6x7jkvhihbj";
-    };
-
-    buildInputs = with self; [ covCore dateutil elasticsearch mock pytest pytestcov unittest2 urllib3 pytz ];
-
-    # ImportError: No module named test_elasticsearch_dsl
-    # Tests require a local instance of elasticsearch
-    doCheck = false;
-
-    meta = {
-      description = "Python client for Elasticsearch";
-      homepage = https://github.com/elasticsearch/elasticsearch-dsl-py;
-      license = licenses.asl20;
-      maintainers = with maintainers; [ desiderius ];
-    };
-  });
+  elasticsearch-dsl = callPackage ../development/python-modules/elasticsearch-dsl { };
+  # alias
+  elasticsearchdsl = self.elasticsearch-dsl;
 
   elasticsearch-curator = callPackage ../development/python-modules/elasticsearch-curator { };
 
@@ -12385,6 +12375,8 @@ in {
 
   shapely = callPackage ../development/python-modules/shapely { };
 
+  sharedmem = callPackage ../development/python-modules/sharedmem { };
+
   soco = callPackage ../development/python-modules/soco { };
 
   sopel = buildPythonPackage rec {
diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix
index 06978d1067bf..7637371a40f1 100644
--- a/pkgs/top-level/stage.nix
+++ b/pkgs/top-level/stage.nix
@@ -83,7 +83,7 @@ let
     inherit (super.stdenv) buildPlatform hostPlatform targetPlatform;
   in {
     inherit buildPlatform hostPlatform targetPlatform;
-    inherit (buildPlatform) system;
+    inherit (hostPlatform) system;
   };
 
   splice = self: super: import ./splice.nix lib self (buildPackages != null);