about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--nixos/modules/services/x11/desktop-managers/enlightenment.nix39
-rw-r--r--nixos/modules/services/x11/desktop-managers/lumina.nix9
-rw-r--r--nixos/tests/enlightenment.nix16
-rw-r--r--pkgs/applications/audio/mopidy/default.nix4
-rw-r--r--pkgs/applications/audio/mopidy/gmusic.nix19
-rw-r--r--pkgs/applications/audio/mopidy/mpris.nix27
-rw-r--r--pkgs/applications/audio/mopidy/somafm.nix26
-rw-r--r--pkgs/applications/audio/mopidy/youtube.nix24
-rw-r--r--pkgs/applications/editors/lite/default.nix4
-rw-r--r--pkgs/applications/graphics/nomacs/default.nix2
-rw-r--r--pkgs/applications/graphics/nomacs/nomacs-iostream.patch26
-rw-r--r--pkgs/applications/misc/hugo/default.nix4
-rw-r--r--pkgs/applications/misc/pastel/default.nix6
-rw-r--r--pkgs/applications/misc/zola/default.nix6
-rw-r--r--pkgs/applications/networking/ids/snort/default.nix8
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix4
-rw-r--r--pkgs/applications/science/biology/bppsuite/default.nix21
-rw-r--r--pkgs/applications/science/logic/sad/default.nix2
-rw-r--r--pkgs/applications/science/logic/sad/patch.patch (renamed from pkgs/applications/science/logic/sad/patch)0
-rw-r--r--pkgs/applications/science/physics/xflr5/default.nix23
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix20
-rw-r--r--pkgs/applications/virtualization/conmon/default.nix4
-rw-r--r--pkgs/build-support/rust/build-rust-crate/configure-crate.nix4
-rw-r--r--pkgs/build-support/rust/build-rust-crate/test/default.nix34
-rw-r--r--pkgs/desktops/deepin/deepin-icon-theme/default.nix35
-rw-r--r--pkgs/desktops/deepin/disomaster/default.nix11
-rw-r--r--pkgs/desktops/deepin/go-lib/default.nix4
-rw-r--r--pkgs/desktops/deepin/udisks2-qt5/default.nix12
-rw-r--r--pkgs/desktops/enlightenment/0001-wrapped-setuid-executables.patch114
-rw-r--r--pkgs/desktops/enlightenment/efl.nix4
-rw-r--r--pkgs/desktops/enlightenment/enlightenment.nix77
-rw-r--r--pkgs/desktops/enlightenment/enlightenment.suid-exes.patch25
-rw-r--r--pkgs/desktops/gnustep/back/default.nix4
-rw-r--r--pkgs/desktops/gnustep/base/default.nix4
-rw-r--r--pkgs/desktops/gnustep/gorm/default.nix6
-rw-r--r--pkgs/desktops/gnustep/gui/default.nix4
-rw-r--r--pkgs/desktops/gnustep/make/default.nix4
-rw-r--r--pkgs/desktops/lumina/lumina/default.nix54
-rw-r--r--pkgs/development/compilers/ciao/default.nix32
-rw-r--r--pkgs/development/coq-modules/mathcomp/extra.nix29
-rw-r--r--pkgs/development/libraries/ffmpeg-full/default.nix6
-rw-r--r--pkgs/development/libraries/ffmpeg/2.8.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg/4.nix4
-rw-r--r--pkgs/development/libraries/physics/cernlib/default.nix2
-rw-r--r--pkgs/development/libraries/physics/cernlib/patch.patch (renamed from pkgs/development/libraries/physics/cernlib/patch)0
-rw-r--r--pkgs/development/libraries/physics/mcgrid/default.nix30
-rw-r--r--pkgs/development/libraries/physics/rivet/default.nix44
-rw-r--r--pkgs/development/libraries/physics/yoda/default.nix18
-rw-r--r--pkgs/development/libraries/science/biology/bpp-core/default.nix36
-rw-r--r--pkgs/development/libraries/science/biology/bpp-phyl/default.nix32
-rw-r--r--pkgs/development/libraries/science/biology/bpp-popgen/default.nix35
-rw-r--r--pkgs/development/libraries/science/biology/bpp-seq/default.nix35
-rw-r--r--pkgs/development/ocaml-modules/async_kernel/default.nix25
-rw-r--r--pkgs/development/ocaml-modules/janestreet/async-kernel.nix16
-rw-r--r--pkgs/development/ocaml-modules/lens/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/sodium/default.nix4
-rw-r--r--pkgs/development/python-modules/csscompressor/default.nix2
-rw-r--r--pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--pkgs/development/python-modules/htmlmin/default.nix2
-rw-r--r--pkgs/development/python-modules/identify/default.nix4
-rw-r--r--pkgs/development/python-modules/jellyfish/default.nix4
-rw-r--r--pkgs/development/python-modules/phonenumbers/default.nix4
-rw-r--r--pkgs/development/python-modules/plexapi/default.nix4
-rw-r--r--pkgs/development/python-modules/pyenchant/default.nix4
-rw-r--r--pkgs/development/python-modules/pysmb/default.nix4
-rw-r--r--pkgs/development/python-modules/update_checker/default.nix4
-rw-r--r--pkgs/development/python-modules/w3lib/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--pkgs/games/taisei/0001-lto-fix.patch13
-rw-r--r--pkgs/games/taisei/default.nix46
-rw-r--r--pkgs/servers/http/jetty/default.nix4
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/shells/zsh/pure-prompt/default.nix30
-rw-r--r--pkgs/shells/zsh/zsh-prezto/default.nix16
-rw-r--r--pkgs/tools/admin/fastlane/Gemfile.lock122
-rw-r--r--pkgs/tools/admin/fastlane/default.nix1
-rw-r--r--pkgs/tools/admin/fastlane/gemset.nix303
-rw-r--r--pkgs/tools/archivers/unar/default.nix4
-rw-r--r--pkgs/tools/graphics/transfig/default.nix10
-rw-r--r--pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile.patch (renamed from pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile)0
-rw-r--r--pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile.patch (renamed from pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile)0
-rw-r--r--pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c.patch (renamed from pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c)0
-rw-r--r--pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h.patch (renamed from pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h)0
-rw-r--r--pkgs/tools/graphics/transfig/patch-transfig-Imakefile.patch (renamed from pkgs/tools/graphics/transfig/patch-transfig-Imakefile)0
-rw-r--r--pkgs/tools/misc/bat/default.nix17
-rw-r--r--pkgs/tools/misc/bat/macos.patch13
-rw-r--r--pkgs/tools/misc/mstflint/default.nix25
-rw-r--r--pkgs/tools/misc/parallel/default.nix4
-rw-r--r--pkgs/tools/misc/profile-sync-daemon/default.nix4
-rw-r--r--pkgs/tools/networking/ip2unix/default.nix4
-rw-r--r--pkgs/tools/networking/mu/default.nix4
-rw-r--r--pkgs/tools/networking/ssldump/default.nix6
-rw-r--r--pkgs/tools/package-management/nix/default.nix6
-rw-r--r--pkgs/tools/text/snippetpixie/default.nix4
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix47
-rw-r--r--pkgs/top-level/coq-packages.nix6
-rw-r--r--pkgs/top-level/ocaml-packages.nix11
-rw-r--r--pkgs/top-level/python-packages.nix4
100 files changed, 1199 insertions, 614 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index b7ee71285138..2c8b39bd0d65 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -247,12 +247,6 @@
     githubId = 732652;
     name = "Andreas Herrmann";
   };
-  ahmedtd = {
-    email = "ahmed.taahir@gmail.com";
-    github = "ahmedtd";
-    githubId = 1017202;
-    name = "Taahir Ahmed";
-  };
   ahuzik = {
     email = "ales.guzik@gmail.com";
     github = "alesguzik";
diff --git a/nixos/modules/services/x11/desktop-managers/enlightenment.nix b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
index 1690a7d51a88..3a7ab64510b5 100644
--- a/nixos/modules/services/x11/desktop-managers/enlightenment.nix
+++ b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
@@ -32,15 +32,14 @@ in
 
   config = mkIf cfg.enable {
 
-    environment.systemPackages = [
-      e.efl e.enlightenment
-      e.terminology e.econnman
-      pkgs.xorg.xauth # used by kdesu
-      pkgs.gtk2 # To get GTK's themes.
-      pkgs.tango-icon-theme
-
-      pkgs.gnome-icon-theme
-      pkgs.xorg.xcursorthemes
+    environment.systemPackages = with pkgs; [
+      enlightenment.econnman
+      enlightenment.efl
+      enlightenment.enlightenment
+      enlightenment.ephoto
+      enlightenment.rage
+      enlightenment.terminology
+      xorg.xcursorthemes
     ];
 
     environment.pathsToLink = [
@@ -50,11 +49,10 @@ in
       "/share/locale"
     ];
 
-    services.xserver.desktopManager.session = [
-    { name = "Enlightenment";
-      start = ''
-        export XDG_MENU_PREFIX=e-
+    services.xserver.displayManager.sessionPackages = [ pkgs.enlightenment.enlightenment ];
 
+    services.xserver.displayManager.sessionCommands = ''
+      if test "$XDG_CURRENT_DESKTOP" = "Enlightenment"; then
         export GST_PLUGIN_PATH="${GST_PLUGIN_PATH}"
 
         # make available for D-BUS user services
@@ -62,12 +60,15 @@ in
 
         # Update user dirs as described in http://freedesktop.org/wiki/Software/xdg-user-dirs/
         ${pkgs.xdg-user-dirs}/bin/xdg-user-dirs-update
-
-        exec ${e.enlightenment}/bin/enlightenment_start
-      '';
-    }];
-
-    security.wrappers = (import "${e.enlightenment}/e-wrappers.nix").security.wrappers;
+      fi
+    '';
+
+    # Wrappers for programs installed by enlightenment that should be setuid
+    security.wrappers = {
+      enlightenment_ckpasswd.source = "${pkgs.enlightenment.enlightenment}/lib/enlightenment/utils/enlightenment_ckpasswd";
+      enlightenment_sys.source = "${pkgs.enlightenment.enlightenment}/lib/enlightenment/utils/enlightenment_sys";
+      enlightenment_system.source = "${pkgs.enlightenment.enlightenment}/lib/enlightenment/utils/enlightenment_system";
+    };
 
     environment.etc."X11/xkb".source = xcfg.xkbDir;
 
diff --git a/nixos/modules/services/x11/desktop-managers/lumina.nix b/nixos/modules/services/x11/desktop-managers/lumina.nix
index 2224bcd5a2a5..419f5055d8be 100644
--- a/nixos/modules/services/x11/desktop-managers/lumina.nix
+++ b/nixos/modules/services/x11/desktop-managers/lumina.nix
@@ -23,12 +23,9 @@ in
 
   config = mkIf cfg.enable {
 
-    services.xserver.desktopManager.session = singleton {
-      name = "lumina";
-      start = ''
-        exec ${pkgs.lumina.lumina}/bin/start-lumina-desktop
-      '';
-    };
+    services.xserver.displayManager.sessionPackages = [
+      pkgs.lumina.lumina
+    ];
 
     environment.systemPackages =
       pkgs.lumina.preRequisitePackages ++
diff --git a/nixos/tests/enlightenment.nix b/nixos/tests/enlightenment.nix
index 5fa8d765dd1f..0132b98b1cbb 100644
--- a/nixos/tests/enlightenment.nix
+++ b/nixos/tests/enlightenment.nix
@@ -41,28 +41,24 @@ import ./make-test-python.nix ({ pkgs, ...} :
 
     with subtest("First time wizard"):
         machine.wait_for_text("Default")  # Language
-        machine.succeed("xdotool mousemove 512 185 click 1")  # Default Language
         machine.screenshot("wizard1")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
-
-        machine.wait_for_text("English")  # Keyboard (default)
         machine.screenshot("wizard2")
-        machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
-        machine.wait_for_text("Standard")  # Profile (default)
+        machine.wait_for_text("English")  # Keyboard (default)
         machine.screenshot("wizard3")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
-        machine.wait_for_text("Title")  # Sizing (default)
+        machine.wait_for_text("Standard")  # Profile (default)
         machine.screenshot("wizard4")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
-        machine.wait_for_text("clicked")  # Windows Phocus
-        machine.succeed("xdotool mousemove 512 370 click 1")  # Click
+        machine.wait_for_text("Title")  # Sizing (default)
         machine.screenshot("wizard5")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
-        machine.wait_for_text("bindings")  # Mouse Modifiers (default)
+        machine.wait_for_text("clicked")  # Windows Focus
+        machine.succeed("xdotool mousemove 512 370 click 1")  # Click
         machine.screenshot("wizard6")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
@@ -74,7 +70,7 @@ import ./make-test-python.nix ({ pkgs, ...} :
         machine.screenshot("wizard8")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
-        machine.wait_for_text("Compositing")  # Compositing (default)
+        machine.wait_for_text("OpenGL")  # Compositing (default)
         machine.screenshot("wizard9")
         machine.succeed("xdotool mousemove 512 740 click 1")  # Next
 
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index 0b9f81533020..6c2a7d9fe334 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -26,6 +26,10 @@ let
 
     mopidy-mpd = callPackage ./mpd.nix { };
 
+    mopidy-mpris = callPackage ./mpris.nix { };
+
+    mopidy-somafm = callPackage ./somafm.nix { };
+
     mopidy-spotify-tunigo = callPackage ./spotify-tunigo.nix { };
 
     mopidy-youtube = callPackage ./youtube.nix { };
diff --git a/pkgs/applications/audio/mopidy/gmusic.nix b/pkgs/applications/audio/mopidy/gmusic.nix
index 3dea9156f8fc..1e5e42ac2f34 100644
--- a/pkgs/applications/audio/mopidy/gmusic.nix
+++ b/pkgs/applications/audio/mopidy/gmusic.nix
@@ -1,19 +1,20 @@
-{ stdenv, fetchurl, pythonPackages, mopidy }:
+{ stdenv, python3Packages, mopidy }:
 
-pythonPackages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "mopidy-gmusic";
-  version = "3.0.0";
+  version = "4.0.0";
 
-  src = fetchurl {
-    url = "https://github.com/mopidy/mopidy-gmusic/archive/v${version}.tar.gz";
-    sha256 = "0a2s4xrrhnkv85rx4w5bj6ih9xm34jy0q71fdvbzmi827g9dw5sz";
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname = "Mopidy-GMusic";
+    sha256 = "14yswmlfs659rs3k595606m77lw9c6pjykb5pikqw21sb97haxl3";
   };
 
   propagatedBuildInputs = [
     mopidy
-    pythonPackages.requests
-    pythonPackages.gmusicapi
-    pythonPackages.cachetools
+    python3Packages.requests
+    python3Packages.gmusicapi
+    python3Packages.cachetools
   ];
 
   doCheck = false;
diff --git a/pkgs/applications/audio/mopidy/mpris.nix b/pkgs/applications/audio/mopidy/mpris.nix
new file mode 100644
index 000000000000..16fbfab380ba
--- /dev/null
+++ b/pkgs/applications/audio/mopidy/mpris.nix
@@ -0,0 +1,27 @@
+{ stdenv, python3Packages, mopidy }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "mopidy-mpris";
+  version = "3.0.1";
+
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname = "Mopidy-MPRIS";
+    sha256 = "0qk46aq5r92qgkldzl41x09naww1gv92l4c4hknyl7yymyvm9lr2";
+  };
+
+  propagatedBuildInputs = [
+    mopidy
+    python3Packages.pydbus
+  ];
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://www.mopidy.com/;
+    description = "Mopidy extension for controlling Mopidy through D-Bus using the MPRIS specification";
+    license = licenses.asl20;
+    maintainers = [ maintainers.nickhu ];
+  };
+}
+
diff --git a/pkgs/applications/audio/mopidy/somafm.nix b/pkgs/applications/audio/mopidy/somafm.nix
new file mode 100644
index 000000000000..2e3380fa20f8
--- /dev/null
+++ b/pkgs/applications/audio/mopidy/somafm.nix
@@ -0,0 +1,26 @@
+{ stdenv, python3Packages, mopidy }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "mopidy-somafm";
+  version = "2.0.0";
+
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname = "Mopidy-SomaFM";
+    sha256 = "1j88rrliys8hqvnb35k1xqw88bvrllcb4rb53lgh82byhscsxlf3";
+  };
+
+  propagatedBuildInputs = [
+    mopidy
+  ];
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://www.mopidy.com/;
+    description = "Mopidy extension for playing music from SomaFM";
+    license = licenses.mit;
+    maintainers = [ maintainers.nickhu ];
+  };
+}
+
diff --git a/pkgs/applications/audio/mopidy/youtube.nix b/pkgs/applications/audio/mopidy/youtube.nix
index b8e22a41cabf..ac16c182a50e 100644
--- a/pkgs/applications/audio/mopidy/youtube.nix
+++ b/pkgs/applications/audio/mopidy/youtube.nix
@@ -1,17 +1,23 @@
-{ stdenv, fetchFromGitHub, pythonPackages, mopidy }:
+{ stdenv, python3Packages, mopidy }:
 
-pythonPackages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "mopidy-youtube";
-  version = "2.0.2";
+  version = "3.0";
 
-  src = fetchFromGitHub {
-    owner = "mopidy";
-    repo = "mopidy-youtube";
-    rev = "v${version}";
-    sha256 = "06r3ikyg2ch5n7fbn3sgj04hk6icpfpk1r856qch41995k3bbfg7";
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname = "Mopidy-YouTube";
+    sha256 = "0x1q9rfnjx65n6hi8s5rw5ff4xv55h63zy52fwm8aksdnzppr7gd";
   };
 
-  propagatedBuildInputs = with pythonPackages; [ mopidy pafy ];
+  patchPhase = "sed s/bs4/beautifulsoup4/ -i setup.cfg";
+
+  propagatedBuildInputs = [
+    mopidy
+    python3Packages.beautifulsoup4
+    python3Packages.cachetools
+    python3Packages.youtube-dl
+  ];
 
   doCheck = false;
 
