summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/audacity/default.nix1
-rw-r--r--pkgs/applications/audio/pt2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/speech-denoiser/default.nix2
-rw-r--r--pkgs/applications/editors/neovim/default.nix10
-rw-r--r--pkgs/applications/editors/vscode/generic.nix2
-rw-r--r--pkgs/applications/graphics/renderdoc/default.nix4
-rw-r--r--pkgs/applications/misc/fitnesstrax/default.nix2
-rw-r--r--pkgs/applications/misc/obinskit/default.nix50
-rw-r--r--pkgs/applications/misc/pueue/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix17
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix6
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch81
-rw-r--r--pkgs/applications/networking/cluster/k3s/patches/0001-Use-rm-from-path-in-go-generate.patch25
-rw-r--r--pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch87
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix13
-rw-r--r--pkgs/applications/networking/openbazaar/default.nix8
-rw-r--r--pkgs/applications/science/chemistry/molden/default.nix4
-rw-r--r--pkgs/applications/science/robotics/qgroundcontrol/default.nix26
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix2
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix16
-rw-r--r--pkgs/data/icons/papirus-icon-theme/default.nix4
-rw-r--r--pkgs/data/misc/nixos-artwork/wallpapers.nix14
-rw-r--r--pkgs/data/misc/wireless-regdb/default.nix4
-rw-r--r--pkgs/data/themes/adwaita-qt/default.nix4
-rw-r--r--pkgs/data/themes/stilo/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix2
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix4
-rw-r--r--pkgs/development/compilers/rust/rls/default.nix9
-rw-r--r--pkgs/development/libraries/SDL2/default.nix3
-rw-r--r--pkgs/development/libraries/dlib/default.nix4
-rw-r--r--pkgs/development/libraries/libjpeg-drop/default.nix36
-rw-r--r--pkgs/development/libraries/openfst/default.nix4
-rw-r--r--pkgs/development/libraries/openxr-loader/default.nix4
-rw-r--r--pkgs/development/libraries/pipewire/0.2.nix (renamed from pkgs/development/libraries/pipewire/2.nix)0
-rw-r--r--pkgs/development/libraries/pkger/default.nix4
-rw-r--r--pkgs/development/lua-modules/overrides.nix5
-rw-r--r--pkgs/development/ocaml-modules/pa_test/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/sexplib/108.08.00.nix28
-rw-r--r--pkgs/development/ocaml-modules/sexplib/111.25.00.nix28
-rw-r--r--pkgs/development/ocaml-modules/sexplib/112.24.01.nix25
-rw-r--r--pkgs/development/python-modules/buildbot/default.nix15
-rw-r--r--pkgs/development/python-modules/buildbot/pkg.nix6
-rw-r--r--pkgs/development/python-modules/buildbot/plugins.nix10
-rw-r--r--pkgs/development/python-modules/buildbot/worker.nix8
-rw-r--r--pkgs/development/python-modules/phonenumbers/default.nix4
-rw-r--r--pkgs/development/python-modules/pillow/6.nix82
-rw-r--r--pkgs/development/python-modules/pillow/default.nix15
-rw-r--r--pkgs/development/tools/analysis/cargo-tarpaulin/default.nix6
-rw-r--r--pkgs/development/tools/analysis/tflint/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/cloudflare-wrangler/default.nix35
-rw-r--r--pkgs/development/tools/electron/3.x.nix77
-rw-r--r--pkgs/development/tools/electron/default.nix44
-rw-r--r--pkgs/development/tools/packet-cli/default.nix4
-rw-r--r--pkgs/development/tools/rust/cargo-deny/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-make/Cargo.lock124
-rw-r--r--pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--pkgs/development/tools/vultr-cli/default.nix4
-rw-r--r--pkgs/development/tools/wrangler/default.nix36
-rw-r--r--pkgs/games/ninvaders/default.nix23
-rw-r--r--pkgs/misc/emulators/np2kai/default.nix196
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix19
-rw-r--r--pkgs/servers/roundcube/default.nix4
-rw-r--r--pkgs/servers/tailscale/default.nix22
-rw-r--r--pkgs/servers/unifi/default.nix4
-rw-r--r--pkgs/tools/compression/hactool/default.nix4
-rw-r--r--pkgs/tools/graphics/yafaray-core/default.nix4
-rw-r--r--pkgs/tools/misc/rmlint/default.nix4
-rw-r--r--pkgs/tools/misc/sdate/default.nix4
-rw-r--r--pkgs/tools/networking/corerad/default.nix8
-rw-r--r--pkgs/tools/networking/isync/default.nix2
-rw-r--r--pkgs/tools/networking/mu/default.nix4
-rw-r--r--pkgs/tools/networking/shadowsocks-rust/default.nix6
-rw-r--r--pkgs/tools/security/bitwarden_rs/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.nix18
-rw-r--r--pkgs/top-level/ocaml-packages.nix17
-rw-r--r--pkgs/top-level/python-packages.nix11
81 files changed, 815 insertions, 637 deletions
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index 542a1f85188..73d31046813 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -59,6 +59,7 @@ stdenv.mkDerivation rec {
     description = "Sound editor with graphical UI";
     homepage = "http://audacityteam.org/";
     license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ lheckemann ];
     platforms = intersectLists platforms.linux platforms.x86; # fails on ARM
   };
 }
diff --git a/pkgs/applications/audio/pt2-clone/default.nix b/pkgs/applications/audio/pt2-clone/default.nix
index c5004634256..b72406b064d 100644
--- a/pkgs/applications/audio/pt2-clone/default.nix
+++ b/pkgs/applications/audio/pt2-clone/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pt2-clone";
-  version = "1.16";
+  version = "1.17";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "pt2-clone";
     rev = "v${version}";
-    sha256 = "0rbjphhyca71j22lbyx53w3n2mkdw7xflks2knfaziwdkqcfcvp2";
+    sha256 = "0paagzc1c7gdnvs2wwsw2h15d0x8a7fl995qq3pi06g8kmdm85pi";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/speech-denoiser/default.nix b/pkgs/applications/audio/speech-denoiser/default.nix
index 706a6956c5d..9c18665d399 100644
--- a/pkgs/applications/audio/speech-denoiser/default.nix
+++ b/pkgs/applications/audio/speech-denoiser/default.nix
@@ -27,6 +27,8 @@ stdenv.mkDerivation  {
   nativeBuildInputs = [ pkgconfig meson ninja ];
   buildInputs = [ lv2 rnnoise-nu ];
 
+  mesonFlags = ("--prefix=${placeholder "out"}/lib/lv2");
+
   postPatch = ''
     substituteInPlace meson.build \
       --replace "cc.find_library('rnnoise-nu',dirs: meson.current_source_dir() + '/rnnoise/.libs/',required : true)" "cc.find_library('rnnoise-nu', required : true)"
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
index 475330a5fe5..0d54817c534 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -6,6 +6,7 @@
 
 # now defaults to false because some tests can be flaky (clipboard etc)
 , doCheck ? false
+, nodejs ? null, fish ? null, python ? null
 }:
 
 with stdenv.lib;
@@ -17,6 +18,8 @@ let
         nvim-client luv coxpcall busted luafilesystem penlight inspect
       ]
     ));
+
+  pyEnv = python.withPackages(ps: [ ps.pynvim ps.msgpack ]);
 in
   stdenv.mkDerivation rec {
     pname = "neovim-unwrapped";
@@ -67,6 +70,13 @@ in
       pkgconfig
     ];
 
+    # extra programs test via `make functionaltest`
+    checkInputs = [
+      fish
+      nodejs
+      pyEnv      # for src/clint.py
+    ];
+
 
     # nvim --version output retains compilation flags and references to build tools
     postPatch = ''
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index 30060086fb5..38d695bd74a 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -24,7 +24,7 @@ in
       desktopName = longName;
       comment = "Code Editing. Redefined.";
       genericName = "Text Editor";
-      exec = executableName;
+      exec = "${executableName} %U";
       icon = "code";
       startupNotify = "true";
       categories = "Utility;TextEditor;Development;IDE;";
