summary refs log tree commit diff
diff options
context:
space:
mode:
authorJonathan Ringer <jonringer117@gmail.com>2021-05-22 18:19:10 -0700
committerJonathan Ringer <jonringer117@gmail.com>2021-05-22 18:19:10 -0700
commit11a9ac00fc34ca9948ae05c034fa730163626e40 (patch)
tree90b3ed6837b3f97239f6efbe763929cdaaa5795b
parent563389a7fdd85b1ca1d4c6590785df62f52c8d6d (diff)
parent6543c61311c0397775253dd3d7f1f41154fc6189 (diff)
downloadnixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar.gz
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar.bz2
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar.lz
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar.xz
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.tar.zst
nixpkgs-11a9ac00fc34ca9948ae05c034fa730163626e40.zip
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
 pkgs/tools/networking/xh/default.nix
-rw-r--r--.github/CODEOWNERS1
-rw-r--r--.github/workflows/nixos-manual.yml20
-rw-r--r--.version2
-rw-r--r--lib/trivial.nix2
-rw-r--r--maintainers/maintainer-list.nix10
-rw-r--r--nixos/doc/manual/contributing-to-this-manual.chapter.md13
-rw-r--r--nixos/doc/manual/contributing-to-this-manual.xml22
-rw-r--r--nixos/doc/manual/development/building-nixos.chapter.md18
-rw-r--r--nixos/doc/manual/development/building-nixos.xml33
-rw-r--r--nixos/doc/manual/development/development.xml2
-rw-r--r--nixos/doc/manual/from_md/README.md5
-rw-r--r--nixos/doc/manual/from_md/contributing-to-this-manual.chapter.xml22
-rw-r--r--nixos/doc/manual/from_md/development/building-nixos.chapter.xml33
-rw-r--r--nixos/doc/manual/from_md/release-notes/rl-2111.section.xml15
-rw-r--r--nixos/doc/manual/manual.xml2
-rwxr-xr-xnixos/doc/manual/md-to-db.sh33
-rw-r--r--nixos/doc/manual/release-notes/release-notes.xml1
-rw-r--r--nixos/doc/manual/release-notes/rl-2111.section.md5
-rw-r--r--nixos/modules/hardware/xpadneo.nix2
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/programs/bash/undistract-me.nix2
-rw-r--r--nixos/modules/services/audio/botamusique.nix114
-rw-r--r--nixos/modules/services/backup/syncoid.nix16
-rw-r--r--nixos/modules/services/misc/matrix-synapse.nix17
-rw-r--r--nixos/modules/services/x11/desktop-managers/cinnamon.nix4
-rw-r--r--nixos/modules/services/x11/desktop-managers/plasma5.nix1
-rw-r--r--nixos/modules/virtualisation/nixos-containers.nix2
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/botamusique.nix47
-rw-r--r--nixos/tests/sanoid.nix38
-rw-r--r--pkgs/applications/audio/whipper/default.nix6
-rw-r--r--pkgs/applications/audio/ytmdesktop/default.nix36
-rw-r--r--pkgs/applications/audio/zynaddsubfx/default.nix2
-rw-r--r--pkgs/applications/audio/zynaddsubfx/mruby-zest/default.nix2
-rw-r--r--pkgs/applications/editors/lite/default.nix5
-rw-r--r--pkgs/applications/editors/poke/default.nix2
-rw-r--r--pkgs/applications/misc/goldendict/0001-dont-use-maclibs.patch24
-rw-r--r--pkgs/applications/misc/goldendict/default.nix10
-rw-r--r--pkgs/applications/misc/opentrack/aruco.nix35
-rw-r--r--pkgs/applications/misc/opentrack/default.nix58
-rw-r--r--pkgs/applications/misc/synergy/default.nix38
-rw-r--r--pkgs/applications/misc/synergy/macos_build_fix.patch17
-rw-r--r--pkgs/applications/networking/browsers/nyxt/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix13
-rw-r--r--pkgs/applications/networking/feedreaders/newsflash/default.nix2
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/ids/suricata/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rw-r--r--pkgs/applications/science/biology/sambamba/default.nix10
-rw-r--r--pkgs/applications/science/misc/snakemake/default.nix2
-rw-r--r--pkgs/applications/terminal-emulators/st/default.nix42
-rw-r--r--pkgs/applications/version-management/git-review/default.nix2
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix18
-rw-r--r--pkgs/applications/window-managers/i3/gaps.nix13
-rw-r--r--pkgs/build-support/fetchdocker/fetchDockerConfig.nix2
-rw-r--r--pkgs/build-support/fetchdocker/fetchDockerLayer.nix2
-rw-r--r--pkgs/data/fonts/sudo/default.nix9
-rw-r--r--pkgs/data/themes/matcha/default.nix4
-rw-r--r--pkgs/data/themes/zuki/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-common/default.nix6
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-control-center/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-session/default.nix11
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix6
-rw-r--r--pkgs/desktops/cinnamon/nemo/default.nix3
-rw-r--r--pkgs/desktops/gnome/games/quadrapassel/default.nix59
-rw-r--r--pkgs/desktops/gnome/games/tali/default.nix59
-rw-r--r--pkgs/development/interpreters/python/default.nix3
-rw-r--r--pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch15
-rw-r--r--pkgs/development/libraries/abseil-cpp/default.nix15
-rw-r--r--pkgs/development/libraries/cairomm/1.16.nix4
-rw-r--r--pkgs/development/libraries/cereal/default.nix16
-rw-r--r--pkgs/development/libraries/glibmm/2.68.nix4
-rw-r--r--pkgs/development/libraries/liblinphone/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/or-tools/default.nix14
-rw-r--r--pkgs/development/lisp-modules/lisp-packages.nix9
-rw-r--r--pkgs/development/python-modules/aiohomekit/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-core/default.nix13
-rw-r--r--pkgs/development/python-modules/azure-eventgrid/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-identity/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-billing/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-botservice/default.nix12
-rw-r--r--pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix12
-rw-r--r--pkgs/development/python-modules/azure-mgmt-iothub/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-maps/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-network/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-reservations/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-resource/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-sql/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-storage/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-servicebus/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-synapse-artifacts/default.nix4
-rw-r--r--pkgs/development/python-modules/debugpy/default.nix2
-rw-r--r--pkgs/development/python-modules/flufl/lock.nix5
-rw-r--r--pkgs/development/python-modules/gensim/default.nix4
-rw-r--r--pkgs/development/python-modules/jupyter_server/default.nix4
-rw-r--r--pkgs/development/python-modules/pathy/default.nix4
-rw-r--r--pkgs/development/python-modules/pygls/default.nix2
-rw-r--r--pkgs/development/python-modules/pymumble/default.nix27
-rw-r--r--pkgs/development/python-modules/pytest-datadir/default.nix2
-rw-r--r--pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--pkgs/development/python-modules/smart-open/default.nix (renamed from pkgs/development/python-modules/smart_open/default.nix)8
-rw-r--r--pkgs/development/python-modules/token-bucket/default.nix34
-rw-r--r--pkgs/development/python-modules/vdf/default.nix18
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix8
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix12
-rw-r--r--pkgs/development/tools/bunyan-rs/default.nix25
-rw-r--r--pkgs/development/tools/cmake-language-server/default.nix16
-rw-r--r--pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch13
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix2
-rw-r--r--pkgs/development/tools/git-aggregator/default.nix40
-rw-r--r--pkgs/development/tools/kustomize/default.nix6
-rw-r--r--pkgs/development/tools/misc/ccache/default.nix2
-rw-r--r--pkgs/development/tools/misc/texlab/default.nix9
-rw-r--r--pkgs/games/chessx/default.nix4
-rw-r--r--pkgs/games/clonehero/default.nix2
-rw-r--r--pkgs/misc/emulators/retroarch/kodi-advanced-launchers.nix4
-rw-r--r--pkgs/misc/vim-plugins/generated.nix132
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names7
-rw-r--r--pkgs/os-specific/linux/kernel/linux-xanmod.nix6
-rw-r--r--pkgs/os-specific/linux/libcgroup/default.nix23
-rw-r--r--pkgs/os-specific/linux/xpadneo/default.nix2
-rw-r--r--pkgs/servers/nosql/influxdb/default.nix4
-rw-r--r--pkgs/servers/osrm-backend/default.nix4
-rw-r--r--pkgs/servers/pinnwand/default.nix13
-rw-r--r--pkgs/servers/reproxy/default.nix6
-rw-r--r--pkgs/servers/rippled/default.nix4
-rw-r--r--pkgs/shells/bash/undistract-me/default.nix2
-rw-r--r--pkgs/tools/X11/xpra/default.nix28
-rw-r--r--pkgs/tools/X11/xpra/fix-paths.patch13
-rw-r--r--pkgs/tools/audio/botamusique/default.nix5
-rw-r--r--pkgs/tools/audio/botamusique/node-packages.nix62
-rw-r--r--pkgs/tools/audio/botamusique/src.json8
-rw-r--r--pkgs/tools/audio/yabridge/default.nix2
-rw-r--r--pkgs/tools/audio/yabridgectl/default.nix2
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix4
-rw-r--r--pkgs/tools/graphics/ldgallery/default.nix4
-rw-r--r--pkgs/tools/graphics/ldgallery/viewer/default.nix3
-rw-r--r--pkgs/tools/graphics/mangohud/default.nix2
-rw-r--r--pkgs/tools/graphics/vkBasalt/default.nix2
-rw-r--r--pkgs/tools/misc/bfetch/default.nix29
-rw-r--r--pkgs/tools/misc/fzf/default.nix4
-rw-r--r--pkgs/tools/networking/openconnect_pa/default.nix40
-rw-r--r--pkgs/tools/networking/xh/default.nix6
-rw-r--r--pkgs/tools/package-management/protontricks/default.nix2
-rw-r--r--pkgs/tools/security/eid-mw/default.nix69
-rw-r--r--pkgs/tools/security/vault/default.nix4
-rw-r--r--pkgs/tools/security/vault/vault-bin.nix10
-rw-r--r--pkgs/tools/system/wslu/default.nix23
-rw-r--r--pkgs/tools/typesetting/htmldoc/default.nix11
-rw-r--r--pkgs/top-level/aliases.nix2
-rw-r--r--pkgs/top-level/all-packages.nix27
-rw-r--r--pkgs/top-level/python-aliases.nix39
-rw-r--r--pkgs/top-level/python-packages.nix4
-rw-r--r--pkgs/top-level/ruby-packages.nix10
157 files changed, 1479 insertions, 591 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 256abac7b41..e15e9e67eda 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -46,6 +46,7 @@
 /nixos/default.nix          @nbp @infinisil
 /nixos/lib/from-env.nix     @nbp @infinisil
 /nixos/lib/eval-config.nix  @nbp @infinisil
+/nixos/doc @ryantm
 /nixos/doc/manual/configuration/abstractions.xml      @nbp
 /nixos/doc/manual/configuration/config-file.xml       @nbp
 /nixos/doc/manual/configuration/config-syntax.xml     @nbp
diff --git a/.github/workflows/nixos-manual.yml b/.github/workflows/nixos-manual.yml
new file mode 100644
index 00000000000..101cd3906be
--- /dev/null
+++ b/.github/workflows/nixos-manual.yml
@@ -0,0 +1,20 @@
+name: NixOS manual checks
+
+on:
+  pull_request:
+    branches-ignore:
+      - 'release-**'
+    paths:
+      - 'nixos/**/*.xml'
+      - 'nixos/**/*.md'
+
+jobs:
+  tests:
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v2
+    - uses: cachix/install-nix-action@v12
+    - name: Check DocBook files generated from Markdown are consistent
+      run: |
+        nixos/doc/manual/md-to-db.sh
+        git diff --exit-code
diff --git a/.version b/.version
index b9b543d4254..835ab5d1893 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-21.05
+21.11
\ No newline at end of file
diff --git a/lib/trivial.nix b/lib/trivial.nix
index f6f5da5998f..e1581f1e91d 100644
--- a/lib/trivial.nix
+++ b/lib/trivial.nix
@@ -171,7 +171,7 @@ rec {
      On each release the first letter is bumped and a new animal is chosen
      starting with that new letter.
   */
-  codeName = "Okapi";
+  codeName = "Porcupine";
 
   /* Returns the current nixpkgs version suffix as string. */
   versionSuffix =
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index a5338d5155b..202e166443a 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -5696,6 +5696,12 @@
     githubId = 6652840;
     name = "Jade";
   };
+  lgcl = {
+    email = "dev@lgcl.de";
+    name = "Leon Vack";
+    github = "LogicalOverflow";
+    githubId = 5919957;
+  };
   lheckemann = {
     email = "git@sphalerite.org";
     github = "lheckemann";
@@ -6452,10 +6458,10 @@
     email = "softs@metabarcoding.org";
     name = "Celine Mercier";
   };