diff --git a/pkgs/applications/editors/lite/default.nix b/pkgs/applications/editors/lite/default.nix
index 107be4338324..34800d7f0235 100644
--- a/pkgs/applications/editors/lite/default.nix
+++ b/pkgs/applications/editors/lite/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lite";
-  version = "1.03";
+  version = "1.05";
 
   src = fetchFromGitHub {
     owner = "rxi";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1h8z4fav5ns9sm92axs3k9v6jgkqq0vg9mixza14949blr426mlj";
+    sha256 = "0xh29ddl5h92n1c4nlh4kx9mchwkzn4r3l16kklix3a1jm1c878a";
   };
 
   nativeBuildInputs = [ makeWrapper pkg-config ];
diff --git a/pkgs/applications/graphics/nomacs/default.nix b/pkgs/applications/graphics/nomacs/default.nix
index a6bda01ebb64..67e95aec7585 100644
--- a/pkgs/applications/graphics/nomacs/default.nix
+++ b/pkgs/applications/graphics/nomacs/default.nix
@@ -55,7 +55,7 @@ mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = "https://nomacs.org";
     description = "Qt-based image viewer";
-    maintainers = [maintainers.ahmedtd];
+    maintainers = with stdenv.lib.maintainers; [ mindavi ];
     license = licenses.gpl3Plus;
     repositories.git = "https://github.com/nomacs/nomacs.git";
     inherit (qtbase.meta) platforms;
diff --git a/pkgs/applications/graphics/nomacs/nomacs-iostream.patch b/pkgs/applications/graphics/nomacs/nomacs-iostream.patch
deleted file mode 100644
index 53224e0260eb..000000000000
--- a/pkgs/applications/graphics/nomacs/nomacs-iostream.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/src/DkCore/DkMetaData.cpp b/src/DkCore/DkMetaData.cpp
-index d195757e..affec7be 100644
---- a/src/DkCore/DkMetaData.cpp
-+++ b/src/DkCore/DkMetaData.cpp
-@@ -42,6 +42,8 @@
- #include <QApplication>
- #pragma warning(pop)		// no warnings from includes - end
-
-+#include <iostream>
-+
- namespace nmc {
-
- // DkMetaDataT --------------------------------------------------------------------
-diff --git a/src/DkGui/DkNoMacs.cpp b/src/DkGui/DkNoMacs.cpp
-index 6a412f70..bbfba233 100644
---- a/src/DkGui/DkNoMacs.cpp
-+++ b/src/DkGui/DkNoMacs.cpp
-@@ -96,6 +96,8 @@
- #include <QWinTaskbarButton>
- #endif
-
-+#include <iostream>
-+
- namespace nmc {
-
- DkNomacsOSXEventFilter::DkNomacsOSXEventFilter(QObject *parent) : QObject(parent) {
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index ca5eb34b9562..7fe94cd2ff84 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.71.0";
+  version = "0.71.1";
 
   buildInputs = [ libsass ];
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1cjf69y8wvjq7kpncvqzmhc03pmf21nfxqpdnh64v34d14gpa1aa";
+    sha256 = "0kx3q2i5p8k1dfkh02ns5ns97aqqvdcs0kx4bl9d38jk3lw3jrgh";
   };
 
   golibsass = fetchFromGitHub {
diff --git a/pkgs/applications/misc/pastel/default.nix b/pkgs/applications/misc/pastel/default.nix
index 90b42ba72b7f..348ea4b991ec 100644
--- a/pkgs/applications/misc/pastel/default.nix
+++ b/pkgs/applications/misc/pastel/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pastel";
-  version = "0.7.1";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1xrg25w175m2iz7q9v7c05a0p0v5rr71vd4m3v6p0lqvij3sih4s";
+    sha256 = "00xxrssa3gbr5w2jsqlf632jlzc0lc2rpybnbv618ndy5lxidnw0";
   };
 
-  cargoSha256 = "17rw9wp9mfv38h0azdjwl60bxdknb5q84ia0a2r1vi91gz6275cs";
+  cargoSha256 = "1ji64h0f8f2sq12cx33kymypzar9swhaj903gclf3jdwgna77326";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/applications/misc/zola/default.nix b/pkgs/applications/misc/zola/default.nix
index 6616f7e4294e..d88d7296fd64 100644
--- a/pkgs/applications/misc/zola/default.nix
+++ b/pkgs/applications/misc/zola/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zola";
-  version = "0.10.1";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "getzola";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07zg4ia983rgvgvmw4xbi347lr4rxlf1xv8rw72cflc74kyia67n";
+    sha256 = "137ak9gzcn3689fmcb90wa4szw43rh2m51mf26l77a5gksn5y6cn";
   };
 
-  cargoSha256 = "13lnl01h8k8xv2ls1kjskfnyjmmk8iyk2mvbk01p2wmhp5m876md";
+  cargoSha256 = "0v40bcqh48dlhdc0kz7wm3q9r3i1m6j9s74bfiv237dqx5dymmsg";
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ openssl ]
diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix
index 92415148ed5e..49f7bbfd8120 100644
--- a/pkgs/applications/networking/ids/snort/default.nix
+++ b/pkgs/applications/networking/ids/snort/default.nix
@@ -1,16 +1,16 @@
-{stdenv, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison, makeWrapper}:
+{stdenv, pkgconfig, luajit, openssl, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison, makeWrapper}:
 
 stdenv.mkDerivation rec {
-  version = "2.9.11.1";
+  version = "2.9.16";
   pname = "snort";
   
   src = fetchurl {
     name = "${pname}-${version}.tar.gz";
     url = "https://snort.org/downloads/archive/snort/${pname}-${version}.tar.gz";
-    sha256 = "1ka67zrrhs32c729v4h76mvv2723mij0adxx0iaza2d1qpm3lswz";
+    sha256 = "1mxspk0060f62xp631w589b9ryb21qygn020az3dw2fsy7nxi24n";
   };
   
-  buildInputs = [ makeWrapper libpcap pcre libdnet daq zlib flex bison ];
+  buildInputs = [ makeWrapper pkgconfig luajit openssl libpcap pcre libdnet daq zlib flex bison ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index e82769ad317a..c188e46d0076 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "1.14.1";
+  version = "1.14.2";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    sha256 = "09a4hhl9h6y57yfq1gx83fzqxp3wb88y17rl8f54ndpp6p1n9m9m";
+    sha256 = "0cdcls0x6f2w99hkjz48hxhnx86w3bnyxzibchdc9yspih770bz2";
   };
 
   patches = optional smimeSupport (fetchpatch {
diff --git a/pkgs/applications/science/biology/bppsuite/default.nix b/pkgs/applications/science/biology/bppsuite/default.nix
new file mode 100644
index 000000000000..564a38708bcd
--- /dev/null
+++ b/pkgs/applications/science/biology/bppsuite/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchFromGitHub, cmake, bpp-core, bpp-seq, bpp-phyl, bpp-popgen }:
+
+stdenv.mkDerivation rec {
+  pname = "bppsuite";
+
+  inherit (bpp-core) version;
+
+  src = fetchFromGitHub {
+    owner = "BioPP";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1wdwcgczqbc3m116vakvi0129wm3acln3cfc7ivqnalwvi6lrpds";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ bpp-core bpp-seq bpp-phyl bpp-popgen ];
+
+  meta = bpp-core.meta // {
+    changelog = "https://github.com/BioPP/bppsuite/blob/master/ChangeLog";
+  };
+}
diff --git a/pkgs/applications/science/logic/sad/default.nix b/pkgs/applications/science/logic/sad/default.nix
index f9b82b5d733b..f1066abf6931 100644
--- a/pkgs/applications/science/logic/sad/default.nix
+++ b/pkgs/applications/science/logic/sad/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
   };
   buildInputs = [ haskell.compiler.ghc844 spass ];
   patches = [
-    ./patch
+    ./patch.patch
     # Since the LTS 12.0 update, <> is an operator in Prelude, colliding with
     # the <> operator with a different meaning defined by this package
     ./monoid.patch
diff --git a/pkgs/applications/science/logic/sad/patch b/pkgs/applications/science/logic/sad/patch.patch
index a5b1d6177083..a5b1d6177083 100644
--- a/pkgs/applications/science/logic/sad/patch
+++ b/pkgs/applications/science/logic/sad/patch.patch
diff --git a/pkgs/applications/science/physics/xflr5/default.nix b/pkgs/applications/science/physics/xflr5/default.nix
new file mode 100644
index 000000000000..85838b04cbf1
--- /dev/null
+++ b/pkgs/applications/science/physics/xflr5/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, lib, fetchurl, wrapQtAppsHook, qmake }:
+
+stdenv.mkDerivation rec {
+  pname = "xflr5";
+  version = "6.47";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/xflr5/${pname}_v${version}_src.tar.gz";
+    sha256 = "02x3r9iv3ndwxa65mxn9m5dlhcrnjiq7cffi6rmb456gs3v3dnav";
+  };
+
+  enableParallelBuilding = true;
+
+  nativeBuildInputs = [ qmake wrapQtAppsHook ];
+
+  meta = with stdenv.lib; {
+    description = "An analysis tool for airfoils, wings and planes";
+    homepage = https://sourceforge.net/projects/xflr5/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.esclear ];
+    platforms = platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 2386ac87ceab..300570f7efd2 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,25 +2,27 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "0.8.0";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "08fy3677yq52x40rab49ijhw4r25ls2807dbv9wpna6w07n7r8v7";
+    sha256 = "050wqjng0l42ilaiglwm1mzrrmnk0bg9icnzq9sm88axgl4xpmdy";
   };
 
   vendorSha256 = "0s99bjmsafnzhl3s2lcybxgsw1s4i1h3vh6p40gz4vsfhndidqrq";
 
-  buildFlagsArray = [
-    "-ldflags=-s -w -X github.com/cli/cli/command.Version=${version}"
-  ];
+  nativeBuildInputs = [ installShellFiles ];
+
+  buildPhase = ''
+    make GH_VERSION=${version} bin/gh manpages
+  '';
 
-  subPackages = [ "cmd/gh" ];
+  installPhase = ''
+    install -Dm755 bin/gh -t $out/bin
+    installManPage share/man/*/*.[1-9]
 
-  nativeBuildInputs = [ installShellFiles ];
-  postInstall = ''
     for shell in bash fish zsh; do
       $out/bin/gh completion -s $shell > gh.$shell
       installShellCompletion gh.$shell
@@ -33,4 +35,4 @@ buildGoModule rec {
     license = licenses.mit;
     maintainers = with maintainers; [ zowoq ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix
index bb693c121d82..be6196855e2b 100644
--- a/pkgs/applications/virtualization/conmon/default.nix
+++ b/pkgs/applications/virtualization/conmon/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "conmon";
-  version = "2.0.16";
+  version = "2.0.17";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0z0hds95mjxm703ig2aisghvpd2l3wn6m72jnnlv8jnz2iq2nc4g";
+    sha256 = "01bicv0qr4aiahkw9cp6igk3jv1fqkbxmsp80nfvq6rxx873v0q7";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
index ed8100537090..c47bc00938c1 100644
--- a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
@@ -179,9 +179,9 @@ in ''
        export $env
      done
 
-     CRATENAME=$(echo ${crateName} | sed -e "s/\(.*\)-sys$/\U\1/")
+     CRATENAME=$(echo ${crateName} | sed -e "s/\(.*\)-sys$/\U\1/" -e "s/-/_/g")
      grep -P "^cargo:(?!(rustc-|warning=|rerun-if-changed=|rerun-if-env-changed))" target/build/${crateName}.opt \
-       | sed -e "s/cargo:\([^=]*\)=\(.*\)/export DEP_$(echo $CRATENAME)_\U\1\E=\2/" > target/env
+       | awk -F= "/^cargo:/ { sub(/^cargo:/, \"\", \$1); gsub(/-/, \"_\", \$1); print \"export \" toupper(\"DEP_$(echo $CRATENAME)_\" \$1) \"=\" \$2 }" > target/env
      set -e
   fi
   runHook postConfigure
diff --git a/pkgs/build-support/rust/build-rust-crate/test/default.nix b/pkgs/build-support/rust/build-rust-crate/test/default.nix
index 5597e4b0dd66..bdd6c86d5f07 100644
--- a/pkgs/build-support/rust/build-rust-crate/test/default.nix
+++ b/pkgs/build-support/rust/build-rust-crate/test/default.nix
@@ -344,6 +344,40 @@ let
         buildTests = true;
         expectedTestOutputs = [ "test baz_false ... ok" ];
       };
+      # Regression test for https://github.com/NixOS/nixpkgs/pull/88054
+      # Build script output should be rewritten as valid env vars.
+      buildScriptIncludeDirDeps = let
+        depCrate = mkCrate {
+          crateName = "bar";
+          src = symlinkJoin {
+            name = "build-script-and-include-dir-bar";
+            paths = [
+              (mkFile  "src/lib.rs" ''
+                fn main() { }
+              '')
+              (mkFile  "build.rs" ''
+                use std::path::PathBuf;
+                fn main() { println!("cargo:include-dir={}/src", std::env::current_dir().unwrap_or(PathBuf::from(".")).to_str().unwrap()); }
+              '')
+            ];
+          };
+        };
+      in {
+        crateName = "foo";
+        src = symlinkJoin {
+          name = "build-script-and-include-dir-foo";
+          paths = [
+            (mkFile  "src/main.rs" ''
+              fn main() { }
+            '')
+            (mkFile  "build.rs" ''
+              fn main() { assert!(std::env::var_os("DEP_BAR_INCLUDE_DIR").is_some()); }
+            '')
+          ];
+        };
+        buildDependencies = [ depCrate ];
+        dependencies = [ depCrate ];
+      };
       # Regression test for https://github.com/NixOS/nixpkgs/issues/74071
       # Whenevever a build.rs file is generating files those should not be overlayed onto the actual source dir
       buildRsOutDirOverlay = {
diff --git a/pkgs/desktops/deepin/deepin-icon-theme/default.nix b/pkgs/desktops/deepin/deepin-icon-theme/default.nix
index 464d6f19ceda..b56b219faffa 100644
--- a/pkgs/desktops/deepin/deepin-icon-theme/default.nix
+++ b/pkgs/desktops/deepin/deepin-icon-theme/default.nix
@@ -3,19 +3,19 @@
 , gtk3
 , xcursorgen
 , papirus-icon-theme
-, deepin
 , hicolor-icon-theme
+, deepin
 }:
 
 stdenv.mkDerivation rec {
   pname = "deepin-icon-theme";
-  version = "15.12.71";
+  version = "2020.05.21";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "12rzzjp906np95ckbxrd4mb345lm198wz69kxy48f8q1zg78q8iw";
+    sha256 = "0b1s6kf0q804zbbghly981wzacy1spi8168shf3x8w95rqj6463p";
   };
 
   nativeBuildInputs = [
@@ -30,22 +30,29 @@ stdenv.mkDerivation rec {
 
   dontDropIconThemeCache = true;
 
+  buildTargets = "all hicolor-links";
+
   postPatch = ''
-    patchShebangs tools/hicolor.links
-    patchShebangs tools/display_unused_links.sh
-    patchShebangs cursors-src/cursors/bitmaps/make.sh
-    patchShebangs cursors-src/render-cursors.sh
+    # fix: hicolor links should follow the deepin -> bloom naming change
+    # https://github.com/linuxdeepin/deepin-icon-theme/pull/24
+    substituteInPlace tools/hicolor.links --replace deepin bloom
 
-    # keep icon-theme.cache
-    sed -i -e 's|\(-rm -f .*/icon-theme.cache\)|# \1|g' Makefile
+    substituteInPlace Sea/index.theme --replace Inherits=deepin Inherits=bloom
   '';
 
