From 2da936e61fd3c943f10f5749c6f88b1eb70941fc Mon Sep 17 00:00:00 2001
From: Robin Gloster <mail@glob.in>
Date: Fri, 4 May 2018 18:46:36 +0200
Subject: [PATCH 01/92] gcc: default to gcc8

---
 pkgs/top-level/all-packages.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a37de17c696..3aaeb5bad11 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6072,7 +6072,7 @@ with pkgs;
   gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
 
   gccFun = callPackage ../development/compilers/gcc/7;
-  gcc = gcc7;
+  gcc = gcc8;
   gcc-unwrapped = gcc.cc;
 
   gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override {

From c10842fe0b27acb8809181a5eaa2da97ee5d3ce3 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 9 May 2018 17:00:06 +0200
Subject: [PATCH 02/92] libomxil-bellagio: fix build on gcc8

Added the `-Wno-error=array-bounds` flag. Fixes #40213.
---
 pkgs/development/libraries/libomxil-bellagio/default.nix | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/pkgs/development/libraries/libomxil-bellagio/default.nix b/pkgs/development/libraries/libomxil-bellagio/default.nix
index 28c8a915c63..c640d8a8cd2 100644
--- a/pkgs/development/libraries/libomxil-bellagio/default.nix
+++ b/pkgs/development/libraries/libomxil-bellagio/default.nix
@@ -14,6 +14,10 @@ stdenv.mkDerivation rec {
 
   patches = [ ./fedora-fixes.patch ];
 
+  # Fix for #40213, probably permanent, because upstream doesn't seem to be
+  # developed anymore. Alternatively, gcc7Stdenv could be used.
+  NIX_CFLAGS_COMPILE = "-Wno-error=array-bounds";
+
   meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/omxil/;
     description = "An opensource implementation of the Khronos OpenMAX Integration Layer API to access multimedia components";

From 3a395ccb57f3d918a361c646f0d7765be63f90a6 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 9 May 2018 22:34:04 +0200
Subject: [PATCH 03/92] systemd: suppress certain warnings to compile under
 gcc8

---
 pkgs/os-specific/linux/systemd/default.nix | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index 58a1c7ca714..593dbfe181e 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -17,6 +17,7 @@ let
   pythonLxmlEnv = buildPackages.python3Packages.python.withPackages ( ps: with ps; [ python3Packages.lxml ]);
 
 in stdenv.mkDerivation rec {
+  # To whoever updates this to 239: check the todo on line 173.
   version = "238";
   name = "systemd-${version}";
 
@@ -166,6 +167,12 @@ in stdenv.mkDerivation rec {
       "-USYSTEMD_CGROUP_AGENT_PATH" "-DSYSTEMD_CGROUP_AGENT_PATH=\"/run/current-system/systemd/lib/systemd/systemd-cgroups-agent\""
 
       "-USYSTEMD_BINARY_PATH" "-DSYSTEMD_BINARY_PATH=\"/run/current-system/systemd/lib/systemd/systemd\""
+
+
+      # Temporary flags to get this to compile under GCC8.
+      # TODO when updating (to systemd 239): remove this.
+      "-Wno-maybe-uninitialized"
+      "-Wno-error=format-truncation"
     ];
 
   postInstall = ''

From d93b3157c5b55943a7185690c09ed3dd28e238fe Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Sun, 13 May 2018 14:14:09 +0200
Subject: [PATCH 04/92] nasm: set -Wno-error=attributes for gcc8 (#40431)

---
 pkgs/development/compilers/nasm/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/compilers/nasm/default.nix b/pkgs/development/compilers/nasm/default.nix
index 89dd7dc3fdc..26a2892fbbd 100644
--- a/pkgs/development/compilers/nasm/default.nix
+++ b/pkgs/development/compilers/nasm/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
     make golden && make test
   '';
 
+  NIX_CFLAGS_COMPILE="-Wno-error=attributes";
+
   meta = with stdenv.lib; {
     homepage = http://www.nasm.us/;
     description = "An 80x86 and x86-64 assembler designed for portability and modularity";

From 116cce8b5f868c18b91e67fb3b5ba0eed093e62e Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Sun, 13 May 2018 17:26:27 +0200
Subject: [PATCH 05/92] libglvnd: set -Wno-error=array-bounds (#40432)

---
 pkgs/development/libraries/libglvnd/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/libraries/libglvnd/default.nix b/pkgs/development/libraries/libglvnd/default.nix
index 7e1a2b54968..0661c56f016 100644
--- a/pkgs/development/libraries/libglvnd/default.nix
+++ b/pkgs/development/libraries/libglvnd/default.nix
@@ -20,6 +20,8 @@ in stdenv.mkDerivation rec {
     "-UDEFAULT_EGL_VENDOR_CONFIG_DIRS"
     # FHS paths are added so that non-NixOS applications can find vendor files.
     "-DDEFAULT_EGL_VENDOR_CONFIG_DIRS=\"${driverLink}/share/glvnd/egl_vendor.d:/etc/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d\""
+
+    "-Wno-error=array-bounds"
   ];
 
   # Indirectly: https://bugs.freedesktop.org/show_bug.cgi?id=35268

From 836404df95a653494abd843e56dd639d6e1bfd77 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Mon, 14 May 2018 21:27:56 +0200
Subject: [PATCH 06/92] gcc: reset default to gcc7 on darwin

---
 pkgs/top-level/all-packages.nix | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3aaeb5bad11..0993d59df56 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6072,7 +6072,8 @@ with pkgs;
   gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
 
   gccFun = callPackage ../development/compilers/gcc/7;
-  gcc = gcc8;
+  # Temporary solution until #40038 is fixed
+  gcc = if hostPlatform.isDarwin then gcc7 else gcc8;
   gcc-unwrapped = gcc.cc;
 
   gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override {

From 87fd200b9a66a0dd0d7e01247ed30643d98f31fa Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Mon, 14 May 2018 21:28:17 +0200
Subject: [PATCH 07/92] gcc8: mark as broken on darwin

---
 pkgs/development/compilers/gcc/8/default.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix
index 2465e6149c0..494f37c25e4 100644
--- a/pkgs/development/compilers/gcc/8/default.nix
+++ b/pkgs/development/compilers/gcc/8/default.nix
@@ -439,6 +439,9 @@ stdenv.mkDerivation ({
       stdenv.lib.platforms.linux ++
       stdenv.lib.platforms.freebsd ++
       stdenv.lib.platforms.darwin;
+
+    # See #40038
+    broken = stdenv.isDarwin;
   };
 }
 

From 7feb762344beca06540d073301ccc5217284ee68 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Tue, 15 May 2018 15:39:16 +0200
Subject: [PATCH 08/92] gcc8: s/hostPlatform/stdenv/

---
 pkgs/top-level/all-packages.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0993d59df56..5ef4a36181d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6073,7 +6073,7 @@ with pkgs;
 
   gccFun = callPackage ../development/compilers/gcc/7;
   # Temporary solution until #40038 is fixed
-  gcc = if hostPlatform.isDarwin then gcc7 else gcc8;
+  gcc = if stdenv.isDarwin then gcc7 else gcc8;
   gcc-unwrapped = gcc.cc;
 
   gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override {

From 3ec39daf0ecf3c1855c31fff8655868b764afb23 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Tue, 15 May 2018 15:39:31 +0200
Subject: [PATCH 09/92] gcc8: disable test on darwin

---
 pkgs/top-level/release.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 5233051cad8..cffb56ab00b 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -110,7 +110,7 @@ let
               jobs.tests.cc-wrapper-gcc7.x86_64-linux
               jobs.tests.cc-wrapper-gcc7.x86_64-darwin
               jobs.tests.cc-wrapper-gcc8.x86_64-linux
-              jobs.tests.cc-wrapper-gcc8.x86_64-darwin
+              # jobs.tests.cc-wrapper-gcc8.x86_64-darwin
               jobs.tests.cc-wrapper-clang.x86_64-linux
               jobs.tests.cc-wrapper-clang.x86_64-darwin
               jobs.tests.cc-wrapper-libcxx.x86_64-linux

From 68cedc0b48c04366b326e8f2eb57b32c65c507a8 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 10 May 2018 20:10:06 -0500
Subject: [PATCH 10/92] release: disable tests.cc-wrapper-gcc8.x86_64-darwin

This test is broken because gcc8.x86_64-darwin is broken. Please add
the test back in once we have fixed it!

Job: https://hydra.nixos.org/job/nixpkgs/trunk/gcc8.x86_64-darwin
Issue: #40038
---
 pkgs/top-level/release.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index cffb56ab00b..efced59ad91 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -110,7 +110,10 @@ let
               jobs.tests.cc-wrapper-gcc7.x86_64-linux
               jobs.tests.cc-wrapper-gcc7.x86_64-darwin
               jobs.tests.cc-wrapper-gcc8.x86_64-linux
+
+              # broken see issue #40038
               # jobs.tests.cc-wrapper-gcc8.x86_64-darwin
+
               jobs.tests.cc-wrapper-clang.x86_64-linux
               jobs.tests.cc-wrapper-clang.x86_64-darwin
               jobs.tests.cc-wrapper-libcxx.x86_64-linux

From 479f6960d8d7a48c34bf413019068bcc8822f836 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 16 May 2018 11:25:34 +0200
Subject: [PATCH 11/92] llvm6: default to gcc7 instead of gcc8

---
 pkgs/top-level/all-packages.nix | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5ef4a36181d..f609993a014 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6706,8 +6706,10 @@ with pkgs;
 
   llvmPackages_6 = callPackage ../development/compilers/llvm/6 ({
     inherit (stdenvAdapters) overrideCC;
-  } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) {
-    stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4'
+  } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU) {
+    stdenv = overrideCC stdenv (if stdenv.hostPlatform.isi686 then gcc6 else gcc7);
+    # with gcc-7 on i686: undefined reference to `__divmoddi4'
+    # Failing tests with gcc8.
   });
 
   manticore = callPackage ../development/compilers/manticore { };

From d2f213216001232aa979f48b15a71999850635e0 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 16 May 2018 21:04:45 +0200
Subject: [PATCH 12/92] iasl: 20180313 -> 20180508

---
 pkgs/development/compilers/iasl/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/iasl/default.nix b/pkgs/development/compilers/iasl/default.nix
index 22f80ae559f..6cf4c85fb20 100644
--- a/pkgs/development/compilers/iasl/default.nix
+++ b/pkgs/development/compilers/iasl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "iasl-${version}";
-  version = "20180313";
+  version = "20180508";
 
   src = fetchurl {
     url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
-    sha256 = "05ab2xfv9wqwbzjaa9xqgrvvan87rxv29hw48h1gcckpc5smp2wm";
+    sha256 = "1n7lqmv77kg28drahvxzybwl9v4hzwi8i7xkpgliclfcp5ff909b";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";

From 482a41f025a275d2f60f3d0067ca30912f146ee6 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 16 May 2018 21:10:59 +0200
Subject: [PATCH 13/92] iasl: Temporary fix for acpica/acpica/#387

---
 pkgs/development/compilers/iasl/default.nix | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/compilers/iasl/default.nix b/pkgs/development/compilers/iasl/default.nix
index 6cf4c85fb20..a514672016f 100644
--- a/pkgs/development/compilers/iasl/default.nix
+++ b/pkgs/development/compilers/iasl/default.nix
@@ -9,7 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "1n7lqmv77kg28drahvxzybwl9v4hzwi8i7xkpgliclfcp5ff909b";
   };
 
-  NIX_CFLAGS_COMPILE = "-O3";
+  NIX_CFLAGS_COMPILE = [
+    "-O3"
+    # See: https://github.com/acpica/acpica/issues/387:
+    "-Wno-error=format-overflow"
+  ];
 
   buildFlags = "iasl";
 

From 5c225ca10cd4c2a77ca86d6f549a5903e999f0f4 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Wed, 16 May 2018 23:36:32 +0200
Subject: [PATCH 14/92] dhcp: fix compilation on gcc8 (#40605)

---
 pkgs/tools/networking/dhcp/default.nix | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/pkgs/tools/networking/dhcp/default.nix b/pkgs/tools/networking/dhcp/default.nix
index 8b1ac864a43..41a83770fed 100644
--- a/pkgs/tools/networking/dhcp/default.nix
+++ b/pkgs/tools/networking/dhcp/default.nix
@@ -33,7 +33,10 @@ stdenv.mkDerivation rec {
     "--localstatedir=/var"
   ] ++ stdenv.lib.optionals (openldap != null) [ "--with-ldap" "--with-ldapcrypto" ];
 
-  NIX_CFLAGS_COMPILE = [ "-Wno-error=pointer-compare" ];
+  NIX_CFLAGS_COMPILE = [
+    "-Wno-error=pointer-compare"
+    "-Wno-error=format-truncation"
+  ];
 
   installFlags = [ "DESTDIR=\${out}" ];
 

From 456369f7e6ea0206b659377363f9c3c1d71b191a Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Thu, 17 May 2018 23:02:09 +0200
Subject: [PATCH 15/92] hdf5: use gcc7 instead of gcc8 (#40704)

---
 pkgs/top-level/all-packages.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5f6ffe4423e..f4c25def875 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2884,6 +2884,7 @@ with pkgs;
   };
 
   hdf5 = callPackage ../tools/misc/hdf5 {
+    stdenv = gcc7Stdenv;
     gfortran = null;
     szip = null;
     mpi = null;

From b12448c001fd6f34099685662cb919752c84ab1f Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Fri, 18 May 2018 17:05:04 +0200
Subject: [PATCH 16/92] elfutils: add patch that fixes compilation under gcc8
 (#40705)

* elfutils: add patch that fixes compilation under gcc8

* elfutils: follow advice from @jtojnar
---
 pkgs/development/tools/misc/elfutils/default.nix | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index e89aba67999..d8738bf62f9 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -10,7 +10,16 @@ stdenv.mkDerivation rec {
     sha256 = "0rp0r54z44is49c594qy7hr211nhb00aa5y7z74vsybbaxslg10z";
   };
 
-  patches = ./debug-info-from-env.patch;
+  patches = [
+    ./debug-info-from-env.patch
+
+    /* For gcc8. Fixes -Werror=packed-not-aligned errors.
+    incorporated in upstream, so can probably be removed at next update */
+    (fetchurl {
+      url = http://git.openembedded.org/openembedded-core/plain/meta/recipes-devtools/elfutils/files/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch?id=49aae1d75ff1c6a9643c30a8cc5776a2ffa83dd3;
+      sha256 = "11sg2dn3vjvgq2fb9n8pgw1ajvs3gliks7djg1794wxlfg0rvifb";
+    })
+  ];
 
   hardeningDisable = [ "format" ];
 

From a581c10acab775776b66285dee70ab8e9eddc9af Mon Sep 17 00:00:00 2001
From: Uli Baum <xeji@cat3.de>
Date: Sat, 19 May 2018 23:07:08 +0200
Subject: [PATCH 17/92] Revert "iasl: 20180313 -> 20180508"

Broke xen and virtualbox.
This reverts commit d2f213216001232aa979f48b15a71999850635e0.
---
 pkgs/development/compilers/iasl/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/iasl/default.nix b/pkgs/development/compilers/iasl/default.nix
index a514672016f..535b1a33d13 100644
--- a/pkgs/development/compilers/iasl/default.nix
+++ b/pkgs/development/compilers/iasl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "iasl-${version}";
-  version = "20180508";
+  version = "20180313";
 
   src = fetchurl {
     url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
-    sha256 = "1n7lqmv77kg28drahvxzybwl9v4hzwi8i7xkpgliclfcp5ff909b";
+    sha256 = "05ab2xfv9wqwbzjaa9xqgrvvan87rxv29hw48h1gcckpc5smp2wm";
   };
 
   NIX_CFLAGS_COMPILE = [

From 8a999d15ebfb929a5f5fc5b08be6a23848f29710 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Tue, 5 Jun 2018 20:06:09 +0200
Subject: [PATCH 18/92] iasl: integrate upstream patch for acpica/acpica#387
 (#41481)

---
 pkgs/development/compilers/iasl/default.nix | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/compilers/iasl/default.nix b/pkgs/development/compilers/iasl/default.nix
index 535b1a33d13..b923f7f6519 100644
--- a/pkgs/development/compilers/iasl/default.nix
+++ b/pkgs/development/compilers/iasl/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, bison, flex}:
+{stdenv, fetchurl, fetchpatch, bison, flex}:
 
 stdenv.mkDerivation rec {
   name = "iasl-${version}";
@@ -11,14 +11,18 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = [
     "-O3"
-    # See: https://github.com/acpica/acpica/issues/387:
-    "-Wno-error=format-overflow"
   ];
 
   buildFlags = "iasl";
 
   buildInputs = [ bison flex ];
 
+  patches = fetchpatch {
+    /* https://github.com/acpica/acpica/pull/389 */
+    url = "https://github.com/acpica/acpica/commit/935ca65f7806a3ef9bd02a947e50f3a1f586ac67.patch";
+    sha256 = "0jz4bakifphm425shbd1j99hldgy71m7scl8mwibm441d56l3ydf";
+  };
+
   installPhase =
     ''
       install -d $out/bin

From 6007f737e1cc7bf5d4db382abaa7e2be316e7f56 Mon Sep 17 00:00:00 2001
From: taku0 <mxxouy6x3m_github@tatapa.org>
Date: Thu, 29 Aug 2019 20:51:54 +0900
Subject: [PATCH 19/92] thunderbird-bin: 60.8.0 -> 68.0

---
 .../mailreaders/thunderbird-bin/default.nix   |  10 +-
 .../thunderbird-bin/release_sources.nix       | 496 ++++++++++--------
 2 files changed, 272 insertions(+), 234 deletions(-)

diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index 5e005cd6669..680d7652b5a 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -21,12 +21,15 @@
 , libX11
 , libXScrnSaver
 , libXcomposite
+, libXcursor
 , libXdamage
 , libXext
 , libXfixes
+, libXi
 , libXinerama
 , libXrender
 , libXt
+, libxcb
 , libcanberra-gtk2
 , libgnome
 , libgnomeui
@@ -101,12 +104,15 @@ stdenv.mkDerivation {
       libX11
       libXScrnSaver
       libXcomposite
+      libXcursor
       libXdamage
       libXext
       libXfixes
+      libXi
       libXinerama
       libXrender
       libXt
+      libxcb
       libcanberra-gtk2
       libgnome
       libgnomeui
@@ -153,10 +159,12 @@ stdenv.mkDerivation {
       Categories=Application;Network;
       EOF
 
+      # SNAP_NAME: https://github.com/NixOS/nixpkgs/pull/61980
       wrapProgram "$out/bin/thunderbird" \
         --argv0 "$out/bin/.thunderbird-wrapped" \
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:" \
-        --suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
+        --suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS" \
+        --set SNAP_NAME "thunderbird"
     '';
 
   passthru.updateScript = import ./../../browsers/firefox-bin/update.nix {
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index 8e1f2a0f65f..d8f5e58d9fe 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,585 +1,615 @@
 {
-  version = "60.8.0";
+  version = "68.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ar/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ar/thunderbird-68.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "a10386c0c55e52571c5b922a1531a891a98caa9a1b118ffa6e5e0655b838c207ba2638988d6fdeeb62135bbd19b071f9c2dfd2c52379e4f8ca2012c17aa5a065";
+      sha512 = "4fad3c7c4099f70253bfee450bcefe458bec61430720fcadde1fe8a1cbb2e62a18d9c55943f850c57f8d788c973774e24590823086cfacbbb2ccd8a99ce4faae";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ast/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ast/thunderbird-68.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "fecf4367234a794e22ccc6665622bf083bbaf8ecb1f8e03bf64c2bfa91028ff6a02497ae5ebdf474b4073fff121b23a55d8373ce16e282b9630bf6bd6223b555";
+      sha512 = "aac850773381d7fdb4d50fafe670449301f073f7388f92a1ca38d9b7256ffcd244b63e9fc0ff2f8ef5ccd853b97016b7e05eb751be1bdc8df9623481f15d55e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/be/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/be/thunderbird-68.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "3ffc3ab21f3a070d8f465591db242b5cc0485cb2655373fc697298825f46a5f2f93301684ff69510ea2d74743a8e00e23e7f56e2a29638484bed40089714b7ad";
+      sha512 = "6521d818984bbfba195e847735c1228ff637d3079cff1f5a461ac20a079d325adfc1d7b2eca54f63e584a5cbd2007cef42a625597276a1810158931335f09cd9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/bg/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/bg/thunderbird-68.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "e789ca25f887bc9b228fd29796b38cb061ba931ebb0e2d2b15b290771b2312d4051d248dd467c64acc5cbdc1d5c1ae23e0d5b5dba4a35983ffa44062c7632bbe";
+      sha512 = "a0a738b6877225a5b98691d53a8f4a4bf575472a0d5feb8b77a67cd1fc9951772f1ab507b7ba460c0b62b87ab476c5c94130cbe7275692e3a99e5d2ef0bd89bd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/br/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/br/thunderbird-68.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "5088057f31b2ff77f89b25e9c1638b2080981a489a392d928f259cce38916b9b7da89132d931363fc652c1711250e1e77fc56b0427674f0648229688ba3285dd";
+      sha512 = "58d21d9e55abed644eb16ba98a5fb3277e0a31b935d279b09745262952895c2c2aed31817e6157410137ff82fc5d242b64268f646c3b7b691c55c5f3ea36e0e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ca/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ca/thunderbird-68.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "3eb939b9a811254487eca4920ae84d33773d0963c77dfd84df7cf02a98b975d13d9088a70c2e8863f3290c6c7bfe6c7a240eda8e3bfdf3de28883c5d1e842e5f";
+      sha512 = "cd401259f2cc4ec71ff9d936a1f2f64a064afafed2e305bb359f79eddf1159cd6a7c84ce54cde6be94f6acd295dbedf54017d9f4592ee3637eea00496c7cfbf1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/cs/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cak/thunderbird-68.0.tar.bz2";
+      locale = "cak";
+      arch = "linux-x86_64";
+      sha512 = "45ea4af30ff93500d1671c6a0eeda993692b7204a7504a91ad30bfd5155add5af902205240fd62f80abe339224e686473f2d13f466ba96269347207ed3f628b5";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cs/thunderbird-68.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "867706fc4e459d0e7723e9ef0e86176822623ca85f446f1ab9935f7f7a95292da637d57ab6046a8ef4d8a40bd5fc37451a32cad71a2d45bf4e4cf7adccd44775";
+      sha512 = "9f81f92a3b1710d006cda79f1b92923c1ea637a24654bd622af9be1f53a0024c5daa77619443514c9e607cb62f96403f5b7f426b3692227c0b56d1b14f51ca97";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/cy/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cy/thunderbird-68.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "56d6485c397984b3394831169efe8bc2d7078d958358a37f1c9775b17bef0a4a347429838f122291f10e3dbc289865aaa475d3d3f4e7deaa2d22205690110c05";
+      sha512 = "c90467a78bc82667d974b1e94227b7d4185878654188967d97c11e419ec7a03e4e5e3636466a0b6d35beaa98b717a26341e3a652c3b21083ad8ad0b23f063ed1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/da/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/da/thunderbird-68.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "6d35e77a03b0a44e8629baa80eb1889892a0dcd7a1a7ef5f016a6133fd8c5555474fa3bae79e3c5c25b0618832e680ea505cdf82de268bb4cecad7187830ff4a";
+      sha512 = "f49bd5689d2a4dd311b22a23da9f26559685f1c4663eb1e482b45b79544ab4401a17701f33b6ad083e7a8983185fcb16fca4c8026138f24be495c6cbb6401488";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/de/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/de/thunderbird-68.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "7b6f65c2146eccd91db9f2a050722c28ff3c9ed8a9e7a822fc1558c6b56761ba68ee5fdbbf1324c35dc98b0b33e8e54709664b972ad2318dcdf4472251ef1d1f";
+      sha512 = "579d979cfa0bbe50fd0bbf0d15b38d90579bc065b488a2e9d4e3f18f505e71c50225d92185559578146097110760ed3807e1aefad4862d99e247447478d6bc42";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/dsb/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/dsb/thunderbird-68.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "fef020d88b4560b8eae5b81d9d36179719389c742a462682ca0afff942474158b1cdedeca6f348598ca89268bae3d953ac63debd972f7349ed8a7cb56e96cdd7";
+      sha512 = "8d16bf47d368a670cadb6a2655933d5b49a796272f7dafd948cac95a2ae541561a38fa418cd4ed0c4aa79ef63a441ee769eeb2a071734abf2cc1ba243d4f3ba5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/el/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/el/thunderbird-68.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "fae21025f07a7d0be663d6dda4cb43cdc2b4b488a76e4ab0bae304284b17598689ed32554066e1d00097479e1ca4f163473cee854b853acedc46887256a45d02";
+      sha512 = "579b9114af9fda86e79e6812946da858945e2034ed2f00e4244724ecdd680b7db5601a4d573b530dc15207caac9245f6883343684eb43f3ae2abb64853c0b54f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/en-GB/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/en-GB/thunderbird-68.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "cfb8f7770d1fa2ad12ac19a2f069840a37f13c352d4271c4dc479cf4cc1d3ac381053ef9046b4b0fe891b67097f5db674ed6281853b2ebab1fe9744bd113bb08";
+      sha512 = "f7caed8c3b49714e4449ef971ed1a21e40f28625c84e9342f63e5f73743689ee2c0e9ed4845f6667bd22732c62bd707db425f22a5c074dff8622cc4536ba9c29";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/en-US/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/en-US/thunderbird-68.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "c0eeec28c235be86760dca83941a202475846153a1b186ad948eb673e0c6b1e870cb1c485f5a1dd9ed885eaac52f36cdde4417ba86dca388c43c03299b0adcea";
+      sha512 = "257528761f0eca38528ded4b31329886093418f562aa2fac73b3a5bedda51fe80b34758c10afae1735cf37b37a86413dcf08642aecb1e8bea1fb6b0b94ade5c7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/es-AR/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/es-AR/thunderbird-68.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "151e9ecb12ee13dc9cf87040c5f90d9dfeb528e25889fb48d7bd5a9a47f7a6166402c1c4ebf96c9a4184d27e89cc13ff31079151f7ca2860ac91100d2dc7f6a2";
+      sha512 = "70a10e329b1031a2fd2ffb2b60459f0238ff3f5e5d80533f4be6cb22ae77692ec079ca3e146bd9a59edd09c266cec92d922a18ba45f8626a4bd44e290d3c0927";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/es-ES/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/es-ES/thunderbird-68.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "0209584bf7d1396d3d3f754e4f6cf3a6cfee2f7aeea9869edb60bdc832e87b9437f4962fe59a19df78ecd53681981e68bb6efc98e05f7ef50883a59983ddbb66";
+      sha512 = "a03098ad7d83b86cd316c56b69589370fb8bad041b93f90f61514b04e3d0e78385f779ed715c6e22e45597d1bf03676046cbc1eae7896bb2a309af3683c8bd1e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/et/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/et/thunderbird-68.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "766656029454d89be4fa8ac8ebfc61f25d86c6f8974abe1426cd96dd5b7492bbdf4f8568ac18a69fa4ac3acf4a28486f1184c0852d4ee29416d6dbf3ddee097f";
+      sha512 = "44efeaf030580dd7b55770627678808e34d689e85191852c2e5fcb223a0fdd0e5386f21f03524d0983aeded7f8ed99382ff2c372c8c5a1fdfe218bd5b10ccd80";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/eu/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/eu/thunderbird-68.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "db312b24b48677e47fa9ade4f04e219ec6a1aefb03239b60ba63c46659e86eadbec32513c494d48c90e303a87bcdd7280d7c4ae5be4df1a2c30159516bca5abd";
+      sha512 = "c670be5932d7e8bea28cffda7c119cfdfd5823f76b2c97251ec23ec16e420a8b7feb5f2251d89750b956d3bf3baff5d17393c05d8c265d0a98cc3faea8f85735";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/fi/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fi/thunderbird-68.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "003a0ca468ed7a7ab19065ef4a45504c9e95724112c6bb277c6e1964f8f642d5d1a7a4b135e412c81db5896eb00a831b089104563a9237c0594c2ad5c31c4814";
+      sha512 = "36aa0b47e9b5d91fbc812a3d63503924a8ca227d7b7084c1159419092b17da9c1b6e89fa046c636dbcff7776f9a1d8465e660b47f1753505f0d2eb85da9c3a7a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/fr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fr/thunderbird-68.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "5097831b1d77046583bd86dd124c48f2389a676a902cbdd4e408508452400f9d981c14475e43276ba31efa70bd3fe1bce5193bc9624de40e34a57319d6ede80f";
+      sha512 = "b1e7d345d3dd38725227b5e09c4f3cfcf29ed3a98b0580fbf6ae1ecab4414d09e307423495b75769a8d2ee3ab4700cd6eba3d95ce05612e1d8290d3f5a3ba988";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/fy-NL/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fy-NL/thunderbird-68.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "bb1170342797ccb3cada48fe654cbba2c02391f30666f3c14891d813692c21400c24f0f1e02d6cf975b88b8e92943feff8da5daf05b9535ae4730272b104d43e";
+      sha512 = "4065a083f49006dacf64f084c1bf26c4c1b8d53bca7eba7a56d66bb035eaae2c4528687c5c1e2213f92adbba17ff92eb54f897d3b0ef6d27b8effbee66ca555b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ga-IE/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ga-IE/thunderbird-68.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "a65089b76bb09f78bdd7c8c63e0fe4e68468a210a18069621d4b9fb3ef7cd54abe849fae983dd3e8f05bc5f7dfc3a03a64051587a9e65439fc5cb2c15836f13b";
+      sha512 = "2ae9a0860513e90d1742e5c17220b2367e61273eba04738cd29e9ab497b86f9a1d78b38b21da84b1f214f3368ee114d376b05eabe0aac9a1ec07ca6a4b399070";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/gd/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/gd/thunderbird-68.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "bca1e964554eccf2c69968380954dedd9e76fe2952becd06b0cd56ddf0e3936d6c40f7cfa5d9c8719cdb4b5181d47048d10a47e6c549e74b2ab72a0d7b89d1ad";
+      sha512 = "d2315aca9d8e5bb35b21cab46a48e51f09200b056da2682201c32eb4fd3d0379a24a6926ebcf11e9c70d70fd20152fc24d5197a78cdb3c8ea3cc2399d784b463";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/gl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/gl/thunderbird-68.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "d8ec696e056b44059ce713dfb86980da72441d9c53e17f30d0ce43408a16d3e4b2c8700e595639f7bbe3b59082fbdca49a1ecc47bdfa7704ba189198efeb1909";
+      sha512 = "52d9210e857c1b6cb665a2ffa71cfa5e67c3718b210e2b4b42839d8f25987170f1603fa55d324003a4be821ba74093ff92d632e688e44b87ebf51dafd02f69a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/he/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/he/thunderbird-68.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "bf9d9db17930dae863bc8803d7f8e39fad79c74712d16d3912968b8605372521cd1ec23f2cb4c8d05e67341176749c97e85072cef40a899570811b594a5d994c";
+      sha512 = "e7b5a16950be233fe8a49152184270a901bdb4bcc14769401d4b5a21fd2a3ab9d395ed8f6b61081330386723725252fceff09bf9fdde3a71135a98d8ae45089b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/hr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hr/thunderbird-68.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "62c626a6dbc65e69443e0e33bbcca131f2b0c3ab521ad74c9de355328fef0e26689e99f7e41111cee688400ffeb2f749f1fc73cf35dff8908f3661218e5df29c";
+      sha512 = "1ed224dc0864009edc6389f9b3b063f56b15be982c2e2915f1a2f773bfc78e6b81ec0ab02e03f7ade08f47260be597003f8119116576f4fe5dd490e85cd3d4ab";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/hsb/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hsb/thunderbird-68.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "72a7c2356748b59103457fdb22ebe471b68bbdb4c8e61b53c83e14a64f25bfc781070242f2bb04dccbacb52387ee3b7a2b5a66c2bb01d653b4d78ee5a4d3aa86";
+      sha512 = "f4bcd8a199bafd544687b1e890694dac2b598d4fd79818ab19441ae9be579a9928fd8c7fbae43e322fced15ff39314fbc88be94ce2fe12b5d2ec2ba003a219a3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/hu/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hu/thunderbird-68.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "b6e9b086b065555b2fdf3c243e72a37c1f7d1708b130ca060fc72cc4715514aed5a40ac19b497fdfc7b6d067d8a065ad16e077e8f1b6aa4f2f7204b47699c2a8";
+      sha512 = "28223aec237fce2f07b0c3b454a8339bbd2f195d6e263c5a5723e04bd5df1128d58a6bc6c7275cdbeefd5161a405a2d6340303faa79d9330abd0e70de9facbfb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/hy-AM/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hy-AM/thunderbird-68.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "7b4690527883906a6a6e2d2b6347b8d2bc1b6a16576b6970c2b7dd0a04b6f046337e191aeaae4b07e37b29a9e24db3848a2683c6f0d10923c1c7ccf4bc8a38f6";
+      sha512 = "d7dea23905f8bc8dfde92082f90278b76477eb3036c7fc4abe656e37af9d389d37f3b166492df210eeab03750d85cbcaf1340aaa26ab723ca1b70299b4a64ab6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/id/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/id/thunderbird-68.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "d6446e829d5126386535463e4b44551529108c22c1f5ea054cbced5d6ecae56c31d8a6af99620edfad62acf54844a3a0484b8892ee85fe7cf8676aa2010bc0f1";
+      sha512 = "f55ad81a1dc80838a9ab045899e0f16bb077d05d73119705f820f6fe8c8c7a550e05cc68cb7ca0aa8861cbd70bc9f061ba51a4749db6c37d90e7e7bda5dcccdf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/is/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/is/thunderbird-68.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "8527f8adbce559195b3487ac11b9ff7a716d4efbe4139289093b49e07b0767b99d90560695773433ccd838affe2e34f488e1051059213d79ef2c604aa5c239e5";
+      sha512 = "503c236102a15428e41a21b458ecc29986abff4e434f4e26ec9741b2facf39a8fc2ae9dff5aeb32fe3c9ca0dcb6e914a2acf229ae9caecdc4f064380f126ecf7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/it/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/it/thunderbird-68.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "3d376e4f8efeffae16c2a39fba40cf29433af35ffbcfc5d0a7491355a211ca25fd5157f64a4d9f4611ac0cfc7659cb7118f0e4db15f594767d0e8a7fca9bfa03";
+      sha512 = "51a736932baa5c810a29de46eba64b0fcd2703da38ba9449b6b06a9412562e80853367416c5b4d6c6834eb7a2186f434e426099ede56d9342860e4f3561455eb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ja/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ja/thunderbird-68.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "b9623d6902ad5f5d77b67b490d8df6f312c895257965580cf1108a4d9c3da78f3d021551f9e48ab56b92eb691c3c4007a7584b4681683b261bab7b6b7139ead3";
+      sha512 = "7a00080835155d301f65a35684d81f8e3a3be23d927d939da84a2a887057bca0b75d5b580a004b4f797af504a6812f71951bc3c75ccb24dad60b6cca770cc7a1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/kab/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ka/thunderbird-68.0.tar.bz2";
+      locale = "ka";
+      arch = "linux-x86_64";
+      sha512 = "eaf67c64275495fcb08aca63953406cd7815ec356ee0a1edca8a5e8dacd924a9c11e35dbe4ad17a1617199a5f66489bb553a7a5177eb629223b49a9adccff803";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/kab/thunderbird-68.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "33417e6604f706ff3bfab521c5bd890fcffd0f524e11d29fedafaf89ad5a7f6284598ef994059c00aed70ef921a08dfa763f57694976b365d3317aeab8209c6e";
+      sha512 = "9432bbba0965b6da04495b79ef4db3bdbe69476b20650b4d6407d921cf07d09950368f0c13211ea6743b621d486bf71dce0e60d8ceefd82b48a8f2581a3fd7ee";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/kk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/kk/thunderbird-68.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "05910b83e3c65b2be6c6382bb27f819f9d02e3a1f89c00afa22eb1e68ff04d6f39edf31468be245be1756f20e09cf9982ff0175017e91ff1fe08b62b2edea4f0";
+      sha512 = "9bfb99694bcf1227162607e2b674abb00343e4da3876999430d6014cbd4f4aa6c6e9ddca7c7f3b144d101c1a5a6d38772e3750f5feb41d1f304b89a8c1e6ec15";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ko/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ko/thunderbird-68.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "f12a92b58c02dba4cb2fc8e8a9f90025d23c3849590bb149a50416aac3e3c15e0c2817e7a4bc518f24e796ea851bb5746b7611e2faeea2767e0f63dc67f2cb37";
+      sha512 = "fd260740ccd74afae7af664775954acfd176b47176f48b5300f11bd77bc31205d0bbc2d06a701486e9742ffb38ad4aa2b253041b9d9518a4b9c7dbbe41aca264";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/lt/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/lt/thunderbird-68.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "06d12d4dffaaf863d77ab1fcc59517bec26732db4b81f6114602b9ad06a77d86d52a0b21066d93854459fc3087dce8d8087df635151f672194edf55d7903bacd";
+      sha512 = "fb7a7b6d0c7d58d13b3ec20c8176ee793cac5c53bf849e3b3c4aaeff0f3e897cc35e61a9dfa4055c691fd56f280f7b31e04999922c29ecc89294ea6eeac16cd3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ms/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ms/thunderbird-68.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "021f1843a788cd6285e4d56559b7042e161f0279b9b64234bb7cc39847f7f2011265e86a738b5926413f2e98e293fbb478d36322c9071b0f7346dbd07eb05a7b";
+      sha512 = "7490a8169079569143c63f85e7da299d28ea423fb95265e2e86ec724ff0da641e24a2e9ea612d180d523973522f40c250bfd56e66ee39b28cb9acf57f6be6831";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/nb-NO/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nb-NO/thunderbird-68.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "9913898a8b6ae8745f76aae51f82aa1fc9f71e410f458c3deaef5879521bbf1e25067709999a4c7722b42ae152eeed7016e5aa0437b8b3fc81d246b297f92f22";
+      sha512 = "7256820ea97851319e51616f6eb45617983e76e74b46ae62a02e22d13e2dd6abd590fd265aa6c88ac14b2f0276219580b6b9fbd956f1eaa38e6a93329b9c9621";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/nl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nl/thunderbird-68.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "006e2332079d8a837c42b44df7b7af01bf9363109a47158357438140a068a9a17b2eb1ecba351b49b3300dae5a8e3abb0938fa1222012a886e6a123f7612dfa7";
+      sha512 = "00f32145c861abd8f151d7840d0f01eb9d4190df65e5a179f999f3149477f2de7f796782eb7ef912fcbec005d65c76974185d1c0105dea862cbc22c821bc906d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/nn-NO/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nn-NO/thunderbird-68.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "022fb45fd0305cad23853277f2b18d22879a4d0523cbbb73a65209ac3d2a87782667e71c6903a6b944aa824ebe8d30421d511f346df7a511ae1f7c325d53de41";
+      sha512 = "3ac255b5bb4b352833fd56d5aceaba6d0ada571630a993729970ae99d5067f05ba22e6ef50fa7dd099c0eb5874f11aeed32718c56a80538e28b401ee6b7900a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/pl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pl/thunderbird-68.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "ecbad62e54f5b49fa89d0f8d00ccc3315cae71e0a46b25e3bb72b117ef4a8271d9374d82352a7ed75bb93fed9504ac883165911cb6423c5c993d75ee620e27c2";
+      sha512 = "19ab4bde9314dbed1bca7565698a7b1231767ef9cc792a49e7e9d679453ae8209e6f68c63ea0a24bd9e3a97328dceeedd109bfe28038108b52b9dad366f28787";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/pt-BR/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pt-BR/thunderbird-68.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "e9f2180eef290f0d0fb3b91eafafa7ea0a8cbbb7acc01758fafb56d6c56caa0ac5455b728013ac88d50757830a7f65a3e77423417abd3ee77238657c94461381";
+      sha512 = "68e28b657b885e7823dca0d091f2609556d560a50b5e6c285cdf467ae2b09743406baa2e544f17997519c219e0d4e8911115d30e7b0c35f09b956e28b311f8d8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/pt-PT/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pt-PT/thunderbird-68.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "20e448cdc26b9a27b2c42b7baa09d299ea9ea834bb3bfba284d5f907bdfe0170ba7ef611e0e7ddc1ccdf296781401fe32b80f5e909b68c12a23652c06b3c93c1";
+      sha512 = "41623568d2e78b821a89480836f8d8c739f6983b80ce26017d12fd9363016158fa6c629e030f63aba6e730e554b7717fd2ee58e0246aa82b46fe55d5d6be9933";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/rm/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/rm/thunderbird-68.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "62d71bc39dc895514eb2cb957205ad7379ce95bacf6d75e193e0d9eca34df300dbbbb9df3e4cf200a5c1266b1747949df54a969edae62b720b10d0d756ff4c08";
+      sha512 = "a2cabac0ff5e3bb4a8dde4e884ba4647792e0935ef0a61b56470c67d3ba9c2310a07c2d2da51f7b4cb5fc3e841dd385a2c64ff29d263333a91e2044a4ad3190e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ro/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ro/thunderbird-68.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "2a506e9c7d1f752452201ff78c0a2d678115404294200ad07317672220674eb32227dd7b1f8af65ee91ffb4051beadbdbf2da2dbc243d14d22ecb81dd004549e";
+      sha512 = "2e9da10d1f88352687175fa48fb70f8a73cf3ab1d84958a79c4a46526b3640e264d98611806bb234f579d616fe7d1dbb2d4c6ba55a389363034f85a97283bb64";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/ru/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ru/thunderbird-68.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "c76e85ae89f1d6f878f5ff745f76860a18d053d13c4deb6774de9e653e841273c09fd7297ade76ea390a30ab0d2af280a0e6b2d929a50ada2ea37c32c2d68d7d";
+      sha512 = "5f4bd3d3657479446ff070cfdb33e16a527c6f1615f37fb4c4e32c12b89c62d5649fa5c3d826723be47fa9795575bd33ccf37c2aebb555c218aba8f9d68ec3a9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/si/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/si/thunderbird-68.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "92617456dd89e933130992a15247bffc9c8ebabbec41b061320ae6be8d86ef1af38c1469e633ef9dd312da8f8bcac99545077fb23665add9c82c0a38f538e56d";
+      sha512 = "b47d2aea81327089445c9f57a1508406c534907c7b574006886828846e6deaab04e35de2781d55d882f05c0a89f65fa7c386547d6581064af4fc3bf4e879e379";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/sk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sk/thunderbird-68.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "8ab573b0cf04ae24f0ce5f1b8e79024fac5e33da2e80ef28837b7bb941512d01396759b34ba4fe87bef74a9385d5b7fb8d656429c110a38e0ec30ba21c01dd48";
+      sha512 = "4295204bb89789704da6830d33e92a77df165737c291c74a94fa532309c89505fb796151e0855b4e0bad8658fecaadc9978580ac72e2a2f24a4022909bb64aa2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/sl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sl/thunderbird-68.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "4ca6019ec3420487ac141bed30efe310d4c01aa2d7adf16fd97ad543cc90d14611d270074c5ab1c52b90c6ac9cfde5f5957c323189965ea60c2f1110abf4bca8";
+      sha512 = "598fe5bd04e04a73db04eb630e02dd7cc7af34d0381e6877626c8885bc4b879e1f35362afb8cfeb1bbafffc5b7ea14c8efe9b35b5e30056d04fa0126b8663679";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/sq/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sq/thunderbird-68.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "1a47ea68a8435099883a502e65e31aa0e7c14564f86e6b4e4937362fbad3b9771efc74df4ef92994c1ac77130fef228a1c131d0eb4508a5c655e2a4b3800d1ec";
+      sha512 = "0b657daedc98db51179cebf547d5f278d2d632bdb552878b4af29427ab8fad62f8d6c1ab2c3a38cbd8e67b670d6d613bdb1d4f535a0c69d0d1ca607d0b10bd43";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/sr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sr/thunderbird-68.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "dbcf13d0333d1ea714b85e542f5bdcbc83bdb2b3f8c3dca829d4b224a0741fee36ac9d2df9bd12cd5505fc972454b990ccf830d71926f65a4f460be2fb7ca937";
+      sha512 = "10efa11b9c9ba56142c8a321a25a7e875f3d02fd17f73bd3061ffc71823aeb1269f9a864aae88a4fc434d1c4a01d227c0be605ffa7f4ef6421db98c0141c839e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/sv-SE/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sv-SE/thunderbird-68.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "7602c9dab1202e84822d537c0aec36d1705c259e3d5f34ce6212363450e1e0dda508ed36ea999467be2f39b991cd21a6f8a153b0aca87aa70ba62f01f078bbb8";
+      sha512 = "c77d10b35edef7e59f4e6c48cd4352c4fb7d05b0140aba12be42b3e3a3df609ebc86f2f5a3993fa172ec0ac118726314bc9042335101241637481a2e1a4d1c00";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/tr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/tr/thunderbird-68.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "0fbec00596ccd59e54aaf23058e96abc6ae672ab55d2a7ebd0bb20c37c03f47daa70acfb981d9edf48c45a75d0b0a02328025e100dc4b344c03e3540089b1cbb";
+      sha512 = "3d52693efb05379802d62fb9e40c4b1856b45ee948032634d4c4bde7bbae67327f963e0f1096fd5d7a15d4341af1ecf3d9ee96eed45146859d8e8e5d403d660a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/uk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/uk/thunderbird-68.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "4f1b0608f55f945552bfb3ff28fb93b52ba8a180426e6a101c7c849a48a65c13c78cdd707c8bcd6bc02f55942750c3d34151a4f674bbf53d5e1aeb4fa5d8b974";
+      sha512 = "c09734ab8e6428c6ed270887a0add934a7058d5e9c895864b1128e0fd39d57e13789bab38cafaf7cdbac1a71c8884407698c4bdfcf48aeec6604a457ed57c48d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/vi/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/uz/thunderbird-68.0.tar.bz2";
+      locale = "uz";
+      arch = "linux-x86_64";
+      sha512 = "083a83ae3c6083934fbe49f1e65ceadc5b5459f0f29ae0df9901b6d9b29d0a105cbde94357c1ee0a9677ec923fd1d419c618db0e843cdf320c087108990b89ec";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/vi/thunderbird-68.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "e3fbe83460505e135427c773650151e8d7d4d14df5a432392625871c561f6cb0c4eacbeb73d1078f4e3b195014373735a1383a472f6a85d9adf76d4b98929689";
+      sha512 = "6ba1573c9a170d1d827b6d17941c25e3852f7b66be2eaf7a3e9ab02278f19a38b801d7b9b0c266dc4f38f1190f9c83990eaa51f4734ddb38f43ea3e1bd23b72b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/zh-CN/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/zh-CN/thunderbird-68.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "050cf6cddd3a4f7f56af9f271114d6aa10e032644a958e62f3957d0df61e6f6d92e2a21fcd203a1f45dab7127a652a0dc192993477570ed82726fc9765372dce";
+      sha512 = "74ee429901cb520d07361a4b621c9be06253cf93300f0f91e3633d3b375e4e9a6a58823d4bbfed60519734ca5705f2cd0da4bdc7db0f578ec300f1d705e9b7b1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-x86_64/zh-TW/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/zh-TW/thunderbird-68.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "566a7288a7819ac3bf72ae97fc10470530656c2c4bd75f9b06b4e4c1c07e0e80534fd3dc14081c828a7aff3319d83ca482e4d8d15aa6e3dd02201ce0038a1de2";
+      sha512 = "d720029e0720fa972d694712a85bdae94b1ff51213c4e56b84dff6d293a2a9831f5cd4efeb44070010eba1486b9358929f64546ce7ebb7cee29a7bcd4a1cd650";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ar/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ar/thunderbird-68.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "fa10e2e513050f8c62a0e53530a3ce99cc74aecb0b93090207531556a394d41308c599c469380b39daf178e775c61cf5c279b8fb26429652368ab0468dee4ad8";
+      sha512 = "823b3cf50f8d23d1d0ba8583d2b10146e2eb0ff4a9401527557fae8e8db997ecc66d0bf5a091323bbd37dd6222bacb73fb9818de8740963b929a8893e4ec9391";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ast/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ast/thunderbird-68.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "a88c415580fe8b5a1f83468afdcc55714abc13eb53c6b4a8b6b4779837b0668934c58ce40928b8a215a099fa06cce957754ac714a941172ded5087f09b8b2abc";
+      sha512 = "f0087ab3189e8fd194d2ef6d5d2f9c3e14d592d5217a8fea19ba5189e806f9d484332f9d342a15549651a75bcfa673f21cd7666265fc185ec58c814814902ec4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/be/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/be/thunderbird-68.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "d0c7edde8c6d2b2daa4d2389781962ebbb8b11e2b6ff4f0c79a15052cb65e869711cc18c5ed86310800dd5fdacb4d594347663a440ad7caf874599bf9aa696d1";
+      sha512 = "edb358214e93142d73c92ab3dcf6240cd08614c2d0e9ea506492023be46d7b7f6273dc767ae034762c052db3b0a093dd027187afb272b2a55fc3126b06ffb78a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/bg/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/bg/thunderbird-68.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "f5fa777606c529b5d5d85af9ea1bc9d7bae55571d11cb02fd46903643bd2fb9bde0dba0eb9e3b8a0276b004e40a12bcfc8b35f0a5d0445b1d6989caaffca2ed4";
+      sha512 = "f3268fced7a81b5046332f975906ac79b8ab5ac888dc1c81085dd7cd1b1a414988208d426bd305f67cbd913c58de857c844809ae6e6ab5a2a520d7d6b149b731";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/br/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/br/thunderbird-68.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "673478f9995d4b43c3a67abfe876004e71871a45b9b13fa89b5266fca48d1edd69b601d34ce4d007080346f99d8a6ad61a47bc891b61364b239b24a1066da75e";
+      sha512 = "c1be2ec4d4e64a2a9b32b974eecd182ad9d1fa23b775769e8535e742479ed6be2a222272d7c5b141393f0c752d4af704758912bbac1c17f445b3bf277c12eb9a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ca/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ca/thunderbird-68.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "336e500bad4e173a675f24ea05a2507c8729a30c9bbea2659135808bc04fa31b0306ade3073c70de22c76827f0494d517d9ad95fbe03a5526d14bf3e492001ac";
+      sha512 = "ac0c2508b89812ba63d0bb770adc2292127243fe31bf140a4ab88c953750fc2f699c5ed2afb9a400cec48dc14d927b08dc96d5b110e2f2d90e81d1532ba9d916";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/cs/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cak/thunderbird-68.0.tar.bz2";
+      locale = "cak";
+      arch = "linux-i686";
+      sha512 = "4d73beb37469131b7e7747c85a73027e1eaf008100eee21e27d36b4736ffdb4cc3ca3606726e36033de64504f058ec9d4193797a09c2a591675636a5c00fc890";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cs/thunderbird-68.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "abb309d772ba27eaea1cbf79436d21cb18eca0733f2ecbaab18778daa7ad55ead8471e76c46ef0e86cc0c95d4877fed61553a8d195c8ab835be24cd55af0e923";
+      sha512 = "635ec13ec9fd688ccb9c690ccb4d64228f1f47755ce24c4806f5f47655af1279b9ee758fe15c0fcbd43c830edf66383bfa3d84d35137209a4af41aa59565f554";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/cy/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cy/thunderbird-68.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "cd1ad0258585f14ee8c5243f18841f80b1cfab41934efdc92871ad4c3d71708f1397836bc2f3843f769f2232c05ea9e8f3cc25c1b76f86b7658934e4a331a6e4";
+      sha512 = "afb546562f92c93639a407598d9c6654b64776cb68db7ddb07c0d17f83d122d9e7bb974238ee5cdb90876bca3ea30356cc5eef28b11ccf082ef72c0343dc42d0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/da/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/da/thunderbird-68.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "7d9fb57f9681934f8e564c92d80acf3ffc8df1341346adfb5c4fc13738a5068aba7cdf6ecaea2937bff076b66a6103cff95fea27e2a6a7b4b545b78b2c423a4e";
+      sha512 = "f7b7d183312d11d02200890afe4e81c793b658729119d9f81ac2ca58714244ece9d64d1b9d9f34c79f1d00b574e24192ce066debf873c4b740c35208cfaec16e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/de/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/de/thunderbird-68.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "f5c1c01677f4605f9e4731681d1e9e1395d2fee6fc32f88ae8f207750859887e0a49b2d95bc27e4311b05c6af2a390866662f79094e9c3a55e4f2bcbb92f60cc";
+      sha512 = "e6b3ba227c8e84273e6dadcb59d6691187512666efcb63244740a56273c5b765c65d21607e4f07a508e5e63ed0812162ad767fcb1140b89b2c155da945586179";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/dsb/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/dsb/thunderbird-68.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "92171f0c8140b360953c6b5310f260503d17d1da71e795c91a4ec80fc4cc15ac43405db8f345c0675233dde4d89f57a1db3177c3699f241fc2d4d6f43cde71eb";
+      sha512 = "84d39965568de9c87c280beb43330aec4ba6cdebf59a9c4f566b6bc01fbe15cc3987e87d9c24a9e746283cc54ec1ebaaff99952de7ff0aa9b6f05f36b1295d09";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/el/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/el/thunderbird-68.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "1062d28a437aa854dc213e632afc0e41edbe00d4398601db671d14e39fa2ee832c1fe6d263e7fab3d8347b4b2cacd541cb9f4b1fd640aa4bf97c3bd1fe23a2ff";
+      sha512 = "0942b5c8c7ee792d264824c6837d5857679feae9073fd2451b92dc0f31290360a24f7cd708e550955e798d2decb9f0c3a21dc8ba7bb5f226ba8ba9f502ef870f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/en-GB/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/en-GB/thunderbird-68.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "61dd1c410b5c87ca41eaf303f85a5c90b5c65fcba5a75d93654b3a5ff898991fd59b89ae772876c707dd7d5a2767fa607b3ea0c2f2c57ccb73a7a75720157f43";
+      sha512 = "12fb5086fd012d85f35a41125b7e5ebf37ec34e9215db9b2a4c67f924d3bfa738698ba15bfa2e51f8cbe0d81cdfe5de4bfecd54b0fe6cc7163c753444e56bb9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/en-US/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/en-US/thunderbird-68.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "5f989316cfe29ff75adae5feb34e6914f25e6e7980c17fe902d70deede44ebe54052d2540cfbe3d4629e927d9f2129edf19f659bb2cae9f09ab984be7d47aaaa";
+      sha512 = "6004186b0b27165a4d54191a9c2daef34b580c2d97b1e0472e8d8d863e3df51ed56ef17abb7c6944f4da214772780b5c69785b9ad22ca26ba1a8f0390beedc19";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/es-AR/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/es-AR/thunderbird-68.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "45e0eb7e51110bc892cab458286e5c37f0aca4bfc88b01801c184521eb3bde33bdfc78758a67e7337be157b7507891874def8e7456fde8483054fd9671f068b5";
+      sha512 = "6a547a1d0450de1089df18baae81100d3fb9934c963459ec83ae81504e7a1ec7abf595766c84fe8d321f901150a68b7e172888028f3b992b4b6b74ba98ca4efe";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/es-ES/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/es-ES/thunderbird-68.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "a8dca85c7ecc2678cf48de000fa4e46432a28a02ec200447789da0213d01841f142de45c0c93b52c8952248eed7e0afb12c1f84026dcbaa0b47ce8b907bee779";
+      sha512 = "e1256da3c8938776b11444790f20a68f056f7407f444f0884dfa1c52260309d4adfc64fe95168dd8263e4aea650362ab9fa08930559c7f0e97b3489c172c81fd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/et/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/et/thunderbird-68.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "d212bf0d4881094835f156c277015e37f1de4d1927d2f89bc993071f50eaeb604913022c3db948baabb1d76b17a982bfd1911050c46bab54fd3ffd4f374ce378";
+      sha512 = "a5d7cd5e3171d44dbf91f067231301940e8a622a6729333512b49bc037022bc2058fa548c044a40b7ebea5d3199402276a34eeec5cb21b2070d7cfd96737def1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/eu/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/eu/thunderbird-68.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "14602ea4b22210049756484646fe538cece02d7a23e6079e7020ff30d08868d353f9d59fc831e1b600c061faf18f5af93a67ac95cc2f2f64a137c430d6ea6bd0";
+      sha512 = "08047c83e28397d265712dbd5a533799b2bba97d90f83b93be8377a544226ea0dff22f5b5e2cd5314c24608825048f3e59c6fc348959d63e1acb81d10d687f46";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/fi/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fi/thunderbird-68.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "aaf723df2d042c7fca5457b0646998c7ed799d0d24021fb6de3b66d35519a7c189844bbd4a2840b884915995be4ec191455bbdbda7f5711831fc7702232a5d12";
+      sha512 = "ae407ee0dde2be8a8f89979b5dcacebd13fcfa42fddce48773e8f26ffbb503acc6b17a90170a0d72d550400397c17a725f9bf6f65d842f0f281fc58eaf9dbc53";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/fr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fr/thunderbird-68.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "9dd7e8c61049f4de1d03c73e1b7a1b38e244ad67be84dc6e4a53b94dc810d98b35e49b199662672f0954cf87cba7e3df75ba11fada1b74e8096d866131b08550";
+      sha512 = "a776215a9ba91de0500cc7fda245afa19a49b51b60089c55444aa452c5aca06cf3b95e66448147cdbc3df063348c28bbde3f3c2a6e19deed26e1b33dec565b25";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/fy-NL/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fy-NL/thunderbird-68.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "aba1031a349f835577a06cbb8452760c4ab65fb1c8a7183e92556b6d140814f16e794f4a5305e789aba3b0c10703006641546751460fa5fe2a822835881d8e6c";
+      sha512 = "5302a5709fc4485eff607fd0b5e75f15bb600a14d20661cc4f7280b0bf5c156a40a51045182ff0d31c89d4009c5a516015843ec9fef1fb1134cfa80c511c05ad";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ga-IE/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ga-IE/thunderbird-68.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "9172d99e57d02a676f9bfe3373fef7448a2d6f70f3de8139205c55a37c73c5b70133373763daf8c58adf2acf4916cfb34aee60a431d55aa94cbe95e8e58430f3";
+      sha512 = "4b9cfa317f8ae5accb2c96731bd7fcbaf2eebaaee76bc7383d247cac9db6708b7c4c03d2faf3a6e7e6620b3eb696e9bb3fd18c3dfd1f3ce12e4bc65bb86955ed";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/gd/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/gd/thunderbird-68.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "f8449e20680cf02220e009f19b2cb66d1354941c0deda60086ae80f1d3bdf2159a8b5bb45a45c480528437e78d8c71c00a8ee42827b3254e37c83cb8af1d3de1";
+      sha512 = "8738b93fd18972456158c28d4146ec8548e97339d7b4ff044ace814213d27940b02f9b889b5809525d5bba46a5b3ff4a570c14b3b9a5fe276b4aec515b62055b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/gl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/gl/thunderbird-68.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "04d8babded176785625add5bc9c457a0ff380c293579a18146924e57fb3782017c12d5569d10d2a3f1fa872fa8eaa87bbe5f1ac5f44f05cf5d5f3936fb12706e";
+      sha512 = "c556343f99d39f6ff41f0b05af606ada89e6b95938886f8d0b1ccd7b77f336ae40a8debb003d2bfc865548c5e9e055859d6d353e169a4f2ee7ada7cb8687cc47";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/he/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/he/thunderbird-68.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "2b77c7c4044c73257f24f1961d431ae50cc9dd0b0f2a58464a745ed3888e957467e6f35dba904a47c3d8d84aba81827184070ac6c12ecccf02760202b831b578";
+      sha512 = "b6eed03bdebfc334c8852a15989c024883b99f600b9aa58f8344976b63f1f9590aa9b78a2a27b081a1e5256443801f01c1f638f1e4f8c0c2a78e695a5e2f590a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/hr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hr/thunderbird-68.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "17d68b938531b89eb8972fa315fb6951821a1a55478a801b5697afe5b84450841ac66c8aef49a43c4aa6acec4f81652a1de32a3acbbb41ee6cf0a4ed9f03acd1";
+      sha512 = "aa4527614db13978d03cf07444109dbc63b7788a2cff924b5566c98d9316031f1c0fb74839b5be78030959f85147c1c1e50edca5605b5cbe2ad3bbbb257c24ad";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/hsb/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hsb/thunderbird-68.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "556b441cbd6e9a34e101385484fc292e3a2edefd39dc8286b5880c66ad558beecc9206084ed0ee35aced87ba0325fe737f6595cf3ddbe4d3842b10bfb535ed36";
+      sha512 = "92b1e17c825a60da17bc9942b689337246f301843637fe420284fe89aad4ab2f30101201330d5319a7e6a2bd87567bf7aa7b35bfbc13b1399ed54973afacf4ec";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/hu/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hu/thunderbird-68.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "7a355c9ab063d6b6d8c17d1df4e30a3c2511c4f9d78be578a1a0b73e4728bb08d917190249baff08e30fe76eda16bc889d64ddba673f51067dc3b1957f8ebba3";
+      sha512 = "5e0c03de66a9098e290fb93545cb46be41d7e91c865cb3fcff9dee7d141fa113cf7bfc14cbbf1e8f9e3979e6602116081958c22a83ea043015cc5adfb738e5ea";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/hy-AM/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hy-AM/thunderbird-68.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "b5a94db363d6a16507e71fa0d6d8928b4c8d14b7b6a35e287232fca511caaf9f7852db37502ed9ac0fcba65cfc9d3185db8f08d7dd3941df660e083f0bc6c6a6";
+      sha512 = "3df1da5c3d18ee3705e5d5013a752920863fdcee8a1c021bfde28603862a7c56e60a65b46b98af5d66fc5066c1580ab5484d86dd278d64d5d800b3840361b812";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/id/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/id/thunderbird-68.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "6a94778d20665c901005150fab16c4fbcf86bba10b7a1833b7d89d3e76a7b90a0c1e755617ade294fb3c86611a0f2bb0e812d1b282e66d2a63e11a2f25b9da1a";
+      sha512 = "786a5839f311df656fd4a0687819a47589f5a6ebac6f76e1f643136286d43b2f27744dfcc116341a8905b5e1da4ec0ad1f1eb4998e188d2e87ea487c6826fb32";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/is/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/is/thunderbird-68.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "c6f89a98f956ab17bddc6250af88b1422a347733c15d12a720a8d84ffbd00142afd09b80bbac39dd14907558dc97f33890a091203c1f907dbe0df5f5f12a87f6";
+      sha512 = "53e4f76d41e1f8af240ecec249bd3ef3c787c6ff69320694bc682a876a76be22ed59abf0bc83691c7ea96d1e16f5a4c859e2b62528c99261f562012dbd035a9f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/it/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/it/thunderbird-68.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "38bcd03bf02276feef2321503bedbd7b8e8c609f48a038e660e522af5cad603ac642622f8b08b7aa870c1bf50b136d09034995941d14fa574ff9ca4f11d3cc66";
+      sha512 = "8ecb5594e5252be84f97a55b37f5089220a3e5c1565686fe02f00d94a1418a9460e4c1f25724243c82b3c9442eb8cfbff3c3c9470971921469f2fd71aec66860";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ja/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ja/thunderbird-68.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "e91f0e3ee53575d9e3fd02be22c46a8aebfe2e12998db77f3bf73c4756d4d615341c20fed031ee0b146aa1e9200bae3bb92c02da18bbca6e99574c46e2049f01";
+      sha512 = "7f9ed4fbdc0549c6ab704f80676218980a4b2609086437f57e22e9750e5a34d7506c1ee43ec48031a28322cdf4dcde6bd14c05fd032244acf33310fb6aa8e9a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/kab/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ka/thunderbird-68.0.tar.bz2";
+      locale = "ka";
+      arch = "linux-i686";
+      sha512 = "bab15aa28fc92850d374f76ae9898c9408176db9b9e19cbdb49f7b586172c20eed0cb358f3cd4b5fcc2a4740188c0f041cf617a63743a42648c7e33dd0fb79e8";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/kab/thunderbird-68.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "a858c81c5fc9110757328df3705cfd8ca1bc61ca173448f411a849bc3799b586e7119e6c4ecafd12d0522ba37463092271b76744bc0a7fe603702627f598ad36";
+      sha512 = "26b1055333e508666dd24706da824c5cf9d5f87d1d1cb1c4d42894b836412205a7cc7ff73f764d8f2a1852138923bb02a6b2a2c3c92d1fe9307529533b6360e9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/kk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/kk/thunderbird-68.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "1bf45fa38562308f4285c5bea746bafee65f498e5b4f4d1971e7ff68cbc5b8d3e6c7a32a4318100f1fa6bb203a12e3dde14df25a70aa1aad5d6279766b398c2b";
+      sha512 = "d946c82a8c35d82147812ef16e4573ae559dbfe65f4a6e5fc7dd107fb57fc6ba2a47f8a3655344e9e6172628692ad7815045830ee27bb10aab0d71483936d6ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ko/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ko/thunderbird-68.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "56e59aeb1286ec53ee558ab029476b72ed4094504123bb93abb3e3425f60065d66c9de83190d6f00528045f934d4775dfa555243f13fcdd540ca522e9f825740";
+      sha512 = "3b9d9e70c097a1b7958c6854bc2da121f44921962d873e7f90fee85ce2214725223482aebcd503205e32501648c774199eced7ff34effb428dbc738f1ba4b963";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/lt/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/lt/thunderbird-68.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "4572fe9803b28c6f94ac4e1fc5283d2569723698c4295279099bd33358a33cf50c1a49bec70c001dad65d19d30bcb215d50f2084b458143d338b8ecbcea1ebe5";
+      sha512 = "0cf99a6aec58d2f56f6a52fc5fee17b9e1d5abd0ece53073cc392c71452e1415c94ad0af003dd0a97fc5c6744a1a2243aef69dc44b831be51108b769e5bff87d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ms/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ms/thunderbird-68.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "fd1a58ebb66a39fc00ba20eaf555cfaa6124cc2e2fa7b44e1d4d7f1e914d86a0617f1be8d461f952196fa6dd8d29ae622769e5e6f8e4c0eb30b757da62d3864d";
+      sha512 = "8b4697a312aafdd88a5ecdf898a796bddb91e80b4c8c9c342fce765ee0f4dd494114324a51d6379468756a44bc71cb6f46b8fabc7ca733d9d85d08069f18526d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/nb-NO/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nb-NO/thunderbird-68.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "bf4663ffe717d07b37e4f6741c9d6a804420f0104ac9adf152f73900d89818dddd67b1d047bf3f095d1a6ca7ac9da8e2132567e11caf486588f262e84e87905b";
+      sha512 = "ad6275f8343dd36ed039524875b41ab9c8bafd2a1e54291b98c16b0ab35f9bea1bfee3fce86070317fad2f25d46d0aa9ef0824e4ad88e0879a33ae753c61ab2d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/nl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nl/thunderbird-68.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "b7f7a989fe70860eec8349cbf85a943c0a5e7e4c9f7ae2010309adf96778797b036847e6860c0d89213c51c3c01ee1e9e4dfc6ba4a45d31c6ec4b6e9cc7e76bf";
+      sha512 = "49f586a62969e6ea5638eb95f812e7d4a891ef55f381633792ed0820ad098cc527dc9490c3a1ce52246526f0a8cf00eb16666c6a7f932a68c6d440e151b452cd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/nn-NO/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nn-NO/thunderbird-68.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "b2a8a72ce49d15c0629e038deaa8fef4b93893da9198e712daaddaadd2169c4781fe6c2544f33954d28e4be30048716a80c20063a13ea78f0ff3c466ee814cce";
+      sha512 = "1f04f2bf7a60472eff1b546608cfb26e41f31a273d1037e0d73530029a757dfcd95e2c1b85a6990b6f7eec28138835fe096266a00dd094b4db74007cd59ef00d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/pl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pl/thunderbird-68.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "e6d0f12754182f5bcfaead0bce7183a7f6527983f8a4ece9b9f7968d87d9c55b06257c20e1dd4bcd82be56961a08f6e20d7140cd8239531e2f346bd4c6aaba1c";
+      sha512 = "f232e4b6cfcea81ed70e56e9812b8e0783205f49b846d29338ad09457db9a18e4fbb35738bf5e9abce42855c13c1839605aa343cb7d33d0110b68d634183e697";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/pt-BR/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pt-BR/thunderbird-68.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "bf1fa8c66264ef98b4d192e794cb789ea0f062f342bc3aa664fd8e228acae045dbff4673e31b5b65754eb80e6af2581b3b540b3fbd3e1042439caad9177f7499";
+      sha512 = "2527ec08fc23d01712574e3c8419273ac82111c5f2b4b6040cd8f3292aeadb36021029b01bc319d8ca52177db39f1a446acd5537a6e8f42800eb22c3e2d7cb30";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/pt-PT/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pt-PT/thunderbird-68.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "2b503e6b87230e4939c09774d9e7b70130e42ef4bdc0e3500563fc0848f138b7b569d37ba09eb676efa6e0d9b245d49acca8c740ec44abbe25b57a8546095871";
+      sha512 = "c91d9d0becade1508a3212693f5fcdeb917fe5df5d63b54de125b76786dc3787a7f5f220eb48add1dd1eee95f7eb120b1c1dc85dc0bd91688c883be9219f3d7d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/rm/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/rm/thunderbird-68.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "fbb4192fa466549313d874d5b48258d3d133040449f96c55270a5ad25798067b921d0336e577081985e1e0cff28aa17d8b1890e77aa3cdc9c369e5e416ac20dc";
+      sha512 = "45a4f608eb5e64f24ee385328a3a568aa2ad3284169019423c8b414790779cd079c2d73b290716f18227210ab5eff50625bd6688498bc027228b8fff51fda5b6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ro/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ro/thunderbird-68.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "5e6ca640f36f44b8d6594aa13847acf16b7f5d96d21761fc43b38b16d39deebf6dd30cc2eae778ec1f8f37408451acb19485f52ae3e701833103e59b6e0615e4";
+      sha512 = "e344d838e2f79dd8ff79cf2e7ff2a1d8f6c7e64f29cf870d8a6fad9b3dee31de6c0a80d3007dd498dffb816c00dc8429150bc6b49a5b6eb10b633a4e942ca725";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/ru/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ru/thunderbird-68.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "4bdaf5e71f18d75554a4d954a802390ca6689d07b3ba16de8654b6557c874622ad2b2d587d8306edecfad47c1bf89550378d478377fe49b0e87b5d4417d05840";
+      sha512 = "8dbfd4f8969703623388a55e790b722933f2c1faf702ff5c7fdfe3cdab8f62fc4ea69f9303edf94a41a71be1b8c5a2ddfa5509d4c8abe260c91b7075349afe64";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/si/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/si/thunderbird-68.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "096ca4b2efe21c92d041b5fbcb5ac19351d39b339b0686fbefd1b127f7fe1da8b31dcd9135149006a71b664eb9f98d729a48da4f138af250330b60f80ea07f11";
+      sha512 = "f1808e9648caa00afab0609dac1cb564dbf6e5bef75446071997cc9913da8470e54cb254282fc6e8b839e88b003ef18426609a97cd1affb93659fcb519913a5c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/sk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sk/thunderbird-68.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "101363485e58e8a733523f103994c0abaa520ffe758a0ca39db9d5cebea273bde9a93be489d49db67a37130191a3e54ab9454e74cc392c5e0a163020a740149a";
+      sha512 = "7d5b480a44dae0d2f5348261ecad04348ebb7943a757fe83c0fb154da251b423ba21840c5d1fbf8d7979dd30c2d5e7b18e90d0ad033a1e96d6f6587407a24cc9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/sl/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sl/thunderbird-68.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "7060e6918d9818be407fe568caedf7e65738ce6335e287ca9ecee9d7f7be9d00599364b8d7b1033c7943d3a417fef32cd2e6912e832ce0e5eefe6e04db3a7dcf";
+      sha512 = "f76e1f01b8da8a2ba344dd3bedfa4301df03fabf9848fa189d522995cd48d81f8d00f11e01722868acb1993d4e79977122e04e3d208629b2e398c715777194e1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/sq/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sq/thunderbird-68.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "56c297aa61bb50517a5cf126e506cd7fbedda6250434a21423581b2a2cd79352f21c51265f7e3fa9b60636c8e3bd6dfedbf81c058daa8545f5da0f02837e0719";
+      sha512 = "cff32ee84324724dea5612e5b48b22adc63d8b9428c5937f84c94da83bcf5f2aadda6ab81c5f9bced6d693689bc38bf15c764d4ab4809cacec3bb54cd82745f7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/sr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sr/thunderbird-68.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "95f8bb13b4ecc9774452b799a8ec06dc6abbb585471f5f2f9ce38e4af733fcc99132b66df73df96159872ca6e6285a62c86e61e4d389c2c96da547f875cb9841";
+      sha512 = "96d25f7d952e204751cd601932713418cd495d11364430a37ecfa36333113a6132209b8e8f0ec337799ed02b71b388f43e22a53fa168f17e4d15e7594170299a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/sv-SE/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sv-SE/thunderbird-68.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "fc48493a7873299d4c284c806fe2ba856ff197e5f50bb57d3fdbc95eda062b035f98318c0f5bb4d1bec63dedae486b9872e3f1718b922a1ec8da311796794121";
+      sha512 = "8bc790d7951469e2dfa2499622464cf55427a6bc93dec50b18f014ac079ec0579b91a11680e4104f7d6a38f60d467e9fb3c9ee7ab83b64f8dae2c1e979150bd3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/tr/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/tr/thunderbird-68.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "649527a4c603798b0f726eec995d721156c36279b1aa5afb956fe64ef40298956e1abf6eee2d15eb3f5e4c9c5d48ed804eb425483456adf068084114b6d5cae5";
+      sha512 = "2c40fa3e6ecfb68507897e669bed229ed98e1b4a3998b55b59523d3cec1fc5553cfacbd9be3d55f7a32b612ee662dfda7c8a21a4c26c750d48b87d31368a9942";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/uk/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/uk/thunderbird-68.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "2b4ae669b99ac9a7b20eef71b7dd6d5ad2b20ddb516ba1b3fce7dfbc783f0aa945e8f319b71e8912b2d72b78025fbdcb355ff96be43ffe828d2ba1ac4fa00d41";
+      sha512 = "5eee26a500c1d4bf71222987523cc3e5f144aca02c17c88a01d4b68f9ac5e1298407460c69504d0a7b1e5727755cb32e2ae523cd97766419848c1b6dc0a30bf0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/vi/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/uz/thunderbird-68.0.tar.bz2";
+      locale = "uz";
+      arch = "linux-i686";
+      sha512 = "51a0fc8dc30cc82f7d3b222167aaa8ea0225b4136ebacee38687cdc1235c0720da14cd2a3e1875a4c4bfa3bb8fd9045541ca6df736115312ac49a2db2ef83639";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/vi/thunderbird-68.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "5808e5e2a75cf63366b190dc67177c8f1b2998b2001972412a760eac3c6a370aaf7e60d3fc7978783469163c55f69756637b4436593530d518dab27dddb6c295";
+      sha512 = "bb02dd69a8c8d514666fedb9d7de520f6ea89740956ddcd9d7f90175bca6f7bcf79b573c6e5ecd6fdfcdd15aa2a35881e8877074fbb795019eccff52cb943a91";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/zh-CN/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/zh-CN/thunderbird-68.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "95cf6871aacf5d36ca04673fe23277dcc4674dd5b2d215c1f453fb6e5f82d64774efee4a0538e7c451b8807bf930912a31eaada65248416c24e8e1382923d09f";
+      sha512 = "408599229da40b2ce1a23ec1e5b12c7f4a24fb63524d792d50764cdfbcc6774dd7f651ba2dce46bccd94937e24b4b08d8bf37b6fb839c61540dfbf36f6d3e6b2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/60.8.0/linux-i686/zh-TW/thunderbird-60.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/zh-TW/thunderbird-68.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "8429305258abecd306e01417bff356a536ad7f6982705a51b4c35b26a83c18f661ae743029597d69466e3618f99ed71070071743c5821264143f78cad2b7aeed";
+      sha512 = "d75c9bfc6234fa0ddc56b7c1dace76b789e29c0cb03ff17395eeba020a82431e457271e95117731963f2666295b94746d0370bf0e85f9c3646836830684bca45";
     }
     ];
 }

From ac84c1ebdea9547bc11f9b5eb13b99508ef257a0 Mon Sep 17 00:00:00 2001
From: taku0 <mxxouy6x3m_github@tatapa.org>
Date: Thu, 29 Aug 2019 20:56:24 +0900
Subject: [PATCH 20/92] thunderbird: 60.8.0 -> 68.0

---
 .../mailreaders/thunderbird/default.nix       | 46 ++++++++++---------
 1 file changed, 25 insertions(+), 21 deletions(-)

diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 6921279b27f..17327a731be 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -1,12 +1,13 @@
-{ lib, stdenv, fetchurl, pkgconfig, gtk2, pango, perl, python, zip
+{ lib, stdenv, fetchurl, pkgconfig, gtk2, pango, perl, python2, python3, nodejs
 , libIDL, libjpeg, zlib, dbus, dbus-glib, bzip2, xorg
 , freetype, fontconfig, file, nspr, nss, libnotify
-, yasm, libGLU_combined, sqlite, unzip
-, hunspell, libevent, libstartup_notification
+, yasm, libGLU_combined, sqlite, zip, unzip
+, libevent, libstartup_notification
 , icu, libpng, jemalloc
-, autoconf213, which, m4
-, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl, runtimeShell
-, cargo, rustc, llvmPackages
+, autoconf213, which, m4, fetchpatch
+, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
+, runtimeShell
+, cargo, rustc, rust-cbindgen, llvmPackages, nasm
 , enableGTK3 ? false, gtk3, gnome3, wrapGAppsHook, makeWrapper
 , enableCalendar ? true
 , debugBuild ? false
@@ -24,11 +25,11 @@ let
   gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
 in stdenv.mkDerivation rec {
   name = "thunderbird-${version}";
-  version = "60.8.0";
+  version = "68.0";
 
   src = fetchurl {
     url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-    sha512 = "1cd1ps4r70bnxn9kydljsp776dazfzfsghc5zwp1xz6p3cwb9g0gybj677sac7y3ma2wsq1xbqk20q35n7gjz3k1zzhmpxyii558rdl";
+    sha512 = "2cz583rwfpj4z5cwg2vfy4ha0pz4xs9g7li078rmk6x19haiv8s9fwijd82xgxax0afn8wk80bq5kd8yz38l9432f6bar8xnwb21y4i";
   };
 
   # from firefox, but without sound libraries
@@ -39,26 +40,25 @@ in stdenv.mkDerivation rec {
       nspr nss libnotify xorg.pixman yasm libGLU_combined
       xorg.libXScrnSaver xorg.xorgproto
       xorg.libXext sqlite unzip
-      hunspell libevent libstartup_notification /* cairo */
-      icu libpng jemalloc
+      libevent libstartup_notification /* cairo */
+      icu libpng jemalloc nasm
     ]
     ++ lib.optionals enableGTK3 [ gtk3 gnome3.adwaita-icon-theme ];
 
   # from firefox + m4 + wrapperTool
-  nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python wrapperTool cargo rustc ];
+  # llvm is for llvm-objdump
+  nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python2 python3 nodejs wrapperTool cargo rustc rust-cbindgen llvmPackages.llvm ];
 
   patches = [
     # Remove buildconfig.html to prevent a dependency on clang etc.
     ./no-buildconfig.patch
-
-    # Needed on older branches since rustc: 1.32.0 -> 1.33.0
-    (fetchurl {
-      name = "missing-documentation.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/deny_missing_docs.patch"
-          + "?h=firefox-esr&id=03bdd01f9cf";
-      sha256 = "1i33n3fgwc8d0v7j4qn7lbdax0an6swar12gay3q2nwrhg3ic4fb";
-    })
-  ];
+  ]
+  ++ lib.optional (lib.versionOlder version "69")
+    (fetchpatch { # https://bugzilla.mozilla.org/show_bug.cgi?id=1500436#c29
+      name = "write_error-parallel_make.diff";
+      url = "https://hg.mozilla.org/mozilla-central/raw-diff/562655fe/python/mozbuild/mozbuild/action/node.py";
+      sha256 = "11d7rgzinb4mwl7yzhidjkajynmxgmffr4l9isgskfapyax9p88y";
+    });
 
   configureFlags =
     [ # from firefox, but without sound libraries (alsa, libvpx, pulseaudio)
@@ -76,7 +76,6 @@ in stdenv.mkDerivation rec {
       "--with-system-icu"
       #"--enable-rust-simd" # not supported since rustc 1.32.0 -> 1.33.0; TODO: probably OK since 68.0.0
       "--enable-system-ffi"
-      "--enable-system-hunspell"
       "--enable-system-pixman"
       "--enable-system-sqlite"
       #"--enable-system-cairo"
@@ -114,6 +113,9 @@ in stdenv.mkDerivation rec {
       configureScript="$(realpath ./configure)"
       mkdir ../objdir
       cd ../objdir
+
+      # AS=as in the environment causes build failure https://bugzilla.mozilla.org/show_bug.cgi?id=1497286
+      unset AS
     '';
 
   dontWrapGApps = true; # we do it ourselves
@@ -134,6 +136,8 @@ in stdenv.mkDerivation rec {
       gappsWrapperArgs+=(
         --argv0 "$target"
         --set MOZ_APP_LAUNCHER thunderbird
+        # https://github.com/NixOS/nixpkgs/pull/61980
+        --set SNAP_NAME "thunderbird"
       )
       ${
         # We wrap manually because wrapGAppsHook does not detect the symlink

From 9a2180fa0b3c1b2744973b57aaff5ed7fb4b8d42 Mon Sep 17 00:00:00 2001
From: Robert Hensing <robert@roberthensing.nl>
Date: Tue, 3 Sep 2019 10:36:57 +0200
Subject: [PATCH 21/92] lib.cleanSourceWith: Allow name to be set, optional
 filter, doc

This change is API-compatible and hash-compatible with the previous
version.

At first I considered to write a rename function too, but adding
it name to cleanSourceWith was a no-brainer for ease of use. It
turns out that a rename function isn't any more useful than
cleanSourceWith.
To avoid having to write the identity predicate when renaming,
the filter is now optional.

builtins.path is supported since Nix 2.0 which is required by nixpkgs
---
 lib/sources.nix | 37 +++++++++++++++++++++++++++++++++----
 1 file changed, 33 insertions(+), 4 deletions(-)

diff --git a/lib/sources.nix b/lib/sources.nix
index c4680087b24..51bcf5559e3 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -36,18 +36,47 @@ rec {
   # allowing you to chain multiple calls together without any
   # intermediate copies being put in the nix store.
   #
-  #     lib.cleanSourceWith f (lib.cleanSourceWith g ./.)     # Succeeds!
-  #     builtins.filterSource f (builtins.filterSource g ./.) # Fails!
-  cleanSourceWith = { filter, src }:
+  #     lib.cleanSourceWith {
+  #       filter = f;
+  #       src = lib.cleanSourceWith {
+  #         filter = g;
+  #         src = ./.;
+  #       };
+  #     }
+  #     # Succeeds!
+  #
+  #     builtins.filterSource f (builtins.filterSource g ./.)
+  #     # Fails!
+  #
+  # Parameters:
+  #
+  #   src:      A path or cleanSourceWith result to filter and/or rename.
+  #
+  #   filter:   A function (path -> type -> bool)
+  #             Optional with default value: constant true (include everything)
+  #             The function will be combined with the && operator such
+  #             that src.filter is called lazily.
+  #             For implementing a filter, see
+  #             https://nixos.org/nix/manual/#builtin-filterSource
+  #
+  #   name:     Optional name to use as part of the store path.
+  #             This defaults `src.name` or otherwise `baseNameOf src`.
+  #             We recommend setting `name` whenever `src` is syntactically `./.`.
+  #             Otherwise, you depend on `./.`'s name in the parent directory,
+  #             which can cause inconsistent names, defeating caching.
+  #
+  cleanSourceWith = { filter ? _path: _type: true, src, name ? null }:
     let
       isFiltered = src ? _isLibCleanSourceWith;
       origSrc = if isFiltered then src.origSrc else src;
       filter' = if isFiltered then name: type: filter name type && src.filter name type else filter;
+      name' = if name != null then name else if isFiltered then src.name else baseNameOf src;
     in {
       inherit origSrc;
       filter = filter';
-      outPath = builtins.filterSource filter' origSrc;
+      outPath = builtins.path { filter = filter'; path = origSrc; name = name'; };
       _isLibCleanSourceWith = true;
+      name = name';
     };
 
   # Filter sources by a list of regular expressions.

From 4f3eacc2bf2014b39ec47156733493097b83b508 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Maret?= <sebastien.maret@icloud.com>
Date: Thu, 1 Aug 2019 15:48:16 +0200
Subject: [PATCH 22/92] gildas: 20190701_a -> 20190901_a

---
 .../science/astronomy/gildas/default.nix            | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index 968d8769caa..a21c9f328f4 100644
--- a/pkgs/applications/science/astronomy/gildas/default.nix
+++ b/pkgs/applications/science/astronomy/gildas/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, gtk2-x11 , pkgconfig , python27 , gfortran , lesstif
-, cfitsio , getopt , perl , groff , which
+, cfitsio , getopt , perl , groff , which, darwin
 }:
 
 let
@@ -7,8 +7,8 @@ let
 in
 
 stdenv.mkDerivation rec {
-  srcVersion = "jul19a";
-  version = "20190701_a";
+  srcVersion = "sep19a";
+  version = "20190901_a";
   pname = "gildas";
 
   src = fetchurl {
@@ -16,19 +16,22 @@ stdenv.mkDerivation rec {
     # source code of the previous release to a different directory
     urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.xz"
       "http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.xz" ];
-    sha256 = "97eaa0d0a0f53f0616462642a9bfaddb0305a8a0948e60531d8a524a13a370b6";
+    sha256 = "0l4jfzzxp1ab70a920qfbxiphgnc06m46wfwv0jlsq2mfk7cxac1";
   };
 
   enableParallelBuilding = true;
 
   nativeBuildInputs = [ pkgconfig groff perl getopt gfortran which ];
 
-  buildInputs = [ gtk2-x11 lesstif cfitsio python27Env ];
+  buildInputs = [ gtk2-x11 lesstif cfitsio python27Env ]
+    ++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation ]);
 
   patches = [ ./wrapper.patch ./clang.patch ./aarch64.patch ];
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-unused-command-line-argument";
 
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin (with darwin.apple_sdk.frameworks; "-F${CoreFoundation}/Library/Frameworks");
+
   configurePhase=''
     substituteInPlace admin/wrapper.sh --replace '%%OUT%%' $out
     substituteInPlace admin/wrapper.sh --replace '%%PYTHONHOME%%' ${python27Env}

From a7dfe3f9cd7ee6d49ea80e9953d62fb7b6b10cba Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 21:59:09 +0100
Subject: [PATCH 23/92] perkeep: 0.10.1 -> unstable-2019-07-29

0.10.1 is the latest release but it doesn't build with recent go versions
---
 pkgs/applications/misc/perkeep/default.nix | 31 +++++++++++++++++-----
 1 file changed, 25 insertions(+), 6 deletions(-)

diff --git a/pkgs/applications/misc/perkeep/default.nix b/pkgs/applications/misc/perkeep/default.nix
index 8804e438b7e..ae81ef3c9f6 100644
--- a/pkgs/applications/misc/perkeep/default.nix
+++ b/pkgs/applications/misc/perkeep/default.nix
@@ -1,18 +1,37 @@
-{ buildGo110Package, fetchzip, lib }:
+{ buildGoPackage, fetchurl, fetchFromGitHub, lib }:
 
-buildGo110Package rec {
+let
+  gouiJS = fetchurl {
+    url = "https://storage.googleapis.com/perkeep-release/gopherjs/goui.js";
+    sha256 = "0xbkdpd900gnmzj8p0x38dn4sv170pdvgzcvzsq70s80p6ykkh6g";
+  };
+
+  publisherJS = fetchurl {
+    url = "https://storage.googleapis.com/perkeep-release/gopherjs/publisher.js";
+    sha256 = "09hd7p0xscqnh612jbrjvh3njmlm4292zd5sbqx2lg0aw688q8p2";
+  };
+
+in buildGoPackage rec {
   name = "perkeep-${version}";
-  version = "0.10.1";
+  version = "unstable-2019-07-29";
 
-  src = fetchzip {
-    url = "https://perkeep.org/dl/perkeep-${version}-src.zip";
-    sha256 = "0rqibc6w4m1r50i2pjcgz1k9dxh18v7jwj4s29y470bc526wv422";
+  src = fetchFromGitHub {
+    owner = "perkeep";
+    repo = "perkeep";
+    rev = "c9f78d02adf9740f3b8d403a1418554293cc9f41";
+    sha256 = "11rin94pjzg0kvizrq9ss42fjw7wfwx3g1pk8zdlhyfkiwwh2rmg";
   };
 
   goPackagePath = "perkeep.org";
 
   buildPhase = ''
     cd "$NIX_BUILD_TOP/go/src/$goPackagePath"
+
+    # Skip network fetches
+    sed -i '/fetchAllJS/a if true { return nil }' make.go
+    cp ${publisherJS} app/publisher/publisher.js
+    cp ${gouiJS} server/perkeepd/ui/goui.js
+
     go run make.go
   '';
 

From 7814d35bff440e8b7e9b9c1cf4c7de1fa932276d Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:05:08 +0100
Subject: [PATCH 24/92] go-ethereum-classic: Drop package

It's unmaintained for years and doesn't build with Go 1.12
---
 .../go-ethereum-classic/default.nix           | 24 ------------
 .../blockchains/go-ethereum-classic/deps.nix  | 39 -------------------
 pkgs/top-level/all-packages.nix               |  3 --
 3 files changed, 66 deletions(-)
 delete mode 100644 pkgs/applications/blockchains/go-ethereum-classic/default.nix
 delete mode 100644 pkgs/applications/blockchains/go-ethereum-classic/deps.nix

diff --git a/pkgs/applications/blockchains/go-ethereum-classic/default.nix b/pkgs/applications/blockchains/go-ethereum-classic/default.nix
deleted file mode 100644
index ed8086f742f..00000000000
--- a/pkgs/applications/blockchains/go-ethereum-classic/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib, buildGoPackage, fetchgit }:
-
-buildGoPackage rec {
-  pname = "go-ethereum-classic";
-  version = "4.0.0";
-
-  goPackagePath = "github.com/ethereumproject/go-ethereum";
-  subPackages = [ "cmd/evm" "cmd/geth" ];
-
-  src = fetchgit {
-    rev = "v${version}";
-    url = "https://github.com/ethereumproject/go-ethereum";
-    sha256 = "06f1w7s45q4zva1xjrx92xinsdrixl0m6zhx5hvdjmg3xqcbwr79";
-  };
-
-  goDeps = ./deps.nix;
-
-  meta = {
-    description = "Golang implementation of Ethereum Classic";
-    homepage = https://github.com/ethereumproject/go-ethereum;
-    license = with lib.licenses; [ lgpl3 gpl3 ];
-    maintainers = with lib.maintainers; [ sorpaas ];
-  };
-}
diff --git a/pkgs/applications/blockchains/go-ethereum-classic/deps.nix b/pkgs/applications/blockchains/go-ethereum-classic/deps.nix
deleted file mode 100644
index 0aa6755ee96..00000000000
--- a/pkgs/applications/blockchains/go-ethereum-classic/deps.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.0
-[
-  {
-    goPackagePath = "github.com/maruel/panicparse";
-    fetch = {
-      type = "git";
-      url = "https://github.com/maruel/panicparse";
-      rev = "ae43f192cef2add653fe1481a3070ed00a4a6981";
-      sha256 = "11q8v4adbrazqvh24235s5nifck0d1083gbwv4dh5lhd10xlwdvr";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-runewidth";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-runewidth";
-      rev = "97311d9f7767e3d6f422ea06661bc2c7a19e8a5d";
-      sha256 = "0dxlrzn570xl7gb11hjy1v4p3gw3r41yvqhrffgw95ha3q9p50cg";
-    };
-  }
-  {
-    goPackagePath = "github.com/mitchellh/go-wordwrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-wordwrap";
-      rev = "ad45545899c7b13c020ea92b2072220eefad42b8";
-      sha256 = "0ny1ddngvwfj3njn7pmqnf3l903lw73ynddw15x8ymp7hidv27v9";
-    };
-  }
-  {
-    goPackagePath = "github.com/nsf/termbox-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nsf/termbox-go";
-      rev = "4163cd39dda1c0dda883a713640bc01e08951c24";
-      sha256 = "1vzrhxf8823lrnwf1bfyxwlm52pph5iq2hgr1d0n07v8kjgqkrmx";
-    };
-  }
-]
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3a602d6d4bb..b96a33563e8 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -21733,9 +21733,6 @@ in
     inherit (darwin) libobjc;
     inherit (darwin.apple_sdk.frameworks) IOKit;
   };
-  go-ethereum-classic = callPackage ../applications/blockchains/go-ethereum-classic {
-    buildGoPackage = buildGo110Package;
-  };
 
   jormungandr = callPackage ../applications/blockchains/jormungandr { };
 

From aeef53e5dd01bd70ff380fc522e13f9a9c68432d Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:06:02 +0100
Subject: [PATCH 25/92] fscrypt: 0.2.4 -> unstable-2019-08-29

Fix build with go 1.12
---
 pkgs/os-specific/linux/fscrypt/default.nix |  8 ++-
 pkgs/os-specific/linux/fscrypt/deps.nix    | 66 ++++++++++++++++++++++
 pkgs/top-level/all-packages.nix            |  4 +-
 3 files changed, 72 insertions(+), 6 deletions(-)
 create mode 100644 pkgs/os-specific/linux/fscrypt/deps.nix

diff --git a/pkgs/os-specific/linux/fscrypt/default.nix b/pkgs/os-specific/linux/fscrypt/default.nix
index 35e1972b574..cdd42e98f06 100644
--- a/pkgs/os-specific/linux/fscrypt/default.nix
+++ b/pkgs/os-specific/linux/fscrypt/default.nix
@@ -4,15 +4,17 @@
 
 buildGoPackage rec {
   pname = "fscrypt";
-  version = "0.2.4";
+  version = "unstable-2019-08-29";
 
   goPackagePath = "github.com/google/fscrypt";
 
+  goDeps = ./deps.nix;
+
   src = fetchFromGitHub {
     owner = "google";
     repo = "fscrypt";
-    rev = "v${version}";
-    sha256 = "10gbyqzgi30as1crvqbb4rc5p8zzbzk1q5j080h1gnz56qzwivr8";
+    rev = "8a3acda2011e9a080ee792c1e11646e6118a4930";
+    sha256 = "17h6r5lqiz0cw9vsixv48a1p78nd7bs1kncg6p4lfagl7kr5hpls";
   };
 
   buildInputs = [ pam ];
diff --git a/pkgs/os-specific/linux/fscrypt/deps.nix b/pkgs/os-specific/linux/fscrypt/deps.nix
new file mode 100644
index 00000000000..5d3e8a89a91
--- /dev/null
+++ b/pkgs/os-specific/linux/fscrypt/deps.nix
@@ -0,0 +1,66 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.2.0";
+      sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.0";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v1.20.0";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "614d502a4dac";
+      sha256 = "1rcyvsl8b8pk7h8lwl0fpiflrx8zs121wi5490ln0qnvkk8d4bwy";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "8a410e7b638d";
+      sha256 = "0hp0l8f6fir5gmgrjq0mhh5ikc0rlrm72774228800kfwqjrxxny";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "1d60e4601c6f";
+      sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "d99a578cf41b";
+      sha256 = "10q9xx4pmnq92qn6ff4xp7n1hx766wvw2rf7pqcd6rx5plgwz8cm";
+    };
+  }
+]
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b96a33563e8..efb90f2cb79 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15533,9 +15533,7 @@ in
   dstat = callPackage ../os-specific/linux/dstat { };
 
   # unstable until the first 1.x release
-  fscrypt-experimental = callPackage ../os-specific/linux/fscrypt {
-    buildGoPackage = buildGo110Package;
-  };
+  fscrypt-experimental = callPackage ../os-specific/linux/fscrypt { };
   fscryptctl-experimental = callPackage ../os-specific/linux/fscryptctl { };
 
   fwupd = callPackage ../os-specific/linux/firmware/fwupd { };

From a560ea37362672215996d986c758aefc341c9010 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:07:58 +0100
Subject: [PATCH 26/92] prometheus-snmp-exporter: 0.13.0 -> 0.15.0

---
 pkgs/servers/monitoring/prometheus/snmp-exporter.nix | 4 ++--
 pkgs/top-level/all-packages.nix                      | 4 +---
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
index cbafabb18b5..dfa81d4da83 100644
--- a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "snmp_exporter";
-  version = "0.13.0";
+  version = "0.15.0";
 
   goPackagePath = "github.com/prometheus/snmp_exporter";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "prometheus";
     repo = "snmp_exporter";
     rev = "v${version}";
-    sha256 = "071v9qqhp2hcbgml94dm1l212qi18by88r9755npq9ycrsmawkll";
+    sha256 = "1cnz1wapxs3fkghzy6v90s56vd0ngynypyapcpbmx5y66rlpdxx6";
   };
 
   buildInputs = [ net_snmp ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index efb90f2cb79..e6fa5e79571 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15087,9 +15087,7 @@ in
   prometheus-process-exporter = callPackage ../servers/monitoring/prometheus/process-exporter.nix { };
   prometheus-pushgateway = callPackage ../servers/monitoring/prometheus/pushgateway.nix { };
   prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { };
-  prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix {
-    buildGoPackage = buildGo110Package;
-  };
+  prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
   prometheus-tor-exporter = callPackage ../servers/monitoring/prometheus/tor-exporter.nix { };
   prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { };
   prometheus-surfboard-exporter = callPackage ../servers/monitoring/prometheus/surfboard-exporter.nix { };

From 3c22b235800757d4c6393b8c28bc407e425cb729 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:08:16 +0100
Subject: [PATCH 27/92] prometheus_1: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e6fa5e79571..42ec479601e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15053,9 +15053,7 @@ in
 
   postgresql_jdbc = callPackage ../development/java-modules/postgresql_jdbc { };
 
-  inherit (callPackage ../servers/monitoring/prometheus {
-    buildGoPackage = buildGo110Package;
-  }) prometheus_1;
+  inherit (callPackage ../servers/monitoring/prometheus { }) prometheus_1;
 
   inherit (callPackage ../servers/monitoring/prometheus { })
     prometheus_2;

From 2ff836f6bf0227600f7ca190e1233cdf2d63f3df Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:09:07 +0100
Subject: [PATCH 28/92] diskrsync: unstable-2018-02-03 -> unstable-2019-01-02

---
 pkgs/tools/backup/diskrsync/default.nix |  6 ++--
 pkgs/tools/backup/diskrsync/deps.nix    | 37 +++++++++++++++++++++----
 pkgs/top-level/all-packages.nix         |  4 +--
 3 files changed, 36 insertions(+), 11 deletions(-)

diff --git a/pkgs/tools/backup/diskrsync/default.nix b/pkgs/tools/backup/diskrsync/default.nix
index 97d876da127..b2ef04dcffc 100644
--- a/pkgs/tools/backup/diskrsync/default.nix
+++ b/pkgs/tools/backup/diskrsync/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "diskrsync";
-  version = "unstable-2018-02-03";
+  version = "unstable-2019-01-02";
 
   src = fetchFromGitHub {
     owner = "dop251";
     repo = pname;
-    rev = "2f36bd6e5084ce16c12a2ee216ebb2939a7d5730";
-    sha256 = "1rpfk7ds4lpff30aq4d8rw7g9j4bl2hd1bvcwd1pfxalp222zkxn";
+    rev = "e8598ef71038527a8a77d1a6cf2a73cfd96d9139";
+    sha256 = "1dqpmc4hp81knhdk3mrmwdr66xiibsvj5lagbm5ciajg9by45mcs";
   };
 
   goPackagePath = "github.com/dop251/diskrsync";
diff --git a/pkgs/tools/backup/diskrsync/deps.nix b/pkgs/tools/backup/diskrsync/deps.nix
index 684100968e8..8045737164b 100644
--- a/pkgs/tools/backup/diskrsync/deps.nix
+++ b/pkgs/tools/backup/diskrsync/deps.nix
@@ -1,12 +1,12 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
 [
   {
     goPackagePath = "github.com/dop251/spgz";
     fetch = {
       type = "git";
       url = "https://github.com/dop251/spgz";
-      rev = "d50e5e978e08044da0cf9babc6b42b55ec8fe0d5";
-      sha256 = "11h8z6cwxw272rn5zc4y3w9d6py113iaimy681v6xxv26d30m8bx";
+      rev = "b86304a2b188";
+      sha256 = "1zss1z523qagk99plb0my8m8ng0danl372iyk1pr4i2skp2bf5z7";
     };
   }
   {
@@ -14,8 +14,35 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "1875d0a70c90e57f11972aefd42276df65e895b9";
-      sha256 = "1kprrdzr4i4biqn7r9gfxzsmijya06i9838skprvincdb1pm0q2q";
+      rev = "9756ffdc2472";
+      sha256 = "0q7hxaaq6lp0v8qqzifvysl47z5rfdlrxkh3d29vsl3wyby3dxl8";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "eb5bcb51f2a3";
+      sha256 = "17k4g8krxbl84gzcs275b7gsh66dzm15fdxivjnx9xz8q84l4kby";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "97732733099d";
+      sha256 = "118hkp01i4z1f5h6hcjm0ff2ngqhrzj1f7731n0kw8dr6hvbx0sw";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
     };
   }
 ]
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 42ec479601e..b2d636c5fbc 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2624,9 +2624,7 @@ in
 
   dev86 = callPackage ../development/compilers/dev86 { };
 
-  diskrsync = callPackage ../tools/backup/diskrsync {
-    buildGoPackage = buildGo110Package;
-  };
+  diskrsync = callPackage ../tools/backup/diskrsync { };
 
   djbdns = callPackage ../tools/networking/djbdns { };
 

From 7e8573be4355470e5be80ed0c1dea84017269393 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:10:00 +0100
Subject: [PATCH 29/92] goa: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b2d636c5fbc..7884a3ac277 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1716,9 +1716,7 @@ in
 
   gmic_krita_qt = libsForQt5.callPackage ../tools/graphics/gmic_krita_qt { };
 
-  goa = callPackage ../development/tools/goa {
-    buildGoPackage = buildGo110Package;
-  };
+  goa = callPackage ../development/tools/goa { };
 
   gohai = callPackage ../tools/system/gohai { };
 

From f942702542e59b2589b6446ae4ef12b6197e9041 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:10:12 +0100
Subject: [PATCH 30/92] dnscrypt-proxy2: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7884a3ac277..4f3474cc2f5 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2628,9 +2628,7 @@ in
 
   dnscrypt-proxy = callPackage ../tools/networking/dnscrypt-proxy/1.x { };
 
-  dnscrypt-proxy2 = callPackage ../tools/networking/dnscrypt-proxy/2.x {
-    buildGoPackage = buildGo110Package;
-  };
+  dnscrypt-proxy2 = callPackage ../tools/networking/dnscrypt-proxy/2.x { };
 
   dnscrypt-wrapper = callPackage ../tools/networking/dnscrypt-wrapper { };
 

From 416d11bb83a26231b28073d98755dba4ca36f847 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:10:26 +0100
Subject: [PATCH 31/92] ipget: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4f3474cc2f5..055873e13de 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4036,9 +4036,7 @@ in
   ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { };
   ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { };
 
-  ipget = callPackage ../applications/networking/ipget {
-    buildGoPackage = buildGo110Package;
-  };
+  ipget = callPackage ../applications/networking/ipget { };
 
   ipmitool = callPackage ../tools/system/ipmitool {
     openssl = openssl_1_0_2;

From 4bca8b48fbb9475a34820f5470623f18a45ddeed Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:10:48 +0100
Subject: [PATCH 32/92] notary: Build with go 1.12

---
 pkgs/tools/security/notary/default.nix | 2 +-
 pkgs/top-level/all-packages.nix        | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/pkgs/tools/security/notary/default.nix b/pkgs/tools/security/notary/default.nix
index 17473b63988..f1a61adabbb 100644
--- a/pkgs/tools/security/notary/default.nix
+++ b/pkgs/tools/security/notary/default.nix
@@ -18,7 +18,7 @@ buildGoPackage rec {
   buildPhase = ''
     runHook preBuild
     cd go/src/github.com/theupdateframework/notary
-    make client GITCOMMIT=${gitcommit}
+    SKIPENVCHECK=1 make client GITCOMMIT=${gitcommit}
     runHook postBuild
   '';
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 055873e13de..5c234300388 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5111,9 +5111,7 @@ in
 
   nnn = callPackage ../applications/misc/nnn { };
 
-  notary = callPackage ../tools/security/notary {
-    buildGoPackage = buildGo110Package;
-  };
+  notary = callPackage ../tools/security/notary { };
 
   notify-osd = callPackage ../applications/misc/notify-osd { };
 

From 137f94711d7f7f657825b0d6ae08dfc9645df5e7 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:11:34 +0100
Subject: [PATCH 33/92] meguca: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5c234300388..c003efd0993 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14752,9 +14752,7 @@ in
 
   mediatomb = callPackage ../servers/mediatomb { };
 
-  meguca = callPackage ../servers/meguca {
-    buildGoPackage = buildGo110Package;
-  };
+  meguca = callPackage ../servers/meguca { };
 
   memcached = callPackage ../servers/memcached {};
 

From 538a27b54efd8b4f103706173123234fbeab0393 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:15:22 +0100
Subject: [PATCH 34/92] tmsu: Build with go 1.12

---
 pkgs/top-level/all-packages.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c003efd0993..0a4e47b0615 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6535,9 +6535,7 @@ in
 
   tmuxPlugins = recurseIntoAttrs (callPackage ../misc/tmux-plugins { });
 
-  tmsu = callPackage ../tools/filesystems/tmsu {
-    go = go_1_10;
-  };
+  tmsu = callPackage ../tools/filesystems/tmsu { };
 
   toilet = callPackage ../tools/misc/toilet { };
 

From b611485ad54f4221bd10667a145429132de81935 Mon Sep 17 00:00:00 2001
From: adisbladis <adisbladis@gmail.com>
Date: Thu, 5 Sep 2019 22:15:37 +0100
Subject: [PATCH 35/92] go_1_10: Drop package

It's unsupported by upstream.
---
 pkgs/development/compilers/go/1.10.nix | 187 -------------------------
 pkgs/top-level/all-packages.nix        |   7 -
 2 files changed, 194 deletions(-)
 delete mode 100644 pkgs/development/compilers/go/1.10.nix

diff --git a/pkgs/development/compilers/go/1.10.nix b/pkgs/development/compilers/go/1.10.nix
deleted file mode 100644
index 3b924f58bfe..00000000000
--- a/pkgs/development/compilers/go/1.10.nix
+++ /dev/null
@@ -1,187 +0,0 @@
-{ stdenv, fetchFromGitHub, tzdata, iana-etc, go_bootstrap, runCommand, writeScriptBin
-, perl, which, pkgconfig, patch, procps, pcre, cacert, Security, Foundation
-, fetchpatch
-}:
-
-let
-
-  inherit (stdenv.lib) optionals optionalString;
-
-  clangHack = writeScriptBin "clang" ''
-    #!${stdenv.shell}
-    exec ${stdenv.cc}/bin/clang "$@" 2> >(sed '/ld: warning:.*ignoring unexpected dylib file/ d' 1>&2)
-  '';
-
-  goBootstrap = runCommand "go-bootstrap" {} ''
-    mkdir $out
-    cp -rf ${go_bootstrap}/* $out/
-    chmod -R u+w $out
-    find $out -name "*.c" -delete
-    cp -rf $out/bin/* $out/share/go/bin/
-  '';
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "go";
-  version = "1.10.8";
-
-  src = fetchFromGitHub {
-    owner = "golang";
-    repo = "go";
-    rev = "go${version}";
-    sha256 = "1yynv105wh8pwiq61v4yg5i50k13g3x634x60mhxhv4gj9cq06cx";
-  };
-
-  GOCACHE = "off";
-
-  # perl is used for testing go vet
-  nativeBuildInputs = [ perl which pkgconfig patch procps ];
-  buildInputs = [ cacert pcre ]
-    ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
-    ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
-  propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
-
-  hardeningDisable = [ "all" ];
-
-  prePatch = ''
-    patchShebangs ./ # replace /bin/bash
-
-    # This source produces shell script at run time,
-    # and thus it is not corrected by patchShebangs.
-    substituteInPlace misc/cgo/testcarchive/carchive_test.go \
-      --replace '#!/usr/bin/env bash' '#!${stdenv.shell}'
-
-    # Disabling the 'os/http/net' tests (they want files not available in
-    # chroot builds)
-    rm src/net/{listen,parse}_test.go
-    rm src/syscall/exec_linux_test.go
-
-    # !!! substituteInPlace does not seems to be effective.
-    # The os test wants to read files in an existing path. Just don't let it be /usr/bin.
-    sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go
-    sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go
-    # Disable the unix socket test
-    sed -i '/TestShutdownUnix/areturn' src/net/net_test.go
-    # Disable the hostname test
-    sed -i '/TestHostname/areturn' src/os/os_test.go
-    # ParseInLocation fails the test
-    sed -i '/TestParseInSydney/areturn' src/time/format_test.go
-    # Remove the api check as it never worked
-    sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go
-    # Remove the coverage test as we have removed this utility
-    sed -i '/TestCoverageWithCgo/areturn' src/cmd/go/go_test.go
-    # Remove the timezone naming test
-    sed -i '/TestLoadFixed/areturn' src/time/time_test.go
-    # Remove disable setgid test
-    sed -i '/TestRespectSetgidDir/areturn' src/cmd/go/internal/work/build_test.go
-    # Remove cert tests that conflict with NixOS's cert resolution
-    sed -i '/TestEnvVars/areturn' src/crypto/x509/root_unix_test.go
-    # TestWritevError hangs sometimes
-    sed -i '/TestWritevError/areturn' src/net/writev_test.go
-    # TestVariousDeadlines fails sometimes
-    sed -i '/TestVariousDeadlines/areturn' src/net/timeout_test.go
-
-    sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
-    sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go
-
-    # Disable cgo lookup tests not works, they depend on resolver
-    rm src/net/cgo_unix_test.go
-
-  '' + optionalString stdenv.isLinux ''
-    sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go
-  '' + optionalString stdenv.isAarch32 ''
-    sed -i '/TestCurrent/areturn' src/os/user/user_test.go
-    echo '#!${stdenv.shell}' > misc/cgo/testplugin/test.bash
-  '' + optionalString stdenv.isDarwin ''
-    substituteInPlace src/race.bash --replace \
-      "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
-    sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
-    sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go
-    sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go
-
-    sed -i '/TestChdirAndGetwd/areturn' src/os/os_test.go
-    sed -i '/TestCredentialNoSetGroups/areturn' src/os/exec/exec_posix_test.go
-    sed -i '/TestCurrent/areturn' src/os/user/user_test.go
-    sed -i '/TestNohup/areturn' src/os/signal/signal_test.go
-    sed -i '/TestRead0/areturn' src/os/os_test.go
-    sed -i '/TestSystemRoots/areturn' src/crypto/x509/root_darwin_test.go
-
-    sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/areturn' src/cmd/go/go_test.go
-    sed -i '/TestBuildDashIInstallsDependencies/areturn' src/cmd/go/go_test.go
-
-    sed -i '/TestDisasmExtld/areturn' src/cmd/objdump/objdump_test.go
-
-    sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go
-
-    touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
-  '';
-
-  patches = [
-    ./remove-tools-1.9.patch
-    ./ssl-cert-file-1.9.patch
-    ./remove-test-pie.patch
-    ./creds-test.patch
-    ./go-1.9-skip-flaky-19608.patch
-    ./go-1.9-skip-flaky-20072.patch
-    (fetchpatch {
-      name = "missing_cpuHog_in_pprof_output.diff";
-      url = "https://github.com/golang/go/commit/33110e2c.diff";
-      sha256 = "04vh9lflbpz9xjvymyzhd91gkxiiwwz4lhglzl3r8z0lk45p96qn";
-    })
-  ];
-
-  GOOS = if stdenv.isDarwin then "darwin" else "linux";
-  GOARCH = if stdenv.isDarwin then "amd64"
-           else if stdenv.hostPlatform.system == "i686-linux" then "386"
-           else if stdenv.hostPlatform.system == "x86_64-linux" then "amd64"
-           else if stdenv.isAarch32 then "arm"
-           else if stdenv.isAarch64 then "arm64"
-           else throw "Unsupported system";
-  GOARM = optionalString (stdenv.hostPlatform.system == "armv5tel-linux") "5";
-  GO386 = 387; # from Arch: don't assume sse2 on i686
-  CGO_ENABLED = 1;
-  GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
-  # Hopefully avoids test timeouts on Hydra
-  GO_TEST_TIMEOUT_SCALE = 3;
-
-  # The go build actually checks for CC=*/clang and does something different, so we don't
-  # just want the generic `cc` here.
-  CC = if stdenv.isDarwin then "clang" else "cc";
-
-  configurePhase = ''
-    mkdir -p $out/share/go/bin
-    export GOROOT=$out/share/go
-    export GOBIN=$GOROOT/bin
-    export PATH=$GOBIN:$PATH
-    ulimit -a
-  '';
-
-  postConfigure = optionalString stdenv.isDarwin ''
-    export PATH=${clangHack}/bin:$PATH
-  '';
-
-  installPhase = ''
-    cp -r . $GOROOT
-    ( cd $GOROOT/src && ./all.bash )
-  '';
-
-  preFixup = ''
-    rm -r $out/share/go/pkg/bootstrap
-    ln -s $out/share/go/bin $out/bin
-  '';
-
-  setupHook = ./setup-hook.sh;
-
-  disallowedReferences = [ go_bootstrap ];
-
-  meta = with stdenv.lib; {
-    branch = "1.10";
-    homepage = http://golang.org/;
-    description = "The Go Programming language";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ cstrahan orivej velovix mic92 ];
-    platforms = platforms.linux ++ platforms.darwin;
-    badPlatforms = [ "x86_64-darwin" ];
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0a4e47b0615..307c69b2396 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7909,10 +7909,6 @@ in
       inherit (darwin.apple_sdk.frameworks) Security;
     };
 
-  go_1_10 = callPackage ../development/compilers/go/1.10.nix {
-    inherit (darwin.apple_sdk.frameworks) Security Foundation;
-  };
-
   go_1_11 = callPackage ../development/compilers/go/1.11.nix {
     inherit (darwin.apple_sdk.frameworks) Security Foundation;
   };
@@ -14367,9 +14363,6 @@ in
 
   ### DEVELOPMENT / GO MODULES
 
-  buildGo110Package = callPackage ../development/go-packages/generic {
-    go = buildPackages.go_1_10;
-  };
   buildGo111Package = callPackage ../development/go-packages/generic {
     go = buildPackages.go_1_11;
   };

From 8e6b1cac3127c52e3c2b14a627f08255a5e55df1 Mon Sep 17 00:00:00 2001
From: Markus Hauck <markus1189@gmail.com>
Date: Fri, 6 Sep 2019 10:01:47 +0200
Subject: [PATCH 36/92] imv: 3.1.2 -> 4.0.1

---
 pkgs/applications/graphics/imv/default.nix | 38 ++++++++++++++++++----
 1 file changed, 32 insertions(+), 6 deletions(-)

diff --git a/pkgs/applications/graphics/imv/default.nix b/pkgs/applications/graphics/imv/default.nix
index 38e536c70cb..5f06feb7c62 100644
--- a/pkgs/applications/graphics/imv/default.nix
+++ b/pkgs/applications/graphics/imv/default.nix
@@ -1,27 +1,53 @@
-{ stdenv, fetchFromGitHub, SDL2, SDL2_ttf
+{ stdenv, fetchFromGitHub
 , freeimage, fontconfig, pkgconfig
 , asciidoc, docbook_xsl, libxslt, cmocka
-, librsvg
+, librsvg, pango, libxkbcommon, wayland
+, libGLU
 }:
 
 stdenv.mkDerivation rec {
   pname = "imv";
-  version = "3.1.2";
+  version = "4.0.1";
 
   src = fetchFromGitHub {
     owner  = "eXeC64";
     repo   = "imv";
     rev    = "v${version}";
-    sha256 = "0gg362x2f7hli6cr6s7dmlanh4cqk7fd2pmk4zs9438jvqklf4cl";
+    sha256 = "sha256:01fbkbwwsyr00k3mwans8jfb9p4gl02v6z62vgx0pkgrzxjkcz07";
   };
 
+  preBuild = ''
+    # Version is 4.0.1, but Makefile was not updated
+    sed -i 's/echo v4\.0\.0/echo v4.0.1/' Makefile
+  '';
+
+  nativeBuildInputs = [
+    asciidoc
+    cmocka
+    docbook_xsl
+    libxslt
+  ];
+
   buildInputs = [
-    SDL2 SDL2_ttf freeimage fontconfig pkgconfig
-    asciidoc docbook_xsl libxslt cmocka librsvg
+    freeimage
+    libGLU
+    librsvg
+    libxkbcommon
+    pango
+    pkgconfig
+    wayland
   ];
 
   installFlags = [ "PREFIX=$(out)" "CONFIGPREFIX=$(out)/etc" ];
 
+  postFixup = ''
+    # The `bin/imv` script assumes imv-wayland or imv-x11 in PATH,
+    # so we have to fix those to the binaries we installed into the /nix/store
+
+    sed -i "s|\bimv-wayland\b|$out/bin/imv-wayland|" $out/bin/imv
+    sed -i "s|\bimv-x11\b|$out/bin/imv-x11|" $out/bin/imv
+  '';
+
   doCheck = true;
 
   meta = with stdenv.lib; {

From 792444af8402cacb94d7ec4c58adba9e36ef8cb2 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Tue, 27 Aug 2019 15:39:48 -0400
Subject: [PATCH 37/92] nixos/system-config-printer: init

---
 nixos/modules/module-list.nix                 |  2 +
 .../programs/system-config-printer.nix        | 32 ++++++++++++++++
 .../desktops/system-config-printer.nix        | 38 +++++++++++++++++++
 3 files changed, 72 insertions(+)
 create mode 100644 nixos/modules/programs/system-config-printer.nix
 create mode 100644 nixos/modules/services/desktops/system-config-printer.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index fe28cf7fa49..c21973faa89 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -151,6 +151,7 @@
   ./programs/sysdig.nix
   ./programs/systemtap.nix
   ./programs/sway.nix
+  ./programs/system-config-printer.nix
   ./programs/thefuck.nix
   ./programs/tmux.nix
   ./programs/tsm-client.nix
@@ -309,6 +310,7 @@
   ./services/desktops/gnome3/tracker.nix
   ./services/desktops/gnome3/tracker-miners.nix
   ./services/desktops/profile-sync-daemon.nix
+  ./services/desktops/system-config-printer.nix
   ./services/desktops/telepathy.nix
   ./services/desktops/tumbler.nix
   ./services/desktops/zeitgeist.nix
diff --git a/nixos/modules/programs/system-config-printer.nix b/nixos/modules/programs/system-config-printer.nix
new file mode 100644
index 00000000000..34592dd7064
--- /dev/null
+++ b/nixos/modules/programs/system-config-printer.nix
@@ -0,0 +1,32 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    programs.system-config-printer = {
+
+      enable = mkEnableOption "system-config-printer, a Graphical user interface for CUPS administration";
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.programs.system-config-printer.enable {
+
+    environment.systemPackages = [
+      pkgs.system-config-printer
+    ];
+
+    services.system-config-printer.enable = true;
+
+  };
+
+}
diff --git a/nixos/modules/services/desktops/system-config-printer.nix b/nixos/modules/services/desktops/system-config-printer.nix
new file mode 100644
index 00000000000..8a80be266b2
--- /dev/null
+++ b/nixos/modules/services/desktops/system-config-printer.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.system-config-printer = {
+
+      enable = mkEnableOption "system-config-printer, a service for CUPS administration used by printing interfaces";
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.system-config-printer.enable {
+
+    services.dbus.packages = [
+      pkgs.system-config-printer
+    ];
+
+    systemd.packages = [
+      pkgs.system-config-printer
+    ];
+
+    services.udev.packages = [
+      pkgs.system-config-printer
+    ];
+
+  };
+
+}

From 5a03f90525360547e1cf53d82ea5795f390779de Mon Sep 17 00:00:00 2001
From: Ivan Kozik <ivan@ludios.org>
Date: Fri, 6 Sep 2019 14:50:59 +0000
Subject: [PATCH 38/92] nixos/railcar: remove use of the deprecated string type

This fixes the warning being emitted by nixos-rebuild switch:

building Nix...
building the system configuration...
trace: warning: types.string is deprecated because it quietly concatenates strings

It started emitting a warning in #66346.
---
 nixos/modules/virtualisation/railcar.nix | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/nixos/modules/virtualisation/railcar.nix b/nixos/modules/virtualisation/railcar.nix
index 8b643e3b6d6..12da1c75fc3 100644
--- a/nixos/modules/virtualisation/railcar.nix
+++ b/nixos/modules/virtualisation/railcar.nix
@@ -25,7 +25,7 @@ let
   mount = with types; (submodule {
     options = {
       type = mkOption {
-        type = string;
+        type = str;
         default = "none";
         description = ''
           The type of the filesystem to be mounted.
@@ -37,11 +37,11 @@ let
         '';
       };
       source = mkOption {
-        type = string;
+        type = str;
         description = "Source for the in-container mount";
       };
       options = mkOption {
-        type = loaOf (string);
+        type = loaOf (str);
         default = [ "bind" ];
         description = ''
           Mount options of the filesystem to be used.
@@ -64,7 +64,7 @@ in
       type = with types; loaOf (submodule ({ name, config, ... }: {
         options = {
           cmd = mkOption {
-            type = types.string;
+            type = types.lines;
             description = "Command or script to run inside the container";
           };
 
@@ -83,19 +83,19 @@ in
           };
 
           runType = mkOption {
-            type = types.string;
+            type = types.str;
             default = "oneshot";
             description = "The systemd service run type";
           };
 
           os = mkOption {
-            type = types.string;
+            type = types.str;
             default = "linux";
             description = "OS type of the container";
           };
 
           arch = mkOption {
-            type = types.string;
+            type = types.str;
             default = "x86_64";
             description = "Computer architecture type of the container";
           };

From 2a7910655eafc38272e5fd54dba155b892239c81 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <v@cunat.cz>
Date: Fri, 6 Sep 2019 17:16:18 +0200
Subject: [PATCH 39/92] qt5 on darwin: revert back to 5.11

5.12 has been broken again, nad libsForQt5 has never been switched
anyway.  This should unblock the nixpkgs channel.  Discussion thread:
https://github.com/NixOS/nixpkgs/pull/66266#issuecomment-523131781
---
 pkgs/top-level/all-packages.nix | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 99b347a33c4..ca582ea8a62 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13215,7 +13215,8 @@ in
 
   libsForQt512 = recurseIntoAttrs (lib.makeScope qt512.newScope mkLibsForQt5);
 
-  qt5 = qt512;
+  # TODO bump to 5.12 on darwin once it's not broken
+  qt5 = if stdenv.isDarwin then qt511 else qt512;
   libsForQt5 = if stdenv.isDarwin then libsForQt511 else libsForQt512;
 
   qt5ct = libsForQt5.callPackage ../tools/misc/qt5ct { };

From 9786a40304ad1d1e1d099b5ac0b22b0aafe65941 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 6 Sep 2019 14:21:12 +0200
Subject: [PATCH 40/92] hackage2nix: update list of broken Haskell builds

---
 .../configuration-hackage2nix.yaml            | 28 +++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index c0f3ec25fe8..08f37dc7872 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -3097,6 +3097,7 @@ broken-packages:
   - arbor-monad-metric
   - arbor-monad-metric-datadog
   - arbor-postgres
+  - arbtt
   - archiver
   - archlinux
   - archlinux-web
@@ -3115,6 +3116,7 @@ broken-packages:
   - armor
   - arpa
   - arpack
+  - array-chunks
   - array-forth
   - array-primops
   - arraylist
@@ -3366,7 +3368,9 @@ broken-packages:
   - Biobase
   - BiobaseBlast
   - BiobaseDotP
+  - BiobaseENA
   - BiobaseEnsembl
+  - BiobaseFasta
   - BiobaseFR3D
   - BiobaseHTTP
   - BiobaseHTTPTools
@@ -3375,7 +3379,9 @@ broken-packages:
   - BiobaseNewick
   - BiobaseTrainingData
   - BiobaseTurner
+  - BiobaseTypes
   - BiobaseVienna
+  - BiobaseXNA
   - biocore
   - biofasta
   - biofastq
@@ -3592,6 +3598,7 @@ broken-packages:
   - cabin
   - cabocha
   - cached
+  - cachix
   - cacophony
   - caffegraph
   - cairo-core
@@ -3945,6 +3952,7 @@ broken-packages:
   - Conscript
   - consistent
   - const-math-ghc-plugin
+  - constr-eq
   - constrained-categories
   - constrained-category
   - constrained-dynamic
@@ -4087,6 +4095,7 @@ broken-packages:
   - ctpl
   - cube
   - cuboid
+  - cuckoo
   - cudd
   - currency-convert
   - curry-frontend
@@ -4485,6 +4494,7 @@ broken-packages:
   - DysFRP-Cairo
   - DysFRP-Craftwerk
   - dywapitchtrack
+  - dzen-dhall
   - dzen-utils
   - earclipper
   - ease
@@ -4530,6 +4540,7 @@ broken-packages:
   - ekg-rrd
   - elevator
   - elision
+  - elliptic-curve
   - elm-websocket
   - elsa
   - emacs-keys
@@ -4955,6 +4966,7 @@ broken-packages:
   - funpat
   - funsat
   - fusion
+  - futhark
   - futun
   - future
   - fuzzy-timings
@@ -5030,6 +5042,7 @@ broken-packages:
   - GenSmsPdu
   - gentlemark
   - GenussFold
+  - genvalidity-mergeless
   - geo-resolver
   - GeocoderOpenCage
   - geodetic
@@ -5361,6 +5374,7 @@ broken-packages:
   - hakismet
   - hakka
   - hako
+  - hakyll
   - hakyll-agda
   - hakyll-blaze-templates
   - hakyll-contrib
@@ -5373,6 +5387,7 @@ broken-packages:
   - hakyll-dir-list
   - hakyll-favicon
   - hakyll-filestore
+  - hakyll-images
   - hakyll-ogmarkup
   - hakyll-R
   - hakyll-sass
@@ -6293,6 +6308,7 @@ broken-packages:
   - hw-json-simple-cursor
   - hw-json-standard-cursor
   - hw-packed-vector
+  - hw-prim-bits
   - hw-rankselect
   - hw-rankselect-base
   - hw-simd
@@ -6347,6 +6363,7 @@ broken-packages:
   - hypher
   - hzulip
   - i18n
+  - I1M
   - i3blocks-hs-contrib
   - i3ipc
   - iap-verifier
@@ -6652,6 +6669,7 @@ broken-packages:
   - katydid
   - kawaii
   - kawhi
+  - kazura-queue
   - kd-tree
   - kdesrc-build-extra
   - keccak
@@ -6876,6 +6894,7 @@ broken-packages:
   - liblawless
   - liblinear-enumerator
   - libltdl
+  - libmodbus
   - libmolude
   - liboath-hs
   - liboleg
@@ -7417,6 +7436,7 @@ broken-packages:
   - multibase
   - multifocal
   - multihash
+  - multihash-cryptonite
   - multihash-serialise
   - multilinear
   - multilinear-io
@@ -7782,6 +7802,7 @@ broken-packages:
   - pandoc-japanese-filters
   - pandoc-lens
   - pandoc-markdown-ghci-filter
+  - pandoc-placetable
   - pandoc-plantuml-diagrams
   - pandoc-pyplot
   - pandoc-unlit
@@ -7999,6 +8020,7 @@ broken-packages:
   - plat
   - platinum-parsing
   - PlayingCards
+  - plex
   - plist-buddy
   - plocketed
   - plot
@@ -8068,6 +8090,7 @@ broken-packages:
   - postgresql-query
   - postgresql-simple-bind
   - postgresql-simple-named
+  - postgresql-simple-opts
   - postgresql-simple-queue
   - postgresql-simple-sop
   - postgresql-simple-typed
@@ -8671,6 +8694,7 @@ broken-packages:
   - scenegraph
   - schedevr
   - schedule-planner
+  - scheduler
   - schedyield
   - schematic
   - scholdoc
@@ -9799,6 +9823,7 @@ broken-packages:
   - unagi-streams
   - unamb-custom
   - unbound
+  - unbound-kind-generics
   - unbounded-delays-units
   - unboxed-containers
   - unbreak
@@ -10256,7 +10281,10 @@ broken-packages:
   - yahoo-web-search
   - yajl
   - yajl-enumerator
+  - yam
+  - yam-datasource
   - yam-job
+  - yam-redis
   - yam-servant
   - yam-transaction-odbc
   - yam-web

From 7f01fe98453746d16b67811b903382b349e8ac34 Mon Sep 17 00:00:00 2001
From: rnhmjoj <rnhmjoj@inventati.org>
Date: Wed, 4 Sep 2019 14:16:52 +0200
Subject: [PATCH 41/92] haskellPackages.matplotlib: unmark as broken

---
 pkgs/development/haskell-modules/configuration-common.nix       | 1 +
 pkgs/development/haskell-modules/configuration-hackage2nix.yaml | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 7b173da2a91..decf430d78f 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -332,6 +332,7 @@ self: super: {
   lensref = dontCheck super.lensref;
   lucid = dontCheck super.lucid; #https://github.com/chrisdone/lucid/issues/25
   lvmrun = disableHardening (dontCheck super.lvmrun) ["format"];
+  matplotlib = dontCheck super.matplotlib;
   memcache = dontCheck super.memcache;
   MemoTrie = dontHaddock (dontCheck super.MemoTrie);
   metrics = dontCheck super.metrics;
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 08f37dc7872..996120c6f1d 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -7163,7 +7163,6 @@ broken-packages:
   - mathflow
   - mathgenealogy
   - mathlink
-  - matplotlib
   - matrix-as-xyz
   - matsuri
   - matterhorn

From 62771c8774c18779cdc3f5830ce3ffcc3672ef0d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 4 Sep 2019 02:31:06 +0200
Subject: [PATCH 42/92] hackage-packages.nix: automatic Haskell package set
 update

This update was generated by hackage2nix v2.14.4-7-ga804c35 from Hackage revision
https://github.com/commercialhaskell/all-cabal-hashes/commit/81252f75d27ad79d8857d3f0be85bd3a56e33896.
---
 .../haskell-modules/hackage-packages.nix      | 1235 ++++++++++++++---
 1 file changed, 1008 insertions(+), 227 deletions(-)

diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 19295cc2752..e963d183189 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -1562,6 +1562,8 @@ self: {
        ];
        description = "European Nucleotide Archive data";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BiobaseEnsembl" = callPackage
@@ -1622,6 +1624,8 @@ self: {
        ];
        description = "streaming FASTA parser";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BiobaseHTTP" = callPackage
@@ -1817,6 +1821,8 @@ self: {
        ];
        description = "Collection of types for bioinformatics";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BiobaseVienna" = callPackage
@@ -1875,6 +1881,8 @@ self: {
        ];
        description = "Efficient RNA/DNA/Protein Primary/Secondary Structure";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BirdPP" = callPackage
@@ -10756,6 +10764,8 @@ self: {
        testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Code for the Haskell course taught at the University of Seville";
        license = stdenv.lib.licenses.gpl2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "IDynamic" = callPackage
@@ -15742,15 +15752,15 @@ self: {
   "PyF" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, directory
      , filepath, hashable, haskell-src-exts, haskell-src-meta, hspec
-     , HUnit, megaparsec, process, python3, template-haskell, temporary
-     , text
+     , HUnit, megaparsec, mtl, process, python3, template-haskell
+     , temporary, text
      }:
      mkDerivation {
        pname = "PyF";
-       version = "0.8.0.2";
-       sha256 = "1i3axpca5myig7wwdy770k2jy85m4cfpvhxrrw41q31fyv67j98n";
+       version = "0.8.1.0";
+       sha256 = "10zmw6ircqq53jvkmpqdf7sqf1pgc85m4w2k981jwbhpc3dycgrb";
        libraryHaskellDepends = [
-         base containers haskell-src-exts haskell-src-meta megaparsec
+         base containers haskell-src-exts haskell-src-meta megaparsec mtl
          template-haskell text
        ];
        testHaskellDepends = [
@@ -22476,14 +22486,12 @@ self: {
      }) {};
 
   "acquire" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "acquire";
-       version = "0.2.0.1";
-       sha256 = "0l6c3kdvg71z6pfjg71jgaffb403w8y8lixw4dhi7phhhb91phn2";
-       revision = "1";
-       editedCabalFile = "1ihmdh0dpppgshsh7mxdz6bm9kn632xxd3g6nkigpjpfrb372q7z";
-       libraryHaskellDepends = [ base ];
+       version = "0.3.1";
+       sha256 = "1spw70dw8x6d9dy5wg47fim4kpsvzgr25nmwpv8c4wd8g3gmnqmw";
+       libraryHaskellDepends = [ base transformers ];
        description = "Abstraction over management of resources";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -22963,6 +22971,8 @@ self: {
        pname = "aeson";
        version = "1.4.4.0";
        sha256 = "0bjdgr6wjq6cci5hxb63i18yrg66p892n6xj23rih7k5rbd7rihp";
+       revision = "1";
+       editedCabalFile = "1mn7ws8v5zsm9fy9ndvb0rygchjbwnnxyyxpl63cf9lmzzffvxd6";
        libraryHaskellDepends = [
          attoparsec base base-compat bytestring containers deepseq dlist
          ghc-prim hashable primitive scientific tagged template-haskell text
@@ -28627,6 +28637,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ansi-terminal_0_10" = callPackage
+    ({ mkDerivation, base, colour }:
+     mkDerivation {
+       pname = "ansi-terminal";
+       version = "0.10";
+       sha256 = "0l96g8m88qbyhp6mvm895b102jc5z3b85i0fvb4w99x2zj4pnv7y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base colour ];
+       description = "Simple ANSI terminal support, with Windows compatibility";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ansi-terminal-game" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, bytestring, cereal
      , clock, exceptions, hspec, linebreak, mintty, mtl, QuickCheck
@@ -30434,6 +30458,8 @@ self: {
        ];
        description = "Automatic Rule-Based Time Tracker";
        license = stdenv.lib.licenses.gpl2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "arcgrid" = callPackage
@@ -31001,6 +31027,8 @@ self: {
        ];
        description = "Lists of chunks";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "array-forth" = callPackage
@@ -35746,8 +35774,8 @@ self: {
        pname = "base64-bytestring-type";
        version = "1.0.1";
        sha256 = "03kq4rjj6by02rf3hg815jfdqpdk0xygm5f46r2pn8mb99yd01zn";
-       revision = "1";
-       editedCabalFile = "13yjasdw3dh33rv1jhx5hjdvpp7cnxymrk836jk1mnpjw32606c9";
+       revision = "2";
+       editedCabalFile = "03qm7fgwwxcc5w65rwwvbl358dfnxmsg4rq1ixi5xpmmhmak67h8";
        libraryHaskellDepends = [
          aeson base base-compat base64-bytestring binary bytestring cereal
          deepseq hashable http-api-data QuickCheck serialise text
@@ -37679,8 +37707,8 @@ self: {
        pname = "binary-instances";
        version = "1";
        sha256 = "07y9582vsw94ks8whkd3dcmf4wdwlq8riyk2shmxxprkq0gsv3z0";
-       revision = "1";
-       editedCabalFile = "141hhr872rg0g2pvz1mbxamz9cijik9jilr1y0wdx5r71x0m1vyd";
+       revision = "2";
+       editedCabalFile = "0yawdwm086gk51y5s5zbybiwiv386cx8xyj6kcgj9wwdidcnaxdi";
        libraryHaskellDepends = [
          aeson base binary binary-orphans case-insensitive hashable
          scientific tagged text text-binary time-compat unordered-containers
@@ -41635,12 +41663,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "boots_0_2" = callPackage
+  "boots_0_2_0_1" = callPackage
     ({ mkDerivation, base, exceptions, hspec, mtl }:
      mkDerivation {
        pname = "boots";
-       version = "0.2";
-       sha256 = "0v7p2pfs4kcczc4wpswb0rgl2ak9xijq7ha9c6lagyb1av17sx9r";
+       version = "0.2.0.1";
+       sha256 = "04dh749p5nwar3hgmx5g12814lazwrzzqxbxbk4f003qpbd8np8w";
        libraryHaskellDepends = [ base exceptions mtl ];
        testHaskellDepends = [ base exceptions hspec mtl ];
        description = "IoC Monad in Haskell";
@@ -41650,19 +41678,20 @@ self: {
 
   "boots-app" = callPackage
     ({ mkDerivation, base, boots, data-default, exceptions, fast-logger
-     , menshen, microlens, mtl, salak, salak-yaml, splitmix, text, time
-     , unliftio-core, unordered-containers
+     , megaparsec, microlens, mtl, optparse-applicative, salak
+     , salak-yaml, splitmix, text, time, unliftio-core
+     , unordered-containers
      }:
      mkDerivation {
        pname = "boots-app";
-       version = "0.2";
-       sha256 = "0rnlb9fzaxcx4lvacqklv1kr2ygzgssgz1xzcfmbgkqpzp08nxqx";
+       version = "0.2.0.1";
+       sha256 = "0wk177f6ljcqd0ya7cddvx3i6sdwx0wl9fz1idzfa8klb8pnkghh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base boots data-default exceptions fast-logger menshen microlens
-         mtl salak salak-yaml splitmix text unliftio-core
-         unordered-containers
+         base boots data-default exceptions fast-logger megaparsec microlens
+         mtl optparse-applicative salak salak-yaml splitmix text
+         unliftio-core unordered-containers
        ];
        executableHaskellDepends = [ base time ];
        description = "Factory for quickly building an application";
@@ -41693,18 +41722,17 @@ self: {
   "boots-web" = callPackage
     ({ mkDerivation, aeson, base, boots, boots-app, bytestring
      , containers, ekg-core, http-types, microlens, monad-logger, salak
-     , servant-server, servant-swagger, swagger2, text, time
+     , servant, servant-server, servant-swagger, swagger2, text
      , unordered-containers, vault, wai, warp
      }:
      mkDerivation {
        pname = "boots-web";
-       version = "0.2";
-       sha256 = "00f55k7gc4dirzxmgngw9vpcl0w8fgklsyscy5h584pbhd84x4mj";
+       version = "0.2.0.1";
+       sha256 = "1czylbghh9rzhr4zs394gdm39d2xqqkv3v7fjzq1askah48zqx18";
        libraryHaskellDepends = [
          aeson base boots boots-app bytestring containers ekg-core
-         http-types microlens monad-logger salak servant-server
-         servant-swagger swagger2 text time unordered-containers vault wai
-         warp
+         http-types microlens monad-logger salak servant servant-server
+         servant-swagger swagger2 text unordered-containers vault wai warp
        ];
        description = "Factory for quickly building a web application";
        license = stdenv.lib.licenses.mit;
@@ -41891,8 +41919,8 @@ self: {
        pname = "bound-extras";
        version = "0.0.1";
        sha256 = "0f49yqz5s5h4f3m3i7kpm2fqnd42nl4dbl24lvm6z3nb8qrx6ynq";
-       revision = "1";
-       editedCabalFile = "1gyhbcnb1q1f8fdlmsmjn19xp4nvi2vb6ns0h8h2dvvpz9x3wgab";
+       revision = "2";
+       editedCabalFile = "1a88bxgz9r1v6lqkab12ljw3vknx7sgi6vi3fsqli8ji2ajfn5k1";
        libraryHaskellDepends = [
          base bound deepseq hashable transformers
        ];
@@ -44400,6 +44428,8 @@ self: {
        pname = "bzlib";
        version = "0.5.0.5";
        sha256 = "0zh130vw719a8d11q5qzc3ilzgv8cqyc2a7r1a131cv1fjnd1rwy";
+       revision = "1";
+       editedCabalFile = "1d4ra5prh2q9h8inpwvrsmkmg1ndisdj47jv06iijpj6xdp5bapl";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ bzip2 ];
        description = "Compression and decompression in the bzip2 format";
@@ -45916,11 +45946,12 @@ self: {
      }) {};
 
   "cachix" = callPackage
-    ({ mkDerivation, async, base, base16-bytestring, base64-bytestring
-     , bytestring, cachix-api, conduit, conduit-extra, cookie
+    ({ mkDerivation, async, base, base64-bytestring, bytestring
+     , cachix-api, conduit, conduit-extra, containers, cookie
      , cryptonite, dhall, directory, ed25519, filepath, fsnotify, here
-     , hspec, hspec-discover, http-client, http-client-tls, http-conduit
-     , http-types, lzma-conduit, megaparsec, memory, mmorph, netrc
+     , hnix-store-core, hspec, hspec-discover, http-client
+     , http-client-tls, http-conduit, http-types, inline-c, inline-c-cpp
+     , lzma-conduit, megaparsec, memory, mmorph, netrc, nix
      , optparse-applicative, process, protolude, resourcet, retry
      , safe-exceptions, servant, servant-auth, servant-auth-client
      , servant-client, servant-client-core, servant-conduit, temporary
@@ -45928,21 +45959,21 @@ self: {
      }:
      mkDerivation {
        pname = "cachix";
-       version = "0.2.1";
-       sha256 = "1yz0qfpp8d2n4h9k9cy394zgqg24vvb9ahzxdsvabjwbpmg9sijv";
+       version = "0.3.0";
+       sha256 = "0s22p9dwqw4pqlrqfqspdsiiw2k5zwzzdxc6ha6f4fxa4wa2w5dm";
        isLibrary = true;
        isExecutable = true;
-       enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         async base base16-bytestring base64-bytestring bytestring
-         cachix-api conduit conduit-extra cookie cryptonite dhall directory
-         ed25519 filepath fsnotify here http-client http-client-tls
-         http-conduit http-types lzma-conduit megaparsec memory mmorph netrc
-         optparse-applicative process protolude resourcet retry
-         safe-exceptions servant servant-auth servant-auth-client
-         servant-client servant-client-core servant-conduit text unix
-         uri-bytestring versions
+         async base base64-bytestring bytestring cachix-api conduit
+         conduit-extra containers cookie cryptonite dhall directory ed25519
+         filepath fsnotify here hnix-store-core http-client http-client-tls
+         http-conduit http-types inline-c inline-c-cpp lzma-conduit
+         megaparsec memory mmorph netrc optparse-applicative process
+         protolude resourcet retry safe-exceptions servant servant-auth
+         servant-auth-client servant-client servant-client-core
+         servant-conduit text unix uri-bytestring versions
        ];
+       libraryPkgconfigDepends = [ nix ];
        executableHaskellDepends = [ base cachix-api ];
        executableToolDepends = [ hspec-discover ];
        testHaskellDepends = [
@@ -45950,7 +45981,9 @@ self: {
        ];
        description = "Command line client for Nix binary cache hosting https://cachix.org";
        license = stdenv.lib.licenses.asl20;
-     }) {};
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {inherit (pkgs) nix;};
 
   "cachix-api" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
@@ -45963,8 +45996,8 @@ self: {
      }:
      mkDerivation {
        pname = "cachix-api";
-       version = "0.2.1";
-       sha256 = "1ja724ji12whjhyw135yi2fq323a65h4bj37r43b5d9ir1c04g67";
+       version = "0.3.0";
+       sha256 = "0lkmdgqvwx6cy1hbrx130yqbcq6ln1i9kr8s9r75g6lnv539lazq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46515,8 +46548,8 @@ self: {
     ({ mkDerivation, arithmoi, array, base, containers, random }:
      mkDerivation {
        pname = "canon";
-       version = "0.1.1.3";
-       sha256 = "1fc6vszr5j6iamjw07q2i1a96hsafx12zmqf3pr4aykan94vw6za";
+       version = "0.1.1.4";
+       sha256 = "1srixf1m7pzgr16y2xfckhi0xk9js68ps9zw8kvnw01c37x85f48";
        libraryHaskellDepends = [ arithmoi array base containers random ];
        description = "Arithmetic for Psychedelically Large Numbers";
        license = stdenv.lib.licenses.mit;
@@ -47320,6 +47353,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "casing_0_1_4_1" = callPackage
+    ({ mkDerivation, base, split, tasty, tasty-hunit }:
+     mkDerivation {
+       pname = "casing";
+       version = "0.1.4.1";
+       sha256 = "1jpqni00kalydwzjh2ljpgry3w696wa52bkaxzr53da60b072qhh";
+       revision = "1";
+       editedCabalFile = "1n7w4w2icfppyvlmyzzmfivbx175ckqabs4my5qvvdvwlc89xrqb";
+       libraryHaskellDepends = [ base split ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "Convert between various source code casing conventions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "casr-logbook" = callPackage
     ({ mkDerivation, base, containers, digit, lens, lucid, text, time
      }:
@@ -49360,6 +49408,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "checkers_0_5_1" = callPackage
+    ({ mkDerivation, array, base, QuickCheck, random, semigroupoids }:
+     mkDerivation {
+       pname = "checkers";
+       version = "0.5.1";
+       sha256 = "0jvr9xa0fwcib7nnfydqbcwkfm2c053l248pagrgymdih24dsk8x";
+       libraryHaskellDepends = [
+         array base QuickCheck random semigroupoids
+       ];
+       description = "Check properties on standard classes and data structures";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "checkmate" = callPackage
     ({ mkDerivation, base, bytestring, containers, diff-parse
      , directory, file-embed, filepath, github, hlint, hspec
@@ -50814,15 +50876,13 @@ self: {
      , filepath, ghc, ghc-boot, ghc-prim, ghc-typelits-extra
      , ghc-typelits-knownnat, ghc-typelits-natnormalise, ghci, hashable
      , haskeline, integer-gmp, lens, mtl, primitive, process, reflection
-     , text, time, transformers, unbound-generics, uniplate, unix
-     , unordered-containers, vector
+     , template-haskell, text, time, transformers, uniplate, unix
+     , unordered-containers, utf8-string, vector
      }:
      mkDerivation {
        pname = "clash-ghc";
-       version = "0.99.3";
-       sha256 = "0gjbvh6w2yc8pk38h8pw2jqfbyjzadizszy7v24a851m2cg0yiw9";
-       revision = "1";
-       editedCabalFile = "0r86409nh73wcychmwh2j3qnbbjk9z2yxr5amx7gpc8gar4qb3qi";
+       version = "1.0.0";
+       sha256 = "1b216mvw4w0yhpr8bi5j6ra2lfhk6imys10r0pidrpfc8wh779lg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -50830,8 +50890,8 @@ self: {
          concurrent-supply containers deepseq directory filepath ghc
          ghc-boot ghc-prim ghc-typelits-extra ghc-typelits-knownnat
          ghc-typelits-natnormalise ghci hashable haskeline integer-gmp lens
-         mtl primitive process reflection text time transformers
-         unbound-generics uniplate unix unordered-containers vector
+         mtl primitive process reflection template-haskell text time
+         transformers uniplate unix unordered-containers utf8-string vector
        ];
        executableHaskellDepends = [ base ];
        description = "CAES Language for Synchronous Hardware";
@@ -50841,25 +50901,28 @@ self: {
      }) {};
 
   "clash-lib" = callPackage
-    ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
-     , bytestring, clash-prelude, concurrent-supply, containers
-     , data-binary-ieee754, deepseq, directory, errors, fgl, filepath
-     , ghc, hashable, integer-gmp, lens, mtl, parsers, prettyprinter
-     , primitive, process, reducers, template-haskell, text, time
-     , transformers, trifecta, unbound-generics, unordered-containers
-     , vector
+    ({ mkDerivation, aeson, ansi-terminal, ansi-wl-pprint, attoparsec
+     , base, binary, bytestring, clash-prelude, concurrent-supply
+     , containers, data-binary-ieee754, deepseq, directory, errors
+     , exceptions, filepath, ghc, hashable, hint, integer-gmp
+     , interpolate, lens, mtl, parsers, prettyprinter, primitive
+     , process, reducers, template-haskell, temporary, text, text-show
+     , time, transformers, trifecta, unordered-containers, vector
+     , vector-binary-instances
      }:
      mkDerivation {
        pname = "clash-lib";
-       version = "0.99.3";
-       sha256 = "1fnsffp2qr608sq7z243a772qisyqbndxmprwd43lbvg2v00yssm";
+       version = "1.0.0";
+       sha256 = "1mh6aj6987i80xkqxw1jrqf0jih7jlgsgf13p30mc1graibxbj95";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson ansi-wl-pprint attoparsec base bytestring clash-prelude
-         concurrent-supply containers data-binary-ieee754 deepseq directory
-         errors fgl filepath ghc hashable integer-gmp lens mtl parsers
-         prettyprinter primitive process reducers template-haskell text time
-         transformers trifecta unbound-generics unordered-containers vector
+         aeson ansi-terminal ansi-wl-pprint attoparsec base binary
+         bytestring clash-prelude concurrent-supply containers
+         data-binary-ieee754 deepseq directory errors exceptions filepath
+         ghc hashable hint integer-gmp interpolate lens mtl parsers
+         prettyprinter primitive process reducers template-haskell temporary
+         text text-show time transformers trifecta unordered-containers
+         vector vector-binary-instances
        ];
        description = "CAES Language for Synchronous Hardware - As a Library";
        license = stdenv.lib.licenses.bsd2;
@@ -50884,23 +50947,32 @@ self: {
      }) {};
 
   "clash-prelude" = callPackage
-    ({ mkDerivation, array, base, bifunctors, constraints, criterion
-     , data-binary-ieee754, data-default, deepseq, doctest, ghc-prim
+    ({ mkDerivation, array, base, bifunctors, binary, bytestring
+     , constraints, containers, criterion, data-binary-ieee754
+     , data-default-class, deepseq, doctest, ghc-prim
      , ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, half, integer-gmp, lens, QuickCheck
-     , reflection, singletons, template-haskell, transformers, vector
+     , ghc-typelits-natnormalise, half, hashable, hint, integer-gmp
+     , lens, QuickCheck, reflection, singletons, tasty, tasty-hunit
+     , template-haskell, text, th-lift, th-orphans, time, transformers
+     , type-errors, vector
      }:
      mkDerivation {
        pname = "clash-prelude";
-       version = "0.99.3";
-       sha256 = "1g3pidjpcpzhkgyxw1w58ck0ihpla58nxx3xgkrcfz903xkjhipg";
+       version = "1.0.0";
+       sha256 = "045818jkl8q3b5rp52fx5znb0d9ai3ny8avls0jmgf7aqbmcwr5k";
+       revision = "2";
+       editedCabalFile = "0l7scl33mrr0i2208yh5dqbz8afmh9crhf9wlvyz67j1l91sfaqc";
        libraryHaskellDepends = [
-         array base bifunctors constraints data-binary-ieee754 data-default
-         deepseq ghc-prim ghc-typelits-extra ghc-typelits-knownnat
-         ghc-typelits-natnormalise half integer-gmp lens QuickCheck
-         reflection singletons template-haskell transformers vector
+         array base bifunctors binary bytestring constraints containers
+         data-binary-ieee754 data-default-class deepseq ghc-prim
+         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
+         half hashable integer-gmp lens QuickCheck reflection singletons
+         template-haskell text th-lift th-orphans time transformers
+         type-errors vector
+       ];
+       testHaskellDepends = [
+         base doctest ghc-typelits-knownnat hint tasty tasty-hunit
        ];
-       testHaskellDepends = [ base doctest ];
        benchmarkHaskellDepends = [
          base criterion deepseq template-haskell
        ];
@@ -56840,6 +56912,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "constr-eq" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "constr-eq";
+       version = "0.1.0.0";
+       sha256 = "0vk3cz6897vjnn1q7y1sqxy42ii4pq5h7jxw1zyybi99p6c4vgm6";
+       libraryHaskellDepends = [ base ];
+       description = "Equality by only Constructor";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "constrained-categories" = callPackage
     ({ mkDerivation, base, contravariant, semigroups, tagged
      , trivial-constraint, void
@@ -59921,8 +60006,8 @@ self: {
        pname = "crypt-sha512";
        version = "0";
        sha256 = "1wsma9frdrn39i506zydlzlk1ir6jh1pidqfjms8rwqjpx965gn2";
-       revision = "2";
-       editedCabalFile = "071lxiwsf23ga1fkbjd47ykz7f5irhsh7q7zz2qczzjgnvzadadh";
+       revision = "3";
+       editedCabalFile = "1l8glrv7bhdi0p1m1xq9majlbh8n9agai9d4mldzi5bnp5m5b79q";
        libraryHaskellDepends = [
          attoparsec base bytestring cryptohash-sha512
        ];
@@ -60485,8 +60570,8 @@ self: {
        pname = "cryptoids";
        version = "0.5.1.0";
        sha256 = "0ai7hg4r944hck9vq2ffwwjsxp3mjfvxwhfr8b8765n1bh86i466";
-       revision = "4";
-       editedCabalFile = "017fm7rcls5z2sjx4117h9bcc0szh2vs89gj2d8510vajq70yvwq";
+       revision = "5";
+       editedCabalFile = "1g2p5519rrbiizry5izdmqn47sayv7v7kqmj0w7abdn6b68di73j";
        libraryHaskellDepends = [
          base binary bytestring cryptoids-class cryptoids-types cryptonite
          directory exceptions filepath memory
@@ -60535,8 +60620,8 @@ self: {
      }:
      mkDerivation {
        pname = "cryptol";
-       version = "2.7.0";
-       sha256 = "14yk7qs7laxy5ranx9m911k1lxc4vh4pp83ywmsg1kf0cdfvmij6";
+       version = "2.8.0";
+       sha256 = "1fqhk7glh1y0a1f0iwdzrljh9k7v06pn0ybhlcs51ph9vs4byqdh";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -61247,6 +61332,8 @@ self: {
        doHaddock = false;
        description = "Haskell Implementation of Cuckoo Filters";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "cuckoo-filter" = callPackage
@@ -63409,10 +63496,8 @@ self: {
      }:
      mkDerivation {
        pname = "data-interval";
-       version = "1.3.0";
-       sha256 = "1i00cci7lzvkxqd1l8dacn7i0mrnccbs23mdciz6nrhlvlgsfiy9";
-       revision = "3";
-       editedCabalFile = "0jfqgijikf11lqsvbj0rc2b9n2ym7gn4mhk5xpsginp0vy3bgpbp";
+       version = "1.3.1";
+       sha256 = "0x09h2a6ay0h6whmja1q5dqmmf3savyvpv8h14rrwqd87x04abl9";
        libraryHaskellDepends = [
          base containers deepseq extended-reals hashable lattices
        ];
@@ -65668,6 +65753,8 @@ self: {
        pname = "dec";
        version = "0.0.3";
        sha256 = "1y8bvlm2371dq2v0jv1srki98nbhbz091wh0g2x58wz78h971f6r";
+       revision = "1";
+       editedCabalFile = "09dkybwqmayf2a1sn94vmmma2xfvf07bw7grhcyjm7lq9jpxv8y0";
        libraryHaskellDepends = [ base ];
        description = "Decidable propositions";
        license = stdenv.lib.licenses.bsd3;
@@ -66486,13 +66573,13 @@ self: {
      }:
      mkDerivation {
        pname = "dependent-monoidal-map";
-       version = "0.1.0.0";
-       sha256 = "1gzqnxnbr9r1zny932pa9qbq4ygdpkmxhb9cflvh2vav548qfkv9";
+       version = "0.1.1.0";
+       sha256 = "0l5nj7jalyca6vv9aqsx0j799vrr65cm1jzh17fcnwkxair3lkgx";
        libraryHaskellDepends = [
          aeson base constraints constraints-extras dependent-map
          dependent-sum dependent-sum-aeson-orphans
        ];
-       description = "Data.Dependent.Map variant that appends conflicting entries when merging maps instead of discarding one side of the conflict.";
+       description = "Dependent map that uses semigroup mappend";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
@@ -66973,8 +67060,8 @@ self: {
     ({ mkDerivation, base, bytestring, cereal, QuickCheck }:
      mkDerivation {
        pname = "describe";
-       version = "0.1.0.0";
-       sha256 = "0bbi6jih3d2fbsqhvmac8970jczwsq0zq61nlvrvr7nzgl2v07fl";
+       version = "0.1.1.0";
+       sha256 = "0xnamrmdvcb1spgrm1fh9d98gvdz6kljqsm04chlhz4zxk7ixv0x";
        libraryHaskellDepends = [ base bytestring cereal ];
        testHaskellDepends = [ base bytestring cereal QuickCheck ];
        description = "Combinators for describing binary data structures";
@@ -69621,8 +69708,8 @@ self: {
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "1.0.0";
-       sha256 = "1z0d46gd7rgwbh05ws6hcp4rikach0yg1fim6ni0ww4g0mksj8j3";
+       version = "1.1.0";
+       sha256 = "16n78p6g0rh670zy2pbk59c8nkg5srkhlbya0aknpz2s4smpn891";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -72885,8 +72972,8 @@ self: {
        pname = "dual-tree";
        version = "0.2.2";
        sha256 = "1sx9p9yr06z7bi7pshjpswizs6bkmfzcpw8xlasriniry86df4kl";
-       revision = "2";
-       editedCabalFile = "0r8idr1haqixa9nlp8db5iw9vr9sdk6rcargkr7w7s6i99lm6jmh";
+       revision = "3";
+       editedCabalFile = "00gwdgzy80p9c5r4wafm1fiqnh2hy1xjsbl86h1qkk7xg33g2ssi";
        libraryHaskellDepends = [
          base monoid-extras newtype-generics semigroups
        ];
@@ -73709,6 +73796,8 @@ self: {
        ];
        description = "Configure dzen2 bars in Dhall language";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "dzen-utils" = callPackage
@@ -75260,6 +75349,8 @@ self: {
        ];
        description = "Elliptic curve library";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "elm-bridge" = callPackage
@@ -75584,6 +75675,30 @@ self: {
        license = stdenv.lib.licenses.mpl20;
      }) {};
 
+  "elm-street_0_1_0_1" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory, filepath
+     , hspec, prettyprinter, servant, servant-server, text, time, wai
+     , warp
+     }:
+     mkDerivation {
+       pname = "elm-street";
+       version = "0.1.0.1";
+       sha256 = "1n02bxyva732dbnrzc6n6v8rsgpbjb6ndh4szwqj8zckj694mc77";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base directory filepath prettyprinter text time
+       ];
+       executableHaskellDepends = [
+         base directory filepath servant servant-server text wai warp
+       ];
+       testHaskellDepends = [ aeson base bytestring hspec ];
+       doHaddock = false;
+       description = "Crossing the road between Haskell and Elm";
+       license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "elm-websocket" = callPackage
     ({ mkDerivation, aeson, base, bytestring, concurrent-extra
      , containers, directory, formatting, hspec, http-types, lens, mtl
@@ -76003,17 +76118,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "emd_0_1_5_0" = callPackage
+  "emd_0_1_5_1" = callPackage
     ({ mkDerivation, base, binary, containers, criterion
      , data-default-class, deepseq, finite-typelits
      , ghc-typelits-knownnat, ghc-typelits-natnormalise, HUnit
-     , mwc-random, pure-fft, transformers, typelits-witnesses, vector
+     , mwc-random, statistics, transformers, typelits-witnesses, vector
      , vector-sized
      }:
      mkDerivation {
        pname = "emd";
-       version = "0.1.5.0";
-       sha256 = "113rm1jmlawjms693zsx9kq8rk8jwn7ch6d4l2bfas3fvy4via61";
+       version = "0.1.5.1";
+       sha256 = "06ii6yw9612dq3ryfv2n7yk5wic3lc3kyvmvbj19wwicwc7315bf";
        libraryHaskellDepends = [
          base binary containers data-default-class deepseq finite-typelits
          ghc-typelits-knownnat ghc-typelits-natnormalise transformers
@@ -76021,7 +76136,7 @@ self: {
        ];
        testHaskellDepends = [ base containers HUnit ];
        benchmarkHaskellDepends = [
-         base criterion deepseq ghc-typelits-knownnat mwc-random pure-fft
+         base criterion deepseq ghc-typelits-knownnat mwc-random statistics
          vector vector-sized
        ];
        description = "Empirical Mode Decomposition and Hilbert-Huang Transform";
@@ -79761,8 +79876,8 @@ self: {
        pname = "extended-reals";
        version = "0.2.3.0";
        sha256 = "170nxxza6lkczh05qi2qxr8nbr3gmdjpfvl1m703gjq9xwrwg2kw";
-       revision = "3";
-       editedCabalFile = "0v80m6cnpx1d43cfykz5jbiqkk7l51vmrd48sb8s1h8f2pp9v3dq";
+       revision = "4";
+       editedCabalFile = "1gzi55w9kpfg51njyi3a28n7nc64chzgnv76m3xyrz7z0gbri93q";
        libraryHaskellDepends = [ base deepseq hashable ];
        testHaskellDepends = [
          base deepseq HUnit QuickCheck tasty tasty-hunit tasty-quickcheck
@@ -80617,6 +80732,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fast-logger_2_4_17" = callPackage
+    ({ mkDerivation, array, auto-update, base, bytestring, directory
+     , easy-file, filepath, hspec, hspec-discover, text, unix-compat
+     , unix-time
+     }:
+     mkDerivation {
+       pname = "fast-logger";
+       version = "2.4.17";
+       sha256 = "02mxb1ckvx1s2r2m11l5i2l5rdl7232p0f61af6773haykjp0qxk";
+       revision = "1";
+       editedCabalFile = "1yv4f6pbrgqqhc0z3chhjrzz1gs7idrmcbvmbl8pfyn547ci6brb";
+       libraryHaskellDepends = [
+         array auto-update base bytestring directory easy-file filepath text
+         unix-compat unix-time
+       ];
+       testHaskellDepends = [ base bytestring directory hspec ];
+       testToolDepends = [ hspec-discover ];
+       description = "A fast logging system";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fast-math" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -82273,8 +82410,8 @@ self: {
        pname = "file-embed-lzma";
        version = "0";
        sha256 = "0xqcgx4ysyjqrygnfabs169y4w986kwzvsaqh64h7x3wfi7z8v78";
-       revision = "2";
-       editedCabalFile = "0dmg69gsj2k9lf112bvqw6z2w8hl0p1lx5zxdvlvk85bb3qz6304";
+       revision = "3";
+       editedCabalFile = "138ihhsxzqm0m7890l98j5679dk7r5aa522hcfpggqx12f7g1pnc";
        libraryHaskellDepends = [
          base base-compat bytestring directory filepath lzma
          template-haskell text th-lift-instances transformers
@@ -82467,8 +82604,8 @@ self: {
        pname = "filepath-crypto";
        version = "0.1.0.0";
        sha256 = "1bj9haa4ignmk6c6gdiqb4rnwy395pwqdyfy4kgg0z16w0l39mw0";
-       revision = "8";
-       editedCabalFile = "1d4zrj5qqkqnx53fmdrw9dh2hwppc6mmykpxpddh4k84kln3mlym";
+       revision = "9";
+       editedCabalFile = "09a1y0m7jgchi8bmly49amzjrs25insvaf4ag3wys1ngb1cc2az0";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive cryptoids cryptoids-class
          cryptoids-types exceptions filepath sandi template-haskell
@@ -88071,6 +88208,8 @@ self: {
        ];
        description = "An optimising compiler for a functional, array-oriented language";
        license = stdenv.lib.licenses.isc;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "futun" = callPackage
@@ -90291,6 +90430,8 @@ self: {
          typed-uuid uuid
        ];
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "genvalidity-path" = callPackage
@@ -90586,15 +90727,15 @@ self: {
 
   "geoip2" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, iproute
-     , mmap, reinterpret-cast, text
+     , lens, mmap, reinterpret-cast, text
      }:
      mkDerivation {
        pname = "geoip2";
-       version = "0.3.1.1";
-       sha256 = "0nq4kijjd0dmii5949xr7wf4w7fi2ffpbqr9bg7qklxhsrmwywb8";
+       version = "0.4.0.0";
+       sha256 = "1a2wxblnv611asfwkgm2ndam1jvm2xqajj3rk0ii9qi7j9s5w8v0";
        libraryHaskellDepends = [
-         base bytestring cereal containers iproute mmap reinterpret-cast
-         text
+         base bytestring cereal containers iproute lens mmap
+         reinterpret-cast text
        ];
        description = "Pure haskell interface to MaxMind GeoIP database";
        license = stdenv.lib.licenses.bsd3;
@@ -94365,6 +94506,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "githash_0_1_3_2" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hspec
+     , process, template-haskell, temporary, unliftio
+     }:
+     mkDerivation {
+       pname = "githash";
+       version = "0.1.3.2";
+       sha256 = "0wn0pr7idx6nb6d7nkjx6dfncz15c9wbhpg6s5395pa1s8q7fx3j";
+       libraryHaskellDepends = [
+         base bytestring directory filepath process template-haskell
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath hspec process template-haskell
+         temporary unliftio
+       ];
+       description = "Compile git revision info into Haskell projects";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
      , binary, binary-instances, bytestring, containers, cryptohash-sha1
@@ -104154,6 +104315,8 @@ self: {
        testToolDepends = [ utillinux ];
        description = "A static website compiler library";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) utillinux;};
 
   "hakyll-R" = callPackage
@@ -104418,6 +104581,8 @@ self: {
        ];
        description = "Hakyll utilities to work with images";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "hakyll-ogmarkup" = callPackage
@@ -105996,6 +106161,22 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "happy_1_19_12" = callPackage
+    ({ mkDerivation, array, base, containers, mtl, process }:
+     mkDerivation {
+       pname = "happy";
+       version = "1.19.12";
+       sha256 = "03xlmq6qmdx4zvzw8bp33kd9g7yvcq5cz4wg50xilw812kj276pv";
+       isLibrary = false;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       executableHaskellDepends = [ array base containers mtl ];
+       testHaskellDepends = [ base process ];
+       description = "Happy is a parser generator for Haskell";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "happy-hour" = callPackage
     ({ mkDerivation, base, Chart, Chart-diagrams }:
      mkDerivation {
@@ -108447,6 +108628,8 @@ self: {
        pname = "haskell-src";
        version = "1.0.3.0";
        sha256 = "1g4dj1f0j68bhn4ixfac63wjzy6gsp6kwgxryb1k5nl3i0g99d5l";
+       revision = "1";
+       editedCabalFile = "1pnrvh9wzdkhvkkky4rlq1imycl9k76x9rvgq7cmfp8rf1iwqi5q";
        libraryHaskellDepends = [ array base pretty syb ];
        libraryToolDepends = [ happy ];
        description = "Support for manipulating Haskell source code";
@@ -108498,6 +108681,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-src-exts_1_21_1" = callPackage
+    ({ mkDerivation, array, base, containers, directory, filepath
+     , ghc-prim, happy, mtl, pretty, pretty-show, smallcheck, tasty
+     , tasty-golden, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "haskell-src-exts";
+       version = "1.21.1";
+       sha256 = "0q1y8n3d82gid9bcx8wxsqqmj9mq11fg3gp5yzpfbw958dhi3j9f";
+       libraryHaskellDepends = [ array base ghc-prim pretty ];
+       libraryToolDepends = [ happy ];
+       testHaskellDepends = [
+         base containers directory filepath mtl pretty-show smallcheck tasty
+         tasty-golden tasty-smallcheck
+       ];
+       doCheck = false;
+       description = "Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-src-exts-observe" = callPackage
     ({ mkDerivation, base, haskell-src-exts, Hoed }:
      mkDerivation {
@@ -108608,6 +108812,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-src-meta_0_8_3" = callPackage
+    ({ mkDerivation, base, containers, haskell-src-exts, HUnit, pretty
+     , syb, tasty, tasty-hunit, template-haskell, th-orphans
+     }:
+     mkDerivation {
+       pname = "haskell-src-meta";
+       version = "0.8.3";
+       sha256 = "17znnaqj2hnnfyc9p9xjzbs97h2jh1h4f4qbw648y3xa14wx5ra9";
+       libraryHaskellDepends = [
+         base haskell-src-exts pretty syb template-haskell th-orphans
+       ];
+       testHaskellDepends = [
+         base containers haskell-src-exts HUnit pretty syb tasty tasty-hunit
+         template-haskell
+       ];
+       description = "Parse source to template-haskell abstract syntax";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-src-meta-mwotton" = callPackage
     ({ mkDerivation, base, containers, ghc-prim, haskell-src-exts
      , pretty, syb, template-haskell
@@ -110848,6 +111072,8 @@ self: {
        pname = "hasmin";
        version = "1.0.3";
        sha256 = "0p9a1q8brymkd4y74gn4iiwihikn55wx2h9zz3mpd6ab53rsz43k";
+       revision = "1";
+       editedCabalFile = "19xr6zk72q5sqgaxfj6xwvd98jv26d54s80gjkkpwh1i2nnsgw4v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -111217,6 +111443,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hasql-transaction_1" = callPackage
+    ({ mkDerivation, async, base, bytestring, bytestring-tree-builder
+     , contravariant, contravariant-extras, hasql, mtl, rebase
+     , transformers
+     }:
+     mkDerivation {
+       pname = "hasql-transaction";
+       version = "1";
+       sha256 = "1k82b0bx4j2g7lhr2p4z4a365kx1i23dr6zikwg1yyhpvhl3xbcj";
+       libraryHaskellDepends = [
+         base bytestring bytestring-tree-builder contravariant
+         contravariant-extras hasql mtl transformers
+       ];
+       testHaskellDepends = [ async hasql rebase ];
+       description = "A composable abstraction over the retryable transactions for Hasql";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hastache" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, containers
      , directory, filepath, HUnit, ieee754, mtl, process, syb, text
@@ -113172,16 +113417,16 @@ self: {
 
   "hedgehog-classes" = callPackage
     ({ mkDerivation, aeson, base, binary, comonad, containers, hedgehog
-     , pretty-show, semirings, silently, transformers
+     , pretty-show, primitive, semirings, silently, transformers
      , wl-pprint-annotated
      }:
      mkDerivation {
        pname = "hedgehog-classes";
-       version = "0.2.3";
-       sha256 = "0ww1ll557iapbxg6rwhimf5fh8gngk15zlm4mlrh3p3j3xx9f22p";
+       version = "0.2.4";
+       sha256 = "0cvaa8rrjwz00z377b0s6c2yyfyxka78cpw66bkrlzyihjqqg6gn";
        libraryHaskellDepends = [
-         aeson base binary comonad containers hedgehog pretty-show semirings
-         silently transformers wl-pprint-annotated
+         aeson base binary comonad containers hedgehog pretty-show primitive
+         semirings silently transformers wl-pprint-annotated
        ];
        testHaskellDepends = [
          aeson base binary comonad containers hedgehog
@@ -113292,6 +113537,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hedis_0_12_8" = callPackage
+    ({ mkDerivation, async, base, bytestring, bytestring-lexing
+     , deepseq, doctest, errors, HTTP, HUnit, mtl, network, network-uri
+     , resource-pool, scanner, stm, test-framework, test-framework-hunit
+     , text, time, tls, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "hedis";
+       version = "0.12.8";
+       sha256 = "119j0g6b2ci04bax6xl2biwwf7cfk2vybypx3089fm69xgm8spcz";
+       libraryHaskellDepends = [
+         async base bytestring bytestring-lexing deepseq errors HTTP mtl
+         network network-uri resource-pool scanner stm text time tls
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         async base bytestring doctest HUnit mtl stm test-framework
+         test-framework-hunit text time
+       ];
+       benchmarkHaskellDepends = [ base mtl time ];
+       description = "Client library for the Redis datastore: supports full command set, pipelining";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hedis-config" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hedis, scientific, text
      , time
@@ -115596,6 +115866,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hie-bios" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring, containers
+     , cryptohash-sha1, deepseq, directory, extra, file-embed, filepath
+     , ghc, process, temporary, text, time, transformers, unix-compat
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "hie-bios";
+       version = "0.1.0";
+       sha256 = "0589g8rgd9bdjjx6cxsskqdlbq6gwnb9nsjrgbp7mxnspwjcb72y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base base16-bytestring bytestring containers cryptohash-sha1
+         deepseq directory extra file-embed filepath ghc process temporary
+         text time transformers unix-compat unordered-containers vector yaml
+       ];
+       executableHaskellDepends = [ base directory filepath ghc ];
+       description = "Set up a GHC API session";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hieraclus" = callPackage
     ({ mkDerivation, base, containers, HUnit, mtl, multiset }:
      mkDerivation {
@@ -117197,8 +117489,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger";
-       version = "1.15.1";
-       sha256 = "0rhq6dnss3n4b7ibq61amgalhjh89f51fn609dai2m3kf9xhign9";
+       version = "1.15.2";
+       sha256 = "16mpj58519p4ksd0iwwkd63xxcr21k99h015l4kgi6zd934v2qix";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -117409,8 +117701,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-lib";
-       version = "1.15.1";
-       sha256 = "1d3mwrbgk3iqayvi0gjx4hkbf72jwknh5igx1p07h32l1d89phbh";
+       version = "1.15.2";
+       sha256 = "0q6ppizyadilxma3l8bwlswa6syyzkdri0yq0bqfmdzxvh9s3bcm";
        libraryHaskellDepends = [
          ansi-terminal array base base-compat-batteries blaze-markup
          bytestring call-stack cassava cassava-megaparsec cmdargs containers
@@ -128990,6 +129282,8 @@ self: {
        pname = "hw-json-standard-cursor";
        version = "0.2.1.1";
        sha256 = "0z0lxzciyw6b49w1s88yx9lcqgk0fjmh1zv7qs3jnn9sk0bqldh5";
+       revision = "1";
+       editedCabalFile = "15x23pa4im7ll4ipaykqavmh8frpnlmg8617g67c987f66lpyprr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -129233,6 +129527,8 @@ self: {
        benchmarkHaskellDepends = [ base criterion vector ];
        description = "Primitive support for bit manipulation";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "hw-rankselect" = callPackage
@@ -129284,6 +129580,8 @@ self: {
        pname = "hw-rankselect";
        version = "0.13.2.0";
        sha256 = "00k163jalapxdlcmcvi4ddk60bsj34f7ng05agvh1374kybqscb4";
+       revision = "1";
+       editedCabalFile = "0a0mlfbln3whziv2rp63qr1qjm4vxgrd8535irnlyy5ba0a0lad8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -136823,8 +137121,8 @@ self: {
     ({ mkDerivation, base, Cabal }:
      mkDerivation {
        pname = "jailbreak-cabal";
-       version = "1.3.4";
-       sha256 = "0xvjdn61a8gxqj4jkdql9dyb3jk6lbx9i1w7hc27f2rqrwmfgq68";
+       version = "1.3.5";
+       sha256 = "1221gxggyk3pjqkc72wxx9gjl8dvqna1rn9nh9zkcmdpv5yww7wd";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base Cabal ];
@@ -139178,8 +139476,8 @@ self: {
      }:
      mkDerivation {
        pname = "jvm-binary";
-       version = "0.5.0";
-       sha256 = "0v54x0015im3gbd2rsf87kmppkasd8780sb4pl8mqc82dbf4v18z";
+       version = "0.6.0";
+       sha256 = "1ipy0vy0pr9pbxjin0d86dwvdy70wxb1cmg1bqcdjdgrg2xbqxf8";
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers data-binary-ieee754
          deepseq deriving-compat mtl template-haskell text vector
@@ -140038,6 +140336,8 @@ self: {
        ];
        description = "Fast concurrent queues much inspired by unagi-chan";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "kbq-gu" = callPackage
@@ -140941,6 +141241,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "kind-apply_0_3_2_0" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "kind-apply";
+       version = "0.3.2.0";
+       sha256 = "0wq0jfi8jdah6mwc6amrfjs5ld0bz86y53va9sm0hzvpiyb4bpcq";
+       libraryHaskellDepends = [ base ];
+       description = "Utilities to work with lists of types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "kind-generics" = callPackage
     ({ mkDerivation, base, kind-apply }:
      mkDerivation {
@@ -140952,6 +141264,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "kind-generics_0_4_0_0" = callPackage
+    ({ mkDerivation, base, kind-apply }:
+     mkDerivation {
+       pname = "kind-generics";
+       version = "0.4.0.0";
+       sha256 = "1w3rpvdvgfczsc86y00qbr9s9r8vmv442m4x975f3zcqs4algfhp";
+       libraryHaskellDepends = [ base kind-apply ];
+       description = "Generic programming in GHC style for arbitrary kinds and GADTs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "kind-generics-th" = callPackage
     ({ mkDerivation, base, kind-generics, template-haskell
      , th-abstraction
@@ -140968,6 +141292,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "kind-generics-th_0_2_0_0" = callPackage
+    ({ mkDerivation, base, kind-generics, template-haskell
+     , th-abstraction
+     }:
+     mkDerivation {
+       pname = "kind-generics-th";
+       version = "0.2.0.0";
+       sha256 = "1vj2zbkv51fvcpjrkqqlsd685drnh2yalsplcb6sgrgq9dfdlw2h";
+       libraryHaskellDepends = [
+         base kind-generics template-haskell th-abstraction
+       ];
+       testHaskellDepends = [ base kind-generics ];
+       description = "Template Haskell support for generating `GenericK` instances";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "kinds" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -141483,6 +141824,17 @@ self: {
        broken = true;
      }) {};
 
+  "kuifje" = callPackage
+    ({ mkDerivation, base, boxes, containers, lens }:
+     mkDerivation {
+       pname = "kuifje";
+       version = "0.1.1.0";
+       sha256 = "1hfrj1msp1g0f4bqih4m1k28vssfds2nmr47adxikgwsfi3qgsq2";
+       libraryHaskellDepends = [ base boxes containers lens ];
+       description = "A Quantitative Information Flow aware programming language";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "kure" = callPackage
     ({ mkDerivation, base, dlist, transformers }:
      mkDerivation {
@@ -142235,8 +142587,8 @@ self: {
      }:
      mkDerivation {
        pname = "lambdabot-xmpp";
-       version = "0.1.0.0";
-       sha256 = "1bn8gd2gxl44xqffiy8skh714hkvfv2d318v1qg9k52pp53al2ny";
+       version = "0.1.0.2";
+       sha256 = "1dbnps2fcxi4wky4q9kv69vz74cbxzm91q3k65s95ldilya5730b";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -142766,8 +143118,8 @@ self: {
        pname = "language-c";
        version = "0.8.2";
        sha256 = "05ff3ywh2lpxgd00nv6y3jnqpdl6bg0f2yn3csd043rv4srd6adp";
-       revision = "1";
-       editedCabalFile = "1xg49j4bykgdm6l14m65wyz8r3s4v4dqc7a9zjcsr12ffkiv8nam";
+       revision = "2";
+       editedCabalFile = "074mypdymg7543waq68c72viw912w94v94y1287sp67lzwpyiixd";
        libraryHaskellDepends = [
          array base bytestring containers deepseq directory filepath pretty
          process syb
@@ -145670,6 +146022,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lenz_0_4_0_0" = callPackage
+    ({ mkDerivation, base, base-unicode-symbols, hs-functors
+     , transformers
+     }:
+     mkDerivation {
+       pname = "lenz";
+       version = "0.4.0.0";
+       sha256 = "1bfhs61i7ach2d8bbrcsch57w7imrn22hilv63hif9dmqjnlwvy5";
+       libraryHaskellDepends = [
+         base base-unicode-symbols hs-functors transformers
+       ];
+       description = "Van Laarhoven lenses";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lenz-template" = callPackage
     ({ mkDerivation, base, base-unicode-symbols, containers, lenz
      , template-haskell
@@ -146312,6 +146680,8 @@ self: {
        librarySystemDepends = [ modbus ];
        description = "Haskell bindings to the C modbus library";
        license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {modbus = null;};
 
   "libmolude" = callPackage
@@ -147893,22 +148263,24 @@ self: {
 
   "linnet" = callPackage
     ({ mkDerivation, base, bytestring, bytestring-conversion
-     , case-insensitive, either, exceptions, hspec, http-types, mtl
-     , QuickCheck, quickcheck-classes, quickcheck-instances, text
-     , transformers, uri-encode, wai, warp
+     , case-insensitive, either, exceptions, hspec, http-media
+     , http-types, mtl, QuickCheck, quickcheck-classes
+     , quickcheck-instances, text, transformers, uri-encode, wai, warp
      }:
      mkDerivation {
        pname = "linnet";
-       version = "0.2.0.0";
-       sha256 = "13k65016hm7shi3q5r47hx0s8bfpaypf0bknmwcvsrgsg5cyjz7q";
+       version = "0.3.0.0";
+       sha256 = "1ir150a6a94yz23d9w31m2clvi2i7fag6kih4fwrffmnl3p3z6i4";
        libraryHaskellDepends = [
          base bytestring bytestring-conversion case-insensitive either
-         exceptions http-types mtl text transformers uri-encode wai warp
+         exceptions http-media http-types mtl text transformers uri-encode
+         wai warp
        ];
        testHaskellDepends = [
          base bytestring bytestring-conversion case-insensitive either
-         exceptions hspec http-types mtl QuickCheck quickcheck-classes
-         quickcheck-instances text transformers uri-encode wai warp
+         exceptions hspec http-media http-types mtl QuickCheck
+         quickcheck-classes quickcheck-instances text transformers
+         uri-encode wai warp
        ];
        description = "Lightweight library for building HTTP API";
        license = stdenv.lib.licenses.asl20;
@@ -147920,8 +148292,8 @@ self: {
      }:
      mkDerivation {
        pname = "linnet-aeson";
-       version = "0.2.0.0";
-       sha256 = "118i6a9296sig9ldhblh8b3q8g9k55bgjxn33v8msz1sw1dw493k";
+       version = "0.3.0.0";
+       sha256 = "1nfn9xh3dbgbgfgdvrq057lgcrk9ipqq13c6i1y20zg49gpawd9w";
        libraryHaskellDepends = [ aeson base bytestring linnet ];
        testHaskellDepends = [
          aeson base bytestring hspec linnet QuickCheck quickcheck-classes
@@ -147938,8 +148310,8 @@ self: {
      }:
      mkDerivation {
        pname = "linnet-conduit";
-       version = "0.2.0.0";
-       sha256 = "1q479v0abcrkfw6my2d5kcn6j8i4p9gkk3np5s5qkf097wyphh1r";
+       version = "0.3.0.0";
+       sha256 = "0p5fgzvs4cqhc9f37v1fqqq0qbzrywl224wd73mzl1k4v7vj249i";
        libraryHaskellDepends = [
          base bytestring conduit http-types linnet wai warp
        ];
@@ -149217,6 +149589,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {llvm-config = null;};
 
+  "llvm-hs_9_0_0" = callPackage
+    ({ mkDerivation, array, attoparsec, base, bytestring, Cabal
+     , containers, exceptions, llvm-config, llvm-hs-pure, mtl
+     , pretty-show, process, QuickCheck, tasty, tasty-hunit
+     , tasty-quickcheck, template-haskell, temporary, transformers
+     , utf8-string
+     }:
+     mkDerivation {
+       pname = "llvm-hs";
+       version = "9.0.0";
+       sha256 = "0sz1rhdf73v43jz8x7f5f7bjwrkvyyvf950gw9063aapbsdzm76h";
+       setupHaskellDepends = [ base Cabal containers ];
+       libraryHaskellDepends = [
+         array attoparsec base bytestring containers exceptions llvm-hs-pure
+         mtl template-haskell transformers utf8-string
+       ];
+       libraryToolDepends = [ llvm-config ];
+       testHaskellDepends = [
+         base bytestring containers llvm-hs-pure mtl pretty-show process
+         QuickCheck tasty tasty-hunit tasty-quickcheck temporary
+         transformers
+       ];
+       description = "General purpose LLVM bindings";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {llvm-config = null;};
+
   "llvm-hs-pretty" = callPackage
     ({ mkDerivation, array, base, bytestring, directory, filepath
      , llvm-hs, llvm-hs-pure, mtl, prettyprinter, tasty, tasty-golden
@@ -149259,6 +149658,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "llvm-hs-pure_9_0_0" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, containers, fail
+     , mtl, tasty, tasty-hunit, tasty-quickcheck, template-haskell
+     , transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "llvm-hs-pure";
+       version = "9.0.0";
+       sha256 = "0pxb5ah8r5pzpz2ibqw3g9g1isigb4z7pbzfrwr8kmcjn74ab3kf";
+       libraryHaskellDepends = [
+         attoparsec base bytestring containers fail mtl template-haskell
+         transformers unordered-containers
+       ];
+       testHaskellDepends = [
+         base containers mtl tasty tasty-hunit tasty-quickcheck transformers
+       ];
+       description = "Pure Haskell LLVM functionality (no FFI)";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "llvm-ht" = callPackage
     ({ mkDerivation, base, bytestring, directory, mtl, process
      , type-level
@@ -151717,8 +152137,8 @@ self: {
        pname = "lzma";
        version = "0.0.0.3";
        sha256 = "0i416gqi8j55nd1pqbkxvf3f6hn6fjys6gq98lkkxphva71j30xg";
-       revision = "3";
-       editedCabalFile = "1sify6gnsalyp6dakfzi0mdy5jcz2kcp9jsdsgkmxd40nfzgd44m";
+       revision = "4";
+       editedCabalFile = "0f3zrjq4zxwacmlc934y873pvlqpmmcmhzhp34d8pvhi5c7dg47j";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ lzma ];
        testHaskellDepends = [
@@ -154094,6 +154514,28 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "math-functions_0_3_2_0" = callPackage
+    ({ mkDerivation, base, data-default-class, deepseq, erf, HUnit
+     , primitive, QuickCheck, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, vector, vector-th-unbox
+     }:
+     mkDerivation {
+       pname = "math-functions";
+       version = "0.3.2.0";
+       sha256 = "1798n8x3w3x4s058dph18g11k2hm7vcxkbr2rb2snlksjr59c2wa";
+       libraryHaskellDepends = [
+         base data-default-class deepseq primitive vector vector-th-unbox
+       ];
+       testHaskellDepends = [
+         base data-default-class deepseq erf HUnit primitive QuickCheck
+         test-framework test-framework-hunit test-framework-quickcheck2
+         vector vector-th-unbox
+       ];
+       description = "Collection of tools for numeric computations";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "math-grads" = callPackage
     ({ mkDerivation, aeson, array, base, containers, hspec, linear
      , matrix, mtl, random, vector
@@ -154289,8 +154731,6 @@ self: {
        ];
        description = "Bindings to Matplotlib; a Python plotting library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "matrices" = callPackage
@@ -155742,6 +156182,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "memory_0_15_0" = callPackage
+    ({ mkDerivation, base, basement, bytestring, deepseq, foundation
+     , ghc-prim
+     }:
+     mkDerivation {
+       pname = "memory";
+       version = "0.15.0";
+       sha256 = "0a9mxcddnqn4359hk59d6l2zbh0vp154yb5vs1a8jw4l38n8kzz3";
+       revision = "1";
+       editedCabalFile = "136qfj1cbg9571mlwywaqml75ijx3pcgvbpbgwxrqsl71ssj8w5y";
+       libraryHaskellDepends = [
+         base basement bytestring deepseq ghc-prim
+       ];
+       testHaskellDepends = [ base basement bytestring foundation ];
+       description = "memory and related abstraction stuff";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "memorypool" = callPackage
     ({ mkDerivation, base, containers, transformers, unsafe, vector }:
      mkDerivation {
@@ -155810,6 +156269,8 @@ self: {
        pname = "menshen";
        version = "0.0.3";
        sha256 = "0zx530ksb0zmczbl6k70xg6pxgr2wfga2pg0ghgmpgd9f307xrwb";
+       revision = "1";
+       editedCabalFile = "0hxj40q50pbl57dribvnk8ak907p15jnk3zycv6n9vj91la9js48";
        libraryHaskellDepends = [ base regex-tdfa scientific text ];
        testHaskellDepends = [
          aeson base hspec QuickCheck regex-tdfa scientific text
@@ -160455,8 +160916,8 @@ self: {
        pname = "monoid-extras";
        version = "0.5";
        sha256 = "172d1mfns7agd619rlbb1i9kw2y26kjvivkva06k1r14bar1lmy6";
-       revision = "2";
-       editedCabalFile = "1q73ghd12fd451zm4m045h8v3y61jmfhj6k890gnv6z7lyb7xwg2";
+       revision = "3";
+       editedCabalFile = "1f6yd2lzvcr983xh68wgvxibx2a8ldgkcvac48pqqcxl1ywx1iny";
        libraryHaskellDepends = [ base groups semigroupoids semigroups ];
        benchmarkHaskellDepends = [ base criterion semigroups ];
        description = "Various extra monoid-related definitions and utilities";
@@ -160546,6 +161007,8 @@ self: {
        pname = "monoidal-containers";
        version = "0.4.0.0";
        sha256 = "15mh2hx7a31gr5zb2g30h2fcnb3a2wvv2y8hvzzk5l9cr2nvhcm1";
+       revision = "1";
+       editedCabalFile = "18m2r5kfvkss8vh537vh2k4zbpncmwadg1g4pzsw0rdmkyn7lyjd";
        libraryHaskellDepends = [
          aeson base containers deepseq hashable lens newtype semigroups
          unordered-containers
@@ -160562,6 +161025,8 @@ self: {
        pname = "monoidal-containers";
        version = "0.6";
        sha256 = "1ii09s068g6bj2j10ig3g3ymv1ci6zg596pmmaw6als15j9bybc9";
+       revision = "1";
+       editedCabalFile = "1k4k8g5a7swaylcqnga7lyp0lly8j1fqzdwsnznmps8bwn1pn1kk";
        libraryHaskellDepends = [
          aeson base containers deepseq hashable lens newtype semialign
          semigroups these unordered-containers
@@ -161346,6 +161811,33 @@ self: {
        broken = true;
      }) {inherit (pkgs) openmpi;};
 
+  "mpi-hs_0_5_3_0" = callPackage
+    ({ mkDerivation, base, binary, bytestring, c2hs, cereal, criterion
+     , monad-loops, openmpi, store
+     }:
+     mkDerivation {
+       pname = "mpi-hs";
+       version = "0.5.3.0";
+       sha256 = "0z2m4xfk0w1zx29jb27xb6hs01xid0ghv93yhqx7zwiw01815krk";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring cereal monad-loops store
+       ];
+       librarySystemDepends = [ openmpi ];
+       libraryToolDepends = [ c2hs ];
+       executableHaskellDepends = [ base binary ];
+       executableSystemDepends = [ openmpi ];
+       testHaskellDepends = [ base monad-loops ];
+       testSystemDepends = [ openmpi ];
+       benchmarkHaskellDepends = [ base criterion ];
+       benchmarkSystemDepends = [ openmpi ];
+       description = "MPI bindings for Haskell";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {inherit (pkgs) openmpi;};
+
   "mpppc" = callPackage
     ({ mkDerivation, ansi-terminal, base, bytestring, split, text }:
      mkDerivation {
@@ -162339,6 +162831,8 @@ self: {
        testHaskellDepends = [ base cryptonite doctest hedgehog ];
        description = "Self-identifying hashes, implementation of <https://github.com/multiformats/multihash>";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "multihash-serialise" = callPackage
@@ -164723,6 +165217,17 @@ self: {
        broken = true;
      }) {};
 
+  "natural-arithmetic" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "natural-arithmetic";
+       version = "0.1.0.0";
+       sha256 = "0h5ga04hw7v54xsxjj852238spl3px190g67qjqzxvnyn0f76jrp";
+       libraryHaskellDepends = [ base ];
+       description = "Arithmetic of natural numbers";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "natural-induction" = callPackage
     ({ mkDerivation, base, peano }:
      mkDerivation {
@@ -172075,8 +172580,8 @@ self: {
      }:
      mkDerivation {
        pname = "optima";
-       version = "0.3.0.3";
-       sha256 = "1m6lbwy5y8nmgadqx6lax1laqgs90gbg9waffbd962n2xscbwbww";
+       version = "0.4";
+       sha256 = "0ryrz9739g1zql9ldll2ilfiyazgz5xixk31wajdqz0xdzqg3bbl";
        libraryHaskellDepends = [
          attoparsec attoparsec-data base optparse-applicative text
          text-builder
@@ -172307,8 +172812,8 @@ self: {
        pname = "optparse-generic";
        version = "1.3.0";
        sha256 = "13rr3hq26dpmbami8vb6d1ig9ywk6jia22sp5dkp6jkfc1c9k4l0";
-       revision = "2";
-       editedCabalFile = "1ldkzq0g70y2w69ywg2d5agrd74y7c4iblg3yflyvmzifr11d1ls";
+       revision = "3";
+       editedCabalFile = "0vszcjmxywblx5z9yvrz8c6yc104jgr1nv0sbv58ansd3rkjlzfn";
        libraryHaskellDepends = [
          base bytestring Only optparse-applicative semigroups
          system-filepath text time transformers void
@@ -173963,6 +174468,8 @@ self: {
        ];
        description = "Pandoc filter to include CSV files";
        license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "pandoc-plantuml-diagrams" = callPackage
@@ -178899,15 +179406,15 @@ self: {
        broken = true;
      }) {};
 
-  "pg-transact_0_2_0_0" = callPackage
+  "pg-transact_0_2_0_1" = callPackage
     ({ mkDerivation, base, bytestring, exceptions, hspec
      , hspec-discover, hspec-expectations-lifted, monad-control
      , postgresql-simple, tmp-postgres, transformers
      }:
      mkDerivation {
        pname = "pg-transact";
-       version = "0.2.0.0";
-       sha256 = "0g3willpc3msbgbrjq6q3zlc195c2cv8bnhc3g4ksnz7c85z3vhc";
+       version = "0.2.0.1";
+       sha256 = "1abv2h52x624wsrm8lhafsjdsmldghqjksww12b0g119msbsbdq9";
        libraryHaskellDepends = [
          base bytestring exceptions monad-control postgresql-simple
          transformers
@@ -180716,13 +181223,13 @@ self: {
      }) {};
 
   "pipes-ordered-zip" = callPackage
-    ({ mkDerivation, base, foldl, pipes }:
+    ({ mkDerivation, base, foldl, hspec, pipes, pipes-safe }:
      mkDerivation {
        pname = "pipes-ordered-zip";
-       version = "1.0.1";
-       sha256 = "10ywi5ykp398mghc3mvcy2alz1lp6kah0yxmn5pz1l6nbsv7wyk5";
-       libraryHaskellDepends = [ base pipes ];
-       testHaskellDepends = [ base foldl pipes ];
+       version = "1.1.0";
+       sha256 = "1fs0qyhc4a7xnglxl7b1d615s9ajml6pvch337ivny31cxrngcsa";
+       libraryHaskellDepends = [ base pipes pipes-safe ];
+       testHaskellDepends = [ base foldl hspec pipes pipes-safe ];
        description = "merge two ordered Producers into a new Producer";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -181603,6 +182110,8 @@ self: {
        ];
        description = "run a subprocess, combining stdout and stderr";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "plist" = callPackage
@@ -181882,14 +182391,15 @@ self: {
   "plugins" = callPackage
     ({ mkDerivation, array, base, Cabal, containers, directory
      , filepath, ghc, ghc-paths, ghc-prim, haskell-src, process, random
+     , split
      }:
      mkDerivation {
        pname = "plugins";
-       version = "1.5.7";
-       sha256 = "1l9ymnsxvgjp7p2j5mvyygrsg7qf2yam1k4y3gz8s2l6kl78ri5f";
+       version = "1.6.0";
+       sha256 = "0wbmvcb2j4qi29yrmvjfhdf8251lam5yiqshk9gf6dlprz2kvww1";
        libraryHaskellDepends = [
          array base Cabal containers directory filepath ghc ghc-paths
-         ghc-prim haskell-src process random
+         ghc-prim haskell-src process random split
        ];
        description = "Dynamic linking for Haskell and C objects";
        license = stdenv.lib.licenses.bsd3;
@@ -182200,8 +182710,8 @@ self: {
      }:
      mkDerivation {
        pname = "pointfree-fancy";
-       version = "1.1.1.13";
-       sha256 = "0f761h5a8byfpkf8nby4wkhra64qv7fzs3rx6gf4v07w9b2s5ph8";
+       version = "1.1.1.14";
+       sha256 = "08b2dslkblxch8k6wlc6xx50lva8abdkdwibgfxdj2yw4mgdnhry";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -182649,7 +183159,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "polysemy_1_1_0_0" = callPackage
+  "polysemy_1_2_0_0" = callPackage
     ({ mkDerivation, async, base, containers, criterion, doctest
      , first-class-families, free, freer-simple, hspec, hspec-discover
      , inspection-testing, mtl, stm, syb, template-haskell
@@ -182658,8 +183168,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy";
-       version = "1.1.0.0";
-       sha256 = "1slc177ygphiaaxr301nmn47q7jl71rmzcw8h9q7az2s2f3gy83p";
+       version = "1.2.0.0";
+       sha256 = "14cl4h78vhi83c3ccz3hy1cbh21a7ry7n5z2i7m3zm2cyj4sbw4q";
        libraryHaskellDepends = [
          async base containers first-class-families mtl stm syb
          template-haskell th-abstraction transformers type-errors
@@ -182727,6 +183237,29 @@ self: {
        broken = true;
      }) {};
 
+  "polysemy-plugin_0_2_3_0" = callPackage
+    ({ mkDerivation, base, containers, doctest, ghc
+     , ghc-tcplugins-extra, hspec, hspec-discover, inspection-testing
+     , polysemy, should-not-typecheck, syb, transformers
+     }:
+     mkDerivation {
+       pname = "polysemy-plugin";
+       version = "0.2.3.0";
+       sha256 = "1icaxdw2670svhns5g40d1kzxxx3yhcza660a0csdh83f3jzjy2w";
+       libraryHaskellDepends = [
+         base containers ghc ghc-tcplugins-extra polysemy syb transformers
+       ];
+       testHaskellDepends = [
+         base containers doctest ghc ghc-tcplugins-extra hspec
+         inspection-testing polysemy should-not-typecheck syb transformers
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Disambiguate obvious uses of effects";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "polysemy-zoo" = callPackage
     ({ mkDerivation, async, base, binary, bytestring, constraints
      , containers, ghc-prim, hedis, hspec, hspec-discover, mtl, polysemy
@@ -183961,6 +184494,8 @@ self: {
        ];
        description = "An optparse-applicative parser for postgresql-simple's connection options";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "postgresql-simple-queue" = callPackage
@@ -188791,6 +189326,8 @@ self: {
        pname = "pure-zlib";
        version = "0.6.4";
        sha256 = "05rhvhvdn8ly5jldxg3q7ip6zflzqa1wyj8mlcl0scgsngn9lrzb";
+       revision = "1";
+       editedCabalFile = "0mskig3fppav6f6x34vl5fxsih2hndiqvbdxz24hmr1dzkpnfvq1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -188807,6 +189344,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pure-zlib_0_6_6" = callPackage
+    ({ mkDerivation, array, base, base-compat, bytestring
+     , bytestring-builder, containers, filepath, fingertree, HUnit
+     , QuickCheck, tasty, tasty-hunit, tasty-quickcheck, time
+     }:
+     mkDerivation {
+       pname = "pure-zlib";
+       version = "0.6.6";
+       sha256 = "1fby7dj8yp8yqycxzl1dr4s6i0isnx24zxbcan672wwrhdxh9s6y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base base-compat bytestring bytestring-builder containers
+         fingertree
+       ];
+       executableHaskellDepends = [ base base-compat bytestring ];
+       testHaskellDepends = [
+         base base-compat bytestring filepath HUnit QuickCheck tasty
+         tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [ base base-compat bytestring time ];
+       description = "A Haskell-only implementation of zlib / DEFLATE";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "pureMD5" = callPackage
     ({ mkDerivation, base, binary, bytestring, cereal, crypto-api
      , crypto-api-tests, pretty-hex, QuickCheck, tagged, test-framework
@@ -197013,15 +197576,15 @@ self: {
      }:
      mkDerivation {
        pname = "replace-megaparsec";
-       version = "1.1.0.0";
-       sha256 = "1m1f0pwz6glpkc3n00c8c9v6dmfriss117p168wmx7kfx4kz56zs";
+       version = "1.1.1.0";
+       sha256 = "1g8hwjiv7lrx1vvnylbzn4l7dxnn73blfhv2w9j1zz37f87jyr7m";
        libraryHaskellDepends = [ base megaparsec ];
        testHaskellDepends = [ base bytestring Cabal megaparsec text ];
        benchmarkHaskellDepends = [
          base bytestring criterion megaparsec text
        ];
        description = "Stream editing with parsers";
-       license = stdenv.lib.licenses.bsd3;
+       license = stdenv.lib.licenses.bsd2;
      }) {};
 
   "replica" = callPackage
@@ -202961,6 +203524,8 @@ self: {
        ];
        description = "Work stealing scheduler";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "schedyield" = callPackage
@@ -205071,6 +205636,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "semirings_0_5" = callPackage
+    ({ mkDerivation, base, containers, hashable, integer-gmp
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "semirings";
+       version = "0.5";
+       sha256 = "1xfmb017jjlas0lq4969d1dw7wifsym8m2qnadz7bywhjl96kzxh";
+       libraryHaskellDepends = [
+         base containers hashable integer-gmp unordered-containers
+       ];
+       description = "two monoids as one, in holy haskimony";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "semver" = callPackage
     ({ mkDerivation, attoparsec, base, criterion, deepseq, hashable
      , tasty, tasty-hunit, text
@@ -205466,22 +206047,22 @@ self: {
 
   "sequence-formats" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers, errors
-     , exceptions, foldl, lens-family, pipes, pipes-attoparsec
+     , exceptions, foldl, hspec, lens-family, pipes, pipes-attoparsec
      , pipes-bytestring, pipes-safe, tasty, tasty-hunit, transformers
      , vector
      }:
      mkDerivation {
        pname = "sequence-formats";
-       version = "1.3.2.1";
-       sha256 = "0fl3sg4znmnil08vbjf50xcbs5blh9pvg1jakbhikj1aab68vpp5";
+       version = "1.4.0";
+       sha256 = "1wd4lfp5dynvz3gmf5ql2278mlzfaxiyrjnhv96brjf7j45nj5az";
        libraryHaskellDepends = [
          attoparsec base bytestring containers errors exceptions foldl
          lens-family pipes pipes-attoparsec pipes-bytestring pipes-safe
          transformers vector
        ];
        testHaskellDepends = [
-         base bytestring containers foldl pipes pipes-safe tasty tasty-hunit
-         transformers vector
+         base bytestring containers foldl hspec pipes pipes-safe tasty
+         tasty-hunit transformers vector
        ];
        description = "A package with basic parsing utilities for several Bioinformatic data formats";
        license = stdenv.lib.licenses.gpl3;
@@ -206943,6 +207524,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "servant-kotlin_0_1_1_9" = callPackage
+    ({ mkDerivation, aeson, base, containers, directory, formatting
+     , hspec, http-api-data, lens, servant, servant-foreign, shelly
+     , text, time, wl-pprint-text
+     }:
+     mkDerivation {
+       pname = "servant-kotlin";
+       version = "0.1.1.9";
+       sha256 = "1wywp494wbhs32szyni294k5qf8fjbznydwss7lwxprnli1hh1qm";
+       libraryHaskellDepends = [
+         base containers directory formatting lens servant servant-foreign
+         text time wl-pprint-text
+       ];
+       testHaskellDepends = [
+         aeson base containers directory formatting hspec http-api-data lens
+         servant servant-foreign text time wl-pprint-text
+       ];
+       benchmarkHaskellDepends = [
+         aeson base containers directory formatting http-api-data lens
+         servant servant-foreign shelly text time wl-pprint-text
+       ];
+       description = "Automatically derive Kotlin class to query servant webservices";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-lucid" = callPackage
     ({ mkDerivation, base, http-media, lucid, servant, servant-server
      , text, wai, warp
@@ -207965,8 +208572,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-waargonaut";
-       version = "0.6.0.0";
-       sha256 = "17igh9s4bmzsx10qscrqpqd8djkmr2krfc660nhdsi7cx5hmlwl3";
+       version = "0.7.0.0";
+       sha256 = "0fn7ph0805n297nzi3ig9wfx27kz6bmn4r914ibx44927xifms59";
        libraryHaskellDepends = [
          base bytestring http-media lens servant text waargonaut
          wl-pprint-annotated
@@ -210087,6 +210694,8 @@ self: {
        pname = "shelly";
        version = "1.9.0";
        sha256 = "1kma77gixhyciimh19p64h1ndbcrs9qhk8fgyv71iqh5q57zvday";
+       revision = "1";
+       editedCabalFile = "0827p6wq8j92svrvmx02gdk961xx42g1ng4j6g7nflrfks9hw0zf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -210147,8 +210756,8 @@ self: {
      }:
      mkDerivation {
        pname = "shh";
-       version = "0.7.0.4";
-       sha256 = "10gnkk0645aznkry063kl5m68n7ip88m8cf97lwffj1y86iazk5b";
+       version = "0.7.0.5";
+       sha256 = "119b9rvvdsw1al0i4lqa25z7ykwwqi46xz22az1b8fi3xiijprs3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -211992,6 +212601,8 @@ self: {
        pname = "singleton-bool";
        version = "0.1.5";
        sha256 = "17w9vv6arn7vvc7kykqcx81q2364ji43khrryl27r1cjx9yxapa0";
+       revision = "1";
+       editedCabalFile = "1g2dchvp5clg3hfdrp7hf5pbl9kcyhqhnqxqxd7n861nfd661wqd";
        libraryHaskellDepends = [ base dec ];
        description = "Type level booleans";
        license = stdenv.lib.licenses.bsd3;
@@ -213099,22 +213710,26 @@ self: {
      }) {};
 
   "small-bytearray-builder" = callPackage
-    ({ mkDerivation, base, byteslice, bytestring, gauge, primitive
-     , primitive-offset, QuickCheck, run-st, tasty, tasty-quickcheck
+    ({ mkDerivation, base, byteslice, bytestring, gauge
+     , natural-arithmetic, primitive, primitive-offset, QuickCheck
+     , run-st, tasty, tasty-hunit, tasty-quickcheck, text, text-short
      , vector
      }:
      mkDerivation {
        pname = "small-bytearray-builder";
-       version = "0.1.1.0";
-       sha256 = "1i3b77mczfy9f0gp5ckqln1vdhnqflz8lajfiygx5spxf9kraf9d";
+       version = "0.2.1.0";
+       sha256 = "11r0nz8z16h75867xq4c62s69ic7vhwfwhl2c11441mkhbrk2nbw";
        libraryHaskellDepends = [
-         base byteslice primitive primitive-offset run-st vector
+         base byteslice bytestring natural-arithmetic primitive
+         primitive-offset run-st text-short vector
        ];
        testHaskellDepends = [
-         base byteslice bytestring primitive QuickCheck tasty
-         tasty-quickcheck vector
+         base byteslice bytestring natural-arithmetic primitive QuickCheck
+         tasty tasty-hunit tasty-quickcheck text vector
+       ];
+       benchmarkHaskellDepends = [
+         base gauge natural-arithmetic primitive
        ];
-       benchmarkHaskellDepends = [ base gauge primitive ];
        description = "Serialize to a small byte arrays";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -220766,15 +221381,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "stratosphere_0_41_0" = callPackage
+  "stratosphere_0_42_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
      , hashable, hspec, hspec-discover, lens, template-haskell, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "stratosphere";
-       version = "0.41.0";
-       sha256 = "1prwkvlc9qglc0465gibv26h1nd06bdiayp22i91dw3ws3mbhzs5";
+       version = "0.42.0";
+       sha256 = "1520dhfad9j1aa9sjxq56v6hivbfnm2vi19hjn7y0m6a80q2wawp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -220994,8 +221609,8 @@ self: {
        pname = "streaming";
        version = "0.2.2.0";
        sha256 = "04fdw4f51yb16bv3b7z97vqxbns8rv2ag2aphglm29jsd527fsss";
-       revision = "1";
-       editedCabalFile = "1sq8blxh4s1lsvxkc64x7drxwn75kszxicjhvw4cg505fp9bfc7y";
+       revision = "2";
+       editedCabalFile = "0cfxibcf0lkzbbyxl96dpnmacxv39ljwrlr3935bxykihr83j9xf";
        libraryHaskellDepends = [
          base containers ghc-prim mmorph mtl semigroups transformers
          transformers-base
@@ -224147,16 +224762,17 @@ self: {
      }) {};
 
   "syb-with-class" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers
+    ({ mkDerivation, array, base, bytestring, containers, HUnit
      , template-haskell
      }:
      mkDerivation {
        pname = "syb-with-class";
-       version = "0.6.1.10";
-       sha256 = "0fhkxzcvalaqv554cmjmc56b3h7vxai3k2dd1fsp7ca124ikyzm7";
+       version = "0.6.1.11";
+       sha256 = "0fgmcxhrhcjcv5nmb5irp6mqcwknpk15azzd0qhajwx8mqpw6b8l";
        libraryHaskellDepends = [
          array base bytestring containers template-haskell
        ];
+       testHaskellDepends = [ base HUnit ];
        description = "Scrap Your Boilerplate With Class";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -230292,6 +230908,8 @@ self: {
        pname = "text-show-instances";
        version = "3.8.1";
        sha256 = "1z54vgw1rsck3lr6jnl5vdd0aq1hni1wy0fag985d6b73qmxlm1l";
+       revision = "1";
+       editedCabalFile = "1yprndi65gspjp8srqciwjx81wbh2yyyrsj0905zqd9g150sj121";
        libraryHaskellDepends = [
          base base-compat-batteries bifunctors binary containers directory
          ghc-boot-th haskeline hpc old-locale old-time pretty random
@@ -230312,6 +230930,40 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "text-show-instances_3_8_2" = callPackage
+    ({ mkDerivation, base, base-compat-batteries, bifunctors, binary
+     , containers, directory, generic-deriving, ghc-boot-th, ghc-prim
+     , haskeline, hpc, hspec, hspec-discover, old-locale, old-time
+     , pretty, QuickCheck, quickcheck-instances, random, semigroups
+     , tagged, template-haskell, terminfo, text, text-short, text-show
+     , th-orphans, time, transformers, transformers-compat, unix
+     , unordered-containers, vector, xhtml
+     }:
+     mkDerivation {
+       pname = "text-show-instances";
+       version = "3.8.2";
+       sha256 = "075a2dzbdkh13q9a1w4v0dm40rqrv1wq8nsqh4g4872h29df5mka";
+       libraryHaskellDepends = [
+         base base-compat-batteries bifunctors binary containers directory
+         ghc-boot-th haskeline hpc old-locale old-time pretty random
+         semigroups tagged template-haskell terminfo text text-short
+         text-show time transformers transformers-compat unix
+         unordered-containers vector xhtml
+       ];
+       testHaskellDepends = [
+         base base-compat-batteries bifunctors binary containers directory
+         generic-deriving ghc-boot-th ghc-prim haskeline hpc hspec
+         old-locale old-time pretty QuickCheck quickcheck-instances random
+         tagged template-haskell terminfo text-short text-show th-orphans
+         time transformers transformers-compat unix unordered-containers
+         vector xhtml
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Additional instances for text-show";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "text-stream-decode" = callPackage
     ({ mkDerivation, base, bytestring, criterion, deepseq, hspec, text
      }:
@@ -231068,6 +231720,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-orphans_0_13_8" = callPackage
+    ({ mkDerivation, base, bytestring, ghc-prim, hspec, hspec-discover
+     , mtl, template-haskell, th-lift, th-lift-instances, th-reify-many
+     }:
+     mkDerivation {
+       pname = "th-orphans";
+       version = "0.13.8";
+       sha256 = "0f5rf8jr9g5pgnqv7i60ygmnycjq1qbfvccjpagc1xy4gbgjng41";
+       libraryHaskellDepends = [
+         base mtl template-haskell th-lift th-lift-instances th-reify-many
+       ];
+       testHaskellDepends = [
+         base bytestring ghc-prim hspec template-haskell th-lift
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Orphan instances for TH datatypes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-pprint" = callPackage
     ({ mkDerivation, base, lens, pretty, template-haskell }:
      mkDerivation {
@@ -231438,6 +232110,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "these-optics" = callPackage
+    ({ mkDerivation, base, optics-core, these }:
+     mkDerivation {
+       pname = "these-optics";
+       version = "1";
+       sha256 = "0gmsykzcjx5h6dbfny4dw3jrm33ykcw6rpngf5awwdpg3a4cfgi7";
+       libraryHaskellDepends = [ base optics-core these ];
+       description = "Optics for These";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "these-skinny" = callPackage
     ({ mkDerivation, base, deepseq }:
      mkDerivation {
@@ -236187,8 +236870,8 @@ self: {
        pname = "trifecta";
        version = "2";
        sha256 = "0hznd8i65s81xy13i2qc7cvipw3lfb2yhkv53apbdsh6sbljz5sk";
-       revision = "2";
-       editedCabalFile = "1ihw0dm0sjn7cql6rb3y0gb5kxy1ca3ggflm4lxlmhm3gfrj2sxc";
+       revision = "3";
+       editedCabalFile = "11c4y7qx3389ghcjnsl1xm7dz6bhndx27xs36ply2rvx4aly976c";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          ansi-terminal ansi-wl-pprint array base blaze-builder blaze-html
@@ -237980,10 +238663,10 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "type-equality";
-       version = "0.1.2";
-       sha256 = "06acqpkvyvalv5knjzzbgm40hzas6cdfsypvjxsbb0mhq4d80xwr";
+       version = "1";
+       sha256 = "1s4cl11rvvv7n95i3pq9lmmx08kwh4z7l3d1hbv4wi8il81baa27";
        libraryHaskellDepends = [ base ];
-       description = "Type equality, coercion/cast and other operations";
+       description = "Data.Type.Equality compat package";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -239653,6 +240336,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "unbound-kind-generics" = callPackage
+    ({ mkDerivation, base, kind-generics, kind-generics-th
+     , unbound-generics
+     }:
+     mkDerivation {
+       pname = "unbound-kind-generics";
+       version = "0.2.0.0";
+       sha256 = "1hn78dixgd1p0pabh7pg0c7q607irs68vs3ggay8i1s72nc9lvj8";
+       libraryHaskellDepends = [
+         base kind-generics kind-generics-th unbound-generics
+       ];
+       description = "Support for programming with names and binders using kind-generics";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "unbounded-delays" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -240734,6 +241434,34 @@ self: {
        broken = true;
      }) {};
 
+  "universum_1_6_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, doctest
+     , gauge, ghc-prim, Glob, hashable, hedgehog, microlens
+     , microlens-mtl, mtl, safe-exceptions, stm, tasty, tasty-hedgehog
+     , text, transformers, unordered-containers, utf8-string, vector
+     }:
+     mkDerivation {
+       pname = "universum";
+       version = "1.6.0";
+       sha256 = "12gz4hpwmykb73dplbd8j628f54ipk0pygrswy0k1k7j68awnjl6";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq ghc-prim hashable microlens
+         microlens-mtl mtl safe-exceptions stm text transformers
+         unordered-containers utf8-string vector
+       ];
+       testHaskellDepends = [
+         base bytestring doctest Glob hedgehog tasty tasty-hedgehog text
+         utf8-string
+       ];
+       benchmarkHaskellDepends = [
+         base containers gauge text unordered-containers
+       ];
+       description = "Custom prelude used in Serokell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "unix_2_7_2_2" = callPackage
     ({ mkDerivation, base, bytestring, time }:
      mkDerivation {
@@ -245454,33 +246182,35 @@ self: {
     ({ mkDerivation, attoparsec, base, bifunctors, bytestring, Cabal
      , cabal-doctest, containers, contravariant, digit, directory
      , distributive, doctest, errors, filepath, generics-sop, hedgehog
-     , hedgehog-fn, hoist-error, hw-balancedparens, hw-bits, hw-json
-     , hw-prim, hw-rankselect, lens, mmorph, mtl, nats, natural, parsers
-     , scientific, semigroupoids, semigroups, tagged, tasty
-     , tasty-expected-failure, tasty-golden, tasty-hedgehog, tasty-hunit
-     , template-haskell, text, transformers, unordered-containers
-     , vector, witherable, wl-pprint-annotated, zippers
+     , hedgehog-fn, hoist-error, hw-balancedparens, hw-bits
+     , hw-json-standard-cursor, hw-prim, hw-rankselect, lens, mmorph
+     , mtl, nats, natural, parsers, records-sop, scientific
+     , semigroupoids, semigroups, tagged, tasty, tasty-expected-failure
+     , tasty-golden, tasty-hedgehog, tasty-hunit, template-haskell, text
+     , transformers, unordered-containers, vector, witherable
+     , wl-pprint-annotated, zippers
      }:
      mkDerivation {
        pname = "waargonaut";
-       version = "0.6.2.0";
-       sha256 = "1s9il54r5hqp4fbxn5012f7l6ir6fy2v6xv5xf57zh1sz0ifxj2f";
+       version = "0.8.0.0";
+       sha256 = "1pvs379s1w5nzr5hb1c5fbbbjgvsnvggj3l1l5j6klm0zf1y7x4h";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          attoparsec base bifunctors bytestring containers contravariant
          digit distributive errors generics-sop hoist-error
-         hw-balancedparens hw-bits hw-json hw-prim hw-rankselect lens mmorph
-         mtl nats natural parsers scientific semigroupoids semigroups tagged
-         text transformers unordered-containers vector witherable
-         wl-pprint-annotated zippers
+         hw-balancedparens hw-bits hw-json-standard-cursor hw-prim
+         hw-rankselect lens mmorph mtl nats natural parsers records-sop
+         scientific semigroupoids semigroups tagged text transformers
+         unordered-containers vector witherable wl-pprint-annotated zippers
        ];
        testHaskellDepends = [
          attoparsec base bytestring containers contravariant digit directory
          distributive doctest filepath generics-sop hedgehog hedgehog-fn
-         hw-balancedparens hw-bits hw-json hw-prim hw-rankselect lens mtl
-         natural scientific semigroupoids semigroups tagged tasty
-         tasty-expected-failure tasty-golden tasty-hedgehog tasty-hunit
-         template-haskell text unordered-containers vector zippers
+         hw-balancedparens hw-bits hw-json-standard-cursor hw-prim
+         hw-rankselect lens mtl natural scientific semigroupoids semigroups
+         tagged tasty tasty-expected-failure tasty-golden tasty-hedgehog
+         tasty-hunit template-haskell text unordered-containers vector
+         zippers
        ];
        description = "JSON wrangling";
        license = stdenv.lib.licenses.bsd3;
@@ -249710,6 +250440,8 @@ self: {
        pname = "witherable";
        version = "0.3.2";
        sha256 = "1iqf3kc9h599lbiym8rf9b4fhj31lqwm1cxqz6x02q9dxyrcprmi";
+       revision = "1";
+       editedCabalFile = "01mprffm41km3pm5nlpsp2ig2izgl6ll9ylrym3dg01f9609aa0z";
        libraryHaskellDepends = [
          base base-orphans containers hashable monoidal-containers
          transformers transformers-compat unordered-containers vector
@@ -249718,6 +250450,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "witherable_0_3_3" = callPackage
+    ({ mkDerivation, base, base-orphans, containers, hashable, lens
+     , monoidal-containers, transformers, transformers-compat
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "witherable";
+       version = "0.3.3";
+       sha256 = "0pp2p2zhdjv3kq8dywcj9hcdaf0i37vihaxcxbs889iiw2cgy9hj";
+       revision = "1";
+       editedCabalFile = "1v10h2biv5k9amahw77755k60wgqp0d36d1rb2vy8qjh07gnnanr";
+       libraryHaskellDepends = [
+         base base-orphans containers hashable lens monoidal-containers
+         transformers transformers-compat unordered-containers vector
+       ];
+       description = "filterable traversable";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "witness" = callPackage
     ({ mkDerivation, base, constraints, semigroupoids, transformers }:
      mkDerivation {
@@ -252427,6 +253179,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "xml-hamlet_0_5_0_1" = callPackage
+    ({ mkDerivation, base, containers, hspec, HUnit, parsec
+     , shakespeare, template-haskell, text, xml-conduit
+     }:
+     mkDerivation {
+       pname = "xml-hamlet";
+       version = "0.5.0.1";
+       sha256 = "0jrhcjy7ww59dafg857f2g2df1fw2jmbwcs1q379ph0pc5rxj3lj";
+       libraryHaskellDepends = [
+         base containers parsec shakespeare template-haskell text
+         xml-conduit
+       ];
+       testHaskellDepends = [
+         base containers hspec HUnit parsec shakespeare template-haskell
+         text xml-conduit
+       ];
+       description = "Hamlet-style quasiquoter for XML content";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xml-helpers" = callPackage
     ({ mkDerivation, base, xml }:
      mkDerivation {
@@ -253218,8 +253991,8 @@ self: {
     ({ mkDerivation, base, containers, dbus, X11 }:
      mkDerivation {
        pname = "xmonad-spotify";
-       version = "0.1.1.0";
-       sha256 = "1pihi0959wys3sd4r8r1rmh5vx84174wmjpanbyihzjhykvf7n2j";
+       version = "0.1.2.2";
+       sha256 = "0hps37yqn3grgg65wm3j41dh40fqi64ni12mgk0lfigw2fghfnvj";
        libraryHaskellDepends = [ base containers dbus X11 ];
        description = "Bind media keys to work with Spotify";
        license = stdenv.lib.licenses.bsd3;
@@ -253271,6 +254044,8 @@ self: {
        pname = "xmonad-volume";
        version = "0.1.1.0";
        sha256 = "0bc52vy142hn75k52zz8afjfxwv86p73kmqmi48rqiws10kpnclw";
+       revision = "2";
+       editedCabalFile = "1m1kcsvz3h8qfdbsr7xjibay9377jqq6pj5mgq08s0kmgqi4h0wn";
        libraryHaskellDepends = [
          alsa-mixer base composition-prelude containers X11
        ];
@@ -253867,6 +254642,8 @@ self: {
        ];
        description = "A wrapper of servant";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "yam-app" = callPackage
@@ -253923,6 +254700,8 @@ self: {
        ];
        description = "Yam DataSource Middleware";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "yam-job" = callPackage
@@ -253966,6 +254745,8 @@ self: {
        ];
        description = "Yam Redis Middleware";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "yam-servant" = callPackage

From 4037a43630da4306be03d31bd86359c8713c02dc Mon Sep 17 00:00:00 2001
From: Michael Alan Dorman <mdorman@ironicdesign.com>
Date: Thu, 5 Sep 2019 15:20:03 +0300
Subject: [PATCH 43/92] jailbreak-cabal: updated package needs updated Cabal
 library

Only needs to be overridden for prior GHC releases.
---
 pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix | 4 ++--
 pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix | 1 +
 pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

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 76aabb91561..8e796aa3f1f 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -43,8 +43,8 @@ self: super: {
   stm = self.stm_2_5_0_0;
   text = self.text_1_2_4_0;
 
-  # Build with the latest Cabal version, which works best albeit not perfectly.
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_2_2_0_1; };
+  # Needs Cabal 3.0.x.
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
 
   # 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.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index 0919292d44a..513c55ea9e9 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -42,6 +42,7 @@ self: super: {
 
   # Needs Cabal 3.0.x.
   cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_0_0_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
 
   # Restricts aeson to <1.4
   # https://github.com/purescript/purescript/pull/3537
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 4addc834040..d2e463b123c 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -43,6 +43,7 @@ self: super: {
 
   # Needs Cabal 3.0.x.
   cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_0_0_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
 
   # https://github.com/tibbe/unordered-containers/issues/214
   unordered-containers = dontCheck super.unordered-containers;

From e5c85e39ab5e5083283076224fa71db4bbd8ce93 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 6 Sep 2019 08:01:42 +0000
Subject: [PATCH 44/92] haskell-tar: drop obsolete overrides for ghc-8.8.x

---
 .../haskell-modules/configuration-ghc-8.8.x.nix       | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index 0eb9d67e18c..625acac8046 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -70,17 +70,6 @@ self: super: {
       sha256 = "1p1pinca33vd10iy7hl20c1fc99vharcgcai6z3ngqbq50k2pd3q";
     };
   };
-  tar = overrideCabal (appendPatch super.tar (pkgs.fetchpatch {
-    url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/tar-0.5.1.0.patch";
-    sha256 = "1inbfpamfdpi3yfac59j5xpaq5fvh5g1ca8hlbpic1bizd3s03i0";
-  })) (drv: {
-    configureFlags = ["-f-old-time"];
-    editedCabalFile = null;
-    preConfigure = ''
-      cp -v ${pkgs.fetchurl {url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/tar-0.5.1.0.cabal"; sha256 = "1lydbwsmccf2av0g61j07bx7r5mzbcfgwvmh0qwg3a91857x264x";}} tar.cabal
-      sed -i -e 's/time < 1.9/time < 2/' tar.cabal
-    '';
-  });
   vector-th-unbox = appendPatch super.vector-th-unbox (pkgs.fetchpatch {
     url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/vector-th-unbox-0.2.1.6.patch";
     sha256 = "0169yf9ms1g5mmkc5l6hpffzm34zdrqdng4df02nbdmfgba45h19";

From 75388ff04f9ea724b0560fc710b07046a13f1a2d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 6 Sep 2019 08:02:05 +0000
Subject: [PATCH 45/92] haskell-zlib: drop obsolete overrides for ghc-8.8.x

---
 pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index 625acac8046..69bd3844c9c 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -85,10 +85,6 @@ self: super: {
     url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/regex-posix-0.95.2.patch";
     sha256 = "006yli58jpqp786zm1xlncjsilc38iv3a09r4pv94l587sdzasd2";
   });
-  zlib = appendPatch super.zlib (pkgs.fetchpatch {
-    url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/zlib-0.6.2.patch";
-    sha256 = "13fy730z9ihyc9kw3qkh642mi0bdbd7bz01dksj1zz845pr9jjif";
-  });
   haskell-src-exts = appendPatch super.haskell-src-exts (pkgs.fetchpatch {
     url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/haskell-src-exts-1.21.0.patch";
     sha256 = "0alb28hcsp774c9s73dgrajcb44vgv1xqfg2n5a9y2bpyngqscs3";

From 22c50545f2cb424eeedea541597b6dedf9b2f3e4 Mon Sep 17 00:00:00 2001
From: Vincent Laporte <Vincent.Laporte@gmail.com>
Date: Sat, 31 Aug 2019 07:04:43 +0000
Subject: [PATCH 46/92] ocamlPackages.ocaml_lwt: 4.1.0 -> 4.2.1

Ensures compatibility with OCaml 4.08
---
 pkgs/development/ocaml-modules/lwt/4.x.nix | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/pkgs/development/ocaml-modules/lwt/4.x.nix b/pkgs/development/ocaml-modules/lwt/4.x.nix
index 105104bc308..4850a853ea0 100644
--- a/pkgs/development/ocaml-modules/lwt/4.x.nix
+++ b/pkgs/development/ocaml-modules/lwt/4.x.nix
@@ -1,29 +1,33 @@
-{ stdenv, fetchzip, pkgconfig, ncurses, libev, buildDunePackage, ocaml
+{ lib, fetchzip, pkgconfig, ncurses, libev, buildDunePackage, ocaml
 , cppo, ocaml-migrate-parsetree, ppx_tools_versioned, result
+, mmap, seq
 }:
 
-let inherit (stdenv.lib) optional versionAtLeast; in
+let inherit (lib) optional versionAtLeast; in
 
 buildDunePackage rec {
   pname = "lwt";
-  version = "4.1.0";
+  version = "4.2.1";
 
   src = fetchzip {
     url = "https://github.com/ocsigen/${pname}/archive/${version}.tar.gz";
-    sha256 = "16wnc61kfj54z4q8sn9f5iik37pswz328hcz3z6rkza3kh3s6wmm";
+    sha256 = "1hz24fyhpm7d6603v399pgxvdl236srwagqja41ljvjx83y10ysr";
   };
 
+  postPatch = ''
+    substituteInPlace lwt.opam \
+    --replace 'version: "dev"' 'version: "${version}"'
+  '';
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ cppo ocaml-migrate-parsetree ppx_tools_versioned ]
    ++ optional (!versionAtLeast ocaml.version "4.07") ncurses;
-  propagatedBuildInputs = [ libev result ];
-
-  configurePhase = "ocaml src/util/configure.ml -use-libev true";
+  propagatedBuildInputs = [ libev mmap seq result ];
 
   meta = {
     homepage = "https://ocsigen.org/lwt/";
     description = "A cooperative threads library for OCaml";
-    maintainers = [ stdenv.lib.maintainers.vbgl ];
-    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [ lib.maintainers.vbgl ];
+    license = lib.licenses.mit;
   };
 }

From c6abb697852514a3bec2f63aa9694dab1dcf3cd4 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Tue, 27 Aug 2019 16:00:26 -0400
Subject: [PATCH 47/92] rl-1909: note about system-config-printer

---
 nixos/doc/manual/release-notes/rl-1909.xml | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/nixos/doc/manual/release-notes/rl-1909.xml b/nixos/doc/manual/release-notes/rl-1909.xml
index ff1bd628ad2..1dc59bf9004 100644
--- a/nixos/doc/manual/release-notes/rl-1909.xml
+++ b/nixos/doc/manual/release-notes/rl-1909.xml
@@ -144,6 +144,32 @@
      but will make sure that the given printers are configured as declared.
     </para>
    </listitem>
+   <listitem>
+    <para>
+     There is a new <xref linkend="opt-services.system-config-printer.enable"/> and <xref linkend="opt-programs.system-config-printer.enable"/> module
+     for the program of the same name. If you previously had <literal>system-config-printer</literal> enabled through some other
+     means you should migrate to using one of these modules.
+    </para>
+    <itemizedlist>
+     <para>If you're a user of the following desktopManager modules no action is needed:</para>
+     <listitem>
+      <para><option>services.xserver.desktopManager.plasma5</option></para>
+     </listitem>
+     <listitem>
+      <para><option>services.xserver.desktopManager.gnome3</option></para>
+     </listitem>
+     <listitem>
+      <para><option>services.xserver.desktopManager.pantheon</option></para>
+     </listitem>
+     <listitem>
+      <para><option>services.xserver.desktopManager.mate</option></para>
+      <para>
+       Note Mate uses <literal>programs.system-config-printer</literal> as it doesn't
+       use it as a service, but its graphical interface directly.
+      </para>
+     </listitem>
+    </itemizedlist>
+   </listitem>
   </itemizedlist>
 
  </section>

From 4c722b33512e01cf9bd0c7cc53707667fc960e9e Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Tue, 27 Aug 2019 17:22:53 -0400
Subject: [PATCH 48/92] system-config-printer: hardcode executable in udev rule

---
 pkgs/tools/misc/system-config-printer/default.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/tools/misc/system-config-printer/default.nix b/pkgs/tools/misc/system-config-printer/default.nix
index 35259dada3d..1b949108c54 100644
--- a/pkgs/tools/misc/system-config-printer/default.nix
+++ b/pkgs/tools/misc/system-config-printer/default.nix
@@ -61,6 +61,9 @@ stdenv.mkDerivation rec {
       # Manually expand literal "$(out)", which have failed to expand
       sed -e "s|ExecStart=\$(out)|ExecStart=$out|" \
           -i "$out/etc/systemd/system/configure-printer@.service"
+
+      substituteInPlace $out/etc/udev/rules.d/70-printers.rules \
+        --replace "udev-configure-printer" "$out/etc/udev/udev-configure-printer"
     '';
 
   meta = {

From 6b99ec2dbe4d7573ebdbf0f0824f3d9d999847b3 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Fri, 6 Sep 2019 09:44:06 -0400
Subject: [PATCH 49/92] nixos/pantheon: use system-config-printer module

---
 nixos/modules/services/x11/desktop-managers/pantheon.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix
index 5b82cb1f026..e313a194c34 100644
--- a/nixos/modules/services/x11/desktop-managers/pantheon.nix
+++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix
@@ -113,9 +113,9 @@ in
     services.colord.enable = mkDefault true;
     services.pantheon.files.enable = mkDefault true;
     services.tumbler.enable = mkDefault true;
-    services.dbus.packages = mkMerge [
-      ([ pkgs.pantheon.switchboard-plug-power ])
-      (mkIf config.services.printing.enable  ([pkgs.system-config-printer]) )
+    services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
+    services.dbus.packages = [
+      pkgs.pantheon.switchboard-plug-power
     ];
     services.pantheon.contractor.enable = mkDefault true;
     services.gnome3.at-spi2-core.enable = true;

From 2fe7bd3ab359383cba9014629687541d64962f91 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Fri, 6 Sep 2019 09:45:49 -0400
Subject: [PATCH 50/92] nixos/gnome3: use system-config-printer module

---
 nixos/modules/services/x11/desktop-managers/gnome3.nix | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 6f344f4121b..09095294fb5 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -233,10 +233,9 @@ in
       services.gnome3.gnome-user-share.enable = mkDefault true;
       services.gnome3.rygel.enable = mkDefault true;
       services.gvfs.enable = true;
+      services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
       services.telepathy.enable = mkDefault true;
       systemd.packages = [ pkgs.gnome3.vino ];
-      services.dbus.packages =
-        optional config.services.printing.enable pkgs.system-config-printer;
 
       services.avahi.enable = mkDefault true;
 

From 146532b27233e7ee895ab29c3b48fcb111082eeb Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Fri, 6 Sep 2019 09:46:48 -0400
Subject: [PATCH 51/92] nixos/xfce4-14: use system-config-printer module

---
 nixos/modules/services/x11/desktop-managers/xfce4-14.nix | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/nixos/modules/services/x11/desktop-managers/xfce4-14.nix b/nixos/modules/services/x11/desktop-managers/xfce4-14.nix
index 55c88223e78..57d1268d655 100644
--- a/nixos/modules/services/x11/desktop-managers/xfce4-14.nix
+++ b/nixos/modules/services/x11/desktop-managers/xfce4-14.nix
@@ -137,8 +137,7 @@ in
     services.gvfs.enable = true;
     services.gvfs.package = pkgs.xfce.gvfs;
     services.tumbler.enable = true;
-    services.dbus.packages =
-      optional config.services.printing.enable pkgs.system-config-printer;
+    services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
     services.xserver.libinput.enable = mkDefault true; # used in xfce4-settings-manager
 
     # Enable default programs

From 335b8c65c7d71c1c4ea9cc6c78aa3399daa4b707 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Fri, 6 Sep 2019 09:47:24 -0400
Subject: [PATCH 52/92] nixos/plasma5: use system-config-printer module

---
 nixos/modules/services/x11/desktop-managers/plasma5.nix | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix
index 94a307ae100..640eab6c769 100644
--- a/nixos/modules/services/x11/desktop-managers/plasma5.nix
+++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix
@@ -210,8 +210,7 @@ in
       # Enable helpful DBus services.
       services.udisks2.enable = true;
       services.upower.enable = config.powerManagement.enable;
-      services.dbus.packages =
-        mkIf config.services.printing.enable [ pkgs.system-config-printer ];
+      services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
 
       # Extra UDEV rules used by Solid
       services.udev.packages = [

From 998f59ccda684ffbebb724647f914eff8a1d3afd Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Fri, 6 Sep 2019 09:49:17 -0400
Subject: [PATCH 53/92] nixos/mate: enable system-config-printer

After some research this should be installed as a program
in Mate or Cinnamon.
---
 nixos/modules/services/x11/desktop-managers/mate.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/nixos/modules/services/x11/desktop-managers/mate.nix b/nixos/modules/services/x11/desktop-managers/mate.nix
index e3fbfc390cd..83c60a8ad4f 100644
--- a/nixos/modules/services/x11/desktop-managers/mate.nix
+++ b/nixos/modules/services/x11/desktop-managers/mate.nix
@@ -98,6 +98,9 @@ in
     programs.bash.vteIntegration = mkDefault true;
     programs.zsh.vteIntegration = mkDefault true;
 
+    # Mate uses this for printing
+    programs.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
+
     services.gnome3.at-spi2-core.enable = true;
     services.gnome3.gnome-keyring.enable = true;
     services.gnome3.gnome-settings-daemon.enable = true;

From 50399b9546cbfcafe56e9ffa5b11e62c6c337ef2 Mon Sep 17 00:00:00 2001
From: Nikolay Amiantov <ab@fmap.me>
Date: Fri, 6 Sep 2019 19:09:02 +0300
Subject: [PATCH 54/92] mcpp: pname-ify

---
 pkgs/development/compilers/mcpp/default.nix | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/mcpp/default.nix b/pkgs/development/compilers/mcpp/default.nix
index 9ce7c9166bc..d7151147933 100644
--- a/pkgs/development/compilers/mcpp/default.nix
+++ b/pkgs/development/compilers/mcpp/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "mcpp-2.7.2";
+  pname = "mcpp";
+  version = "2.7.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mcpp/${name}.tar.gz";
+    url = "mirror://sourceforge/mcpp/mcpp-${version}.tar.gz";
     sha256 = "0r48rfghjm90pkdyr4khxg783g9v98rdx2n69xn8f6c5i0hl96rv";
   };
 

From 084bd0ca661b65ad38e5f0d3d228ea514fdfb1ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alu=C3=ADsio=20Augusto=20Silva=20Gon=C3=A7alves?=
 <aluisio@aasg.name>
Date: Thu, 5 Sep 2019 15:41:23 -0300
Subject: [PATCH 55/92] python: beancount: 2.2.1 -> 2.2.3

---
 pkgs/development/python-modules/beancount/default.nix | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/python-modules/beancount/default.nix b/pkgs/development/python-modules/beancount/default.nix
index 61080e5e4c4..9405e3489d4 100644
--- a/pkgs/development/python-modules/beancount/default.nix
+++ b/pkgs/development/python-modules/beancount/default.nix
@@ -1,20 +1,20 @@
 { stdenv, buildPythonPackage, fetchPypi, isPy3k
 , beautifulsoup4, bottle, chardet, dateutil
-, google_api_python_client, lxml, ply, python_magic
-, pytest, requests }:
+, google_api_python_client, lxml, oauth2client
+, ply, python_magic, pytest, requests }:
 
 buildPythonPackage rec {
-  version = "2.2.1";
+  version = "2.2.3";
   pname = "beancount";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xrgmqv0wsc0makm5i6jwng99yp3rvm30v2xqmcah60fgjymkjzb";
+    sha256 = "0pcfl2rx2ng06i4f9izdpnlnb1k0rdzsckbzzn4cn4ixfzyssm0m";
   };
 
-  # No tests in archive
+  # Tests require files not included in the PyPI archive.
   doCheck = false;
 
   propagatedBuildInputs = [
@@ -24,6 +24,7 @@ buildPythonPackage rec {
     dateutil
     google_api_python_client
     lxml
+    oauth2client
     ply
     python_magic
     requests

From e030351740c28f9d5ce05628e81b88ee8211207a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alu=C3=ADsio=20Augusto=20Silva=20Gon=C3=A7alves?=
 <aluisio@aasg.name>
Date: Thu, 5 Sep 2019 15:37:20 -0300
Subject: [PATCH 56/92] python: google-auth: make tests compatible with pytest
 5

---
 pkgs/development/python-modules/google_auth/default.nix | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/python-modules/google_auth/default.nix b/pkgs/development/python-modules/google_auth/default.nix
index b0b6bfaa5ef..315d4756e0d 100644
--- a/pkgs/development/python-modules/google_auth/default.nix
+++ b/pkgs/development/python-modules/google_auth/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi
+{ stdenv, buildPythonPackage, fetchpatch, fetchPypi
 , pytest, mock, oauth2client, flask, requests, urllib3, pytest-localserver, six, pyasn1-modules, cachetools, rsa }:
 
 buildPythonPackage rec {
@@ -9,6 +9,13 @@ buildPythonPackage rec {
     inherit pname version;
     sha256 = "0f7c6a64927d34c1a474da92cfc59e552a5d3b940d3266606c6a28b72888b9e4";
   };
+  patches = [
+    (fetchpatch {
+      name = "use-new-pytest-api-to-keep-building-with-pytest5.patch";
+      url = "https://github.com/googleapis/google-auth-library-python/commit/b482417a04dbbc207fcd6baa7a67e16b1a9ffc77.patch";
+      sha256 = "07jpa7pa6sffbcwlsg5fgcv2vvngil5qpmv6fhjqp7fnvx0674s0";
+    })
+  ];
 
   checkInputs = [ pytest mock oauth2client flask requests urllib3 pytest-localserver ];
   propagatedBuildInputs = [ six pyasn1-modules cachetools rsa ];

From 0910b661eb64318773a29f6883d8382088852cfd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= <me@danieldk.eu>
Date: Fri, 6 Sep 2019 17:05:30 +0200
Subject: [PATCH 57/92] makemkv: 1.14.4 -> 1.14.5

Changelog:

- Some small miscellaneous improvements
---
 pkgs/applications/video/makemkv/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index f3d8b4ae569..77aa2779b5d 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -3,21 +3,21 @@
 }:
 
 let
-  version = "1.14.4";
+  version = "1.14.5";
   # Using two URLs as the first one will break as soon as a new version is released
   src_bin = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
     ];
-    sha256 = "0vmmvldmwmq9g202abblj6l15kb8z3b0c6mcc03f30s2yci6ij33";
+    sha256 = "1rnkx0h149n3pawmk8d234x5w1xw4kady9pgrcc5aw6krbx38nis";
   };
   src_oss = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
     ];
-    sha256 = "0n1nlq17dxcbgk9xqf7nv6zykvh91yhsjqdhq55947wc11fxjqa0";
+    sha256 = "1jg10mslcl0sfwdd9p7hy9zfvk0xc7qhdakiv1kbilsl42bgaxyi";
   };
 in mkDerivation {
   pname = "makemkv";

From f70e4c7d5990c5c154af4ab7b7f37f804d570502 Mon Sep 17 00:00:00 2001
From: Doron Behar <doron.behar@gmail.com>
Date: Fri, 6 Sep 2019 14:14:11 +0300
Subject: [PATCH 58/92] pdfcpu: 0.2.3 -> 0.2.4

---
 pkgs/applications/graphics/pdfcpu/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/graphics/pdfcpu/default.nix b/pkgs/applications/graphics/pdfcpu/default.nix
index c1b2beadcd5..7b1077d18a9 100644
--- a/pkgs/applications/graphics/pdfcpu/default.nix
+++ b/pkgs/applications/graphics/pdfcpu/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pdfcpu";
-  version = "0.2.3";
+  version = "0.2.4";
 
   src = fetchFromGitHub {
     owner = "pdfcpu";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11q57j3wzmy2glkv53i9n7jkp14x4bqm20f3rqs3gkm4j9bcas4y";
+    sha256 = "0inlwrpv5zkcv48g5gq1xdrvd7w1zkhf8p57fpr2cpd7hd3am7n8";
   };
 
-  modSha256 = "0cz4gs88s9z2yv1gc9ap92vv2j93ab6kr25zjgl2r7z6clbl5fzp";
+  modSha256 = "1nagb3k2ghfw27g4vcmn7v8s5flg387jpf1l18gw6c44a1xjcivs";
 
   subPackages = [ "cmd/pdfcpu" ];
 

From f1bf4ec1f1dba256ad7eea070473a19742d92ad6 Mon Sep 17 00:00:00 2001
From: Doron Behar <doron.behar@gmail.com>
Date: Fri, 6 Sep 2019 14:06:44 +0300
Subject: [PATCH 59/92] tinc: 1.0.35 -> 1.0.36

---
 pkgs/tools/networking/tinc/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/networking/tinc/default.nix b/pkgs/tools/networking/tinc/default.nix
index cf4a2bad78b..e331916626e 100644
--- a/pkgs/tools/networking/tinc/default.nix
+++ b/pkgs/tools/networking/tinc/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, lzo, openssl, zlib}:
 
 stdenv.mkDerivation rec {
-  version = "1.0.35";
+  version = "1.0.36";
   pname = "tinc";
 
   src = fetchurl {
     url = "https://www.tinc-vpn.org/packages/tinc-${version}.tar.gz";
-    sha256 = "0pl92sdwrkiwgll78x0ww06hfljd07mkwm62g8x17qn3gha3pj0q";
+    sha256 = "021i2sl2mjscbm8g59d7vs74iw3gf0m48wg7w3zhwj6czarkpxs0";
   };
 
   buildInputs = [ lzo openssl zlib ];

From 25ac92e825b12a4d18d783f3b8ce81eaca8610a8 Mon Sep 17 00:00:00 2001
From: Vlad Artamonov <742047+vladdy@users.noreply.github.com>
Date: Thu, 5 Sep 2019 15:05:05 -0400
Subject: [PATCH 60/92] dep: 0.5.1 -> 0.5.4

---
 pkgs/development/tools/dep/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/tools/dep/default.nix b/pkgs/development/tools/dep/default.nix
index 456948a9795..d807e79f9ed 100644
--- a/pkgs/development/tools/dep/default.nix
+++ b/pkgs/development/tools/dep/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "dep";
-  version = "0.5.1";
+  version = "0.5.4";
   rev = "v${version}";
 
   goPackagePath = "github.com/golang/dep";
@@ -12,7 +12,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "golang";
     repo = "dep";
-    sha256 = "1a5vq5v3ikg6iysbywxr5hcjnbv76nzhk50rd3iq3v2fnyq38dv2";
+    sha256 = "02akzbjar1v01rdal746vk6mklff29yk2mqfyjk1zrs0mlg38ygd";
   };
 
   buildFlagsArray = ("-ldflags=-s -w -X main.commitHash=${rev} -X main.version=${version}");

From 05a0bf99c93036682726a14653346644964a695c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= <me@danieldk.eu>
Date: Thu, 5 Sep 2019 18:29:22 +0200
Subject: [PATCH 61/92] maturin: 0.7.1 -> 0.7.2

GitHub release:
https://github.com/PyO3/maturin/releases/tag/v0.7.2

This release provides some cross-compilation fixes.
---
 pkgs/development/tools/rust/maturin/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/tools/rust/maturin/default.nix b/pkgs/development/tools/rust/maturin/default.nix
index 7bd49132d0e..b152be414da 100644
--- a/pkgs/development/tools/rust/maturin/default.nix
+++ b/pkgs/development/tools/rust/maturin/default.nix
@@ -5,16 +5,16 @@ let
   inherit (darwin.apple_sdk.frameworks) Security;
 in rustPlatform.buildRustPackage rec {
   name = "maturin-${version}";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "PyO3";
     repo = "maturin";
     rev = "v${version}";
-    sha256 = "0srsb305gld6zmz7qm5zk4gawqqlywdpray04z8xcij146mccci2";
+    sha256 = "180dynm9qy3mliqai4jfwxbg01jdz2a95bfyar880qmp75f35wi8";
   };
 
-  cargoSha256 = "0bscwbrzjaps4yqcrqhan56kdmh0n014w4ldsbv3sbhpw5izz335";
+  cargoSha256 = "1x61kxmbk5mazi3lmzfnixjl584cxkfv16si2smh8d9xhhz6gvpw";
 
   nativeBuildInputs = [ pkgconfig ];
 

From 3a0c6f1402f960af5c634ffde14b5b35a5b621d0 Mon Sep 17 00:00:00 2001
From: Nikolay Amiantov <ab@fmap.me>
Date: Fri, 6 Sep 2019 19:07:34 +0300
Subject: [PATCH 62/92] zeroc-ice: 3.6.3 -> 3.7.2

Rename from zeroc_ice.
Take various improvements from Arch zero-ice package.
Move old version to zeroc-ice-36.
---
 pkgs/development/libraries/zeroc-ice/3.6.nix  | 57 +++++++++++++++++
 .../libraries/zeroc-ice/default.nix           | 63 ++++++++++++++-----
 pkgs/top-level/aliases.nix                    |  3 +
 pkgs/top-level/all-packages.nix               |  8 ++-
 4 files changed, 113 insertions(+), 18 deletions(-)
 create mode 100644 pkgs/development/libraries/zeroc-ice/3.6.nix

diff --git a/pkgs/development/libraries/zeroc-ice/3.6.nix b/pkgs/development/libraries/zeroc-ice/3.6.nix
new file mode 100644
index 00000000000..13797f927c1
--- /dev/null
+++ b/pkgs/development/libraries/zeroc-ice/3.6.nix
@@ -0,0 +1,57 @@
+{ stdenv, lib, fetchFromGitHub, mcpp, bzip2, expat, openssl, db5
+, darwin, libiconv, Security
+, cpp11 ? false
+}:
+
+stdenv.mkDerivation rec {
+  pname = "zeroc-ice";
+  version = "3.6.3";
+
+  src = fetchFromGitHub {
+    owner = "zeroc-ice";
+    repo = "ice";
+    rev = "v${version}";
+    sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2";
+  };
+
+  buildInputs = [ mcpp bzip2 expat openssl db5 ]
+    ++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ];
+
+  postUnpack = ''
+    sourceRoot=$sourceRoot/cpp
+  '';
+
+  prePatch = lib.optional stdenv.isDarwin ''
+    substituteInPlace config/Make.rules.Darwin \
+        --replace xcrun ""
+  '';
+
+  preBuild = ''
+    makeFlagsArray+=(
+      "prefix=$out"
+      "OPTIMIZE=yes"
+      "USR_DIR_INSTALL=yes"
+      "CONFIGS=${if cpp11 then "cpp11-shared" else "shared"}"
+      "SKIP=slice2py" # provided by a separate package
+    )
+  '';
+
+  # cannot find -lIceXML (linking bin/transformdb)
+  enableParallelBuilding = false;
+
+  outputs = [ "out" "bin" "dev" ];
+
+  postInstall = ''
+    mkdir -p $bin $dev/share
+    mv $out/bin $bin
+    mv $out/share/Ice-* $dev/share/ice
+    rm -rf $out/share/slice
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.zeroc.com/ice.html;
+    description = "The internet communications engine";
+    license = licenses.gpl2;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/zeroc-ice/default.nix b/pkgs/development/libraries/zeroc-ice/default.nix
index a2e60eacf98..9a69d3168c5 100644
--- a/pkgs/development/libraries/zeroc-ice/default.nix
+++ b/pkgs/development/libraries/zeroc-ice/default.nix
@@ -1,41 +1,70 @@
-{ stdenv, fetchFromGitHub, mcpp, bzip2, expat, openssl, db5
+{ stdenv, lib, fetchFromGitHub, mcpp, bzip2, expat, openssl, lmdb
 , darwin, libiconv, Security
+, cpp11 ? false
 }:
 
-stdenv.mkDerivation rec {
+let
+  zeroc_mcpp = mcpp.overrideAttrs (self: rec {
+    pname = "zeroc-mcpp";
+    version = "2.7.2.14";
+
+    src = fetchFromGitHub {
+      owner = "zeroc-ice";
+      repo = "mcpp";
+      rev = "v${version}";
+      sha256 = "1psryc2ql1cp91xd3f8jz84mdaqvwzkdq2pr96nwn03ds4cd88wh";
+    };
+
+    installFlags = [ "PREFIX=$(out)" ];
+  });
+
+in stdenv.mkDerivation rec {
   pname = "zeroc-ice";
-  version = "3.6.3";
+  version = "3.7.2";
 
   src = fetchFromGitHub {
     owner = "zeroc-ice";
     repo = "ice";
     rev = "v${version}";
-    sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2";
+    sha256 = "0m9lh79dfpcwcp2jhmj0wqdcsw3rl633x2hzfw9n2i34jjv64fvg";
   };
 
-  patches = [ ./makefile.patch ];
+  buildInputs = [ zeroc_mcpp bzip2 expat openssl lmdb ]
+    ++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ];
 
-  buildInputs = [ mcpp bzip2 expat openssl db5 ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ];
-
-  postUnpack = ''
-    sourceRoot=$sourceRoot/cpp
-  '';
-
-  prePatch = ''
-    substituteInPlace config/Make.rules.Darwin \
+  prePatch = lib.optional stdenv.isDarwin ''
+    substituteInPlace Make.rules.Darwin \
         --replace xcrun ""
   '';
 
-  makeFlags = [ "prefix=$(out)" "OPTIMIZE=yes" ];
+  preBuild = ''
+    makeFlagsArray+=(
+      "prefix=$out"
+      "OPTIMIZE=yes"
+      "USR_DIR_INSTALL=yes"
+      "LANGUAGES=cpp"
+      "CONFIGS=${if cpp11 then "cpp11-shared" else "shared"}"
+      "SKIP=slice2py" # provided by a separate package
+    )
+  '';
 
-  # cannot find -lIceXML (linking bin/transformdb)
-  #enableParallelBuilding = true;
+  buildFlags = [ "srcs" ]; # no tests; they require network
+
+  enableParallelBuilding = true;
+
+  outputs = [ "out" "bin" "dev" ];
+
+  postInstall = ''
+    mkdir -p $bin $dev/share
+    mv $out/bin $bin
+    mv $out/share/ice $dev/share
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.zeroc.com/ice.html;
     description = "The internet communications engine";
     license = licenses.gpl2;
     platforms = platforms.unix;
+    maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index ddd6c1d270b..abdbdc11679 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -435,6 +435,9 @@ mapAliases ({
   # added 2019-08-01
   mumble_git = pkgs.mumble_rc;
   murmur_git = pkgs.murmur_rc;
+
+  # added 2019-09-06
+  zeroc_ice = pkgs.zeroc-ice;
 } // (with ocaml-ng; { # added 2016-09-14
   ocaml_4_00_1 = ocamlPackages_4_00_1.ocaml;
   ocaml_4_01_0 = ocamlPackages_4_01_0.ocaml;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4a95ad0a392..ea560e899ba 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -21654,7 +21654,13 @@ in
 
   zathura = callPackage ../applications/misc/zathura { };
 
-  zeroc_ice = callPackage ../development/libraries/zeroc-ice {
+  zeroc-ice = callPackage ../development/libraries/zeroc-ice {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
+  zeroc-ice-cpp11 = zeroc-ice.override { cpp11 = true; };
+
+  zeroc-ice-36 = callPackage ../development/libraries/zeroc-ice/3.6.nix {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 

From b667dd981db5f57d8cd236d7d65b1182d5b9765c Mon Sep 17 00:00:00 2001
From: Nikolay Amiantov <ab@fmap.me>
Date: Fri, 6 Sep 2019 19:10:23 +0300
Subject: [PATCH 63/92] python3.pkgs.zeroc-ice: init at 3.7.2

---
 .../python-modules/zeroc-ice/default.nix      | 20 +++++++++++++++++++
 pkgs/top-level/python-packages.nix            |  2 ++
 2 files changed, 22 insertions(+)
 create mode 100644 pkgs/development/python-modules/zeroc-ice/default.nix

diff --git a/pkgs/development/python-modules/zeroc-ice/default.nix b/pkgs/development/python-modules/zeroc-ice/default.nix
new file mode 100644
index 00000000000..978f8749d3b
--- /dev/null
+++ b/pkgs/development/python-modules/zeroc-ice/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi, openssl, bzip2 }:
+
+buildPythonPackage rec {
+  pname = "zeroc-ice";
+  version = "3.7.2";
+
+  src = fetchPypi {
+    inherit version pname;
+    sha256 = "1bs7h3k9nd1gls2azgp8gz9407cslxbi2x1gspab8p87a61pjim8";
+  };
+
+  buildInputs = [ openssl bzip2 ];
+
+  meta = with stdenv.lib; {
+    homepage = https://zeroc.com/;
+    license = licenses.gpl2;
+    description = "Comprehensive RPC framework with support for Python, C++, .NET, Java, JavaScript and more.";
+    maintainers = with maintainers; [ abbradar ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 2891af957fb..8aecd2f07e1 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -6194,6 +6194,8 @@ in {
     inherit python;
   })).python;
 
+  zeroc-ice = callPackage ../development/python-modules/zeroc-ice { };
+
   zm-py = callPackage ../development/python-modules/zm-py { };
 
   rfc7464 = callPackage ../development/python-modules/rfc7464 { };

From 094a399fca5436a986f63702f454937c8d20f0bb Mon Sep 17 00:00:00 2001
From: Nikolay Amiantov <ab@fmap.me>
Date: Fri, 6 Sep 2019 19:09:28 +0300
Subject: [PATCH 64/92] mumble: use different zeroc-ice versions

Needed to unbreak ICE support in murmur RC version.
---
 .../networking/mumble/default.nix             | 19 ++++++++-----------
 pkgs/top-level/all-packages.nix               | 10 +---------
 2 files changed, 9 insertions(+), 20 deletions(-)

diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index 9f641061bd8..6439991920d 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -4,13 +4,13 @@
 , jackSupport ? false, libjack2 ? null
 , speechdSupport ? false, speechd ? null
 , pulseSupport ? false, libpulseaudio ? null
-, iceSupport ? false, zeroc_ice ? null
+, iceSupport ? false, zeroc-ice ? null, zeroc-ice-36 ? null
 }:
 
 assert jackSupport -> libjack2 != null;
 assert speechdSupport -> speechd != null;
 assert pulseSupport -> libpulseaudio != null;
-assert iceSupport -> zeroc_ice != null;
+assert iceSupport -> zeroc-ice != null && zeroc-ice-36 != null;
 
 with stdenv.lib;
 let
@@ -41,7 +41,6 @@ let
       "CONFIG+=no-bundled-speex"
     ] ++ optional (!speechdSupport) "CONFIG+=no-speechd"
       ++ optional jackSupport "CONFIG+=no-oss CONFIG+=no-alsa CONFIG+=jackaudio"
-      ++ optional (!iceSupport) "CONFIG+=no-ice"
       ++ (overrides.configureFlags or [ ]);
 
     preConfigure = ''
@@ -108,24 +107,24 @@ let
     '';
   } source;
 
-  server = generic {
+  server = source: let ice = if source.qtVersion == 4 then zeroc-ice-36 else zeroc-ice; in generic {
     type = "murmur";
 
     postPatch = optional iceSupport ''
-      grep -Rl '/usr/share/Ice' . | xargs sed -i 's,/usr/share/Ice/,${zeroc_ice}/,g'
+      grep -Rl '/usr/share/Ice' . | xargs sed -i 's,/usr/share/Ice/,${ice.dev}/share/ice/,g'
     '';
 
     configureFlags = [
       "CONFIG+=no-client"
-    ];
+    ] ++ optional (!iceSupport) "CONFIG+=no-ice";
 
-    buildInputs = [ libcap ] ++ optional iceSupport zeroc_ice;
+    buildInputs = [ libcap ] ++ optional iceSupport ice;
 
     installPhase = ''
       # bin stuff
       install -Dm755 release/murmurd $out/bin/murmurd
     '';
-  };
+  } source;
 
   stableSource = rec {
     version = "1.2.19";
@@ -170,7 +169,5 @@ in {
   mumble     = client stableSource;
   mumble_rc  = client rcSource;
   murmur     = server stableSource;
-  murmur_rc  = (server rcSource).overrideAttrs (old: {
-    meta = old.meta // { broken = iceSupport; };
-  });
+  murmur_rc  = server rcSource;
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ea560e899ba..f5389eda598 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -19573,15 +19573,7 @@ in
       speechdSupport = config.mumble.speechdSupport or false;
       pulseSupport = config.pulseaudio or false;
       iceSupport = config.murmur.iceSupport or true;
-    }) mumble mumble_rc murmur;
-
-  inherit (callPackages ../applications/networking/mumble {
-      avahi = avahi-compat;
-      jackSupport = config.mumble.jackSupport or false;
-      speechdSupport = config.mumble.speechdSupport or false;
-      pulseSupport = config.pulseaudio or false;
-      iceSupport = false;
-    }) murmur_rc;
+    }) mumble mumble_rc murmur murmur_rc;
 
   mumble_overlay = callPackage ../applications/networking/mumble/overlay.nix {
     mumble_i686 = if stdenv.hostPlatform.system == "x86_64-linux"

From daa9ea29875da3965bd13af91eaa2d4694744e9d Mon Sep 17 00:00:00 2001
From: Nikolay Amiantov <ab@fmap.me>
Date: Fri, 6 Sep 2019 20:29:16 +0300
Subject: [PATCH 65/92] murmur service: fix typo in description

---
 nixos/modules/services/networking/murmur.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/services/networking/murmur.nix b/nixos/modules/services/networking/murmur.nix
index 7ac4d0c6419..082953d2f6a 100644
--- a/nixos/modules/services/networking/murmur.nix
+++ b/nixos/modules/services/networking/murmur.nix
@@ -234,7 +234,7 @@ in
       extraConfig = mkOption {
         type = types.lines;
         default = "";
-        description = "Extra configuration to put into mumur.ini.";
+        description = "Extra configuration to put into murmur.ini.";
       };
     };
   };

From a0b743f47c179e3fe07e6ef617251678a1b60263 Mon Sep 17 00:00:00 2001
From: Robert Hensing <roberth@users.noreply.github.com>
Date: Fri, 6 Sep 2019 20:02:36 +0200
Subject: [PATCH 66/92] Fix typo in lists.nix

---
 lib/lists.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/lists.nix b/lib/lists.nix
index e4fcf959b60..d671dd761e6 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -88,7 +88,7 @@ rec {
   /* Strict version of `foldl`.
 
      The difference is that evaluation is forced upon access. Usually used
-     with small whole results (in contract with lazily-generated list or large
+     with small whole results (in contrast with lazily-generated list or large
      lists where only a part is consumed.)
 
      Type: foldl' :: (b -> a -> b) -> b -> [a] -> b

From 6d7282d74a66dd96df3cfd400429b7aa1a694069 Mon Sep 17 00:00:00 2001
From: tbenst <lensman@tylerbenster.com>
Date: Sun, 12 May 2019 01:00:57 -0700
Subject: [PATCH 67/92] magma: 2.0.2 -> 2.5.0

---
 .../libraries/science/math/magma/default.nix  | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/libraries/science/math/magma/default.nix b/pkgs/development/libraries/science/math/magma/default.nix
index d036e39d01a..c428fbab588 100644
--- a/pkgs/development/libraries/science/math/magma/default.nix
+++ b/pkgs/development/libraries/science/math/magma/default.nix
@@ -1,24 +1,31 @@
-{ stdenv, fetchurl, cmake, gfortran, cudatoolkit, libpthreadstubs, liblapack }:
+{ stdenv, fetchurl, cmake, gfortran, cudatoolkit, libpthreadstubs, liblapack
+, mklSupport ? false, mkl ? null
+}:
+
+assert !mklSupport || mkl != null;
 
 with stdenv.lib;
 
-let version = "2.0.2";
+let version = "2.5.0";
 
 in stdenv.mkDerivation {
   pname = "magma";
   inherit version;
   src = fetchurl {
     url = "https://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-${version}.tar.gz";
-    sha256 = "0w3z6k1npfh0d3r8kpw873f1m7lny29sz2bvvfxzk596d4h083lk";
+    sha256 = "0czspk93cv1fy37zyrrc9k306q4yzfxkhy1y4lj937dx8rz5rm2g";
     name = "magma-${version}.tar.gz";
   };
 
-  buildInputs = [ gfortran cudatoolkit libpthreadstubs liblapack cmake ];
+  buildInputs = [ gfortran cudatoolkit libpthreadstubs cmake ]
+    ++ (if mklSupport then [ mkl ] else [ liblapack ]);
 
   doCheck = false;
-  #checkTarget = "tests";
+
+  MKLROOT = optionalString mklSupport "${mkl}";
 
   enableParallelBuilding=true;
+  buildFlags = [ "magma" "magma_sparse" ];
 
   # MAGMA's default CMake setup does not care about installation. So we copy files directly.
   installPhase = ''
@@ -42,6 +49,6 @@ in stdenv.mkDerivation {
     license = licenses.bsd3;
     homepage = http://icl.cs.utk.edu/magma/index.html;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ianwookim ];
+    maintainers = with maintainers; [ tbenst ];
   };
 }

From acd4567f57b5416e6c8cc0dcf4b5c7c12c9f11d0 Mon Sep 17 00:00:00 2001
From: Florian Klink <flokli@flokli.de>
Date: Thu, 5 Sep 2019 13:15:46 -0700
Subject: [PATCH 68/92] python3.pkgs.libcloud: 2.5.0 -> 2.6.0

---
 pkgs/development/python-modules/libcloud/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/python-modules/libcloud/default.nix b/pkgs/development/python-modules/libcloud/default.nix
index 3853d796fcd..734a51c7be6 100644
--- a/pkgs/development/python-modules/libcloud/default.nix
+++ b/pkgs/development/python-modules/libcloud/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "apache-libcloud";
-  version = "2.5.0";
+  version = "2.6.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1dj8jh5ccjv7qbydf49cw17py7z3jjkaxk4jj2gx6mq2f4w304wg";
+    sha256 = "1spjkw5nxhbawblj5db8izff05kjw425iyydipajb7qh73vm25r0";
   };
 
   checkInputs = [ mock pytest pytestrunner requests-mock ];

From 718dbcaf13c5812466970b82785132d90465d314 Mon Sep 17 00:00:00 2001
From: Will Dietz <w@wdtz.org>
Date: Thu, 29 Aug 2019 22:31:54 -0500
Subject: [PATCH 69/92] bear: 2.4.1 -> 2.4.2

---
 pkgs/development/tools/build-managers/bear/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/tools/build-managers/bear/default.nix b/pkgs/development/tools/build-managers/bear/default.nix
index c095f8c695c..ec1577c5107 100644
--- a/pkgs/development/tools/build-managers/bear/default.nix
+++ b/pkgs/development/tools/build-managers/bear/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bear";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchFromGitHub {
     owner = "rizsotto";
-    repo = "Bear";
+    repo = pname;
     rev = version;
-    sha256 = "0fqhhavyz9ddjc3wgb2ng47bfgk1q4w5bwah74nsa02k8r22pbch";
+    sha256 = "1w1kyjzvvy5lj16kn3yyf7iil2cqlfkszi8kvagql7f5h5l6w9b1";
   };
 
   nativeBuildInputs = [ cmake ];

From d4713b64939b655a25129ed560e832727f3695fd Mon Sep 17 00:00:00 2001
From: Robert Scott <code@humanleg.org.uk>
Date: Sun, 1 Sep 2019 01:59:55 +0100
Subject: [PATCH 70/92] pythonPackages.pybind11: enable tests

---
 .../python-modules/pybind11/default.nix       | 35 +++++++++++++++----
 1 file changed, 29 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/python-modules/pybind11/default.nix b/pkgs/development/python-modules/pybind11/default.nix
index 1b89cb5ada7..25ef662edef 100644
--- a/pkgs/development/python-modules/pybind11/default.nix
+++ b/pkgs/development/python-modules/pybind11/default.nix
@@ -1,12 +1,24 @@
-{ lib, buildPythonPackage, fetchPypi, fetchpatch }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, python
+, pytest
+, cmake
+, numpy ? null
+, eigen ? null
+, scipy ? null
+}:
 
 buildPythonPackage rec {
   pname = "pybind11";
   version = "2.3.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0923ngd2cvck3lhl7584y08n36pm6zqihfm1s69sbdc11xg936hr";
+  src = fetchFromGitHub {
+    owner = "pybind";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "11b6dniri8m05spfd2a19irz82shf4sdca73566bniggrf3zclnf";
   };
 
   patches = [
@@ -14,10 +26,21 @@ buildPythonPackage rec {
       url = https://github.com/pybind/pybind11/commit/44a40dd61e5178985cfb1150cf05e6bfcec73042.patch;
       sha256 = "047nzyfsihswdva96hwchnp4gj2mlbiqvmkdnhxrfi9sji8x31ka";
     })
+    (fetchpatch {
+      name = "pytest-4-excinfo-fix.patch";
+      url = https://github.com/pybind/pybind11/commit/9fd4712121fdbb6202a35be4c788525e6c8ab826.patch;
+      sha256 = "07jjv8jlbszvr2grpm5xqxjac7jb0y68lgb1jcbb93k9vyp1hr33";
+    })
   ];
 
-  # Current PyPi version does not include test suite
-  doCheck = false;
+  checkInputs = [ pytest cmake ]
+    ++ (lib.optional (numpy != null) numpy)
+    ++ (lib.optional (eigen != null) eigen)
+    ++ (lib.optional (scipy != null) scipy);
+  checkPhase = ''
+    cmake ${if eigen != null then "-DEIGEN3_INCLUDE_DIR=${eigen}/include/eigen3" else ""}
+    make -j $NIX_BUILD_CORES pytest
+  '';
 
   meta = {
     homepage = https://github.com/pybind/pybind11;

From e8f20bfc8dd7dbd1f2fbdb828e9cea9372612004 Mon Sep 17 00:00:00 2001
From: Roman Volosatovs <rvolosatovs@riseup.net>
Date: Thu, 5 Sep 2019 21:46:30 +0200
Subject: [PATCH 71/92] gotools: 2019-07-06 -> 2019-09-05

---
 pkgs/development/tools/gotools/default.nix | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/tools/gotools/default.nix b/pkgs/development/tools/gotools/default.nix
index be7db5e8b8a..4c662f9b5c0 100644
--- a/pkgs/development/tools/gotools/default.nix
+++ b/pkgs/development/tools/gotools/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gotools-unstable";
-  version = "2019-07-06";
-  rev = "72ffa07ba3db8d09f5215feec0f89464f3028f8e";
+  version = "2019-09-05";
+  rev = "6b3d1c9ba8bf7ce410f6b490852ec54953383362";
 
   src = fetchgit {
     inherit rev;
     url = "https://go.googlesource.com/tools";
-    sha256 = "0c0s5aiwj807vxfzwrah32spwq8cnxvy0j117i5cbsqw2df80pgv";
+    sha256 = "0a2xjx9hqkash7fd2qv9hd93wcqdbfrmsdzjd91dwvnk48j61daf";
   };
 
   # Build of golang.org/x/tools/gopls fails with:
@@ -21,7 +21,7 @@ buildGoModule rec {
     rm -rf gopls
   '';
 
-  modSha256 = "16nkrpki9fnxsrxxxs9ljz49plcz393z0sqq2knkk30pmncpwd3q";
+  modSha256 = "16cfzmfr9jv8wz0whl433xdm614dk63fzjxv6l1xvkagjmki49iy";
 
   postConfigure = ''
     # Make the builtin tools available here

From d8d68e1af16e734a7bddfd491e30549896bde8a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alu=C3=ADsio=20Augusto=20Silva=20Gon=C3=A7alves?=
 <aluisio@aasg.name>
Date: Thu, 5 Sep 2019 16:04:31 -0300
Subject: [PATCH 72/92] fava: 1.10 -> 1.11

---
 pkgs/applications/office/fava/default.nix | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index e33a0b202da..a5de74a6f16 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -5,15 +5,14 @@ let
 in
 buildPythonApplication rec {
   pname = "fava";
-  version = "1.10";
+  version = "1.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "145995nzgr06qsn619zap0xqa8ckfrp5azga41smyszq97pd01sj";
+    sha256 = "0gyrxqmfr8igfjnp9lcsl4km17yakj556xns3jp4m9l2407b5zhc";
   };
 
-  doCheck = false;
-
+  checkInputs = [ python3.pkgs.pytest ];
   propagatedBuildInputs = with python3.pkgs;
     [ 
       Babel
@@ -28,6 +27,11 @@ buildPythonApplication rec {
       simplejson
     ];
 
+  # CLI test expects fava on $PATH.  Not sure why static_url fails.
+  checkPhase = ''
+    py.test tests -k 'not cli and not static_url'
+  '';
+
   meta = {
     homepage = https://beancount.github.io/fava;
     description = "Web interface for beancount";

From ddad80a588d183fc505b97ed132b7df86599b79f Mon Sep 17 00:00:00 2001
From: Will Dietz <w@wdtz.org>
Date: Sat, 24 Aug 2019 21:09:02 -0500
Subject: [PATCH 73/92] acpid: 2.0.31 -> 2.0.32

https://sourceforge.net/p/acpid2/code/ci/36c92da71ea407a87f1d0321f7d7cc49421bfb75/
---
 pkgs/os-specific/linux/acpid/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/os-specific/linux/acpid/default.nix b/pkgs/os-specific/linux/acpid/default.nix
index 99d1cf38f0a..d58aec4a97c 100644
--- a/pkgs/os-specific/linux/acpid/default.nix
+++ b/pkgs/os-specific/linux/acpid/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "acpid-2.0.31";
+  name = "acpid-2.0.32";
 
   src = fetchurl {
     url = "mirror://sourceforge/acpid2/${name}.tar.xz";
-    sha256 = "1hrc0xm6q12knbgzhq0i8g2rfrkwcvh1asd7k9rs3nc5xmlwd7gw";
+    sha256 = "0zhmxnhnhg4v1viw82yjr22kram6k5k1ixznhayk8cnw7q5x7lpj";
   };
 
   nativeBuildInputs = [ autoreconfHook ];

From af39568c3a12fb54219f66c4b653ed8380f1037a Mon Sep 17 00:00:00 2001
From: Averell Dalton <averell+nixpkgs@rxd4.com>
Date: Tue, 3 Sep 2019 21:09:43 +0200
Subject: [PATCH 74/92] nvidia_x11: fix for vulkan in >= 435

---
 pkgs/os-specific/linux/nvidia-x11/builder.sh | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/os-specific/linux/nvidia-x11/builder.sh b/pkgs/os-specific/linux/nvidia-x11/builder.sh
index 467d930aaf5..2b1b37db344 100755
--- a/pkgs/os-specific/linux/nvidia-x11/builder.sh
+++ b/pkgs/os-specific/linux/nvidia-x11/builder.sh
@@ -62,7 +62,10 @@ installPhase() {
         sed -E "s#(libnvidia-opencl)#$i/lib/\\1#" nvidia.icd > nvidia.icd.fixed
         install -Dm644 nvidia.icd.fixed $i/etc/OpenCL/vendors/nvidia.icd
         if [ -e nvidia_icd.json.template ]; then
+            # template patching for version < 435
             sed "s#__NV_VK_ICD__#$i/lib/libGLX_nvidia.so#" nvidia_icd.json.template > nvidia_icd.json
+        fi
+        if [ -e nvidia_icd.json ]; then
             install -Dm644 nvidia_icd.json $i/share/vulkan/icd.d/nvidia.json
         fi
         if [ "$useGLVND" = "1" ]; then

From 6beabe7d2ca1a2caf680e89d74416900867bf05a Mon Sep 17 00:00:00 2001
From: Justin Bedo <cu@cua0.org>
Date: Fri, 6 Sep 2019 12:09:28 +1000
Subject: [PATCH 75/92] bedtools: 2.28.0 -> 2.29.0

---
 pkgs/applications/science/biology/bedtools/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/science/biology/bedtools/default.nix b/pkgs/applications/science/biology/bedtools/default.nix
index b5bc3b622b9..4e4c093ad7f 100644
--- a/pkgs/applications/science/biology/bedtools/default.nix
+++ b/pkgs/applications/science/biology/bedtools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bedtools";
-  version = "2.28.0";
+  version = "2.29.0";
 
   src = fetchFromGitHub {
     owner = "arq5x";
     repo = "bedtools2";
     rev = "v${version}";
-    sha256 = "1266bcn5hgbvysfi6nr4cqxlbxcx7vn7ng8kb0v3gz37qh2zxxw9";
+    sha256 = "0d6i985qqxp92ddq4n6558m70qi5rqhl724wrfys0hm0p6a9h56x";
   };
 
   buildInputs = [ zlib python bzip2 lzma ];

From ef2328331c97a37ebc95af22d21296284f5da451 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Wed, 4 Sep 2019 19:10:00 +0200
Subject: [PATCH 76/92] androidStudioPackages.*: Remove the "-wrapper" suffix
 from name

This causes problems when parsing the name attribute, e.g. for Repology
and parseDrvName. I've added "-unwrapped" to the derivation with the
downloaded content to keep it easier to differentiate between the two.
---
 pkgs/applications/editors/android-studio/common.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index 50a752b3eb9..0d406ad2d36 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -40,7 +40,7 @@
 let
   drvName = "android-studio-${channel}-${version}";
   androidStudio = stdenv.mkDerivation {
-    name = drvName;
+    name = "${drvName}-unwrapped";
 
     src = fetchurl {
       url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.tar.gz";
@@ -133,7 +133,7 @@ let
     multiPkgs = pkgs: [ pkgs.ncurses5 ];
   };
 in runCommand
-  "${drvName}-wrapper"
+  drvName
   {
     startScript = ''
       #!${bash}/bin/bash

From 861224ab5c3762965895f4cc32dc442645490b79 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Fri, 6 Sep 2019 21:20:40 +0200
Subject: [PATCH 77/92] androidStudioPackages.{dev,canary}: 3.6.0.9 -> 3.6.0.10

---
 pkgs/applications/editors/android-studio/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 9f7997860c6..282e2c93226 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -14,9 +14,9 @@ let
   };
   betaVersion = stableVersion;
   latestVersion = { # canary & dev
-    version = "3.6.0.9"; # "Android Studio 3.6 Canary 9"
-    build = "192.5830636";
-    sha256Hash = "0c9zmxf2scsf9pygcbabzngl7cdyjgpir5pggjaj535ni0nsrr7p";
+    version = "3.6.0.10"; # "Android Studio 3.6 Canary 10"
+    build = "192.5842447";
+    sha256Hash = "0qyvqm0ihp6czx77skia87qnz87wrsp1a6la04dr4b0xln2c8m5b";
   };
 in rec {
   # Attributes are named by their corresponding release channels

From b75f9a5f6de557e1035ece624909569a3c1b6d34 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Fri, 6 Sep 2019 21:44:55 +0200
Subject: [PATCH 78/92] pythonInterpreters.pypy*prebuilt: use openssl 1.0

---
 pkgs/development/interpreters/python/pypy/prebuilt.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/interpreters/python/pypy/prebuilt.nix b/pkgs/development/interpreters/python/pypy/prebuilt.nix
index af933f0a4bd..ca37c65c794 100644
--- a/pkgs/development/interpreters/python/pypy/prebuilt.nix
+++ b/pkgs/development/interpreters/python/pypy/prebuilt.nix
@@ -6,7 +6,7 @@
 # Dependencies
 , bzip2
 , zlib
-, openssl
+, openssl_1_0_2
 , expat
 , libffi
 , ncurses
@@ -44,7 +44,7 @@ let
   deps = [
     bzip2
     zlib
-    openssl
+    openssl_1_0_2
     expat
     libffi
     ncurses

From 4de4d2e57a07a16d1e90275661aa3f5bb0398ebc Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Fri, 6 Sep 2019 21:13:38 +0200
Subject: [PATCH 79/92] tdesktop: 1.8.2 -> 1.8.4

I didn't include the additional sed patching from Arch [0] as the build
ran fine without it and I didn't notice any issues at runtime.
The fixes for "ranges::sized_iterator_range" might only be required on
Arch due to other library versions.

[0]: https://git.archlinux.org/svntogit/community.git/commit/trunk?h=packages/telegram-desktop&id=4c2b019d7f3d7f399ffa3d94cf6eaddfe9972792
---
 .../instant-messengers/telegram/tdesktop/default.nix          | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 3d88e50221d..020fdb2fb2c 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -8,7 +8,7 @@ with lib;
 
 mkDerivation rec {
   pname = "telegram-desktop";
-  version = "1.8.2";
+  version = "1.8.4";
   # Note: Due to our strong dependency on the Arch patches it's probably best
   # to also wait for the Arch update (especially if the patches don't apply).
 
@@ -17,7 +17,7 @@ mkDerivation rec {
     owner = "telegramdesktop";
     repo = "tdesktop";
     rev = "v${version}";
-    sha256 = "0dls6s8721zjm8351fcgfbsifr9d7wsxbf5dra5cbk8r555ibf3j";
+    sha256 = "1q6y05kb6jjarb690qq28fqkv6kfkxdmfx0va1qi7aqxlhd5rvyl";
     fetchSubmodules = true;
   };
 

From 175827f1edb74a197c85a00336f8f52fdf697f60 Mon Sep 17 00:00:00 2001
From: Ivan Kozik <ivan@ludios.org>
Date: Tue, 25 Dec 2018 10:28:34 +0000
Subject: [PATCH 80/92] pyflame: use pytest -v to see which tests are skipped

---
 pkgs/development/tools/profiling/pyflame/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/tools/profiling/pyflame/default.nix b/pkgs/development/tools/profiling/pyflame/default.nix
index acb5d9d943c..58f8553197f 100644
--- a/pkgs/development/tools/profiling/pyflame/default.nix
+++ b/pkgs/development/tools/profiling/pyflame/default.nix
@@ -94,7 +94,7 @@ stdenv.mkDerivation rec {
       PYMAJORVERSION=${lib.substring 0 1 python.version} \
         PATH=${lib.makeBinPath [ coreutils ]}\
         PYTHONPATH= \
-        ${python.pkgs.pytest}/bin/pytest tests/
+        ${python.pkgs.pytest}/bin/pytest -v tests/
       set +x
     '') (lib.filter (x: x != null) buildInputs);
 

From 96a099adb63b3bc7fcfe7de51649c5984a8e978b Mon Sep 17 00:00:00 2001
From: Ivan Kozik <ivan@ludios.org>
Date: Tue, 25 Dec 2018 11:05:01 +0000
Subject: [PATCH 81/92] pyflame: fix the build on machines with
 kernel.yama.ptrace_scope > 0

---
 .../tools/profiling/pyflame/default.nix       | 31 +++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/tools/profiling/pyflame/default.nix b/pkgs/development/tools/profiling/pyflame/default.nix
index 58f8553197f..2467769ad3d 100644
--- a/pkgs/development/tools/profiling/pyflame/default.nix
+++ b/pkgs/development/tools/profiling/pyflame/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, autoreconfHook, coreutils, fetchFromGitHub, fetchpatch, pkgconfig
+{ stdenv, autoreconfHook, coreutils, fetchFromGitHub, fetchpatch, pkgconfig, procps
 # pyflame needs one python version per ABI
 # are currently supported
 # * 2.6 or 2.7 for 2.x ABI
@@ -67,11 +67,12 @@ stdenv.mkDerivation rec {
     full-ptrace-seize-errors
   ];
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig procps ];
   buildInputs = [ python37 python36 python2 python35 ];
 
   postPatch = ''
     patchShebangs .
+
     # some tests will fail in the sandbox
     substituteInPlace tests/test_end_to_end.py \
       --replace 'skipif(IS_DOCKER' 'skipif(True'
@@ -79,6 +80,32 @@ stdenv.mkDerivation rec {
     # don't use patchShebangs here to be explicit about the python version
     substituteInPlace utils/flame-chart-json \
       --replace '#!usr/bin/env python' '#!${python3.interpreter}'
+
+    # Many tests require the build machine to have kernel.yama.ptrace_scope = 0,
+    # but hardened machines have it set to 1. On build machines that cannot run
+    # these tests, skip them to avoid breaking the build.
+    if [[ $(sysctl -n kernel.yama.ptrace_scope || echo 0) != "0" ]]; then
+      for test in \
+        test_monitor \
+        test_non_gil \
+        test_threaded \
+        test_unthreaded \
+        test_legacy_pid_handling \
+        test_exclude_idle \
+        test_exit_early \
+        test_sample_not_python \
+        test_include_ts \
+        test_include_ts_exclude_idle \
+        test_thread_dump \
+        test_no_line_numbers \
+        test_utf8_output; do
+
+        substituteInPlace tests/test_end_to_end.py \
+          --replace "def $test(" "\
+@pytest.mark.skip('build machine had kernel.yama.ptrace_scope != 0')
+def $test("
+      done
+    fi
   '';
 
   postInstall = ''

From 2b53a914672b94b9b072086432f621459882fa3b Mon Sep 17 00:00:00 2001
From: xrelkd <46590321+xrelkd@users.noreply.github.com>
Date: Sat, 7 Sep 2019 00:29:26 +0800
Subject: [PATCH 82/92] eksctl: 0.5.1 -> 0.5.2

---
 pkgs/tools/admin/eksctl/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/admin/eksctl/default.nix b/pkgs/tools/admin/eksctl/default.nix
index 71573356ee8..25330658653 100644
--- a/pkgs/tools/admin/eksctl/default.nix
+++ b/pkgs/tools/admin/eksctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    sha256 = "0lfg7im43bslbg23xajdh0nhy4lj3y70gncxgqzfklb1ax0953r2";
+    sha256 = "1aw69kcb2wx832hdfbx0944wwvdn5jbpr164pv6z0bxqzc0yi2kv";
   };
 
   modSha256 = "0c8hbb73w1922qh895lsk0m9i7lk9kzrvxjc4crwsfpn9pv0qgd3";

From 573aa63fa6b9813d5eb9e8aed4b3991b9c604c2d Mon Sep 17 00:00:00 2001
From: Sascha Grunert <sgrunert@suse.com>
Date: Thu, 5 Sep 2019 17:31:28 +0200
Subject: [PATCH 83/92] cri-o: 1.15.0 -> 1.15.1

Signed-off-by: Sascha Grunert <sgrunert@suse.com>
---
 pkgs/applications/virtualization/cri-o/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index 8070e1423fe..0d2d0278cc3 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -17,7 +17,7 @@
 
 buildGoPackage rec {
   project = "cri-o";
-  version = "1.15.0";
+  version = "1.15.1";
   name = "${project}-${version}${flavor}";
 
   goPackagePath = "github.com/${project}/${project}";
@@ -26,7 +26,7 @@ buildGoPackage rec {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "08m84rlar25w6dwv76rab4vdlavacn7kb5ravzqnb8ngx68csbp3";
+    sha256 = "0yjj03qwwb6g05pzavimgj14p6805m3w8qqpl4fp4fpmbrsx4sb0";
   };
 
   outputs = [ "bin" "out" ];

From 76daad86a7910b4ff1dd4cb3b3a3441b4f50295e Mon Sep 17 00:00:00 2001
From: scaroo <scaroo@gmail.com>
Date: Thu, 5 Sep 2019 16:27:17 +0200
Subject: [PATCH 84/92] hugo: 0.57.2 -> 0.58.0

Release notes: https://gohugo.io/news/0.58.0-relnotes/
---
 pkgs/applications/misc/hugo/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 034b9c79201..720445be9be 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.57.2";
+  version = "0.58.0";
 
   goPackagePath = "github.com/gohugoio/hugo";
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner  = "gohugoio";
     repo   = "hugo";
     rev    = "v${version}";
-    sha256 = "1cqvm2fj6hh2n9iv67vamhn23fbxmmwciks0r4h4y0hapzlzpyd8";
+    sha256 = "0971li0777c1s67w72wl1y0b58ky93dw05hbk3s4kqys0acanc2d";
   };
 
-  modSha256 = "09r7r1s5b2fvnzpzjarpv2lnvp6bxdfschiq6352hw631n7kkyz1";
+  modSha256 = "14ylbh2hx14swcqvawprbx5gynkwyb0nlp5acr4fjy1zl0ifc790";
 
   buildFlags = "-tags extended";
 

From 94bedffbdf75fc01095005e8d1a91d6faddb1f1a Mon Sep 17 00:00:00 2001
From: Edmund Wu <fangkazuto@gmail.com>
Date: Thu, 5 Sep 2019 08:06:57 -0400
Subject: [PATCH 85/92] vscode-extensions.ms-vscode.cpptools: 0.25.0 -> 0.25.1

---
 pkgs/misc/vscode-extensions/cpptools/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/misc/vscode-extensions/cpptools/default.nix b/pkgs/misc/vscode-extensions/cpptools/default.nix
index 73b533f368e..bd9eeae9281 100644
--- a/pkgs/misc/vscode-extensions/cpptools/default.nix
+++ b/pkgs/misc/vscode-extensions/cpptools/default.nix
@@ -83,8 +83,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "cpptools";
     publisher = "ms-vscode";
-    version = "0.25.0";
-    sha256 = "0vqqc0j9ahhb9a8wrhjjb34rfdj7msqsza3443bi4206gkiwpp3n";
+    version = "0.25.1";
+    sha256 = "1i66m6l4q8vkygn24v5s06kxaxm9gdd8y75fjyzz189pnmijj1as";
   };
 
   buildInputs = [

From 0f52e11c404260832e6eeb3cf3b3bc9481f9cd7f Mon Sep 17 00:00:00 2001
From: Vlad Artamonov <742047+vladdy@users.noreply.github.com>
Date: Thu, 5 Sep 2019 13:38:07 -0400
Subject: [PATCH 86/92] cockroachdb: 1.19.1 -> 1.19.4

---
 pkgs/servers/sql/cockroachdb/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/servers/sql/cockroachdb/default.nix b/pkgs/servers/sql/cockroachdb/default.nix
index a34b7f03be8..ba395c5e7f6 100644
--- a/pkgs/servers/sql/cockroachdb/default.nix
+++ b/pkgs/servers/sql/cockroachdb/default.nix
@@ -13,13 +13,13 @@ let
 in
 buildGoPackage rec {
   pname = "cockroach";
-  version = "19.1.1";
+  version = "19.1.4";
 
   goPackagePath = "github.com/cockroachdb/cockroach";
 
   src = fetchurl {
     url = "https://binaries.cockroachdb.com/cockroach-v${version}.src.tgz";
-    sha256 = "1vbz5j0y9ri8c99k8fc5rnwigay478p1mac5g402639ilkqd41fc";
+    sha256 = "1bqzs844ildvyh4332vapsqhfkwcvjmgkkmn3i8ndd89q5yic6fq";
   };
 
   inherit nativeBuildInputs buildInputs;

From 283d9a09427e8a13111a943409f6963b983c9f7f Mon Sep 17 00:00:00 2001
From: WilliButz <wbutz@cyberfnord.de>
Date: Fri, 6 Sep 2019 21:33:32 +0200
Subject: [PATCH 87/92] prometheus: remove prometheus_1, rename prometheus_2

As prometheus is no longer developed, nixpkgs now only includes
prometheus 2. Having only one version of prometheus, there is no need
for having the version in the attribute name.
---
 .../servers/monitoring/prometheus/default.nix | 84 +++++++++----------
 pkgs/top-level/all-packages.nix               |  7 +-
 2 files changed, 39 insertions(+), 52 deletions(-)

diff --git a/pkgs/servers/monitoring/prometheus/default.nix b/pkgs/servers/monitoring/prometheus/default.nix
index 627186e47ac..e55d0018b88 100644
--- a/pkgs/servers/monitoring/prometheus/default.nix
+++ b/pkgs/servers/monitoring/prometheus/default.nix
@@ -1,54 +1,46 @@
-{ stdenv, go, buildGoPackage, fetchFromGitHub }:
+{ lib, go, buildGoPackage, fetchFromGitHub }:
 
 let
   goPackagePath = "github.com/prometheus/prometheus";
-in rec {
-  buildPrometheus = { version, sha256, doCheck ? true, ... }@attrs:
-    let attrs' = builtins.removeAttrs attrs ["version" "sha256"]; in
-      buildGoPackage ({
-        name = "prometheus-${version}";
+in
+buildGoPackage rec {
+  pname = "prometheus";
+  version = "2.12.0";
 
-        inherit goPackagePath;
+  inherit goPackagePath;
 
-        src = fetchFromGitHub {
-          rev = "v${version}";
-          owner = "prometheus";
-          repo = "prometheus";
-          inherit sha256;
-        };
-
-        buildFlagsArray = let t = "${goPackagePath}/vendor/github.com/prometheus/common/version"; in ''
-          -ldflags=
-             -X ${t}.Version=${version}
-             -X ${t}.Revision=unknown
-             -X ${t}.Branch=unknown
-             -X ${t}.BuildUser=nix@nixpkgs
-             -X ${t}.BuildDate=unknown
-             -X ${t}.GoVersion=${stdenv.lib.getVersion go}
-        '';
-
-        preInstall = ''
-          mkdir -p "$bin/share/doc/prometheus" "$bin/etc/prometheus"
-          cp -a $src/documentation/* $bin/share/doc/prometheus
-          cp -a $src/console_libraries $src/consoles $bin/etc/prometheus
-        '';
-
-        meta = with stdenv.lib; {
-          description = "Service monitoring system and time series database";
-          homepage = https://prometheus.io;
-          license = licenses.asl20;
-          maintainers = with maintainers; [ benley fpletz globin ];
-          platforms = platforms.unix;
-        };
-    } // attrs');
-
-  prometheus_1 = buildPrometheus {
-    version = "1.8.2";
-    sha256 = "088flpg3qgnj9afl9vbaa19v2s1d21yxy38nrlv5m7cxwy2pi5pv";
-  };
-
-  prometheus_2 = buildPrometheus {
-    version = "2.12.0";
+  src = fetchFromGitHub {
+    rev = "v${version}";
+    owner = "prometheus";
+    repo = "prometheus";
     sha256 = "1ci9dc512c1hry1b8jqif0mrnks6w3yagwm3jf69ihcwilr2n7vs";
   };
+
+  buildFlagsArray = let
+    t = "${goPackagePath}/vendor/github.com/prometheus/common/version";
+  in ''
+    -ldflags=
+       -X ${t}.Version=${version}
+       -X ${t}.Revision=unknown
+       -X ${t}.Branch=unknown
+       -X ${t}.BuildUser=nix@nixpkgs
+       -X ${t}.BuildDate=unknown
+       -X ${t}.GoVersion=${lib.getVersion go}
+  '';
+
+  preInstall = ''
+    mkdir -p "$bin/share/doc/prometheus" "$bin/etc/prometheus"
+    cp -a $src/documentation/* $bin/share/doc/prometheus
+    cp -a $src/console_libraries $src/consoles $bin/etc/prometheus
+  '';
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Service monitoring system and time series database";
+    homepage = "https://prometheus.io";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ benley fpletz globin willibutz ];
+    platforms = platforms.unix;
+  };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index add9353551a..106080ae519 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15014,13 +15014,8 @@ in
 
   postgresql_jdbc = callPackage ../development/java-modules/postgresql_jdbc { };
 
-  inherit (callPackage ../servers/monitoring/prometheus { }) prometheus_1;
-
-  inherit (callPackage ../servers/monitoring/prometheus { })
-    prometheus_2;
-
   prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { };
-  prometheus = prometheus_1;
+  prometheus = callPackage ../servers/monitoring/prometheus { };
   prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { };
   prometheus-aws-s3-exporter = callPackage ../servers/monitoring/prometheus/aws-s3-exporter.nix { };
   prometheus-bind-exporter = callPackage ../servers/monitoring/prometheus/bind-exporter.nix { };

From bb620662253c58ad39d1db268168f048e8dab3fc Mon Sep 17 00:00:00 2001
From: WilliButz <wbutz@cyberfnord.de>
Date: Fri, 6 Sep 2019 21:40:27 +0200
Subject: [PATCH 88/92] nixos/prometheus: remove prometheus1 module, rename
 prometheus2

Prometheus 1 is no longer supported, instead 'services.prometheus'
now configures the Prometheus 2 service.
---
 nixos/doc/manual/release-notes/rl-1909.xml    |   9 +-
 nixos/modules/rename.nix                      |   3 +-
 .../monitoring/prometheus/default.nix         | 544 +++++-------------
 nixos/modules/services/monitoring/thanos.nix  |  16 +-
 4 files changed, 173 insertions(+), 399 deletions(-)

diff --git a/nixos/doc/manual/release-notes/rl-1909.xml b/nixos/doc/manual/release-notes/rl-1909.xml
index e38dd8b1285..ee3b0358152 100644
--- a/nixos/doc/manual/release-notes/rl-1909.xml
+++ b/nixos/doc/manual/release-notes/rl-1909.xml
@@ -464,7 +464,14 @@
      <literal>packetbeat5</literal>) of the ELK-stack and Elastic beats have been removed.
     </para>
    </listitem>
-
+   <listitem>
+    <para>
+     For NixOS 19.03, both Prometheus 1 and 2 were available to allow for
+     a seamless transition from version 1 to 2 with existing setups.
+     Because Prometheus 1 is no longer developed, it was removed.
+     Prometheus 2 is now configured with <literal>services.prometheus</literal>.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 1fa91f05030..d1303f90ad8 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -52,10 +52,11 @@ with lib;
     (mkRemovedOptionModule [ "services" "misc" "nzbget" "openFirewall" ] "The port used by nzbget is managed through the web interface so you should adjust your firewall rules accordingly.")
     (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "user" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a user setting.")
     (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "group" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a group setting.")
-    (mkRemovedOptionModule [ "services" "prometheus2" "alertmanagerURL" ] ''
+    (mkRemovedOptionModule [ "services" "prometheus" "alertmanagerURL" ] ''
       Due to incompatibility, the alertmanagerURL option has been removed,
       please use 'services.prometheus2.alertmanagers' instead.
     '')
+    (mkRenamedOptionModule [ "services" "prometheus2" ] [ "services" "prometheus" ])
     (mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
     (mkRenamedOptionModule [ "services" "vmwareGuest" ] [ "virtualisation" "vmware" "guest" ])
     (mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index 647d67533b8..191c0bff9c8 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -4,37 +4,14 @@ with lib;
 
 let
   cfg = config.services.prometheus;
-  cfg2 = config.services.prometheus2;
-  promUser = "prometheus";
-  promGroup = "prometheus";
 
-  stateDir =
-    if cfg.stateDir != null
-    then cfg.stateDir
-    else
-      if cfg.dataDir != null
-      then
-        # This assumes /var/lib/ is a prefix of cfg.dataDir.
-        # This is checked as an assertion below.
-        removePrefix stateDirBase cfg.dataDir
-      else "prometheus";
-  stateDirBase = "/var/lib/";
-  workingDir  = stateDirBase + stateDir;
-  workingDir2 = stateDirBase + cfg2.stateDir;
+  workingDir = "/var/lib/" + cfg.stateDir;
 
   # a wrapper that verifies that the configuration is valid
-  promtoolCheck = what: name: file: pkgs.runCommand "${name}-${what}-checked"
-    { buildInputs = [ cfg.package ]; } ''
-    ln -s ${file} $out
-    promtool ${what} $out
-  '';
-
-  # a wrapper that verifies that the configuration is valid for
-  # prometheus 2
-  prom2toolCheck = what: name: file:
+  promtoolCheck = what: name: file:
     pkgs.runCommand
       "${name}-${replaceStrings [" "] [""] what}-checked"
-      { buildInputs = [ cfg2.package ]; } ''
+      { buildInputs = [ cfg.package ]; } ''
     ln -s ${file} $out
     promtool ${what} $out
   '';
@@ -45,61 +22,34 @@ let
       echo '${builtins.toJSON x}' | ${pkgs.jq}/bin/jq . > $out
     '';
 
-  # This becomes the main config file for Prometheus 1
+  generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
+
+  # This becomes the main config file for Prometheus
   promConfig = {
     global = filterValidPrometheus cfg.globalConfig;
-    rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [
+    rule_files = map (promtoolCheck "check rules" "rules") (cfg.ruleFiles ++ [
       (pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
     ]);
     scrape_configs = filterValidPrometheus cfg.scrapeConfigs;
+    alerting = {
+      inherit (cfg) alertmanagers;
+    };
   };
 
-  generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
-
   prometheusYml = let
     yml = if cfg.configText != null then
       pkgs.writeText "prometheus.yml" cfg.configText
       else generatedPrometheusYml;
-    in promtoolCheck "check-config" "prometheus.yml" yml;
+    in promtoolCheck "check config" "prometheus.yml" yml;
 
   cmdlineArgs = cfg.extraFlags ++ [
-    "-storage.local.path=${workingDir}/metrics"
-    "-config.file=${prometheusYml}"
-    "-web.listen-address=${cfg.listenAddress}"
-    "-alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
-    "-alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
+    "--storage.tsdb.path=${workingDir}/data/"
+    "--config.file=${prometheusYml}"
+    "--web.listen-address=${cfg.listenAddress}"
+    "--alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
+    "--alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
   ] ++
-  optional (cfg.alertmanagerURL != []) "-alertmanager.url=${concatStringsSep "," cfg.alertmanagerURL}" ++
-  optional (cfg.webExternalUrl != null) "-web.external-url=${cfg.webExternalUrl}";
-
-  # This becomes the main config file for Prometheus 2
-  promConfig2 = {
-    global = filterValidPrometheus cfg2.globalConfig;
-    rule_files = map (prom2toolCheck "check rules" "rules") (cfg2.ruleFiles ++ [
-      (pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg2.rules))
-    ]);
-    scrape_configs = filterValidPrometheus cfg2.scrapeConfigs;
-    alerting = {
-      inherit (cfg2) alertmanagers;
-    };
-  };
-
-  generatedPrometheus2Yml = writePrettyJSON "prometheus.yml" promConfig2;
-
-  prometheus2Yml = let
-    yml = if cfg2.configText != null then
-      pkgs.writeText "prometheus.yml" cfg2.configText
-      else generatedPrometheus2Yml;
-    in prom2toolCheck "check config" "prometheus.yml" yml;
-
-  cmdlineArgs2 = cfg2.extraFlags ++ [
-    "--storage.tsdb.path=${workingDir2}/data/"
-    "--config.file=${prometheus2Yml}"
-    "--web.listen-address=${cfg2.listenAddress}"
-    "--alertmanager.notification-queue-capacity=${toString cfg2.alertmanagerNotificationQueueCapacity}"
-    "--alertmanager.timeout=${toString cfg2.alertmanagerTimeout}s"
-  ] ++
-  optional (cfg2.webExternalUrl != null) "--web.external-url=${cfg2.webExternalUrl}";
+  optional (cfg.webExternalUrl != null) "--web.external-url=${cfg.webExternalUrl}";
 
   filterValidPrometheus = filterAttrsListRecursive (n: v: !(n == "_module" || v == null));
   filterAttrsListRecursive = pred: x:
@@ -514,343 +464,159 @@ let
   };
 
 in {
-  options = {
-    services.prometheus = {
+  options.services.prometheus = {
 
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Enable the Prometheus monitoring daemon.
-        '';
-      };
+    enable = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Enable the Prometheus monitoring daemon.
+      '';
+    };
 
-      package = mkOption {
-        type = types.package;
-        default = pkgs.prometheus;
-        defaultText = "pkgs.prometheus";
-        description = ''
-          The prometheus package that should be used.
-        '';
-      };
+    package = mkOption {
+      type = types.package;
+      default = pkgs.prometheus;
+      defaultText = "pkgs.prometheus";
+      description = ''
+        The prometheus package that should be used.
+      '';
+    };
 
-      listenAddress = mkOption {
-        type = types.str;
-        default = "0.0.0.0:9090";
-        description = ''
-          Address to listen on for the web interface, API, and telemetry.
-        '';
-      };
+    listenAddress = mkOption {
+      type = types.str;
+      default = "0.0.0.0:9090";
+      description = ''
+        Address to listen on for the web interface, API, and telemetry.
+      '';
+    };
 
-      dataDir = mkOption {
-        type = types.nullOr types.path;
-        default = null;
-        description = ''
-          Directory to store Prometheus metrics data.
-          This option is deprecated, please use <option>services.prometheus.stateDir</option>.
-        '';
-      };
+    stateDir = mkOption {
+      type = types.str;
+      default = "prometheus2";
+      description = ''
+        Directory below <literal>/var/lib</literal> to store Prometheus metrics data.
+        This directory will be created automatically using systemd's StateDirectory mechanism.
+      '';
+    };
 
-      stateDir = mkOption {
-        type = types.nullOr types.str;
-        default = null;
-        description = ''
-          Directory below <literal>${stateDirBase}</literal> to store Prometheus metrics data.
-          This directory will be created automatically using systemd's StateDirectory mechanism.
-          Defaults to <literal>prometheus</literal>.
-        '';
-      };
+    extraFlags = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      description = ''
+        Extra commandline options when launching Prometheus.
+      '';
+    };
 
-      extraFlags = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Extra commandline options when launching Prometheus.
-        '';
-      };
+    configText = mkOption {
+      type = types.nullOr types.lines;
+      default = null;
+      description = ''
+        If non-null, this option defines the text that is written to
+        prometheus.yml. If null, the contents of prometheus.yml is generated
+        from the structured config options.
+      '';
+    };
 
-      configText = mkOption {
-        type = types.nullOr types.lines;
-        default = null;
-        description = ''
-          If non-null, this option defines the text that is written to
-          prometheus.yml. If null, the contents of prometheus.yml is generated
-          from the structured config options.
-        '';
-      };
+    globalConfig = mkOption {
+      type = promTypes.globalConfig;
+      default = {};
+      description = ''
+        Parameters that are valid in all  configuration contexts. They
+        also serve as defaults for other configuration sections
+      '';
+    };
 
-      globalConfig = mkOption {
-        type = promTypes.globalConfig;
-        default = {};
-        description = ''
-          Parameters that are valid in all  configuration contexts. They
-          also serve as defaults for other configuration sections
-        '';
-      };
+    rules = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      description = ''
+        Alerting and/or Recording rules to evaluate at runtime.
+      '';
+    };
 
-      rules = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Alerting and/or Recording rules to evaluate at runtime.
-        '';
-      };
+    ruleFiles = mkOption {
+      type = types.listOf types.path;
+      default = [];
+      description = ''
+        Any additional rules files to include in this configuration.
+      '';
+    };
 
-      ruleFiles = mkOption {
-        type = types.listOf types.path;
-        default = [];
-        description = ''
-          Any additional rules files to include in this configuration.
-        '';
-      };
+    scrapeConfigs = mkOption {
+      type = types.listOf promTypes.scrape_config;
+      default = [];
+      description = ''
+        A list of scrape configurations.
+      '';
+    };
 
-      scrapeConfigs = mkOption {
-        type = types.listOf promTypes.scrape_config;
-        default = [];
-        description = ''
-          A list of scrape configurations.
-        '';
-      };
+    alertmanagers = mkOption {
+      type = types.listOf types.attrs;
+      example = literalExample ''
+        [ {
+          scheme = "https";
+          path_prefix = "/alertmanager";
+          static_configs = [ {
+            targets = [
+              "prometheus.domain.tld"
+            ];
+          } ];
+        } ]
+      '';
+      default = [];
+      description = ''
+        A list of alertmanagers to send alerts to.
+        See <link xlink:href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config">the official documentation</link> for more information.
+      '';
+    };
 
-      alertmanagerURL = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          List of Alertmanager URLs to send notifications to.
-        '';
-      };
+    alertmanagerNotificationQueueCapacity = mkOption {
+      type = types.int;
+      default = 10000;
+      description = ''
+        The capacity of the queue for pending alert manager notifications.
+      '';
+    };
 
-      alertmanagerNotificationQueueCapacity = mkOption {
-        type = types.int;
-        default = 10000;
-        description = ''
-          The capacity of the queue for pending alert manager notifications.
-        '';
-      };
+    alertmanagerTimeout = mkOption {
+      type = types.int;
+      default = 10;
+      description = ''
+        Alert manager HTTP API timeout (in seconds).
+      '';
+    };
 
-      alertmanagerTimeout = mkOption {
-        type = types.int;
-        default = 10;
-        description = ''
-          Alert manager HTTP API timeout (in seconds).
-        '';
-      };
+    webExternalUrl = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      example = "https://example.com/";
+      description = ''
+        The URL under which Prometheus is externally reachable (for example,
+        if Prometheus is served via a reverse proxy).
+      '';
+    };
+  };
 
-      webExternalUrl = mkOption {
-        type = types.nullOr types.str;
-        default = null;
-        example = "https://example.com/";
-        description = ''
-          The URL under which Prometheus is externally reachable (for example,
-          if Prometheus is served via a reverse proxy).
-        '';
+  config = mkIf cfg.enable {
+    users.groups.prometheus.gid = config.ids.gids.prometheus;
+    users.users.prometheus = {
+      description = "Prometheus daemon user";
+      uid = config.ids.uids.prometheus;
+      group = "prometheus";
+    };
+    systemd.services.prometheus = {
+      wantedBy = [ "multi-user.target" ];
+      after    = [ "network.target" ];
+      serviceConfig = {
+        ExecStart = "${cfg.package}/bin/prometheus" +
+          optionalString (length cmdlineArgs != 0) (" \\\n  " +
+            concatStringsSep " \\\n  " cmdlineArgs);
+        User = "prometheus";
+        Restart  = "always";
+        WorkingDirectory = workingDir;
+        StateDirectory = cfg.stateDir;
       };
     };
-    services.prometheus2 = {
-
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Enable the Prometheus 2 monitoring daemon.
-        '';
-      };
-
-      package = mkOption {
-        type = types.package;
-        default = pkgs.prometheus_2;
-        defaultText = "pkgs.prometheus_2";
-        description = ''
-          The prometheus2 package that should be used.
-        '';
-      };
-
-      listenAddress = mkOption {
-        type = types.str;
-        default = "0.0.0.0:9090";
-        description = ''
-          Address to listen on for the web interface, API, and telemetry.
-        '';
-      };
-
-      stateDir = mkOption {
-        type = types.str;
-        default = "prometheus2";
-        description = ''
-          Directory below <literal>${stateDirBase}</literal> to store Prometheus metrics data.
-          This directory will be created automatically using systemd's StateDirectory mechanism.
-          Defaults to <literal>prometheus2</literal>.
-        '';
-      };
-
-      extraFlags = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Extra commandline options when launching Prometheus 2.
-        '';
-      };
-
-      configText = mkOption {
-        type = types.nullOr types.lines;
-        default = null;
-        description = ''
-          If non-null, this option defines the text that is written to
-          prometheus.yml. If null, the contents of prometheus.yml is generated
-          from the structured config options.
-        '';
-      };
-
-      globalConfig = mkOption {
-        type = promTypes.globalConfig;
-        default = {};
-        description = ''
-          Parameters that are valid in all  configuration contexts. They
-          also serve as defaults for other configuration sections
-        '';
-      };
-
-      rules = mkOption {
-        type = types.listOf types.str;
-        default = [];
-        description = ''
-          Alerting and/or Recording rules to evaluate at runtime.
-        '';
-      };
-
-      ruleFiles = mkOption {
-        type = types.listOf types.path;
-        default = [];
-        description = ''
-          Any additional rules files to include in this configuration.
-        '';
-      };
-
-      scrapeConfigs = mkOption {
-        type = types.listOf promTypes.scrape_config;
-        default = [];
-        description = ''
-          A list of scrape configurations.
-        '';
-      };
-
-      alertmanagers = mkOption {
-        type = types.listOf types.attrs;
-        example = literalExample ''
-          [ {
-            scheme = "https";
-            path_prefix = "/alertmanager";
-            static_configs = [ {
-              targets = [
-                "prometheus.domain.tld"
-              ];
-            } ];
-          } ]
-        '';
-        default = [];
-        description = ''
-          A list of alertmanagers to send alerts to.
-          See <link xlink:href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config">the official documentation</link> for more information.
-        '';
-      };
-
-      alertmanagerNotificationQueueCapacity = mkOption {
-        type = types.int;
-        default = 10000;
-        description = ''
-          The capacity of the queue for pending alert manager notifications.
-        '';
-      };
-
-      alertmanagerTimeout = mkOption {
-        type = types.int;
-        default = 10;
-        description = ''
-          Alert manager HTTP API timeout (in seconds).
-        '';
-      };
-
-      webExternalUrl = mkOption {
-        type = types.nullOr types.str;
-        default = null;
-        example = "https://example.com/";
-        description = ''
-          The URL under which Prometheus is externally reachable (for example,
-          if Prometheus is served via a reverse proxy).
-        '';
-      };
-    };
-   };
-
-  config = mkMerge [
-    (mkIf (cfg.enable || cfg2.enable) {
-      users.groups.${promGroup}.gid = config.ids.gids.prometheus;
-      users.users.${promUser} = {
-        description = "Prometheus daemon user";
-        uid = config.ids.uids.prometheus;
-        group = promGroup;
-      };
-    })
-    (mkIf cfg.enable {
-      warnings =
-        optional (cfg.dataDir != null) ''
-          The option services.prometheus.dataDir is deprecated, please use
-          services.prometheus.stateDir.
-        '';
-      assertions = [
-        {
-          assertion = !(cfg.dataDir != null && cfg.stateDir != null);
-          message =
-            "The options services.prometheus.dataDir and services.prometheus.stateDir" +
-            " can't both be set at the same time! It's recommended to only set the latter" +
-            " since the former is deprecated.";
-        }
-        {
-          assertion = cfg.dataDir != null -> hasPrefix stateDirBase cfg.dataDir;
-          message =
-            "The option services.prometheus.dataDir should have ${stateDirBase} as a prefix!";
-        }
-        {
-          assertion = cfg.stateDir != null -> !hasPrefix "/" cfg.stateDir;
-          message =
-            "The option services.prometheus.stateDir shouldn't be an absolute directory." +
-            " It should be a directory relative to ${stateDirBase}.";
-        }
-        {
-          assertion = cfg2.stateDir != null -> !hasPrefix "/" cfg2.stateDir;
-          message =
-            "The option services.prometheus2.stateDir shouldn't be an absolute directory." +
-            " It should be a directory relative to ${stateDirBase}.";
-        }
-      ];
-      systemd.services.prometheus = {
-        wantedBy = [ "multi-user.target" ];
-        after    = [ "network.target" ];
-        serviceConfig = {
-          ExecStart = "${cfg.package}/bin/prometheus" +
-            optionalString (length cmdlineArgs != 0) (" \\\n  " +
-              concatStringsSep " \\\n  " cmdlineArgs);
-          User = promUser;
-          Restart  = "always";
-          WorkingDirectory = workingDir;
-          StateDirectory = stateDir;
-        };
-      };
-    })
-    (mkIf cfg2.enable {
-      systemd.services.prometheus2 = {
-        wantedBy = [ "multi-user.target" ];
-        after    = [ "network.target" ];
-        serviceConfig = {
-          ExecStart = "${cfg2.package}/bin/prometheus" +
-            optionalString (length cmdlineArgs2 != 0) (" \\\n  " +
-              concatStringsSep " \\\n  " cmdlineArgs2);
-          User = promUser;
-          Restart  = "always";
-          WorkingDirectory = workingDir2;
-          StateDirectory = cfg2.stateDir;
-        };
-      };
-    })
-  ];
+  };
 }
diff --git a/nixos/modules/services/monitoring/thanos.nix b/nixos/modules/services/monitoring/thanos.nix
index b41e99b7647..4659a0da414 100644
--- a/nixos/modules/services/monitoring/thanos.nix
+++ b/nixos/modules/services/monitoring/thanos.nix
@@ -218,8 +218,8 @@ let
         toArgs = optionToArgs;
         option = mkOption {
           type = types.str;
-          default = "/var/lib/${config.services.prometheus2.stateDir}/data";
-          defaultText = "/var/lib/\${config.services.prometheus2.stateDir}/data";
+          default = "/var/lib/${config.services.prometheus.stateDir}/data";
+          defaultText = "/var/lib/\${config.services.prometheus.stateDir}/data";
           description = ''
             Data directory of TSDB.
           '';
@@ -679,22 +679,22 @@ in {
     (mkIf cfg.sidecar.enable {
       assertions = [
         {
-          assertion = config.services.prometheus2.enable;
+          assertion = config.services.prometheus.enable;
           message =
-            "Please enable services.prometheus2 when enabling services.thanos.sidecar.";
+            "Please enable services.prometheus when enabling services.thanos.sidecar.";
         }
         {
-          assertion = !(config.services.prometheus2.globalConfig.external_labels == null ||
-                        config.services.prometheus2.globalConfig.external_labels == {});
+          assertion = !(config.services.prometheus.globalConfig.external_labels == null ||
+                        config.services.prometheus.globalConfig.external_labels == {});
           message =
             "services.thanos.sidecar requires uniquely identifying external labels " +
             "to be configured in the Prometheus server. " +
-            "Please set services.prometheus2.globalConfig.external_labels.";
+            "Please set services.prometheus.globalConfig.external_labels.";
         }
       ];
       systemd.services.thanos-sidecar = {
         wantedBy = [ "multi-user.target" ];
-        after    = [ "network.target" "prometheus2.service" ];
+        after    = [ "network.target" "prometheus.service" ];
         serviceConfig = {
           User = "prometheus";
           Restart = "always";

From 9118eb3482310b2f17799691eb638f61aca29fc7 Mon Sep 17 00:00:00 2001
From: WilliButz <wbutz@cyberfnord.de>
Date: Fri, 6 Sep 2019 21:37:04 +0200
Subject: [PATCH 89/92] nixos/tests: remove prometheus_1 test

---
 nixos/tests/all-tests.nix    |   1 -
 nixos/tests/prometheus-2.nix | 239 ------------------------------
 nixos/tests/prometheus.nix   | 271 +++++++++++++++++++++++++++++------
 3 files changed, 231 insertions(+), 280 deletions(-)
 delete mode 100644 nixos/tests/prometheus-2.nix

diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 8ee4dfbf13b..5eb8111aa6d 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -224,7 +224,6 @@ in
   predictable-interface-names = handleTest ./predictable-interface-names.nix {};
   printing = handleTest ./printing.nix {};
   prometheus = handleTest ./prometheus.nix {};
-  prometheus2 = handleTest ./prometheus-2.nix {};
   prometheus-exporters = handleTest ./prometheus-exporters.nix {};
   prosody = handleTest ./xmpp/prosody.nix {};
   prosodyMysql = handleTest ./xmpp/prosody-mysql.nix {};
diff --git a/nixos/tests/prometheus-2.nix b/nixos/tests/prometheus-2.nix
deleted file mode 100644
index 219c47c73d9..00000000000
--- a/nixos/tests/prometheus-2.nix
+++ /dev/null
@@ -1,239 +0,0 @@
-let
-  grpcPort   = 19090;
-  queryPort  =  9090;
-  minioPort  =  9000;
-  pushgwPort =  9091;
-
-  s3 = {
-    accessKey = "BKIKJAA5BMMU2RHO6IBB";
-    secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
-  };
-
-  objstore.config = {
-    type = "S3";
-    config = {
-      bucket = "thanos-bucket";
-      endpoint = "s3:${toString minioPort}";
-      region =  "us-east-1";
-      access_key = s3.accessKey;
-      secret_key = s3.secretKey;
-      insecure = true;
-      signature_version2 = false;
-      encrypt_sse =  false;
-      put_user_metadata = {};
-      http_config = {
-        idle_conn_timeout = "0s";
-        insecure_skip_verify = false;
-      };
-      trace = {
-        enable = false;
-      };
-    };
-  };
-
-in import ./make-test.nix {
-  name = "prometheus-2";
-
-  nodes = {
-    prometheus = { pkgs, ... }: {
-      virtualisation.diskSize = 2 * 1024;
-      environment.systemPackages = [ pkgs.jq ];
-      networking.firewall.allowedTCPPorts = [ grpcPort ];
-      services.prometheus2 = {
-        enable = true;
-        scrapeConfigs = [
-          {
-            job_name = "prometheus";
-            static_configs = [
-              {
-                targets = [ "127.0.0.1:${toString queryPort}" ];
-                labels = { instance = "localhost"; };
-              }
-            ];
-          }
-          {
-            job_name = "pushgateway";
-            scrape_interval = "1s";
-            static_configs = [
-              {
-                targets = [ "127.0.0.1:${toString pushgwPort}" ];
-              }
-            ];
-          }
-        ];
-        rules = [
-          ''
-            groups:
-              - name: test
-                rules:
-                  - record: testrule
-                    expr: count(up{job="prometheus"})
-          ''
-        ];
-        globalConfig = {
-          external_labels = {
-            some_label = "required by thanos";
-          };
-        };
-        extraFlags = [
-          # Required by thanos
-          "--storage.tsdb.min-block-duration=5s"
-          "--storage.tsdb.max-block-duration=5s"
-        ];
-      };
-      services.prometheus.pushgateway = {
-        enable = true;
-        web.listen-address = ":${toString pushgwPort}";
-        persistMetrics = true;
-        persistence.interval = "1s";
-        stateDir = "prometheus-pushgateway";
-      };
-      services.thanos = {
-        sidecar = {
-          enable = true;
-          grpc-address = "0.0.0.0:${toString grpcPort}";
-          inherit objstore;
-        };
-
-        # TODO: Add some tests for these services:
-        #rule = {
-        #  enable = true;
-        #  http-address = "0.0.0.0:19194";
-        #  grpc-address = "0.0.0.0:19193";
-        #  query.addresses = [
-        #    "localhost:19191"
-        #  ];
-        #  labels = {
-        #    just = "some";
-        #    nice = "labels";
-        #  };
-        #};
-        #
-        #receive = {
-        #  http-address = "0.0.0.0:19195";
-        #  enable = true;
-        #  labels = {
-        #    just = "some";
-        #    nice = "labels";
-        #  };
-        #};
-      };
-    };
-
-    query = { pkgs, ... }: {
-      environment.systemPackages = [ pkgs.jq ];
-      services.thanos.query = {
-        enable = true;
-        http-address = "0.0.0.0:${toString queryPort}";
-        store.addresses = [
-          "prometheus:${toString grpcPort}"
-        ];
-      };
-    };
-
-    store = { pkgs, ... }: {
-      virtualisation.diskSize = 2 * 1024;
-      environment.systemPackages = with pkgs; [ jq thanos ];
-      services.thanos.store = {
-        enable = true;
-        http-address = "0.0.0.0:10902";
-        grpc-address = "0.0.0.0:${toString grpcPort}";
-        inherit objstore;
-        sync-block-duration = "1s";
-      };
-      services.thanos.compact = {
-        enable = true;
-        http-address = "0.0.0.0:10903";
-        inherit objstore;
-        consistency-delay = "5s";
-      };
-      services.thanos.query = {
-        enable = true;
-        http-address = "0.0.0.0:${toString queryPort}";
-        store.addresses = [
-          "localhost:${toString grpcPort}"
-        ];
-      };
-    };
-
-    s3 = { pkgs, ... } : {
-      # Minio requires at least 1GiB of free disk space to run.
-      virtualisation.diskSize = 2 * 1024;
-      networking.firewall.allowedTCPPorts = [ minioPort ];
-
-      services.minio = {
-        enable = true;
-        inherit (s3) accessKey secretKey;
-      };
-
-      environment.systemPackages = [ pkgs.minio-client ];
-    };
-  };
-
-  testScript = { nodes, ... } : ''
-    # Before starting the other machines we first make sure that our S3 service is online
-    # and has a bucket added for thanos:
-    $s3->start;
-    $s3->waitForUnit("minio.service");
-    $s3->waitForOpenPort(${toString minioPort});
-    $s3->succeed(
-      "mc config host add minio " .
-      "http://localhost:${toString minioPort} ${s3.accessKey} ${s3.secretKey} S3v4");
-    $s3->succeed("mc mb minio/thanos-bucket");
-
-    # Now that s3 has started we can start the other machines:
-    $prometheus->start;
-    $query->start;
-    $store->start;
-
-    # Check if prometheus responds to requests:
-    $prometheus->waitForUnit("prometheus2.service");
-    $prometheus->waitForOpenPort(${toString queryPort});
-    $prometheus->succeed("curl -s http://127.0.0.1:${toString queryPort}/metrics");
-
-    # Let's test if pushing a metric to the pushgateway succeeds:
-    $prometheus->waitForUnit("pushgateway.service");
-    $prometheus->succeed(
-      "echo 'some_metric 3.14' | " .
-      "curl --data-binary \@- http://127.0.0.1:${toString pushgwPort}/metrics/job/some_job");
-
-    # Now check whether that metric gets ingested by prometheus.
-    # Since we'll check for the metric several times on different machines
-    # we abstract the test using the following function:
-
-    # Function to check if the metric "some_metric" has been received and returns the correct value.
-    local *Machine::waitForMetric = sub {
-      my ($self) = @_;
-      $self->waitUntilSucceeds(
-        "curl -sf 'http://127.0.0.1:${toString queryPort}/api/v1/query?query=some_metric' " .
-        "| jq '.data.result[0].value[1]' | grep '\"3.14\"'");
-    };
-
-    $prometheus->waitForMetric;
-
-    # Let's test if the pushgateway persists metrics to the configured location.
-    $prometheus->waitUntilSucceeds("test -e /var/lib/prometheus-pushgateway/metrics");
-
-    # Test thanos
-    $prometheus->waitForUnit("thanos-sidecar.service");
-
-    # Test if the Thanos query service can correctly retrieve the metric that was send above.
-    $query->waitForUnit("thanos-query.service");
-    $query->waitForMetric;
-
-    # Test if the Thanos sidecar has correctly uploaded its TSDB to S3, if the
-    # Thanos storage service has correctly downloaded it from S3 and if the Thanos
-    # query service running on $store can correctly retrieve the metric:
-    $store->waitForUnit("thanos-store.service");
-    $store->waitForMetric;
-
-    $store->waitForUnit("thanos-compact.service");
-
-    # Test if the Thanos bucket command is able to retrieve blocks from the S3 bucket
-    # and check if the blocks have the correct labels:
-    $store->succeed(
-      "thanos bucket ls" .
-      " --objstore.config-file=${nodes.store.config.services.thanos.store.objstore.config-file}" .
-      " --output=json | jq .thanos.labels.some_label | grep 'required by thanos'");
-  '';
-}
diff --git a/nixos/tests/prometheus.nix b/nixos/tests/prometheus.nix
index f1b20a33d71..52f61046be3 100644
--- a/nixos/tests/prometheus.nix
+++ b/nixos/tests/prometheus.nix
@@ -1,48 +1,239 @@
-import ./make-test.nix {
-  name = "prometheus";
+let
+  grpcPort   = 19090;
+  queryPort  =  9090;
+  minioPort  =  9000;
+  pushgwPort =  9091;
 
-  nodes = {
-    one = { ... }: {
-      services.prometheus = {
-        enable = true;
-        scrapeConfigs = [{
-          job_name = "prometheus";
-          static_configs = [{
-            targets = [ "127.0.0.1:9090" ];
-            labels = { instance = "localhost"; };
-          }];
-        }];
-        rules = [ ''testrule = count(up{job="prometheus"})'' ];
+  s3 = {
+    accessKey = "BKIKJAA5BMMU2RHO6IBB";
+    secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
+  };
 
-        # a very simple version of the alertmanager configuration just to see if
-        # configuration checks & service startup are working
-        alertmanager = {
-          enable = true;
-          listenAddress = "[::1]";
-          port = 9093;
-          configuration = {
-            route.receiver = "webhook";
-            receivers = [
-              {
-                name = "webhook";
-                webhook_configs = [
-                  { url = "http://localhost"; }
-                ];
-              }
-            ];
-          };
-        };
+  objstore.config = {
+    type = "S3";
+    config = {
+      bucket = "thanos-bucket";
+      endpoint = "s3:${toString minioPort}";
+      region =  "us-east-1";
+      access_key = s3.accessKey;
+      secret_key = s3.secretKey;
+      insecure = true;
+      signature_version2 = false;
+      encrypt_sse =  false;
+      put_user_metadata = {};
+      http_config = {
+        idle_conn_timeout = "0s";
+        insecure_skip_verify = false;
+      };
+      trace = {
+        enable = false;
       };
     };
   };
 
-  testScript = ''
-    startAll;
-    $one->waitForUnit("prometheus.service");
-    $one->waitForOpenPort(9090);
-    $one->succeed("curl -s http://127.0.0.1:9090/metrics");
-    $one->waitForUnit("alertmanager.service");
-    $one->waitForOpenPort("9093");
-    $one->succeed("curl -f -s http://localhost:9093/");
+in import ./make-test.nix {
+  name = "prometheus";
+
+  nodes = {
+    prometheus = { pkgs, ... }: {
+      virtualisation.diskSize = 2 * 1024;
+      environment.systemPackages = [ pkgs.jq ];
+      networking.firewall.allowedTCPPorts = [ grpcPort ];
+      services.prometheus = {
+        enable = true;
+        scrapeConfigs = [
+          {
+            job_name = "prometheus";
+            static_configs = [
+              {
+                targets = [ "127.0.0.1:${toString queryPort}" ];
+                labels = { instance = "localhost"; };
+              }
+            ];
+          }
+          {
+            job_name = "pushgateway";
+            scrape_interval = "1s";
+            static_configs = [
+              {
+                targets = [ "127.0.0.1:${toString pushgwPort}" ];
+              }
+            ];
+          }
+        ];
+        rules = [
+          ''
+            groups:
+              - name: test
+                rules:
+                  - record: testrule
+                    expr: count(up{job="prometheus"})
+          ''
+        ];
+        globalConfig = {
+          external_labels = {
+            some_label = "required by thanos";
+          };
+        };
+        extraFlags = [
+          # Required by thanos
+          "--storage.tsdb.min-block-duration=5s"
+          "--storage.tsdb.max-block-duration=5s"
+        ];
+      };
+      services.prometheus.pushgateway = {
+        enable = true;
+        web.listen-address = ":${toString pushgwPort}";
+        persistMetrics = true;
+        persistence.interval = "1s";
+        stateDir = "prometheus-pushgateway";
+      };
+      services.thanos = {
+        sidecar = {
+          enable = true;
+          grpc-address = "0.0.0.0:${toString grpcPort}";
+          inherit objstore;
+        };
+
+        # TODO: Add some tests for these services:
+        #rule = {
+        #  enable = true;
+        #  http-address = "0.0.0.0:19194";
+        #  grpc-address = "0.0.0.0:19193";
+        #  query.addresses = [
+        #    "localhost:19191"
+        #  ];
+        #  labels = {
+        #    just = "some";
+        #    nice = "labels";
+        #  };
+        #};
+        #
+        #receive = {
+        #  http-address = "0.0.0.0:19195";
+        #  enable = true;
+        #  labels = {
+        #    just = "some";
+        #    nice = "labels";
+        #  };
+        #};
+      };
+    };
+
+    query = { pkgs, ... }: {
+      environment.systemPackages = [ pkgs.jq ];
+      services.thanos.query = {
+        enable = true;
+        http-address = "0.0.0.0:${toString queryPort}";
+        store.addresses = [
+          "prometheus:${toString grpcPort}"
+        ];
+      };
+    };
+
+    store = { pkgs, ... }: {
+      virtualisation.diskSize = 2 * 1024;
+      environment.systemPackages = with pkgs; [ jq thanos ];
+      services.thanos.store = {
+        enable = true;
+        http-address = "0.0.0.0:10902";
+        grpc-address = "0.0.0.0:${toString grpcPort}";
+        inherit objstore;
+        sync-block-duration = "1s";
+      };
+      services.thanos.compact = {
+        enable = true;
+        http-address = "0.0.0.0:10903";
+        inherit objstore;
+        consistency-delay = "5s";
+      };
+      services.thanos.query = {
+        enable = true;
+        http-address = "0.0.0.0:${toString queryPort}";
+        store.addresses = [
+          "localhost:${toString grpcPort}"
+        ];
+      };
+    };
+
+    s3 = { pkgs, ... } : {
+      # Minio requires at least 1GiB of free disk space to run.
+      virtualisation.diskSize = 2 * 1024;
+      networking.firewall.allowedTCPPorts = [ minioPort ];
+
+      services.minio = {
+        enable = true;
+        inherit (s3) accessKey secretKey;
+      };
+
+      environment.systemPackages = [ pkgs.minio-client ];
+    };
+  };
+
+  testScript = { nodes, ... } : ''
+    # Before starting the other machines we first make sure that our S3 service is online
+    # and has a bucket added for thanos:
+    $s3->start;
+    $s3->waitForUnit("minio.service");
+    $s3->waitForOpenPort(${toString minioPort});
+    $s3->succeed(
+      "mc config host add minio " .
+      "http://localhost:${toString minioPort} ${s3.accessKey} ${s3.secretKey} S3v4");
+    $s3->succeed("mc mb minio/thanos-bucket");
+
+    # Now that s3 has started we can start the other machines:
+    $prometheus->start;
+    $query->start;
+    $store->start;
+
+    # Check if prometheus responds to requests:
+    $prometheus->waitForUnit("prometheus.service");
+    $prometheus->waitForOpenPort(${toString queryPort});
+    $prometheus->succeed("curl -s http://127.0.0.1:${toString queryPort}/metrics");
+
+    # Let's test if pushing a metric to the pushgateway succeeds:
+    $prometheus->waitForUnit("pushgateway.service");
+    $prometheus->succeed(
+      "echo 'some_metric 3.14' | " .
+      "curl --data-binary \@- http://127.0.0.1:${toString pushgwPort}/metrics/job/some_job");
+
+    # Now check whether that metric gets ingested by prometheus.
+    # Since we'll check for the metric several times on different machines
+    # we abstract the test using the following function:
+
+    # Function to check if the metric "some_metric" has been received and returns the correct value.
+    local *Machine::waitForMetric = sub {
+      my ($self) = @_;
+      $self->waitUntilSucceeds(
+        "curl -sf 'http://127.0.0.1:${toString queryPort}/api/v1/query?query=some_metric' " .
+        "| jq '.data.result[0].value[1]' | grep '\"3.14\"'");
+    };
+
+    $prometheus->waitForMetric;
+
+    # Let's test if the pushgateway persists metrics to the configured location.
+    $prometheus->waitUntilSucceeds("test -e /var/lib/prometheus-pushgateway/metrics");
+
+    # Test thanos
+    $prometheus->waitForUnit("thanos-sidecar.service");
+
+    # Test if the Thanos query service can correctly retrieve the metric that was send above.
+    $query->waitForUnit("thanos-query.service");
+    $query->waitForMetric;
+
+    # Test if the Thanos sidecar has correctly uploaded its TSDB to S3, if the
+    # Thanos storage service has correctly downloaded it from S3 and if the Thanos
+    # query service running on $store can correctly retrieve the metric:
+    $store->waitForUnit("thanos-store.service");
+    $store->waitForMetric;
+
+    $store->waitForUnit("thanos-compact.service");
+
+    # Test if the Thanos bucket command is able to retrieve blocks from the S3 bucket
+    # and check if the blocks have the correct labels:
+    $store->succeed(
+      "thanos bucket ls" .
+      " --objstore.config-file=${nodes.store.config.services.thanos.store.objstore.config-file}" .
+      " --output=json | jq .thanos.labels.some_label | grep 'required by thanos'");
   '';
 }

From d42ed9b401666e905f797a5f994264a0942fad97 Mon Sep 17 00:00:00 2001
From: Dylan Simon <dylan@dylex.net>
Date: Wed, 4 Sep 2019 07:17:16 -0400
Subject: [PATCH 90/92] graphviz: use git hash for removed release tag

---
 pkgs/tools/graphics/graphviz/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/graphics/graphviz/default.nix b/pkgs/tools/graphics/graphviz/default.nix
index 48b1b0764c5..7249a6cdaad 100644
--- a/pkgs/tools/graphics/graphviz/default.nix
+++ b/pkgs/tools/graphics/graphviz/default.nix
@@ -1,5 +1,5 @@
 import ./base.nix rec {
-  rev = "stable_release_${version}";
+  rev = "67cd2e5121379a38e0801cc05cce5033f8a2a609";
   version = "2.40.1";
   sha256 = "1xjqq3g2n6jgwp5xzyvibgrxawlskkpam69fjjz9ksrrjas2qwzj";
  }

From 4179ba049cf1a35bad5e9ae43c01b5c7bffa724e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <v@cunat.cz>
Date: Fri, 6 Sep 2019 22:31:35 +0200
Subject: [PATCH 91/92] ghc on aarch64: try to work around #66277

---
 pkgs/development/compilers/ghc/8.6.5.nix | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/pkgs/development/compilers/ghc/8.6.5.nix b/pkgs/development/compilers/ghc/8.6.5.nix
index c859a34729d..a350a9025e5 100644
--- a/pkgs/development/compilers/ghc/8.6.5.nix
+++ b/pkgs/development/compilers/ghc/8.6.5.nix
@@ -225,6 +225,10 @@ stdenv.mkDerivation (rec {
       egrep --quiet '^#!' <(head -n 1 $i) || continue
       sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
     done
+  ''
+  # Temporary work-around for https://github.com/NixOS/nixpkgs/issues/66277
+  + stdenv.lib.optionalString hostPlatform.isAarch64 ''
+    rm -rf "$doc/share/doc/ghc/html/libraries"
   '';
 
   passthru = {

From 4d4545185a7953165e8b8c612f7b713102290dc0 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Fri, 6 Sep 2019 23:33:32 +0200
Subject: [PATCH 92/92] Revert "pythonPackages.pyev: drop"

Package is still referred to.

This reverts commit bb5c039fc95bea25133a01e8f1b46a50159f2412.
---
 .../python-modules/pyev/default.nix           | 30 +++++++++++++++++++
 pkgs/top-level/python-packages.nix            |  2 ++
 2 files changed, 32 insertions(+)
 create mode 100644 pkgs/development/python-modules/pyev/default.nix

diff --git a/pkgs/development/python-modules/pyev/default.nix b/pkgs/development/python-modules/pyev/default.nix
new file mode 100644
index 00000000000..b5ca0c7ef6c
--- /dev/null
+++ b/pkgs/development/python-modules/pyev/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, buildPythonPackage, libev }:
+
+buildPythonPackage rec {
+  pname = "pyev";
+  version = "0.9.0";
+
+  src = fetchurl {
+    url = "mirror://pypi/p/pyev/${pname}-${version}.tar.gz";
+    sha256 = "0rf603lc0s6zpa1nb25vhd8g4y337wg2wyz56i0agsdh7jchl0sx";
+  };
+
+  buildInputs = [ libev ];
+
+  libEvSharedLibrary =
+    if !stdenv.isDarwin
+    then "${libev}/lib/libev.so.4"
+    else "${libev}/lib/libev.4.dylib";
+
+  postPatch = ''
+    test -f "${libEvSharedLibrary}" || { echo "ERROR: File ${libEvSharedLibrary} does not exist, please fix nix expression for pyev"; exit 1; }
+    sed -i -e "s|libev_dll_name = find_library(\"ev\")|libev_dll_name = \"${libEvSharedLibrary}\"|" setup.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Python bindings for libev";
+    homepage = https://code.google.com/p/pyev/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 19ce618e9e4..e2206878420 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -4370,6 +4370,8 @@ in {
 
   pyenchant = callPackage ../development/python-modules/pyenchant { };
 
+  pyev = callPackage ../development/python-modules/pyev { };
+
   pyexcelerator = callPackage ../development/python-modules/pyexcelerator { };
 
   pyext = callPackage ../development/python-modules/pyext { };