-  metadark = {
+  kira-bruneau = {
     email = "kira.bruneau@pm.me";
     name = "Kira Bruneau";
-    github = "metadark";
+    github = "kira-bruneau";
     githubId = 382041;
   };
   meutraa = {
diff --git a/nixos/doc/manual/contributing-to-this-manual.chapter.md b/nixos/doc/manual/contributing-to-this-manual.chapter.md
new file mode 100644
index 00000000000..26813d1042d
--- /dev/null
+++ b/nixos/doc/manual/contributing-to-this-manual.chapter.md
@@ -0,0 +1,13 @@
+# Contributing to this manual {#chap-contributing}
+
+The DocBook and CommonMark sources of NixOS' manual are in the [nixos/doc/manual](https://github.com/NixOS/nixpkgs/tree/master/nixos/doc/manual) subdirectory of the [Nixpkgs](https://github.com/NixOS/nixpkgs) repository.
+
+You can quickly check your edits with the following:
+
+```ShellSession
+$ cd /path/to/nixpkgs
+$ ./nixos/doc/manual/md-to-db.sh
+$ nix-build nixos/release.nix -A manual.x86_64-linux
+```
+
+If the build succeeds, the manual will be in `./result/share/doc/nixos/index.html`.
diff --git a/nixos/doc/manual/contributing-to-this-manual.xml b/nixos/doc/manual/contributing-to-this-manual.xml
deleted file mode 100644
index 137e04bb313..00000000000
--- a/nixos/doc/manual/contributing-to-this-manual.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<chapter xmlns="http://docbook.org/ns/docbook"
-         xmlns:xlink="http://www.w3.org/1999/xlink"
-         xml:id="chap-contributing">
- <title>Contributing to this manual</title>
- <para>
-  The DocBook sources of NixOS' manual are in the <filename
-xlink:href="https://github.com/NixOS/nixpkgs/tree/master/nixos/doc/manual">
-nixos/doc/manual</filename> subdirectory of the <link
-xlink:href="https://github.com/NixOS/nixpkgs">Nixpkgs</link> repository.
- </para>
- <para>
-  You can quickly check your edits with the following:
- </para>
-<screen>
-<prompt>$ </prompt>cd /path/to/nixpkgs
-<prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux
-</screen>
- <para>
-  If the build succeeds, the manual will be in
-  <filename>./result/share/doc/nixos/index.html</filename>.
- </para>
-</chapter>
diff --git a/nixos/doc/manual/development/building-nixos.chapter.md b/nixos/doc/manual/development/building-nixos.chapter.md
new file mode 100644
index 00000000000..699a75f4115
--- /dev/null
+++ b/nixos/doc/manual/development/building-nixos.chapter.md
@@ -0,0 +1,18 @@
+# Building Your Own NixOS CD {#sec-building-cd}
+Building a NixOS CD is as easy as configuring your own computer. The idea is to use another module which will replace your `configuration.nix` to configure the system that would be installed on the CD.
+
+Default CD/DVD configurations are available inside `nixos/modules/installer/cd-dvd`
+
+```ShellSession
+$ git clone https://github.com/NixOS/nixpkgs.git
+$ cd nixpkgs/nixos
+$ nix-build -A config.system.build.isoImage -I nixos-config=modules/installer/cd-dvd/installation-cd-minimal.nix default.nix
+```
+
+Before burning your CD/DVD, you can check the content of the image by mounting anywhere like suggested by the following command:
+
+```ShellSession
+# mount -o loop -t iso9660 ./result/iso/cd.iso /mnt/iso</screen>
+```
+
+If you want to customize your NixOS CD in more detail, or generate other kinds of images, you might want to check out [nixos-generators](https://github.com/nix-community/nixos-generators). This can also be a good starting point when you want to use Nix to build a 'minimal' image that doesn't include a NixOS installation.
diff --git a/nixos/doc/manual/development/building-nixos.xml b/nixos/doc/manual/development/building-nixos.xml
deleted file mode 100644
index d58b6354d1d..00000000000
--- a/nixos/doc/manual/development/building-nixos.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<chapter xmlns="http://docbook.org/ns/docbook"
-        xmlns:xlink="http://www.w3.org/1999/xlink"
-        xmlns:xi="http://www.w3.org/2001/XInclude"
-        version="5.0"
-        xml:id="sec-building-cd">
- <title>Building Your Own NixOS CD</title>
- <para>
-  Building a NixOS CD is as easy as configuring your own computer. The idea is
-  to use another module which will replace your
-  <filename>configuration.nix</filename> to configure the system that would be
-  installed on the CD.
- </para>
- <para>
-  Default CD/DVD configurations are available inside
-  <filename>nixos/modules/installer/cd-dvd</filename>.
-<screen>
-<prompt>$ </prompt>git clone https://github.com/NixOS/nixpkgs.git
-<prompt>$ </prompt>cd nixpkgs/nixos
-<prompt>$ </prompt>nix-build -A config.system.build.isoImage -I nixos-config=modules/installer/cd-dvd/installation-cd-minimal.nix default.nix</screen>
- </para>
- <para>
-  Before burning your CD/DVD, you can check the content of the image by
-  mounting anywhere like suggested by the following command:
-<screen>
-<prompt># </prompt>mount -o loop -t iso9660 ./result/iso/cd.iso /mnt/iso</screen>
- </para>
- <para>
- If you want to customize your NixOS CD in more detail, or generate other kinds
- of images, you might want to check out <link
- xlink:href="https://github.com/nix-community/nixos-generators">nixos-generators</link>. This can also be a good starting point when you want to use Nix to build a
- 'minimal' image that doesn't include a NixOS installation.
- </para>
-</chapter>
diff --git a/nixos/doc/manual/development/development.xml b/nixos/doc/manual/development/development.xml
index 43f511b3e96..78763a73505 100644
--- a/nixos/doc/manual/development/development.xml
+++ b/nixos/doc/manual/development/development.xml
@@ -13,7 +13,7 @@
  <xi:include href="writing-modules.xml" />
  <xi:include href="building-parts.xml" />
  <xi:include href="writing-documentation.xml" />
- <xi:include href="building-nixos.xml" />
+ <xi:include href="../from_md/development/building-nixos.chapter.xml" />
  <xi:include href="nixos-tests.xml" />
  <xi:include href="testing-installer.xml" />
  <xi:include href="releases.xml" />
diff --git a/nixos/doc/manual/from_md/README.md b/nixos/doc/manual/from_md/README.md
new file mode 100644
index 00000000000..cc6d08ca0a1
--- /dev/null
+++ b/nixos/doc/manual/from_md/README.md
@@ -0,0 +1,5 @@
+This directory is temporarily needed while we transition the manual to CommonMark. It stores the output of the ../md-to-db.sh script that converts CommonMark files back to DocBook.
+
+We are choosing to convert the Markdown to DocBook at authoring time instead of manual building time, because we do not want the pandoc toolchain to become part of the NixOS closure.
+
+Do not edit the DocBook files inside this directory or its subdirectories. Instead, edit the corresponding .md file in the normal manual directories, and run ../md-to-db.sh to update the file here.
diff --git a/nixos/doc/manual/from_md/contributing-to-this-manual.chapter.xml b/nixos/doc/manual/from_md/contributing-to-this-manual.chapter.xml
new file mode 100644
index 00000000000..a9b0c6a5eef
--- /dev/null
+++ b/nixos/doc/manual/from_md/contributing-to-this-manual.chapter.xml
@@ -0,0 +1,22 @@
+<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="chap-contributing">
+  <title>Contributing to this manual</title>
+  <para>
+    The DocBook and CommonMark sources of NixOS’ manual are in the
+    <link xlink:href="https://github.com/NixOS/nixpkgs/tree/master/nixos/doc/manual">nixos/doc/manual</link>
+    subdirectory of the
+    <link xlink:href="https://github.com/NixOS/nixpkgs">Nixpkgs</link>
+    repository.
+  </para>
+  <para>
+    You can quickly check your edits with the following:
+  </para>
+  <programlisting>
+$ cd /path/to/nixpkgs
+$ ./nixos/doc/manual/md-to-db.sh
+$ nix-build nixos/release.nix -A manual.x86_64-linux
+</programlisting>
+  <para>
+    If the build succeeds, the manual will be in
+    <literal>./result/share/doc/nixos/index.html</literal>.
+  </para>
+</chapter>
diff --git a/nixos/doc/manual/from_md/development/building-nixos.chapter.xml b/nixos/doc/manual/from_md/development/building-nixos.chapter.xml
new file mode 100644
index 00000000000..ceb744447da
--- /dev/null
+++ b/nixos/doc/manual/from_md/development/building-nixos.chapter.xml
@@ -0,0 +1,33 @@
+<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-building-cd">
+  <title>Building Your Own NixOS CD</title>
+  <para>
+    Building a NixOS CD is as easy as configuring your own computer. The
+    idea is to use another module which will replace your
+    <literal>configuration.nix</literal> to configure the system that
+    would be installed on the CD.
+  </para>
+  <para>
+    Default CD/DVD configurations are available inside
+    <literal>nixos/modules/installer/cd-dvd</literal>
+  </para>
+  <programlisting>
+$ git clone https://github.com/NixOS/nixpkgs.git
+$ cd nixpkgs/nixos
+$ nix-build -A config.system.build.isoImage -I nixos-config=modules/installer/cd-dvd/installation-cd-minimal.nix default.nix
+</programlisting>
+  <para>
+    Before burning your CD/DVD, you can check the content of the image
+    by mounting anywhere like suggested by the following command:
+  </para>
+  <programlisting>
+# mount -o loop -t iso9660 ./result/iso/cd.iso /mnt/iso&lt;/screen&gt;
+</programlisting>
+  <para>
+    If you want to customize your NixOS CD in more detail, or generate
+    other kinds of images, you might want to check out
+    <link xlink:href="https://github.com/nix-community/nixos-generators">nixos-generators</link>.
+    This can also be a good starting point when you want to use Nix to
+    build a <quote>minimal</quote> image that doesn’t include a NixOS
+    installation.
+  </para>
+</chapter>
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
new file mode 100644
index 00000000000..abcf3406aa3
--- /dev/null
+++ b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
@@ -0,0 +1,15 @@
+<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="release-21.11">
+  <title>Release 21.11 (<quote>?</quote>, 2021.11/??)</title>
+  <para>
+    In addition to numerous new and upgraded packages, this release has
+    the following highlights:
+  </para>
+  <itemizedlist spacing="compact">
+    <listitem>
+      <para>
+        Support is planned until the end of April 2022, handing over to
+        22.05.
+      </para>
+    </listitem>
+  </itemizedlist>
+</section>
diff --git a/nixos/doc/manual/manual.xml b/nixos/doc/manual/manual.xml
index db9e7313831..158b3507a58 100644
--- a/nixos/doc/manual/manual.xml
+++ b/nixos/doc/manual/manual.xml
@@ -19,6 +19,6 @@
   <xi:include href="./generated/options-db.xml"
                 xpointer="configuration-variable-list" />
  </appendix>
- <xi:include href="contributing-to-this-manual.xml" />
+ <xi:include href="./from_md/contributing-to-this-manual.chapter.xml" />
  <xi:include href="release-notes/release-notes.xml" />
 </book>
diff --git a/nixos/doc/manual/md-to-db.sh b/nixos/doc/manual/md-to-db.sh
new file mode 100755
index 00000000000..fc4be7da22b
--- /dev/null
+++ b/nixos/doc/manual/md-to-db.sh
@@ -0,0 +1,33 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -I nixpkgs=channel:nixpkgs-unstable -i bash -p pandoc
+
+# This script is temporarily needed while we transition the manual to
+# CommonMark. It converts the .md files in the regular manual folder
+# into DocBook files in the from_md folder.
+
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+pushd $DIR
+
+OUT="$DIR/from_md"
+mapfile -t MD_FILES < <(find . -type f -regex '.*\.md$')
+
+for mf in ${MD_FILES[*]}; do
+  if [ "${mf: -11}" == ".section.md" ]; then
+    mkdir -p $(dirname "$OUT/$mf")
+    pandoc "$mf" -t docbook \
+      --extract-media=media \
+      -f markdown+smart \
+    | cat  > "$OUT/${mf%".section.md"}.section.xml"
+  fi
+
+  if [ "${mf: -11}" == ".chapter.md" ]; then
+    mkdir -p $(dirname "$OUT/$mf")
+    pandoc "$mf" -t docbook \
+      --top-level-division=chapter \
+      --extract-media=media \
+      -f markdown+smart \
+    | cat  > "$OUT/${mf%".chapter.md"}.chapter.xml"
+  fi
+done
+
+popd
diff --git a/nixos/doc/manual/release-notes/release-notes.xml b/nixos/doc/manual/release-notes/release-notes.xml
index e083d51406c..6d7899f6dcd 100644
--- a/nixos/doc/manual/release-notes/release-notes.xml
+++ b/nixos/doc/manual/release-notes/release-notes.xml
@@ -8,6 +8,7 @@
   This section lists the release notes for each stable version of NixOS and
   current unstable revision.
  </para>
+ <xi:include href="../from_md/release-notes/rl-2111.section.xml" />
  <xi:include href="rl-2105.xml" />
  <xi:include href="rl-2009.xml" />
  <xi:include href="rl-2003.xml" />
diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md
new file mode 100644
index 00000000000..1499249148f
--- /dev/null
+++ b/nixos/doc/manual/release-notes/rl-2111.section.md
@@ -0,0 +1,5 @@
+# Release 21.11 (“?”, 2021.11/??) {#release-21.11}
+
+In addition to numerous new and upgraded packages, this release has the following highlights:
+
+* Support is planned until the end of April 2022, handing over to 22.05.
diff --git a/nixos/modules/hardware/xpadneo.nix b/nixos/modules/hardware/xpadneo.nix
index d504697e61f..dbc4ba21256 100644
--- a/nixos/modules/hardware/xpadneo.nix
+++ b/nixos/modules/hardware/xpadneo.nix
@@ -24,6 +24,6 @@ in
   };
 
   meta = {
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 33b4d01ebff..aa4e2ccc46b 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -238,6 +238,7 @@
   ./services/amqp/activemq/default.nix
   ./services/amqp/rabbitmq.nix
   ./services/audio/alsa.nix
+  ./services/audio/botamusique.nix
   ./services/audio/jack.nix
   ./services/audio/icecast.nix
   ./services/audio/jmusicbot.nix
diff --git a/nixos/modules/programs/bash/undistract-me.nix b/nixos/modules/programs/bash/undistract-me.nix
index 378144f598b..0e6465e048a 100644
--- a/nixos/modules/programs/bash/undistract-me.nix
+++ b/nixos/modules/programs/bash/undistract-me.nix
@@ -31,6 +31,6 @@ in
   };
 
   meta = {
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixos/modules/services/audio/botamusique.nix b/nixos/modules/services/audio/botamusique.nix
new file mode 100644
index 00000000000..14614d2dd16
--- /dev/null
+++ b/nixos/modules/services/audio/botamusique.nix
@@ -0,0 +1,114 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.botamusique;
+
+  format = pkgs.formats.ini {};
+  configFile = format.generate "botamusique.ini" cfg.settings;
+in
+{
+  meta.maintainers = with lib.maintainers; [ hexa ];
+
+  options.services.botamusique = {
+    enable = mkEnableOption "botamusique, a bot to play audio streams on mumble";
+
+    package = mkOption {
+      type = types.package;
+      default = pkgs.botamusique;
+      description = "The botamusique package to use.";
+    };
+
+    settings = mkOption {
+      type = with types; submodule {
+        freeformType = format.type;
+        options = {
+          server.host = mkOption {
+            type = types.str;
+            default = "localhost";
+            example = "mumble.example.com";
+            description = "Hostname of the mumble server to connect to.";
+          };
+
+          server.port = mkOption {
+            type = types.port;
+            default = 64738;
+            description = "Port of the mumble server to connect to.";
+          };
+
+          bot.username = mkOption {
+            type = types.str;
+            default = "botamusique";
+            description = "Name the bot should appear with.";
+          };
+
+          bot.comment = mkOption {
+            type = types.str;
+            default = "Hi, I'm here to play radio, local music or youtube/soundcloud music. Have fun!";
+            description = "Comment displayed for the bot.";
+          };
+        };
+      };
+      default = {};
+      description = ''
+        Your <filename>configuration.ini</filename> as a Nix attribute set. Look up
+        possible options in the <link xlink:href="https://github.com/azlux/botamusique/blob/master/configuration.example.ini">configuration.example.ini</link>.
+      '';
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.botamusique = {
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+
+      unitConfig.Documentation = "https://github.com/azlux/botamusique/wiki";
+
+      environment.HOME = "/var/lib/botamusique";
+
+      serviceConfig = {
+        ExecStart = "${cfg.package}/bin/botamusique --config ${configFile}";
+        Restart = "always"; # the bot exits when the server connection is lost
+
+        # Hardening
+        CapabilityBoundingSet = [ "" ];
+        DynamicUser = true;
+        IPAddressDeny = [
+          "link-local"
+          "multicast"
+        ];
+        LockPersonality = true;
+        MemoryDenyWriteExecute = true;
+        ProcSubset = "pid";
+        PrivateDevices = true;
+        PrivateUsers = true;
+        PrivateTmp = true;
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        ProtectProc = "invisible";
+        ProtectSystem = "strict";
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        RestrictAddressFamilies = [
+          "AF_INET"
+          "AF_INET6"
+        ];
+        StateDirectory = "botamusique";
+        SystemCallArchitectures = "native";
+        SystemCallFilter = [
+          "@system-service"
+          "~@privileged"
+          "~@resources"
+        ];
+        UMask = "0077";
+        WorkingDirectory = "/var/lib/botamusique";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/backup/syncoid.nix b/nixos/modules/services/backup/syncoid.nix
index e72e3fa59cf..b764db1f14e 100644
--- a/nixos/modules/services/backup/syncoid.nix
+++ b/nixos/modules/services/backup/syncoid.nix
@@ -197,14 +197,14 @@ in {
                ])) (attrValues cfg.commands);
         after = [ "zfs.target" ];
         serviceConfig = {
-          ExecStartPre = (map (pool: lib.escapeShellArgs [
-            "+/run/booted-system/sw/bin/zfs" "allow"
-            cfg.user "hold,send" pool
-          ]) (getPools "source")) ++
-          (map (pool: lib.escapeShellArgs [
-            "+/run/booted-system/sw/bin/zfs" "allow"
-            cfg.user "create,mount,receive,rollback" pool
-          ]) (getPools "target"));
+          ExecStartPre = let
+            allowCmd = permissions: pool: lib.escapeShellArgs [
+              "+/run/booted-system/sw/bin/zfs" "allow"
+              cfg.user (concatStringsSep "," permissions) pool
+            ];
+          in
+            (map (allowCmd [ "hold" "send" "snapshot" "destroy" ]) (getPools "source")) ++
+            (map (allowCmd [ "create" "mount" "receive" "rollback" ]) (getPools "target"));
           User = cfg.user;
           Group = cfg.group;
         };
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index 290b5af1d60..dff58745304 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -699,12 +699,12 @@ in {
     ];
 
     users.users.matrix-synapse = {
-        group = "matrix-synapse";
-        home = cfg.dataDir;
-        createHome = true;
-        shell = "${pkgs.bash}/bin/bash";
-        uid = config.ids.uids.matrix-synapse;
-      };
+      group = "matrix-synapse";
+      home = cfg.dataDir;
+      createHome = true;
+      shell = "${pkgs.bash}/bin/bash";
+      uid = config.ids.uids.matrix-synapse;
+    };
 
     users.groups.matrix-synapse = {
       gid = config.ids.gids.matrix-synapse;
@@ -726,6 +726,10 @@ in {
         User = "matrix-synapse";
         Group = "matrix-synapse";
         WorkingDirectory = cfg.dataDir;
+        ExecStartPre = [ ("+" + (pkgs.writeShellScript "matrix-synapse-fix-permissions" ''
+          chown matrix-synapse:matrix-synapse ${cfg.dataDir}/homeserver.signing.key
+          chmod 0600 ${cfg.dataDir}/homeserver.signing.key
+        '')) ];
         ExecStart = ''
           ${cfg.package}/bin/homeserver \
             ${ concatMapStringsSep "\n  " (x: "--config-path ${x} \\") ([ configFile ] ++ cfg.extraConfigFiles) }
@@ -733,6 +737,7 @@ in {
         '';
         ExecReload = "${pkgs.util-linux}/bin/kill -HUP $MAINPID";
         Restart = "on-failure";
+        UMask = "0077";
       };
     };
   };
diff --git a/nixos/modules/services/x11/desktop-managers/cinnamon.nix b/nixos/modules/services/x11/desktop-managers/cinnamon.nix
index 43220e3c595..101c64c7b3e 100644
--- a/nixos/modules/services/x11/desktop-managers/cinnamon.nix
+++ b/nixos/modules/services/x11/desktop-managers/cinnamon.nix
@@ -128,6 +128,7 @@ in
         cinnamon-session
         cinnamon-desktop
         cinnamon-menus
+        cinnamon-translations
 
         # utils needed by some scripts
         killall
@@ -137,6 +138,9 @@ in
         # cinnamon-killer-daemon: provided by cinnamon-common
         gnome.networkmanagerapplet # session requirement - also nm-applet not needed
 
+        # For a polkit authentication agent
+        polkit_gnome
+
         # packages
         nemo
         cinnamon-control-center
diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix
index 693179e4852..b6be524aea6 100644
--- a/nixos/modules/services/x11/desktop-managers/plasma5.nix
+++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix
@@ -316,6 +316,7 @@ in
         ++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt pkgs.openobex pkgs.obexftp ]
         ++ lib.optional config.networking.networkmanager.enable plasma-nm
         ++ lib.optional config.hardware.pulseaudio.enable plasma-pa
+        ++ lib.optional config.services.pipewire.pulse.enable plasma-pa
         ++ lib.optional config.powerManagement.enable powerdevil
         ++ lib.optional config.services.colord.enable pkgs.colord-kde
         ++ lib.optionals config.services.samba.enable [ kdenetwork-filesharing pkgs.samba ]
diff --git a/nixos/modules/virtualisation/nixos-containers.nix b/nixos/modules/virtualisation/nixos-containers.nix
index a158509a77a..f3f318412df 100644
--- a/nixos/modules/virtualisation/nixos-containers.nix
+++ b/nixos/modules/virtualisation/nixos-containers.nix
@@ -428,7 +428,7 @@ let
       extraVeths = {};
       additionalCapabilities = [];
       ephemeral = false;
-      timeoutStartSec = "15s";
+      timeoutStartSec = "1min";
       allowedDevices = [];
       hostAddress = null;
       hostAddress6 = null;
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 4ada4a5de80..99393e5b184 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -47,6 +47,7 @@ in
   boot = handleTestOn ["x86_64-linux"] ./boot.nix {}; # syslinux is unsupported on aarch64
   boot-stage1 = handleTest ./boot-stage1.nix {};
   borgbackup = handleTest ./borgbackup.nix {};
+  botamusique = handleTest ./botamusique.nix {};
   buildbot = handleTest ./buildbot.nix {};
   buildkite-agents = handleTest ./buildkite-agents.nix {};
   caddy = handleTest ./caddy.nix {};
diff --git a/nixos/tests/botamusique.nix b/nixos/tests/botamusique.nix
new file mode 100644
index 00000000000..ccb105dc142
--- /dev/null
+++ b/nixos/tests/botamusique.nix
@@ -0,0 +1,47 @@
+import ./make-test-python.nix ({ pkgs, lib, ...} :
+
+{
+  name = "botamusique";
+  meta.maintainers = with lib.maintainers; [ hexa ];
+
+  nodes = {
+    machine = { config, ... }: {
+      services.murmur = {
+        enable = true;
+        registerName = "NixOS tests";
+      };
+
+      services.botamusique = {
+        enable = true;
+        settings = {
+          server = {
+            channel = "NixOS tests";
+          };
+          bot = {
+            version = false;
+            auto_check_update = false;
+          };
+        };
+      };
+    };
+  };
+
+  testScript = ''
+    start_all()
+
+    machine.wait_for_unit("murmur.service")
+    machine.wait_for_unit("botamusique.service")
+
+    machine.sleep(10)
+
+    machine.wait_until_succeeds(
+        "journalctl -u murmur.service -e | grep -q '<1:botamusique(-1)> Authenticated'"
+    )
+
+    with subtest("Check systemd hardening"):
+        output = machine.execute("systemctl show botamusique.service")[1]
+        machine.log(output)
+        output = machine.execute("systemd-analyze security botamusique.service")[1]
+        machine.log(output)
+  '';
+})
diff --git a/nixos/tests/sanoid.nix b/nixos/tests/sanoid.nix
index da6d4c9ffe8..c691bfc08ef 100644
--- a/nixos/tests/sanoid.nix
+++ b/nixos/tests/sanoid.nix
@@ -33,14 +33,22 @@ in {
 
           autosnap = true;
         };
-        datasets."pool/test".useTemplate = [ "test" ];
+        datasets."pool/sanoid".useTemplate = [ "test" ];
+        extraArgs = [ "--verbose" ];
       };
 
       services.syncoid = {
         enable = true;
         sshKey = "/var/lib/syncoid/id_ecdsa";
-        commonArgs = [ "--no-sync-snap" ];
-        commands."pool/test".target = "root@target:pool/test";
+        commands = {
+          # Sync snapshot taken by sanoid
+          "pool/sanoid" = {
+            target = "root@target:pool/sanoid";
+            extraArgs = [ "--no-sync-snap" ];
+          };
+          # Take snapshot and sync
+          "pool/syncoid".target = "root@target:pool/syncoid";
+        };
       };
     };
     target = { ... }: {
@@ -54,18 +62,19 @@ in {
 
   testScript = ''
     source.succeed(
-        "mkdir /tmp/mnt",
+        "mkdir /mnt",
         "parted --script /dev/vdb -- mklabel msdos mkpart primary 1024M -1s",
         "udevadm settle",
-        "zpool create pool /dev/vdb1",
-        "zfs create -o mountpoint=legacy pool/test",
-        "mount -t zfs pool/test /tmp/mnt",
+        "zpool create pool -R /mnt /dev/vdb1",
+        "zfs create pool/sanoid",
+        "zfs create pool/syncoid",
         "udevadm settle",
     )
     target.succeed(
+        "mkdir /mnt",
         "parted --script /dev/vdb -- mklabel msdos mkpart primary 1024M -1s",
         "udevadm settle",
-        "zpool create pool /dev/vdb1",
+        "zpool create pool -R /mnt /dev/vdb1",
         "udevadm settle",
     )
 
@@ -76,16 +85,15 @@ in {
         "chown -R syncoid:syncoid /var/lib/syncoid/",
     )
 
-    source.succeed("touch /tmp/mnt/test.txt")
+    # Take snapshot with sanoid
+    source.succeed("touch /mnt/pool/sanoid/test.txt")
     source.systemctl("start --wait sanoid.service")
 
+    # Sync snapshots
     target.wait_for_open_port(22)
+    source.succeed("touch /mnt/pool/syncoid/test.txt")
     source.systemctl("start --wait syncoid.service")
-    target.succeed(
-        "mkdir /tmp/mnt",
-        "zfs set mountpoint=legacy pool/test",
-        "mount -t zfs pool/test /tmp/mnt",
-    )
-    target.succeed("cat /tmp/mnt/test.txt")
+    target.succeed("cat /mnt/pool/sanoid/test.txt")
+    target.succeed("cat /mnt/pool/syncoid/test.txt")
   '';
 })
diff --git a/pkgs/applications/audio/whipper/default.nix b/pkgs/applications/audio/whipper/default.nix
index 3405cf99ddd..b63680a8f48 100644
--- a/pkgs/applications/audio/whipper/default.nix
+++ b/pkgs/applications/audio/whipper/default.nix
@@ -3,13 +3,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "whipper";
-  version = "0.9.1.dev7+g${lib.substring 0 7 src.rev}";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "whipper-team";
     repo = "whipper";
-    rev = "9e95f0604fa30ab06445fe46e3bc93bba6092a05";
-    sha256 = "1c2qldw9vxpvdfh5wl6mfcd7zzz3v8r86ffqll311lcp2zin33dg";
+    rev = "v${version}";
+    sha256 = "00cq03cy5dyghmibsdsq5sdqv3bzkzhshsng74bpnb5lasxp3ia5";
   };
 
   pythonPath = with python3.pkgs; [
diff --git a/pkgs/applications/audio/ytmdesktop/default.nix b/pkgs/applications/audio/ytmdesktop/default.nix
new file mode 100644
index 00000000000..be2b85199b7
--- /dev/null
+++ b/pkgs/applications/audio/ytmdesktop/default.nix
@@ -0,0 +1,36 @@
+{ lib, fetchurl, appimageTools, }:
+
+let
+  pname = "ytmdesktop";
+  version = "1.13.0";
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/ytmdesktop/ytmdesktop/releases/download/v${version}/YouTube-Music-Desktop-App-${version}.AppImage";
+    sha256 = "0f5l7hra3m3q9zd0ngc9dj4mh1lk0rgicvh9idpd27wr808vy28v";
+  };
+
+  appimageContents = appimageTools.extract { inherit name src; };
+in appimageTools.wrapType2 rec {
+  inherit name src;
+
+  extraInstallCommands = ''
+    mv $out/bin/{${name},${pname}}
+
+    install -m 444 \
+        -D ${appimageContents}/youtube-music-desktop-app.desktop \
+        -t $out/share/applications
+    substituteInPlace \
+        $out/share/applications/youtube-music-desktop-app.desktop \
+        --replace 'Exec=AppRun' 'Exec=${pname}'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+  '';
+
+  meta = with lib; {
+    description = "A Desktop App for YouTube Music";
+    homepage = "https://ytmdesktop.app/";
+    license = licenses.cc0;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.lgcl ];
+  };
+}
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 3d5f392205f..dfc3e600ec2 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -111,7 +111,7 @@ in stdenv.mkDerivation rec {
       else "https://zynaddsubfx.sourceforge.io";
 
     license = licenses.gpl2;
-    maintainers = with maintainers; [ goibhniu metadark ];
+    maintainers = with maintainers; [ goibhniu kira-bruneau ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/zynaddsubfx/mruby-zest/default.nix b/pkgs/applications/audio/zynaddsubfx/mruby-zest/default.nix
index 0096cc97ddb..9dd5b583817 100644
--- a/pkgs/applications/audio/zynaddsubfx/mruby-zest/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/mruby-zest/default.nix
@@ -103,7 +103,7 @@ stdenv.mkDerivation rec {
     description = "The Zest Framework used in ZynAddSubFX's UI";
     homepage = "https://github.com/mruby-zest";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/lite/default.nix b/pkgs/applications/editors/lite/default.nix
index a313ea18212..5ed1603ba8a 100644
--- a/pkgs/applications/editors/lite/default.nix
+++ b/pkgs/applications/editors/lite/default.nix
@@ -4,6 +4,7 @@
 , lua52Packages
 , pkg-config
 , makeWrapper
+, openlibm
 } :
 
 stdenv.mkDerivation rec {
@@ -19,7 +20,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper pkg-config ];
 
-  buildInputs = [ SDL2 lua52Packages.lua ];
+  buildInputs = [ SDL2 lua52Packages.lua openlibm ];
 
   postPatch = ''
     # use system Lua 5.2
@@ -34,7 +35,7 @@ stdenv.mkDerivation rec {
     # extracted and adapted from build.sh
     CC=$NIX_CC/bin/cc
     CFLAGS="-Wall -O3 -g -std=gnu11 -Isrc -DLUA_USE_POPEN $(pkg-config --cflags lua sdl2)"
-    LDFLAGS="$(pkg-config --libs lua sdl2)"
+    LDFLAGS="$(pkg-config --libs lua sdl2 openlibm)"
     for f in $(find src -name "*.c"); do
       $CC -c $CFLAGS $f -o "''${f//\//_}.o"
     done
diff --git a/pkgs/applications/editors/poke/default.nix b/pkgs/applications/editors/poke/default.nix
index a8435eb1e6b..f0b8c43546d 100644
--- a/pkgs/applications/editors/poke/default.nix
+++ b/pkgs/applications/editors/poke/default.nix
@@ -66,7 +66,7 @@ in stdenv.mkDerivation rec {
     description = "Interactive, extensible editor for binary data";
     homepage = "http://www.jemarch.net/poke";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ AndersonTorres metadark ];
+    maintainers = with maintainers; [ AndersonTorres kira-bruneau ];
     platforms = platforms.unix;
     changelog = "https://git.savannah.gnu.org/cgit/poke.git/plain/ChangeLog?h=releases/poke-${version}";
   };
diff --git a/pkgs/applications/misc/goldendict/0001-dont-use-maclibs.patch b/pkgs/applications/misc/goldendict/0001-dont-use-maclibs.patch
index fc1fcbb0db0..7a5ca0f7f3c 100644
--- a/pkgs/applications/misc/goldendict/0001-dont-use-maclibs.patch
+++ b/pkgs/applications/misc/goldendict/0001-dont-use-maclibs.patch
@@ -1,14 +1,16 @@
 diff --git i/goldendict.pro w/goldendict.pro
-index 328dc20..5202a07 100644
+index 4a4a3094..082b728f 100644
 --- i/goldendict.pro
 +++ w/goldendict.pro
-@@ -210,21 +210,18 @@ mac {
+@@ -212,22 +212,19 @@ mac {
          -llzo2
      !CONFIG( no_ffmpeg_player ) {
          LIBS += -lao \
+-            -lswresample-gd \
 -            -lavutil-gd \
 -            -lavformat-gd \
 -            -lavcodec-gd
++            -lswresample \
 +            -lavutil \
 +            -lavformat \
 +            -lavcodec
@@ -29,7 +31,7 @@ index 328dc20..5202a07 100644
                        cp -R locale/*.qm GoldenDict.app/Contents/MacOS/locale/ & \
                        mkdir -p GoldenDict.app/Contents/MacOS/help & \
                        cp -R $${PWD}/help/*.qch GoldenDict.app/Contents/MacOS/help/
-@@ -232,15 +229,6 @@ mac {
+@@ -235,15 +232,6 @@ mac {
      CONFIG += zim_support
      !CONFIG( no_chinese_conversion_support ) {
          CONFIG += chinese_conversion_support
@@ -46,17 +48,15 @@ index 328dc20..5202a07 100644
  }
  DEFINES += PROGRAM_VERSION=\\\"$$VERSION\\\"
 diff --git i/tiff.cc w/tiff.cc
-index e3cb8bf..9ff880f 100644
+index e3cb8bf5..95dd812f 100644
 --- i/tiff.cc
 +++ w/tiff.cc
-@@ -6,8 +6,8 @@
+@@ -5,7 +5,7 @@
+ 
  #include "tiff.hh"
  
- #if defined (Q_OS_MAC) || defined (Q_OS_WIN)
--#include "tiff/tiff.h"
--#include "tiff/tiffio.h"
-+#include "tiff.h"
-+#include "tiffio.h"
+-#if defined (Q_OS_MAC) || defined (Q_OS_WIN)
++#if defined (Q_OS_WIN)
+ #include "tiff/tiff.h"
+ #include "tiff/tiffio.h"
  #else
- #include "tiff.h"
- #include "tiffio.h"
diff --git a/pkgs/applications/misc/goldendict/default.nix b/pkgs/applications/misc/goldendict/default.nix
index 307ef57c625..03668e58611 100644
--- a/pkgs/applications/misc/goldendict/default.nix
+++ b/pkgs/applications/misc/goldendict/default.nix
@@ -4,19 +4,19 @@
 , withCC ? true, opencc
 , withEpwing ? true, libeb
 , withExtraTiff ? true, libtiff
-, withFFmpeg ? true, libao, ffmpeg_3
+, withFFmpeg ? true, libao, ffmpeg
 , withMultimedia ? true
 , withZim ? true, zstd }:
 
 mkDerivation rec {
   pname = "goldendict";
-  version = "2020-12-09";
+  version = "2021-03-09";
 
   src = fetchFromGitHub {
     owner = "goldendict";
     repo = pname;
-    rev = "261e45a5d79f9df2fbc050292410bed0f4ef3132";
-    sha256 = "01pny06d4cmwf998hpqd7xx7mccbbasb8js1bv3rkdi1ljg01f7n";
+    rev = "b2e673961d28ca5eb920a909091252d3321f09d6";
+    sha256 = "sha256-+AAamnICq0/B54ggFpgF/Uupm1a4YiEYgHXrhIK4M0E=";
   };
 
   patches = [
@@ -39,7 +39,7 @@ mkDerivation rec {
     ++ lib.optional withCC opencc
     ++ lib.optional withEpwing libeb
     ++ lib.optional withExtraTiff libtiff
-    ++ lib.optionals withFFmpeg [ libao ffmpeg_3 ]
+    ++ lib.optionals withFFmpeg [ libao ffmpeg ]
     ++ lib.optional withZim zstd;
 
   qmakeFlags = with lib; [
diff --git a/pkgs/applications/misc/opentrack/aruco.nix b/pkgs/applications/misc/opentrack/aruco.nix
new file mode 100644
index 00000000000..9a315a13207
--- /dev/null
+++ b/pkgs/applications/misc/opentrack/aruco.nix
@@ -0,0 +1,35 @@
+{ lib, stdenv, cmake, fetchFromGitHub, opencv4 }:
+
+stdenv.mkDerivation {
+  pname = "opentrack-aruco";
+  version = "unstable-20190303";
+
+  src = fetchFromGitHub {
+    owner = "opentrack";
+    repo = "aruco";
+    rev = "12dc60efd61149227bd05c805208d9bcce308f6d";
+    sha256 = "0gkrixgfbpg8pls4qqilphbz4935mg5z4p18a0vv6kclmfccw9ad";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ opencv4 ];
+
+  NIX_CFLAGS_COMPILE = "-Wall -Wextra -Wpedantic -ffast-math -march=native -O3";
+
+  preInstall = ''
+    mkdir -p $out/include/aruco
+  '';
+
+  # copy headers required by main package
+  postInstall = ''
+    cp $src/src/*.h $out/include/aruco
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/opentrack/aruco";
+    description = "C++ library for detection of AR markers based on OpenCV";
+    license = licenses.isc;
+    maintainers = with maintainers; [ zaninime ];
+  };
+}
diff --git a/pkgs/applications/misc/opentrack/default.nix b/pkgs/applications/misc/opentrack/default.nix
new file mode 100644
index 00000000000..9bef85c2b24
--- /dev/null
+++ b/pkgs/applications/misc/opentrack/default.nix
@@ -0,0 +1,58 @@
+{ mkDerivation, lib, callPackage, fetchzip, fetchFromGitHub, cmake, pkg-config
+, ninja, copyDesktopItems, qtbase, qttools, opencv4, procps, eigen, libXdmcp
+, libevdev, makeDesktopItem, fetchurl }:
+
+let
+  version = "2.3.13";
+
+  aruco = callPackage ./aruco.nix { };
+
+  # license.txt inside the zip file is MIT
+  xplaneSdk = fetchzip {
+    url = "https://developer.x-plane.com/wp-content/plugins/code-sample-generation/sample_templates/XPSDK303.zip";
+    sha256 = "11wqjsr996c5qhiv2djsd55gc373a9qcq30dvc6rhzm0fys42zba";
+  };
+
+in mkDerivation {
+  pname = "opentrack";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "opentrack";
+    repo = "opentrack";
+    rev = "opentrack-${version}";
+    sha256 = "1s986lmm5l1pwbwvd1pfiq84n32s1q1dav7a0cbga4d1vcf0v1ay";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ninja copyDesktopItems ];
+  buildInputs = [ qtbase qttools opencv4 procps eigen libXdmcp libevdev aruco ];
+
+  NIX_CFLAGS_COMPILE = "-Wall -Wextra -Wpedantic -ffast-math -march=native -O3";
+
+  cmakeFlags = [
+    "-DCMAKE_BUILD_TYPE=RELEASE"
+    "-DSDK_ARUCO_LIBPATH=${aruco}/lib/libaruco.a"
+    "-DSDK_XPLANE=${xplaneSdk}"
+  ];
+
+  desktopItems = [
+    (makeDesktopItem rec {
+      name = "opentrack";
+      exec = "opentrack";
+      icon = fetchurl {
+        url = "https://github.com/opentrack/opentrack/raw/opentrack-${version}/gui/images/opentrack.png";
+        sha256 = "0d114zk78f7nnrk89mz4gqn7yk3k71riikdn29w6sx99h57f6kgn";
+      };
+      desktopName = name;
+      genericName = "Head tracking software";
+      categories = "Utility;";
+    })
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/opentrack/opentrack";
+    description = "Head tracking software for MS Windows, Linux, and Apple OSX";
+    license = licenses.isc;
+    maintainers = with maintainers; [ zaninime ];
+  };
+}
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 3b1d04f3d38..8d3cc8c3096 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -5,41 +5,21 @@
 
 stdenv.mkDerivation rec {
   pname = "synergy";
-  version = "1.11.1";
+  version = "1.13.1.41";
 
   src = fetchFromGitHub {
     owner = "symless";
     repo = "synergy-core";
     rev = "${version}-stable";
-    sha256 = "1jk60xw4h6s5crha89wk4y8rrf1f3bixgh5mzh3cq3xyrkba41gh";
+    fetchSubmodules = true;
+    sha256 = "1phg0szc9g018zxs5wbys4drzq1cdhyzajfg45l6a3fmi6qdi1kw";
   };
 
-  patches = [
-    ./build-tests.patch
-    (fetchpatch {
-      name = "CVE-2020-15117.patch";
-      url = "https://github.com/symless/synergy-core/commit/"
-          + "0a97c2be0da2d0df25cb86dfd642429e7a8bea39.patch";
-      sha256 = "03q8m5n50fms7fjfjgmqrgy9mrxwi9kkz3f3vlrs2x5h21dl6bmj";
-    })
-  ] ++ lib.optional stdenv.isDarwin ./macos_build_fix.patch;
-
-  # Since the included gtest and gmock don't support clang and the
-  # segfault when built with gcc9, we replace it with 1.10.0 for
-  # synergy-1.11.0. This should become unnecessary when upstream
-  # updates these dependencies.
-  googletest = fetchFromGitHub {
-    owner = "google";
-    repo = "googletest";
-    rev = "release-1.10.0";
-    sha256 = "1zbmab9295scgg4z2vclgfgjchfjailjnvzc6f5x9jvlsdi3dpwz";
-  };
+  patches = lib.optional stdenv.isDarwin ./macos_build_fix.patch;
 
   postPatch = ''
-    rm -r ext/*
-    cp -r ${googletest}/googlemock ext/gmock/
-    cp -r ${googletest}/googletest ext/gtest/
-    chmod -R +w ext/
+    substituteInPlace src/gui/src/SslCertificate.cpp \
+      --replace 'kUnixOpenSslCommand[] = "openssl";' 'kUnixOpenSslCommand[] = "${openssl}/bin/openssl";'
   '';
 
   cmakeFlags = lib.optional (!withGUI) "-DSYNERGY_BUILD_LEGACY_GUI=OFF";
@@ -63,7 +43,7 @@ stdenv.mkDerivation rec {
     cp bin/{synergyc,synergys,synergyd,syntool} $out/bin/
   '' + lib.optionalString withGUI ''
     cp bin/synergy $out/bin/
-    wrapQtApp $out/bin/synergy --prefix PATH : ${lib.makeBinPath [ openssl ]}
+    wrapQtApp $out/bin/synergy
   '' + lib.optionalString stdenv.isLinux ''
     mkdir -p $out/share/icons/hicolor/scalable/apps
     cp ../res/synergy.svg $out/share/icons/hicolor/scalable/apps/
@@ -80,9 +60,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Share one mouse and keyboard between multiple computers";
-    homepage = "http://synergy-project.org/";
+    homepage = "https://synergy-project.org/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ talyz ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/misc/synergy/macos_build_fix.patch b/pkgs/applications/misc/synergy/macos_build_fix.patch
index 2ce277d261b..50087a2c4b4 100644
--- a/pkgs/applications/misc/synergy/macos_build_fix.patch
+++ b/pkgs/applications/misc/synergy/macos_build_fix.patch
@@ -1,17 +1,8 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a2297311..25a51f56 100644
+index c1e78d1d..13639ba1 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -138,7 +138,7 @@ if (UNIX)
- 
- 
-     if (APPLE)
--        set (CMAKE_CXX_FLAGS "--sysroot ${CMAKE_OSX_SYSROOT} ${CMAKE_CXX_FLAGS} -DGTEST_USE_OWN_TR1_TUPLE=1")
-+        set (CMAKE_CXX_FLAGS "--sysroot ${CMAKE_OSX_SYSROOT} ${CMAKE_CXX_FLAGS}")
- 
-         find_library (lib_ScreenSaver ScreenSaver)
-         find_library (lib_IOKit IOKit)
-@@ -292,14 +292,7 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
+@@ -328,14 +328,7 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
          ${OPENSSL_ROOT}/lib/libssl.lib
          ${OPENSSL_ROOT}/lib/libcrypto.lib
      )
@@ -22,8 +13,8 @@ index a2297311..25a51f56 100644
 -        ${OPENSSL_ROOT}/lib/libssl.a
 -        ${OPENSSL_ROOT}/lib/libcrypto.a
 -    )
--elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
-+elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+-elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux|.*BSD|DragonFly")
++elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux|Darwin|.*BSD|DragonFly")
      set (OPENSSL_LIBS ssl crypto)
  else()
      message (FATAL_ERROR "Couldn't find OpenSSL")
diff --git a/pkgs/applications/networking/browsers/nyxt/default.nix b/pkgs/applications/networking/browsers/nyxt/default.nix
index 1f8cb746465..59bb2adbf51 100644
--- a/pkgs/applications/networking/browsers/nyxt/default.nix
+++ b/pkgs/applications/networking/browsers/nyxt/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     description = "Infinitely extensible web-browser (with Lisp development files using WebKitGTK platform port)";
     homepage = "https://nyxt.atlas.engineer";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ lewo ];
+    maintainers = with maintainers; [ lewo payas ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix b/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix
index ff9ce970227..5a4546b8cd8 100644
--- a/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix
+++ b/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix
@@ -2,26 +2,29 @@
 
 buildGoModule rec {
   pname = "starboard-octant-plugin";
-  version = "0.10.0";
+  version = "0.10.3";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-3BifigdAFuOCrhJRv/w4k7pT4BTHfINuEkeG6zaI0v8=";
+    sha256 = "sha256-9vl068ZTw6Czf+cWQ0k1lU0pqh7P0YZgLguHkk3M918=";
   };
 
-  vendorSha256 = "sha256-1NTneOGU4R1xzR9hAI9MJWYuYTPgYtLa5vH1H5wyHcM=";
+  vendorSha256 = "sha256-HOvZPDVKZEoL91yyaJRuKThHirY77xlKOtLKARthxn8=";
 
-  buildFlagsArray = [ "-ldflags=" "-s" "-w" ];
+  preBuild = ''
+    buildFlagsArray+=("-ldflags" "-s -w")
+  '';
 
   meta = with lib; {
+    homepage = "https://github.com/aquasecurity/starboard-octant-plugin";
+    changelog = "https://github.com/aquasecurity/starboard-octant-plugin/releases/tag/v${version}";
     description = "Octant plugin for viewing Starboard security information";
     longDescription = ''
       This is an Octant plugin for Starboard which provides visibility into vulnerability assessment reports for
       Kubernetes workloads stored as custom security resources.
     '';
-    homepage = src.meta.homepage;
     license = licenses.asl20;
     maintainers = with maintainers; [ jk ];
   };
diff --git a/pkgs/applications/networking/feedreaders/newsflash/default.nix b/pkgs/applications/networking/feedreaders/newsflash/default.nix
index 8182832089d..ee85bd8024e 100644
--- a/pkgs/applications/networking/feedreaders/newsflash/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsflash/default.nix
@@ -89,6 +89,6 @@ stdenv.mkDerivation rec {
     description = "A modern feed reader designed for the GNOME desktop";
     homepage = "https://gitlab.com/news-flash/news_flash_gtk";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 5d1f055e894..228c6b47150 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "FlexGet";
-  version = "3.1.121";
+  version = "3.1.127";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "91270a51ed29e4a578c7549ebd01665f4bcf49bf7773a15db27f4ccb13659e00";
+    sha256 = "25a973eb54f2f9ccd422d536b29038c570de3584b8174d993119e3c6b434cc54";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/ids/suricata/default.nix b/pkgs/applications/networking/ids/suricata/default.nix
index 00f6aee0915..22a7d74e14d 100644
--- a/pkgs/applications/networking/ids/suricata/default.nix
+++ b/pkgs/applications/networking/ids/suricata/default.nix
@@ -34,11 +34,11 @@
 in
 stdenv.mkDerivation rec {
   pname = "suricata";
-  version = "5.0.3";
+  version = "6.0.2";
 
   src = fetchurl {
     url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz";
-    sha256 = "1nv5aq5lpkpskkzw05hr2lshkzcs4zqj5kfv4qjlbwigmp6kwh9l";
+    sha256 = "sha256-XkZHoHyzG11tAEmXKkU3XBN96QipZKROLW0jH6OtS1I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index f590bffc0ea..4a0bc23be2f 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -27,10 +27,10 @@ in {
     pname = "discord-canary";
     binaryName = "DiscordCanary";
     desktopName = "Discord Canary";
-    version = "0.0.121";
+    version = "0.0.122";
     src = fetchurl {
       url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-      sha256 = "0s85nh31wv39adawfmllp128n0wgyisbi604n0cngzi28rdw7bph";
+      sha256 = "0ph7gp77wzjpr7nhv13fg64j97dxjwmivshr56ly3kjhmvvanj7k";
     };
   };
 }.${branch}
diff --git a/pkgs/applications/science/biology/sambamba/default.nix b/pkgs/applications/science/biology/sambamba/default.nix
index 7b5141302f7..abfac6ce083 100644
--- a/pkgs/applications/science/biology/sambamba/default.nix
+++ b/pkgs/applications/science/biology/sambamba/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, python3, which, ldc, zlib }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, python3, which, ldc, zlib }:
 
 stdenv.mkDerivation rec {
   pname = "sambamba";
@@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # Fixes hardcoded gcc, making clang build possible.
+    (fetchpatch {
+      url = "https://github.com/biod/sambamba/commit/c50a1c91e1ba062635467f197139bf6784e9be15.patch";
+      sha256 = "1y0vlybmb9wpg4z1nca7m96mk9hxmvd3yrg7w8rxscj45hcqvf8q";
+    })
+  ];
+
   nativeBuildInputs = [ which python3 ldc ];
   buildInputs = [ zlib ];
 
diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix
index b2afc4701a5..0818ca79622 100644
--- a/pkgs/applications/science/misc/snakemake/default.nix
+++ b/pkgs/applications/science/misc/snakemake/default.nix
@@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec {
     pyyaml
     ratelimiter
     requests
-    smart_open
+    smart-open
     toposort
     wrapt
   ];
diff --git a/pkgs/applications/terminal-emulators/st/default.nix b/pkgs/applications/terminal-emulators/st/default.nix
index 4e43bed0a07..591b68b49ab 100644
--- a/pkgs/applications/terminal-emulators/st/default.nix
+++ b/pkgs/applications/terminal-emulators/st/default.nix
@@ -1,5 +1,17 @@
-{ lib, stdenv, fetchurl, pkg-config, writeText, libX11, ncurses
-, libXft, conf ? null, patches ? [], extraLibs ? []}:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, writeText
+, libX11
+, ncurses
+, fontconfig
+, freetype
+, libXft
+, conf ? null
+, patches ? [ ]
+, extraLibs ? [ ]
+}:
 
 with lib;
 
@@ -14,18 +26,34 @@ stdenv.mkDerivation rec {
 
   inherit patches;
 
-  configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
+  configFile = optionalString (conf != null) (writeText "config.def.h" conf);
 
-  postPatch = optionalString (conf!=null) "cp ${configFile} config.def.h"
-            + optionalString stdenv.isDarwin ''
+  postPatch = optionalString (conf != null) "cp ${configFile} config.def.h"
+    + optionalString stdenv.isDarwin ''
     substituteInPlace config.mk --replace "-lrt" ""
   '';
 
-  nativeBuildInputs = [ pkg-config ncurses ];
-  buildInputs = [ libX11 libXft ] ++ extraLibs;
+  strictDeps = true;
+
+  makeFlags = [
+    "PKG_CONFIG=${stdenv.cc.targetPrefix}pkg-config"
+  ];
+
+  nativeBuildInputs = [
+    pkg-config
+    ncurses
+    fontconfig
+    freetype
+  ];
+  buildInputs = [
+    libX11
+    libXft
+  ] ++ extraLibs;
 
   installPhase = ''
+    runHook preInstall
     TERMINFO=$out/share/terminfo make install PREFIX=$out
+    runHook postInstall
   '';
 
   meta = {
diff --git a/pkgs/applications/version-management/git-review/default.nix b/pkgs/applications/version-management/git-review/default.nix
index 38eed2dd5af..410d8d49e4c 100644
--- a/pkgs/applications/version-management/git-review/default.nix
+++ b/pkgs/applications/version-management/git-review/default.nix
@@ -39,6 +39,6 @@ buildPythonApplication rec {
     description = "Tool to submit code to Gerrit";
     homepage = "https://opendev.org/opendev/git-review";
     license = licenses.asl20;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index f15a2e91496..4d74b5d6610 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -5,6 +5,7 @@
 , gtksourceview4, docutils
 , spiceSupport ? true, spice-gtk ? null
 , cpio, e2fsprogs, findutils, gzip
+, cdrtools
 }:
 
 with lib;
@@ -53,8 +54,21 @@ python3Packages.buildPythonApplication rec {
     gappsWrapperArgs+=(--prefix PATH : "${makeBinPath [ cpio e2fsprogs file findutils gzip ]}")
   '';
 
-  # Failed tests
-  doCheck = false;
+  checkInputs = with python3Packages; [ cpio cdrtools pytestCheckHook ];
+
+  disabledTestPaths = [
+    "tests/test_cli.py"
+    "tests/test_disk.py"
+    "tests/test_checkprops.py"
+  ]; # Error logs: https://gist.github.com/superherointj/fee040872beaafaaa19b8bf8f3ff0be5
+
+  preCheck = ''
+    export HOME=.
+  ''; # <- Required for "tests/test_urldetect.py".
+
+  postCheck = ''
+    $out/bin/virt-manager --version | grep -Fw ${version} > /dev/null
+  '';
 
   meta = with lib; {
     homepage = "http://virt-manager.org";
diff --git a/pkgs/applications/window-managers/i3/gaps.nix b/pkgs/applications/window-managers/i3/gaps.nix
index d158aea83f3..8ab8c5630d0 100644
--- a/pkgs/applications/window-managers/i3/gaps.nix
+++ b/pkgs/applications/window-managers/i3/gaps.nix
@@ -1,13 +1,14 @@
-{ fetchurl, lib, i3, autoreconfHook }:
+{ fetchFromGitHub, lib, i3 }:
 
 i3.overrideAttrs (oldAttrs : rec {
-
-  name = "i3-gaps-${version}";
+  pname = "i3-gaps";
   version = "4.19.1";
 
-  src = fetchurl {
-    url = "https://github.com/Airblader/i3/releases/download/${version}/i3-${version}.tar.xz";
-    sha256 = "sha256-+yZ4Pc7zPZfwgBKbjQsrlXxIaxJBmIdE47lljx8FZG0=";
+  src = fetchFromGitHub {
+    owner = "Airblader";
+    repo = "i3";
+    rev = version;
+    sha256 = "sha256-Ydks0hioGAnVBGKraoy3a7Abq9/vHmSne+VFbrYXCug=";
   };
 
   meta = with lib; {
diff --git a/pkgs/build-support/fetchdocker/fetchDockerConfig.nix b/pkgs/build-support/fetchdocker/fetchDockerConfig.nix
index e8b2403d8f3..9fd813bfa57 100644
--- a/pkgs/build-support/fetchdocker/fetchDockerConfig.nix
+++ b/pkgs/build-support/fetchdocker/fetchDockerConfig.nix
@@ -1,4 +1,4 @@
-pkgargs@{ lib, haskellPackages, writeText, gawk }:
+pkgargs@{ stdenv, lib, haskellPackages, writeText, gawk }:
 let
   generic-fetcher =
     import ./generic-fetcher.nix pkgargs;
diff --git a/pkgs/build-support/fetchdocker/fetchDockerLayer.nix b/pkgs/build-support/fetchdocker/fetchDockerLayer.nix
index 0fbbc078efc..869ba637429 100644
--- a/pkgs/build-support/fetchdocker/fetchDockerLayer.nix
+++ b/pkgs/build-support/fetchdocker/fetchDockerLayer.nix
@@ -1,4 +1,4 @@
-pkgargs@{ lib, haskellPackages, writeText, gawk }:
+pkgargs@{ stdenv, lib, haskellPackages, writeText, gawk }:
 let
   generic-fetcher =
     import ./generic-fetcher.nix pkgargs;
diff --git a/pkgs/data/fonts/sudo/default.nix b/pkgs/data/fonts/sudo/default.nix
index f21fdb18416..a1c96e7da15 100644
--- a/pkgs/data/fonts/sudo/default.nix
+++ b/pkgs/data/fonts/sudo/default.nix
@@ -1,21 +1,20 @@
 { lib, fetchzip }:
 
 let
-  version = "0.52";
+  version = "0.53.1";
 in fetchzip {
   name = "sudo-font-${version}";
-  url = "https://github.com/jenskutilek/sudo-font/releases/download/v${version}/sudo.zip";
-  sha256 = "1j5p7apclyy5gfj2kklmgcncdsp5iik4gd6mdl29anzijknd0kja";
+  url = "https://github.com/jenskutilek/sudo-font/raw/v${version}/dist/sudo.zip";
+  sha256 = "1jil43j9ngz4422m76x67bafvxz75rncqqi57xd7fdxgcff7i8dp";
 
   postFetch = ''
     mkdir -p $out/share/fonts/
     unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype/
-    unzip -j $downloadedFile \*.woff -d $out/share/fonts/woff/
-    unzip -j $downloadedFile \*.woff2 -d $out/share/fonts/woff2/
   '';
   meta = with lib; {
     description = "Font for programmers and command line users";
     homepage = "https://www.kutilek.de/sudo-font/";
+    changelog = "https://github.com/jenskutilek/sudo-font/raw/v${version}/sudo/FONTLOG.txt";
     license = licenses.ofl;
     maintainers = with maintainers; [ dtzWill ];
     platforms = platforms.all;
diff --git a/pkgs/data/themes/matcha/default.nix b/pkgs/data/themes/matcha/default.nix
index eaad095d64b..bfede60c2f7 100644
--- a/pkgs/data/themes/matcha/default.nix
+++ b/pkgs/data/themes/matcha/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "matcha-gtk-theme";
-  version = "2021-04-09";
+  version = "2021-05-20";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "1989v2924g1pwycp44zlgryr73p82n9hmf71d0acs455jajf0pvv";
+    sha256 = "0jx55dn9j0395ws7507mj8px4yq4jlmms6xr9jlhp0qxnr4y1smd";
   };
 
   buildInputs = [ gdk-pixbuf librsvg ];
diff --git a/pkgs/data/themes/zuki/default.nix b/pkgs/data/themes/zuki/default.nix
index 217ca6c59cb..098edf6cc2e 100644
--- a/pkgs/data/themes/zuki/default.nix
+++ b/pkgs/data/themes/zuki/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zuki-themes";
-  version = "3.36-4";
+  version = "3.38-1";
 
   src = fetchFromGitHub {
     owner = "lassekongo83";
     repo = pname;
     rev = "v${version}";
-    sha256 = "14r8dhfycpmwp2nj6vj0b2cwaaphc9sxbzglc4sr4q566whrhbgd";
+    sha256 = "0890i8kavgnrhm8ic4zpl16wc4ngpnf1zi8js9gvki2cl7dlj1xm";
   };
 
   nativeBuildInputs = [ meson ninja sassc ];
diff --git a/pkgs/desktops/cinnamon/cinnamon-common/default.nix b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
index a5800b01a30..5fdfc0db1d6 100644
--- a/pkgs/desktops/cinnamon/cinnamon-common/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
@@ -6,6 +6,7 @@
 , cinnamon-desktop
 , cinnamon-menus
 , cinnamon-session
+, cinnamon-translations
 , cjs
 , fetchFromGitHub
 , gdk-pixbuf
@@ -115,7 +116,10 @@ stdenv.mkDerivation rec {
     gtk-doc
   ];
 
-  configureFlags = [ "--disable-static" "--with-ca-certificates=${cacert}/etc/ssl/certs/ca-bundle.crt" "--with-libxml=${libxml2.dev}/include/libxml2" "--enable-gtk-doc=no" ];
+  # use locales from cinnamon-translations (not using --localedir because datadir is used)
+  postInstall = ''
+    ln -s ${cinnamon-translations}/share/locale $out/share/locale
+  '';
 
   postPatch = ''
     find . -type f -exec sed -i \
diff --git a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
index 4208b92ae2d..94080e3e47a 100644
--- a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
@@ -28,6 +28,7 @@
 , gdk-pixbuf
 , meson
 , ninja
+, cinnamon-translations
 }:
 
 stdenv.mkDerivation rec {
@@ -83,7 +84,10 @@ stdenv.mkDerivation rec {
   '';
 
   mesonFlags = [
+    # TODO: https://github.com/NixOS/nixpkgs/issues/36468
     "-Dc_args=-I${glib.dev}/include/gio-unix-2.0"
+    # use locales from cinnamon-translations
+    "--localedir=${cinnamon-translations}/share/locale"
   ];
 
   preInstall = ''
diff --git a/pkgs/desktops/cinnamon/cinnamon-session/default.nix b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
index ba20bce4100..3f1ceb2dc61 100644
--- a/pkgs/desktops/cinnamon/cinnamon-session/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
@@ -1,6 +1,7 @@
 { fetchFromGitHub
 , cinnamon-desktop
 , cinnamon-settings-daemon
+, cinnamon-translations
 , dbus-glib
 , docbook_xsl
 , docbook_xml_dtd_412
@@ -80,8 +81,14 @@ stdenv.mkDerivation rec {
     xmlto
   ];
 
-  # TODO: https://github.com/NixOS/nixpkgs/issues/36468
-  mesonFlags = [ "-Dc_args=-I${glib.dev}/include/gio-unix-2.0" "-Dgconf=false" "-DENABLE_IPV6=true" ];
+  mesonFlags = [
+    # TODO: https://github.com/NixOS/nixpkgs/issues/36468
+    "-Dc_args=-I${glib.dev}/include/gio-unix-2.0"
+    "-Dgconf=false"
+    "-DENABLE_IPV6=true"
+    # use locales from cinnamon-translations
+    "--localedir=${cinnamon-translations}/share/locale"
+  ];
 
   postPatch = ''
     chmod +x data/meson_install_schemas.py # patchShebangs requires executable file
diff --git a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
index 3df8760c858..69b08fc64ed 100644
--- a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
@@ -1,5 +1,6 @@
 { fetchFromGitHub
 , cinnamon-desktop
+, cinnamon-translations
 , colord
 , glib
 , gsettings-desktop-schemas
@@ -104,6 +105,11 @@ stdenv.mkDerivation rec {
     sed "s|/usr/share/zoneinfo|${tzdata}/share/zoneinfo|g" -i plugins/datetime/system-timezone.h
   '';
 
+  # use locales from cinnamon-translations (not using --localedir because datadir is used)
+  postInstall = ''
+    ln -s ${cinnamon-translations}/share/locale $out/share/locale
+  '';
+
   # So the polkit policy can reference /run/current-system/sw/bin/cinnamon-settings-daemon/csd-backlight-helper
   postFixup = ''
     mkdir -p $out/bin/cinnamon-settings-daemon
diff --git a/pkgs/desktops/cinnamon/nemo/default.nix b/pkgs/desktops/cinnamon/nemo/default.nix
index 482fb402e4d..806ca5d664e 100644
--- a/pkgs/desktops/cinnamon/nemo/default.nix
+++ b/pkgs/desktops/cinnamon/nemo/default.nix
@@ -16,6 +16,7 @@
 , exempi
 , intltool
 , shared-mime-info
+, cinnamon-translations
 }:
 
 stdenv.mkDerivation rec {
@@ -57,6 +58,8 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     # TODO: https://github.com/NixOS/nixpkgs/issues/36468
     "-Dc_args=-I${glib.dev}/include/gio-unix-2.0"
+    # use locales from cinnamon-translations
+    "--localedir=${cinnamon-translations}/share/locale"
   ];
 
   meta = with lib; {
diff --git a/pkgs/desktops/gnome/games/quadrapassel/default.nix b/pkgs/desktops/gnome/games/quadrapassel/default.nix
index d54c49eafee..c3724ef5105 100644
--- a/pkgs/desktops/gnome/games/quadrapassel/default.nix
+++ b/pkgs/desktops/gnome/games/quadrapassel/default.nix
@@ -1,26 +1,59 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk3, gnome, gdk-pixbuf
-, librsvg, gsound, libmanette
-, gettext, itstool, libxml2, clutter, clutter-gtk, wrapGAppsHook
-, meson, ninja, python3, vala, desktop-file-utils
+{
+  stdenv,
+  lib,
+  fetchurl,
+  pkg-config,
+  gtk3,
+  gnome,
+  gdk-pixbuf,
+  librsvg,
+  gsound,
+  libmanette,
+  gettext,
+  itstool,
+  libxml2,
+  clutter,
+  clutter-gtk,
+  wrapGAppsHook,
+  meson,
+  ninja,
+  python3,
+  vala,
+  desktop-file-utils,
 }:
 
 stdenv.mkDerivation rec {
   pname = "quadrapassel";
-  version = "3.38.1";
+  version = "40.1";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "033plabc6q3sk6qjr5nml8z6p07vcw57gxddxjk9b65wgg0rzzhr";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "1d59sxmmmhi611hvr5jmsm276j9w20hc5yq4rk0s4d3svadyap79";
   };
 
   nativeBuildInputs = [
-    meson ninja python3 vala desktop-file-utils
-    pkg-config gnome.adwaita-icon-theme
-    libxml2 itstool gettext wrapGAppsHook
+    meson
+    ninja
+    python3
+    vala
+    desktop-file-utils
+    pkg-config
+    gnome.adwaita-icon-theme
+    libxml2
+    itstool
+    gettext
+    wrapGAppsHook
   ];
+
   buildInputs = [
-    gtk3 gdk-pixbuf librsvg libmanette
-    gsound clutter libxml2 clutter-gtk
+    gtk3
+    gdk-pixbuf
+    librsvg
+    libmanette
+    gsound
+    clutter
+    libxml2
+    clutter-gtk
   ];
 
   passthru = {
@@ -33,7 +66,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Classic falling-block game, Tetris";
     homepage = "https://wiki.gnome.org/Apps/Quadrapassel";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
diff --git a/pkgs/desktops/gnome/games/tali/default.nix b/pkgs/desktops/gnome/games/tali/default.nix
index 3e2abc87304..0212aebd8c5 100644
--- a/pkgs/desktops/gnome/games/tali/default.nix
+++ b/pkgs/desktops/gnome/games/tali/default.nix
@@ -1,38 +1,69 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk3, gnome, gdk-pixbuf
-, librsvg, libgnome-games-support, gettext, itstool, libxml2, wrapGAppsHook
-, meson, ninja, python3, desktop-file-utils
+{
+  lib,
+  stdenv,
+  fetchurl,
+  pkg-config,
+  gtk3,
+  gnome,
+  gdk-pixbuf,
+  librsvg,
+  libgnome-games-support,
+  gettext,
+  itstool,
+  libxml2,
+  wrapGAppsHook,
+  meson,
+  ninja,
+  python3,
+  desktop-file-utils,
 }:
 
 stdenv.mkDerivation rec {
   pname = "tali";
-  version = "40.0";
+  version = "40.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/tali/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "19gic6yjg3bg6jf87zvhm7ihsz1y58dz86p4x3a16xdhjyrk40q2";
-  };
-
-  passthru = {
-    updateScript = gnome.updateScript { packageName = "tali"; attrPath = "gnome.tali"; };
+    sha256 = "1xhp30c70bi8p4sm6v8zmxi1p55fs56dqgfbhfnsda5g1cxwir7h";
   };
 
   nativeBuildInputs = [
-    meson ninja python3 desktop-file-utils
-    pkg-config gnome.adwaita-icon-theme
-    libxml2 itstool gettext wrapGAppsHook
+    meson
+    ninja
+    python3
+    desktop-file-utils
+    pkg-config
+    gnome.adwaita-icon-theme
+    libxml2
+    itstool
+    gettext
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gtk3
+    gdk-pixbuf
+    librsvg
+    libgnome-games-support
   ];
-  buildInputs = [ gtk3 gdk-pixbuf librsvg libgnome-games-support ];
 
   postPatch = ''
     chmod +x build-aux/meson_post_install.py
     patchShebangs build-aux/meson_post_install.py
   '';
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "gnome.${pname}";
+    };
+  };
+
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Tali";
     description = "Sort of poker with dice and less money";
     maintainers = teams.gnome.members;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 5f13418aa58..328ed715bae 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -73,13 +73,14 @@ with pkgs;
           optionalExtensions = cond: as: if cond then as else [];
           python2Extension = import ../../../top-level/python2-packages.nix;
           extensions = lib.composeManyExtensions ((optionalExtensions (!self.isPy3k) [python2Extension]) ++ [ overrides ]);
+          aliases = self: super: lib.optionalAttrs (config.allowAliases or true) (import ../../../top-level/python-aliases.nix lib self super);
         in lib.makeScopeWithSplicing
           pkgs.splicePackages
           pkgs.newScope
           otherSplices
           keep
           extra
-          (lib.extends extensions pythonPackagesFun))
+          (lib.extends (lib.composeExtensions aliases extensions) pythonPackagesFun))
         {
           overrides = packageOverrides;
         };
diff --git a/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch b/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch
new file mode 100644
index 00000000000..c18420711b9
--- /dev/null
+++ b/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch
@@ -0,0 +1,15 @@
+diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
+index 1a80b5b..1fa57a7 100644
+--- a/CMake/AbseilHelpers.cmake
++++ b/CMake/AbseilHelpers.cmake
+@@ -171,8 +171,8 @@ function(absl_cc_library)
+       FILE(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/lib/pkgconfig/absl_${_NAME}.pc" CONTENT "\
+ prefix=${CMAKE_INSTALL_PREFIX}\n\
+ exec_prefix=\${prefix}\n\
+-libdir=\${prefix}/${CMAKE_INSTALL_LIBDIR}\n\
+-includedir=\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}\n\
++libdir=${CMAKE_INSTALL_FULL_LIBDIR}\n\
++includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR}\n\
+ \n\
+ Name: absl_${_NAME}\n\
+ Description: Abseil ${_NAME} library\n\
diff --git a/pkgs/development/libraries/abseil-cpp/default.nix b/pkgs/development/libraries/abseil-cpp/default.nix
index 0813a965524..a1610ce8262 100644
--- a/pkgs/development/libraries/abseil-cpp/default.nix
+++ b/pkgs/development/libraries/abseil-cpp/default.nix
@@ -1,16 +1,25 @@
-{ lib, stdenv, fetchFromGitHub, cmake, static ? stdenv.hostPlatform.isStatic }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, static ? stdenv.hostPlatform.isStatic }:
 
 stdenv.mkDerivation rec {
   pname = "abseil-cpp";
-  version = "20200923.3";
+  version = "20210324.1";
 
   src = fetchFromGitHub {
     owner = "abseil";
     repo = "abseil-cpp";
     rev = version;
-    sha256 = "1p4djhm1f011ficbjjxx3n8428p8481p20j4glpaawnpsi362hkl";
+    sha256 = "16w63brfwgiayiyhvawsnr14xyy5hpp68k8fj0z6yk0bjzw6jvjw";
   };
 
+  patches = [
+    # Use CMAKE_INSTALL_FULL_{LIBDIR,INCLUDEDIR}
+    # https://github.com/abseil/abseil-cpp/pull/963
+    (fetchpatch {
+      url = "https://github.com/abseil/abseil-cpp/commit/5bfa70c75e621c5d5ec095c8c4c0c050dcb2957e.patch";
+      sha256 = "0nhjxqfxpi2pkfinnqvd5m4npf9l1kg39mjx9l3087ajhadaywl5";
+    })
+  ];
+
   cmakeFlags = [
     "-DCMAKE_CXX_STANDARD=17"
     "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
diff --git a/pkgs/development/libraries/cairomm/1.16.nix b/pkgs/development/libraries/cairomm/1.16.nix
index 2e936607e8e..df9b8572ad0 100644
--- a/pkgs/development/libraries/cairomm/1.16.nix
+++ b/pkgs/development/libraries/cairomm/1.16.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cairomm";
-  version = "1.16.0";
+  version = "1.16.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://www.cairographics.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "1ya4y7qa000cjawqwswbqv26y5icfkmhs5iiiil4dxgrqn91923y";
+    sha256 = "sha256-b2Bg2OmN1Lis/uIpX92904z0h8B8JqrY0ag7ub/0osY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/cereal/default.nix b/pkgs/development/libraries/cereal/default.nix
index d2321175f8b..958a92dec34 100644
--- a/pkgs/development/libraries/cereal/default.nix
+++ b/pkgs/development/libraries/cereal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
 stdenv.mkDerivation rec {
   pname = "cereal";
   version = "1.3.0";
@@ -12,7 +12,19 @@ stdenv.mkDerivation rec {
     sha256 = "0hc8wh9dwpc1w1zf5lfss4vg5hmgpblqxbrpp1rggicpx9ar831p";
   };
 
-  cmakeFlagsArray = [ "-DJUST_INSTALL_CEREAL=yes" ];
+  patches = [
+    # https://nvd.nist.gov/vuln/detail/CVE-2020-11105
+    # serialized std::shared_ptr variables cannot always be expected to
+    # serialize back into their original values. This can have any number of
+    # consequences, depending on the context within which this manifests.
+    (fetchpatch {
+      name = "CVE-2020-11105.patch";
+      url = "https://github.com/USCiLab/cereal/commit/f27c12d491955c94583512603bf32c4568f20929.patch";
+      sha256 = "CIkbJ7bAN0MXBhTXQdoQKXUmY60/wQvsdn99FaWt31w=";
+    })
+  ];
+
+  cmakeFlags = [ "-DJUST_INSTALL_CEREAL=yes" ];
 
   meta = with lib; {
     description = "A header-only C++11 serialization library";
diff --git a/pkgs/development/libraries/glibmm/2.68.nix b/pkgs/development/libraries/glibmm/2.68.nix
index 660e3b3b9bd..db713cf9ea5 100644
--- a/pkgs/development/libraries/glibmm/2.68.nix
+++ b/pkgs/development/libraries/glibmm/2.68.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "glibmm";
-  version = "2.68.0";
+  version = "2.68.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-wfOFcxkdzu2FoFYAiIz0z0aVlB8zlxW9Z9UcJBb083U=";
+    sha256 = "sha256-ZmTifJqcyoHCnjVof0ny4NFzovyemMNCgxH3B9tTL4w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/liblinphone/default.nix b/pkgs/development/libraries/liblinphone/default.nix
index b19b6189f2d..8a38aa36c09 100644
--- a/pkgs/development/libraries/liblinphone/default.nix
+++ b/pkgs/development/libraries/liblinphone/default.nix
@@ -46,7 +46,7 @@
 
 stdenv.mkDerivation rec {
   pname = "liblinphone";
-  version = "4.5.15";
+  version = "4.5.17";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-lDj2OkWuodPHpvoJ5W2GivzVIeMnprb42kAnJKfKtdg=";
+    sha256 = "sha256-ryyT4bG3lnE72ydvCAoiT3IeHY4mZwX9nCqaTRC1wyc=";
   };
 
   # Do not build static libraries
diff --git a/pkgs/development/libraries/science/math/or-tools/default.nix b/pkgs/development/libraries/science/math/or-tools/default.nix
index 2b6eb5705cd..741c6f4898b 100644
--- a/pkgs/development/libraries/science/math/or-tools/default.nix
+++ b/pkgs/development/libraries/science/math/or-tools/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , abseil-cpp
 , bzip2
@@ -17,25 +16,16 @@
 
 stdenv.mkDerivation rec {
   pname = "or-tools";
-  version = "8.1";
+  version = "9.0";
   disabled = python.pythonOlder "3.6";  # not supported upstream
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "or-tools";
     rev = "v${version}";
-    sha256 = "1zqgvkaw5vf2d8pwsa34g9jysbpiwplzxc8jyy8kdbzmj8ax3gpg";
+    sha256 = "0yihrsg8wj4b82xwg1hbn97my8zqd7xhw7dk7wm2axsyvqd6m3b3";
   };
 
-  patches = [
-    # This patch (on master as of Feb 11, 2021) fixes or-tools failing to respect
-    # USE_SCIP=OFF and then failing to find scip/scip.h
-    (fetchpatch {
-      url = "https://github.com/google/or-tools/commit/17321869832b5adaccd9864e7e5576122730a5d5.patch";
-      sha256 = "0bi2z1hqlpdm1if3xa5dzc2zv0qlm5xi2x979brx10f8k779ghn0";
-    })
-  ];
-
   # The original build system uses cmake which does things like pull
   # in dependencies through git and Makefile creation time. We
   # obviously don't want to do this so instead we provide the
diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix
index 82a86404ca5..e4f623686a9 100644
--- a/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/pkgs/development/lisp-modules/lisp-packages.nix
@@ -124,8 +124,7 @@ let lispPackages = rec {
   };
   nyxt = pkgs.lispPackages.buildLispPackage rec {
     baseName = "nyxt";
-    version = "2021-05-06";
-
+    version = "2.0.0";
 
     description = "Browser";
 
@@ -194,10 +193,8 @@ let lispPackages = rec {
     src = pkgs.fetchFromGitHub {
       owner = "atlas-engineer";
       repo = "nyxt";
-      rev = "940a5f9a19770771cf29f8fa7505e99c3a242b67";
-      sha256 = "sha256:0d5mawka26gwi9nb45x1n33vgskwyn46jrvfz7nzmm2jfaq4ipn6";
-      # Version 2 pre-release 7
-      # date = "2021-05-06T11:30:27Z";
+      rev = "${version}";
+      sha256 = "sha256-eSRNfzkAzGTorLjdHo1LQEKLx4ASdv3RGXIFZ5WFIXk=";
     };
 
     packageName = "nyxt";
diff --git a/pkgs/development/python-modules/aiohomekit/default.nix b/pkgs/development/python-modules/aiohomekit/default.nix
index f9afbe22c91..2d76d033231 100644
--- a/pkgs/development/python-modules/aiohomekit/default.nix
+++ b/pkgs/development/python-modules/aiohomekit/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "aiohomekit";
-  version = "0.2.61";
+  version = "0.2.62";
   format = "pyproject";
   disabled = pythonAtLeast "3.9";
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Jc2k";
     repo = pname;
     rev = version;
-    sha256 = "047ql5a4i4354jgr8xr2waim8j522z58vbfi7aa62jqc9l8jzxzk";
+    sha256 = "sha256-01IzeR0iukPTkz8I7h93wZkgjz6flRAJN8unEX6d+cs=";
   };
 
   nativeBuildInputs = [ poetry ];
diff --git a/pkgs/development/python-modules/azure-core/default.nix b/pkgs/development/python-modules/azure-core/default.nix
index a63f33d7421..e5394a616e8 100644
--- a/pkgs/development/python-modules/azure-core/default.nix
+++ b/pkgs/development/python-modules/azure-core/default.nix
@@ -14,14 +14,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.13.0";
+  version = "1.14.0";
   pname = "azure-core";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "624b46db407dbed9e03134ab65214efab5b5315949a1fbd6cd592c46fb272588";
+    sha256 = "f32bb64aabe61f496255c16dd6c555a027da628109460bf27311cee0caf78f96";
   };
 
   propagatedBuildInputs = [
@@ -45,8 +45,13 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "tests/" ];
   # disable tests which touch network
   disabledTests = [ "aiohttp" "multipart_send" "response" "request" "timeout" ];
-  # requires testing modules which aren't published, and likely to create cyclic dependencies
-  disabledTestPaths = [ "tests/test_connection_string_parsing.py" ];
+  disabledTestPaths = [
+    # requires testing modules which aren't published, and likely to create cyclic dependencies
+    "tests/test_connection_string_parsing.py"
+    # wants network
+    "tests/async_tests/test_streaming_async.py"
+    "tests/test_streaming.py"
+  ];
 
   meta = with lib; {
     description = "Microsoft Azure Core Library for Python";
diff --git a/pkgs/development/python-modules/azure-eventgrid/default.nix b/pkgs/development/python-modules/azure-eventgrid/default.nix
index e33f89c5a64..f83040a4b3c 100644
--- a/pkgs/development/python-modules/azure-eventgrid/default.nix
+++ b/pkgs/development/python-modules/azure-eventgrid/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "azure-eventgrid";
-  version = "4.1.1";
+  version = "4.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c3bd28ccf6c837b58b58fc61275dace5348a823660c3ca21166a88aa2a8377a4";
+    sha256 = "77af2c20abde7d8342da7993781605b440aeac0f95c4af13bb87465c3bd5fe35";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-identity/default.nix b/pkgs/development/python-modules/azure-identity/default.nix
index a0120ae3506..10c455ce072 100644
--- a/pkgs/development/python-modules/azure-identity/default.nix
+++ b/pkgs/development/python-modules/azure-identity/default.nix
@@ -17,12 +17,12 @@
 
 buildPythonPackage rec {
   pname = "azure-identity";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "872adfa760b2efdd62595659b283deba92d47b7a67557eb9ff48f0b5d04ee396";
+    sha256 = "2e70b00874e4f288e37804bc06bfaf216de8565c759594bf79cccfbf9ca2c78a";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-billing/default.nix b/pkgs/development/python-modules/azure-mgmt-billing/default.nix
index d1cb009355d..91ec3c069c8 100644
--- a/pkgs/development/python-modules/azure-mgmt-billing/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-billing/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , python
 , isPy3k
@@ -10,17 +11,18 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-billing";
-  version = "1.0.0"; #pypi's 0.2.0 doesn't build ootb
+  version = "6.0.0"; #pypi's 0.2.0 doesn't build ootb
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8b55064546c8e94839d9f8c98e9ea4b021004b3804e192bf39fa65b603536ad0";
+    sha256 = "d4f5c5a4188a456fe1eb32b6c45f55ca2069c74be41eb76921840b39f2f5c07f";
     extension = "zip";
   };
 
   propagatedBuildInputs = [
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/pkgs/development/python-modules/azure-mgmt-botservice/default.nix b/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
index ead8dbd3f01..69dff020c8e 100644
--- a/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "0.3.0";
+  version = "1.0.0";
   pname = "azure-mgmt-botservice";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f8318878a66a0685a01bf27b7d1409c44eb90eb72b0a616c1a2455c72330f2f1";
+    sha256 = "9dae4d749a2a072e22703318ea36e379aec20876c553b2889037c7bdec4b9546";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix b/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
index 46890f7ab5b..1531a4e0758 100644
--- a/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cosmosdb";
-  version = "6.2.0";
+  version = "6.3.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "116b5bf9433ad89078c743b617c5b1c51f9ce1a1f128fb2e4bbafb5efb2d2c74";
+    sha256 = "4135104da5b0f3f0a7249abcd8da55936603e50aaaf2868e5f739a717cf20b3d";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix b/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
index f6be961060e..c8f15f5960c 100644
--- a/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "0.2.0";
+  version = "1.0.0";
   pname = "azure-mgmt-deploymentmanager";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0c6pyr36n9snx879vas5r6l25db6nlp2z96xn759mz4kg4i45qs6";
+    sha256 = "9badb768617209149c33e68ca2e59c35b1d3d11427e2969872f2e236e14eee78";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-iothub/default.nix b/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
index c51d43ec444..f4e1534a61d 100644
--- a/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-iothub";
-  version = "1.0.0";
+  version = "2.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7acf24088395a299974dd26406db2686d8d59a3fffbe47c24617b36d445f2de8";
+    sha256 = "653a765f0beb6af0c9ecbd290b4101e1b5e0f6450405faf28ab8234c15d8b38b";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix b/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
index f14aa34c323..5a93d3d0df1 100644
--- a/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-loganalytics";
-  version = "9.0.0";
+  version = "10.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c0b702753c0774a25bcb49b967573b0ec2bef5262c24bc371c219a750ba3c4fd";
+    sha256 = "29330984d0f084dff26cea239d7b733c1a26844da85d33bf3bb53b515ce0bc23";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-maps/default.nix b/pkgs/development/python-modules/azure-mgmt-maps/default.nix
index 69ed75dda30..8a62fafaea1 100644
--- a/pkgs/development/python-modules/azure-mgmt-maps/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-maps/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-maps";
-  version = "1.0.0";
+  version = "2.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "dafbe23bdbe9c01f88ce91c5b8587eefc73ac2d637ebcdc59ded6d332932e3ab";
+    sha256 = "384e17f76a68b700a4f988478945c3a9721711c0400725afdfcb63cf84e85f0e";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-network/default.nix b/pkgs/development/python-modules/azure-mgmt-network/default.nix
index f70c8420c82..792501b24e7 100644
--- a/pkgs/development/python-modules/azure-mgmt-network/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-network/default.nix
@@ -10,14 +10,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "18.0.0";
+  version = "19.0.0";
   pname = "azure-mgmt-network";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "85fdeb7a1a8d89be9b585396796b218b31b681590d57d82d3ea14cf1f2d20b4a";
+    sha256 = "5e39a26ae81fa58c13c02029700f8c7b22c3fd832a294c543e3156a91b9459e8";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix b/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
index 323aa26472c..1ba00e86173 100644
--- a/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
@@ -5,24 +5,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , isPy27
 }:
 
 buildPythonPackage rec {
-  version = "0.1.0";
+  version = "1.0.0";
   pname = "azure-mgmt-redhatopenshift";
   disabled = isPy27; # don't feel like fixing namespace issues on python2
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1g65lbia1i1jw6qkyjz2ldyl3p90rbr78l8kfryg70sj7z3gnnjn";
+    sha256 = "94cd41f1ebd82e40620fd3e6d88f666b5c19ac7cf8b4e8edadb9721bd7c80980";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ];
 
   pythonNamespaces = "azure.mgmt";
diff --git a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
index 76ef894b96a..7e08b16166d 100644
--- a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
@@ -4,24 +4,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-reservations";
-  version = "0.9.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1dc97f48f3edb67116da8604ab76ef93233319f56455532be307f323e9ebf0e6";
+    sha256 = "880df54fdf3869ee6b142d4fc7a3fce518c850523c42cc895b7fb8359956554e";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/pkgs/development/python-modules/azure-mgmt-resource/default.nix b/pkgs/development/python-modules/azure-mgmt-resource/default.nix
index 447b377715d..9ea6acbe8da 100644
--- a/pkgs/development/python-modules/azure-mgmt-resource/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-resource/default.nix
@@ -8,14 +8,14 @@
 
 
 buildPythonPackage rec {
-  version = "16.1.0";
+  version = "18.0.0";
   pname = "azure-mgmt-resource";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "b814ee27b37f030fe69461ef6f514661340dc8b1f28736362541e1c0d31d90ae";
+    sha256 = "551036e592f409ef477d30937ea7cc4dda5126576965d9c816fdb8401bbd774c";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-sql/default.nix b/pkgs/development/python-modules/azure-mgmt-sql/default.nix
index 60c1022e603..e41e13f2b58 100644
--- a/pkgs/development/python-modules/azure-mgmt-sql/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-sql/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-sql";
-  version = "1.0.0";
+  version = "2.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c7904f8798fbb285a2160c41c8bd7a416c6bd987f5d36a9b98c16f41e24e9f47";
+    sha256 = "191accd6e5b47f93a10cebb94e2ca5086f0b6f4afd0290b8596206cd4acb0d5c";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-storage/default.nix b/pkgs/development/python-modules/azure-mgmt-storage/default.nix
index 6789a7512a6..86c5005c876 100644
--- a/pkgs/development/python-modules/azure-mgmt-storage/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-storage/default.nix
@@ -8,14 +8,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "17.1.0";
+  version = "18.0.0";
   pname = "azure-mgmt-storage";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "01acb8e988c8082174fa952e1638d700146185644fbe4b126e65843e63d44600";
+    sha256 = "d17beb34273797fa89863632ff0e1eb9b6a55198abb8c7f05d84980762e5f71f";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-servicebus/default.nix b/pkgs/development/python-modules/azure-servicebus/default.nix
index 899c952b357..d89def355f9 100644
--- a/pkgs/development/python-modules/azure-servicebus/default.nix
+++ b/pkgs/development/python-modules/azure-servicebus/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-servicebus";
-  version = "7.1.1";
+  version = "7.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "58797defe666dd17ae11a8895395e7e844f11d2076ba4a9ce63682ac02f665d9";
+    sha256 = "919e81d6d9e6e098dbb7abf51d90282a73c0071846b104e70488417cd5d07863";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-synapse-artifacts/default.nix b/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
index f17c3e5f6bc..f9c78b6116f 100644
--- a/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
+++ b/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "azure-synapse-artifacts";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "ec113d37386b8787862baaf9da0318364a008004a377d20fdfca31cfe8d16210";
+    sha256 = "2a538d617dc5d2d167716226d0a24e416324efb35ef22b223e0d9fb6b9889a72";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/debugpy/default.nix b/pkgs/development/python-modules/debugpy/default.nix
index 37717f76f33..059f2110fd5 100644
--- a/pkgs/development/python-modules/debugpy/default.nix
+++ b/pkgs/development/python-modules/debugpy/default.nix
@@ -94,7 +94,7 @@ buildPythonPackage rec {
     description = "An implementation of the Debug Adapter Protocol for Python";
     homepage = "https://github.com/microsoft/debugpy";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "i686-darwin" ];
   };
 }
diff --git a/pkgs/development/python-modules/flufl/lock.nix b/pkgs/development/python-modules/flufl/lock.nix
index b44a7f3cdfe..ce2ead246f9 100644
--- a/pkgs/development/python-modules/flufl/lock.nix
+++ b/pkgs/development/python-modules/flufl/lock.nix
@@ -14,6 +14,11 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ atpublic psutil ];
   checkInputs = [ pytestCheckHook pytestcov sybil ];
 
+  # disable code coverage checks for all OS. Upstream does not enforce these
+  # checks on Darwin, and code coverage cannot be improved downstream nor is it
+  # relevant to the user.
+  pytestFlagsArray = [ "--no-cov" ];
+
   meta = with lib; {
     homepage = "https://flufllock.readthedocs.io/";
     description = "NFS-safe file locking with timeouts for POSIX and Windows";
diff --git a/pkgs/development/python-modules/gensim/default.nix b/pkgs/development/python-modules/gensim/default.nix
index b6b6f42b3c3..b29822a507c 100644
--- a/pkgs/development/python-modules/gensim/default.nix
+++ b/pkgs/development/python-modules/gensim/default.nix
@@ -4,7 +4,7 @@
 , numpy
 , six
 , scipy
-, smart_open
+, smart-open
 , scikit-learn, testfixtures, unittest2
 , isPy3k
 }:
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "0rx37vnjspjl45v7bj123xwsjfgbwv91v8zpqpli8lgpf42xnskq";
   };
 
-  propagatedBuildInputs = [ smart_open numpy six scipy ];
+  propagatedBuildInputs = [ smart-open numpy six scipy ];
 
   checkInputs = [ scikit-learn testfixtures unittest2 ];
 
diff --git a/pkgs/development/python-modules/jupyter_server/default.nix b/pkgs/development/python-modules/jupyter_server/default.nix
index 50f193c2058..e444b2ea3c0 100644
--- a/pkgs/development/python-modules/jupyter_server/default.nix
+++ b/pkgs/development/python-modules/jupyter_server/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
@@ -71,6 +72,9 @@ buildPythonPackage rec {
     "test_list_formats"
     "test_base_url"
     "test_culling"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # attempts to use trashcan, build env doesn't allow this
+    "test_delete"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pathy/default.nix b/pkgs/development/python-modules/pathy/default.nix
index 714e6945df5..d656a752cf5 100644
--- a/pkgs/development/python-modules/pathy/default.nix
+++ b/pkgs/development/python-modules/pathy/default.nix
@@ -4,7 +4,7 @@
 , pytestCheckHook
 , typer
 , dataclasses
-, smart_open
+, smart-open
 , pytest
 , mock
 , google-cloud-storage
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "sha256-nb8my/5rkc7thuHnXZHe1Hg8j+sLBlYyJcLHWrrKZ5M=";
   };
 
-  propagatedBuildInputs = [ smart_open typer google-cloud-storage ];
+  propagatedBuildInputs = [ smart-open typer google-cloud-storage ];
 
   postPatch = ''
     substituteInPlace requirements.txt \
diff --git a/pkgs/development/python-modules/pygls/default.nix b/pkgs/development/python-modules/pygls/default.nix
index edd5d9bc310..1d08de404f0 100644
--- a/pkgs/development/python-modules/pygls/default.nix
+++ b/pkgs/development/python-modules/pygls/default.nix
@@ -25,6 +25,6 @@ buildPythonPackage rec {
     description = "Pythonic generic implementation of the Language Server Protocol";
     homepage = "https://github.com/openlawlibrary/pygls";
     license = licenses.asl20;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/development/python-modules/pymumble/default.nix b/pkgs/development/python-modules/pymumble/default.nix
index 45c193899fe..d708f5f229b 100644
--- a/pkgs/development/python-modules/pymumble/default.nix
+++ b/pkgs/development/python-modules/pymumble/default.nix
@@ -11,23 +11,15 @@
 
 buildPythonPackage rec {
   pname = "pymumble";
-  version = "1.6";
+  version = "1.6.1";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "azlux";
     repo = "pymumble";
     rev = version;
-    sha256 = "04nc66d554a98mbmdgzgsg6ncaz0jsn4zdr3mr14w6wnhrxpjkrs";
+    sha256 = "1qbsd2zvwd9ksclgiyrl1z79ms0zximm4527mnmhvq36lykgki7s";
   };
-  patches = [
-    # Compatibility with pycryptodome (which is what our pycrypto really is)
-    # See https://github.com/azlux/pymumble/pull/99
-    (fetchpatch {
-      url = "https://github.com/azlux/pymumble/pull/99/commits/b85548a0e1deaac820954b1c0b308af214311a14.patch";
-      sha256 = "0w9dpc87rny6vmhi634pih1p97b67jm26qajscpa9wp6nphdlxlj";
-    })
-  ];
 
   postPatch = ''
     # Changes all `library==x.y.z` statements to just `library`
@@ -35,11 +27,20 @@ buildPythonPackage rec {
     sed -i 's/\(.*\)==.*/\1/' requirements.txt
   '';
 
-  propagatedBuildInputs = [ opuslib protobuf ];
+  propagatedBuildInputs = [
+    opuslib
+    protobuf
+  ];
 
-  checkInputs = [ pytestCheckHook pycrypto ];
+  checkInputs = [
+    pycrypto
+    pytestCheckHook
+  ];
 
-  pythonImportsCheck = [ "pymumble_py3" ];
+  pythonImportsCheck = [
+    "pymumble_py3"
+    "pymumble_py3.constants"
+  ];
 
   meta = with lib; {
     description = "Python 3 version of pymumble, Mumble library used for multiple uses like making mumble bot.";
diff --git a/pkgs/development/python-modules/pytest-datadir/default.nix b/pkgs/development/python-modules/pytest-datadir/default.nix
index 1dc218c0808..6acdecf5d88 100644
--- a/pkgs/development/python-modules/pytest-datadir/default.nix
+++ b/pkgs/development/python-modules/pytest-datadir/default.nix
@@ -27,6 +27,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/gabrielcnr/pytest-datadir";
     description = "pytest plugin for manipulating test data directories and files";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix
index 618dfef4171..c9fbedbbfd4 100644
--- a/pkgs/development/python-modules/pyvex/default.nix
+++ b/pkgs/development/python-modules/pyvex/default.nix
@@ -18,6 +18,10 @@ buildPythonPackage rec {
     sha256 = "sha256-cWQdrGKJyGieBow3TiMj/uB2crIF32Kvl5tVUKg/z+E=";
   };
 
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace vex/Makefile-gcc --replace '/usr/bin/ar' 'ar'
+  '';
+
   propagatedBuildInputs = [
     archinfo
     bitstring
diff --git a/pkgs/development/python-modules/smart_open/default.nix b/pkgs/development/python-modules/smart-open/default.nix
index 4f3423b7df3..051d6c97397 100644
--- a/pkgs/development/python-modules/smart_open/default.nix
+++ b/pkgs/development/python-modules/smart-open/default.nix
@@ -12,12 +12,13 @@
 }:
 
 buildPythonPackage rec {
-  pname = "smart_open";
+  pname = "smart-open";
   version = "4.2.0";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "smart_open";
+    inherit version;
     sha256 = "d9f5a0f173ccb9bbae528db5a3804f57145815774f77ef755b9b0f3b4b2a9dcb";
   };
 
@@ -29,9 +30,10 @@ buildPythonPackage rec {
 
   # upstream code requires both boto and boto3
   propagatedBuildInputs = [ boto boto3 bz2file requests ];
+
   meta = {
     license = lib.licenses.mit;
-    description = "smart_open is a Python 2 & Python 3 library for efficient streaming of very large file";
+    description = "Library for efficient streaming of very large file";
     maintainers = with lib.maintainers; [ jyp ];
   };
 }
diff --git a/pkgs/development/python-modules/token-bucket/default.nix b/pkgs/development/python-modules/token-bucket/default.nix
new file mode 100644
index 00000000000..ac614d53fd5
--- /dev/null
+++ b/pkgs/development/python-modules/token-bucket/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestrunner
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "token-bucket";
+  version = "0.2.0";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "falconry";
+    repo = pname;
+    rev = version;
+    sha256 = "0kv8j2ab4knvzik2di66bgjwjxdslm2i0hjy35kn9z0dazni585s";
+  };
+
+  nativeBuildInputs = [
+    pytestrunner
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Token Bucket Implementation for Python Web Apps";
+    homepage = "https://github.com/falconry/token-bucket";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/vdf/default.nix b/pkgs/development/python-modules/vdf/default.nix
index 846aa7a13df..70ddf7bec97 100644
--- a/pkgs/development/python-modules/vdf/default.nix
+++ b/pkgs/development/python-modules/vdf/default.nix
@@ -1,24 +1,28 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, pytest, pytestcov, mock }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "vdf";
-  version = "3.3";
+  version = "3.4";
 
   src = fetchFromGitHub {
     owner = "ValvePython";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0d9bhxdznry7kzyma00cxwjn6rqnd6vw8v5ym68k6qswgfzb569i";
+    hash = "sha256-6ozglzZZNKDtADkHwxX2Zsnkh6BE8WbcRcC9HkTTgPU=";
   };
 
-  checkInputs = [ pytest pytestcov mock ];
-  checkPhase = "make test";
+  checkInputs = [ mock pytestCheckHook ];
+  pythonImportsCheck = [ "vdf" ];
 
   meta = with lib; {
     description = "Library for working with Valve's VDF text format";
     homepage = "https://github.com/ValvePython/vdf";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 1a09ce60c04..5f054e6b996 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -528,6 +528,14 @@ in
       "--with-libvirt-include=${libvirt}/include"
       "--with-libvirt-lib=${libvirt}/lib"
     ];
+    dontBuild = false;
+    postPatch = ''
+      # https://gitlab.com/libvirt/libvirt-ruby/-/commit/43543991832c9623c00395092bcfb9e178243ba4
+      substituteInPlace ext/libvirt/common.c \
+        --replace 'st.h' 'ruby/st.h'
+      substituteInPlace ext/libvirt/domain.c \
+        --replace 'st.h' 'ruby/st.h'
+    '';
   };
 
   ruby-lxc = attrs: {
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index d1460507466..b04eac35b05 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -7,19 +7,14 @@
 , useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin)
 , useOpenSSL ? !isBootstrap, openssl
 , useNcurses ? false, ncurses
-, useQt4 ? false, qt4
 , withQt5 ? false, qtbase
 }:
 
-assert withQt5 -> useQt4 == false;
-assert useQt4 -> withQt5 == false;
-
 stdenv.mkDerivation (rec {
   pname = "cmake"
           + lib.optionalString isBootstrap "-boot"
           + lib.optionalString useNcurses "-cursesUI"
-          + lib.optionalString withQt5 "-qt5UI"
-          + lib.optionalString useQt4 "-qt4UI";
+          + lib.optionalString withQt5 "-qt5UI";
   version = "3.19.7";
 
   src = fetchurl {
@@ -53,7 +48,6 @@ stdenv.mkDerivation (rec {
     ++ lib.optionals useSharedLibraries [ bzip2 curlMinimal expat libarchive xz zlib libuv rhash ]
     ++ lib.optional useOpenSSL openssl
     ++ lib.optional useNcurses ncurses
-    ++ lib.optional useQt4 qt4
     ++ lib.optional withQt5 qtbase;
 
   propagatedBuildInputs = lib.optional stdenv.isDarwin ps;
@@ -73,7 +67,7 @@ stdenv.mkDerivation (rec {
   configureFlags = [
     "--docdir=share/doc/${pname}${version}"
   ] ++ (if useSharedLibraries then [ "--no-system-jsoncpp" "--system-libs" ] else [ "--no-system-libs" ]) # FIXME: cleanup
-    ++ lib.optional (useQt4 || withQt5) "--qt-gui"
+    ++ lib.optional withQt5 "--qt-gui"
     # Workaround https://gitlab.kitware.com/cmake/cmake/-/issues/20568
     ++ lib.optionals stdenv.hostPlatform.is32bit [
       "CFLAGS=-D_FILE_OFFSET_BITS=64"
@@ -124,7 +118,7 @@ stdenv.mkDerivation (rec {
       configuration files, and generate native makefiles and workspaces that
       can be used in the compiler environment of your choice.
     '';
-    platforms = if useQt4 then qt4.meta.platforms else platforms.all;
+    platforms = platforms.all;
     maintainers = with maintainers; [ ttuegel lnl7 ];
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/tools/bunyan-rs/default.nix b/pkgs/development/tools/bunyan-rs/default.nix
new file mode 100644
index 00000000000..12ced94c81b
--- /dev/null
+++ b/pkgs/development/tools/bunyan-rs/default.nix
@@ -0,0 +1,25 @@
+{ rustPlatform
+, fetchFromGitHub
+, lib
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "bunyan-rs";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "LukeMathWalker";
+    repo = "bunyan";
+    rev = "v${version}";
+    sha256 = "sha256-Rj0VoJMcl8UBuVNu88FwTNF1GBx8IEXxwLL8sGz9kVM=";
+  };
+
+  cargoSha256 = "sha256-UZAiXLbRhr2J7QFf7x+JbEjc6p2AoVHYMgyARuwaB7E=";
+
+  meta = with lib; {
+    description = "A CLI to pretty print logs in bunyan format (Rust port of the original JavaScript bunyan CLI)";
+    homepage = "https://github.com/LukeMathWalker/bunyan";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ netcrns ];
+  };
+}
diff --git a/pkgs/development/tools/cmake-language-server/default.nix b/pkgs/development/tools/cmake-language-server/default.nix
index 2c85890e70b..0540e5785f6 100644
--- a/pkgs/development/tools/cmake-language-server/default.nix
+++ b/pkgs/development/tools/cmake-language-server/default.nix
@@ -16,11 +16,15 @@ buildPythonApplication rec {
     sha256 = "0vz7bjxkk0phjhz3h9kj6yr7wnk3g7lqmkqraa0kw12mzcfck837";
   };
 
-  # can be removed after v0.1.2
-  patches = lib.optional stdenv.isDarwin (fetchpatch {
-    url = "https://github.com/regen100/cmake-language-server/commit/0ec120f39127f25898ab110b43819e3e9becb8a3.patch";
-    sha256 = "1xbmarvsvzd61fnlap4qscnijli2rw2iqr7cyyvar2jd87z6sfp0";
-  });
+  patches = [
+    ./disable-test-timeouts.patch
+  ] ++ lib.optionals stdenv.isDarwin [
+    # can be removed after v0.1.2
+    (fetchpatch {
+      url = "https://github.com/regen100/cmake-language-server/commit/0ec120f39127f25898ab110b43819e3e9becb8a3.patch";
+      sha256 = "1xbmarvsvzd61fnlap4qscnijli2rw2iqr7cyyvar2jd87z6sfp0";
+    })
+  ];
 
   postPatch = ''
     substituteInPlace pyproject.toml \
@@ -38,6 +42,6 @@ buildPythonApplication rec {
     homepage = "https://github.com/regen100/cmake-language-server";
     description = "CMake LSP Implementation";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch b/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch
new file mode 100644
index 00000000000..febe7cf77e7
--- /dev/null
+++ b/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/test_server.py b/tests/test_server.py
+index c0777f5..1184fb3 100644
+--- a/tests/test_server.py
++++ b/tests/test_server.py
+@@ -11,7 +11,7 @@ from pygls.types import (CompletionContext, CompletionParams,
+                          InitializeParams, Position, TextDocumentIdentifier,
+                          TextDocumentItem, TextDocumentPositionParams)
+ 
+-CALL_TIMEOUT = 2
++CALL_TIMEOUT = None
+ 
+ 
+ def _init(client: LanguageServer, root: Path):
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 5e0b8845bd8..ce3264e1add 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -30,7 +30,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "0jh5ghjyzr7srl3xjsklv9yskq8k88kmylpiigjir0mkbn43fgzq";
+    sha256 = "01ajl7zka5fnph5zcnp3z6ir8xr81wzkam69gxazwjb3nbs642an";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/pkgs/development/tools/git-aggregator/default.nix b/pkgs/development/tools/git-aggregator/default.nix
new file mode 100644
index 00000000000..a6599c667c8
--- /dev/null
+++ b/pkgs/development/tools/git-aggregator/default.nix
@@ -0,0 +1,40 @@
+{ git, lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "git-aggregator";
+  version = "1.8.1";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    hash = "sha256-LLsyhyhPmOOvPzwEEJwkhrDfBMFueA7kuDlnrqwr08k=";
+  };
+
+  nativeBuildInputs = with python3Packages; [
+    setuptools-scm
+  ];
+  propagatedBuildInputs = with python3Packages; [
+    argcomplete
+    colorama
+    git
+    kaptan
+    requests
+  ];
+
+  checkInputs = [
+    git
+  ];
+
+  preCheck = ''
+    export HOME=`mktemp -d`
+    git config --global user.name John
+    git config --global user.email john@localhost
+  '';
+
+  meta = with lib; {
+    description = "Manage the aggregation of git branches from different remotes to build a consolidated one.";
+    homepage = "https://github.com/acsone/git-aggregator";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ lourkeur ];
+    mainProgram = "gitaggregate";
+  };
+}
diff --git a/pkgs/development/tools/kustomize/default.nix b/pkgs/development/tools/kustomize/default.nix
index aa6382bb16d..489b62891b6 100644
--- a/pkgs/development/tools/kustomize/default.nix
+++ b/pkgs/development/tools/kustomize/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "kustomize";
-  version = "4.1.2";
+  version = "4.1.3";
   # rev is the commit of the tag, mainly for kustomize version command output
   rev = "9e8e7a7fe99ec9fbf801463e8607928322fc5245";
 
@@ -17,7 +17,7 @@ buildGoModule rec {
     owner = "kubernetes-sigs";
     repo = pname;
     rev = "kustomize/v${version}";
-    sha256 = "sha256-uomtW6PPs/UHvKRbHToot6kU4YJGLJuet8vJENbwEgI=";
+    sha256 = "sha256-NPWKInDHOoelWqDrUn/AlRItI4e8J6dbBxgLW078ecs=";
   };
 
   # TODO: Remove once https://github.com/kubernetes-sigs/kustomize/pull/3708 got merged.
@@ -26,7 +26,7 @@ buildGoModule rec {
   # avoid finding test and development commands
   sourceRoot = "source/kustomize";
 
-  vendorSha256 = "sha256-fcsjxtCojahI6ZIcaSG5ubNqlWEC6DnNHtVYwTtbSw4=";
+  vendorSha256 = "sha256-6maEpEPEV436NrVnVlvWV1q6YywGVILXbxn8Z8Ku/hs=";
 
   meta = with lib; {
     description = "Customization of kubernetes YAML configurations";
diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix
index b905f5e8ed5..94fca742b6d 100644
--- a/pkgs/development/tools/misc/ccache/default.nix
+++ b/pkgs/development/tools/misc/ccache/default.nix
@@ -102,7 +102,7 @@ let ccache = stdenv.mkDerivation rec {
     homepage = "https://ccache.dev";
     downloadPage = "https://ccache.dev/download.html";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark r-burns ];
+    maintainers = with maintainers; [ kira-bruneau r-burns ];
     platforms = platforms.unix;
   };
 };
diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix
index eec1576711d..96fa70017a8 100644
--- a/pkgs/development/tools/misc/texlab/default.nix
+++ b/pkgs/development/tools/misc/texlab/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "texlab";
-  version = "3.0.0";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
     owner = "latex-lsp";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-jOxneMqeyvMQWKPNha59H6qWSFmx+Z71SU2+M5VWMsA=";
+    hash = "sha256-hiz3dMEYNKKd9dZiGghAhGqoXXKJiZG6sECfsCYVscU=";
   };
 
-  cargoHash = "sha256-H6czxSTw93RNTaN0OJyv0RfwmGAiFkpDgUtXHCD+jrY=";
+  cargoHash = "sha256-sCvQFU9/ENVi1RHV3QDngzI/S1xuHvpWxsrxT73jdI0=";
 
   outputs = [ "out" "man" ];
 
@@ -42,6 +42,7 @@ rustPlatform.buildRustPackage rec {
     description = "An implementation of the Language Server Protocol for LaTeX";
     homepage = "https://texlab.netlify.app";
     license = licenses.mit;
-    maintainers = with maintainers; [ doronbehar metadark ];
+    maintainers = with maintainers; [ doronbehar kira-bruneau ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/games/chessx/default.nix b/pkgs/games/chessx/default.nix
index fb7c7fddf09..1d2b366cf38 100644
--- a/pkgs/games/chessx/default.nix
+++ b/pkgs/games/chessx/default.nix
@@ -12,11 +12,11 @@
 
 mkDerivation rec {
   pname = "chessx";
-  version = "1.5.0";
+  version = "1.5.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/chessx/chessx-${version}.tgz";
-    sha256 = "09rqyra28w3z9ldw8sx07k5ap3sjlli848p737maj7c240rasc6i";
+    sha256 = "sha256-0JpLU0qQnF8aOYxkBlBJov3zBJe8gcy98NlAQSNk0gU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/games/clonehero/default.nix b/pkgs/games/clonehero/default.nix
index 504e4811432..377e1d79bda 100644
--- a/pkgs/games/clonehero/default.nix
+++ b/pkgs/games/clonehero/default.nix
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
     description = "Clone of Guitar Hero and Rockband-style games";
     homepage = "https://clonehero.net";
     license = licenses.unfree;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/misc/emulators/retroarch/kodi-advanced-launchers.nix b/pkgs/misc/emulators/retroarch/kodi-advanced-launchers.nix
index 79dd025cf94..ee97e6f7493 100644
--- a/pkgs/misc/emulators/retroarch/kodi-advanced-launchers.nix
+++ b/pkgs/misc/emulators/retroarch/kodi-advanced-launchers.nix
@@ -1,9 +1,7 @@
-{ stdenv, pkgs, cores, runtimeShell }:
+{ stdenv, pkgs, lib, cores, runtimeShell }:
 
 assert cores != [];
 
-with pkgs.lib;
-
 let
 
   script = exec: ''
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index 3036a4fdd91..eb87c267904 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -413,12 +413,12 @@ final: prev:
 
   chadtree = buildVimPluginFrom2Nix {
     pname = "chadtree";
-    version = "2021-05-21";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "6769987c13e313497e0fe98a59ccee0e70388927";
-      sha256 = "1xaddhij0f652rx2k5iar8892ly84nslw8j74l7srfxs7l91kpyi";
+      rev = "dd54a707f372bc8f631d7c70f70f1b55a0f56926";
+      sha256 = "16sbhn3711hqwv3qykg5lbf09fl6pn58aclsx5r3nnifdc531sc6";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -712,6 +712,18 @@ final: prev:
     meta.homepage = "https://github.com/chikatoike/concealedyank.vim/";
   };
 
+  conflict-marker-vim = buildVimPluginFrom2Nix {
+    pname = "conflict-marker-vim";
+    version = "2020-09-23";
+    src = fetchFromGitHub {
+      owner = "rhysd";
+      repo = "conflict-marker.vim";
+      rev = "6a9b8f92a57ea8a90cbf62c960db9e5894be2d7a";
+      sha256 = "0vw5kvnmwwia65gni97vk42b9s47r3p5bglrhpcxsvs3f4s250vq";
+    };
+    meta.homepage = "https://github.com/rhysd/conflict-marker.vim/";
+  };
+
   conjure = buildVimPluginFrom2Nix {
     pname = "conjure";
     version = "2021-05-15";
@@ -1304,12 +1316,12 @@ final: prev:
 
   edge = buildVimPluginFrom2Nix {
     pname = "edge";
-    version = "2021-05-19";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "48b0c85e093a4fb9eeb00092b85ba66555e924b1";
-      sha256 = "0p033nxhwwk0dirdkbpcqjyv4k8sbif1m1df3xkqgydd0fj9yyp5";
+      rev = "af858776b6faf81b9eb50f8bbb87c639ee483c93";
+      sha256 = "07smppxp2wr4282vsz0zdx3kkhvrx9f5140dwx4h4p8chs1c1zc5";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
@@ -1893,6 +1905,18 @@ final: prev:
     meta.homepage = "https://github.com/travitch/hasksyn/";
   };
 
+  hiPairs = buildVimPluginFrom2Nix {
+    pname = "hiPairs";
+    version = "2020-12-10";
+    src = fetchFromGitHub {
+      owner = "Yggdroot";
+      repo = "hiPairs";
+      rev = "8272bf6979d0ee65a3fdbbb97eff3dda79b661b2";
+      sha256 = "1hcskq9zdkf8vlxwd2n403m4rq7495v2fj35hjf6461hqx9v9dnw";
+    };
+    meta.homepage = "https://github.com/Yggdroot/hiPairs/";
+  };
+
   hlint-refactor-vim = buildVimPluginFrom2Nix {
     pname = "hlint-refactor-vim";
     version = "2015-12-05";
@@ -2508,12 +2532,12 @@ final: prev:
 
   lspkind-nvim = buildVimPluginFrom2Nix {
     pname = "lspkind-nvim";
-    version = "2021-02-06";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "onsails";
       repo = "lspkind-nvim";
-      rev = "953ca895203c095e13f97a8ece790bf546c82d1c";
-      sha256 = "15rfzcmfwig7x8pbgc1maimqkqwqr4dbpf7498a0s16vng673bgk";
+      rev = "3469f0c9a6767625d532a74a167f5d6ba2b8c5bf";
+      sha256 = "1ff1i6m9kk3n36n24c109g6yddcbbzm10iigvi0pv1z2fdpsrl07";
     };
     meta.homepage = "https://github.com/onsails/lspkind-nvim/";
   };
@@ -3322,6 +3346,18 @@ final: prev:
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
 
+  nvim-dap-ui = buildVimPluginFrom2Nix {
+    pname = "nvim-dap-ui";
+    version = "2021-05-21";
+    src = fetchFromGitHub {
+      owner = "rcarriga";
+      repo = "nvim-dap-ui";
+      rev = "cf7a6bb4e7c93ef60a18097bd24a6db2baea7306";
+      sha256 = "0mv7230xpcicaypmlfjsyhzwb6mp8vyp0sdzis5z2ixvm7rmh70a";
+    };
+    meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/";
+  };
+
   nvim-dap-virtual-text = buildVimPluginFrom2Nix {
     pname = "nvim-dap-virtual-text";
     version = "2021-05-16";
@@ -3504,12 +3540,12 @@ final: prev:
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2021-05-20";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "9a3acbc48d61995d98cf073fef8b0b57b3cfb0b9";
-      sha256 = "1iggsissn8amhx9hp8fnya44rq5m7jnqm8mpgk4j7lgxq1zibgm4";
+      rev = "9d1d9b1b9438f8c5b2d4c48fe040160b0ac6b316";
+      sha256 = "1slhsnkza7wrm0vybfx98r7767hjlzlymy66hh6py27a8bazr5aj";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -3526,6 +3562,18 @@ final: prev:
     meta.homepage = "https://github.com/romgrk/nvim-treesitter-context/";
   };
 
+  nvim-treesitter-pyfold = buildVimPluginFrom2Nix {
+    pname = "nvim-treesitter-pyfold";
+    version = "2021-05-20";
+    src = fetchFromGitHub {
+      owner = "eddiebergman";
+      repo = "nvim-treesitter-pyfold";
+      rev = "9a50e33acf6b6e711e6d5cc82456adb6f9b9dc3d";
+      sha256 = "0mbd5bp2c6kxn9dmc3vn3ia0silc7kb8mwwcm3q78n866ab4vpcc";
+    };
+    meta.homepage = "https://github.com/eddiebergman/nvim-treesitter-pyfold/";
+  };
+
   nvim-treesitter-refactor = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-refactor";
     version = "2021-05-03";
@@ -3742,6 +3790,18 @@ final: prev:
     meta.homepage = "https://github.com/tmsvg/pear-tree/";
   };
 
+  pears-nvim = buildVimPluginFrom2Nix {
+    pname = "pears-nvim";
+    version = "2021-05-21";
+    src = fetchFromGitHub {
+      owner = "steelsojka";
+      repo = "pears.nvim";
+      rev = "658f9e25f46005aa0e12de81abbfadefaad56e39";
+      sha256 = "11v92n6qpy7ryhyg6yqq4b48mskzm6ypc9vgfpr2l5irppai1x1r";
+    };
+    meta.homepage = "https://github.com/steelsojka/pears.nvim/";
+  };
+
   peskcolor-vim = buildVimPluginFrom2Nix {
     pname = "peskcolor-vim";
     version = "2016-06-11";
@@ -4021,12 +4081,12 @@ final: prev:
 
   registers-nvim = buildVimPluginFrom2Nix {
     pname = "registers-nvim";
-    version = "2021-05-20";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "tversteeg";
       repo = "registers.nvim";
-      rev = "250297a3bdab7572c858fa8ca1816651c8016557";
-      sha256 = "1zxww3abnsaw57npiqh33d3s199w2jpc797gv21ys1w9h2g98m6k";
+      rev = "c0b02c5d0884dcfdd1a4665a1eb55468f4e398d3";
+      sha256 = "1z7pd77gi313asy5d2qvv8nc76rrf2zi18w6gwavygvfkpn3hf65";
     };
     meta.homepage = "https://github.com/tversteeg/registers.nvim/";
   };
@@ -4163,6 +4223,18 @@ final: prev:
     meta.homepage = "https://github.com/saltstack/salt-vim/";
   };
 
+  scrollbar-nvim = buildVimPluginFrom2Nix {
+    pname = "scrollbar-nvim";
+    version = "2020-09-28";
+    src = fetchFromGitHub {
+      owner = "Xuyuanp";
+      repo = "scrollbar.nvim";
+      rev = "72a4174a47a89b7f89401fc66de0df95580fa48c";
+      sha256 = "10kk74pmbzc4v70n8vwb2zk0ayr147xy9zk2sbr78zwqf12gas9y";
+    };
+    meta.homepage = "https://github.com/Xuyuanp/scrollbar.nvim/";
+  };
+
   self = buildVimPluginFrom2Nix {
     pname = "self";
     version = "2014-05-28";
@@ -4321,12 +4393,12 @@ final: prev:
 
   sonokai = buildVimPluginFrom2Nix {
     pname = "sonokai";
-    version = "2021-05-19";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "2ab955b30545b7074aa28daae73bbc7050fc55f0";
-      sha256 = "0ya3xa9fq6dn2s77qg2snx68aigl9px3flaawpsa0nf8np3jl6kz";
+      rev = "53e874723f4564a12ca0af30541dca4a9d315556";
+      sha256 = "1wbwpawmlc25wdnmhidrj9k591zqc2srszh20xv60p0dg2aylmx5";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
@@ -4634,12 +4706,12 @@ final: prev:
 
   taskwiki = buildVimPluginFrom2Nix {
     pname = "taskwiki";
-    version = "2021-04-03";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "tools-life";
       repo = "taskwiki";
-      rev = "23a3c20a7d5185700e1e6504c3808cfa9eff78d4";
-      sha256 = "0jwb4hcyqwpjaxlissvi69d6fx4dwb7ypdigc2w5hnhfw8nv0kb1";
+      rev = "48e24b03c079be43e296981b2ed0a464bbb710d2";
+      sha256 = "0x57cjzxhphvmxai4pl5752vvi6mlgf0d2mwwnwj0mwc8h0n5dhz";
     };
     meta.homepage = "https://github.com/tools-life/taskwiki/";
   };
@@ -4656,6 +4728,18 @@ final: prev:
     meta.homepage = "https://github.com/tomtom/tcomment_vim/";
   };
 
+  telescope-dap-nvim = buildVimPluginFrom2Nix {
+    pname = "telescope-dap-nvim";
+    version = "2021-03-26";
+    src = fetchFromGitHub {
+      owner = "nvim-telescope";
+      repo = "telescope-dap.nvim";
+      rev = "b4134fff5cbaf3b876e6011212ed60646e56f060";
+      sha256 = "1fcpw42bwl5iych3hxrrl08s5hm6r6k0qx2savw853f3ff982s38";
+    };
+    meta.homepage = "https://github.com/nvim-telescope/telescope-dap.nvim/";
+  };
+
   telescope-frecency-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-frecency-nvim";
     version = "2021-04-17";
@@ -5908,12 +5992,12 @@ final: prev:
 
   vim-dirvish-git = buildVimPluginFrom2Nix {
     pname = "vim-dirvish-git";
-    version = "2020-12-18";
+    version = "2021-05-22";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-dirvish-git";
-      rev = "0c8c1a2878074abb0ac24054810de427ebff5500";
-      sha256 = "0gan44cyjskzjx5wv20zyvw2jn4cs4537fpwh2m3vi6758s2bmwy";
+      rev = "1d938c826503059660d89f186d2e8affc686a0e8";
+      sha256 = "11vd07cy8bylh75hznddpkpjyr4jg8sgcq12rv1pig4p6wh4lzm5";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-dirvish-git/";
   };
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index 28009afef0e..731982b8cfb 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -106,6 +106,7 @@ dylanaraps/wal.vim
 eagletmt/ghcmod-vim
 eagletmt/neco-ghc
 easymotion/vim-easymotion
+eddiebergman/nvim-treesitter-pyfold
 editorconfig/editorconfig-vim
 edluffy/hologram.nvim@main
 edluffy/specs.nvim@main
@@ -458,6 +459,7 @@ nvim-lua/lsp-status.nvim
 nvim-lua/lsp_extensions.nvim
 nvim-lua/plenary.nvim
 nvim-lua/popup.nvim
+nvim-telescope/telescope-dap.nvim
 nvim-telescope/telescope-frecency.nvim
 nvim-telescope/telescope-fzf-writer.nvim
 nvim-telescope/telescope-fzy-native.nvim
@@ -528,7 +530,9 @@ ray-x/aurora
 ray-x/lsp_signature.nvim
 rbgrouleff/bclose.vim
 rbong/vim-flog
+rcarriga/nvim-dap-ui
 rhysd/committia.vim
+rhysd/conflict-marker.vim
 rhysd/devdocs.vim
 rhysd/git-messenger.vim
 rhysd/vim-clang-format
@@ -601,6 +605,7 @@ solarnz/arcanist.vim
 sonph/onehalf
 srcery-colors/srcery-vim
 steelsojka/completion-buffers
+steelsojka/pears.nvim
 stefandtw/quickfix-reflector.vim
 stephpy/vim-yaml
 sunaku/vim-dasht
@@ -774,8 +779,10 @@ xolox/vim-easytags
 xolox/vim-misc
 xuhdev/vim-latex-live-preview
 Xuyuanp/nerdtree-git-plugin
+Xuyuanp/scrollbar.nvim
 yamatsum/nvim-nonicons@main
 ycm-core/YouCompleteMe
+Yggdroot/hiPairs
 Yggdroot/indentLine
 Yggdroot/LeaderF
 Yilin-Yang/vim-markbar
diff --git a/pkgs/os-specific/linux/kernel/linux-xanmod.nix b/pkgs/os-specific/linux/kernel/linux-xanmod.nix
index 95f736d9418..eecdc09ca20 100644
--- a/pkgs/os-specific/linux/kernel/linux-xanmod.nix
+++ b/pkgs/os-specific/linux/kernel/linux-xanmod.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, buildLinux, fetchFromGitHub, ... } @ args:
 
 let
-  version = "5.11.16";
+  version = "5.12.5";
   suffix = "xanmod1-cacule";
 in
   buildLinux (args // rec {
@@ -12,14 +12,14 @@ in
       owner = "xanmod";
       repo = "linux";
       rev = modDirVersion;
-      sha256 = "sha256-sK2DGJsmKP/gvPyT8HWjPa21OOXydMhGjJzrOkPo71Q=";
+      sha256 = "sha256-u9ebl2M8zrCNdangcUdk/78KwPCYV41PIB6YKTqCgIY=";
       extraPostFetch = ''
         rm $out/.config
       '';
     };
 
     extraMeta = {
-      branch = "5.11";
+      branch = "5.12-cacule";
       maintainers = with lib.maintainers; [ fortuneteller2k ];
       description = "Built with custom settings and new features built to provide a stable, responsive and smooth desktop experience";
       broken = stdenv.hostPlatform.isAarch64;
diff --git a/pkgs/os-specific/linux/libcgroup/default.nix b/pkgs/os-specific/linux/libcgroup/default.nix
index e40a59ce823..6d6a8e7c21e 100644
--- a/pkgs/os-specific/linux/libcgroup/default.nix
+++ b/pkgs/os-specific/linux/libcgroup/default.nix
@@ -1,26 +1,21 @@
-{ lib, stdenv, fetchurl, fetchpatch, pam, bison, flex }:
+{ lib, stdenv, fetchFromGitHub, pam, bison, flex, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "libcgroup";
-  version = "0.41";
+  version = "0.42.2";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/libcg/${pname}-${version}.tar.bz2";
-    sha256 = "0lgvyq37gq84sk30sg18admxaj0j0p5dq3bl6g74a1ppgvf8pqz4";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1h8s70lm6g7r0wj7j3xgj2g3j9fifvsy2pna6w0j3i5hh42qfms4";
   };
 
   buildInputs = [ pam bison flex ];
-
-  patches = [
-    (fetchpatch {
-      name = "CVE-2018-14348.patch";
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/libcgroup/files/libcgroup-0.41-remove-umask.patch?id=33e9f4c81de754bbf76b893ea1133ed023f2a0e5";
-      sha256 = "1x0x29ld0cgmfwq4qy13s6d5c8sym1frfh1j2q47d8gfw6qaxka5";
-    })
-  ];
+  nativeBuildInputs = [ autoreconfHook ];
 
   postPatch = ''
-    substituteInPlace src/tools/Makefile.in \
+    substituteInPlace src/tools/Makefile.am \
       --replace 'chmod u+s' 'chmod +x'
   '';
 
diff --git a/pkgs/os-specific/linux/xpadneo/default.nix b/pkgs/os-specific/linux/xpadneo/default.nix
index 3007e54639d..c1874877620 100644
--- a/pkgs/os-specific/linux/xpadneo/default.nix
+++ b/pkgs/os-specific/linux/xpadneo/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     description = "Advanced Linux driver for Xbox One wireless controllers";
     homepage = "https://atar-axis.github.io/xpadneo";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix
index 98bd45516e2..16449d73fda 100644
--- a/pkgs/servers/nosql/influxdb/default.nix
+++ b/pkgs/servers/nosql/influxdb/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "influxdb";
-  version = "1.8.5";
+  version = "1.8.6";
 
   src = fetchFromGitHub {
     owner = "influxdata";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qKkCTsSUejqJhMzAgFJYMGalAUepUaP/caocRwnKflg=";
+    sha256 = "sha256-v58druwTVeUOItbBUNr8lNsFlam9v0sxXlTeHlM0g6A=";
   };
 
   vendorSha256 = "sha256-t7uwrsrF4LYdRjOhwdsCouDJXvD9364Ma5gvKezvi5o=";
diff --git a/pkgs/servers/osrm-backend/default.nix b/pkgs/servers/osrm-backend/default.nix
index c3ca8baaf7c..187a4c4adb1 100644
--- a/pkgs/servers/osrm-backend/default.nix
+++ b/pkgs/servers/osrm-backend/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "osrm-backend";
-  version = "5.24.0";
+  version = "5.25.0";
 
   src = fetchFromGitHub {
     owner  = "Project-OSRM";
     repo   = "osrm-backend";
     rev = "v${version}";
-    sha256 = "sha256-Srqe6XIF9Fs869Dp25+63ikgO7YlyT0IUJr0qMxunao=";
+    sha256 = "sha256-wmhm3q93HTv4+VMlF9rhms4uw4LJBozOKTtHpDgAbrU=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/servers/pinnwand/default.nix b/pkgs/servers/pinnwand/default.nix
index 507453f5507..44dc87d1989 100644
--- a/pkgs/servers/pinnwand/default.nix
+++ b/pkgs/servers/pinnwand/default.nix
@@ -7,24 +7,16 @@
 
 with python3.pkgs; buildPythonApplication rec {
   pname = "pinnwand";
-  version = "1.2.3";
+  version = "1.3.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "supakeen";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1p6agvp136q6km7gjfv8dpjn6x4ap770lqa40ifblyhw13bsrqlh";
+    sha256 = "046xk2y59wa0pdp7s3hp1gh8sqdw0yl4xab22r2x44iwwcyb0gy5";
   };
 
-  patches = [
-    (fetchpatch {
-      # https://github.com/supakeen/pinnwand/issues/110
-      url = "https://github.com/supakeen/pinnwand/commit/b9e72abb7f25104f5e57248294ed9ae1dbc87240.patch";
-      sha256 = "098acif9ck165398bp7vwfr9g7sj9q3pcdc42z5y63m1nbf8naan";
-    })
-  ];
-
   nativeBuildInputs = [
     poetry-core
   ];
@@ -35,6 +27,7 @@ with python3.pkgs; buildPythonApplication rec {
     pygments
     pygments-better-html
     sqlalchemy
+    token-bucket
     toml
     tornado
   ];
diff --git a/pkgs/servers/reproxy/default.nix b/pkgs/servers/reproxy/default.nix
index 0a9095857e4..b9b4fde5bdd 100644
--- a/pkgs/servers/reproxy/default.nix
+++ b/pkgs/servers/reproxy/default.nix
@@ -15,6 +15,12 @@ buildGoModule rec {
     # Requires network access
     substituteInPlace app/main_test.go \
       --replace "Test_Main" "Skip_Main"
+
+    # Fails on Darwin.
+    # https://github.com/umputun/reproxy/issues/77
+    substituteInPlace app/discovery/provider/file_test.go \
+      --replace "TestFile_Events" "SkipFile_Events" \
+      --replace "TestFile_Events_BusyListener" "SkipFile_Events_BusyListener"
   '';
 
   vendorSha256 = null;
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index 8c5f5c0e402..0655668429a 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -32,7 +32,7 @@ let
   nudb = fetchgit rec {
     url = "https://github.com/CPPAlliance/NuDB.git";
     rev = "2.0.5";
-    sha256 = "02zbd07qvdjjsm4ivvhxah5n466bncvm6m03vmq0qdbbrlnp6s37";
+    sha256 = "07dwvglhyzpqnhzd33a2vs80wrdxy55a3sirnd739xp1k5v8s2fx";
     leaveDotGit = true;
     fetchSubmodules = true;
     postFetch = "cd $out && git tag ${rev}";
@@ -41,7 +41,7 @@ let
   rocksdb = fetchgit rec {
     url = "https://github.com/facebook/rocksdb.git";
     rev = "v6.7.3";
-    sha256 = "16qb636qs2yxqmz30hmvq8mllf038s80p37b0vyc0bazwlr93d9z";
+    sha256 = "0dzn5jg3i2mnnjj24dn9lzi3aajj5ga2akjf64lybyj481lq445k";
     deepClone = true;
     fetchSubmodules = false;
     leaveDotGit = true;
diff --git a/pkgs/shells/bash/undistract-me/default.nix b/pkgs/shells/bash/undistract-me/default.nix
index e6641d9039c..9ed5544713d 100644
--- a/pkgs/shells/bash/undistract-me/default.nix
+++ b/pkgs/shells/bash/undistract-me/default.nix
@@ -74,6 +74,6 @@ stdenvNoCC.mkDerivation rec {
     description = "Notifies you when long-running terminal commands complete";
     homepage = "https://github.com/jml/undistract-me";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index be1a6080a23..8fd0cf016bf 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -1,7 +1,10 @@
-{ lib, fetchurl, substituteAll, python3, pkg-config, writeText
+{ lib
+, fetchurl
+, fetchpatch
+, substituteAll, python3, pkg-config, writeText
 , xorg, gtk3, glib, pango, cairo, gdk-pixbuf, atk, pandoc
 , wrapGAppsHook, xorgserver, getopt, xauth, util-linux, which
-, ffmpeg, x264, libvpx, libwebp, x265
+, ffmpeg, x264, libvpx, libwebp, x265, librsvg
 , libfakeXinerama
 , gst_all_1, pulseaudio, gobject-introspection
 , pam }:
@@ -33,20 +36,24 @@ let
 
 in buildPythonApplication rec {
   pname = "xpra";
-  version = "4.1.3";
+  version = "4.2";
 
   src = fetchurl {
     url = "https://xpra.org/src/${pname}-${version}.tar.gz";
-    sha256 = "TesmPRmfWy+IqqxoNFd04oX/b2ryGreZPeh2r4sL8JQ=";
+    hash = "sha256-KkQw4FJeH4G5jZ4GdP3aXZ3zxu4GALbiOI6POKJW6fk=";
   };
 
   patches = [
     (substituteAll {  # correct hardcoded paths
       src = ./fix-paths.patch;
-      inherit (xorg) xkeyboardconfig;
       inherit libfakeXinerama;
     })
     ./fix-41106.patch  # https://github.com/NixOS/nixpkgs/issues/41106
+    # Xorg won't start without. Remove on next version!
+    (fetchpatch {
+      url = "https://github.com/Xpra-org/xpra/commit/f9f242abad69363dfa558e1f6f7956ae99164b67.patch";
+      sha256 = "sha256-TOP9RuXPuqxyKY/7LSSrCWnAmJstEE+D5EwjMiVmchM=";
+    })
   ];
 
   postPatch = ''
@@ -60,6 +67,7 @@ in buildPythonApplication rec {
     libXrandr libxkbfile
     ] ++ [
     cython
+    librsvg
 
     pango cairo gdk-pixbuf atk.out gtk3 glib
 
@@ -78,7 +86,7 @@ in buildPythonApplication rec {
     pillow rencode pycrypto cryptography pycups lz4 dbus-python
     netifaces numpy pygobject3 pycairo gst-python pam
     pyopengl paramiko opencv4 python-uinput pyxdg
-    ipaddress idna
+    ipaddress idna pyinotify
   ];
 
     # error: 'import_cairo' defined but not used
@@ -86,6 +94,7 @@ in buildPythonApplication rec {
 
   setupPyBuildFlags = [
     "--with-Xdummy"
+    "--without-Xdummy_wrapper"
     "--without-strict"
     "--with-gtk3"
     # Override these, setup.py checks for headers in /usr/* paths
@@ -99,6 +108,7 @@ in buildPythonApplication rec {
       "''${gappsWrapperArgs[@]}"
       --set XPRA_INSTALL_PREFIX "$out"
       --set XPRA_COMMAND "$out/bin/xpra"
+      --set XPRA_XKB_CONFIG_ROOT "${xorg.xkeyboardconfig}/share/X11/xkb"
       --prefix LD_LIBRARY_PATH : ${libfakeXinerama}/lib
       --prefix PATH : ${lib.makeBinPath [ getopt xorgserver xauth which util-linux pulseaudio ]}
     )
@@ -119,12 +129,12 @@ in buildPythonApplication rec {
   };
 
   meta = {
-    homepage = "http://xpra.org/";
+    homepage = "https://xpra.org/";
     downloadPage = "https://xpra.org/src/";
-    downloadURLRegexp = "xpra-.*[.]tar[.]xz$";
+    downloadURLRegexp = "xpra-.*[.]tar[.][gx]z$";
     description = "Persistent remote applications for X";
     platforms = platforms.linux;
     license = licenses.gpl2;
-    maintainers = with maintainers; [ tstrobel offline numinit ];
+    maintainers = with maintainers; [ tstrobel offline numinit mvnetbiz ];
   };
 }
diff --git a/pkgs/tools/X11/xpra/fix-paths.patch b/pkgs/tools/X11/xpra/fix-paths.patch
index 70bd9027a1a..b5a58bb03f8 100644
--- a/pkgs/tools/X11/xpra/fix-paths.patch
+++ b/pkgs/tools/X11/xpra/fix-paths.patch
@@ -16,19 +16,6 @@ index f962330..b02b6dd 100755
              f.write(b"DEF ENABLE_DEVICE_CAPS=%i" % ENABLE_DEVICE_CAPS)
      cython_add(Extension("xpra.codecs.v4l2.pusher",
      
-diff --git a/xpra/x11/bindings/keyboard_bindings.pyx b/xpra/x11/bindings/keyboard_bindings.pyx
-index bd7023d..064c6b5 100644
---- a/xpra/x11/bindings/keyboard_bindings.pyx
-+++ b/xpra/x11/bindings/keyboard_bindings.pyx
-@@ -21,7 +21,7 @@ from libc.stdlib cimport free, malloc
-
- DEF PATH_MAX = 1024
- DEF DFLT_XKB_RULES_FILE = b"base"
--DEF DFLT_XKB_CONFIG_ROOT = b"/usr/share/X11/xkb"
-+DEF DFLT_XKB_CONFIG_ROOT = b"@xkeyboardconfig@/share/X11/xkb"
-
- ###################################
- # Headers, python magic
 diff --git a/xpra/x11/fakeXinerama.py b/xpra/x11/fakeXinerama.py
 index c867258..617af7c 100755
 --- a/xpra/x11/fakeXinerama.py
diff --git a/pkgs/tools/audio/botamusique/default.nix b/pkgs/tools/audio/botamusique/default.nix
index 11f228ea691..36bd1343338 100644
--- a/pkgs/tools/audio/botamusique/default.nix
+++ b/pkgs/tools/audio/botamusique/default.nix
@@ -5,6 +5,7 @@
 , python3Packages
 , ffmpeg
 , makeWrapper
+, nixosTests
 
 # For the update script
 , coreutils
@@ -140,6 +141,10 @@ stdenv.mkDerivation rec {
       --output ${toString ./node-packages.nix}
   '';
 
+  passthru.tests = {
+    inherit (nixosTests) botamusique;
+  };
+
   meta = with lib; {
     description = "Bot to play youtube / soundcloud / radio / local music on Mumble";
     homepage = "https://github.com/azlux/botamusique";
diff --git a/pkgs/tools/audio/botamusique/node-packages.nix b/pkgs/tools/audio/botamusique/node-packages.nix
index 3f9e2dcdfd0..8857e1e76f9 100644
--- a/pkgs/tools/audio/botamusique/node-packages.nix
+++ b/pkgs/tools/audio/botamusique/node-packages.nix
@@ -1624,13 +1624,13 @@ let
         sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
       };
     };
-    "colorette-1.2.1" = {
+    "colorette-1.2.2" = {
       name = "colorette";
       packageName = "colorette";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz";
-        sha512 = "puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==";
+        url = "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz";
+        sha512 = "MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==";
       };
     };
     "command-line-usage-6.1.1" = {
@@ -2497,13 +2497,13 @@ let
         sha512 = "F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==";
       };
     };
-    "hosted-git-info-2.8.8" = {
+    "hosted-git-info-2.8.9" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
-      version = "2.8.8";
+      version = "2.8.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
-        sha512 = "f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==";
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
+        sha512 = "mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==";
       };
     };
     "html-minifier-terser-5.1.1" = {
@@ -2992,13 +2992,13 @@ let
         sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
       };
     };
-    "lodash-4.17.20" = {
+    "lodash-4.17.21" = {
       name = "lodash";
       packageName = "lodash";
-      version = "4.17.20";
+      version = "4.17.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz";
-        sha512 = "PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==";
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
       };
     };
     "lower-case-2.0.1" = {
@@ -3109,13 +3109,13 @@ let
         sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
       };
     };
-    "nanoid-3.1.18" = {
+    "nanoid-3.1.23" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "3.1.18";
+      version = "3.1.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.18.tgz";
-        sha512 = "rndlDjbbHbcV3xi+R2fpJ+PbGMdfBxz5v1fATIQFq0DP64FsicQdwnKLy47K4kZHdRpmQXtz24eGsxQqamzYTA==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz";
+        sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
       };
     };
     "natural-compare-1.4.0" = {
@@ -3523,13 +3523,13 @@ let
         sha512 = "Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==";
       };
     };
-    "postcss-8.1.10" = {
+    "postcss-8.2.15" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.1.10";
+      version = "8.2.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.1.10.tgz";
-        sha512 = "iBXEV5VTTYaRRdxiFYzTtuv2lGMQBExqkZKSzkJe+Fl6rvQrA/49UVGKqB+LG54hpW/TtDBMGds8j33GFNW7pg==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz";
+        sha512 = "2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==";
       };
     };
     "postcss-loader-4.1.0" = {
@@ -4414,15 +4414,6 @@ let
         sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
       };
     };
-    "vfile-location-3.2.0" = {
-      name = "vfile-location";
-      packageName = "vfile-location";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz";
-        sha512 = "aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==";
-      };
-    };
     "watchpack-2.0.1" = {
       name = "watchpack";
       packageName = "watchpack";
@@ -4536,7 +4527,7 @@ let
     name = "botamusique";
     packageName = "botamusique";
     version = "0.0.0";
-    src = ../../../../../../../../run/user/1000/tmp.ioJA7NbZmp;
+    src = ../../../../../../../../../tmp/tmp.hWY9btrx5g;
     dependencies = [
       sources."@babel/code-frame-7.10.4"
       sources."@babel/compat-data-7.12.7"
@@ -4735,7 +4726,7 @@ let
       })
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."colorette-1.2.1"
+      sources."colorette-1.2.2"
       sources."command-line-usage-6.1.1"
       sources."commander-4.1.1"
       sources."comment-parser-0.7.6"
@@ -4886,7 +4877,7 @@ let
       sources."has-flag-3.0.0"
       sources."has-symbols-1.0.1"
       sources."he-1.2.0"
-      sources."hosted-git-info-2.8.8"
+      sources."hosted-git-info-2.8.9"
       sources."html-minifier-terser-5.1.1"
       sources."html-webpack-plugin-4.5.0"
       (sources."htmlparser2-3.10.1" // {
@@ -4964,7 +4955,7 @@ let
         ];
       })
       sources."locate-path-2.0.0"
-      sources."lodash-4.17.20"
+      sources."lodash-4.17.21"
       sources."lower-case-2.0.1"
       sources."make-dir-2.1.0"
       sources."merge-stream-2.0.0"
@@ -4981,7 +4972,7 @@ let
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
       sources."ms-2.1.2"
-      sources."nanoid-3.1.18"
+      sources."nanoid-3.1.23"
       sources."natural-compare-1.4.0"
       sources."neo-async-2.6.2"
       sources."no-case-3.0.3"
@@ -5024,7 +5015,7 @@ let
       sources."pify-4.0.1"
       sources."pkg-dir-2.0.0"
       sources."popper.js-1.16.1"
-      (sources."postcss-8.1.10" // {
+      (sources."postcss-8.2.15" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -5179,7 +5170,6 @@ let
       sources."utila-0.4.0"
       sources."v8-compile-cache-2.2.0"
       sources."validate-npm-package-license-3.0.4"
-      sources."vfile-location-3.2.0"
       sources."watchpack-2.0.1"
       (sources."webpack-5.6.0" // {
         dependencies = [
diff --git a/pkgs/tools/audio/botamusique/src.json b/pkgs/tools/audio/botamusique/src.json
index 7f63d480a8e..c7e61947460 100644
--- a/pkgs/tools/audio/botamusique/src.json
+++ b/pkgs/tools/audio/botamusique/src.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/azlux/botamusique",
-  "rev": "df38c7dbd6d59c6790cf2364d1f344b7f6f72107",
-  "date": "2021-03-13T15:44:40+08:00",
-  "path": "/nix/store/30ds4gp7aldj9rqix1xf7j2ps5blrx8w-botamusique",
-  "sha256": "06xw1pif145zcm9z8l9kzl8ayl7vy5ywr0m3a5yswybcp2fzj087",
+  "rev": "33a9e75ba9d0a382f7a76d23a0ceb626924a8b49",
+  "date": "2021-05-19T22:37:39+08:00",
+  "path": "/nix/store/dqc2vjd43cixm49w8g66wvi9zmdfwsdd-botamusique",
+  "sha256": "18lbgslx9vdwd5nrbkqfjvzaikp2swvv375v9gql7cg8p46w7i11",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/pkgs/tools/audio/yabridge/default.nix b/pkgs/tools/audio/yabridge/default.nix
index d8ddf3ee561..375ce985819 100644
--- a/pkgs/tools/audio/yabridge/default.nix
+++ b/pkgs/tools/audio/yabridge/default.nix
@@ -149,7 +149,7 @@ in stdenv.mkDerivation rec {
     description = "Yet Another VST bridge, run Windows VST2 plugins under Linux";
     homepage = "https://github.com/robbert-vdh/yabridge";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/tools/audio/yabridgectl/default.nix b/pkgs/tools/audio/yabridgectl/default.nix
index 2cbaf3f4ad5..4f88e58f0af 100644
--- a/pkgs/tools/audio/yabridgectl/default.nix
+++ b/pkgs/tools/audio/yabridgectl/default.nix
@@ -33,6 +33,6 @@ rustPlatform.buildRustPackage rec {
     description = "A small, optional utility to help set up and update yabridge for several directories at once";
     homepage = "https://github.com/robbert-vdh/yabridge/tree/master/tools/yabridgectl";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index a7add68b2da..c10348fd711 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -131,10 +131,10 @@ let
   ]);
   sitePackages = ceph-python-env.python.sitePackages;
 
-  version = "16.2.1";
+  version = "16.2.3";
   src = fetchurl {
     url = "http://download.ceph.com/tarballs/ceph-${version}.tar.gz";
-    sha256 = "1qqvfhnc94vfrq1ddizf6habjlcp77abry4v18zlq6rnhwr99zrh";
+    sha256 = "sha256-K3T1Lob19p8ykYEmYumHS8hqj2uysCuE0EAKb1TMJ0Q=";
   };
 in rec {
   ceph = stdenv.mkDerivation {
diff --git a/pkgs/tools/graphics/ldgallery/default.nix b/pkgs/tools/graphics/ldgallery/default.nix
index 6291dc9d642..84d179374ae 100644
--- a/pkgs/tools/graphics/ldgallery/default.nix
+++ b/pkgs/tools/graphics/ldgallery/default.nix
@@ -1,10 +1,10 @@
-{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick }:
+{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick, CoreServices }:
 
 with lib;
 with haskell.lib;
 
 let
-  ldgallery-viewer = pkgs.callPackage ./viewer { };
+  ldgallery-viewer = pkgs.callPackage ./viewer { inherit CoreServices; };
   inherit (haskellPackages) ldgallery-compiler;
 
 in
diff --git a/pkgs/tools/graphics/ldgallery/viewer/default.nix b/pkgs/tools/graphics/ldgallery/viewer/default.nix
index 9559120069f..f4cebde8607 100644
--- a/pkgs/tools/graphics/ldgallery/viewer/default.nix
+++ b/pkgs/tools/graphics/ldgallery/viewer/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkgs, nodejs-12_x, pandoc }:
+{ lib, stdenv, fetchFromGitHub, pkgs, nodejs-12_x, pandoc, CoreServices }:
 
 with lib;
 
@@ -24,6 +24,7 @@ let
   nodePkg = nodePackages.package.override {
     src = "${sourcePkg}/viewer";
     postInstall = "npm run build";
+    buildInputs = optionals stdenv.isDarwin [ CoreServices ];
   };
 
 in
diff --git a/pkgs/tools/graphics/mangohud/default.nix b/pkgs/tools/graphics/mangohud/default.nix
index 0d3b8ed6f8e..91022eff31d 100644
--- a/pkgs/tools/graphics/mangohud/default.nix
+++ b/pkgs/tools/graphics/mangohud/default.nix
@@ -120,6 +120,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/flightlessmango/MangoHud";
     platforms = platforms.linux;
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark zeratax ];
+    maintainers = with maintainers; [ kira-bruneau zeratax ];
   };
 }
diff --git a/pkgs/tools/graphics/vkBasalt/default.nix b/pkgs/tools/graphics/vkBasalt/default.nix
index 50cbe048131..3695c7ec2c0 100644
--- a/pkgs/tools/graphics/vkBasalt/default.nix
+++ b/pkgs/tools/graphics/vkBasalt/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     description = "A Vulkan post processing layer for Linux";
     homepage = "https://github.com/DadSchoorse/vkBasalt";
     license = licenses.zlib;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/bfetch/default.nix b/pkgs/tools/misc/bfetch/default.nix
new file mode 100644
index 00000000000..107f2cd9452
--- /dev/null
+++ b/pkgs/tools/misc/bfetch/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenvNoCC, fetchFromGitHub, bash }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "bfetch";
+  version = "unstable-2021-05-21";
+
+  src = fetchFromGitHub {
+    owner = "NNBnh";
+    repo = pname;
+    rev = "ef88e9d3f815e5074efc8ef4b7f32be6818130f2";
+    sha256 = "sha256-jS9zI8b+z3KbI+LeHFwIMJfEmAKSzO8HRZ2rk35hJCk=";
+  };
+
+  buildInputs = [ bash ];
+
+  postPatch = ''
+    patchShebangs --host bin/bfetch
+  '';
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with lib; {
+    description = "A SuperB general-purpose fetch displayer written in portable sh";
+    homepage = "https://github.com/NNBnh/bfetch";
+    license = licenses.gpl3Only;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ fortuneteller2k ];
+  };
+}
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 0688f1d6487..bcf53611b22 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fzf";
-  version = "0.27.0";
+  version = "0.27.1";
 
   src = fetchFromGitHub {
     owner = "junegunn";
     repo = pname;
     rev = version;
-    sha256 = "sha256-q0rAAD6du0WLcd46LUpkG3gBIvmtOE/foEMW5QCoIak=";
+    sha256 = "sha256-TMzyUhgOfcWXKhxy+2SeBy0mws/M+4YoitlPpYt6k9g=";
   };
 
   vendorSha256 = "sha256-FKDCIotyra/TZ48wbpzudJZ2aI2pn+ZR4EoZ+9+19Mw=";
diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix
deleted file mode 100644
index 0f7a37e8831..00000000000
--- a/pkgs/tools/networking/openconnect_pa/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, vpnc, openssl ? null, gnutls ? null, gmp, libxml2, stoken, zlib, autoreconfHook } :
-
-assert (openssl != null) == (gnutls == null);
-
-stdenv.mkDerivation {
-  version = "unstable-2018-10-08";
-  pname = "openconnect_pa";
-
-  outputs = [ "out" "dev" ];
-
-  src = fetchFromGitHub {
-    owner = "dlenski";
-    repo = "openconnect";
-    rev = "e5fe063a087385c5b157ad7a9a3fa874181f6e3b";
-    sha256 = "0ywacqs3nncr2gpjjcz2yc9c6v4ifjssh0vb07h0qff06whqhdax";
-  };
-
-  preConfigure = ''
-      export PKG_CONFIG=${pkg-config}/bin/${pkg-config.targetPrefix}pkg-config
-      export LIBXML2_CFLAGS="-I ${libxml2.dev}/include/libxml2"
-      export LIBXML2_LIBS="-L${libxml2.out}/lib -lxml2"
-  '';
-
-  configureFlags = [
-    "--with-vpnc-script=${vpnc}/etc/vpnc/vpnc-script"
-    "--disable-nls"
-    "--without-openssl-version-check"
-  ];
-
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
-  propagatedBuildInputs = [ vpnc openssl gnutls gmp libxml2 stoken zlib ];
-
-  meta = with lib; {
-    description = "OpenConnect client extended to support Palo Alto Networks' GlobalProtect VPN";
-    homepage = "https://github.com/dlenski/openconnect/";
-    license = licenses.lgpl21;
-    maintainers = with maintainers; [ chessai ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/tools/networking/xh/default.nix b/pkgs/tools/networking/xh/default.nix
index 50908caf439..a878a1bd233 100644
--- a/pkgs/tools/networking/xh/default.nix
+++ b/pkgs/tools/networking/xh/default.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xh";
-  version = "0.9.2";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "ducaale";
     repo = "xh";
     rev = "v${version}";
-    sha256 = "cOlya3ngIoaoqzh0fIbNAjwO7S7wZCQk7WVqgZona8A=";
+    sha256 = "sha256-eOP9sc1qmQuc3HecNNZDMarVkXmEfGZkan0H9598LC0=";
   };
 
-  cargoSha256 = "sha256-jjC7G4JsLyj5LC29DBI996E+Ha/tVrcv7A95MmB7A08=";
+  cargoSha256 = "sha256-JXywHuZPQVhuWBVUNi9k8TwgE8KCNDtucjxxDi6unVM=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/package-management/protontricks/default.nix b/pkgs/tools/package-management/protontricks/default.nix
index 0934ef1028d..f82dc0e4bc0 100644
--- a/pkgs/tools/package-management/protontricks/default.nix
+++ b/pkgs/tools/package-management/protontricks/default.nix
@@ -50,7 +50,7 @@ buildPythonApplication rec {
     description = "A simple wrapper for running Winetricks commands for Proton-enabled games";
     homepage = "https://github.com/Matoking/protontricks";
     license = licenses.gpl3Only;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix
index cbe56694da1..e07ea1a3337 100644
--- a/pkgs/tools/security/eid-mw/default.nix
+++ b/pkgs/tools/security/eid-mw/default.nix
@@ -1,24 +1,37 @@
-{ lib, stdenv, fetchFromGitHub
-, autoreconfHook, pkg-config
-, gtk3, nssTools, pcsclite
-, libxml2, libproxy
-, openssl, curl
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, autoconf-archive
+, pkg-config
 , makeWrapper
-, substituteAll }:
+, curl
+, gtk3
+, libassuan
+, libbsd
+, libproxy
+, libxml2
+, openssl
+, p11-kit
+, pcsclite
+, nssTools
+, substituteAll
+}:
 
 stdenv.mkDerivation rec {
   pname = "eid-mw";
-  version = "4.4.27";
+  # NOTE: Don't just blindly update to the latest version/tag. Releases are always for a specific OS.
+  version = "5.0.21";
 
   src = fetchFromGitHub {
     rev = "v${version}";
-    sha256 = "17lw8iwp7h5cs3db80sysr84ffi333cf2vrhncs9l6hy6glfl2v1";
+    sha256 = "1sz7996q6gd6vbdxqgyx1jwjznpki1k9zbgaj1j1a51y6w0g0kdh";
     repo = "eid-mw";
     owner = "Fedict";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper ];
-  buildInputs = [ gtk3 pcsclite libxml2 libproxy curl openssl ];
+  nativeBuildInputs = [ autoreconfHook autoconf-archive pkg-config makeWrapper ];
+  buildInputs = [ curl gtk3 libassuan libbsd libproxy libxml2 openssl p11-kit pcsclite ];
   preConfigure = ''
     mkdir openssl
     ln -s ${openssl.out}/lib openssl
@@ -27,30 +40,30 @@ stdenv.mkDerivation rec {
     export SSL_PREFIX=$(realpath openssl)
     substituteInPlace plugins_tools/eid-viewer/Makefile.in \
       --replace "c_rehash" "openssl rehash"
-    '';
+  '';
+  # pinentry uses hardcoded `/usr/bin/pinentry`, so use the built-in (uglier) dialogs for pinentry.
+  configureFlags = [ "--disable-pinentry" ];
 
   postPatch = ''
     sed 's@m4_esyscmd_s(.*,@[${version}],@' -i configure.ac
   '';
 
-  configureFlags = [ "--enable-dialogs=yes" ];
-
   postInstall =
-  let
-    eid-nssdb-in = substituteAll {
-      inherit (stdenv) shell;
-      isExecutable = true;
-      src = ./eid-nssdb.in;
-    };
-  in
-  ''
-    install -D ${eid-nssdb-in} $out/bin/eid-nssdb
-    substituteInPlace $out/bin/eid-nssdb \
-      --replace "modutil" "${nssTools}/bin/modutil"
+    let
+      eid-nssdb-in = substituteAll {
+        inherit (stdenv) shell;
+        isExecutable = true;
+        src = ./eid-nssdb.in;
+      };
+    in
+    ''
+      install -D ${eid-nssdb-in} $out/bin/eid-nssdb
+      substituteInPlace $out/bin/eid-nssdb \
+        --replace "modutil" "${nssTools}/bin/modutil"
 
-    rm $out/bin/about-eid-mw
-    wrapProgram $out/bin/eid-viewer --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/$name"
-  '';
+      rm $out/bin/about-eid-mw
+      wrapProgram $out/bin/eid-viewer --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/$name"
+    '';
 
   enableParallelBuilding = true;
 
@@ -83,6 +96,6 @@ stdenv.mkDerivation rec {
           firefox.override { pkcs11Modules = [ pkgs.eid-mw ]; }
     '';
     platforms = platforms.linux;
-    maintainers = with maintainers; [ bfortz ];
+    maintainers = with maintainers; [ bfortz chvp ];
   };
 }
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index e04ab9df08c..eb5ac31d300 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "vault";
-  version = "1.7.1";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "0ncy99gw2pp5v2qbbgvri7qlirjj8qsvgjmjqyx3gddlpzpyiz3q";
+    sha256 = "0nd77lfccl71qn98cq1yz85aiafplxbr58nafbbflijs1fz1771q";
   };
 
   goPackagePath = "github.com/hashicorp/vault";
diff --git a/pkgs/tools/security/vault/vault-bin.nix b/pkgs/tools/security/vault/vault-bin.nix
index 44755db2d33..b283a40888b 100644
--- a/pkgs/tools/security/vault/vault-bin.nix
+++ b/pkgs/tools/security/vault/vault-bin.nix
@@ -1,26 +1,26 @@
 { lib, stdenv, fetchurl, unzip }:
 
 let
-  version = "1.7.1";
+  version = "1.7.2";
 
   sources = let
     base = "https://releases.hashicorp.com/vault/${version}";
   in {
     x86_64-linux = fetchurl {
       url = "${base}/vault_${version}_linux_amd64.zip";
-      sha256 = "021qa8jcqwy27q83lvamvv5zqnkwk5y0jsb8al5yxpgzxqnmsyb1";
+      sha256 = "1g37pgj7hbi6vfpwq9rrh6is980lfwbq5jb4736jfp5m360vprjy";
     };
     i686-linux = fetchurl {
       url = "${base}/vault_${version}_linux_386.zip";
-      sha256 = "02hhxpa8craa91nfgvwziswisfdnqw4gbwrxyxr753v1y00y1sz8";
+      sha256 = "0777xkkfiy0s3nyygcfpw0nbfsm6yz1n5hxcvfafhzcdyr58fpb7";
     };
     x86_64-darwin = fetchurl {
       url = "${base}/vault_${version}_darwin_amd64.zip";
-      sha256 = "141zzfwrjdjv8ymrdc4mxs2f4cphdir4xjaa40s571ri38in33zh";
+      sha256 = "0wzmah542bhyvrm9brhrx7drjyzan8vxhqnm0gjak5wlrcnf2dvx";
     };
     aarch64-linux = fetchurl {
       url = "${base}/vault_${version}_linux_arm64.zip";
-      sha256 = "1plrmmy86zb2ij49dk2mwn364i2n83ch4gjz5pln2d4wjx21gpaq";
+      sha256 = "0cs56ircad2z2msqgb0l5h53cwmwybi5rs4y2jigz4rq4ndx9f9b";
     };
   };
 
diff --git a/pkgs/tools/system/wslu/default.nix b/pkgs/tools/system/wslu/default.nix
new file mode 100644
index 00000000000..cab427e1657
--- /dev/null
+++ b/pkgs/tools/system/wslu/default.nix
@@ -0,0 +1,23 @@
+{ lib, stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "wslu";
+  version = "3.2.3";
+
+  src = fetchFromGitHub {
+    owner = "wslutilities";
+    repo = pname;
+    rev = "v${version}";
+    sha512 = "2mkvdl65hnwflmi635ngmsm1aqsablz2gypn3a1adby1mwwdc57xym8kkg5359g3mvksac6n43ji2z48lfpvlay64z793q2v0z6by02";
+  };
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with lib; {
+    description = "A collection of utilities for Windows 10 Linux Subsystems";
+    homepage = "https://github.com/wslutilities/wslu";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ jamiemagee ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/typesetting/htmldoc/default.nix b/pkgs/tools/typesetting/htmldoc/default.nix
index 740d16c73df..aaea9090b72 100644
--- a/pkgs/tools/typesetting/htmldoc/default.nix
+++ b/pkgs/tools/typesetting/htmldoc/default.nix
@@ -1,20 +1,23 @@
-{ lib, stdenv, fetchFromGitHub, zlib, libpng, SystemConfiguration, Foundation }:
+{ lib, stdenv, fetchFromGitHub, zlib, libpng, libjpeg, SystemConfiguration, Foundation, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "htmldoc";
-  version = "1.9.11";
+  version = "1.9.12";
   src = fetchFromGitHub {
     owner = "michaelrsweet";
     repo = "htmldoc";
     rev = "v${version}";
-    sha256 = "0660829zjfdm6vzx14z7gvsfipsb7h0z74gbkyp2ncg3g2432s4n";
+    sha256 = "1dqima0g3j301wwzjxdhzk5pvfj724rl615gf8ssxxajfnid1gl0";
   };
-  buildInputs = [ zlib libpng ]
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ zlib libpng libjpeg ]
     ++ lib.optionals stdenv.isDarwin [ Foundation SystemConfiguration ];
 
   meta = with lib; {
     description = "Converts HTML files to PostScript and PDF";
     homepage    = "https://michaelrsweet.github.io/htmldoc";
+    changelog   = "https://github.com/michaelrsweet/htmldoc/releases/tag/v${version}";
     license     = licenses.gpl2Only;
     maintainers = with maintainers; [ shanemikel ];
     platforms   = platforms.unix;
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 779f97ea468..f402787031a 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -115,6 +115,7 @@ mapAliases ({
   clangAnalyzer = clang-analyzer;  # added 2015-02-20
   clawsMail = claws-mail; # added 2016-04-29
   clutter_gtk = clutter-gtk; # added 2018-02-25
+  cmakeWithQt4Gui = throw "cmakeWithQt4Gui has been removed in favor of cmakeWithGui (Qt 5)"; # added 2021-05
   codimd = hedgedoc; # added 2020-11-29
   compton = picom; # added 2019-12-02
   compton-git = compton; # added 2019-05-20
@@ -502,6 +503,7 @@ mapAliases ({
   opencascade_oce = opencascade; # added 2018-04-25
   oblogout = throw "oblogout has been removed from nixpkgs, as it's archived upstream."; # added 2019-12-10
   opencl-icd = ocl-icd; # added 2017-01-20
+  openconnect_pa = throw "openconnect_pa fork has been discontinued, support for GlobalProtect is now available in openconnect"; # added 2021-05-21
   openexr_ctl = ctl; # added 2018-04-25
   openisns = open-isns; # added 2020-01-28
   openjpeg_1 = throw "openjpeg_1 has been removed, use openjpeg_2 instead"; # added 2021-01-24
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 585df26d2bb..d428aa67201 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1297,6 +1297,8 @@ in
 
   bunny = callPackage ../tools/package-management/bunny { };
 
+  bunyan-rs = callPackage ../development/tools/bunyan-rs { };
+
   callaudiod = callPackage ../applications/audio/callaudiod { };
 
   calls = callPackage ../applications/networking/calls { };
@@ -1900,6 +1902,8 @@ in
 
   behdad-fonts = callPackage ../data/fonts/behdad-fonts { };
 
+  bfetch = callPackage ../tools/misc/bfetch { };
+
   bless = callPackage ../applications/editors/bless { };
 
   blink1-tool = callPackage ../tools/misc/blink1-tool { };
@@ -4005,11 +4009,15 @@ in
 
   diff-so-fancy = callPackage ../applications/version-management/git-and-tools/diff-so-fancy { };
 
-  diffoscope = callPackage ../tools/misc/diffoscope {
+  diffoscopeMinimal = callPackage ../tools/misc/diffoscope {
     inherit (androidenv.androidPkgs_9_0) build-tools;
     jdk = jdk8;
   };
 
+  diffoscope = diffoscopeMinimal.override {
+    enableBloat = true;
+  };
+
   diffr = callPackage ../tools/text/diffr {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -6085,7 +6093,9 @@ in
 
   ldc = callPackage ../development/compilers/ldc { };
 
-  ldgallery = callPackage ../tools/graphics/ldgallery { };
+  ldgallery = callPackage ../tools/graphics/ldgallery {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   lbreakout2 = callPackage ../games/lbreakout2 { };
 
@@ -7396,6 +7406,8 @@ in
 
   opensp = callPackage ../tools/text/sgml/opensp { };
 
+  opentrack = libsForQt5.callPackage ../applications/misc/opentrack { };
+
   opentracker = callPackage ../applications/networking/p2p/opentracker { };
 
   opentsdb = callPackage ../tools/misc/opentsdb {};
@@ -9407,10 +9419,6 @@ in
     SDL = SDL_sixel;
   };
 
-  openconnect_pa = callPackage ../tools/networking/openconnect_pa {
-    openssl = null;
-  };
-
   openconnect = openconnect_gnutls;
 
   openconnect_openssl = callPackage ../tools/networking/openconnect {
@@ -9767,6 +9775,8 @@ in
 
   woeusb = callPackage ../tools/misc/woeusb { };
 
+  wslu = callPackage ../tools/system/wslu { };
+
   chase = callPackage ../tools/system/chase { };
 
   wicd = callPackage ../tools/networking/wicd { };
@@ -12943,7 +12953,6 @@ in
   cmakeCurses = cmake.override { useNcurses = true; };
 
   cmakeWithGui = cmakeCurses.override { withQt5 = true; };
-  cmakeWithQt4Gui = cmakeCurses.override { useQt4 = true; };
 
   cmake-format = python3Packages.callPackage ../development/tools/cmake-format { };
 
@@ -13212,6 +13221,8 @@ in
 
   gi-docgen = callPackage ../development/tools/documentation/gi-docgen { };
 
+  git-aggregator = callPackage ../development/tools/git-aggregator { };
+
   github-release = callPackage ../development/tools/github/github-release { };
 
   global = callPackage ../development/tools/misc/global { };
@@ -27670,6 +27681,8 @@ in
 
   ytcc = callPackage ../tools/networking/ytcc { };
 
+  ytmdesktop = callPackage ../applications/audio/ytmdesktop { };
+
   zam-plugins = callPackage ../applications/audio/zam-plugins { };
 
   zanshin = libsForQt5.callPackage ../applications/office/zanshin {
diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix
new file mode 100644
index 00000000000..09773441e33
--- /dev/null
+++ b/pkgs/top-level/python-aliases.nix
@@ -0,0 +1,39 @@
+lib: self: super:
+
+with self;
+
+let
+  # Removing recurseForDerivation prevents derivations of aliased attribute
+  # set to appear while listing all the packages available.
+  removeRecurseForDerivations = alias: with lib;
+      if alias.recurseForDerivations or false then
+            removeAttrs alias ["recurseForDerivations"]
+                else alias;
+
+  # Disabling distribution prevents top-level aliases for non-recursed package
+  # sets from building on Hydra.
+  removeDistribute = alias: with lib;
+    if isDerivation alias then
+      dontDistribute alias
+    else alias;
+
+  # Make sure that we are not shadowing something from
+  # python-packages.nix.
+  checkInPkgs = n: alias: if builtins.hasAttr n super
+                          then throw "Alias ${n} is still in python-packages.nix"
+                          else alias;
+
+  mapAliases = aliases:
+    lib.mapAttrs (n: alias: removeDistribute
+                             (removeRecurseForDerivations
+                              (checkInPkgs n alias)))
+                     aliases;
+in
+
+  ### Deprecated aliases - for backward compatibility
+
+mapAliases ({
+  smart_open = smart-open; # added 2021-03-14
+  google_api_python_client = google-api-python-client; # added 2021-03-19
+  googleapis_common_protos = googleapis-common-protos; # added 2021-03-19
+})
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index dc42a39132a..2661bef8ed5 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -7684,7 +7684,7 @@ in {
 
   sly = callPackage ../development/python-modules/sly { };
 
-  smart_open = callPackage ../development/python-modules/smart_open { };
+  smart-open = callPackage ../development/python-modules/smart-open { };
 
   smartypants = callPackage ../development/python-modules/smartypants { };
 
@@ -8289,6 +8289,8 @@ in {
 
   toggl-cli = callPackage ../development/python-modules/toggl-cli { };
 
+  token-bucket = callPackage ../development/python-modules/token-bucket { };
+
   tokenizers = toPythonModule (callPackage ../development/python-modules/tokenizers { });
 
   tokenize-rt = toPythonModule (callPackage ../development/python-modules/tokenize-rt { });
diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix
index d1f1c1c2997..123bc1ead18 100644
--- a/pkgs/top-level/ruby-packages.nix
+++ b/pkgs/top-level/ruby-packages.nix
@@ -2226,11 +2226,13 @@
     groups = ["default"];
     platforms = [];
     source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0rl4ic5pzvrpgd42z0c1s2n3j39c9znksblxxvmhkzrc0ckyg2cm";
-      type = "gem";
+      url = "https://github.com/akr/ruby-terminfo";
+      rev = "8aaa20b15fcf922239c200a1cccbc8853c397bb4";
+      fetchSubmodules = false;
+      sha256 = "1ak85bmnaqwpyx07wb6wfa2cr06gb30gnmv9knijnsbv4q583xlz";
+      type = "git";
     };
-    version = "0.1.1";
+    version = "0.2";
   };
   ruby-vips = {
     dependencies = ["ffi"];