-  buildTargets = "all hicolor-links";
-  installTargets = [ "install-icons" "install-cursors" ];
-  installFlags = [ "PREFIX=${placeholder "out"}" ];
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/icons
+    cp -vai bloom* Sea $out/share/icons
+
+    for theme in $out/share/icons/*; do
+      gtk-update-icon-cache $theme
+    done
+
+    cp -vai usr/share/icons/hicolor $out/share/icons
 
-  postInstall = ''
-    cp -a ./Sea ./usr/share/icons/hicolor "$out"/share/icons/
+    runHook postInstall
   '';
 
   passthru.updateScript = deepin.updateScript { inherit pname version src; };
diff --git a/pkgs/desktops/deepin/disomaster/default.nix b/pkgs/desktops/deepin/disomaster/default.nix
index 758c8ff76c3e..89cbe34ceaa2 100644
--- a/pkgs/desktops/deepin/disomaster/default.nix
+++ b/pkgs/desktops/deepin/disomaster/default.nix
@@ -10,13 +10,13 @@
 
 mkDerivation rec {
   pname = "disomaster";
-  version = "5.0.0";
+  version = "5.0.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "13144gq0mpbpclzxc79fb1kirh0vvi50jvjnbpla9s8lvh59xl62";
+    sha256 = "1kmhlnw37pdmlf7k9zry657xlhz40m9nzg361kiyisn186pfqpws";
   };
 
   nativeBuildInputs = [
@@ -32,11 +32,12 @@ mkDerivation rec {
 
   postPatch = ''
     searchHardCodedPaths  # debugging
-
-    sed -i '/^QMAKE_PKGCONFIG_DESTDIR/i QMAKE_PKGCONFIG_PREFIX = $$PREFIX' \
-       libdisomaster/libdisomaster.pro
   '';
 
+  qmakeFlags = [
+    "QMAKE_PKGCONFIG_PREFIX=${placeholder "out"}"
+  ];
+
   passthru.updateScript = deepin.updateScript { inherit pname version src; };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/deepin/go-lib/default.nix b/pkgs/desktops/deepin/go-lib/default.nix
index d45351fd6dcb..7129d912e30d 100644
--- a/pkgs/desktops/deepin/go-lib/default.nix
+++ b/pkgs/desktops/deepin/go-lib/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "go-lib";
-  version = "5.0.0";
+  version = "5.4.5";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0j1ik5hfrysqgync8cyv815cwyjn67k8n69x6llxdp39jli1k8q0";
+    sha256 = "021sq7nzvfwsa5ccsb3vdjk53m7cf693xm4wkdkrkf8pja6vz94q";
   };
 
   buildInputs = [
diff --git a/pkgs/desktops/deepin/udisks2-qt5/default.nix b/pkgs/desktops/deepin/udisks2-qt5/default.nix
index 385fedfc4780..0fcc2e9f9f71 100644
--- a/pkgs/desktops/deepin/udisks2-qt5/default.nix
+++ b/pkgs/desktops/deepin/udisks2-qt5/default.nix
@@ -8,13 +8,13 @@
 
 mkDerivation rec {
   pname = "udisks2-qt5";
-  version = "5.0.0";
+  version = "5.0.3";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0mqxm6ixzpbg0rr6ly2kvnkpag8gjza67ya7jv4i4rihbq1d0wzi";
+    sha256 = "0c87ks9glwhk4m2s7kf7mb43q011yi6l3qjq2ammmfqwl8xal69a";
   };
 
   nativeBuildInputs = [
@@ -27,11 +27,15 @@ mkDerivation rec {
   ];
 
   postPatch = ''
-    searchHardCodedPaths
+    searchHardCodedPaths # debugging
   '';
 
+  qmakeFlags = [
+    "QMAKE_PKGCONFIG_PREFIX=${placeholder "out"}"
+  ];
+
   postFixup = ''
-    searchHardCodedPaths $out
+    searchHardCodedPaths $out # debugging
   '';
 
   passthru.updateScript = deepin.updateScript { inherit pname version src; };
diff --git a/pkgs/desktops/enlightenment/0001-wrapped-setuid-executables.patch b/pkgs/desktops/enlightenment/0001-wrapped-setuid-executables.patch
new file mode 100644
index 000000000000..55a3501ef8b9
--- /dev/null
+++ b/pkgs/desktops/enlightenment/0001-wrapped-setuid-executables.patch
@@ -0,0 +1,114 @@
+From a1e54ae0097a3b6a0dabf4639fe8bc594c4f602d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com>
+Date: Thu, 14 May 2020 16:36:34 -0300
+Subject: [PATCH] wrapped setuid executables
+
+Installing programs with root ownership and setuid/setgid permissions
+in /nix/store is not allowed. They should be wrapped in the
+enlightenment service module, and the wrapped ones should be used
+instead.
+---
+ meson/meson_inst.sh           | 4 ++--
+ src/bin/e_auth.c              | 6 ++----
+ src/bin/e_fm/e_fm_main_eeze.c | 6 +++---
+ src/bin/e_start_main.c        | 2 +-
+ src/bin/e_system.c            | 2 +-
+ 5 files changed, 9 insertions(+), 11 deletions(-)
+
+diff --git a/meson/meson_inst.sh b/meson/meson_inst.sh
+index 321143e40..cd2399306 100755
+--- a/meson/meson_inst.sh
++++ b/meson/meson_inst.sh
+@@ -1,6 +1,6 @@
+ #!/bin/sh
+ 
+ for x in "$@" ; do
+-	chown root "$DESTDIR/$x"
+-	chmod a=rx,u+xs "$DESTDIR/$x"
++	echo TODO: chown root "$DESTDIR/$x"
++	echo TODO: chmod a=rx,u+xs "$DESTDIR/$x"
+ done
+diff --git a/src/bin/e_auth.c b/src/bin/e_auth.c
+index 8b0aa6641..63c68c4bc 100644
+--- a/src/bin/e_auth.c
++++ b/src/bin/e_auth.c
+@@ -12,8 +12,7 @@ e_auth_begin(char *passwd)
+    if (pwlen == 0) goto out;
+ 
+    snprintf(buf, sizeof(buf),
+-            "%s/enlightenment/utils/enlightenment_ckpasswd pw",
+-            e_prefix_lib_get());
++            "/run/wrappers/bin/enlightenment_ckpasswd pw");
+    exe = ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_WRITE, NULL);
+    if (!exe) goto out;
+    if (ecore_exe_send(exe, passwd, pwlen) != EINA_TRUE) goto out;
+@@ -47,8 +46,7 @@ e_auth_polkit_begin(char *passwd, const char *cookie, unsigned int uid)
+    if (pwlen == 0) goto out;
+ 
+    snprintf(buf, sizeof(buf),
+-            "%s/enlightenment/utils/enlightenment_ckpasswd pk",
+-            e_prefix_lib_get());
++            "/run/wrappers/bin/enlightenment_ckpasswd pk");
+    exe = ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_WRITE, NULL);
+    if (!exe) goto out;
+    snprintf(buf, sizeof(buf), "%s %u %s", cookie, uid, passwd);
+diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c
+index 9b10b3117..0f0aa5b53 100644
+--- a/src/bin/e_fm/e_fm_main_eeze.c
++++ b/src/bin/e_fm/e_fm_main_eeze.c
+@@ -318,7 +318,7 @@ _e_fm_main_eeze_volume_eject(E_Volume *v)
+      {
+         char buf[PATH_MAX];
+ 
+-        snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx));
++        snprintf(buf, sizeof(buf), "/run/wrappers/bin/enlightenment_sys");
+         eeze_disk_mount_wrapper_set(v->disk, buf);
+      }
+    v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_eject_timeout, v);
+@@ -512,7 +512,7 @@ _e_fm_main_eeze_volume_unmount(E_Volume *v)
+      {
+         char buf[PATH_MAX];
+ 
+-        snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx));
++        snprintf(buf, sizeof(buf), "/run/wrappers/bin/enlightenment_sys");
+         eeze_disk_mount_wrapper_set(v->disk, buf);
+      }
+    v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_unmount_timeout, v);
+@@ -548,7 +548,7 @@ _e_fm_main_eeze_volume_mount(E_Volume *v)
+      {
+         char buf2[PATH_MAX];
+ 
+-        snprintf(buf2, sizeof(buf2), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx));
++        snprintf(buf2, sizeof(buf2), "/run/wrappers/bin/enlightenment_sys");
+         eeze_disk_mount_wrapper_set(v->disk, buf2);
+      }
+    v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v);
+diff --git a/src/bin/e_start_main.c b/src/bin/e_start_main.c
+index 8534a7a8e..f0f0061a4 100644
+--- a/src/bin/e_start_main.c
++++ b/src/bin/e_start_main.c
+@@ -709,7 +709,7 @@ main(int argc, char **argv)
+             "E_ALERT_FONT_DIR=%s/data/fonts", eina_prefix_data_get(pfx));
+    putenv(buf2);
+    snprintf(buf3, sizeof(buf3),
+-            "E_ALERT_SYSTEM_BIN=%s/enlightenment/utils/enlightenment_system", eina_prefix_lib_get(pfx));
++            "E_ALERT_SYSTEM_BIN=/run/wrappers/bin/enlightenment_system");
+    putenv(buf3);
+ 
+    if ((valgrind_mode || valgrind_tool) &&
+diff --git a/src/bin/e_system.c b/src/bin/e_system.c
+index 1e7aabb64..5084933a1 100644
+--- a/src/bin/e_system.c
++++ b/src/bin/e_system.c
+@@ -132,7 +132,7 @@ _system_spawn(void)
+    else _respawn_count = 0;
+    if (_respawn_count > 5) return;
+    snprintf(buf, sizeof(buf),
+-            "%s/enlightenment/utils/enlightenment_system", e_prefix_lib_get());
++            "/run/wrappers/bin/enlightenment_system");
+    _system_exe = ecore_exe_pipe_run
+      (buf, ECORE_EXE_NOT_LEADER | ECORE_EXE_TERM_WITH_PARENT |
+       ECORE_EXE_PIPE_READ | ECORE_EXE_PIPE_WRITE, NULL);
+-- 
+2.26.2
+
diff --git a/pkgs/desktops/enlightenment/efl.nix b/pkgs/desktops/enlightenment/efl.nix
index 78f8f3966ed5..449c16e13baf 100644
--- a/pkgs/desktops/enlightenment/efl.nix
+++ b/pkgs/desktops/enlightenment/efl.nix
@@ -53,11 +53,11 @@
 
 stdenv.mkDerivation rec {
   pname = "efl";
-  version = "1.24.1";
+  version = "1.24.2";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/libs/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1xsbz5kl74cgzyzwmjy3p50m0iigvi53lklkp92v49k4j99zpak7";
+    sha256 = "0w3srvigg4kfi7xq76c7y4hnq5yr2gxrrsvlyj1g2wc1igz1vyg1";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/enlightenment/enlightenment.nix b/pkgs/desktops/enlightenment/enlightenment.nix
index 8ba0dffc8a4d..833a3ba29ac5 100644
--- a/pkgs/desktops/enlightenment/enlightenment.nix
+++ b/pkgs/desktops/enlightenment/enlightenment.nix
@@ -1,19 +1,29 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, alsaLib, bc,
-  bzip2, efl, gdbm, libXdmcp, libXrandr, libcap, libffi,
-  libpthreadstubs, libxcb, luajit, mesa, pam, pcre, xcbutilkeysyms,
-  xkeyboard_config,
+{ stdenv
+, fetchurl
+, meson
+, ninja
+, pkgconfig
+, gettext
+, alsaLib
+, acpid
+, bc
+, ddcutil
+, efl
+, pam
+, xkeyboard_config
+, udisks2
 
-  bluetoothSupport ? true, bluez5,
-  pulseSupport ? !stdenv.isDarwin, libpulseaudio,
+, bluetoothSupport ? true, bluez5
+, pulseSupport ? !stdenv.isDarwin, libpulseaudio
 }:
 
 stdenv.mkDerivation rec {
   pname = "enlightenment";
-  version = "0.23.1";
+  version = "0.24.0";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/apps/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0d1cyl07w9pvi2pf029kablazks2q9aislzl46b6fq5m1465jc75";
+    sha256 = "01053hxdmyjfb6gmz1pqmw0llrgc4356np515h5vsqcn59mhvfz7";
   };
 
   nativeBuildInputs = [
@@ -25,58 +35,35 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     alsaLib
-    bc  # for the Everything module calculator mode
-    bzip2
+    acpid # for systems with ACPI for lid events, AC/Battery plug in/out etc
+    bc # for the Everything module calculator mode
+    ddcutil # specifically libddcutil.so.2 for backlight control
     efl
-    gdbm
-    libXdmcp
-    libXrandr
-    libffi
-    libpthreadstubs
-    libxcb
-    luajit
-    mesa
     pam
-    pcre
-    xcbutilkeysyms
     xkeyboard_config
+    udisks2 # for removable storage mounting/unmounting
   ]
-  ++ stdenv.lib.optional stdenv.isLinux libcap
-  ++ stdenv.lib.optional bluetoothSupport bluez5
-  ++ stdenv.lib.optional pulseSupport libpulseaudio
+  ++ stdenv.lib.optional bluetoothSupport bluez5 # for bluetooth configuration and control
+  ++ stdenv.lib.optional pulseSupport libpulseaudio # for proper audio device control and redirection
   ;
 
   patches = [
-    # Some programs installed by enlightenment (to set the cpu frequency,
-    # for instance) need root ownership and setuid/setgid permissions, which
-    # are not allowed for files in /nix/store. Instead of allowing the
-    # installer to try to do this, the file $out/e-wrappers.nix is created,
-    # containing the needed configuration for wrapping those programs. It
-    # can be used in the enlightenment module. The idea is:
-    #
-    #  1) rename the original binary adding the extension .orig
-    #  2) wrap the renamed binary at /run/wrappers/bin/
-    #  3) create a new symbolic link using the original binary name (in the
-    #     original directory where enlightenment wants it) pointing to the
-    #     wrapper
-
-    ./enlightenment.suid-exes.patch
+    # Executables cannot be made setuid in nix store. They should be
+    # wrapped in the enlightenment service module, and the wrapped
+    # executables should be used instead.
+    ./0001-wrapped-setuid-executables.patch
   ];
 
   postPatch = ''
-    # edge_cc is a binary provided by efl and cannot be found at the directory
-    # given by e_prefix_bin_get(), which is $out/bin
-
-    substituteInPlace src/bin/e_import_config_dialog.c \
-      --replace "e_prefix_bin_get()" "\"${efl}/bin\""
-
     substituteInPlace src/modules/everything/evry_plug_calc.c \
       --replace "ecore_exe_pipe_run(\"bc -l\"" "ecore_exe_pipe_run(\"${bc}/bin/bc -l\""
   '';
 
-  mesonFlags = [ "-Dsystemdunitdir=lib/systemd/user" ];
+  mesonFlags = [
+    "-D systemdunitdir=lib/systemd/user"
+  ];
 
-  enableParallelBuilding = true;
+  passthru.providedSessions = [ "enlightenment" ];
 
   meta = with stdenv.lib; {
     description = "The Compositing Window Manager and Desktop Shell";
diff --git a/pkgs/desktops/enlightenment/enlightenment.suid-exes.patch b/pkgs/desktops/enlightenment/enlightenment.suid-exes.patch
deleted file mode 100644
index f53f6ffa7ca8..000000000000
--- a/pkgs/desktops/enlightenment/enlightenment.suid-exes.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- enlightenment-0.22.0.orig/meson/meson_inst.sh	2017-09-25 10:55:43.000000000 -0300
-+++ enlightenment-0.22.0/meson/meson_inst.sh	2017-11-15 08:31:03.336844920 -0200
-@@ -1,6 +1,19 @@
--#!/bin/sh
-+#!/bin/sh -x
-+
-+w="$out"/e-wrappers.nix
-+
-+echo "# Wrappers for programs installed by enlightenment that should be setuid" > $w
-+echo "" >> $w
-+echo "{" >> $w
-+echo "  security.wrappers = {" >> $w
- 
- for x in "$@" ; do
--	chown root "$DESTDIR/$x"
--	chmod a=rx,u+xs "$DESTDIR/$x"
-+	f="$DESTDIR$x";
-+	b=$(basename "$f".orig)
-+	mv -v "$f" "$f".orig
-+	ln -sv /run/wrappers/bin/"$b" "$f"
-+	echo "    \"$b\".source = \"$f.orig\";" >> $w
- done
-+
-+echo "  };" >> $w
-+echo "}" >> $w
diff --git a/pkgs/desktops/gnustep/back/default.nix b/pkgs/desktops/gnustep/back/default.nix
index 54ea8dcf4875..bf6441f6820a 100644
--- a/pkgs/desktops/gnustep/back/default.nix
+++ b/pkgs/desktops/gnustep/back/default.nix
@@ -8,13 +8,13 @@
 , libXmu
 }:
 let
-  version = "0.27.0";
+  version = "0.28.0";
 in
 gsmakeDerivation {
   name = "gnustep-back-${version}";
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-${version}.tar.gz";
-    sha256 = "0j400892ysxygh50i3918nn87vkxh15h892jwvphmkd34j8wdn9f";
+    sha256 = "1ynd27zwga17mp2qlym90k2xsypdvz24w6gyy2rfvmv0gkvlgrjr";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ cairo base gui freetype xlibsWrapper libXmu ];
diff --git a/pkgs/desktops/gnustep/base/default.nix b/pkgs/desktops/gnustep/base/default.nix
index 7017100565c6..deeca1d600f9 100644
--- a/pkgs/desktops/gnustep/base/default.nix
+++ b/pkgs/desktops/gnustep/base/default.nix
@@ -12,13 +12,13 @@
 , libiberty
 }:
 let
-  version = "1.26.0";
+  version = "1.27.0";
 in
 gsmakeDerivation {
   name = "gnustep-base-${version}";
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-${version}.tar.gz";
-    sha256 = "0ws16rwqx0qvqpyjsxbdylfpkgjr19nqc9i3b30wywqcqrkc12zn";
+    sha256 = "10xjrv5d443wzll6lf9y65p6v9kvx7xxklhsm1j05y93vwgzl0w8";
   };
   nativeBuildInputs = [ pkgconfig ];
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/gnustep/gorm/default.nix b/pkgs/desktops/gnustep/gorm/default.nix
index c977c61dd099..3817edad36bd 100644
--- a/pkgs/desktops/gnustep/gorm/default.nix
+++ b/pkgs/desktops/gnustep/gorm/default.nix
@@ -1,13 +1,13 @@
 { fetchurl, base, back, gsmakeDerivation, gui }:
 let
-  version = "1.2.24";
+  version = "1.2.26";
 in
 gsmakeDerivation {
   name = "gorm-${version}";
-  
+
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz";
-    sha256 = "1jw7vm5ia7ias1mm5if7vvvb66q50zwiqw0ksj5g14f11v8l61rf";
+    sha256 = "063f8rlz8py931hfrh95jxvr68bzs33bvckfigzbagp73n892jnw";
   };
   buildInputs = [ base back gui ];
 
diff --git a/pkgs/desktops/gnustep/gui/default.nix b/pkgs/desktops/gnustep/gui/default.nix
index 72d109b69796..e945af64d90c 100644
--- a/pkgs/desktops/gnustep/gui/default.nix
+++ b/pkgs/desktops/gnustep/gui/default.nix
@@ -1,12 +1,12 @@
 { gsmakeDerivation, fetchurl, base }:
 let
-  version = "0.27.0";
+  version = "0.28.0";
 in
 gsmakeDerivation {
   name = "gnustep-gui-${version}";
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-${version}.tar.gz";
-    sha256 = "1m6k3fa2ndxv0kl2fazi76mwa27gn5jyp24q0rk96f2djhsy94br";
+    sha256 = "05wk8kbl75qj0jgawgyv9sp98wsgz5vl1s0d51sads0p0kk2sv8z";
   };
   buildInputs = [ base ];
   patches = [ ./fixup-all.patch ];
diff --git a/pkgs/desktops/gnustep/make/default.nix b/pkgs/desktops/gnustep/make/default.nix
index 9b8692f0da5f..9b803be02512 100644
--- a/pkgs/desktops/gnustep/make/default.nix
+++ b/pkgs/desktops/gnustep/make/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, clang, which, libobjc }:
 
 let
-  version = "2.7.0";
+  version = "2.8.0";
 in
 
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-${version}.tar.gz";
-    sha256 = "1khiygfkz0zhh9b5nybn40g0xnnjxchk24n49hff1bwanszir84h";
+    sha256 = "0pfaylrr3xgn5026anmja4rv4l7nzzaqsrkxycyi0p4lvm12kklz";
   };
 
   configureFlags = [
diff --git a/pkgs/desktops/lumina/lumina/default.nix b/pkgs/desktops/lumina/lumina/default.nix
index fb5a0cbea5c1..1b30b8cdb107 100644
--- a/pkgs/desktops/lumina/lumina/default.nix
+++ b/pkgs/desktops/lumina/lumina/default.nix
@@ -1,18 +1,17 @@
-{ stdenv,
-  mkDerivation,
-  fetchFromGitHub,
-  desktop-file-utils,
-  fluxbox,
-  numlockx,
-  qmake,
-  qtbase,
-  qtmultimedia,
-  qtsvg,
-  qttools,
-  qtx11extras,
-  xorg,
-  xscreensaver,
-  wrapGAppsHook
+{ stdenv
+, mkDerivation
+, fetchFromGitHub
+, fluxbox
+, numlockx
+, qmake
+, qtbase
+, qtmultimedia
+, qtsvg
+, qttools
+, qtx11extras
+, xorg
+, xscreensaver
+, wrapGAppsHook
 }:
 
 mkDerivation rec {
@@ -33,19 +32,18 @@ mkDerivation rec {
   ];
 
   buildInputs = [
-    xorg.libxcb
-    xorg.libXcursor
-    xorg.libXdamage
-    xorg.xcbutilwm
-    xorg.xcbutilimage
+    fluxbox # window manager for Lumina DE
+    numlockx # required for changing state of numlock at login
     qtbase
-    qtsvg
     qtmultimedia
+    qtsvg
     qtx11extras
-    fluxbox
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libxcb
+    xorg.xcbutilimage
+    xorg.xcbutilwm
     xscreensaver
-    desktop-file-utils
-    numlockx
   ];
 
   patches = [
@@ -67,6 +65,12 @@ mkDerivation rec {
     # Fix location of fluxbox styles
     substituteInPlace src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp \
       --replace 'LOS::AppPrefix()+"share/fluxbox' "\"${fluxbox}/share/fluxbox"
+
+    # Fix desktop files
+    for i in $(grep -lir 'OnlyShowIn=Lumina' src-qt5); do
+      echo ===== $i
+      substituteInPlace $i --replace 'OnlyShowIn=Lumina' 'OnlyShowIn=X-Lumina'
+    done
   '';
 
   qmakeFlags = [
@@ -75,6 +79,8 @@ mkDerivation rec {
     "LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease"
   ];
 
+  passthru.providedSessions = [ "Lumina-DE" ];
+
   meta = with stdenv.lib; {
     description = "A lightweight, portable desktop environment";
     longDescription = ''
diff --git a/pkgs/development/compilers/ciao/default.nix b/pkgs/development/compilers/ciao/default.nix
new file mode 100644
index 000000000000..be39d81f5581
--- /dev/null
+++ b/pkgs/development/compilers/ciao/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "ciao";
+  version = "1.19.0";
+  src = fetchFromGitHub {
+    owner = "ciao-lang";
+    repo = "ciao";
+    rev = "v${version}";
+    sha256 = "03qzcb4ivgkiwdpw7a94dn74xqyxjwz5ilrr53rcblsh5ng299jp";
+  };
+
+  configurePhase = ''
+    ./ciao-boot.sh configure --instype=global --prefix=$prefix
+  '';
+
+  buildPhase = ''
+    ./ciao-boot.sh build
+  '';
+
+  installPhase = ''
+    ./ciao-boot.sh install
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://ciao-lang.org/";
+    description = "A general purpose, multi-paradigm programming language in the Prolog family";
+    license = licenses.lgpl21;
+    maintainers = with maintainers; [ suhr ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/coq-modules/mathcomp/extra.nix b/pkgs/development/coq-modules/mathcomp/extra.nix
index d37608658b4f..a53caac621c3 100644
--- a/pkgs/development/coq-modules/mathcomp/extra.nix
+++ b/pkgs/development/coq-modules/mathcomp/extra.nix
@@ -80,7 +80,7 @@ let
   ############################
   rec-mathcomp-extra-config = {
     initial = {
-      mathcomp-finmap = version: {
+      mathcomp-finmap = {version, coqPackages}: {
         meta = {
           description = "A finset and finmap library";
           repo = "finmap";
@@ -89,7 +89,7 @@ let
         passthru.compatibleCoqVersions = flip elem [ "8.8" "8.9" "8.10" "8.11" ];
       };
 
-      mathcomp-bigenough = version: {
+      mathcomp-bigenough = {version, coqPackages}: {
         meta = {
           description = "A small library to do epsilon - N reasonning";
           repo = "bigenough";
@@ -98,7 +98,7 @@ let
         passthru.compatibleCoqVersions = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" ];
       };
 
-      multinomials = version: {
+      multinomials = {version, coqPackages}: {
         buildInputs = [ which ];
         propagatedBuildInputs = with coqPackages;
           [ mathcomp.algebra mathcomp-finmap mathcomp-bigenough ];
@@ -110,7 +110,7 @@ let
         passthru.compatibleCoqVersions = flip elem [ "8.9" "8.10" "8.11" ];
       };
 
-      mathcomp-analysis = version: {
+      mathcomp-analysis = {version, coqPackages}: {
         propagatedBuildInputs = with coqPackages;
           [ mathcomp.field mathcomp-finmap mathcomp-bigenough ];
         meta = {
@@ -122,9 +122,9 @@ let
         passthru.compatibleCoqVersions = flip elem ["8.8" "8.9" "8.10" "8.11" ];
       };
 
-      mathcomp-real-closed = version: {
+      mathcomp-real-closed = {version, coqPackages}: {
         propagatedBuildInputs = with coqPackages;
-          [ coq mathcomp.field  mathcomp-bigenough ];
+          [ mathcomp.field mathcomp-bigenough ];
         meta = {
           description = "Mathematical Components Library on real closed fields";
           repo = "real-closed";
@@ -133,7 +133,7 @@ let
         passthru.compatibleCoqVersions = flip elem ["8.8" "8.9" "8.10" "8.11" ];
       };
 
-      coqeal = version: {
+      coqeal = {version, coqPackages}: {
         buildInputs = [ which ];
         propagatedBuildInputs = with coqPackages;
           [ mathcomp-algebra bignums paramcoq multinomials ];
@@ -240,7 +240,7 @@ let
           "1.10.0"       = v4 // {mathcomp-finmap = "1.4.0+coq-8.11";};
         };
         "8.10" = {
-          "1.11.0+beta1" = v5;
+          "1.11.0+beta1" = removeAttrs v5 ["coqeal"];
           "1.10.0"       = v4;
           "1.9.0"        = removeAttrs v3 ["coqeal"];
         };
@@ -260,8 +260,8 @@ let
         "8.7" = {
           "1.11.0+beta1" = removeAttrs v5 ["mathcomp-analysis"];
           "1.10.0"       = removeAttrs v4 ["mathcomp-analysis"];
-          "1.9.0"        = removeAttrs v3 ["coqeal"];
-          "1.8.0"        = removeAttrs v2 ["coqeal"];
+          "1.9.0"        = removeAttrs v3 ["coqeal" "mathcomp-analysis"];
+          "1.8.0"        = removeAttrs v2 ["coqeal" "mathcomp-analysis"];
           "1.7.0"        = removeAttrs v1 ["coqeal" "multinomials"];
         };
       };
@@ -318,13 +318,14 @@ let
   rec-mathcomp-extra-override = generic: old: let
     version = getVersion generic;
     package = old.meta.package or "math-comp-nix";
-    cfg = pkgUp ((mathcomp-extra-config.initial.${package} or (_: {})) version) old
+    cfg = pkgUp ((mathcomp-extra-config.initial.${package} or (_: {}))
+      { inherit version coqPackages; }) old
           // { inherit version; };
     fix = attrs: fix-attrs (pkgUp cfg attrs);
   in
     if isFunction generic then fix (generic cfg)
     else  if generic == null || generic == "" then fix {}
-    else  if isDerivation generic then fix generic.drvAttrs
+    else  if isDerivation generic then generic.drvAttrs
     else  if isAttrs generic then fix generic
     else  if generic == "broken" then fix { meta.broken = true; passthru.compatibleCoqVersions = _: false; }
     else  let fixedcfg = fix cfg; in fixedcfg // (
@@ -365,7 +366,7 @@ in
     mathcomp-real-closed  = current-mathcomp-extra "mathcomp-real-closed";
     coqeal                = current-mathcomp-extra "coqeal";
 
-    mathcomp-extra-fast    = map (pkg: current-mathcomp-extra pkg)
+    mathcomp-extra-fast    = map current-mathcomp-extra
       (attrNames (filterAttrs (pkg: config: !(config?slow && config.slow)) for-this));
-    mathcomp-extra-all    = map (pkg: current-mathcomp-extra pkg) (attrNames for-this);
+    mathcomp-extra-all    = map current-mathcomp-extra (attrNames for-this);
   }
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
index 089d5c4dcca0..68648e64b27c 100644
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -239,11 +239,11 @@ assert opensslExtlib -> gnutls == null && openssl != null && nonfreeLicensing;
 
 stdenv.mkDerivation rec {
   pname = "ffmpeg-full";
-  version = "4.2.2";
+  version = "4.2.3";
 
   src = fetchurl {
-    url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
-    sha256 = "176jn1lcdf0gk7sa5l2mv0faqp5dsqdhx1gqcrgymqhfmdal4xfb";
+    url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.bz2";
+    sha256 = "0pkrariwjv25k7inwshch7b5820ly3hsp991amyb60rkqc8v4zi1";
   };
 
   patches = [ ./prefer-libdav1d-over-libaom.patch ];
diff --git a/pkgs/development/libraries/ffmpeg/2.8.nix b/pkgs/development/libraries/ffmpeg/2.8.nix
index 3b3fc900edea..5d1f93a9e049 100644
--- a/pkgs/development/libraries/ffmpeg/2.8.nix
+++ b/pkgs/development/libraries/ffmpeg/2.8.nix
@@ -1,7 +1,7 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix (rec {
-  version = "${branch}.15";
+  version = "${branch}.16";
   branch = "2.8";
-  sha256 = "08gf493a1ici1rn6gda6bxkcsk3fqbs6pdr0phcifjkd3xn7yr1m";
+  sha256 = "0lfmfd6rhywis9rblkxv33rpwfga9xv261fq4cn3pkx1izih7ybk";
 } // args)
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index 31cb0477c21a..1a7c619a122c 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -5,8 +5,8 @@
 }@args:
 
 callPackage ./generic.nix (rec {
-  version = "4.2.2";
+  version = "4.2.3";
   branch = "4.2";
-  sha256 = "0p0f024rxrpk8pgmrprhfywq10rvdhrs0422wwcwlxkgqa3x285n";
+  sha256 = "0pkrariwjv25k7inwshch7b5820ly3hsp991amyb60rkqc8v4zi1";
   darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
 } // args)
diff --git a/pkgs/development/libraries/physics/cernlib/default.nix b/pkgs/development/libraries/physics/cernlib/default.nix
index c6a9835d13b6..8c4d688b697e 100644
--- a/pkgs/development/libraries/physics/cernlib/default.nix
+++ b/pkgs/development/libraries/physics/cernlib/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ gnumake imake makedepend ];
   sourceRoot = ".";
 
-  patches = [ ./patch ];
+  patches = [ ./patch.patch ];
 
   postPatch = ''
     substituteInPlace 2006/src/config/site.def \
diff --git a/pkgs/development/libraries/physics/cernlib/patch b/pkgs/development/libraries/physics/cernlib/patch.patch
index 2d75b6bf0f88..2d75b6bf0f88 100644
--- a/pkgs/development/libraries/physics/cernlib/patch
+++ b/pkgs/development/libraries/physics/cernlib/patch.patch
diff --git a/pkgs/development/libraries/physics/mcgrid/default.nix b/pkgs/development/libraries/physics/mcgrid/default.nix
deleted file mode 100644
index 27d8197a4362..000000000000
--- a/pkgs/development/libraries/physics/mcgrid/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, fetchurl, fastnlo, rivet, pkgconfig }:
-
-stdenv.mkDerivation rec {
-  pname = "mcgrid";
-  version = "2.0.2";
-
-  src = fetchurl {
-    url = "https://www.hepforge.org/archive/mcgrid/${pname}-${version}.tar.gz";
-    sha256 = "1mw82x7zqbdchnd6shj3dirsav5i2cndp2hjwb8a8xdh4xh9zvfy";
-  };
-
-  buildInputs = [ fastnlo rivet ];
-  propagatedNativeBuildInputs = [ pkgconfig ];
-
-  preConfigure = ''
-    substituteInPlace mcgrid.pc.in \
-      --replace "Cflags:" "Cflags: -std=c++11"
-  '';
-
-  CXXFLAGS = "-std=c++11";
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "A software package that provides access to the APPLgrid and fastNLO interpolation tools for Monte Carlo event generator codes, allowing for fast and flexible variations of scales, coupling parameters and PDFs in cutting edge leading- and next-to-leading-order QCD calculations";
-    license     = stdenv.lib.licenses.gpl3;
-    homepage    = "http://mcgrid.hepforge.org";
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ veprbl ];
-  };
-}
diff --git a/pkgs/development/libraries/physics/rivet/default.nix b/pkgs/development/libraries/physics/rivet/default.nix
index 9870fadf6ef6..bcf986346ac3 100644
--- a/pkgs/development/libraries/physics/rivet/default.nix
+++ b/pkgs/development/libraries/physics/rivet/default.nix
@@ -1,20 +1,16 @@
-{ stdenv, fetchurl, fetchpatch, fastjet, ghostscript, gsl, hepmc2, imagemagick, less, python2, texlive, yoda, which, makeWrapper }:
+{ stdenv, fetchurl, fastjet, fastjet-contrib, ghostscript, gsl, hepmc, imagemagick, less, python3, rsync, texlive, yoda, which, makeWrapper }:
 
 stdenv.mkDerivation rec {
   pname = "rivet";
-  version = "2.7.2";
+  version = "3.1.1";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/rivet/Rivet-${version}.tar.bz2";
-    sha256 = "1bxcb99a3l5d2gl93zgfzgw6v95kx1ss5045mkz3ciyw8w5nmb9l";
+    sha256 = "1cgr9jyfd9r7dwbk8fr3rys5dc74cmbx368441jvqngqymmb563w";
   };
 
   patches = [
     ./darwin.patch # configure relies on impure sw_vers to -Dunix
-    (fetchpatch {
-      url = "https://gitlab.com/hepcedar/rivet/commit/37bd34f52cce66946ebb311a8fe61bfc5f69cc00.diff";
-      sha256 = "0wj3ilpfq2gpc33bj3800l9vyvc9lrrlj1x9ss5qki0yiqd8i2aa";
-    })
   ];
 
   latex = texlive.combine { inherit (texlive)
@@ -32,26 +28,27 @@ stdenv.mkDerivation rec {
     xkeyval
     xstring
     ;};
-  buildInputs = [ hepmc2 imagemagick python2 latex makeWrapper ];
-  propagatedBuildInputs = [ fastjet ghostscript gsl yoda ];
+
+  nativeBuildInputs = [ rsync makeWrapper ];
+  buildInputs = [ hepmc imagemagick python3 latex python3.pkgs.yoda ];
+  propagatedBuildInputs = [ fastjet fastjet-contrib ];
 
   preConfigure = ''
-    substituteInPlace analyses/Makefile.in \
-      --replace "!(tmp)" ""
-    substituteInPlace bin/rivet-buildplugin.in \
+    substituteInPlace bin/rivet-build.in \
+      --replace 'num_jobs=$(getconf _NPROCESSORS_ONLN)' 'num_jobs=''${NIX_BUILD_CORES:-$(getconf _NPROCESSORS_ONLN)}' \
       --replace 'which' '"${which}/bin/which"' \
       --replace 'mycxx=' 'mycxx=${stdenv.cc}/bin/${if stdenv.cc.isClang or false then "clang++" else "g++"}  #' \
-      --replace 'mycxxflags="' "mycxxflags=\"-std=c++11 $NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK "
+      --replace 'mycxxflags="' "mycxxflags=\"$NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK "
   '';
 
   preInstall = ''
     substituteInPlace bin/make-plots \
       --replace '"which"' '"${which}/bin/which"' \
-      --replace '"latex"' '"${latex}/bin/latex"' \
-      --replace '"dvips"' '"${latex}/bin/dvips"' \
+      --replace '"latex"' '"'$latex'/bin/latex"' \
+      --replace '"dvips"' '"'$latex'/bin/dvips"' \
       --replace '"ps2pdf"' '"${ghostscript}/bin/ps2pdf"' \
       --replace '"ps2eps"' '"${ghostscript}/bin/ps2eps"' \
-      --replace '"kpsewhich"' '"${latex}/bin/kpsewhich"' \
+      --replace '"kpsewhich"' '"'$latex'/bin/kpsewhich"' \
       --replace '"convert"' '"${imagemagick.out}/bin/convert"'
     substituteInPlace bin/rivet \
       --replace '"less"' '"${less}/bin/less"'
@@ -62,9 +59,12 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-fastjet=${fastjet}"
-    "--with-hepmc=${hepmc2}"
     "--with-yoda=${yoda}"
-  ];
+  ] ++ (if stdenv.lib.versions.major hepmc.version == "3" then [
+    "--with-hepmc3=${hepmc}"
+  ] else [
+    "--with-hepmc=${hepmc}"
+  ]);
 
   enableParallelBuilding = true;
 
@@ -74,11 +74,11 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A framework for comparison of experimental measurements from high-energy particle colliders to theory predictions";
-    license     = stdenv.lib.licenses.gpl2;
+    license     = licenses.gpl3;
     homepage    = "https://rivet.hepforge.org";
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ veprbl ];
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ veprbl ];
   };
 }
diff --git a/pkgs/development/libraries/physics/yoda/default.nix b/pkgs/development/libraries/physics/yoda/default.nix
index ad7bc7f52f54..9d4d60949c19 100644
--- a/pkgs/development/libraries/physics/yoda/default.nix
+++ b/pkgs/development/libraries/physics/yoda/default.nix
@@ -1,22 +1,14 @@
-{ stdenv, fetchurl, fetchpatch, python, root, makeWrapper, zlib, withRootSupport ? false }:
+{ stdenv, fetchurl, python, root, makeWrapper, zlib, withRootSupport ? false }:
 
 stdenv.mkDerivation rec {
   pname = "yoda";
-  version = "1.7.7";
+  version = "1.8.2";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/yoda/YODA-${version}.tar.bz2";
-    sha256 = "1ki88rscnym0vjxpfgql8m1lrc7vm1jb9w4jhw9lvv3rk84lpdng";
+    sha256 = "1nqbv334iwdvbsc5bw8g936cxzc1hyzv9r8kjy4v124vrw8qqmc9";
   };
 
-  patches = [
-    # fixes "TypeError: expected bytes, str found" in writeYODA()
-    (fetchpatch {
-      url = "https://gitlab.com/hepcedar/yoda/commit/d2bbbe92912457f8a29b440cbfa0b39daf28ec34.diff";
-      sha256 = "1x60piswpxwak61r2sdclsc8pzi1fshpkjnxlyflsa1iap77vkq8";
-    })
-  ];
-
   nativeBuildInputs = with python.pkgs; [ cython makeWrapper ];
   buildInputs = [ python ]
     ++ (with python.pkgs; [ numpy matplotlib ])
@@ -27,6 +19,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     touch pyext/yoda/*.{pyx,pxd}
+    patchShebangs .
   '';
 
   postInstall = ''
@@ -37,6 +30,9 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
+  doInstallCheck = true;
+  installCheckTarget = "check";
+
   meta = {
     description = "Provides small set of data analysis (specifically histogramming) classes";
     license     = stdenv.lib.licenses.gpl3;
diff --git a/pkgs/development/libraries/science/biology/bpp-core/default.nix b/pkgs/development/libraries/science/biology/bpp-core/default.nix
new file mode 100644
index 000000000000..cfbe19d724be
--- /dev/null
+++ b/pkgs/development/libraries/science/biology/bpp-core/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "bpp-core";
+  version = "2.4.1";
+
+  src = fetchFromGitHub { owner = "BioPP";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0ma2cl677l7s0n5sffh66cy9lxp5wycm50f121g8rx85p95vkgwv";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$(pwd)/src
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/lib/cmake/bpp-core/bpp-core-targets.cmake  \
+      --replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
+  '';
+  # prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
+  # of form /nix/store/.../nix/store/.../include,
+  # probably due to relative vs absolute path issue
+
+  doCheck = !stdenv.isDarwin;
+
+  meta = with stdenv.lib; {
+    homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Main_Page";
+    changelog = "https://github.com/BioPP/bpp-core/blob/master/ChangeLog";
+    description = "C++ bioinformatics libraries and tools";
+    maintainers = with maintainers; [ bcdarwin ];
+    license = licenses.cecill20;
+  };
+}
diff --git a/pkgs/development/libraries/science/biology/bpp-phyl/default.nix b/pkgs/development/libraries/science/biology/bpp-phyl/default.nix
new file mode 100644
index 000000000000..8ff6ad433fb5
--- /dev/null
+++ b/pkgs/development/libraries/science/biology/bpp-phyl/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, cmake, bpp-core, bpp-seq }:
+
+stdenv.mkDerivation rec {
+  pname = "bpp-phyl";
+
+  inherit (bpp-core) version;
+
+  src = fetchFromGitHub {
+    owner = "BioPP";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "192zks6wyk903n06c2lbsscdhkjnfwms8p7jblsmk3lvjhdipb20";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ bpp-core bpp-seq ];
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$(pwd)/src
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/lib/cmake/${pname}/${pname}-targets.cmake  \
+      --replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
+  '';
+
+  doCheck = !stdenv.isDarwin;
+
+  meta = bpp-core.meta // {
+    changelog = "https://github.com/BioPP/bpp-phyl/blob/master/ChangeLog";
+  };
+}
diff --git a/pkgs/development/libraries/science/biology/bpp-popgen/default.nix b/pkgs/development/libraries/science/biology/bpp-popgen/default.nix
new file mode 100644
index 000000000000..af5d1d00d4d9
--- /dev/null
+++ b/pkgs/development/libraries/science/biology/bpp-popgen/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub, cmake, bpp-core, bpp-seq }:
+
+stdenv.mkDerivation rec {
+  pname = "bpp-popgen";
+
+  inherit (bpp-core) version;
+
+  src = fetchFromGitHub {
+    owner = "BioPP";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0bz0fhrq3dri6a0hvfc3zlvrns8mrzzlnicw5pyfa812gc1qwfvh";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ bpp-core bpp-seq ];
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$(pwd)/src
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/lib/cmake/${pname}/${pname}-targets.cmake  \
+      --replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
+  '';
+  # prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
+  # of form /nix/store/.../nix/store/.../include,
+  # probably due to relative vs absolute path issue
+
+  doCheck = !stdenv.isDarwin;
+
+  meta = bpp-core.meta // {
+    changelog = "https://github.com/BioPP/bpp-popgen/blob/master/ChangeLog";
+  };
+}
diff --git a/pkgs/development/libraries/science/biology/bpp-seq/default.nix b/pkgs/development/libraries/science/biology/bpp-seq/default.nix
new file mode 100644
index 000000000000..79fd0fe67716
--- /dev/null
+++ b/pkgs/development/libraries/science/biology/bpp-seq/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub, cmake, bpp-core }:
+
+stdenv.mkDerivation rec {
+  pname = "bpp-seq";
+
+  inherit (bpp-core) version;
+
+  src = fetchFromGitHub {
+    owner = "BioPP";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1mc09g8jswzsa4wgrfv59jxn15ys3q8s0227p1j838wkphlwn2qk";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ bpp-core ];
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$(pwd)/src
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/lib/cmake/${pname}/${pname}-targets.cmake  \
+      --replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
+  '';
+  # prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
+  # of form /nix/store/.../nix/store/.../include,
+  # probably due to relative vs absolute path issue
+
+  doCheck = !stdenv.isDarwin;
+
+  meta = bpp-core.meta // { 
+    changelog = "https://github.com/BioPP/bpp-seq/blob/master/ChangeLog";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/async_kernel/default.nix b/pkgs/development/ocaml-modules/async_kernel/default.nix
deleted file mode 100644
index 19b4d6213e49..000000000000
--- a/pkgs/development/ocaml-modules/async_kernel/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{stdenv, buildOcaml, fetchurl, core_kernel_p4,
- bin_prot_p4, fieldslib_p4, pa_ounit, pa_test,
- sexplib_p4, herelib}:
-
-buildOcaml rec {
-  name = "async_kernel";
-  version = "112.24.00";
-
-  minimumSupportedOcamlVersion = "4.02";
-
-  src = fetchurl {
-    url = "https://github.com/janestreet/async_kernel/archive/${version}.tar.gz";
-    sha256 = "95caf4249b55c5a6b38da56e314845e9ea9a0876eedd4cf0ddcb6c8dd660c6a0";
-  };
-
-  buildInputs = [ pa_test pa_ounit ];
-  propagatedBuildInputs = [ core_kernel_p4 bin_prot_p4 fieldslib_p4 herelib sexplib_p4 ];
-
-  meta = with stdenv.lib; {
-    homepage = "https://github.com/janestreet/async_kernel";
-    description = "Jane Street Capital's asynchronous execution library (core) ";
-    license = licenses.asl20;
-    maintainers = [ maintainers.ericbmerritt ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/janestreet/async-kernel.nix b/pkgs/development/ocaml-modules/janestreet/async-kernel.nix
deleted file mode 100644
index 6e8a5cae6354..000000000000
--- a/pkgs/development/ocaml-modules/janestreet/async-kernel.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{stdenv, buildOcamlJane, core_kernel,
- bin_prot, fieldslib,
- sexplib, herelib}:
-
-buildOcamlJane {
-  name = "async_kernel";
-  hash = "1n6ifbrq6q6hq8bxh6b9vhg11mv9r6jgp1b7vfw7mh5s2nrd4b60";
-  propagatedBuildInputs = [ core_kernel bin_prot fieldslib herelib sexplib ];
-
-  meta = with stdenv.lib; {
-    homepage = "https://github.com/janestreet/async_kernel";
-    description = "Jane Street Capital's asynchronous execution library (core) ";
-    license = licenses.asl20;
-    maintainers = [ maintainers.maurer maintainers.ericbmerritt ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/lens/default.nix b/pkgs/development/ocaml-modules/lens/default.nix
index 4a9706b4ba83..c26b3dbe7374 100644
--- a/pkgs/development/ocaml-modules/lens/default.nix
+++ b/pkgs/development/ocaml-modules/lens/default.nix
@@ -1,4 +1,8 @@
-{ lib, fetchzip, ppx_deriving, ppxfind, buildDunePackage }:
+{ lib, ocaml, fetchzip, ppx_deriving, ppxfind, buildDunePackage }:
+
+if lib.versionAtLeast ocaml.version "4.10"
+then throw "lens is not available for OCaml ${ocaml.version}"
+else
 
 buildDunePackage rec {
   pname = "lens";
diff --git a/pkgs/development/ocaml-modules/sodium/default.nix b/pkgs/development/ocaml-modules/sodium/default.nix
index ee9b90d4603f..5d8154565806 100644
--- a/pkgs/development/ocaml-modules/sodium/default.nix
+++ b/pkgs/development/ocaml-modules/sodium/default.nix
@@ -1,5 +1,9 @@
 { stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, ctypes, libsodium }:
 
+if stdenv.lib.versionAtLeast ocaml.version "4.10"
+then throw "sodium is not available for OCaml ${ocaml.version}"
+else
+
 stdenv.mkDerivation rec {
   pname = "ocaml${ocaml.version}-sodium";
   version = "0.6.0";
diff --git a/pkgs/development/python-modules/csscompressor/default.nix b/pkgs/development/python-modules/csscompressor/default.nix
index 50f20164f646..a7256a54e3be 100644
--- a/pkgs/development/python-modules/csscompressor/default.nix
+++ b/pkgs/development/python-modules/csscompressor/default.nix
@@ -14,6 +14,6 @@ buildPythonPackage rec {
     description = "A python port of YUI CSS Compressor";
     homepage = "https://pypi.python.org/pypi/csscompressor";
     license = stdenv.lib.licenses.bsd3;
-    maintainers = [stdenv.lib.maintainers.ahmedtd];
+    maintainers = [];
   };
 }
diff --git a/pkgs/development/python-modules/elementpath/default.nix b/pkgs/development/python-modules/elementpath/default.nix
index 09d4cc6024e4..2ab878b081c3 100644
--- a/pkgs/development/python-modules/elementpath/default.nix
+++ b/pkgs/development/python-modules/elementpath/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27 }:
 
 buildPythonPackage rec {
-  version = "1.4.4";
+  version = "1.4.5";
   pname = "elementpath";
   disabled = isPy27; # uses incompatible class syntax
 
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "v${version}";
-    sha256 = "1z7403ykfdb2zy6g4qcbjm87ibpi0k59dgmz1px7z7wy5p2vknxw";
+    sha256 = "1hqvi7ibhdz812dsjbyyz3rysc6242hi1k9187wwnjmilbbngi3c";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/pkgs/development/python-modules/htmlmin/default.nix b/pkgs/development/python-modules/htmlmin/default.nix
index ee8a83a098c9..ccbc157837c3 100644
--- a/pkgs/development/python-modules/htmlmin/default.nix
+++ b/pkgs/development/python-modules/htmlmin/default.nix
@@ -14,6 +14,6 @@ buildPythonPackage rec {
     description = "A configurable HTML Minifier with safety features";
     homepage = "https://pypi.python.org/pypi/htmlmin";
     license = stdenv.lib.licenses.bsd3;
-    maintainers = [stdenv.lib.maintainers.ahmedtd];
+    maintainers = [];
   };
 }
diff --git a/pkgs/development/python-modules/identify/default.nix b/pkgs/development/python-modules/identify/default.nix
index e66509fbae5a..19ad7317ce41 100644
--- a/pkgs/development/python-modules/identify/default.nix
+++ b/pkgs/development/python-modules/identify/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "1.4.15";
+  version = "1.4.16";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1w6vy3nk28xhnamnmh7ddawprmb1ri2yw5s9lphmpq2hpfbqvh93";
+    sha256 = "19zk3qmcf0afbcbfnj7cmmgr47pxhjqwa1bfdc3fp60yy10kvbgr";
   };
 
   # Tests not included in PyPI tarball
diff --git a/pkgs/development/python-modules/jellyfish/default.nix b/pkgs/development/python-modules/jellyfish/default.nix
index 45f427017fc8..9f4b57ba8979 100644
--- a/pkgs/development/python-modules/jellyfish/default.nix
+++ b/pkgs/development/python-modules/jellyfish/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "jellyfish";
-  version = "0.7.2";
+  version = "0.8.2";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "11jja4wlzcr2pwvp3blj1jg6570zr0mpcm3nzhkbkdrbgq6wa2fb";
+    sha256 = "02q3d9b933hf8lyvg7w7lgmhij8bjs748vjmsfxhabai04a796d4";
   };
 
   checkInputs = [ pytest unicodecsv ];
diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix
index 42621493d243..47a60acaa0af 100644
--- a/pkgs/development/python-modules/phonenumbers/default.nix
+++ b/pkgs/development/python-modules/phonenumbers/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "phonenumbers";
-  version = "8.12.2";
+  version = "8.12.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "000vhxjlgvs0w3vywlgx1kq8wj0wk07ybnsdn1qwbamd06msvbb1";
+    sha256 = "021dc6kdzqh9kkrsbs08x3ibmfm4xr9hqvdnsji6l0knw1zrkia6";
   };
 
   meta = {
diff --git a/pkgs/development/python-modules/plexapi/default.nix b/pkgs/development/python-modules/plexapi/default.nix
index a387bc061146..c41aaf6b4d32 100644
--- a/pkgs/development/python-modules/plexapi/default.nix
+++ b/pkgs/development/python-modules/plexapi/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "PlexAPI";
-  version = "3.4.0";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "pkkid";
     repo = "python-plexapi";
     rev = version;
-    sha256 = "1y6mynsvkm9n2n927x8az9ch4blrjja7im9x7iyfrxahqgz0km77";
+    sha256 = "1lzp3367hmcpqwbkp4ckdv6hv37knwnwya88jicwl1smznpmjdfv";
   };
 
   propagatedBuildInputs = [ requests tqdm websocket_client ];
diff --git a/pkgs/development/python-modules/pyenchant/default.nix b/pkgs/development/python-modules/pyenchant/default.nix
index 91626bd5e555..1d2686ec2992 100644
--- a/pkgs/development/python-modules/pyenchant/default.nix
+++ b/pkgs/development/python-modules/pyenchant/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "pyenchant";
-  version = "3.0.1";
+  version = "3.1.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0nfmckqm45fbfz795qw5hgvygdxgxchdiwp3kmm1k05z99j6mlhv";
+    sha256 = "14is5p40f516plzccwg6yf51zkja38abw46kybzwgyy94phr8i9b";
   };
 
   propagatedBuildInputs = [ enchant2 ];
diff --git a/pkgs/development/python-modules/pysmb/default.nix b/pkgs/development/python-modules/pysmb/default.nix
index 07de522f7962..605c13c0c9c3 100644
--- a/pkgs/development/python-modules/pysmb/default.nix
+++ b/pkgs/development/python-modules/pysmb/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "pysmb";
-  version = "1.1.28";
+  version = "1.2.1";
 
   src = fetchPypi {
     inherit pname version;
     format = "setuptools";
     extension = "zip";
-    sha256 = "0x44yq440c1j3xnl7qigz2fpfzhx68n9mbj7ps7rd0kj0plcmr2q";
+    sha256 = "1gkh28m74rf0ic51cxahiyw4sfz3sp3dz0iggsksi917ryyinwmb";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/update_checker/default.nix b/pkgs/development/python-modules/update_checker/default.nix
index 913c8903e9ea..e319422ce7b3 100644
--- a/pkgs/development/python-modules/update_checker/default.nix
+++ b/pkgs/development/python-modules/update_checker/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "update_checker";
-  version = "0.16";
+  version = "0.17";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1f38l40d32dm0avcidf3dmikma8z0la84yngj88v4xygzi399qvh";
+    sha256 = "0qhfn5fjjab50gbnj2053wdfppzkydqgapfz35ymrm1vysvqvvrd";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/w3lib/default.nix b/pkgs/development/python-modules/w3lib/default.nix
index c0d2d744f096..a37f786c018d 100644
--- a/pkgs/development/python-modules/w3lib/default.nix
+++ b/pkgs/development/python-modules/w3lib/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "w3lib";
-  version = "1.21.0";
+  version = "1.22.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "05a3fxi4f43n0dc87lizsy2h84dxvqjy0q6rhkyabdbhypz5864b";
+    sha256 = "1pv02lvvmgz2qb61vz1jkjc04fgm4hpfvaj5zm4i3mjp64hd1mha";
   };
 
   buildInputs = [ six pytest ];
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 4aadb9810815..3cd716e11dea 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl }:
 
 let
-  version = "12.10.2";
+  version = "13.0.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-x86_64.tar.xz";
-    sha256 = "1lw0f3svzsvcw1rkc8z60nrl2jqjj8ciqlw5icazf6ikqbqmf660";
+    sha256 = "0ii63xal5cx4mcy87wpdyvprpkk11i2hdl9cifaf3i1l3kgm3arv";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz";
-    sha256 = "1hawdihnwk9p06fa3ym5q6b4sv6pp9095nimdy5myi6y88yj1rv2";
+    sha256 = "04h17117j5ib7h87jzsrs47i5igswnh6nbn2i2d0ansxdk4a8g31";
   };
 in
 buildGoPackage rec {
@@ -29,7 +29,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "1r82xj4krdd51540bhr2wjhp6sdr5c2favnnw8nl26vnmwiqpd3k";
+    sha256 = "07ywv99df4krnsb4fb2hwxy84214isps331xdpqyf0j3fhgjqmz9";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/pkgs/games/taisei/0001-lto-fix.patch b/pkgs/games/taisei/0001-lto-fix.patch
new file mode 100644
index 000000000000..eed7b845f53c
--- /dev/null
+++ b/pkgs/games/taisei/0001-lto-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index 80aa58d..c7e9d0a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -17,7 +17,7 @@ project('taisei', 'c',
+         # You may want to change these for a debug build dir
+         'buildtype=release',
+         'strip=true',
+-        'b_lto=true',
++        'b_lto=false',
+         'b_ndebug=if-release',
+     ]
+ )
diff --git a/pkgs/games/taisei/default.nix b/pkgs/games/taisei/default.nix
new file mode 100644
index 000000000000..c3b76b4980e3
--- /dev/null
+++ b/pkgs/games/taisei/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl
+# Build depends
+, docutils, meson, ninja, pkgconfig, python3
+# Runtime depends
+, glfw, SDL2, SDL2_mixer
+, freetype, libpng, libwebp, libzip, zlib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "taisei";
+  version = "1.3";
+
+  src = fetchurl {
+    url = "https://github.com/taisei-project/${pname}/releases/download/v${version}/${pname}-v${version}.tar.xz";
+    sha256 = "0fl41cbjr8h6gmhc27l44cfkcnhg5c10b4fcfvnfsbjii8gdwvjd";
+  };
+
+  nativeBuildInputs = [
+    docutils meson ninja pkgconfig python3
+  ];
+
+  buildInputs = [
+    glfw SDL2 SDL2_mixer
+    freetype libpng libwebp libzip zlib
+  ];
+
+  patches = [ ./0001-lto-fix.patch ];
+
+  preConfigure = ''
+    patchShebangs .
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A free and open-source Touhou Project clone and fangame";
+    longDescription = ''
+      Taisei is an open clone of the Tōhō Project series. Tōhō is a one-man
+      project of shoot-em-up games set in an isolated world full of Japanese
+      folklore.
+    '';
+    homepage = https://taisei-project.org/;
+    license = [ licenses.mit licenses.cc-by-40 ];
+    maintainers = [ maintainers.lambda-11235 ];
+    platforms = platforms.all;
+  };
+}
+
diff --git a/pkgs/servers/http/jetty/default.nix b/pkgs/servers/http/jetty/default.nix
index 49c11bf462e6..4f34fde1856c 100644
--- a/pkgs/servers/http/jetty/default.nix
+++ b/pkgs/servers/http/jetty/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jetty";
-  version = "9.4.26.v20200117";
+  version = "9.4.29.v20200521";
   src = fetchurl {
     url = "https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/${version}/jetty-distribution-${version}.tar.gz";
     name = "jetty-distribution-${version}.tar.gz";
-    sha256 = "0wgh7vap0h6gkz6pk8iycvhwmybyxv25ssinwxxrnzk8jg25g89i";
+    sha256 = "0ir7rzr5479k7whgy0fx6bjj7x978ghx4fxc64i39hg2kzcp5dbi";
   };
 
   phases = [ "unpackPhase" "installPhase" ];
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index 23a8bdc60140..aa1a31bf8c07 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "7.0.0";
+  version = "7.0.1";
 
   excludedPackages = [ "release_publisher" ];
 
@@ -10,12 +10,12 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "1xicqsn8qg2wwp7p3p3643vqvpp6fbzpx1x7w0mgv9l2va9px8mq";
+    sha256 = "0b99lcffgd5yq2q9w38bc4qkljpm6k2z1vyix8qgpvnw50dxx2fz";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "1x6b61rsflj9dbj0r9wj1wgp4lqwa1q21s3x7ws50scqhq1m3xmk";
+    sha256 = "0vq4xy0050ajymlld1scg7lywmm6l6b619y4r7x5ql9jv1nx4apb";
   };
 
   vendorSha256 = "00xvpxhnvxdf030978paywl794mlmgqzd94b64hh67946acnbjcl";
diff --git a/pkgs/shells/zsh/pure-prompt/default.nix b/pkgs/shells/zsh/pure-prompt/default.nix
new file mode 100644
index 000000000000..5696ed61b975
--- /dev/null
+++ b/pkgs/shells/zsh/pure-prompt/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  pname = "pure-prompt";
+  version = "1.12.0";
+
+  src = fetchFromGitHub {
+    owner = "sindresorhus";
+    repo = "pure";
+    rev = "v${version}";
+    sha256 = "1h04z7rxmca75sxdfjgmiyf1b5z2byfn6k4srls211l0wnva2r5y";
+  };
+
+  installPhase = ''
+    OUTDIR="$out/share/zsh/site-functions"
+    mkdir -p "$OUTDIR"
+    cp pure.zsh "$OUTDIR/prompt_pure_setup"
+    cp async.zsh "$OUTDIR/async"
+  '';
+
+  meta = {
+    description = "Pretty, minimal and fast ZSH prompt";
+    homepage = https://github.com/sindresorhus/pure;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ pacien pablovsky ];
+  };
+}
diff --git a/pkgs/shells/zsh/zsh-prezto/default.nix b/pkgs/shells/zsh/zsh-prezto/default.nix
index ec6288a6e63c..9f7a7f187042 100644
--- a/pkgs/shells/zsh/zsh-prezto/default.nix
+++ b/pkgs/shells/zsh/zsh-prezto/default.nix
@@ -1,11 +1,13 @@
-{ stdenv, fetchgit }:
+{ stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation {
-  name = "zsh-prezto-2019-03-18";
-  src = fetchgit {
-    url = "https://github.com/sorin-ionescu/prezto";
-    rev = "1f4601e44c989b90dc7314b151891fa60a101251";
-    sha256 = "1dcd5r7pc4biiplm0lh7yca0h6hs0xpaq9dwaarmfsh9wrd68350";
+stdenv.mkDerivation rec {
+  pname = "zsh-prezto";
+  version = "2020-05-20";
+  src = fetchFromGitHub {
+    owner = "sorin-ionescu";
+    repo = "prezto";
+    rev = "793f239a5e38ef2c4b76a4955bb734520303e8c4";
+    sha256 = "0xhdl1g0rvlikq6qxh6cwp6wsrgmw4l1rmmq5xpc7wl6dyh35yri";
     fetchSubmodules = true;
   };
   buildPhase = ''
diff --git a/pkgs/tools/admin/fastlane/Gemfile.lock b/pkgs/tools/admin/fastlane/Gemfile.lock
index c8c7a0117e57..1bfce8606532 100644
--- a/pkgs/tools/admin/fastlane/Gemfile.lock
+++ b/pkgs/tools/admin/fastlane/Gemfile.lock
@@ -1,48 +1,65 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    CFPropertyList (3.0.0)
-    addressable (2.6.0)
-      public_suffix (>= 2.0.2, < 4.0)
+    CFPropertyList (3.0.2)
+    addressable (2.7.0)
+      public_suffix (>= 2.0.2, < 5.0)
     atomos (0.1.3)
-    babosa (1.0.2)
-    claide (1.0.2)
+    aws-eventstream (1.1.0)
+    aws-partitions (1.320.0)
+    aws-sdk-core (3.96.1)
+      aws-eventstream (~> 1, >= 1.0.2)
+      aws-partitions (~> 1, >= 1.239.0)
+      aws-sigv4 (~> 1.1)
+      jmespath (~> 1.0)
+    aws-sdk-kms (1.31.0)
+      aws-sdk-core (~> 3, >= 3.71.0)
+      aws-sigv4 (~> 1.1)
+    aws-sdk-s3 (1.66.0)
+      aws-sdk-core (~> 3, >= 3.96.1)
+      aws-sdk-kms (~> 1)
+      aws-sigv4 (~> 1.1)
+    aws-sigv4 (1.1.3)
+      aws-eventstream (~> 1.0, >= 1.0.2)
+    babosa (1.0.3)
+    claide (1.0.3)
     colored (1.2)
     colored2 (3.1.2)
     commander-fastlane (4.4.6)
       highline (~> 1.7.2)
     declarative (0.0.10)
     declarative-option (0.1.0)
-    digest-crc (0.4.1)
+    digest-crc (0.5.1)
     domain_name (0.5.20190701)
       unf (>= 0.0.5, < 1.0.0)
-    dotenv (2.7.4)
+    dotenv (2.7.5)
     emoji_regex (1.0.1)
-    excon (0.65.0)
-    faraday (0.15.4)
+    excon (0.73.0)
+    faraday (1.0.1)
       multipart-post (>= 1.2, < 3)
     faraday-cookie_jar (0.0.6)
       faraday (>= 0.7.4)
       http-cookie (~> 1.0.0)
-    faraday_middleware (0.13.1)
-      faraday (>= 0.7.4, < 1.0)
-    fastimage (2.1.5)
-    fastlane (2.128.1)
+    faraday_middleware (1.0.0)
+      faraday (~> 1.0)
+    fastimage (2.1.7)
+    fastlane (2.148.1)
       CFPropertyList (>= 2.3, < 4.0.0)
       addressable (>= 2.3, < 3.0.0)
+      aws-sdk-s3 (~> 1.0)
       babosa (>= 1.0.2, < 2.0.0)
       bundler (>= 1.12.0, < 3.0.0)
       colored
       commander-fastlane (>= 4.4.6, < 5.0.0)
       dotenv (>= 2.1.1, < 3.0.0)
       emoji_regex (>= 0.1, < 2.0)
-      excon (>= 0.45.0, < 1.0.0)
-      faraday (~> 0.9)
+      excon (>= 0.71.0, < 1.0.0)
+      faraday (>= 0.17, < 2.0)
       faraday-cookie_jar (~> 0.0.6)
-      faraday_middleware (~> 0.9)
+      faraday_middleware (>= 0.13.1, < 2.0)
       fastimage (>= 2.1.0, < 3.0.0)
       gh_inspector (>= 1.1.2, < 2.0.0)
-      google-api-client (>= 0.21.2, < 0.24.0)
+      google-api-client (>= 0.37.0, < 0.39.0)
       google-cloud-storage (>= 1.15.0, < 2.0.0)
       highline (>= 1.7.2, < 2.0.0)
       json (< 3.0.0)
@@ -52,7 +69,7 @@ GEM
       multipart-post (~> 2.0.0)
       plist (>= 3.1.0, < 4.0.0)
       public_suffix (~> 2.0.0)
-      rubyzip (>= 1.2.2, < 2.0.0)
+      rubyzip (>= 1.3.0, < 2.0.0)
       security (= 0.1.3)
       simctl (~> 1.6.3)
       slack-notifier (>= 2.0.0, < 3.0.0)
@@ -61,51 +78,54 @@ GEM
       tty-screen (>= 0.6.3, < 1.0.0)
       tty-spinner (>= 0.8.0, < 1.0.0)
       word_wrap (~> 1.0.0)
-      xcodeproj (>= 1.8.1, < 2.0.0)
+      xcodeproj (>= 1.13.0, < 2.0.0)
       xcpretty (~> 0.3.0)
       xcpretty-travis-formatter (>= 0.0.3)
     gh_inspector (1.1.3)
-    google-api-client (0.23.9)
+    google-api-client (0.38.0)
       addressable (~> 2.5, >= 2.5.1)
-      googleauth (>= 0.5, < 0.7.0)
+      googleauth (~> 0.9)
       httpclient (>= 2.8.1, < 3.0)
-      mime-types (~> 3.0)
+      mini_mime (~> 1.0)
       representable (~> 3.0)
       retriable (>= 2.0, < 4.0)
-      signet (~> 0.9)
-    google-cloud-core (1.3.0)
+      signet (~> 0.12)
+    google-cloud-core (1.5.0)
       google-cloud-env (~> 1.0)
-    google-cloud-env (1.2.0)
-      faraday (~> 0.11)
-    google-cloud-storage (1.16.0)
+      google-cloud-errors (~> 1.0)
+    google-cloud-env (1.3.1)
+      faraday (>= 0.17.3, < 2.0)
+    google-cloud-errors (1.0.0)
+    google-cloud-storage (1.26.1)
+      addressable (~> 2.5)
       digest-crc (~> 0.4)
-      google-api-client (~> 0.23)
+      google-api-client (~> 0.33)
       google-cloud-core (~> 1.2)
-      googleauth (>= 0.6.2, < 0.10.0)
-    googleauth (0.6.7)
-      faraday (~> 0.12)
+      googleauth (~> 0.9)
+      mini_mime (~> 1.0)
+    googleauth (0.12.0)
+      faraday (>= 0.17.3, < 2.0)
       jwt (>= 1.4, < 3.0)
       memoist (~> 0.16)
       multi_json (~> 1.11)
       os (>= 0.9, < 2.0)
-      signet (~> 0.7)
+      signet (~> 0.14)
     highline (1.7.10)
     http-cookie (1.0.3)
       domain_name (~> 0.5)
     httpclient (2.8.3)
-    json (2.2.0)
+    jmespath (1.4.0)
+    json (2.3.0)
     jwt (2.1.0)
-    memoist (0.16.0)
-    mime-types (3.2.2)
-      mime-types-data (~> 3.2015)
-    mime-types-data (3.2019.0331)
-    mini_magick (4.9.5)
-    multi_json (1.13.1)
+    memoist (0.16.2)
+    mini_magick (4.10.1)
+    mini_mime (1.0.2)
+    multi_json (1.14.1)
     multi_xml (0.6.0)
     multipart-post (2.0.0)
     nanaimo (0.2.6)
     naturally (2.2.0)
-    os (1.0.1)
+    os (1.1.0)
     plist (3.5.0)
     public_suffix (2.0.5)
     representable (3.0.4)
@@ -114,31 +134,31 @@ GEM
       uber (< 0.2.0)
     retriable (3.1.2)
     rouge (2.0.7)
-    rubyzip (1.2.3)
+    rubyzip (1.3.0)
     security (0.1.3)
-    signet (0.11.0)
+    signet (0.14.0)
       addressable (~> 2.3)
-      faraday (~> 0.9)
+      faraday (>= 0.17.3, < 2.0)
       jwt (>= 1.5, < 3.0)
       multi_json (~> 1.10)
-    simctl (1.6.5)
+    simctl (1.6.8)
       CFPropertyList
       naturally
     slack-notifier (2.3.2)
     terminal-notifier (2.0.0)
     terminal-table (1.8.0)
       unicode-display_width (~> 1.1, >= 1.1.1)
-    tty-cursor (0.7.0)
-    tty-screen (0.7.0)
-    tty-spinner (0.9.1)
+    tty-cursor (0.7.1)
+    tty-screen (0.7.1)
+    tty-spinner (0.9.3)
       tty-cursor (~> 0.7)
     uber (0.1.0)
     unf (0.1.4)
       unf_ext
-    unf_ext (0.0.7.6)
-    unicode-display_width (1.6.0)
+    unf_ext (0.0.7.7)
+    unicode-display_width (1.7.0)
     word_wrap (1.0.0)
-    xcodeproj (1.11.0)
+    xcodeproj (1.16.0)
       CFPropertyList (>= 2.3.3, < 4.0)
       atomos (~> 0.1.3)
       claide (>= 1.0.2, < 2.0)
@@ -156,4 +176,4 @@ DEPENDENCIES
   fastlane
 
 BUNDLED WITH
-   2.1.4
+   2.1.4
\ No newline at end of file
diff --git a/pkgs/tools/admin/fastlane/default.nix b/pkgs/tools/admin/fastlane/default.nix
index 01f2d2374072..1093ab9df028 100644
--- a/pkgs/tools/admin/fastlane/default.nix
+++ b/pkgs/tools/admin/fastlane/default.nix
@@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
     maintainers     = with maintainers; [
       peterromfeldhk
       nicknovitski
+      shahrukh330
     ];
   };
 }
diff --git a/pkgs/tools/admin/fastlane/gemset.nix b/pkgs/tools/admin/fastlane/gemset.nix
index 2511822a9fc9..e289bc6f17d2 100644
--- a/pkgs/tools/admin/fastlane/gemset.nix
+++ b/pkgs/tools/admin/fastlane/gemset.nix
@@ -5,12 +5,14 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
+      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
       type = "gem";
     };
-    version = "2.6.0";
+    version = "2.7.0";
   };
   atomos = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "17vq6sjyswr5jfzwdccw748kgph6bdw30bakwnn6p8sl4hpv4hvx";
@@ -18,31 +20,103 @@
     };
     version = "0.1.3";
   };
+  aws-eventstream = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r0pn66yqrdkrfdin7qdim0yj2x75miyg4wp6mijckhzhrjb7cv5";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  aws-partitions = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "011ch85shkb3i3w16jymjx19dmxcgb6jrl6dzwqr4bx16ikdyclc";
+      type = "gem";
+    };
+    version = "1.320.0";
+  };
+  aws-sdk-core = {
+    dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jdnzynjrpp2jyg8vrbfbaad16k8ni1520xah1z2ckl5779x9fi6";
+      type = "gem";
+    };
+    version = "3.96.1";
+  };
+  aws-sdk-kms = {
+    dependencies = ["aws-sdk-core" "aws-sigv4"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1czxr6yi8p9gma4dwgygp1jn0i289hwa2vw69kzfscgbn118c3mm";
+      type = "gem";
+    };
+    version = "1.31.0";
+  };
+  aws-sdk-s3 = {
+    dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x1d1azxwanvm0d7qppw41x5nx2zv0bcz41yk9vqi5lvr7apaq13";
+      type = "gem";
+    };
+    version = "1.66.0";
+  };
+  aws-sigv4 = {
+    dependencies = ["aws-eventstream"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kysxyw1zkvggbmcj4xnscdh15kxli8mx07hv447h74g9x02drsd";
+      type = "gem";
+    };
+    version = "1.1.3";
+  };
   babosa = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05rgxg4pz4bc4xk34w5grv0yp1j94wf571w84lf3xgqcbs42ip2f";
+      sha256 = "10nn9bw63i4awpzn5vrx6kmpx1sg7z8r3fhw9r8bvg9pz2wh489g";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   CFPropertyList = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ykjag3k5msz3sf1j91rb55da2xh596y06m3a4yl79fiy2id0w9z";
+      sha256 = "1825ll26p28swjiw8n3x2pnh5ygsmg83spf82fnzcjn2p87vc5lf";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.0.2";
   };
   claide = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0az54rp691hc42yl1xyix2cxv58byhaaf4gxbpghvvq29l476rzc";
+      sha256 = "0kasxsms24fgcdsq680nz99d5lazl9rmz1qkil2y5gbbssx89g0z";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   colored = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0b0x5jmsyi0z69bm6sij1k89z7h0laag3cb4mdn7zkl9qmxb90lx";
@@ -51,6 +125,8 @@
     version = "1.2";
   };
   colored2 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0jlbqa9q4mvrm73aw9mxh23ygzbjiqwisl32d8szfb5fxvbjng5i";
@@ -60,6 +136,8 @@
   };
   commander-fastlane = {
     dependencies = ["highline"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0y8d3ac9qwm1cg6rnpf8rcdsy1yxacrd2g2kl809xsp2vi973g65";
@@ -68,6 +146,8 @@
     version = "4.4.6";
   };
   declarative = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0642xvwzzbgi3kp1bg467wma4g3xqrrn0sk369hjam7w579gnv5j";
@@ -76,6 +156,8 @@
     version = "0.0.10";
   };
   declarative-option = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
@@ -88,10 +170,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08q8p0fk51aa6dwhy2xmjaj76arcq9nn22gyia162jmqpccfx50l";
+      sha256 = "10f10yhz7rn31pq859jx47dypsfsxcmx8h482xn7aijfr6vn8yv9";
       type = "gem";
     };
-    version = "0.4.1";
+    version = "0.5.1";
   };
   domain_name = {
     dependencies = ["unf"];
@@ -109,10 +191,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1375dyawvcp81d94jkjwjjkj3j23gsp06cfwh15g695l4g3ssswc";
+      sha256 = "17hkd62ig9b0czv192kqdfq7gw0a8hgq07yclri6myc8y5lmfin5";
       type = "gem";
     };
-    version = "2.7.4";
+    version = "2.7.5";
   };
   emoji_regex = {
     groups = ["default"];
@@ -129,10 +211,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mc6y6n7i0hhk7i8wwi4qjnpkm013p7z3xr994s696hk74f91a7j";
+      sha256 = "1zvphy60fwycl6z2h7dpsy9lgyfrh27fj16987p7bl1n4xlqkvmw";
       type = "gem";
     };
-    version = "0.65.0";
+    version = "0.73.0";
   };
   faraday = {
     dependencies = ["multipart-post"];
@@ -140,13 +222,15 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s72m05jvzc1pd6cw1i289chas399q0a14xrwg4rvkdwy7bgzrh0";
+      sha256 = "0wwks9652xwgjm7yszcq5xr960pjypc07ivwzbjzpvy9zh2fw6iq";
       type = "gem";
     };
-    version = "0.15.4";
+    version = "1.0.1";
   };
   faraday-cookie_jar = {
     dependencies = ["faraday" "http-cookie"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1di4gx6446a6zdkrpj679m5k515i53wvb4yxcsqvy8d8zacxiiv6";
@@ -160,33 +244,35 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1a93rs58bakqck7bcihasz66a1riy22h2zpwrpmb13gp8mw3wkmr";
+      sha256 = "0jik2kgfinwnfi6fpp512vlvs0mlggign3gkbpkg5fw1jr9his0r";
       type = "gem";
     };
-    version = "0.13.1";
+    version = "1.0.0";
   };
   fastimage = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1iy9jm13r2r4yz41xaivhxs8mvqn57fjwihxvazbip002mq6rxfz";
+      sha256 = "06lgsy1zdkhhgd9w1c0nb7v9d38mljwz13n6gi3acbzkhz1sf642";
       type = "gem";
     };
-    version = "2.1.5";
+    version = "2.1.7";
   };
   fastlane = {
-    dependencies = ["CFPropertyList" "addressable" "babosa" "colored" "commander-fastlane" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-api-client" "google-cloud-storage" "highline" "json" "jwt" "mini_magick" "multi_xml" "multipart-post" "plist" "public_suffix" "rubyzip" "security" "simctl" "slack-notifier" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"];
+    dependencies = ["CFPropertyList" "addressable" "aws-sdk-s3" "babosa" "colored" "commander-fastlane" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-api-client" "google-cloud-storage" "highline" "json" "jwt" "mini_magick" "multi_xml" "multipart-post" "plist" "public_suffix" "rubyzip" "security" "simctl" "slack-notifier" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h3k6rzy9p9s7ajk96jarg7sqs9npdnj7acr4v2gs8bpf31hqgpc";
+      sha256 = "1jss8cpcngwrmpck6ncijksrfcj5csgljwn2rmqv9gx1azj4mlgv";
       type = "gem";
     };
-    version = "2.128.1";
+    version = "2.148.1";
   };
   gh_inspector = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0f8r9byajj3bi2c7c5sqrc7m0zrv3nblfcd4782lw5l73cbsgk04";
@@ -195,24 +281,26 @@
     version = "1.1.3";
   };
   google-api-client = {
-    dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable" "signet"];
+    dependencies = ["addressable" "googleauth" "httpclient" "mini_mime" "representable" "retriable" "signet"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1z925kbqyaxdi6ld3gvaqc9527xfi8k3rr6snq5mvx5kibdi072a";
+      sha256 = "1jybks8i00rxrxx9mkx90dbdk6pczh2w757wchlavmrkrk0dp9s1";
       type = "gem";
     };
-    version = "0.23.9";
+    version = "0.38.0";
   };
   google-cloud-core = {
-    dependencies = ["google-cloud-env"];
+    dependencies = ["google-cloud-env" "google-cloud-errors"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0gqn523gqj6dwbj9ddcb8rjw0sai4x138pk3l3qzmq8jxz67qqj5";
+      sha256 = "1qjn7vs8f85vxi1nkikbjfja6bv9snrj26vzscjii0cm8n4dy0i1";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.5.0";
   };
   google-cloud-env = {
     dependencies = ["faraday"];
@@ -220,32 +308,46 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0j25sy2qhybqfwsyh8j4m10z2x7dn2jmf1gwr1w2b90cmya4yrbd";
+      sha256 = "0rbascsddvwsq827fj4m2daqh0l3ghmdlbbhy48clgaysapaz685";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  google-cloud-errors = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nl08lhgjvz3g7nsarn9nnsck0k3dg8mwg4awcnklnzpvs62b4ih";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.0.0";
   };
   google-cloud-storage = {
-    dependencies = ["digest-crc" "google-api-client" "google-cloud-core" "googleauth"];
+    dependencies = ["addressable" "digest-crc" "google-api-client" "google-cloud-core" "googleauth" "mini_mime"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lslrlrrhjj8imbpzvbbwflrvq06r0x5h74mlq726yvkr7akyqlq";
+      sha256 = "1wdnd5wisbrlivapdr7bcg8v59hayqz3q5qiqs0628g371lwx30k";
       type = "gem";
     };
-    version = "1.16.0";
+    version = "1.26.1";
   };
   googleauth = {
     dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yj7j1rnyamxpn5ybgdgbiw89v9bq2r0h85s2y2jzvqanvm7iflq";
+      sha256 = "0rsk471ld98pxhvzig3lnw9i13454c9nschvzxvq6vjqnn9ip0yh";
       type = "gem";
     };
-    version = "0.6.7";
+    version = "0.12.0";
   };
   highline = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "01ib7jp85xjc4gh4jg0wyzllm46hwv8p0w1m4c75pbgi41fps50y";
@@ -255,6 +357,8 @@
   };
   http-cookie = {
     dependencies = ["domain_name"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
@@ -263,6 +367,8 @@
     version = "1.0.3";
   };
   httpclient = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
@@ -270,70 +376,79 @@
     };
     version = "2.8.3";
   };
-  json = {
+  jmespath = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sx97bm9by389rbzv8r1f43h06xcz8vwi3h5jv074gvparql7lcx";
+      sha256 = "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "1.4.0";
   };
-  jwt = {
+  json = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky";
+      sha256 = "0nrmw2r4nfxlfgprfgki3hjifgrcrs3l5zvm3ca3gb4743yr25mn";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "2.3.0";
   };
-  memoist = {
+  jwt = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pq8fhqh8w25qcw9v3vzfb0i6jp0k3949ahxc3wrwz2791dpbgbh";
+      sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky";
       type = "gem";
     };
-    version = "0.16.0";
+    version = "2.1.0";
   };
-  mime-types = {
-    dependencies = ["mime-types-data"];
+  memoist = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
+      sha256 = "0i9wpzix3sjhf6d9zw60dm4371iq8kyz7ckh2qapan2vyaim6b55";
       type = "gem";
     };
-    version = "3.2.2";
+    version = "0.16.2";
   };
-  mime-types-data = {
+  mini_magick = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
+      sha256 = "0lpq12z70n10c1qshcddd5nib2pkcbkwzvmiqqzj60l01k3x4fg9";
       type = "gem";
     };
-    version = "3.2019.0331";
+    version = "4.10.1";
   };
-  mini_magick = {
+  mini_mime = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qy09qrd5bwh8mkbj514n5vcw9ni73218h9s3zmvbpmdwrnzi8j4";
+      sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
       type = "gem";
     };
-    version = "4.9.5";
+    version = "1.0.2";
   };
   multi_json = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+      sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr";
       type = "gem";
     };
-    version = "1.13.1";
+    version = "1.14.1";
   };
   multi_xml = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj";
@@ -342,6 +457,8 @@
     version = "0.6.0";
   };
   multipart-post = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
@@ -350,6 +467,8 @@
     version = "2.0.0";
   };
   nanaimo = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ajfyaqjw3dzykk612yw8sm21savfqy292hgps8h8l4lvxww1lz6";
@@ -358,6 +477,8 @@
     version = "0.2.6";
   };
   naturally = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0dzqdawqr4agx7zr1fr5zxdwl8vb5rhpz57l1lk7d2y46ha6l4l7";
@@ -370,10 +491,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06r55k01g32lvz4wf2s6hpjlxbbag113jsvff3w64jllfr315a73";
+      sha256 = "0xnynckvrn9ailkmkrmkldnpv8hmmbdwxr7c7iz27cl1cpcdd49n";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.1.0";
   };
   plist = {
     groups = ["default"];
@@ -386,6 +507,8 @@
     version = "3.5.0";
   };
   public_suffix = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
@@ -395,6 +518,8 @@
   };
   representable = {
     dependencies = ["declarative" "declarative-option" "uber"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
@@ -403,6 +528,8 @@
     version = "3.0.4";
   };
   retriable = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1q48hqws2dy1vws9schc0kmina40gy7sn5qsndpsfqdslh65snha";
@@ -411,6 +538,8 @@
     version = "3.1.2";
   };
   rouge = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0sfikq1q8xyqqx690iiz7ybhzx87am4w50w8f2nq36l3asw4x89d";
@@ -423,12 +552,14 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w9gw28ly3zyqydnm8phxchf4ymyjl2r7zf7c12z8kla10cpmhlc";
+      sha256 = "1qxc2zxwwipm6kviiar4gfhcakpx1jdcs89v6lvzivn5hq1xk78l";
       type = "gem";
     };
-    version = "1.2.3";
+    version = "1.3.0";
   };
   security = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1ryjxs0j66wrbky2c08yf0mllwalvpg12rpxzbdx2rdhj3cbrlxa";
@@ -438,23 +569,29 @@
   };
   signet = {
     dependencies = ["addressable" "faraday" "jwt" "multi_json"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4";
+      sha256 = "10g2667fvxnc50hcd1aywgsbf8j7nrckg3n7zjvywmyz82pwmpqp";
       type = "gem";
     };
-    version = "0.11.0";
+    version = "0.14.0";
   };
   simctl = {
     dependencies = ["CFPropertyList" "naturally"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bbvbpdk955q1g797md960fdznw6p6hmj2pc62yrbpvb1ymag1sf";
+      sha256 = "1v9rsdmg5c5kkf8ps47xnrfbvjnq11sbaifr186jwkh4npawz00x";
       type = "gem";
     };
-    version = "1.6.5";
+    version = "1.6.8";
   };
   slack-notifier = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1pkfn99dhy5s526r6k8d87fwwb6j287ga9s7lxqmh60z28xqh3bv";
@@ -474,6 +611,8 @@
   };
   terminal-table = {
     dependencies = ["unicode-display_width"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1512cngw35hsmhvw4c05rscihc59mnj09m249sm9p3pik831ydqk";
@@ -486,20 +625,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0prcxdy6qhqba4cv7hsy503b3bjciqk3j3hhzvcbij1kj2gh31c9";
+      sha256 = "0j5zw041jgkmn605ya1zc151bxgxl6v192v2i26qhxx7ws2l2lvr";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.7.1";
   };
   tty-screen = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1143g05fs28ssgimaph6sdnsndd1wrpax9kjypvd2ripa1adm4kx";
+      sha256 = "1jwgr2i3wilng3mx851xczmkzllbirmsmr42ik4amqyyvry1yzyf";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.7.1";
   };
   tty-spinner = {
     dependencies = ["tty-cursor"];
@@ -507,12 +646,14 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "089qiqzjs1m727kalz8vn2wzgwzdn8mg5gyag901pmimxl64lnvc";
+      sha256 = "0hh5awmijnzw9flmh5ak610x1d00xiqagxa5mbr63ysggc26y0qf";
       type = "gem";
     };
-    version = "0.9.1";
+    version = "0.9.3";
   };
   uber = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1p1mm7mngg40x05z52md3mbamkng0zpajbzqjjwmsyw0zw3v9vjv";
@@ -522,6 +663,8 @@
   };
   unf = {
     dependencies = ["unf_ext"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
@@ -534,22 +677,24 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ll6w64ibh81qwvjx19h8nj7mngxgffg7aigjx11klvf5k2g4nxf";
+      sha256 = "0wc47r23h063l8ysws8sy24gzh74mks81cak3lkzlrw4qkqb3sg4";
       type = "gem";
     };
-    version = "0.0.7.6";
+    version = "0.0.7.7";
   };
   unicode-display_width = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.7.0";
   };
   word_wrap = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1iyc5bc7dbgsd8j3yk1i99ral39f23l6wapi0083fbl19hid8mpm";
@@ -563,13 +708,15 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h73ilwyjwyyhj761an3pmicllw50514gxb6b1r4z4klc9rzxw4j";
+      sha256 = "1bkk8y6lzd86w9yx72hd1nil3fkk5f0v3il9vm554gzpl6dhc2bi";
       type = "gem";
     };
-    version = "1.11.0";
+    version = "1.16.0";
   };
   xcpretty = {
     dependencies = ["rouge"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1xq47q2h5llj7b54rws4796904vnnjz7qqnacdv7wlp3gdbwrivm";
@@ -579,6 +726,8 @@
   };
   xcpretty-travis-formatter = {
     dependencies = ["xcpretty"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "15b5c0lxz2blmichfdlabzlbyw5nlh1ci898pxwb661m9bahz3ml";
diff --git a/pkgs/tools/archivers/unar/default.nix b/pkgs/tools/archivers/unar/default.nix
index 9fdbada9ab8d..6e75ee720e80 100644
--- a/pkgs/tools/archivers/unar/default.nix
+++ b/pkgs/tools/archivers/unar/default.nix
@@ -16,7 +16,9 @@ stdenv.mkDerivation rec {
     for f in Makefile.linux ../UniversalDetector/Makefile.linux ; do
       substituteInPlace $f \
         --replace "= gcc" "=cc" \
-        --replace "= g++" "=c++"
+        --replace "= g++" "=c++" \
+        --replace "-DGNU_RUNTIME=1" "" \
+        --replace "-fgnu-runtime" "-fobjc-nonfragile-abi"
     done
 
     # we need to build inside this directory as well, so we have to make it writeable
diff --git a/pkgs/tools/graphics/transfig/default.nix b/pkgs/tools/graphics/transfig/default.nix
index 960e7fd3ba38..9226809c5c5b 100644
--- a/pkgs/tools/graphics/transfig/default.nix
+++ b/pkgs/tools/graphics/transfig/default.nix
@@ -11,11 +11,11 @@ stdenv.mkDerivation {
   buildInputs = [ zlib libjpeg libpng ];
 
   patches = [
-    ./patch-fig2dev-dev-Imakefile
-    ./patch-fig2dev-Imakefile
-    ./patch-transfig-Imakefile
-    ./patch-fig2dev-fig2dev.h
-    ./patch-fig2dev-dev-gensvg.c
+    ./patch-fig2dev-dev-Imakefile.patch
+    ./patch-fig2dev-Imakefile.patch
+    ./patch-transfig-Imakefile.patch
+    ./patch-fig2dev-fig2dev.h.patch
+    ./patch-fig2dev-dev-gensvg.c.patch
   ];
 
   patchPhase = ''
diff --git a/pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile b/pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile.patch
index 9c1895b15196..9c1895b15196 100644
--- a/pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile
+++ b/pkgs/tools/graphics/transfig/patch-fig2dev-Imakefile.patch
diff --git a/pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile b/pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile.patch
index 87f01f70d302..87f01f70d302 100644
--- a/pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile
+++ b/pkgs/tools/graphics/transfig/patch-fig2dev-dev-Imakefile.patch
diff --git a/pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c b/pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c.patch
index 5bd05c97be8e..5bd05c97be8e 100644
--- a/pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c
+++ b/pkgs/tools/graphics/transfig/patch-fig2dev-dev-gensvg.c.patch
diff --git a/pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h b/pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h.patch
index 3f330c164e7e..3f330c164e7e 100644
--- a/pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h
+++ b/pkgs/tools/graphics/transfig/patch-fig2dev-fig2dev.h.patch
diff --git a/pkgs/tools/graphics/transfig/patch-transfig-Imakefile b/pkgs/tools/graphics/transfig/patch-transfig-Imakefile.patch
index 4639658dccd8..4639658dccd8 100644
--- a/pkgs/tools/graphics/transfig/patch-transfig-Imakefile
+++ b/pkgs/tools/graphics/transfig/patch-transfig-Imakefile.patch
diff --git a/pkgs/tools/misc/bat/default.nix b/pkgs/tools/misc/bat/default.nix
index 95bc44dcce06..9c7501719912 100644
--- a/pkgs/tools/misc/bat/default.nix
+++ b/pkgs/tools/misc/bat/default.nix
@@ -1,32 +1,25 @@
-{ stdenv, rustPlatform, fetchFromGitHub, llvmPackages, pkgconfig, less
+{ stdenv, rustPlatform, fetchFromGitHub, pkgconfig, less
 , Security, libiconv, installShellFiles, makeWrapper
 }:
 
 rustPlatform.buildRustPackage rec {
   pname   = "bat";
-  version = "0.15.1";
+  version = "0.15.3";
 
   src = fetchFromGitHub {
     owner  = "sharkdp";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "10cs94ja1dmn0f24gqkcy8rf68b3b43k6qpbb5njbg0hcx3x6cyj";
+    sha256 = "0893xjnrjmhhzccfb57w5s7wlf6z4cwxvrxj8qb5jnmrgkfaw86b";
     fetchSubmodules = true;
   };
 
-  cargoSha256 = "13cphi08bp6lg054acgliir8dx2jajll4m3c4xxy04skmx555zr8";
+  cargoSha256 = "0mcff6nsd9g39xdhsf06zxs7pmq27nqfxdk0lwh83lqmnzdp01sf";
 
-  # Disable test that's broken on macOS.
-  # This should probably be removed on the next release.
-  # https://github.com/sharkdp/bat/issues/983
-  patches = [ ./macos.patch ];
-
-  nativeBuildInputs = [ pkgconfig llvmPackages.libclang installShellFiles makeWrapper ];
+  nativeBuildInputs = [ pkgconfig installShellFiles makeWrapper ];
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security libiconv ];
 
-  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
-
   postInstall = ''
     installManPage $releaseDir/build/bat-*/out/assets/manual/bat.1
     installShellCompletion $releaseDir/build/bat-*/out/assets/completions/bat.fish