diff --git a/pkgs/applications/graphics/renderdoc/default.nix b/pkgs/applications/graphics/renderdoc/default.nix
index bf0b92b6f6d..2683206c8e4 100644
--- a/pkgs/applications/graphics/renderdoc/default.nix
+++ b/pkgs/applications/graphics/renderdoc/default.nix
@@ -13,14 +13,14 @@ let
   pythonPackages = python3Packages;
 in
 mkDerivation rec {
-  version = "1.7";
+  version = "1.8";
   pname = "renderdoc";
 
   src = fetchFromGitHub {
     owner = "baldurk";
     repo = "renderdoc";
     rev = "v${version}";
-    sha256 = "0r0y0lx48hkyf39pgippsc9q8hdcf57bdva6gx7f35vlhicx5hlz";
+    sha256 = "177j893abplj8wd8j4ava58m1mr7qq8fsffsq0w4hf5xgl5w8fq8";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/fitnesstrax/default.nix b/pkgs/applications/misc/fitnesstrax/default.nix
index f0081c39102..e90e364aaee 100644
--- a/pkgs/applications/misc/fitnesstrax/default.nix
+++ b/pkgs/applications/misc/fitnesstrax/default.nix
@@ -19,6 +19,8 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     wrapGAppsHook
+    glib
+    gtk3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/obinskit/default.nix b/pkgs/applications/misc/obinskit/default.nix
index aa11c069a7a..bbaa135f47e 100644
--- a/pkgs/applications/misc/obinskit/default.nix
+++ b/pkgs/applications/misc/obinskit/default.nix
@@ -1,33 +1,24 @@
-{ lib
-, stdenv
+{ stdenv
 , fetchurl
-, xorg
 , libxkbcommon
 , systemd
-, gcc-unwrapped
+, xorg
 , electron_3
-, wrapGAppsHook
+, makeWrapper
 , makeDesktopItem
 }:
-
 let
-  libPath = lib.makeLibraryPath [
-    libxkbcommon
-    xorg.libXt
-    systemd.lib
-    stdenv.cc.cc.lib
-  ];
-
   desktopItem = makeDesktopItem rec {
     name = "Obinskit";
     exec = "obinskit";
-    icon = "obinskit.png";
+    icon = "obinskit";
     desktopName = "Obinskit";
     genericName = "Obinskit keyboard configurator";
     categories = "Utility";
   };
 
-in stdenv.mkDerivation rec {
+in
+stdenv.mkDerivation rec {
   pname = "obinskit";
   version = "1.1.4";
 
@@ -40,44 +31,33 @@ in stdenv.mkDerivation rec {
 
   sourceRoot = "ObinsKit_${version}_x64";
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper ];
 
   dontConfigure = true;
   dontBuild = true;
 
   installPhase = ''
     mkdir -p $out/opt/obinskit
-    install icudtl.dat $out/opt/obinskit/
-    install natives_blob.bin $out/opt/obinskit/
-    install v8_context_snapshot.bin $out/opt/obinskit/
-    install blink_image_resources_200_percent.pak $out/opt/obinskit/
-    install content_resources_200_percent.pak $out/opt/obinskit/
-    install content_shell.pak $out/opt/obinskit/
-    install ui_resources_200_percent.pak $out/opt/obinskit/
-    install views_resources_200_percent.pak $out/opt/obinskit/
+
     cp -r resources $out/opt/obinskit/
     cp -r locales $out/opt/obinskit/
 
-    mkdir -p $out/bin
-    ln -s ${electron_3}/bin/electron $out/bin/obinskit
-
     mkdir -p $out/share/{applications,pixmaps}
     install resources/icons/tray-darwin@2x.png $out/share/pixmaps/obinskit.png
     ln -s ${desktopItem}/share/applications/* $out/share/applications
   '';
 
-  preFixup = ''
-    gappsWrapperArgs+=(
-      --add-flags $out/opt/obinskit/resources/app.asar
-      --prefix LD_LIBRARY_PATH : "${libPath}"
-    )
+  postFixup = ''
+    makeWrapper ${electron_3}/bin/electron $out/bin/${pname} \
+      --add-flags $out/opt/obinskit/resources/app.asar \
+      --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc.lib libxkbcommon systemd.lib xorg.libXt ]}"
   '';
 
-  meta = with lib; {
+  meta = with stdenv.lib; {
     description = "Graphical configurator for Anne Pro and Anne Pro II keyboards";
-    homepage = "http://en.obins.net/obinskit/";
+    homepage = "http://en.obins.net/obinskit/"; # https is broken
     license = licenses.unfree;
-    maintainers = [ maintainers.shou ];
+    maintainers = with maintainers; [ shou ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/misc/pueue/default.nix b/pkgs/applications/misc/pueue/default.nix
index 3882debd998..a51cd75e799 100644
--- a/pkgs/applications/misc/pueue/default.nix
+++ b/pkgs/applications/misc/pueue/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pueue";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "Nukesor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "17v760mh5k5vb1h3xvaph5rfc5wdl6q42isil2k9n6y8bxr3yw84";
+    sha256 = "1n85b41kvx7x7qdizdnq1p0zrkap4gkwnnvhh4pz6j9njxj8d9ir";
   };
 
-  cargoSha256 = "1m659i3v3b5hfn5vb5126izcy690bkmlyihz2w90h2d02ig7170p";
+  cargoSha256 = "0hkkz74hllc5dzmgls6bgdxsdr871df2fn51sa3shv68ah0avxff";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 8ce7c89bf78..5b77551640e 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -4,7 +4,7 @@
 , bzip2, flac, speex, libopus
 , libevent, expat, libjpeg, snappy
 , libpng, libcap
-, xdg_utils, yasm, minizip, libwebp
+, xdg_utils, yasm, nasm, minizip, libwebp
 , libusb1, pciutils, nss, re2, zlib
 
 , python2Packages, perl, pkgconfig
@@ -17,6 +17,7 @@
 , protobuf, speechd, libXdamage, cups
 , ffmpeg, libxslt, libxml2, at-spi2-core
 , jre
+, pipewire_0_2
 
 # optional dependencies
 , libgcrypt ? null # gnomeSupport || cupsSupport
@@ -72,14 +73,14 @@ let
     in attrs: concatStringsSep " " (attrValues (mapAttrs toFlag attrs));
 
   gnSystemLibraries = [
-    "flac" "libwebp" "libxslt" "yasm" "opus" "snappy" "libpng"
+    "flac" "libwebp" "libxslt" "opus" "snappy" "libpng"
     # "zlib" # version 77 reports unresolved dependency on //third_party/zlib:zlib_config
     # "libjpeg" # fails with multiple undefined references to chromium_jpeg_*
     # "re2" # fails with linker errors
     # "ffmpeg" # https://crbug.com/731766
     # "harfbuzz-ng" # in versions over 63 harfbuzz and freetype are being built together
                     # so we can't build with one from system and other from source
-  ];
+  ] ++ optional (upstream-info.channel != "dev") "yasm";
 
   opusWithCustomModes = libopus.override {
     withCustomModes = true;
@@ -89,12 +90,12 @@ let
     bzip2 flac speex opusWithCustomModes
     libevent expat libjpeg snappy
     libpng libcap
-    xdg_utils yasm minizip libwebp
+    xdg_utils minizip libwebp
     libusb1 re2 zlib
     ffmpeg libxslt libxml2
     # harfbuzz # in versions over 63 harfbuzz and freetype are being built together
                # so we can't build with one from system and other from source
-  ];
+  ] ++ (if upstream-info.channel == "dev" then [ nasm ] else [ yasm ]);
 
   # build paths and release info
   packageName = extraAttrs.packageName or extraAttrs.name;
@@ -132,6 +133,7 @@ let
       libXScrnSaver libXcursor libXtst libGLU libGL
       pciutils protobuf speechd libXdamage at-spi2-core
       jre
+      pipewire_0_2
     ] ++ optional useVaapi libva
       ++ optional gnomeKeyringSupport libgnome-keyring3
       ++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
@@ -224,8 +226,9 @@ let
       ln -s ${llvmPackages.llvm}/bin/llvm-ar    third_party/llvm-build/Release+Asserts/bin/llvm-ar
     '';
 
-    gnFlags = mkGnFlags ({
+    gnFlags = mkGnFlags (optionalAttrs (upstream-info.channel != "dev") {
       linux_use_bundled_binutils = false;
+    } // {
       use_lld = false;
       use_gold = true;
       gold_path = "${stdenv.cc}/bin";
@@ -243,6 +246,8 @@ let
       # added later in the wrapped -wv build or downloaded from Google.
       enable_widevine = true;
       use_cups = cupsSupport;
+      # Provides the enable-webrtc-pipewire-capturer flag to support Wayland screen capture.
+      rtc_use_pipewire = true;
 
       treat_warnings_as_errors = false;
       is_clang = stdenv.cc.isClang;
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index df1dcb413e1..2fea779a8f8 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -2,6 +2,7 @@
 , makeWrapper, ed
 , glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
 , libva ? null
+, pipewire_0_2
 , gcc, nspr, nss, patchelfUnstable, runCommand
 , lib
 
@@ -43,6 +44,15 @@ let
           sha256 = "00y2d35wvqmx9glaqhfb62wdgbfpwr77v0934nnvh9ks71vnsjqy";
         };
       });
+    } // lib.optionalAttrs (channel == "dev") {
+      gnChromium = gn.overrideAttrs (oldAttrs: {
+        version = "2020-05-19";
+        src = fetchgit {
+          url = "https://gn.googlesource.com/gn";
+          rev = "d0a6f072070988e7b038496c4e7d6c562b649732";
+          sha256 = "0197msabskgfbxvhzq73gc3wlr3n9cr4bzrhy5z5irbvy05lxk17";
+        };
+      });
     });
 
     browser = callPackage ./browser.nix { inherit channel enableWideVine; };
@@ -152,7 +162,7 @@ in stdenv.mkDerivation {
   buildCommand = let
     browserBinary = "${chromiumWV}/libexec/chromium/chromium";
     getWrapperFlags = plugin: "$(< \"${plugin}/nix-support/wrapper-flags\")";
-    libPath = stdenv.lib.makeLibraryPath [ libva ];
+    libPath = stdenv.lib.makeLibraryPath [ libva pipewire_0_2 ];
 
   in with stdenv.lib; ''
     mkdir -p "$out/bin"
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 943b5ed34d6..ced9c2454b5 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -6,9 +6,9 @@
     version = "84.0.4147.38";
   };
   dev = {
-    sha256 = "04jbh8bsvqkm8mdsgyv0465fq5lhz0nn0mcs07kj5hnmzx1g2f3a";
-    sha256bin64 = "0d9knpqbps06wgfgp2s7z693dqiip0m771mv3j2856h5v9rv210l";
-    version = "85.0.4158.4";
+    sha256 = "07h3i4ab7yj05ndrqchzf3f9wr809qb3dj2gfc1653mkjmba8h07";
+    sha256bin64 = "10jdq5mr7qby0m26l5lbsqcbh9bhjdpmpbkkcvv9wm2259rwjxr5";
+    version = "85.0.4164.2";
   };
   stable = {
     sha256 = "10vg0fmwlkzpnixhhhcwccxshqdfq7rh0ribij7wgkw42bv0bi0j";
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
index ee1b08f8be4..eedc34d7d48 100644
--- a/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -42,9 +42,9 @@ with lib;
 # Those pieces of software we entirely ignore upstream's handling of, and just
 # make sure they're in the path if desired.
 let
-  k3sVersion = "1.17.3+k3s1";     # k3s git tag
-  traefikChartVersion = "1.81.0"; # taken from ./scripts/version.sh at the above k3s tag
-  k3sRootVersion = "0.3.0";       # taken from .s/cripts/version.sh at the above k3s tag
+  k3sVersion = "1.18.2+k3s1";     # k3s git tag
+  traefikChartVersion = "1.81.0"; # taken from ./scripts/download at the above k3s tag
+  k3sRootVersion = "0.3.0";       # taken from .s/cripts/download at the above k3s tag
   # bundled into the k3s binary
   traefikChart = fetchurl {
     url = "https://kubernetes-charts.storage.googleapis.com/traefik-${traefikChartVersion}.tgz";
@@ -93,7 +93,7 @@ let
     url = "https://github.com/rancher/k3s";
     rev = "v${k3sVersion}";
     leaveDotGit = true; # ./scripts/version.sh depends on git
-    sha256 = "0qahyc0mf9glxj49va6d20mcncqg4svfic2iz8b1lqid5c4g68mm";
+    sha256 = "01ww3d71mlri2fk6z54rbd697aqwj942kbg323k0hfsnx7flkhps";
   };
   # Stage 1 of the k3s build:
   # Let's talk about how k3s is structured.
@@ -124,7 +124,7 @@ let
 
     src = k3sRepo;
 
-    patches = [ ./patches/00-k3s.patch ];
+    patches = [ ./patches/0001-Use-rm-from-path-in-go-generate.patch ./patches/0002-Add-nixpkgs-patches.patch ];
 
     nativeBuildInputs = [ git pkgconfig ];
     buildInputs = [ libseccomp ];
@@ -164,7 +164,7 @@ let
 
     src = k3sRepo;
 
-    patches = [ ./patches/00-k3s.patch ];
+    patches = [ ./patches/0001-Use-rm-from-path-in-go-generate.patch ./patches/0002-Add-nixpkgs-patches.patch ];
 
     nativeBuildInputs = [ git pkgconfig ];
     buildInputs = [ k3sBuildStage1 k3sPlugins runc ];
diff --git a/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch b/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
deleted file mode 100644
index 1e39792df5c..00000000000
--- a/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-diff --git a/main.go b/main.go
-index 62908bb7bb..0527222887 100644
---- a/main.go
-+++ b/main.go
-@@ -1,5 +1,5 @@
- //go:generate go run pkg/codegen/cleanup/main.go
--//go:generate /bin/rm -rf pkg/generated
-+//go:generate rm -rf pkg/generated
- //go:generate go run pkg/codegen/main.go
- //go:generate go fmt pkg/deploy/zz_generated_bindata.go
- //go:generate go fmt pkg/static/zz_generated_bindata.go
-diff --git a/scripts/build b/scripts/build
-index 72d3c07ece..3e5455b262 100755
---- a/scripts/build
-+++ b/scripts/build
-@@ -10,7 +10,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
- PKG_RANCHER_CONTAINERD="github.com/rancher/containerd"
- PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
- 
--buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
-+# Deterministic build date
-+buildDate="$(date -d "$(git log -1 --format=%ai)" -u "+%Y-%m-%dT%H:%M:%SZ")"
- 
- VENDOR_PREFIX="${PKG}/vendor/"
- VERSIONFLAGS="
-@@ -82,17 +83,7 @@ cleanup() {
- }
- 
- INSTALLBIN=$(pwd)/bin
--if [ ! -x ${INSTALLBIN}/cni ]; then
--(
--    echo Building cni
--    TMPDIR=$(mktemp -d)
--    trap cleanup EXIT
--    WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins
--    git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR
--    cd $WORKDIR
--    GOPATH=$TMPDIR CGO_ENABLED=0 go build -tags "$TAGS" -ldflags "$LDFLAGS $STATIC" -o $INSTALLBIN/cni
--)
--fi
-+# skip building cni, use our separately built one
- # echo Building agent
- # CGO_ENABLED=1 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go
- echo Building server
-@@ -108,9 +99,8 @@ ln -s containerd ./bin/ctr
- #CGO_ENABLED=1 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go
- # echo Building containerd
- # CGO_ENABLED=0 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/
--echo Building runc
--make EXTRA_LDFLAGS="-w -s" BUILDTAGS="apparmor seccomp" -C ./vendor/github.com/opencontainers/runc static
--cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc
-+
-+# skip building runc; use our packaged one
- 
- echo Building containerd-shim
- make -C ./vendor/github.com/containerd/containerd bin/containerd-shim
-diff --git a/scripts/package-cli b/scripts/package-cli
-index 4c66ce32df..280b428bb8 100755
---- a/scripts/package-cli
-+++ b/scripts/package-cli
-@@ -49,16 +49,16 @@ fi
- 
- CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX}
- 
--go generate
-+CGO_ENABLED=0 env -u GOARCH go generate
- LDFLAGS="
-     -X github.com/rancher/k3s/pkg/version.Version=$VERSION
-     -X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8}
-     -w -s
- "
--STATIC="-extldflags '-static'"
- if [ "$DQLITE" = "true" ]; then
-     DQLITE_TAGS="dqlite"
- fi
--CGO_ENABLED=0 go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go
-+go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS" -o ${CMD_NAME} ./cmd/k3s/main.go
- 
--./scripts/build-upload ${CMD_NAME} ${COMMIT}
-+# for nixos, don't upload it
-+# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
diff --git a/pkgs/applications/networking/cluster/k3s/patches/0001-Use-rm-from-path-in-go-generate.patch b/pkgs/applications/networking/cluster/k3s/patches/0001-Use-rm-from-path-in-go-generate.patch
new file mode 100644
index 00000000000..c439241e855
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/patches/0001-Use-rm-from-path-in-go-generate.patch
@@ -0,0 +1,25 @@
+From e79ddef65d08599ae3fe8ff39d202ea2416650b8 Mon Sep 17 00:00:00 2001
+From: Euan Kemp <euank@euank.com>
+Date: Sun, 31 May 2020 17:27:05 -0700
+Subject: [PATCH 1/2] Use 'rm' from path in go generate
+
+/bin/rm is less portable. On some distros, like nixos, it doesn't exist
+at all.
+---
+ main.go | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/main.go b/main.go
+index 62908bb7bb..0527222887 100644
+--- a/main.go
++++ b/main.go
+@@ -1,5 +1,5 @@
+ //go:generate go run pkg/codegen/cleanup/main.go
+-//go:generate /bin/rm -rf pkg/generated
++//go:generate rm -rf pkg/generated
+ //go:generate go run pkg/codegen/main.go
+ //go:generate go fmt pkg/deploy/zz_generated_bindata.go
+ //go:generate go fmt pkg/static/zz_generated_bindata.go
+-- 
+2.25.4
+
diff --git a/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch b/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch
new file mode 100644
index 00000000000..71dea7a9c6e
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch
@@ -0,0 +1,87 @@
+From 1891be119e298ef7c86347a6b74d40ff539cf06e Mon Sep 17 00:00:00 2001
+From: Euan Kemp <euank@euank.com>
+Date: Sun, 31 May 2020 19:02:37 -0700
+Subject: [PATCH 2/2] Add nixpkgs patches
+
+These patches let us re-use the upstream build scripts when building for
+nix.
+---
+ scripts/build       | 20 ++++----------------
+ scripts/package-cli | 10 ++++++----
+ 2 files changed, 10 insertions(+), 20 deletions(-)
+
+diff --git a/scripts/build b/scripts/build
+index 4ca6333c4a..df15f7db1d 100755
+--- a/scripts/build
++++ b/scripts/build
+@@ -12,7 +12,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
+ PKG_RANCHER_CONTAINERD="github.com/rancher/containerd"
+ PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
+ 
+-buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
++# nixpkgs: deterministic build date
++buildDate="$(date -d "$(git log -1 --format=%ai)" -u "+%Y-%m-%dT%H:%M:%SZ")"
+ 
+ VENDOR_PREFIX="${PKG}/vendor/"
+ VERSIONFLAGS="
+@@ -92,17 +93,7 @@ cleanup() {
+ }
+ 
+ INSTALLBIN=$(pwd)/bin
+-if [ ! -x ${INSTALLBIN}/cni ]; then
+-(
+-    echo Building cni
+-    TMPDIR=$(mktemp -d)
+-    trap cleanup EXIT
+-    WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins
+-    git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR
+-    cd $WORKDIR
+-    GOPATH=$TMPDIR CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$LDFLAGS $STATIC" -o $INSTALLBIN/cni
+-)
+-fi
++# nixpkgs: skip building cni, we build it separately
+ # echo Building agent
+ # CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go
+ echo Building server
+@@ -118,10 +109,7 @@ ln -s containerd ./bin/ctr
+ #CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go
+ # echo Building containerd
+ # CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/
+-echo Building runc
+-rm -f ./vendor/github.com/opencontainers/runc/runc
+-make EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./vendor/github.com/opencontainers/runc $RUNC_STATIC
+-cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc
++# nixpkgs: we build runc separately
+ 
+ echo Building containerd-shim
+ rm -f ./vendor/github.com/containerd/containerd/bin/containerd-shim
+diff --git a/scripts/package-cli b/scripts/package-cli
+index f33d8c66dd..da34397a28 100755
+--- a/scripts/package-cli
++++ b/scripts/package-cli
+@@ -49,16 +49,18 @@ fi
+ 
+ CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX}
+ 
+-"${GO}" generate
++CGO_ENABLED=0 env -u GOARCH "${GO}" generate
+ LDFLAGS="
+     -X github.com/rancher/k3s/pkg/version.Version=$VERSION
+     -X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8}
+     -w -s
+ "
+-STATIC="-extldflags '-static'"
++# STATIC="-extldflags '-static'"
++# nixpkgs: we can depend on dynamic linking because we have a good package manager
+ if [ "$DQLITE" = "true" ]; then
+     DQLITE_TAGS="dqlite"
+ fi
+-CGO_ENABLED=0 "${GO}" build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go
++"${GO}" build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS" -o ${CMD_NAME} ./cmd/k3s/main.go
+ 
+-./scripts/build-upload ${CMD_NAME} ${COMMIT}
++# nixpkgs: skip uploading
++# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
+-- 
+2.25.4
+
diff --git a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
index 7afe273599f..715eef4229a 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
@@ -2,17 +2,20 @@
 , fetchurl
 , appimageTools
 , makeWrapper
-, electron_8
+, electron_9
 }:
 
+let
+  electron = electron_9;
+in
 stdenv.mkDerivation rec {
   pname = "jitsi-meet-electron";
-  version = "2.0.2";
+  version = "2.2.0";
 
   src = fetchurl {
     url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
-    sha256 = "04y3qn2clvsfiyp9s6ib09mfxspv3kpr9248sda8s09n1cm0jpps";
-    name="${pname}-${version}.AppImage";
+    sha256 = "0gqyqjj69x1gxwj4zhwazddnj5xzy598xqz7vwkpdm1ldzna2iyj";
+    name = "${pname}-${version}.AppImage";
   };
 
   appimageContents = appimageTools.extractType2 {
@@ -42,7 +45,7 @@ stdenv.mkDerivation rec {
   '';
 
   postFixup = ''
-    makeWrapper ${electron_8}/bin/electron $out/bin/${pname} \
+    makeWrapper ${electron}/bin/electron $out/bin/${pname} \
       --add-flags $out/share/${pname}/resources/app.asar \
       --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}"
   '';
diff --git a/pkgs/applications/networking/openbazaar/default.nix b/pkgs/applications/networking/openbazaar/default.nix
index 6a48b2962fa..aa341b29224 100644
--- a/pkgs/applications/networking/openbazaar/default.nix
+++ b/pkgs/applications/networking/openbazaar/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "openbazaar";
-  version = "0.14.2";
+  version = "0.14.3";
 
   suffix = {
     i686-linux    = "linux-386";
@@ -15,9 +15,9 @@ stdenv.mkDerivation rec {
   src = fetchurl {
     url = "https://github.com/OpenBazaar/openbazaar-go/releases/download/v${version}/${pname}-go-${suffix}";
     sha256 = {
-      i686-linux    = "02kl4ci2pz86qqsll7578q0acygncsyylaschjzzii34c86f1aym";
-      x86_64-darwin = "1v5m94x4x0nc6i8zlcwb36ps1zpgqgcsz81x1ghkz5c9xzszgzbp";
-      x86_64-linux  = "0m0digw66rzhwl2im88qavli9cc5vxd9pwj6ix86dcf98r93xsrp";
+      i686-linux    = "098dgxpz9m4rfswc9yg77s3bvaifd4453s20n8kmh55g5ipgs2x1";
+      x86_64-darwin = "0q989m4zj7x9d6vimmpfkla78hmx2zr7bxm9yg61ir00w60l14jx";
+      x86_64-linux  = "093rwn4nfirknbxz58n16v0l0apj2h0yr63f64fqysmy78883al2";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix
index 5e5df85a527..0d7e81cd9da 100644
--- a/pkgs/applications/science/chemistry/molden/default.nix
+++ b/pkgs/applications/science/chemistry/molden/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, which, gfortran, libGLU, xorg } :
 
 stdenv.mkDerivation rec {
-  version = "6.2";
+  version = "6.3";
   pname = "molden";
 
   src = fetchurl {
     url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden${version}.tar.gz";
-    sha256 = "01m5p7v5pz1fi77var50sp1bzlvdckwr6kn4wanvic2jmvgp9q5n";
+    sha256 = "02qi16pz2wffn3cc47dpjqhfafzwfmb79waw4nnhfyir8a4h3cq1";
   };
 
   nativeBuildInputs = [ which ];
diff --git a/pkgs/applications/science/robotics/qgroundcontrol/default.nix b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
index 1f9d43b3352..63247bcff72 100644
--- a/pkgs/applications/science/robotics/qgroundcontrol/default.nix
+++ b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
@@ -1,34 +1,31 @@
 { lib, mkDerivation, fetchgit, SDL2
 , qtbase, qtcharts, qtlocation, qtserialport, qtsvg, qtquickcontrols2
-, qtgraphicaleffects, qtspeech, qmake
-, makeWrapper
-, gst_all_1, pkgconfig
+, qtgraphicaleffects, qtspeech, qtx11extras, qmake, qttools
+, gst_all_1, wayland, pkgconfig
 }:
 
 mkDerivation rec {
   pname = "qgroundcontrol";
-  version = "3.5.5";
+  version = "4.0.8";
 
   qtInputs = [
     qtbase qtcharts qtlocation qtserialport qtsvg qtquickcontrols2
-    qtgraphicaleffects qtspeech
+    qtgraphicaleffects qtspeech qtx11extras
   ];
 
   gstInputs = with gst_all_1; [
-    gstreamer gst-plugins-base
+    gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad wayland
   ];
 
   enableParallelBuilding = true;
   buildInputs = [ SDL2 ] ++ gstInputs ++ qtInputs;
-  nativeBuildInputs = [ pkgconfig makeWrapper qmake ];
+  nativeBuildInputs = [ pkgconfig qmake qttools ];
 
   preConfigure = ''
     mkdir build
     cd build
   '';
 
-  NIX_CFLAGS_COMPILE = [ "-Wno-address-of-packed-member" ]; # Don't litter logs with these warnings
-
   qmakeFlags = [
     # Default install tries to copy Qt files into package
     "CONFIG+=QGC_DISABLE_BUILD_SETUP"
@@ -36,6 +33,8 @@ mkDerivation rec {
   ];
 
   installPhase = ''
+    runHook preInstall
+
     cd ..
 
     mkdir -p $out/share/applications
@@ -50,18 +49,19 @@ mkDerivation rec {
 
     mkdir -p $out/share/pixmaps
     cp -v resources/icons/qgroundcontrol.png $out/share/pixmaps
+
+    runHook postInstall
   '';
 
   postInstall = ''
-    wrapProgram "$out/bin/qgroundcontrol" \
-      --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
+    qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
   '';
 
   # TODO: package mavlink so we can build from a normal source tarball
   src = fetchgit {
     url = "https://github.com/mavlink/qgroundcontrol.git";
     rev = "v${version}";
-    sha256 = "05zy6w9lwwh254wa8c6wysa67kk0flywcvipii9b1rmy47slflhs";
+    sha256 = "0jr9jpjqdwizsvh9zm0fdp8k2r4536m40dxrn30fbr3ba8vnzkgq";
     fetchSubmodules = true;
   };
 
@@ -70,6 +70,6 @@ mkDerivation rec {
     homepage = "http://qgroundcontrol.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ lopsided98 ];
   };
 }
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 7db27888782..87b4a5418ce 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     (enableFeature withGUI "qt")
   ];
 
-  CXXFLAGS = optional stdenv.cc.isClang "-std=c++14";
+  CXXFLAGS = optional stdenv.cc.isClang "-std=c++17";
 
   dontWrapQtApps = true;
   postFixup = optionalString withGUI ''
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 62389e1230a..acc306a72f2 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -1,17 +1,25 @@
-{ stdenv, rustPlatform, fetchFromGitHub, pkgconfig, dbus, libpulseaudio }:
+{ stdenv, rustPlatform, fetchFromGitHub, pkgconfig, dbus, libpulseaudio, fetchpatch }:
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.13.1";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0va6ny1v7lk30hhx4i5qyk9fwg3apy2nmh6kbmxhcf0rs5449ikg";
+    sha256 = "0d2xigm932x6pc9z24g5cg8xq2crd9n3wq1bwi96h35w799lagjg";
   };
 
-  cargoSha256 = "1lywr21kk3idjyc10gy4848dmmgyqc2jjf7hpzq0vywkp639bf2x";
+  cargoPatches = [
+    # https://github.com/greshake/i3status-rust/pull/732/ (Update Cargo.lock)
+    (fetchpatch {
+      url = "https://github.com/greshake/i3status-rust/commit/7762a5c7ad668272fb8bb8409f12242094b032b8.patch";
+      sha256 = "097f6w91cn53cj1g3bbdqm9jjib5fkb3id91jqvq88h43x14b8zb";
+    })
+  ];
+
+  cargoSha256 = "1k50yhja73w91h6zjmkb5kh1hknpjzrqd3ilvjjyynll513m1sfd";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix
index a39a8720635..37bde66c3df 100644
--- a/pkgs/data/icons/papirus-icon-theme/default.nix
+++ b/pkgs/data/icons/papirus-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "papirus-icon-theme";
-  version = "20200430";
+  version = "20200602";
 
   src = fetchFromGitHub {
     owner = "PapirusDevelopmentTeam";
     repo = pname;
     rev = version;
-    sha256 = "1dgxf3fi4x5iy504xncj1jba8cd51axkn2j1cfb220rpc6mzv25l";
+    sha256 = "0cms5dn8qfasi9xpfcq1hsdyvcb39vkh97mjvi7zrng4iyihq06y";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/misc/nixos-artwork/wallpapers.nix b/pkgs/data/misc/nixos-artwork/wallpapers.nix
index a6a368e26e0..6e6b6e92678 100644
--- a/pkgs/data/misc/nixos-artwork/wallpapers.nix
+++ b/pkgs/data/misc/nixos-artwork/wallpapers.nix
@@ -3,12 +3,18 @@
 let
   mkNixBackground = { name, src, description }:
 
-    stdenv.mkDerivation {
+  let
+    pkg = stdenv.mkDerivation {
       inherit name src;
 
       dontUnpack = true;
 
       installPhase = ''
+        # GNOME
+        mkdir -p $out/share/backgrounds/nixos
+        ln -s $src $out/share/backgrounds/nixos/${src.name}
+
+        # TODO: is this path still needed?
         mkdir -p $out/share/artwork/gnome
         ln -s $src $out/share/artwork/gnome/${src.name}
 
@@ -22,6 +28,11 @@ X-KDE-PluginInfo-Name=${name}
 _EOF
       '';
 
+      passthru = {
+        gnomeFilePath = "${pkg}/share/backgrounds/nixos/${src.name}";
+        kdeFilePath = "${pkg}/share/wallpapers/${name}/contents/images/${src.name}";
+      };
+
       meta = with stdenv.lib; {
         inherit description;
         homepage = "https://github.com/NixOS/nixos-artwork";
@@ -29,6 +40,7 @@ _EOF
         platforms = platforms.all;
       };
     };
+in pkg;
 
 in
 
diff --git a/pkgs/data/misc/wireless-regdb/default.nix b/pkgs/data/misc/wireless-regdb/default.nix
index 45ff07b8efc..cc22606c0d6 100644
--- a/pkgs/data/misc/wireless-regdb/default.nix
+++ b/pkgs/data/misc/wireless-regdb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wireless-regdb";
-  version = "2019.06.03";
+  version = "2020.04.29";
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1gslvh0aqdkv48jyr2ddq153mw28i7qz2ybrjj9qvkk3dgc7x4fd";
+    sha256 = "0yicda474ygahv8da18h1p4yf42s6x2f208mlwcw4xsrxld07zc9";
   };
 
   dontBuild = true;
diff --git a/pkgs/data/themes/adwaita-qt/default.nix b/pkgs/data/themes/adwaita-qt/default.nix
index 9d5334bc79b..dce625de5e3 100644
--- a/pkgs/data/themes/adwaita-qt/default.nix
+++ b/pkgs/data/themes/adwaita-qt/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "adwaita-qt";
-  version = "1.1.1";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "FedoraQt";
     repo = pname;
     rev = version;
-    sha256 = "1z1zl6b1190nffcdyjnwz2xy4s6cvgd98aas9z71l5iddwzy32fm";
+    sha256 = "1zfah1ybfgi4dag3lxqap99giwwng9b3lgcick1ciylz6vwf2gwh";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/themes/stilo/default.nix b/pkgs/data/themes/stilo/default.nix
index 798c1b74f95..ecef868f287 100644
--- a/pkgs/data/themes/stilo/default.nix
+++ b/pkgs/data/themes/stilo/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "stilo-themes";
-  version = "3.34-2";
+  version = "3.36-2";
 
   src = fetchFromGitHub {
     owner = "lassekongo83";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1i5cl61dk8sxa6h61ghynm4wp1qzp3c7kwf4ks0ddzzk9dbvdrhb";
+    sha256 = "0w4il6rk1f8yjmdxpnzq6zll2jjqbyp9dckxhzxgs4zh8fy9pzvh";
   };
 
   nativeBuildInputs = [ meson ninja sassc ];
diff --git a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
index 4e8d8bfeb15..3215c001a5e 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "--sysconfdir=${placeholder "out"}/etc"
-    "-Ddefault-wallpaper=${nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png"
+    "-Ddefault-wallpaper=${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}"
     "-Dplank-dockitems=false"
   ];
 
diff --git a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
index 64c4509280a..c460d45dfee 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
@@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
     # Needed until https://github.com/elementary/greeter/issues/360 is fixed
     (substituteAll {
       src = ./hardcode-fallback-background.patch;
-      default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png";
+      default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}";
     })
   ];
 
@@ -113,7 +113,7 @@ stdenv.mkDerivation rec {
     # Use NixOS default wallpaper
     substituteInPlace $out/etc/lightdm/io.elementary.greeter.conf \
       --replace "#default-wallpaper=/usr/share/backgrounds/elementaryos-default" \
-      "default-wallpaper=${nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png"
+      "default-wallpaper=${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}"
 
     substituteInPlace $out/share/xgreeters/io.elementary.greeter.desktop \
       --replace "Exec=io.elementary.greeter" "Exec=$out/bin/io.elementary.greeter"
diff --git a/pkgs/development/compilers/rust/rls/default.nix b/pkgs/development/compilers/rust/rls/default.nix
index 4cf507fbf5c..05a9d5049a4 100644
--- a/pkgs/development/compilers/rust/rls/default.nix
+++ b/pkgs/development/compilers/rust/rls/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, rustPlatform
+{ stdenv, makeWrapper, fetchFromGitHub, rustPlatform
 , openssh, openssl, pkgconfig, cmake, zlib, curl, libiconv
 , CoreFoundation, Security }:
 
@@ -23,7 +23,7 @@ rustPlatform.buildRustPackage {
   CARGO_BUILD_RUSTFLAGS = if stdenv.isDarwin then "-C rpath" else null;
 
   nativeBuildInputs = [ pkgconfig cmake ];
-  buildInputs = [ openssh openssl curl zlib libiconv rustPlatform.rust.rustc.llvm ]
+  buildInputs = [ openssh openssl curl zlib libiconv makeWrapper rustPlatform.rust.rustc.llvm ]
     ++ (stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation Security ]);
 
   doCheck = true;
@@ -35,6 +35,11 @@ rustPlatform.buildRustPackage {
     $out/bin/rls --version
   '';
 
+  RUST_SRC_PATH = rustPlatform.rustcSrc;
+  postInstall = ''
+    wrapProgram $out/bin/rls --set-default RUST_SRC_PATH ${rustPlatform.rustcSrc}
+  '';
+
   meta = with stdenv.lib; {
     description = "Rust Language Server - provides information about Rust programs to IDEs and other tools";
     homepage = "https://github.com/rust-lang/rls/";
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index 93d708e7d31..5f3d42b4da3 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -15,6 +15,7 @@
 , libpulseaudio
 , AudioUnit, Cocoa, CoreAudio, CoreServices, ForceFeedback, OpenGL
 , audiofile, libiconv
+, withStatic ? false
 }:
 
 # NOTE: When editing this expression see if the same change applies to
@@ -30,7 +31,7 @@ stdenv.mkDerivation rec {
     url = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
     sha256 = "0qy8wbqvfkb5ps8kxgaaf2zzpkjqbsw712hlp74znbn0jpv6i4il";
   };
-
+  dontDisableStatic = withStatic;
   outputs = [ "out" "dev" ];
   outputBin = "dev"; # sdl-config
 
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix
index e7cc12e0db5..a7d68d62f2a 100644
--- a/pkgs/development/libraries/dlib/default.nix
+++ b/pkgs/development/libraries/dlib/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dlib";
-  version = "19.19";
+  version = "19.20";
 
   src = fetchFromGitHub {
     owner = "davisking";
     repo = "dlib";
     rev ="v${version}";
-    sha256 = "0574p46zf85nx33cam4yqcg20g94kkmrvi5689r1xshprr0szghp";
+    sha256 = "10b5hrprlls0nhljx18ys8cms7bgqirvhxlx6gbvbprbi6q16f9r";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/libjpeg-drop/default.nix b/pkgs/development/libraries/libjpeg-drop/default.nix
deleted file mode 100644
index 22cb1b13589..00000000000
--- a/pkgs/development/libraries/libjpeg-drop/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ stdenv, fetchurl, static ? true }:
-
-with stdenv.lib;
-
-stdenv.mkDerivation {
-  name = "libjpeg-drop-9b";
-
-  srcs = [
-    (fetchurl {
-      url = "http://www.ijg.org/files/jpegsrc.v9b.tar.gz";
-      sha256 = "0lnhpahgdwlrkd41lx6cr90r199f8mc6ydlh7jznj5klvacd63r4";
-    })
-    (fetchurl {
-      url = "http://jpegclub.org/droppatch.v9b.tar.gz";
-      sha256 = "022bnvpird7w5pwbfqpq7j7pwja5kp6x9k3sdypcy3g2nwwy2wwk";
-    })
-  ];
-
-  postUnpack = ''
-    rm jpegtran
-    mv jpegtran.c jpeg-9b/jpegtran.c
-    mv transupp.c jpeg-9b/transupp.c
-    mv transupp.h jpeg-9b/transupp.h
-  '';
-
-  configureFlags = []
-    ++ optionals static [ "--enable-static" "--disable-shared" ];
-
-  outputs = [ "bin" "dev" "out" "man" ];
-
-  meta = {
-    homepage = "http://jpegclub.org/jpegtran/";
-    description = "Experimental lossless crop 'n' drop (cut & paste) patches for libjpeg";
-    license = stdenv.lib.licenses.free;
-  };
-}
diff --git a/pkgs/development/libraries/openfst/default.nix b/pkgs/development/libraries/openfst/default.nix
index 0c972b29cc7..db644287d2e 100644
--- a/pkgs/development/libraries/openfst/default.nix
+++ b/pkgs/development/libraries/openfst/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "openfst";
-  version = "1.7.6";
+  version = "1.7.7";
 
   src = fetchurl {
     url = "http://www.openfst.org/twiki/pub/FST/FstDownload/${pname}-${version}.tar.gz";
-    sha256 = "03hs0196qbjfbviqn6nnb7igvv3cnpxyizlwlzmx88a6fhiq97bm";
+    sha256 = "1gpkpkls78xlidqq241scdz9vagxl8c4ksc4lqj4ycwx6vzyliij";
   };
 
   configureFlags = [
diff --git a/pkgs/development/libraries/openxr-loader/default.nix b/pkgs/development/libraries/openxr-loader/default.nix
index 6ecdb30c1f2..47f9afe1861 100644
--- a/pkgs/development/libraries/openxr-loader/default.nix
+++ b/pkgs/development/libraries/openxr-loader/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openxr-loader";
-  version = "1.0.8";
+  version = "1.0.9";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenXR-SDK-Source";
     rev = "release-${version}";
-    sha256 = "0p5i4360hc5y8rqhgpvg1f1yaxl7kay471868vfzkp44g8dybkvm";
+    sha256 = "0xm5bwbsv2qlx1mg9zr98q7rm5hginrff4z0ahv7jrqrzv24acp7";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/development/libraries/pipewire/2.nix b/pkgs/development/libraries/pipewire/0.2.nix
index e9656ee23ec..e9656ee23ec 100644
--- a/pkgs/development/libraries/pipewire/2.nix
+++ b/pkgs/development/libraries/pipewire/0.2.nix
diff --git a/pkgs/development/libraries/pkger/default.nix b/pkgs/development/libraries/pkger/default.nix
index c50f5532f56..09c48ff8b0a 100644
--- a/pkgs/development/libraries/pkger/default.nix
+++ b/pkgs/development/libraries/pkger/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "pkger";
-  version = "0.16.0";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "markbates";
     repo = "pkger";
     rev = "v${version}";
-    sha256 = "0fpvrgww5h40l2js7raarx6gpysafvj75x26ljx4qz925x8nb6zn";
+    sha256 = "195ba1avkpm9ssgakngv8j72k7yq2xna3xmm5m8l6c5g7lf91kkp";
   };
 
   vendorSha256 = "1b9gpym6kb4hpdbrixphfh1qylmqr265jrmcd4vxb87ahvrsrvgp";
diff --git a/pkgs/development/lua-modules/overrides.nix b/pkgs/development/lua-modules/overrides.nix
index af349ba02aa..30be2c197a5 100644
--- a/pkgs/development/lua-modules/overrides.nix
+++ b/pkgs/development/lua-modules/overrides.nix
@@ -40,11 +40,6 @@ with super;
       { name = "CRYPTO"; dep = pkgs.openssl; }
       { name = "OPENSSL"; dep = pkgs.openssl; }
     ];
-
-    # https://github.com/wahern/cqueues/issues/227
-    NIX_CFLAGS_COMPILE = with pkgs.stdenv; lib.optionalString hostPlatform.isDarwin
-      "-DCLOCK_MONOTONIC -DCLOCK_REALTIME";
-
     disabled = luaOlder "5.1" || luaAtLeast "5.4";
     # Upstream rockspec is pointlessly broken into separate rockspecs, per Lua
     # version, which doesn't work well for us, so modify it
diff --git a/pkgs/development/ocaml-modules/pa_test/default.nix b/pkgs/development/ocaml-modules/pa_test/default.nix
deleted file mode 100644
index 6a90561c682..00000000000
--- a/pkgs/development/ocaml-modules/pa_test/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{stdenv, buildOcaml, fetchurl, type_conv, pa_ounit, sexplib_p4, herelib}:
-
-buildOcaml rec {
-  name = "pa_test";
-  version = "112.24.00";
-
-  minimumSupportedOcamlVersion = "4.00";
-
-  src = fetchurl {
-    url = "https://github.com/janestreet/pa_test/archive/${version}.tar.gz";
-    sha256 = "b03d13c2bc9fa9a4b1c507d7108d965202160f83e9781d430d3b53a1993e30d6";
-  };
-
-  buildInputs = [ pa_ounit ];
-  propagatedBuildInputs = [ type_conv sexplib_p4 herelib ];
-
-  meta = with stdenv.lib; {
-    homepage = "https://github.com/janestreet/pa_test";
-    description = "Syntax to reduce boiler plate in testing";
-    license = licenses.asl20;
-    maintainers = [ maintainers.ericbmerritt ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/sexplib/108.08.00.nix b/pkgs/development/ocaml-modules/sexplib/108.08.00.nix
deleted file mode 100644
index 349dffcf47b..00000000000
--- a/pkgs/development/ocaml-modules/sexplib/108.08.00.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{stdenv, fetchurl, ocaml, findlib, type_conv, camlp4}:
-
-if !stdenv.lib.versionAtLeast ocaml.version "3.12"
-|| stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "sexlib-108.08.00 is not available for OCaml ${ocaml.version}" else
-
-stdenv.mkDerivation {
-  name = "ocaml-sexplib-108.08.00";
-
-  src = fetchurl {
-    url = "https://ocaml.janestreet.com/ocaml-core/108.08.00/individual/sexplib-108.08.00.tar.gz";
-    sha256 = "11z1k1d7dbb5m957klgalimpr0r602xp5zkkbgbffib1bphasarg";
-  };
-
-  buildInputs = [ocaml findlib];
-  propagatedBuildInputs = [type_conv camlp4];
-
-  createFindlibDestdir = true;
-
-  meta = with stdenv.lib; {
-    branch = "108";
-    homepage = "https://ocaml.janestreet.com/";
-    description = "Library for serializing OCaml values to and from S-expressions";
-    license = licenses.asl20;
-    maintainers = [ maintainers.vbgl ];
-    platforms = ocaml.meta.platforms or [];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/sexplib/111.25.00.nix b/pkgs/development/ocaml-modules/sexplib/111.25.00.nix
deleted file mode 100644
index adf878bca03..00000000000
--- a/pkgs/development/ocaml-modules/sexplib/111.25.00.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{stdenv, fetchurl, ocaml, findlib, type_conv, camlp4}:
-
-if !stdenv.lib.versionAtLeast ocaml.version "4.00"
-|| stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "sexlib-111.25.00 is not available for OCaml ${ocaml.version}" else
-
-
-stdenv.mkDerivation {
-  name = "ocaml-sexplib-111.25.00";
-
-  src = fetchurl {
-    url = "https://ocaml.janestreet.com/ocaml-core/111.25.00/individual/sexplib-111.25.00.tar.gz";
-    sha256 = "0qh0zqp5nakqpmmhh4x7cg03vqj3j2bj4zj0nqdlksai188p9ila";
-  };
-
-  buildInputs = [ocaml findlib];
-  propagatedBuildInputs = [type_conv camlp4];
-
-  createFindlibDestdir = true;
-
-  meta = with stdenv.lib; {
-    homepage = "https://ocaml.janestreet.com/";
-    description = "Library for serializing OCaml values to and from S-expressions";
-    license = licenses.asl20;
-    maintainers = [ maintainers.vbgl maintainers.ericbmerritt ];
-    platforms = ocaml.meta.platforms or [];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/sexplib/112.24.01.nix b/pkgs/development/ocaml-modules/sexplib/112.24.01.nix
deleted file mode 100644
index fe7b9020dae..00000000000
--- a/pkgs/development/ocaml-modules/sexplib/112.24.01.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, buildOcaml, fetchurl, ocaml, type_conv, camlp4 }:
-
-if !stdenv.lib.versionAtLeast ocaml.version "4.02"
-|| stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "sexlib-112.24.01 is not available for OCaml ${ocaml.version}" else
-
-buildOcaml rec {
-  minimumSupportedOcamlVersion = "4.02";
-  name = "sexplib";
-  version = "112.24.01";
-
-  src = fetchurl {
-    url = "https://github.com/janestreet/sexplib/archive/${version}.tar.gz";
-    sha256 = "5f776aee295cc51c952aecd4b74b52dd2b850c665cc25b3d69bc42014d3ba073";
-  };
-
-  propagatedBuildInputs = [ type_conv camlp4 ];
-
-  meta = with stdenv.lib; {
-    homepage = "https://ocaml.janestreet.com/";
-    description = "Library for serializing OCaml values to and from S-expressions";
-    license = licenses.asl20;
-    maintainers = [ maintainers.ericbmerritt ];
-  };
-}
diff --git a/pkgs/development/python-modules/buildbot/default.nix b/pkgs/development/python-modules/buildbot/default.nix
index f9a73d24831..2b2e703026d 100644
--- a/pkgs/development/python-modules/buildbot/default.nix
+++ b/pkgs/development/python-modules/buildbot/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPythonPackage, fetchFromGitHub, fetchpatch, makeWrapper, isPy3k,
+{ stdenv, lib, buildPythonPackage, fetchPypi, fetchpatch, makeWrapper, isPy3k,
   python, twisted, jinja2, zope_interface, future, sqlalchemy,
   sqlalchemy_migrate, dateutil, txaio, autobahn, pyjwt, pyyaml, treq,
   txrequests, pyjade, boto3, moto, mock, python-lz4, setuptoolsTrial,
@@ -25,17 +25,12 @@ let
 
   package = buildPythonPackage rec {
     pname = "buildbot";
-    version = "2.8.0";
+    version = "2.8.1";
 
-    # tests fail with the 2.8.0 sdist, so fetchFromGitHub instead
-    # https://github.com/buildbot/buildbot/pull/5322
-    src = fetchFromGitHub {
-      owner = "buildbot";
-      repo = "buildbot";
-      rev = "v${version}";
-      sha256 = "0akd61mgjp53c3vyf2yyzd0xf0cjwpvsi7g8pz72xrvnil1s4w7k";
+    src = fetchPypi {
+      inherit pname version;
+      sha256 = "1nrbn8a2c56l5j0axmn9ijaviw0a6nrd34sg81r5j05mzzpb69is";
     };
-    sourceRoot = "./source/master";
 
     propagatedBuildInputs = [
       # core
diff --git a/pkgs/development/python-modules/buildbot/pkg.nix b/pkgs/development/python-modules/buildbot/pkg.nix
index 12a7e99984f..ebf8fb9c94e 100644
--- a/pkgs/development/python-modules/buildbot/pkg.nix
+++ b/pkgs/development/python-modules/buildbot/pkg.nix
@@ -1,12 +1,12 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k }:
+{ lib, buildPythonPackage, fetchPypi, isPy3k, buildbot }:
 
 buildPythonPackage rec {
   pname = "buildbot-pkg";
-  version = "2.8.0";
+  inherit (buildbot) version;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "09sf36h8q8wrp0n57nb9915k86qdjyjj4xpdzy8q4s9z121iw0xz";
+    sha256 = "03ppmrnpyd77azylv1c673cffk6x53j9flx4i99k33bljmdy8iv4";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/buildbot/plugins.nix b/pkgs/development/python-modules/buildbot/plugins.nix
index abb5d356540..302615dc469 100644
--- a/pkgs/development/python-modules/buildbot/plugins.nix
+++ b/pkgs/development/python-modules/buildbot/plugins.nix
@@ -7,7 +7,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1xq7pqvvsvgd2n38yzk0bqx943ldxsldrdcldwjshazq831rbdbn";
+      sha256 = "051y4z70dq0j343rb02wn3a1vkdbi8khjfib2msa80vdld3nxcyv";
     };
 
     # Remove unneccessary circular dependency on buildbot
@@ -34,7 +34,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "0ixq8x845glnykpab2z0vhwp69nbw98mg0df34kf32wjvm8j6kjh";
+      sha256 = "0chw111j2c6ybvbb09x39zg7ghjz4ysw67wbpcmzd1v5jnwbaqdi";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -56,7 +56,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1gn0amv8l0n0ny1x78g8x4rpfsnhcs9gkws2zw3nx78y4pbs6lw5";
+      sha256 = "14v2lj65ccgmijxqrr61vpgba30q6w5vnisz78y3hbf3qpxmmd7g";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -78,7 +78,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "04c0m4liyl4aaksq9x8wncasacfv0vgl0igafnhf440cf9lhkkwy";
+      sha256 = "03q9am237f2r8ivqm1dfkyzm3bmns4xjn99c27ps6dw9an15f73a";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -100,7 +100,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "0c7lr4q3dvz3zhbnsvs2chsc6yn2jh10dnh1y66axdxk8hpqs3nc";
+      sha256 = "0wv5ghsfmhkbk96zimihcwn16rxjz1q1g5ppahb8gfrclmzhdynl";
     };
 
     buildInputs = [ buildbot-pkg ];
diff --git a/pkgs/development/python-modules/buildbot/worker.nix b/pkgs/development/python-modules/buildbot/worker.nix
index 4f77fb7ae06..936ef661eee 100644
--- a/pkgs/development/python-modules/buildbot/worker.nix
+++ b/pkgs/development/python-modules/buildbot/worker.nix
@@ -1,13 +1,13 @@
-{ lib, buildPythonPackage, fetchPypi, setuptoolsTrial, mock, twisted, future,
-  coreutils }:
+{ lib, buildPythonPackage, fetchPypi, buildbot, setuptoolsTrial, mock, twisted,
+  future, coreutils }:
 
 buildPythonPackage (rec {
   pname = "buildbot-worker";
-  version = "2.8.0";
+  inherit (buildbot) version;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "19pabha9jh3jnz9micfn5y4khnx4q6g1zc27wvfw6663mw6spykx";
+    sha256 = "1cba1zmm3gfw3ikax7q4vbrxnvjxlby79x5lc4fg9c3igbm0nmwj";
   };
 
   propagatedBuildInputs = [ twisted future ];
diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix
index 47a60acaa0a..e9f50420ca9 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.4";
+  version = "8.12.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "021dc6kdzqh9kkrsbs08x3ibmfm4xr9hqvdnsji6l0knw1zrkia6";
+    sha256 = "09kww3fzn85gbj4lw8kqrppm9kq7nmy7b96p76sscamrpsdg31im";
   };
 
   meta = {
diff --git a/pkgs/development/python-modules/pillow/6.nix b/pkgs/development/python-modules/pillow/6.nix
new file mode 100644
index 00000000000..ad69f4f2345
--- /dev/null
+++ b/pkgs/development/python-modules/pillow/6.nix
@@ -0,0 +1,82 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPyPy
+, olefile
+, freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11
+, openjpeg, libimagequant
+, pytest, pytestrunner, pyroma, numpy
+}:
+
+buildPythonPackage rec {
+  pname = "Pillow";
+  version = "6.2.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0l5rv8jkdrb5q846v60v03mcq64yrhklidjkgwv6s1pda71g17yv";
+  };
+
+  # Disable imagefont tests, because they don't work well with infinality:
+  # https://github.com/python-pillow/Pillow/issues/1259
+  postPatch = ''
+    rm Tests/test_imagefont.py
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+    python -m pytest -v -x -W always
+    runHook postCheck
+  '';
+
+  propagatedBuildInputs = [ olefile ];
+
+  checkInputs = [ pytest pytestrunner pyroma numpy ];
+
+  buildInputs = [
+    freetype libjpeg openjpeg libimagequant zlib libtiff libwebp tcl lcms2 ]
+    ++ stdenv.lib.optionals (isPyPy) [ tk libX11 ];
+
+  # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
+  # NOTE: The Pillow install script will, by default, add paths like /usr/lib
+  # and /usr/include to the search paths. This can break things when building
+  # on a non-NixOS system that has some libraries installed that are not
+  # installed in Nix (for example, Arch Linux has jpeg2000 but Nix doesn't
+  # build Pillow with this support). We patch the `disable_platform_guessing`
+  # setting here, instead of passing the `--disable-platform-guessing`
+  # command-line option, since the command-line option doesn't work when we run
+  # tests.
+  preConfigure = let
+    libinclude' = pkg: ''"${pkg.out}/lib", "${pkg.out}/include"'';
+    libinclude = pkg: ''"${pkg.out}/lib", "${pkg.dev}/include"'';
+  in ''
+    sed -i "setup.py" \
+        -e 's|^FREETYPE_ROOT =.*$|FREETYPE_ROOT = ${libinclude freetype}|g ;
+            s|^JPEG_ROOT =.*$|JPEG_ROOT = ${libinclude libjpeg}|g ;
+            s|^JPEG2K_ROOT =.*$|JPEG2K_ROOT = ${libinclude openjpeg}|g ;
+            s|^IMAGEQUANT_ROOT =.*$|IMAGEQUANT_ROOT = ${libinclude' libimagequant}|g ;
+            s|^ZLIB_ROOT =.*$|ZLIB_ROOT = ${libinclude zlib}|g ;
+            s|^LCMS_ROOT =.*$|LCMS_ROOT = ${libinclude lcms2}|g ;
+            s|^TIFF_ROOT =.*$|TIFF_ROOT = ${libinclude libtiff}|g ;
+            s|^TCL_ROOT=.*$|TCL_ROOT = ${libinclude' tcl}|g ;
+            s|self\.disable_platform_guessing = None|self.disable_platform_guessing = True|g ;'
+    export LDFLAGS="-L${libwebp}/lib"
+    export CFLAGS="-I${libwebp}/include"
+  ''
+  # Remove impurities
+  + stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace setup.py \
+      --replace '"/Library/Frameworks",' "" \
+      --replace '"/System/Library/Frameworks"' ""
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://python-pillow.github.io/";
+    description = "Fork of The Python Imaging Library (PIL)";
+    longDescription = ''
+      The Python Imaging Library (PIL) adds image processing
+      capabilities to your Python interpreter.  This library
+      supports many file formats, and provides powerful image
+      processing and graphics capabilities.
+    '';
+    license = "http://www.pythonware.com/products/pil/license.htm";
+    maintainers = with maintainers; [ goibhniu prikhi ];
+  };
+}
diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix
index 2f9fac6c3d1..cc9a77be782 100644
--- a/pkgs/development/python-modules/pillow/default.nix
+++ b/pkgs/development/python-modules/pillow/default.nix
@@ -2,7 +2,7 @@
 , olefile
 , freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11
 , openjpeg, libimagequant
-, pytest, pytestrunner, pyroma, numpy
+, pyroma, numpy, pytestCheckHook
 , isPy3k
 }:
 
@@ -23,15 +23,12 @@ buildPythonPackage rec {
     rm Tests/test_imagefont.py
   '';
 
-  checkPhase = ''
-    runHook preCheck
-    python -m pytest -v -x -W always
-    runHook postCheck
-  '';
+  # Disable darwin tests which require executables: `iconutil` and `screencapture`
+  disabledTests = stdenv.lib.optionals stdenv.isDarwin [ "test_save" "test_grab" "test_grabclipboard" ];
 
   propagatedBuildInputs = [ olefile ];
 
-  checkInputs = [ pytest pytestrunner pyroma numpy ];
+  checkInputs = [ pytestCheckHook pyroma numpy ];
 
   buildInputs = [
     freetype libjpeg openjpeg libimagequant zlib libtiff libwebp tcl lcms2 ]
@@ -71,8 +68,8 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "https://python-pillow.github.io/";
-    description = "Fork of The Python Imaging Library (PIL)";
+    homepage = "https://python-pillow.org/";
+    description = "The friendly PIL fork (Python Imaging Library)";
     longDescription = ''
       The Python Imaging Library (PIL) adds image processing
       capabilities to your Python interpreter.  This library
diff --git a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index b743ba4a2de..03764549095 100644
--- a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tarpaulin";
-  version = "0.13.2";
+  version = "0.13.3";
 
   src = fetchFromGitHub {
     owner = "xd009642";
     repo = "tarpaulin";
     rev = "${version}";
-    sha256 = "0sjd0xvphrc2kxzvwk4l0dnshn062ghn9f29h7k2ifsf2myl7066";
+    sha256 = "1zc03frbag0lhxxbrdhip5h61ah16rqfcs314nyx7lfn3jd0gqzd";
   };
 
   nativeBuildInputs = [
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   ];
   buildInputs = [ openssl ];
 
-  cargoSha256 = "1w9pymg989kl29s4dhr32ck0nq61pg9h1qf4aad1sv83llbqahq0";
+  cargoSha256 = "15qf5hb6gm4lm1dcsqqs8nmd43m1qmw2g2zpj3c0abs5fbdz8k3a";
   #checkFlags = [ "--test-threads" "1" ];
   doCheck = false;
 
diff --git a/pkgs/development/tools/analysis/tflint/default.nix b/pkgs/development/tools/analysis/tflint/default.nix
index 189365008aa..d4d09f7ae26 100644
--- a/pkgs/development/tools/analysis/tflint/default.nix
+++ b/pkgs/development/tools/analysis/tflint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.16.1";
+  version = "0.16.2";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1sh34zrk90sfi3x48d583izzw2bijnpsv6yqslzjpvsgkg8d96vz";
+    sha256 = "09s4a7xgzr6qr268j3bqjj18s9gn9xcssfvm6w918m7wd39zgqy0";
   };
 
-  vendorSha256 = "0xgv4jsrh8rfas7577xqv609pac05rvyshfm8vjx0kv38rnx3hfv";
+  vendorSha256 = "1w833lx52m61dv4aq25946bnfwj8yd2g7w989d66ih39simxsvzr";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 64a2cedd1c9..ae9d47adddd 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.3.10";
+  version = "1.3.12";
 
   src = fetchurl {
     urls = [
       "https://piccolo.link/sbt-${version}.tgz"
       "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
     ];
-    sha256 = "1023qcbdbwl40l7mgyd3j0ggr6paz1zs2q787ym52dhrcibhcq1h";
+    sha256 = "0mwdqn0vk90wdpfzrbbc8l28407z5d62bvsi6jlgds2vbywjprxl";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/cloudflare-wrangler/default.nix b/pkgs/development/tools/cloudflare-wrangler/default.nix
deleted file mode 100644
index 623afc3e743..00000000000
--- a/pkgs/development/tools/cloudflare-wrangler/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl, curl, darwin }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cloudflare-wrangler";
-  version = "1.9.1";
-
-  src = fetchFromGitHub {
-    owner = "cloudflare";
-    repo = "wrangler";
-    rev = "v${version}";
-    sha256 = "09rq6lnv9993ah49jxqaqqhv5xxj51gxlqdi99wkj217cxp9gqqn";
-  };
-
-  cargoSha256 = "0vlb1g4pki84n2zf6w3bisa7jpv0ws8nb3lgr0bkjrirf60a9xsk";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [
-                  curl
-                  darwin.apple_sdk.frameworks.Security
-                  darwin.apple_sdk.frameworks.CoreServices
-                  darwin.apple_sdk.frameworks.CoreFoundation
-                ];
-
-  # tries to use "/homeless-shelter" and fails
-  doCheck = false;
-
-  meta = with stdenv.lib; {
-    description = "A CLI tool designed for folks who are interested in using Cloudflare Workers";
-    homepage = "https://github.com/cloudflare/wrangler";
-    license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/tools/electron/3.x.nix b/pkgs/development/tools/electron/3.x.nix
deleted file mode 100644
index ee4b69ddca3..00000000000
--- a/pkgs/development/tools/electron/3.x.nix
+++ /dev/null
@@ -1,77 +0,0 @@
-{ stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, gtk2, at-spi2-atk }:
-
-let
-  version = "3.1.13";
-  name = "electron-${version}";
-
-  throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
-
-  meta = with stdenv.lib; {
-    description = "Cross platform desktop application shell";
-    homepage = "https://github.com/electron/electron";
-    license = licenses.mit;
-    maintainers = with maintainers; [ travisbhartwell manveru ];
-    platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ];
-  };
-
-  linux = {
-    inherit name version meta;
-    src = {
-      i686-linux = fetchurl {
-        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "04i0rcp4ajp4nf4arcl5crcc7a85sf0ixqd8jx07k2b1irv4dc23";
-      };
-      x86_64-linux = fetchurl {
-        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "1psmbplz6jhnnf6hmfhxbmmhn4n1dpnhzbc12pxn645xhfpk9ark";
-      };
-      armv7l-linux = fetchurl {
-        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "1pzs2cj12xw18jwab0mb8xhndwd95lbsj5ml5xdw2mb0ip5jsvsa";
-      };
-      aarch64-linux = fetchurl {
-        url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "13pc7xn0dkb8i31vg9zplqcvb7r9r7q3inmr3419b5p9bl0687x8";
-      };
-    }.${stdenv.hostPlatform.system} or throwSystem;
-
-    buildInputs = [ unzip makeWrapper ];
-
-    buildCommand = ''
-      mkdir -p $out/lib/electron $out/bin
-      unzip -d $out/lib/electron $src
-      ln -s $out/lib/electron/electron $out/bin
-
-      fixupPhase
-
-      patchelf \
-        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath "${atomEnv.libPath}:${gtk2}/lib:${at-spi2-atk}/lib:$out/lib/electron" \
-        $out/lib/electron/electron
-
-      wrapProgram $out/lib/electron/electron \
-        --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1
-    '';
-  };
-
-  darwin = {
-    inherit name version meta;
-
-    src = fetchurl {
-      url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "1vvjm4jifzjqvbs2kjlwg1h9p2czr2b5imjr9hld1j8nyfrzb0dx";
-    };
-
-    buildInputs = [ unzip ];
-
-    buildCommand = ''
-      mkdir -p $out/Applications
-      unzip $src
-      mv Electron.app $out/Applications
-      mkdir -p $out/bin
-      ln -s $out/Applications/Electron.app/Contents/MacOS/Electron $out/bin/electron
-    '';
-  };
-in
-
-  stdenv.mkDerivation (if stdenv.isDarwin then darwin else linux)
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 9ed0d27894e..14f9c209537 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -4,6 +4,14 @@ let
   mkElectron = import ./generic.nix args;
 in
 {
+  electron_3 = mkElectron "3.1.13" {
+    x86_64-linux = "1psmbplz6jhnnf6hmfhxbmmhn4n1dpnhzbc12pxn645xhfpk9ark";
+    x86_64-darwin = "1vvjm4jifzjqvbs2kjlwg1h9p2czr2b5imjr9hld1j8nyfrzb0dx";
+    i686-linux = "04i0rcp4ajp4nf4arcl5crcc7a85sf0ixqd8jx07k2b1irv4dc23";
+    armv7l-linux = "1pzs2cj12xw18jwab0mb8xhndwd95lbsj5ml5xdw2mb0ip5jsvsa";
+    aarch64-linux = "13pc7xn0dkb8i31vg9zplqcvb7r9r7q3inmr3419b5p9bl0687x8";
+  };
+
   electron_4 = mkElectron "4.2.12" {
     x86_64-linux = "72c5319c92baa7101bea3254a036c0cd3bcf257f4a03a0bb153668b7292ee2dd";
     x86_64-darwin = "89b0e16bb9b7072ed7ed1906fccd08540acdd9f42dd8a29c97fa17d811b8c5e5";
@@ -28,27 +36,27 @@ in
     aarch64-linux = "4ae23b75be821044f7e5878fe8e56ab3109cbd403ecd88221effa6abf850260b";
   };
 
-  electron_7 = mkElectron "7.3.0" {
-    x86_64-linux = "5841d2dae8633ddec654574507689a61983acd774e6cdc8774a64b26eb41b5d4";
-    x86_64-darwin = "dfe6aeda73b71aa016fb87f5fdbf87f7d8e574f1cf318fc2a5543399b4e975ae";
-    i686-linux = "fdcedc8fda7c3580dadfa50d2ffcf9ebde4d7a01b0a36fb799703510e3a7811f";
-    armv7l-linux = "b2989bab1be05230364c058fbadf9967b23873d24e24ac3f7c8d013c11ed73e4";
-    aarch64-linux = "15a70ae79aabbf6bb9ee8a107fd08ddc1021c534679899f88e1fcc8d4de980fe";
+  electron_7 = mkElectron "7.3.1" {
+    x86_64-linux = "66f37aadf65c0274cc6e46b09e52c38b2c8c5b2d6bbf1cd8196cd69b9f9ab737";
+    x86_64-darwin = "351b30cab32539752ce5f9b53d2345352df922d57a152643c4eeb636a8941d23";
+    i686-linux = "f80b8a684da13736d7614ca4ad5704812d12537111cb45010e5f42e7e4403554";
+    armv7l-linux = "ef054696f4138e261b1310522d57bbdc5336e34488b3e273a8a794f8c26509c7";
+    aarch64-linux = "f32376ca85c9017b7ab399e58fa176d882baacb048dd69d816831f8dde9054bb";
   };
 
-  electron_8 = mkElectron "8.3.0" {
-    x86_64-linux = "e69d8e36d2f842c7e741794f71952dc8bc5fbaa46ff22bb82ffd71fcf16e2302";
-    x86_64-darwin = "582c9f9b53e8752885aa14d829f9318283f1d56eeb12982a03051d795a23e535";
-    i686-linux = "2cf7fc55a74427d96ebe67fb601ece2f27802deb95a5bae3d7b427afe71d272c";
-    armv7l-linux = "14b67e8a41ce8882442816a2db0eee69fac141e359911704002beb7063aa0eff";
-    aarch64-linux = "1d89a75fff3b690efe1295fe6f91225c4fa64f3c22c6acddec895d54e1040b4d";
+  electron_8 = mkElectron "8.3.1" {
+    x86_64-linux = "d5ad2bd32f7bf88f869a401017b35be0ea71e6fc7798fe2397b21602573e2639";
+    x86_64-darwin = "abe864d9e6327d499120f328e699f4819110d4245bce2f92b84e19d8cdc1c771";
+    i686-linux = "e75692c062b15c7f664cf3ff30832a526f3f66080469f7f93befaa4e0860c011";
+    armv7l-linux = "cfa0a14225b617492a311c21ad973f24708bc4013a992271368006cdb12ed488";
+    aarch64-linux = "1b9cd3ed7eb53ed914ac04c82d736c2677af807e553c87f0698890c2a3dcfd57";
   };
 
-  electron_9 = mkElectron "9.0.0" {
-    x86_64-linux = "03c69d66ae8784edcc6a4b8081eb4e07da802035a6257fb6e2260a456371224f";
-    x86_64-darwin = "86096d2ecff0698957bfbbe8a8d56c7f9ed9abe7e5a5bfe84a8f4af0635625e1";
-    i686-linux = "67ea9e04db5a709b10d2f101d977e803b5f5da9e9573cbcc7bce362b1a9406d7";
-    armv7l-linux = "7917624b81318197da52de04073e07c4b2d3947737d4103f647a8abc907600c0";
-    aarch64-linux = "e3dd2e15cfd346a59c69ff4b0b234daf5bb06790b508ae0056a55c17eef78a9e";
+  electron_9 = mkElectron "9.0.2" {
+    x86_64-linux = "08326f505692010d6c92f444a25f450cf19323cd98c5d94cab1057e80601caa1";
+    x86_64-darwin = "8ab5b48f873582a9231bc85b0f73d9735fabca51364b8c505da8f8238d658da5";
+    i686-linux = "2e950e4ab91453f7611fcfedbe90eff844677dbcc7df87a6fe0889bd3d82daaa";
+    armv7l-linux = "cc098caebbed5022f26d12f9b5dc316a35dbae0bcf62b9fc72c3b385f93a32d5";
+    aarch64-linux = "ee39854d8e9ee06e9b94c457a52b0556f570316bbd755d7022e3eade4b5974d5";
   };
 }
diff --git a/pkgs/development/tools/packet-cli/default.nix b/pkgs/development/tools/packet-cli/default.nix
index a484098f0c6..546b441db4b 100644
--- a/pkgs/development/tools/packet-cli/default.nix
+++ b/pkgs/development/tools/packet-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "packet-cli";
-  version = "0.0.6";
+  version = "0.0.7";
 
   src = fetchFromGitHub {
     owner = "packethost";
     repo = pname;
     rev = version;
-    sha256 = "17f3ax7pjm5k93cxj7fd8hwr4id1lbzz9pkl2xflpxydi89bwdfz";
+    sha256 = "1ixdqq0xwy2l2m1w93rzqw5gfrzw7w03r42qab3n733m4jkf4ni1";
   };
 
   vendorSha256 = "10praxaiscxq4v3zknrabldxl7rpklkr5wdlwa5lxsx0if8mrvp7";
diff --git a/pkgs/development/tools/rust/cargo-deny/default.nix b/pkgs/development/tools/rust/cargo-deny/default.nix
index deba6cc674c..70fee45a873 100644
--- a/pkgs/development/tools/rust/cargo-deny/default.nix
+++ b/pkgs/development/tools/rust/cargo-deny/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-deny";
-  version = "0.6.7";
+  version = "0.6.8";
 
   src = fetchFromGitHub {
     owner = "EmbarkStudios";
     repo = pname;
     rev = version;
-    sha256 = "1d7zd2wpvfz1vq5ik67m6s1mscivh8b3kz4bfckw3cazk68vn9q1";
+    sha256 = "0nv3min7jyrv4scn7bhizc9vmqhmv6sg0nvfnr0m59pm5806vdpi";
   };
 
-  cargoSha256 = "0jy10yfd9d5r0ildyxszs1ppzyd4ninl7lihdnwjqm6qifr1m5rp";
+  cargoSha256 = "1vywm3iqs3qnkrvi7i70sv21hznn3y3hza1i9gvcxfmh03wzhwx0";
 
   nativeBuildInputs = [ perl pkgconfig ];
 
diff --git a/pkgs/development/tools/rust/cargo-make/Cargo.lock b/pkgs/development/tools/rust/cargo-make/Cargo.lock
index 4390a1cf799..7ba549f28da 100644
--- a/pkgs/development/tools/rust/cargo-make/Cargo.lock
+++ b/pkgs/development/tools/rust/cargo-make/Cargo.lock
@@ -104,7 +104,7 @@ checksum = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1"
 
 [[package]]
 name = "cargo-make"
-version = "0.30.8"
+version = "0.31.0"
 dependencies = [
  "ci_info",
  "clap",
@@ -133,9 +133,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.52"
+version = "1.0.54"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3d87b23d6a92cd03af510a5ade527033f6aa6fa92161e2d5863a907d4c5e31d"
+checksum = "7bbb73db36c1246e9034e307d0fba23f9a2e251faa47ade70c1bd252220c8311"
 
 [[package]]
 name = "cfg-if"
@@ -154,9 +154,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "2.33.0"
+version = "2.33.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
 dependencies = [
  "ansi_term",
  "atty",
@@ -232,11 +232,10 @@ dependencies = [
 
 [[package]]
 name = "dirs-sys"
-version = "0.3.4"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b"
+checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a"
 dependencies = [
- "cfg-if",
  "libc",
  "redox_users",
  "winapi",
@@ -244,18 +243,18 @@ dependencies = [
 
 [[package]]
 name = "duckscript"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b666b2baf849932922921c2ff4bdb30e49835468626561d18fda4949751b55"
+checksum = "5f4c3da85470786f086bd14c0b299092715a99f8d8bb0ac2b787cbaab71e6ba6"
 dependencies = [
  "fsio",
 ]
 
 [[package]]
 name = "duckscriptsdk"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc9026058fdb6382c5fc62bc7a789d18b796236ddf48bee5a01332f576c1c109"
+checksum = "b258092ada5ae7b5dda45906ebcae3e77c419a98e324750bc92af2b8912dd65e"
 dependencies = [
  "attohttpc",
  "base64 0.12.1",
@@ -372,9 +371,9 @@ dependencies = [
 
 [[package]]
 name = "fnv"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "foreign-types"
@@ -441,9 +440,9 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
 
 [[package]]
 name = "hermit-abi"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61565ff7aaace3525556587bd2dc31d4a07071957be715e63ce7b1eccf51a8f4"
+checksum = "91780f809e750b0a89f5544be56617ff6b1227ee485bcb06ebe10cdf89bd3b71"
 dependencies = [
  "libc",
 ]
@@ -481,9 +480,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "076f042c5b7b98f31d205f1249267e12a6518c1481e9dae9764af19b707d2292"
+checksum = "c398b2b113b55809ceb9ee3e753fcbac793f1956663f3c36549c1346015c2afe"
 dependencies = [
  "autocfg",
  "serde",
@@ -513,9 +512,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.69"
+version = "0.2.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99e85c08494b21a9054e7fe1374a732aeadaff3980b6990b94bfd3a70f690005"
+checksum = "9457b06509d27052635f90d6466700c65095fdf75409b3fbdd903e988b886f49"
 
 [[package]]
 name = "log"
@@ -619,9 +618,9 @@ checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.55"
+version = "0.9.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7717097d810a0f2e2323f9e5d11e71608355e24828410b55b9d4f18aa5f9a5d8"
+checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"
 dependencies = [
  "autocfg",
  "cc",
@@ -644,24 +643,24 @@ checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
 
 [[package]]
 name = "ppv-lite86"
-version = "0.2.6"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
+checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.12"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8872cf6f48eee44265156c111456a700ab3483686b3f96df4cf5481c89157319"
+checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
 dependencies = [
  "unicode-xid",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c1f4b0efa5fc5e8ceb705136bfee52cfdb6a4e3509f770b478cd6ed434232a7"
+checksum = "54a21852a652ad6f610c9510194f398ff6f8692e334fd1145fed931f7fbe44ea"
 dependencies = [
  "proc-macro2",
 ]
@@ -726,9 +725,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.3.7"
+version = "1.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6020f034922e3194c711b82a627453881bc4682166cabb07134a10c26ba7692"
+checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -738,9 +737,9 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.17"
+version = "0.6.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae"
+checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
 
 [[package]]
 name = "remove_dir_all"
@@ -753,9 +752,9 @@ dependencies = [
 
 [[package]]
 name = "run_script"
-version = "0.6.2"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9527b8b68ef929243a3e8ad7471a2d80f6ac23b810aafd3df4a2e5212d8dacc1"
+checksum = "a8e8fc35067815a04a35fe2144361e1257b0f1041f0d413664f38e44d1a73cb4"
 dependencies = [
  "fsio",
 ]
@@ -792,9 +791,9 @@ dependencies = [
 
 [[package]]
 name = "ryu"
-version = "1.0.4"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed3d612bc64430efeb3f7ee6ef26d590dce0c43249217bddc62112540c7941e1"
+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
 
 [[package]]
 name = "same-file"
@@ -807,9 +806,9 @@ dependencies = [
 
 [[package]]
 name = "schannel"
-version = "0.1.18"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "039c25b130bd8c1321ee2d7de7fde2659fa9c2744e4bb29711cfc852ea53cd19"
+checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
 dependencies = [
  "lazy_static",
  "winapi",
@@ -817,9 +816,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "0.4.3"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f331b9025654145cd425b9ded0caf8f5ae0df80d418b326e2dc1c3dc5eb0620"
+checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535"
 dependencies = [
  "bitflags",
  "core-foundation",
@@ -855,15 +854,15 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
 
 [[package]]
 name = "serde"
-version = "1.0.106"
+version = "1.0.111"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df6ac6412072f67cf767ebbde4133a5b2e88e76dc6187fa7104cd16f783399"
+checksum = "c9124df5b40cbd380080b2cc6ab894c040a3070d995f5c9dc77e18c34a8ae37d"
 
 [[package]]
 name = "serde_derive"
-version = "1.0.106"
+version = "1.0.111"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c"
+checksum = "3f2c3ac8e6ca1e9c80b8be1023940162bf81ae3cffbb1809474152f2ce1eb250"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -872,9 +871,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.52"
+version = "1.0.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7894c8ed05b7a3a279aeb79025fdec1d3158080b75b98a08faf2806bb799edd"
+checksum = "993948e75b189211a9b31a7528f950c6adc21f9720b6438ff80a7fa2f864cea2"
 dependencies = [
  "itoa",
  "ryu",
@@ -904,9 +903,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
 
 [[package]]
 name = "syn"
-version = "1.0.19"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8e5aa70697bb26ee62214ae3288465ecec0000f05182f039b477001f08f5ae7"
+checksum = "93a56fabc59dce20fe48b6c832cc249c713e7ed88fa28b0ee0a3bfcaae5fe4e2"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -937,6 +936,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "thiserror"
+version = "1.0.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b13f926965ad00595dd129fa12823b04bbf866e9085ab0a5f2b05b850fbfc344"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "893582086c2f98cde18f906265a65b5030a074b1046c674ae898be6519a7f479"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
 name = "thread_local"
 version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1015,9 +1034,9 @@ dependencies = [
 
 [[package]]
 name = "vcpkg"
-version = "0.2.8"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
+checksum = "55d1e41d56121e07f1e223db0a4def204e45c85425f6a16d462fd07c8d10d74c"
 
 [[package]]
 name = "vec_map"
@@ -1044,11 +1063,12 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
 
 [[package]]
 name = "which"
-version = "3.1.1"
+version = "4.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724"
+checksum = "bd3edc3cf5458851a4d6a2329232bd5f42c7f9bbe4c4782c4ef9ce37e5d101b2"
 dependencies = [
  "libc",
+ "thiserror",
 ]
 
 [[package]]
diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix
index 2950ed1b83b..d4023dcf254 100644
--- a/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/pkgs/development/tools/rust/cargo-make/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.30.8";
+  version = "0.31.0";
 
   src =
     let
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
         owner = "sagiegurari";
         repo = pname;
         rev = version;
-        sha256 = "0sx1kvrk2df5v9f35cd6201b3m8d6ynppmikqm00g55db9r4vfl2";
+        sha256 = "0svb3avmmkgwsv1dvzgzixp5fvcl93hn8xb3zx729jq8a47l2vsi";
       };
     in
     runCommand "source" {} ''
@@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "1b0x12hcjy061dvbpy5cwgp6pwlzq2k1dapr9glw8dwprns57ar7";
+  cargoSha256 = "0yk06kpqjfc39dxk9f67c5qijnm8f8lvrb9da1kn8ql8dv8crsw2";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/pkgs/development/tools/vultr-cli/default.nix b/pkgs/development/tools/vultr-cli/default.nix
index acd26b638c9..6f217c60219 100644
--- a/pkgs/development/tools/vultr-cli/default.nix
+++ b/pkgs/development/tools/vultr-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "vultr-cli";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "vultr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1z3vbcpchrf3bak08p72c96c2l39hdp196fqc5wvsqar3mzrrz7s";
+    sha256 = "1gqc4w5j9x7vxvxah6hmqd5i1lxyybpml7yfzzcbngwgwm3y5ym0";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/development/tools/wrangler/default.nix b/pkgs/development/tools/wrangler/default.nix
new file mode 100644
index 00000000000..cdbba236922
--- /dev/null
+++ b/pkgs/development/tools/wrangler/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl, curl, darwin }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "wrangler";
+  version = "1.9.2";
+
+  src = fetchFromGitHub {
+    owner = "cloudflare";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0i3fhdq8v9459mlnazkv9bpkcv01rdy5rk149lhpsan76zlyzzwr";
+  };
+
+  cargoSha256 = "0c2ss3j53vra1b4m3jsy2w2gdf6k1hw3qf6sd4qlg2ybk4k83g3b";
+
+  nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkg-config ];
+
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ openssl ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [
+      curl
+      darwin.apple_sdk.frameworks.Security
+      darwin.apple_sdk.frameworks.CoreServices
+      darwin.apple_sdk.frameworks.CoreFoundation
+    ];
+
+  # tries to use "/homeless-shelter" and fails
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A CLI tool designed for folks who are interested in using Cloudflare Workers";
+    homepage = "https://github.com/cloudflare/wrangler";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ filalex77 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/games/ninvaders/default.nix b/pkgs/games/ninvaders/default.nix
new file mode 100644
index 00000000000..a8adc1182bd
--- /dev/null
+++ b/pkgs/games/ninvaders/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, cmake, ncurses }:
+
+stdenv.mkDerivation rec{
+  pname = "ninvaders";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "sf-refugees";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1wmwws1zsap4bfc2439p25vnja0hnsf57k293rdxw626gly06whi";
+  };
+
+  buildInputs = [ cmake ncurses ];
+
+  meta = with stdenv.lib; {
+    description = "Space Invaders clone based on ncurses";
+    homepage = "http://ninvaders.sourceforge.net/";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ maintainers."1000101" ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/misc/emulators/np2kai/default.nix b/pkgs/misc/emulators/np2kai/default.nix
new file mode 100644
index 00000000000..245bad1d535
--- /dev/null
+++ b/pkgs/misc/emulators/np2kai/default.nix
@@ -0,0 +1,196 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, enable16Bit ? true
+, enable32Bit ? true
+
+, enableSDL ? true
+, withSDLVersion ? "2"
+, SDL
+, SDL_ttf
+, SDL_mixer
+, SDL2
+, SDL2_ttf
+, SDL2_mixer
+
+, enableX11 ? stdenv.hostPlatform.isLinux
+, automake
+, autoconf
+, autoconf-archive
+, libtool
+, pkg-config
+, unzip
+, gtk2
+, libusb1
+, libXxf86vm
+, nasm
+, libICE
+, libSM
+
+  # HAXM build succeeds but the binary segfaults, seemingly due to the missing HAXM kernel module
+  # Enable once there is a HAXM kernel module option in NixOS? Or somehow bind it to the system kernel having HAXM?
+  # Or leave it disabled by default?
+  # https://github.com/intel/haxm/blob/master/docs/manual-linux.md
+, enableHAXM ? false
+}:
+
+assert lib.assertMsg (enable16Bit || enable32Bit)
+  "Must enable 16-Bit and/or 32-Bit system variant.";
+assert lib.assertMsg (enableSDL || enableX11)
+  "Must enable SDL and/or X11 graphics interfaces.";
+assert lib.assertOneOf "withSDLVersion" withSDLVersion [ "1" "2" ];
+assert enableHAXM -> (lib.assertMsg enableX11
+  "Must enable X11 graphics interface for HAXM build.");
+let
+  inherit (lib) optional optionals optionalString;
+  inherit (lib.strings) concatStringsSep concatMapStringsSep;
+  isSDL2 = (withSDLVersion == "2");
+  sdlInfix = optionalString isSDL2 "2";
+  sdlDeps1 = [
+    SDL
+    SDL_ttf
+    SDL_mixer
+  ];
+  sdlDeps2 = [
+    SDL2
+    SDL2_ttf
+    SDL2_mixer
+  ];
+  sdlDepsBuildonly = if isSDL2 then sdlDeps1 else sdlDeps2;
+  sdlDepsTarget = if isSDL2 then sdlDeps2 else sdlDeps1;
+  sdlMakefileSuffix =
+    if stdenv.hostPlatform.isWindows then "win"
+    else if stdenv.hostPlatform.isDarwin then "mac"
+    else "unix";
+  sdlMakefiles = concatMapStringsSep " " (x: x + "." + sdlMakefileSuffix)
+    (optionals enable16Bit [
+      "Makefile"
+    ] ++ optionals enable32Bit [
+      "Makefile21"
+    ]);
+  sdlBuildFlags = concatStringsSep " "
+    (optionals enableSDL [
+      "SDL_VERSION=${withSDLVersion}"
+    ]);
+  sdlBins = concatStringsSep " "
+    (optionals enable16Bit [
+      "np2kai"
+    ] ++ optionals enable32Bit [
+      "np21kai"
+    ]);
+  x11ConfigureFlags = concatStringsSep " "
+    ((
+      if ((enableHAXM && (enable16Bit || enable32Bit)) || (enable16Bit && enable32Bit)) then [
+        "--enable-build-all"
+      ] else if enableHAXM then [
+        "--enable-haxm"
+      ] else if enable32Bit then [
+        "--enable-ia32"
+      ] else [ ]
+    ) ++ optionals (!isSDL2) [
+      "--enable-sdl"
+      "--enable-sdlmixer"
+      "--enable-sdlttf"
+
+      "--enable-sdl2=no"
+      "--enable-sdl2mixer=no"
+      "--enable-sdl2ttf=no"
+    ]);
+  x11BuildFlags = concatStringsSep " " [
+    "SDL2_CONFIG=sdl2-config"
+    "SDL_CONFIG=sdl-config"
+    "SDL_CFLAGS=\"$(sdl${sdlInfix}-config --cflags)\""
+    "SDL_LIBS=\"$(sdl${sdlInfix}-config --libs) -lSDL${sdlInfix}_mixer -lSDL${sdlInfix}_ttf\""
+  ];
+  x11Bins = concatStringsSep " "
+    (optionals enable16Bit [
+      "xnp2kai"
+    ] ++ optionals enable32Bit [
+      "xnp21kai"
+    ] ++ optionals enableHAXM [
+      "xnp21kai_haxm"
+    ]);
+in
+stdenv.mkDerivation rec {
+  pname = "np2kai";
+  version = "0.86rev22"; #update src.rev to commit rev accordingly
+
+  src = fetchFromGitHub rec {
+    owner = "AZO234";
+    repo = "NP2kai";
+    rev = "4a317747724669343e4c33ebdd34783fb7043221";
+    sha256 = "0kxysxhx6jyk82mx30ni0ydzmwdcbnlxlnarrlq018rsnwb4md72";
+  };
+
+  configurePhase = ''
+    export GIT_VERSION=${builtins.substring 0 7 src.rev}
+    buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES}"
+  '' + optionalString enableX11 ''
+    cd x11
+    substituteInPlace Makefile.am \
+      --replace 'GIT_VERSION :=' 'GIT_VERSION ?='
+    ./autogen.sh ${x11ConfigureFlags}
+    ./configure ${x11ConfigureFlags}
+    cd ..
+  '';
+
+  nativeBuildInputs = sdlDepsBuildonly
+    ++ optionals enableX11 [
+    automake
+    autoconf
+    autoconf-archive
+    libtool
+    pkg-config
+    unzip
+    nasm
+  ];
+
+  buildInputs = sdlDepsTarget
+    ++ optionals enableX11 [
+    gtk2
+    libICE
+    libSM
+    libusb1
+    libXxf86vm
+  ];
+
+  enableParallelBuilding = true;
+
+  buildPhase = optionalString enableSDL ''
+    cd sdl2
+    for mkfile in ${sdlMakefiles}; do
+      substituteInPlace $mkfile \
+        --replace 'GIT_VERSION :=' 'GIT_VERSION ?='
+      echo make -f $mkfile $buildFlags ${sdlBuildFlags} clean
+      make -f $mkfile $buildFlags ${sdlBuildFlags} clean
+      make -f $mkfile $buildFlags ${sdlBuildFlags}
+    done
+    cd ..
+  '' + optionalString enableX11 ''
+    cd x11
+    make $buildFlags ${x11BuildFlags}
+    cd ..
+  '';
+
+  installPhase = optionalString enableSDL ''
+    cd sdl2
+    for emu in ${sdlBins}; do
+      install -D -m 755 $emu $out/bin/$emu
+    done
+    cd ..
+  '' + optionalString enableX11 ''
+    cd x11
+    for emu in ${x11Bins}; do
+      install -D -m 755 $emu $out/bin/$emu
+    done
+    cd ..
+  '';
+
+  meta = with lib; {
+    description = "A PC-9801 series emulator.";
+    homepage = "https://github.com/AZO234/NP2kai";
+    license = licenses.mit;
+    maintainers = with maintainers; [ OPNA2608 ];
+    platforms = platforms.x86;
+  };
+}
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 0ebd2b82a9a..73581429613 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -718,6 +718,25 @@ in with stdenv.lib.licenses;
     preBuild = "cd libretro";
   };
 
+  np2kai = mkLibRetroCore rec {
+    core = "np2kai";
+    src = fetchFromGitHub rec {
+      owner = "AZO234";
+      repo = "NP2kai";
+      rev = "4a317747724669343e4c33ebdd34783fb7043221";
+      sha256 = "0kxysxhx6jyk82mx30ni0ydzmwdcbnlxlnarrlq018rsnwb4md72";
+    };
+    description = "Neko Project II kai libretro port";
+    license = mit;
+    makefile = "Makefile.libretro";
+    preBuild = ''
+      cd sdl2
+      substituteInPlace ${makefile} \
+        --replace 'GIT_VERSION :=' 'GIT_VERSION ?='
+      export GIT_VERSION=${builtins.substring 0 7 src.rev}
+    '';
+  };
+
   o2em = mkLibRetroCore rec {
     core = "o2em";
     src = fetchRetro {
diff --git a/pkgs/servers/roundcube/default.nix b/pkgs/servers/roundcube/default.nix
index 27b3ad06bbf..03c1a6cf770 100644
--- a/pkgs/servers/roundcube/default.nix
+++ b/pkgs/servers/roundcube/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "roundcube";
-  version = "1.4.5";
+  version = "1.4.6";
 
   src = fetchurl {
     url = "https://github.com/roundcube/roundcubemail/releases/download/${version}/roundcubemail-${version}-complete.tar.gz";
-    sha256 = "1qjjyx6p71dvip1c4knkqkv6lhdvank1png773snaw9g4fz8h73f";
+    sha256 = "06xxzvjd06r90fxpq9zh9fwylg6sbd26c08rxfd553jikyp5znsm";
   };
 
   patches = [ ./0001-Don-t-resolve-symlinks-when-trying-to-find-INSTALL_P.patch ];
diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix
index 9f0a8de4ef6..e61437c46ff 100644
--- a/pkgs/servers/tailscale/default.nix
+++ b/pkgs/servers/tailscale/default.nix
@@ -2,15 +2,16 @@
 
 buildGoModule rec {
   pname = "tailscale";
-  version = "0.97-219";
+  # Tailscale uses "git describe" as version numbers. 0.99.1-0 means
+  # "tag v0.99.1 plus 0 commits", which corresponds to rev="v0.99.1"
+  # below.
+  version = "0.99.1-0";
 
   src = fetchFromGitHub {
     owner = "tailscale";
     repo = "tailscale";
-    # Tailscale uses "git describe" as version numbers. v0.97-219
-    # means "tag v0.97 plus 219 commits", which is what this rev is.
-    rev = "afbfe4f217a2a202f0eefe943c7c1ef648311339";
-    sha256 = "1an897ys3gycdmclqd0yqs9f7q88zxqxyc6r0gcgs4678svxhb68";
+    rev = "v0.99.1";
+    sha256 = "1kq4x5xknv0qq6n78xj5wjbf6svbdyw4nzs7z5gjb3ylj2vl97pb";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -18,14 +19,7 @@ buildGoModule rec {
   CGO_ENABLED = 0;
 
   goPackagePath = "tailscale.com";
-  overrideModAttrs = (_: {
-    preBuild = ''
-    rm ipn/e2e_test.go
-    rm control/controlclient/auto_test.go
-    rm control/controlclient/direct_test.go
-    '';
-  });
-  vendorSha256 = "1v90lbwgrc2m4kvpglf2jykrm8rry3pbhqqbc3mcysrzmqlw84yl";
+  vendorSha256 = "0yf2zdpd12w4qf4sbv7bkr40hw5faqynr6lb84v7w6v0az0nfzds";
   subPackages = [ "cmd/tailscale" "cmd/tailscaled" ];
 
   postInstall = ''
@@ -41,4 +35,4 @@ buildGoModule rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ danderson mbaillie ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/servers/unifi/default.nix b/pkgs/servers/unifi/default.nix
index 3d49d4d71b5..56141be5f0a 100644
--- a/pkgs/servers/unifi/default.nix
+++ b/pkgs/servers/unifi/default.nix
@@ -49,7 +49,7 @@ in {
   };
 
   unifiStable = generic {
-    version = "5.12.66";
-    sha256 = "119jdwk2ys3vzg9wa4h25rwgl6sjly6v52k1g1ycrq0bspzxdhm2";
+    version = "5.12.72";
+    sha256 = "00d7kxn3f1c0i4kg81hz2hf9bdbccb3d1zs7js414rpc5k3xg3kz";
   };
 }
diff --git a/pkgs/tools/compression/hactool/default.nix b/pkgs/tools/compression/hactool/default.nix
index c0bcca2d8cd..d34ca73556b 100644
--- a/pkgs/tools/compression/hactool/default.nix
+++ b/pkgs/tools/compression/hactool/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "hactool";
   version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "SciresM";
     repo = "hactool";
-    rev = "1.4.0";
+    rev = version;
     sha256 = "0305ngsnwm8npzgyhyifasi4l802xnfz19r0kbzzniirmcn4082d";
   };
 
diff --git a/pkgs/tools/graphics/yafaray-core/default.nix b/pkgs/tools/graphics/yafaray-core/default.nix
index 8e15cd0d328..a02a97739ba 100644
--- a/pkgs/tools/graphics/yafaray-core/default.nix
+++ b/pkgs/tools/graphics/yafaray-core/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, opencv, zlib
 , libxml2, freetype, libjpeg, libtiff, swig, openexr
 , ilmbase, boost165
-, withPython ? true, python35
+, withPython ? true, python3
 }:
 
 stdenv.mkDerivation rec {
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     buildInputs = [
       cmake pkgconfig boost165 opencv zlib libxml2 freetype libjpeg libtiff
       swig openexr ilmbase
-    ] ++ stdenv.lib.optional withPython python35;
+    ] ++ stdenv.lib.optional withPython python3;
 
     meta = with stdenv.lib; {
       description = "A free, open source raytracer";
diff --git a/pkgs/tools/misc/rmlint/default.nix b/pkgs/tools/misc/rmlint/default.nix
index cbe1f7d407c..4dd44085012 100644
--- a/pkgs/tools/misc/rmlint/default.nix
+++ b/pkgs/tools/misc/rmlint/default.nix
@@ -5,13 +5,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "rmlint";
-  version = "2.9.0";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     owner = "sahib";
     repo = "rmlint";
     rev = "v${version}";
-    sha256 = "1b5cziam14h80xrfb285fmfrzz2rligxcpsq1xsig14xf4l2875i";
+    sha256 = "1r7j1bmm83p6wdw0jhvkm4sa568r534zsy45bvas7qq4433jl019";
   };
 
   CFLAGS="-I${stdenv.lib.getDev utillinux}/include";
diff --git a/pkgs/tools/misc/sdate/default.nix b/pkgs/tools/misc/sdate/default.nix
index 6c52aa217df..06b5360086c 100644
--- a/pkgs/tools/misc/sdate/default.nix
+++ b/pkgs/tools/misc/sdate/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, autoreconfHook }:
 stdenv.mkDerivation rec {
   pname = "sdate";
-  version = "0.6";
+  version = "0.7";
   src = fetchurl {
     url = "https://github.com/ChristophBerg/sdate/archive/${version}.tar.gz";
-    sha256 = "11irlbbhlzkg6y621smk351jl8ay3yjhl2j9hila0xa72hs4n7gz";
+    sha256 = "1lfnsb8prac8rspnxcawd138jyhyivwf35rrmfvwq6dhsx23c6vy";
   };
 
   buildInputs = [ autoreconfHook ];
diff --git a/pkgs/tools/networking/corerad/default.nix b/pkgs/tools/networking/corerad/default.nix
index a4eb50d0c77..bbdb98ae495 100644
--- a/pkgs/tools/networking/corerad/default.nix
+++ b/pkgs/tools/networking/corerad/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "corerad";
-  version = "0.2.5";
+  version = "0.2.6";
 
   src = fetchFromGitHub {
     owner = "mdlayher";
     repo = "corerad";
     rev = "v${version}";
-    sha256 = "0fi9wgv5aj3ds3r5qjyi4pxnd56psrpdy2sz84jd0sz2w48x4k4p";
+    sha256 = "16rwydvqkzi0jlgwpl3d4f8zd35y4lv4h5xa30ybqmwwp1k5ymf0";
   };
 
-  vendorSha256 = "11r3vpimhik7y09gwb3p6pl0yf53hpaw24ry4a833fw8060rqp3q";
+  vendorSha256 = "1431fvi9b0id3zhgkxhiampc5avvp998lncyd5l2gn5py3qz6sdl";
 
   buildFlagsArray = ''
     -ldflags=
-    -X github.com/mdlayher/corerad/internal/build.linkTimestamp=1590182656
+    -X github.com/mdlayher/corerad/internal/build.linkTimestamp=1591474872
     -X github.com/mdlayher/corerad/internal/build.linkVersion=v${version}
   '';
 
diff --git a/pkgs/tools/networking/isync/default.nix b/pkgs/tools/networking/isync/default.nix
index 49efeac02a9..9ce1183d060 100644
--- a/pkgs/tools/networking/isync/default.nix
+++ b/pkgs/tools/networking/isync/default.nix
@@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ primeos lheckemann ];
   };
 }
diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix
index 5a8dad63396..cf2a01b3bb2 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.7";
+  version = "1.4.9";
 
   src = fetchFromGitHub {
     owner  = "djcb";
     repo   = "mu";
     rev    = version;
-    sha256 = "0inn720prhgxxc1napzd3xyzqgsvv70gqddsyzaa84h6946iz6v5";
+    sha256 = "1l8c72f3yd2vypc11frsmjnkr87h1q4gb6k3armpypwv6a6zl8z4";
   };
 
   postPatch = stdenv.lib.optionalString (batchSize != null) ''
diff --git a/pkgs/tools/networking/shadowsocks-rust/default.nix b/pkgs/tools/networking/shadowsocks-rust/default.nix
index ba90a7cacb7..875ba7c988a 100644
--- a/pkgs/tools/networking/shadowsocks-rust/default.nix
+++ b/pkgs/tools/networking/shadowsocks-rust/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "shadowsocks-rust";
-  version = "1.8.11";
+  version = "1.8.12";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "shadowsocks";
     repo = pname;
-    sha256 = "0imnvx3v0msk9qf72zy1qg5q52dmc8xfs9iwdwa2q13scjslgmwn";
+    sha256 = "0c9mdy22pjnjq5l2ji2whrfz64azx6yi6m76j17pbhnjf6f4jx9b";
   };
 
-  cargoSha256 = "1aqqx0pdq3vp5c06pjwsrbrqfkz5dhxnpvv3vnr3pqfm62xrffgg";
+  cargoSha256 = "03gf26d7rz4v2v5fypcp5icsqqnb4m5dwil9ad5a98q3ssx80iwq";
 
   SODIUM_USE_PKG_CONFIG = 1;
 
diff --git a/pkgs/tools/security/bitwarden_rs/default.nix b/pkgs/tools/security/bitwarden_rs/default.nix
index 6d3c4bccef9..158485dc982 100644
--- a/pkgs/tools/security/bitwarden_rs/default.nix
+++ b/pkgs/tools/security/bitwarden_rs/default.nix
@@ -8,13 +8,13 @@ let
 
 in rustPlatform.buildRustPackage rec {
   pname = "bitwarden_rs";
-  version = "1.14.2";
+  version = "1.15.0";
 
   src = fetchFromGitHub {
     owner = "dani-garcia";
     repo = pname;
     rev = version;
-    sha256 = "0413yjbnj4k917x48h1gnj64kygbr6c1n55f23qkvj0hgbxpgssz";
+    sha256 = "12mr7d0mjlh7za4nc3s7cizzbd6v0zfmd7q9s0f7pqz56vw5m21s";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -25,7 +25,7 @@ in rustPlatform.buildRustPackage rec {
 
   RUSTC_BOOTSTRAP = 1;
 
-  cargoSha256 = "09747f9g7yyq9c8wbfdb3hwxii5xq23ynhba0vc01nhjpjyn0ksd";
+  cargoSha256 = "0nacc8xvbkdzbyx4c17hdh03v9ykpis74pbpxkn6v95njw14wq53";
   cargoBuildFlags = [ featuresFlag ];
 
   checkPhase = ''
diff --git a/pkgs/tools/text/snippetpixie/default.nix b/pkgs/tools/text/snippetpixie/default.nix
index 863e4764b69..991b496777c 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.2";
+  version = "1.3.3";
 
   src = fetchFromGitHub {
     owner = "bytepixie";
     repo = pname;
     rev = version;
-    sha256 = "0jhc47g5x34c36y4d32lcn32bpw4axxf1sydawgy4886hmkvb6kf";
+    sha256 = "0ml57j6jagqvjlpgn1bcyx08h71kcxalh69y03y2lj84x5ib8qz3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 1004a444469..03b03ff2a84 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -247,6 +247,7 @@ mapAliases ({
   libgumbo = gumbo; # added 2018-01-21
   libGL_driver = mesa.drivers;
   libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux || stdenv.hostPlatform.libc != "glibc") gettext; # added 2018-03-14
+  libjpeg_drop = libjpeg_original; # added 2020-06-05
   libjson_rpc_cpp = libjson-rpc-cpp; # added 2017-02-28
   liblapackWithoutAtlas = lapack-reference; # added 2018-11-05
   liblrdf = lrdf; # added 2018-04-25
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index bd298ce24ea..a46fd78d9b9 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -874,8 +874,6 @@ in
 
   cloud-sql-proxy = callPackage ../tools/misc/cloud-sql-proxy { };
 
-  cloudflare-wrangler = callPackage ../development/tools/cloudflare-wrangler { };
-
   codeql = callPackage ../development/tools/analysis/codeql { };
 
   container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { };
@@ -3179,6 +3177,8 @@ in
 
   wob = callPackage ../tools/misc/wob { };
 
+  wrangler = callPackage ../development/tools/wrangler { };
+
   xkcdpass = with pythonPackages; toPythonApplication xkcdpass;
 
   xob = callPackage ../tools/X11/xob { };
@@ -4853,6 +4853,8 @@ in
 
   now-cli = callPackage ../development/web/now-cli {};
 
+  np2kai = callPackage ../misc/emulators/np2kai { };
+
   file-rename = callPackage ../tools/filesystems/file-rename { };
 
   kea = callPackage ../tools/networking/kea { };
@@ -9713,7 +9715,7 @@ in
   pipenv = callPackage ../development/tools/pipenv {};
 
   pipewire = callPackage ../development/libraries/pipewire {};
-  pipewire_0_2 = callPackage ../development/libraries/pipewire/2.nix {};
+  pipewire_0_2 = callPackage ../development/libraries/pipewire/0.2.nix {};
 
   pyradio = callPackage ../applications/radio/pyradio {};
 
@@ -9987,9 +9989,7 @@ in
   aws-adfs = with python3Packages; toPythonApplication aws-adfs;
 
   inherit (callPackages ../development/tools/electron { })
-    electron_4 electron_5 electron_6 electron_7 electron_8 electron_9;
-
-  electron_3 = callPackage ../development/tools/electron/3.x.nix { };
+    electron_3 electron_4 electron_5 electron_6 electron_7 electron_8 electron_9;
   electron = electron_4;
 
   autobuild = callPackage ../development/tools/misc/autobuild { };
@@ -13184,7 +13184,6 @@ in
   libjpeg_original = callPackage ../development/libraries/libjpeg { };
   # also known as libturbojpeg
   libjpeg_turbo = callPackage ../development/libraries/libjpeg-turbo { };
-  libjpeg_drop = callPackage ../development/libraries/libjpeg-drop { };
   libjpeg = libjpeg_turbo;
 
   libjreen = callPackage ../development/libraries/libjreen { };
@@ -19815,6 +19814,8 @@ in
 
   git-review = callPackage ../applications/version-management/git-review { };
 
+  github-cli = gitAndTools.gh;
+
   gitolite = callPackage ../applications/version-management/gitolite { };
 
   inherit (gnome3) gitg;
@@ -22866,6 +22867,7 @@ in
       ++ optional (cfg.enableMupen64Plus or false) mupen64plus
       ++ optional (cfg.enableNeoCD or false) neocd
       ++ optional (cfg.enableNestopia or false) nestopia
+      ++ optional (cfg.enableNP2kai or false) np2kai
       ++ optional (cfg.enableO2EM or false) o2em
       ++ optional (cfg.enableOpera or false) opera
       ++ optional (cfg.enableParallelN64 or false) parallel-n64
@@ -23861,6 +23863,8 @@ in
 
   nexuiz = callPackage ../games/nexuiz { };
 
+  ninvaders = callPackage ../games/ninvaders { };
+
   njam = callPackage ../games/njam { };
 
   newtonwars = callPackage ../games/newtonwars { };
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index cca067557d2..87d67e5e8e6 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -770,19 +770,6 @@ let
       then type_conv_108_08_00
       else null;
 
-    sexplib_108_08_00 = callPackage ../development/ocaml-modules/sexplib/108.08.00.nix { };
-    sexplib_111_25_00 = callPackage ../development/ocaml-modules/sexplib/111.25.00.nix { };
-    sexplib_112_24_01 = callPackage ../development/ocaml-modules/sexplib/112.24.01.nix { };
-
-    sexplib_p4 =
-      if lib.versionOlder "4.02" ocaml.version
-      then sexplib_112_24_01
-      else if lib.versionOlder "4.00" ocaml.version
-      then sexplib_111_25_00
-      else if lib.versionOlder "3.12" ocaml.version
-      then sexplib_108_08_00
-      else null;
-
     ocaml-protoc = callPackage ../development/ocaml-modules/ocaml-protoc { };
 
     ocaml_extlib = callPackage ../development/ocaml-modules/extlib { };
@@ -795,8 +782,6 @@ let
 
     pa_bench = callPackage ../development/ocaml-modules/pa_bench { };
 
-    pa_test = callPackage ../development/ocaml-modules/pa_test { };
-
     parany = callPackage ../development/ocaml-modules/parany { };
 
     pipebang = callPackage ../development/ocaml-modules/pipebang { };
@@ -1135,7 +1120,7 @@ let
       then janeStreet.sexplib
       else if lib.versionOlder "4.02" ocaml.version
       then callPackage ../development/ocaml-modules/janestreet/sexplib.nix {}
-      else sexplib_p4;
+      else null;
 
     variantslib =
       if lib.versionOlder "4.03" ocaml.version
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 00960b45725..8a376a5abcb 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -5086,9 +5086,14 @@ in {
 
   pyviz-comms = callPackage ../development/python-modules/pyviz-comms { };
 
-  pillow = callPackage ../development/python-modules/pillow {
-    inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk;
-    inherit (pkgs.xorg) libX11;
+  pillow = if isPy27 then
+    callPackage ../development/python-modules/pillow/6.nix {
+      inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk;
+      inherit (pkgs.xorg) libX11;
+    } else
+    callPackage ../development/python-modules/pillow {
+      inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk;
+      inherit (pkgs.xorg) libX11;
   };
 
   pkgconfig = callPackage ../development/python-modules/pkgconfig {