diff --git a/pkgs/tools/misc/bat/macos.patch b/pkgs/tools/misc/bat/macos.patch
deleted file mode 100644
index 549782f0c91b..000000000000
--- a/pkgs/tools/misc/bat/macos.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/assets.rs b/src/assets.rs
-index 4f8556f..222abc2 100644
---- a/src/assets.rs
-+++ b/src/assets.rs
-@@ -336,7 +336,7 @@ mod tests {
-         assert_eq!(test.syntax_for_file("Makefile"), "Makefile");
-     }
- 
--    #[cfg(unix)]
-+    #[cfg(all(unix,not(target_os = "macos")))]
-     #[test]
-     fn syntax_detection_invalid_utf8() {
-         use std::os::unix::ffi::OsStrExt;
diff --git a/pkgs/tools/misc/mstflint/default.nix b/pkgs/tools/misc/mstflint/default.nix
index c44934ef45c3..cf90e93929de 100644
--- a/pkgs/tools/misc/mstflint/default.nix
+++ b/pkgs/tools/misc/mstflint/default.nix
@@ -1,19 +1,26 @@
-{ stdenv, fetchurl, zlib, libibmad }:
+{ stdenv, autoreconfHook, fetchFromGitHub, zlib, libibmad, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "mstflint-4.4.0-1.12.gd1edd58";
+  pname = "mstflint";
+  version = "4.14.0-1";
 
-  src = fetchurl {
-    url = "https://www.openfabrics.org/downloads/mstflint/${name}.tar.gz";
-    sha256 = "0kg33i5s5zdc7kigww62r0b824zfw06r757fl6jwrq7lj91j0380";
+  src = fetchFromGitHub {
+    owner = "Mellanox";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0xrwx623vl17cqzpacil74m2fi4xrshgvvzxiplz1wq47gq7wp1i";
   };
 
-  buildInputs = [ zlib libibmad ];
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ zlib libibmad openssl ];
+
+  hardeningDisable = [ "format" ];
+
+  dontDisableStatic = true;  # the build fails without this. should probably be reported upstream
 
   meta = with stdenv.lib; {
-    homepage = "https://www.openfabrics.org/";
-    license = licenses.gpl2;
+    homepage = "https://github.com/Mellanox/mstflint";
+    license = with licenses; [ gpl2 bsd2 ];
     platforms = platforms.linux;
-    broken = true; # 2018-04-11
   };
 }
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 0720ca76f253..059b43baec39 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20200422";
+  name = "parallel-20200522";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "0c2mr2rzsz0y24q4mbm2zmc2fz6bcda4gbc4qgg59sirrj8vzpjb";
+    sha256 = "10is46v5dpccxibby0zikg1q68mdwpmgdpxk796zka93idd6id29";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/tools/misc/profile-sync-daemon/default.nix b/pkgs/tools/misc/profile-sync-daemon/default.nix
index 790bf73a44dc..7d68ada2c1bc 100644
--- a/pkgs/tools/misc/profile-sync-daemon/default.nix
+++ b/pkgs/tools/misc/profile-sync-daemon/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, utillinux, coreutils}:
 
 stdenv.mkDerivation rec {
-  version = "6.38";
+  version = "6.40";
   pname = "profile-sync-daemon";
 
   src = fetchurl {
     url = "https://github.com/graysky2/profile-sync-daemon/archive/v${version}.tar.gz";
-    sha256 = "0mhjgd2b3grdaad64b72m8i5rm9k58yx7kpiqmhmd3kl5qlgxagy";
+    sha256 = "1z1n7dqbkk0x9w2pq71nf93wp4hrzin4a0hcvfynj1khf12z369h";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/networking/ip2unix/default.nix b/pkgs/tools/networking/ip2unix/default.nix
index 83a6ea4b2434..1d4a6a5545f6 100644
--- a/pkgs/tools/networking/ip2unix/default.nix
+++ b/pkgs/tools/networking/ip2unix/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ip2unix";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "nixcloud";
     repo = "ip2unix";
     rev = "v${version}";
-    sha256 = "121ygj50i7ja9bv76y51qsjbjmmydhpi0sd3xb6pysmlzv0bxn17";
+    sha256 = "1ci0k3zy3hjkg65ah5h75mfvrd578xf2z1449xmgjm3iz3d6kqs2";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix
index ab13a70a6917..430607a0c3ba 100644
--- a/pkgs/tools/networking/mu/default.nix
+++ b/pkgs/tools/networking/mu/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mu";
-  version = "1.4.6";
+  version = "1.4.7";
 
   src = fetchFromGitHub {
     owner  = "djcb";
     repo   = "mu";
     rev    = version;
-    sha256 = "0qbn99ar45vdpx1qwmqyr9zz14833d5xkxs1hr75549dds6a7rh5";
+    sha256 = "0inn720prhgxxc1napzd3xyzqgsvv70gqddsyzaa84h6946iz6v5";
   };
 
   postPatch = stdenv.lib.optionalString (batchSize != null) ''
diff --git a/pkgs/tools/networking/ssldump/default.nix b/pkgs/tools/networking/ssldump/default.nix
index 2c008cbb36a1..b492b5a226ba 100644
--- a/pkgs/tools/networking/ssldump/default.nix
+++ b/pkgs/tools/networking/ssldump/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "ssldump";
-  version = "0.9b3";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "adulau";
     repo = "ssldump";
-    rev = "4529d03a50d39d3697c3e39a3d6f6c9b29448aa0";
-    sha256 = "0wwsamzxabfxcil5y2g4v2261vdspxlp12wz4xhji8607jbyjwr1";
+    rev = "7491b9851505acff95b2c68097e9b9f630d418dc";
+    sha256 = "1j3rln86khdnc98v50hclvqaq83a24c1rfzbcbajkbfpr4yxpnpd";
   };
 
   buildInputs = [ libpcap openssl ];
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index c44c7d4c96dc..37eb6e11742e 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -210,13 +210,13 @@ in rec {
 
   nixFlakes = lib.lowPrio (callPackage common rec {
     name = "nix-2.4${suffix}";
-    suffix = "pre20200501_941f952";
+    suffix = "pre20200521_00b562c";
 
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "941f95284ab57e9baa317791327cf1715d8564b5";
-      sha256 = "0d99jl5baxji5dmqb4fwmbffx0z04k0naanms5zzbwvxdmzn3yhs";
+      rev = "00b562c87ec4c3bbe514f5dc1f4d1c41f66f66bf";
+      hash = "sha256-GqTFh4wBfkKapixKyd3gA9C1tF0PSzZDD5LN+5nQEWk=";
     };
 
     crates = fetchurl {
diff --git a/pkgs/tools/text/snippetpixie/default.nix b/pkgs/tools/text/snippetpixie/default.nix
index d2116ced5e28..863e4764b69b 100644
--- a/pkgs/tools/text/snippetpixie/default.nix
+++ b/pkgs/tools/text/snippetpixie/default.nix
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation rec {
   pname = "snippetpixie";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "bytepixie";
     repo = pname;
     rev = version;
-    sha256 = "0cnx7snw3h7p77fhihvqxb6bgg4s2ffvjr8nbymb4bnqlg2a7v97";
+    sha256 = "0jhc47g5x34c36y4d32lcn32bpw4axxf1sydawgy4886hmkvb6kf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 5086006ee8bb..ff4051310745 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -283,6 +283,7 @@ mapAliases ({
   matrique = spectral; # added 2020-01-27
   mbedtls_1_3 = throw "mbedtls_1_3 is end of life, see https://tls.mbed.org/kb/how-to/upgrade-2.0"; # added 2019-12-08
   mess = mame; # added 2019-10-30
+  mcgrid = throw "mcgrid has been removed from nixpkgs, as it's not compatible with rivet 3"; # added 2020-05-23
   mcomix = throw "mcomix has been removed from nixpkgs, as it's unmaintained"; # added 2019-12-10
   mirage = throw "mirage has been femoved from nixpkgs, as it's unmaintained"; # added 2019-12-10
   mysql-client = hiPrio mariadb.client;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1b04910b5ac1..8774a23c70c7 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6132,6 +6132,8 @@ in
 
   pubs = callPackage ../tools/misc/pubs {};
 
+  pure-prompt = callPackage ../shells/zsh/pure-prompt { };
+
   pv = callPackage ../tools/misc/pv { };
 
   pwgen = callPackage ../tools/security/pwgen { };
@@ -8080,6 +8082,8 @@ in
 
   bluespec = callPackage ../development/compilers/bluespec { };
 
+  ciao = callPackage ../development/compilers/ciao { };
+
   colm = callPackage ../development/compilers/colm { };
 
   colmap = libsForQt5.callPackage ../applications/science/misc/colmap { };
@@ -20600,7 +20604,9 @@ in
 
   linuxsampler = callPackage ../applications/audio/linuxsampler { };
 
-  llpp = ocamlPackages.callPackage ../applications/misc/llpp { };
+  llpp = callPackage ../applications/misc/llpp {
+    inherit (ocaml-ng.ocamlPackages_4_09) ocaml;
+  };
 
   lmms = libsForQt5.callPackage ../applications/audio/lmms {
     lame = null;
@@ -20846,7 +20852,22 @@ in
     python = python3;
   };
 
-  inherit (mopidyPackages) mopidy mopidy-gmusic mopidy-local-images mopidy-local-sqlite mopidy-spotify mopidy-moped mopidy-mopify mopidy-spotify-tunigo mopidy-youtube mopidy-soundcloud mopidy-musicbox-webclient mopidy-iris mopidy-mpd;
+  inherit (mopidyPackages)
+    mopidy
+    mopidy-gmusic
+    mopidy-iris
+    mopidy-local-images
+    mopidy-local-sqlite
+    mopidy-moped
+    mopidy-mopify
+    mopidy-mpd
+    mopidy-mpris
+    mopidy-musicbox-webclient
+    mopidy-somafm
+    mopidy-soundcloud
+    mopidy-spotify
+    mopidy-spotify-tunigo
+    mopidy-youtube;
 
   motif = callPackage ../development/libraries/motif { };
 
@@ -22424,6 +22445,7 @@ in
   unigine-valley = callPackage ../applications/graphics/unigine-valley { };
 
   unison = callPackage ../applications/networking/sync/unison {
+    ocamlPackages = ocaml-ng.ocamlPackages_4_09;
     enableX11 = config.unison.enableX11 or true;
   };
 
@@ -24065,6 +24087,8 @@ in
 
   t4kcommon = callPackage ../games/t4kcommon { };
 
+  taisei = callPackage ../games/taisei { };
+
   tcl2048 = callPackage ../games/tcl2048 { };
 
   the-powder-toy = callPackage ../games/the-powder-toy {
@@ -24474,6 +24498,16 @@ in
     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
   };
 
+  bpp-core = callPackage ../development/libraries/science/biology/bpp-core { };
+
+  bpp-phyl = callPackage ../development/libraries/science/biology/bpp-phyl { };
+
+  bpp-popgen = callPackage ../development/libraries/science/biology/bpp-popgen { };
+
+  bpp-seq = callPackage ../development/libraries/science/biology/bpp-seq { };
+
+  bppsuite = callPackage ../applications/science/biology/bppsuite { };
+
   cd-hit = callPackage ../applications/science/biology/cd-hit { };
 
   cmtk = callPackage ../applications/science/biology/cmtk { };
@@ -24823,6 +24857,8 @@ in
 
   xfitter = callPackage ../applications/science/physics/xfitter {};
 
+  xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
+
   ### SCIENCE/PROGRAMMING
 
   dafny = dotnetPackages.Dafny;
@@ -24856,7 +24892,7 @@ in
   cadical = callPackage ../applications/science/logic/cadical {};
 
   inherit (callPackage ./coq-packages.nix {
-    inherit (ocaml-ng) ocamlPackages_4_05;
+    inherit (ocaml-ng) ocamlPackages_4_05 ocamlPackages_4_09;
   }) mkCoqPackages
     coqPackages_8_5  coq_8_5
     coqPackages_8_6  coq_8_6
@@ -25281,8 +25317,6 @@ in
 
   lhapdf = callPackage ../development/libraries/physics/lhapdf { };
 
-  mcgrid = callPackage ../development/libraries/physics/mcgrid { };
-
   mela = callPackage ../development/libraries/physics/mela { };
 
   nlojet = callPackage ../development/libraries/physics/nlojet { };
@@ -25290,13 +25324,14 @@ in
   pythia = callPackage ../development/libraries/physics/pythia { };
 
   rivet = callPackage ../development/libraries/physics/rivet {
+    hepmc = hepmc2;
     imagemagick = graphicsmagick-imagemagick-compat;
   };
 
   thepeg = callPackage ../development/libraries/physics/thepeg { };
 
   yoda = callPackage ../development/libraries/physics/yoda {
-    python = python2;
+    python = python3;
   };
   yoda-with-root = lowPrio (yoda.override {
     withRootSupport = true;
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index d2b9eb52ec6c..dedef12e38ba 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -1,4 +1,4 @@
-{ lib, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05 }:
+{ lib, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05, ocamlPackages_4_09 }:
 
 let
   mkCoqPackages' = self: coq:
@@ -100,15 +100,19 @@ in rec {
     version = "8.6.1";
   };
   coq_8_7 = callPackage ../applications/science/logic/coq {
+    ocamlPackages = ocamlPackages_4_09;
     version = "8.7.2";
   };
   coq_8_8 = callPackage ../applications/science/logic/coq {
+    ocamlPackages = ocamlPackages_4_09;
     version = "8.8.2";
   };
   coq_8_9 = callPackage ../applications/science/logic/coq {
+    ocamlPackages = ocamlPackages_4_09;
     version = "8.9.1";
   };
   coq_8_10 = callPackage ../applications/science/logic/coq {
+    ocamlPackages = ocamlPackages_4_09;
     version = "8.10.2";
   };
   coq_8_11 = callPackage ../applications/science/logic/coq {
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 010e46bf5490..7db3335f6a1a 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -38,8 +38,6 @@ let
 
     astring = callPackage ../development/ocaml-modules/astring { };
 
-    async_kernel_p4 = callPackage ../development/ocaml-modules/async_kernel { };
-
     atd = callPackage ../development/ocaml-modules/atd { };
 
     atdgen = callPackage ../development/ocaml-modules/atdgen { };
@@ -1178,13 +1176,6 @@ let
       then callPackage ../development/ocaml-modules/janestreet/core.nix {}
       else core_p4;
 
-    async_kernel =
-      if lib.versionOlder "4.03" ocaml.version
-      then janeStreet.async_kernel
-      else if lib.versionOlder "4.02" ocaml.version
-      then callPackage ../development/ocaml-modules/janestreet/async-kernel.nix {}
-      else async_kernel_p4;
-
     async_rpc_kernel =
       if lib.versionOlder "4.03" ocaml.version
       then janeStreet.async_rpc_kernel
@@ -1231,5 +1222,5 @@ in let inherit (pkgs) callPackage; in rec
 
   ocamlPackages_latest = ocamlPackages_4_10;
 
-  ocamlPackages = ocamlPackages_4_09;
+  ocamlPackages = ocamlPackages_4_10;
 }
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 9a67079b0834..316589791859 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -5576,8 +5576,8 @@ in {
 
   retworkx = callPackage ../development/python-modules/retworkx { };
 
-  rivet = disabledIf isPy3k (toPythonModule (pkgs.rivet.override {
-    python2 = python;
+  rivet = disabledIf (!isPy3k) (toPythonModule (pkgs.rivet.override {
+    python3 = python;
   }));
 
   ripser = callPackage ../development/python-modules/ripser { };