summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2021-05-10 09:45:47 +0200
committerJan Tojnar <jtojnar@gmail.com>2021-05-10 09:45:47 +0200
commit594a8859129863e62326980556e3b5a6ee5252cb (patch)
tree91631f16fd8d92bb4f3dae42cf34b5d4021f5a47 /pkgs
parent680b33fe37d4b6fd0bd8fe596ed438c88bfb3637 (diff)
parentf4d69ad1f211b18f93d3b39d20d9d3c5a5b5fb71 (diff)
Merge branch 'staging-next' into staging
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix4
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix4
-rw-r--r--pkgs/applications/audio/dragonfly-reverb/default.nix10
-rw-r--r--pkgs/applications/audio/mamba/default.nix7
-rw-r--r--pkgs/applications/audio/squeezelite/default.nix4
-rw-r--r--pkgs/applications/blockchains/bitcoin-gold.nix6
-rw-r--r--pkgs/applications/blockchains/bitcoin.nix5
-rw-r--r--pkgs/applications/blockchains/ergo/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/macport.nix8
-rw-r--r--pkgs/applications/editors/ghostwriter/default.nix4
-rw-r--r--pkgs/applications/graphics/feh/default.nix4
-rw-r--r--pkgs/applications/graphics/pqiv/default.nix8
-rw-r--r--pkgs/applications/misc/blender/default.nix2
-rw-r--r--pkgs/applications/misc/corectrl/default.nix4
-rw-r--r--pkgs/applications/misc/flavours/default.nix5
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--pkgs/applications/misc/heimer/default.nix4
-rw-r--r--pkgs/applications/misc/moonlight-qt/default.nix4
-rw-r--r--pkgs/applications/misc/nimbo/default.nix28
-rw-r--r--pkgs/applications/misc/tuir/default.nix2
-rw-r--r--pkgs/applications/misc/visidata/default.nix4
-rw-r--r--pkgs/applications/misc/xplr/default.nix10
-rw-r--r--pkgs/applications/networking/3proxy/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/palemoon/default.nix4
-rw-r--r--pkgs/applications/networking/cawbird/default.nix16
-rw-r--r--pkgs/applications/networking/cluster/fluxcd/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helmfile/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helmsman/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/istioctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubecfg/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--pkgs/applications/networking/flexget/default.nix5
-rw-r--r--pkgs/applications/networking/hydroxide/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/pantalaimon/default.nix14
-rw-r--r--pkgs/applications/networking/mailreaders/himalaya/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/opentracker/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/transmission/default.nix5
-rw-r--r--pkgs/applications/office/paperwork/paperwork-gtk.nix2
-rw-r--r--pkgs/applications/office/timeline/default.nix89
-rw-r--r--pkgs/applications/science/logic/coq2html/default.nix25
-rw-r--r--pkgs/applications/science/logic/poly/default.nix4
-rw-r--r--pkgs/applications/science/math/gretl/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix4
-rw-r--r--pkgs/applications/version-management/git-repo/default.nix4
-rw-r--r--pkgs/applications/version-management/monotone/default.nix40
-rw-r--r--pkgs/applications/video/droidcam/default.nix4
-rw-r--r--pkgs/applications/video/filebot/default.nix4
-rw-r--r--pkgs/applications/video/jftui/default.nix4
-rw-r--r--pkgs/applications/video/kodi-packages/netflix/default.nix4
-rw-r--r--pkgs/applications/video/kooha/default.nix4
-rw-r--r--pkgs/applications/video/prism/default.nix22
-rw-r--r--pkgs/applications/virtualization/containerd/default.nix4
-rw-r--r--pkgs/applications/window-managers/cardboard/default.nix115
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix7
-rw-r--r--pkgs/data/misc/fedora-backgrounds/default.nix11
-rw-r--r--pkgs/data/misc/fedora-backgrounds/f34-fix-xfce-path.patch13
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/data/themes/plano/default.nix4
-rw-r--r--pkgs/desktops/gnome/extensions/disable-unredirect/default.nix6
-rw-r--r--pkgs/development/compilers/gleam/default.nix6
-rw-r--r--pkgs/development/compilers/ispc/default.nix6
-rw-r--r--pkgs/development/compilers/ponyc/pony-corral.nix4
-rw-r--r--pkgs/development/compilers/spirv-llvm-translator/default.nix3
-rw-r--r--pkgs/development/compilers/zig/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-arm.nix71
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix113
-rw-r--r--pkgs/development/haskell-modules/configuration-darwin.nix164
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml13
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml23
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml7
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix167
-rw-r--r--pkgs/development/haskell-modules/default.nix31
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1300
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix2
-rw-r--r--pkgs/development/idris-modules/data.nix25
-rw-r--r--pkgs/development/idris-modules/default.nix2
-rw-r--r--pkgs/development/interpreters/cling/default.nix5
-rw-r--r--pkgs/development/interpreters/falcon/default.nix12
-rw-r--r--pkgs/development/libraries/apache-activemq/default.nix4
-rw-r--r--pkgs/development/libraries/avahi/default.nix6
-rw-r--r--pkgs/development/libraries/belle-sip/default.nix4
-rw-r--r--pkgs/development/libraries/bzrtp/default.nix4
-rw-r--r--pkgs/development/libraries/fstrm/default.nix4
-rw-r--r--pkgs/development/libraries/glfw/3.x.nix4
-rw-r--r--pkgs/development/libraries/kronosnet/default.nix4
-rw-r--r--pkgs/development/libraries/libdigidocpp/default.nix4
-rw-r--r--pkgs/development/libraries/libjwt/default.nix4
-rw-r--r--pkgs/development/libraries/libmaxminddb/default.nix4
-rw-r--r--pkgs/development/libraries/libmodulemd/default.nix4
-rw-r--r--pkgs/development/libraries/libsolv/default.nix4
-rw-r--r--pkgs/development/libraries/libwpe/default.nix4
-rw-r--r--pkgs/development/libraries/libxlsxwriter/default.nix4
-rw-r--r--pkgs/development/libraries/matio/default.nix4
-rw-r--r--pkgs/development/libraries/opencl-clang/default.nix2
-rw-r--r--pkgs/development/libraries/pipewire/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.12/default.nix5
-rw-r--r--pkgs/development/libraries/qt-5/5.14/default.nix5
-rw-r--r--pkgs/development/libraries/qt-5/5.15/default.nix5
-rw-r--r--pkgs/development/misc/umr/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/atd/default.nix6
-rw-r--r--pkgs/development/php-packages/phpcbf/default.nix4
-rw-r--r--pkgs/development/php-packages/phpcs/default.nix4
-rw-r--r--pkgs/development/python-modules/Markups/default.nix3
-rw-r--r--pkgs/development/python-modules/aiohttp-socks/default.nix8
-rw-r--r--pkgs/development/python-modules/aiopg/default.nix42
-rw-r--r--pkgs/development/python-modules/amqtt/default.nix64
-rw-r--r--pkgs/development/python-modules/autopep8/default.nix4
-rw-r--r--pkgs/development/python-modules/backports-zoneinfo/default.nix39
-rw-r--r--pkgs/development/python-modules/blist/default.nix6
-rw-r--r--pkgs/development/python-modules/bpython/default.nix22
-rw-r--r--pkgs/development/python-modules/buildbot/worker.nix6
-rw-r--r--pkgs/development/python-modules/certbot/default.nix4
-rw-r--r--pkgs/development/python-modules/crate/default.nix3
-rw-r--r--pkgs/development/python-modules/csvw/default.nix8
-rw-r--r--pkgs/development/python-modules/curtsies/default.nix16
-rw-r--r--pkgs/development/python-modules/cwcwidth/default.nix34
-rw-r--r--pkgs/development/python-modules/dask-image/default.nix4
-rw-r--r--pkgs/development/python-modules/eve/default.nix5
-rw-r--r--pkgs/development/python-modules/exchangelib/default.nix8
-rw-r--r--pkgs/development/python-modules/graphite-web/default.nix6
-rw-r--r--pkgs/development/python-modules/hg-evolve/default.nix6
-rw-r--r--pkgs/development/python-modules/humblewx/default.nix42
-rw-r--r--pkgs/development/python-modules/hyppo/default.nix10
-rw-r--r--pkgs/development/python-modules/i2c-tools/default.nix21
-rw-r--r--pkgs/development/python-modules/ipympl/default.nix10
-rw-r--r--pkgs/development/python-modules/jupytext/default.nix43
-rw-r--r--pkgs/development/python-modules/ldaptor/19.nix36
-rw-r--r--pkgs/development/python-modules/linkify-it-py/default.nix34
-rw-r--r--pkgs/development/python-modules/liquidctl/default.nix33
-rw-r--r--pkgs/development/python-modules/localzone/default.nix4
-rw-r--r--pkgs/development/python-modules/markdown-it-py/default.nix31
-rw-r--r--pkgs/development/python-modules/matrix-nio/default.nix31
-rw-r--r--pkgs/development/python-modules/mcstatus/default.nix4
-rw-r--r--pkgs/development/python-modules/mdit-py-plugins/default.nix35
-rw-r--r--pkgs/development/python-modules/mlrose/default.nix34
-rw-r--r--pkgs/development/python-modules/msal/default.nix12
-rw-r--r--pkgs/development/python-modules/mwoauth/default.nix22
-rw-r--r--pkgs/development/python-modules/myjwt/default.nix21
-rw-r--r--pkgs/development/python-modules/myjwt/pinning.patch21
-rw-r--r--pkgs/development/python-modules/nassl/default.nix27
-rw-r--r--pkgs/development/python-modules/oauthenticator/default.nix20
-rw-r--r--pkgs/development/python-modules/openrazer/common.nix6
-rw-r--r--pkgs/development/python-modules/peewee/default.nix4
-rw-r--r--pkgs/development/python-modules/pika/default.nix3
-rw-r--r--pkgs/development/python-modules/pillow-simd/default.nix9
-rw-r--r--pkgs/development/python-modules/plexapi/default.nix4
-rw-r--r--pkgs/development/python-modules/pomegranate/default.nix30
-rw-r--r--pkgs/development/python-modules/privacyidea/default.nix8
-rw-r--r--pkgs/development/python-modules/pulsectl/default.nix9
-rw-r--r--pkgs/development/python-modules/pyaftership/default.nix24
-rw-r--r--pkgs/development/python-modules/pychannels/default.nix4
-rw-r--r--pkgs/development/python-modules/pyexcel-xls/default.nix6
-rw-r--r--pkgs/development/python-modules/pyflume/default.nix16
-rw-r--r--pkgs/development/python-modules/pygmt/default.nix15
-rw-r--r--pkgs/development/python-modules/pyialarm/default.nix37
-rw-r--r--pkgs/development/python-modules/pyjwt/default.nix41
-rw-r--r--pkgs/development/python-modules/pykerberos/default.nix5
-rw-r--r--pkgs/development/python-modules/pylast/default.nix4
-rw-r--r--pkgs/development/python-modules/pylint-django/default.nix10
-rw-r--r--pkgs/development/python-modules/pysvg-py3/default.nix33
-rw-r--r--pkgs/development/python-modules/pytest-ordering/default.nix1
-rw-r--r--pkgs/development/python-modules/pytest-regressions/default.nix59
-rw-r--r--pkgs/development/python-modules/python-binance/default.nix4
-rw-r--r--pkgs/development/python-modules/python-miio/default.nix7
-rw-r--r--pkgs/development/python-modules/python-socks/default.nix22
-rw-r--r--pkgs/development/python-modules/python-vlc/default.nix19
-rw-r--r--pkgs/development/python-modules/roombapy/default.nix31
-rw-r--r--pkgs/development/python-modules/selenium/default.nix5
-rw-r--r--pkgs/development/python-modules/slixmpp/default.nix4
-rw-r--r--pkgs/development/python-modules/snowflake-connector-python/default.nix34
-rw-r--r--pkgs/development/python-modules/sslyze/default.nix39
-rw-r--r--pkgs/development/python-modules/tld/default.nix6
-rw-r--r--pkgs/development/python-modules/tls-parser/default.nix6
-rw-r--r--pkgs/development/python-modules/uc-micro-py/default.nix31
-rw-r--r--pkgs/development/python-modules/unpaddedbase64/default.nix10
-rw-r--r--pkgs/development/python-modules/uvloop/default.nix9
-rw-r--r--pkgs/development/python-modules/wordfreq/default.nix35
-rw-r--r--pkgs/development/tools/analysis/codeql/default.nix4
-rw-r--r--pkgs/development/tools/bazelisk/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/rebar3/default.nix78
-rw-r--r--pkgs/development/tools/build-managers/rebar3/rebar-deps.nix58
-rw-r--r--pkgs/development/tools/conftest/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/buildkite-agent/default.nix7
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/database/liquibase/default.nix4
-rw-r--r--pkgs/development/tools/doctl/default.nix4
-rw-r--r--pkgs/development/tools/kustomize/kustomize-sops.nix6
-rw-r--r--pkgs/development/tools/misc/creduce/default.nix6
-rw-r--r--pkgs/development/tools/misc/cvise/default.nix6
-rw-r--r--pkgs/development/tools/misc/global/default.nix4
-rw-r--r--pkgs/development/tools/misc/nimlsp/default.nix4
-rw-r--r--pkgs/development/tools/rust/cargo-binutils/default.nix31
-rw-r--r--pkgs/development/tools/rust/cargo-fuzz/default.nix6
-rw-r--r--pkgs/development/web/flyctl/default.nix4
-rw-r--r--pkgs/games/assaultcube/default.nix2
-rw-r--r--pkgs/games/openttd/default.nix4
-rw-r--r--pkgs/games/super-tux-kart/default.nix15
-rw-r--r--pkgs/misc/lilypond/default.nix4
-rw-r--r--pkgs/misc/vim-plugins/generated.nix198
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names1
-rw-r--r--pkgs/os-specific/linux/bcc/default.nix8
-rw-r--r--pkgs/os-specific/linux/bpftrace/default.nix4
-rw-r--r--pkgs/os-specific/linux/eventstat/default.nix4
-rw-r--r--pkgs/os-specific/linux/i2c-tools/default.nix19
-rw-r--r--pkgs/os-specific/linux/kernel/hardened/patches.json30
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.10.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.11.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-lqx.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-5.10.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-5.4.nix6
-rw-r--r--pkgs/os-specific/linux/klibc/default.nix4
-rw-r--r--pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh57
-rw-r--r--pkgs/os-specific/linux/openrazer/driver.nix8
-rw-r--r--pkgs/os-specific/linux/rtl8812au/default.nix15
-rw-r--r--pkgs/servers/atlassian/confluence.nix4
-rw-r--r--pkgs/servers/atlassian/jira.nix4
-rw-r--r--pkgs/servers/bazarr/default.nix4
-rw-r--r--pkgs/servers/beanstalkd/default.nix6
-rw-r--r--pkgs/servers/blockbook/default.nix5
-rw-r--r--pkgs/servers/gerbera/default.nix4
-rw-r--r--pkgs/servers/home-assistant/default.nix2
-rw-r--r--pkgs/servers/http/apache-httpd/2.4.nix4
-rw-r--r--pkgs/servers/http/apt-cacher-ng/default.nix4
-rw-r--r--pkgs/servers/http/nginx/generic.nix1
-rw-r--r--pkgs/servers/lidarr/default.nix4
-rw-r--r--pkgs/servers/misc/navidrome/default.nix10
-rw-r--r--pkgs/servers/nosql/victoriametrics/default.nix6
-rw-r--r--pkgs/servers/radarr/default.nix8
-rw-r--r--pkgs/servers/sickbeard/sickgear.nix4
-rw-r--r--pkgs/servers/sql/mariadb/default.nix4
-rw-r--r--pkgs/servers/sql/mariadb/galera/default.nix39
-rw-r--r--pkgs/servers/web-apps/galene/default.nix6
-rw-r--r--pkgs/servers/web-apps/rss-bridge/default.nix8
-rw-r--r--pkgs/tools/admin/acme.sh/default.nix4
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix6
-rw-r--r--pkgs/tools/admin/lxd/default.nix6
-rw-r--r--pkgs/tools/admin/pebble/default.nix5
-rw-r--r--pkgs/tools/backup/bacula/default.nix4
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/bees/default.nix11
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix4
-rw-r--r--pkgs/tools/graphics/agi/default.nix4
-rw-r--r--pkgs/tools/graphics/gmic/default.nix4
-rw-r--r--pkgs/tools/graphics/timg/default.nix4
-rw-r--r--pkgs/tools/inputmethods/fcitx-engines/fcitx-anthy/default.nix4
-rw-r--r--pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix4
-rw-r--r--pkgs/tools/misc/birdfont/default.nix4
-rw-r--r--pkgs/tools/misc/czkawka/default.nix6
-rw-r--r--pkgs/tools/misc/ddccontrol/default.nix6
-rw-r--r--pkgs/tools/misc/debootstrap/default.nix4
-rw-r--r--pkgs/tools/misc/dua/default.nix6
-rw-r--r--pkgs/tools/misc/esphome/default.nix4
-rw-r--r--pkgs/tools/misc/ffsend/default.nix6
-rw-r--r--pkgs/tools/misc/fselect/default.nix6
-rw-r--r--pkgs/tools/misc/gh-ost/default.nix4
-rw-r--r--pkgs/tools/misc/ipbt/default.nix4
-rw-r--r--pkgs/tools/networking/clash/default.nix6
-rw-r--r--pkgs/tools/networking/croc/default.nix6
-rw-r--r--pkgs/tools/networking/findomain/default.nix6
-rw-r--r--pkgs/tools/networking/miniupnpd/default.nix5
-rw-r--r--pkgs/tools/networking/openssh/common.nix5
-rw-r--r--pkgs/tools/package-management/createrepo_c/default.nix20
-rw-r--r--pkgs/tools/package-management/createrepo_c/fix-bash-completion-path.patch22
-rw-r--r--pkgs/tools/package-management/createrepo_c/fix-python-install-path.patch14
-rw-r--r--pkgs/tools/security/doppler/default.nix4
-rw-r--r--pkgs/tools/security/ipscan/default.nix4
-rw-r--r--pkgs/tools/system/bottom/default.nix1
-rw-r--r--pkgs/tools/text/chroma/default.nix2
-rw-r--r--pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix8
-rw-r--r--pkgs/top-level/all-packages.nix20
-rw-r--r--pkgs/top-level/python-packages.nix33
-rw-r--r--pkgs/top-level/python2-packages.nix4
-rw-r--r--pkgs/top-level/release-haskell.nix368
280 files changed, 3512 insertions, 1961 deletions
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
index fca3eaf223e9f..b1625868933b8 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, alsaLib, bzip2, cairo, dpkg, freetype, gdk-pixbuf
 , wrapGAppsHook, gtk2, gtk3, harfbuzz, jdk, lib, xorg
-, libbsd, libjack2, libpng, ffmpeg_3
+, libbsd, libjack2, libpng, ffmpeg
 , libxkbcommon
 , makeWrapper, pixman, autoPatchelfHook
 , xdg-utils, zenity, zlib }:
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   ];
 
   binPath = lib.makeBinPath [
-    xdg-utils zenity ffmpeg_3
+    xdg-utils zenity ffmpeg
   ];
 
   installPhase = ''
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
index 28b5ef438e22e..93fa00b827ba6 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, alsaLib, cairo, dpkg, freetype
 , gdk-pixbuf, glib, gtk3, lib, xorg
-, libglvnd, libjack2, ffmpeg_3
+, libglvnd, libjack2, ffmpeg
 , libxkbcommon, xdg-utils, zlib, pulseaudio
 , wrapGAppsHook, makeWrapper }:
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   ];
 
   binPath = lib.makeBinPath [
-    xdg-utils ffmpeg_3
+    xdg-utils ffmpeg
   ];
 
   ldLibraryPath = lib.strings.makeLibraryPath buildInputs;
diff --git a/pkgs/applications/audio/dragonfly-reverb/default.nix b/pkgs/applications/audio/dragonfly-reverb/default.nix
index 4f3d2a6a4dcdc..a07dca699d793 100644
--- a/pkgs/applications/audio/dragonfly-reverb/default.nix
+++ b/pkgs/applications/audio/dragonfly-reverb/default.nix
@@ -2,17 +2,17 @@
 
 stdenv.mkDerivation rec {
   pname = "dragonfly-reverb";
-  version = "3.2.1";
+  version = "3.2.5";
 
   src = fetchFromGitHub {
     owner = "michaelwillis";
     repo = "dragonfly-reverb";
     rev = version;
-    sha256 = "0vfm2510shah67k87mdyar4wr4vqwii59y9lqfhwm6blxparkrqa";
+    sha256 = "14kia9wjs0nqfx4psnr3vf4x6hihkf80gb0mjzmdnnnk4cnrdydm";
     fetchSubmodules = true;
   };
 
-  patchPhase = ''
+  postPatch = ''
     patchShebangs dpf/utils/generate-ttl.sh
   '';
 
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   installPhase = ''
+    runHook preInstall
     mkdir -p $out/bin
     mkdir -p $out/lib/lv2/
     mkdir -p $out/lib/vst/
@@ -31,13 +32,14 @@ stdenv.mkDerivation rec {
       cp -a $bin-vst.so $out/lib/vst/
       cp -a $bin.lv2/   $out/lib/lv2/ ;
     done
+    runHook postInstall
   '';
 
   meta = with lib; {
     homepage = "https://github.com/michaelwillis/dragonfly-reverb";
     description = "A hall-style reverb based on freeverb3 algorithms";
     maintainers = [ maintainers.magnetophon ];
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     platforms = ["x86_64-linux"];
   };
 }
diff --git a/pkgs/applications/audio/mamba/default.nix b/pkgs/applications/audio/mamba/default.nix
index 022b41007c145..04d5bb0a6dd93 100644
--- a/pkgs/applications/audio/mamba/default.nix
+++ b/pkgs/applications/audio/mamba/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , fetchFromGitHub
 , pkg-config
+, xxd
 , cairo
 , fluidsynth
 , libX11
@@ -13,17 +14,17 @@
 
 stdenv.mkDerivation rec {
   pname = "mamba";
-  version = "1.8";
+  version = "2.2";
 
   src = fetchFromGitHub {
     owner = "brummer10";
     repo = "Mamba";
     rev = "v${version}";
-    sha256 = "049gvdvvv3hkh1b47h0bia02g1p71agwh6g7q0n4yxz4d81b8kha";
+    sha256 = "1885qxyfkpslzk0aaaaws0x73b10h9nbr04jkk7xhkya25gf280m";
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config xxd ];
   buildInputs = [ cairo fluidsynth libX11 libjack2 alsaLib liblo libsigcxx libsmf ];
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/applications/audio/squeezelite/default.nix b/pkgs/applications/audio/squeezelite/default.nix
index 6bb3bef8a50c8..600ba95947ab1 100644
--- a/pkgs/applications/audio/squeezelite/default.nix
+++ b/pkgs/applications/audio/squeezelite/default.nix
@@ -2,7 +2,7 @@
 , alsaLib, flac, libmad, libvorbis, mpg123
 , dsdSupport ? true
 , faad2Support ? true, faad2
-, ffmpegSupport ? true, ffmpeg_3
+, ffmpegSupport ? true, ffmpeg
 , opusSupport ? true, opusfile
 , resampleSupport ? true, soxr
 , sslSupport ? true, openssl
@@ -35,7 +35,7 @@ in stdenv.mkDerivation {
 
   buildInputs = [ alsaLib flac libmad libvorbis mpg123 ]
     ++ optional faad2Support faad2
-    ++ optional ffmpegSupport ffmpeg_3
+    ++ optional ffmpegSupport ffmpeg
     ++ optional opusSupport opusfile
     ++ optional resampleSupport soxr
     ++ optional sslSupport openssl;
diff --git a/pkgs/applications/blockchains/bitcoin-gold.nix b/pkgs/applications/blockchains/bitcoin-gold.nix
index 7ff2804ba799a..5d6775f729aad 100644
--- a/pkgs/applications/blockchains/bitcoin-gold.nix
+++ b/pkgs/applications/blockchains/bitcoin-gold.nix
@@ -2,6 +2,7 @@
 , fetchFromGitHub
 , openssl
 , boost
+, libb2
 , libevent
 , autoreconfHook
 , db4
@@ -21,13 +22,13 @@ with lib;
 stdenv.mkDerivation rec {
 
   pname = "bitcoin" + toString (optional (!withGui) "d") + "-gold";
-  version = "0.15.2";
+  version = "0.17.3";
 
   src = fetchFromGitHub {
     owner = "BTCGPU";
     repo = "BTCGPU";
     rev = "v${version}";
-    sha256 = "0grd1cd8d2nsrxl27la85kcan09z73fn70ncr9km4iccaj5pg12h";
+    sha256 = "sha256-1tFoUNsCPJkHSmNRl5gE3n2EQD6RZSry1zIM5hiTzEI=";
   };
 
   nativeBuildInputs = [
@@ -45,6 +46,7 @@ stdenv.mkDerivation rec {
     db4
     zeromq
     libsodium
+    libb2
   ] ++ optionals withGui [
     qtbase
     qttools
diff --git a/pkgs/applications/blockchains/bitcoin.nix b/pkgs/applications/blockchains/bitcoin.nix
index 1f222477ab24a..162a5ddee1a3e 100644
--- a/pkgs/applications/blockchains/bitcoin.nix
+++ b/pkgs/applications/blockchains/bitcoin.nix
@@ -16,6 +16,7 @@
 , python3
 , qrencode
 , libevent
+, nixosTests
 , withGui
 , withWallet ? true
 }:
@@ -81,6 +82,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru.tests = {
+    smoke-test = nixosTests.bitcoind;
+  };
+
   meta = {
     description = "Peer-to-peer electronic cash system";
     longDescription = ''
diff --git a/pkgs/applications/blockchains/ergo/default.nix b/pkgs/applications/blockchains/ergo/default.nix
index 597db2ae8ffb0..d4210c83bb27b 100644
--- a/pkgs/applications/blockchains/ergo/default.nix
+++ b/pkgs/applications/blockchains/ergo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ergo";
-  version = "4.0.8";
+  version = "4.0.9";
 
   src = fetchurl {
     url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
-    sha256 = "sha256-swU4CnX2BxL3ILH/sXux8ZHMo5nAPLQOIiWmr4C8BOQ=";
+    sha256 = "sha256-FstAKUZVKW9U6QTqqCEDybvbBl+0H9qVHqFMPubdDpk=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/editors/emacs/macport.nix b/pkgs/applications/editors/emacs/macport.nix
index b8fcc678faa1f..8c395219aeb3e 100644
--- a/pkgs/applications/editors/emacs/macport.nix
+++ b/pkgs/applications/editors/emacs/macport.nix
@@ -5,20 +5,20 @@
 
 stdenv.mkDerivation rec {
   pname = "emacs";
-  version = "27.1";
+  version = "27.2";
 
   emacsName = "emacs-${version}";
-  macportVersion = "8.0";
+  macportVersion = "8.2";
   name = "emacs-mac-${version}-${macportVersion}";
 
   src = fetchurl {
     url = "mirror://gnu/emacs/${emacsName}.tar.xz";
-    sha256 = "0h9f2wpmp6rb5rfwvqwv1ia1nw86h74p7hnz3vb3gjazj67i4k2a";
+    sha256 = "1ff182gjw9wqsbx1kj5gl2r5pbqhp4ar54g04j33fgz6g17cr9xl";
   };
 
   macportSrc = fetchurl {
     url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${emacsName}-mac-${macportVersion}.tar.gz";
-    sha256 = "0rjk82k9qp1g701pfd4f0q2myzvsnp9q8xzphlxwi5yzwbs91kjq";
+    sha256 = "1bgm2g3ky7rkj1l27wnmyzqsqxzjng7y9bf72ym37wiyhyi2a9za";
   };
 
   hiresSrc = fetchurl {
diff --git a/pkgs/applications/editors/ghostwriter/default.nix b/pkgs/applications/editors/ghostwriter/default.nix
index 2249009af777d..4d6eafaa0f0d1 100644
--- a/pkgs/applications/editors/ghostwriter/default.nix
+++ b/pkgs/applications/editors/ghostwriter/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "ghostwriter";
-  version = "2.0.0-rc5";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "wereturtle";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Gc0/AHxxJd5Cq3dBQ0Xy2TF78CBmQFYUzm4s7q1aHEE=";
+    sha256 = "sha256-5O2W7ZQeDkNzwi6t9MfNbv4fmNvak1AcMnzJTE1F9L8=";
   };
 
   nativeBuildInputs = [ qmake pkg-config qttools ];
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 40ae02356063f..139f29c315061 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -7,11 +7,11 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "feh";
-  version = "3.6.3";
+  version = "3.7";
 
   src = fetchurl {
     url = "https://feh.finalrewind.org/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-Q3Qg838RYU4AjQZuKjve/Px4FEyCEpmLK6zdXSHqI7Q=";
+    sha256 = "0hdvlrlpjxvmhnjvr32nxgpsw0366higg0gh9h37fxrvdh3v3k87";
   };
 
   outputs = [ "out" "man" "doc" ];
diff --git a/pkgs/applications/graphics/pqiv/default.nix b/pkgs/applications/graphics/pqiv/default.nix
index 7948ef0f08c03..f678af7061197 100644
--- a/pkgs/applications/graphics/pqiv/default.nix
+++ b/pkgs/applications/graphics/pqiv/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, pkg-config
-, ffmpeg_3, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler
+, ffmpeg, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler
 }:
 
 stdenv.mkDerivation (rec {
@@ -14,14 +14,14 @@ stdenv.mkDerivation (rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ ffmpeg_3 gtk3 imagemagick libarchive libspectre libwebp poppler ];
+  buildInputs = [ ffmpeg gtk3 imagemagick libarchive libspectre libwebp poppler ];
 
   prePatch = "patchShebangs .";
 
   meta = with lib; {
     description = "Powerful image viewer with minimal UI";
-    homepage = "http://www.pberndt.com/Programme/Linux/pqiv";
-    license = licenses.gpl3;
+    homepage = "https://www.pberndt.com/Programme/Linux/pqiv";
+    license = licenses.gpl3Plus;
     maintainers = [];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 95a0e41d2ae4a..8d345cdefe0e9 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   patches = lib.optional stdenv.isDarwin ./darwin.patch;
 
-  nativeBuildInputs = [ cmake makeWrapper python3Packages.wrapPython ]
+  nativeBuildInputs = [ cmake makeWrapper python3Packages.wrapPython llvmPackages.llvm.dev ]
     ++ optionals cudaSupport [ addOpenGLRunpath ];
   buildInputs =
     [ boost ffmpeg gettext glew ilmbase
diff --git a/pkgs/applications/misc/corectrl/default.nix b/pkgs/applications/misc/corectrl/default.nix
index f213faa44124b..5245d559d4474 100644
--- a/pkgs/applications/misc/corectrl/default.nix
+++ b/pkgs/applications/misc/corectrl/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec{
   pname = "corectrl";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitLab {
     owner = "corectrl";
     repo = "corectrl";
     rev = "v${version}";
-    sha256 = "sha256-YQDrxPqCa3OzNKd3UiAffqqvOrgbXmDFJGjYPetolyY=";
+    sha256 = "sha256-hKYZkKQOvNu2qDSOq1cjoiLwwOvEqdJfqGG5p3Vhkhs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/flavours/default.nix b/pkgs/applications/misc/flavours/default.nix
index 28fe1303f496b..fcedf65af7133 100644
--- a/pkgs/applications/misc/flavours/default.nix
+++ b/pkgs/applications/misc/flavours/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "flavours";
@@ -11,6 +11,9 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-rDy859jg+F8XC4sJogIgdn1FoT8cf7S+KORt+7kboAc=";
   };
 
+  buildInputs = [ ]
+    ++ lib.optionals stdenv.isDarwin [ libiconv ];
+
   cargoSha256 = "sha256-I8ZH35L2CVLy6ypmdOPd8VEG/sQeGaHyT1HWNdwyZVo=";
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index ad0970e0fe29d..8f6c97d196d8e 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.17.1";
+  version = "1.17.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1cfaa3a617d5d222d4b9b41634b1bdede2673a8620d6b0e62fb755ae224ca2ac";
+    sha256 = "5da10d931c371841575d988b4e91e9d4ce55c8c3c99aa6d4efa5abca34c75ec8";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/applications/misc/heimer/default.nix b/pkgs/applications/misc/heimer/default.nix
index 5d9fb0f30d76f..3fd80d4eff3ee 100644
--- a/pkgs/applications/misc/heimer/default.nix
+++ b/pkgs/applications/misc/heimer/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "heimer";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "juzzlin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5cepT9Tfr/3nYbxRAMqKSUDB+suEyojnexWxZ0i7GBw=";
+    sha256 = "sha256-CY7n9eq/FtQ6srZ9L31nJi0b9rOQq60kNOY3iTFws/E=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/moonlight-qt/default.nix b/pkgs/applications/misc/moonlight-qt/default.nix
index 666009b99a0bd..2393fe09b37d6 100644
--- a/pkgs/applications/misc/moonlight-qt/default.nix
+++ b/pkgs/applications/misc/moonlight-qt/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "moonlight-qt";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchFromGitHub {
     owner = "moonlight-stream";
     repo = pname;
     rev = "v${version}";
-    sha256 = "e7fwb76zzidtF1COqrQ6gSF7bCX20j/CGjPu1Cb4HGc=";
+    sha256 = "1bz4wjl8zydw46bh2mdbrsx8prh2fw0cmzqliy912fdz5aal2b74";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/misc/nimbo/default.nix b/pkgs/applications/misc/nimbo/default.nix
new file mode 100644
index 0000000000000..1bc45bc6aee03
--- /dev/null
+++ b/pkgs/applications/misc/nimbo/default.nix
@@ -0,0 +1,28 @@
+{ lib, setuptools, boto3, requests, click, pyyaml, pydantic, buildPythonApplication
+, pythonOlder, fetchFromGitHub, awscli }:
+
+buildPythonApplication rec {
+  pname = "nimbo";
+  version = "0.2.4";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "nimbo-sh";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1fs28s9ynfxrb4rzba6cmik0kl0q0vkpb4zdappsq62jqf960k24";
+  };
+
+  propagatedBuildInputs = [ setuptools boto3 awscli requests click pyyaml pydantic ];
+
+  # nimbo tests require an AWS instance
+  doCheck = false;
+  pythonImportsCheck = [ "nimbo" ];
+
+  meta = with lib; {
+    description = "Run machine learning jobs on AWS with a single command";
+    homepage = "https://github.com/nimbo-sh/nimbo";
+    license = licenses.bsl11;
+    maintainers = with maintainers; [ alex-eyre noreferences ];
+  };
+}
diff --git a/pkgs/applications/misc/tuir/default.nix b/pkgs/applications/misc/tuir/default.nix
index c086cdb9503ba..fb1a85b1e4910 100644
--- a/pkgs/applications/misc/tuir/default.nix
+++ b/pkgs/applications/misc/tuir/default.nix
@@ -21,7 +21,7 @@ buildPythonApplication rec {
 
   checkInputs = [ coverage coveralls docopt mock pylint pytest vcrpy ];
 
-  propagatedBuildInputs = [ beautifulsoup4 decorator kitchen requests ];
+  propagatedBuildInputs = [ beautifulsoup4 decorator kitchen requests six ];
 
   meta = with lib; {
     description = "Browse Reddit from your Terminal (fork of rtv)";
diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix
index fc609b280f995..ad49a1b291e27 100644
--- a/pkgs/applications/misc/visidata/default.nix
+++ b/pkgs/applications/misc/visidata/default.nix
@@ -15,13 +15,13 @@
 }:
 buildPythonApplication rec {
   pname = "visidata";
-  version = "2.2.1";
+  version = "2.4";
 
   src = fetchFromGitHub {
     owner = "saulpw";
     repo = "visidata";
     rev = "v${version}";
-    sha256 = "1gkvnywjg0n3n7d855ivclsj3d8mzihhkgv9a18srcszkmyix903";
+    sha256 = "0mvf2603d9b0s6rh7sl7mg4ipbh0nk05xgh1078mwvx31qjsmq1i";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/misc/xplr/default.nix b/pkgs/applications/misc/xplr/default.nix
index bcb5beff2875d..8a8d2b071d082 100644
--- a/pkgs/applications/misc/xplr/default.nix
+++ b/pkgs/applications/misc/xplr/default.nix
@@ -1,17 +1,17 @@
 { lib, rustPlatform, fetchFromGitHub }:
 
 rustPlatform.buildRustPackage rec {
-  name = "xplr";
-  version = "0.5.12";
+  pname = "xplr";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "sayanarijit";
-    repo = name;
+    repo = pname;
     rev = "v${version}";
-    sha256 = "0dmqa56sxyvrq03rpf9yczp75zk44s79ilz6kbykdghp0d9lyldf";
+    sha256 = "1mqxnahhbf394niyc8i6gk2y3i7lj9cj71k460r58cmir5fch82m";
   };
 
-  cargoSha256 = "1mb1rfax91cbi2wvshl8jsfykx9kfwff8fkqa7rc4plqxnz0qxkx";
+  cargoSha256 = "1dfcmkfclkq5b103jl98yalcl3mnvsq8xpkdasf72d3wgzarih16";
 
   meta = with lib; {
     description = "A hackable, minimal, fast TUI file explorer";
diff --git a/pkgs/applications/networking/3proxy/default.nix b/pkgs/applications/networking/3proxy/default.nix
index 6636691468ea2..f9221d06d022d 100644
--- a/pkgs/applications/networking/3proxy/default.nix
+++ b/pkgs/applications/networking/3proxy/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, coreutils }:
+{ lib, stdenv, fetchFromGitHub, coreutils, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "3proxy";
@@ -17,6 +17,10 @@ stdenv.mkDerivation rec {
     "DESTDIR=${placeholder "out"}"
   ];
 
+  passthru.tests = {
+    smoke-test = nixosTests._3proxy;
+  };
+
   meta = with lib; {
     description = "Tiny free proxy server";
     homepage = "https://github.com/z3APA3A/3proxy";
diff --git a/pkgs/applications/networking/browsers/palemoon/default.nix b/pkgs/applications/networking/browsers/palemoon/default.nix
index 9bc9727dd188c..63f1958f4a6c0 100644
--- a/pkgs/applications/networking/browsers/palemoon/default.nix
+++ b/pkgs/applications/networking/browsers/palemoon/default.nix
@@ -142,6 +142,8 @@ stdenv.mkDerivation rec {
     ac_add_options --enable-jemalloc
     ac_add_options --enable-strip
     ac_add_options --enable-devtools
+    # Missing from build instructions, https://forum.palemoon.org/viewtopic.php?f=5&t=25843#p214767
+    ac_add_options --enable-av1
 
     ac_add_options --disable-eme
     ac_add_options --disable-webrtc
@@ -159,8 +161,6 @@ stdenv.mkDerivation rec {
 
     ac_add_options --x-libraries=${lib.makeLibraryPath [ xorg.libX11 ]}
 
-    export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION
-
     #
     # NixOS-specific adjustments
     #
diff --git a/pkgs/applications/networking/cawbird/default.nix b/pkgs/applications/networking/cawbird/default.nix
index 9cf0e715e0e6b..517bd1e01cc5d 100644
--- a/pkgs/applications/networking/cawbird/default.nix
+++ b/pkgs/applications/networking/cawbird/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitHub
 , glib
 , gtk3
@@ -22,14 +23,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.2";
+  version = "1.4.1";
   pname = "cawbird";
 
   src = fetchFromGitHub {
     owner = "IBBoard";
     repo = "cawbird";
     rev = "v${version}";
-    sha256 = "1baw3h5wq2ib4bnphazq7n9c9wc94g0n6v4y5kg71n1dir0c3jkh";
+    sha256 = "0lmrgcj1ky1vhzynl36k6ba3ws089x4qdrnkjk3lbr334kicx9na";
   };
 
   nativeBuildInputs = [
@@ -69,11 +70,18 @@ stdenv.mkDerivation rec {
     patchShebangs data/meson_post_install.py
   '';
 
+  # supply Twitter API keys
+  # use default keys supplied by upstream, see https://github.com/IBBoard/cawbird/blob/master/README.md#preparation
+  mesonFlags = [
+    "-Dconsumer_key_base64=VmY5dG9yRFcyWk93MzJEZmhVdEk5Y3NMOA=="
+    "-Dconsumer_secret_base64=MThCRXIxbWRESDQ2Y0podzVtVU13SGUyVGlCRXhPb3BFRHhGYlB6ZkpybG5GdXZaSjI="
+  ];
+
   meta = with lib; {
     description = "Native GTK Twitter client for the Linux desktop";
     longDescription = "Cawbird is a modern, easy and fun Twitter client. Fork of the discontinued Corebird.";
     homepage = "https://ibboard.co.uk/cawbird/";
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with lib.maintainers; [ jonafato schmittlauch ];
   };
diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix
index 4a338ac9a42f1..0bb4c57e089d9 100644
--- a/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
 
 let
-  version = "0.13.2";
+  version = "0.13.3";
 
   manifests = fetchzip {
     url = "https://github.com/fluxcd/flux2/releases/download/v${version}/manifests.tar.gz";
@@ -19,10 +19,10 @@ buildGoModule rec {
     owner = "fluxcd";
     repo = "flux2";
     rev = "v${version}";
-    sha256 = "sha256-yWcoHUHEiRp4YxTDxi+inJkpb8dnTVTwSO3MgFyhvps=";
+    sha256 = "sha256-RaQOefVqDPHvTF1qMtgAFNpA1Gx7Vo2JKiwteePsGyo=";
   };
 
-  vendorSha256 = "sha256-hSnTM89s3R7UDn1gLlb1gu6rhTPqVKJpWKCz1SDyfmg=";
+  vendorSha256 = "sha256-GR40BgNMHi3TXVQVN1FaPNVi0HXYVm3vbg4NTXfYBes=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix
index 3c6d66769060d..53b0412343862 100644
--- a/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmfile";
-  version = "0.138.7";
+  version = "0.139.0";
 
   src = fetchFromGitHub {
     owner = "roboll";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "sha256-LFNsSd+S+mQiTk7bCnSD/Kp/D0Jefxo80eRsGkStBhs=";
+    sha256 = "sha256-bwhiua+KQdt9fyvM4TeS6Mm7EQB9K2L04FPhGS380xI=";
   };
 
-  vendorSha256 = "sha256-WlV6moJymQ7VyZXXuViCNN1WP4NzBUszavxpKjQR8to=";
+  vendorSha256 = "sha256-Qpou4e1My/obIHL/4/IEUml0F82atIwPGZX5+vpvk0k=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/helmsman/default.nix b/pkgs/applications/networking/cluster/helmsman/default.nix
index ed828feefdae7..dc777ad0298c3 100644
--- a/pkgs/applications/networking/cluster/helmsman/default.nix
+++ b/pkgs/applications/networking/cluster/helmsman/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmsman";
-  version = "3.6.6";
+  version = "3.6.7";
 
   src = fetchFromGitHub {
     owner = "Praqma";
     repo = "helmsman";
     rev = "v${version}";
-    sha256 = "sha256-SGVch7mMtHi5GYFOrSss4dk29aRTQmBzkPYOetPdF88=";
+    sha256 = "sha256-6w2CV6Uj1b8b3vwB933eNHPe1rK+TRyUL++Vy38cKqo=";
   };
 
-  vendorSha256 = "sha256-mktq5Dnk1mBO2yy5SeMDxa/akXdO5i2WafMTGtH53H8=";
+  vendorSha256 = "sha256-icX8mOc8g+DhfAjD1pzneLWTXY17lXyAjdPOWAxkHwI=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/istioctl/default.nix b/pkgs/applications/networking/cluster/istioctl/default.nix
index d0ffb22217f04..85b6c623ae36e 100644
--- a/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "istioctl";
-  version = "1.9.3";
+  version = "1.9.4";
 
   src = fetchFromGitHub {
     owner = "istio";
     repo = "istio";
     rev = version;
-    sha256 = "sha256-gCI4LRUjsE6V7fomWaQsseX1Xi2f+2ZgtvWBDarpXvw=";
+    sha256 = "sha256-QyiGDk9lA9Y49VpRNRGNbir/ql/Vzp6wsZ1LGodGTks=";
   };
-  vendorSha256 = "sha256-yJHYyRPl1V1WNV0nJoR3bRTTGRTQaT/tG4TSQeL5U88=";
+  vendorSha256 = "sha256-N+7xajNkxuaC1yDTkPCg80bl2gRy2+Sa4Qq1A8zSGD8=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/kubecfg/default.nix b/pkgs/applications/networking/cluster/kubecfg/default.nix
index d9740c759a187..16b7796dc6416 100644
--- a/pkgs/applications/networking/cluster/kubecfg/default.nix
+++ b/pkgs/applications/networking/cluster/kubecfg/default.nix
@@ -1,6 +1,6 @@
 { lib, buildGoPackage, fetchFromGitHub, ... }:
 
-let version = "0.19.0"; in
+let version = "0.19.1"; in
 
 buildGoPackage {
   pname = "kubecfg";
@@ -10,7 +10,7 @@ buildGoPackage {
     owner = "bitnami";
     repo = "kubecfg";
     rev = "v${version}";
-    sha256 = "sha256-G3yLpo/6hv6t3i6b/KMgoZqltyGDddg/SsNPF8hNeUg=";
+    sha256 = "sha256-makRYWBtOjvuv7dAY1vNh1Nxv+nETVlaFh1C3oiojUo=";
   };
 
   goPackagePath = "github.com/bitnami/kubecfg";
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 12127e223a3d3..52bd01ae17b04 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kubernetes";
-  version = "1.20.5";
+  version = "1.21.0";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "sha256-RDaD7tlTtAucW8ido9FumKb5E9n6F9H8HwxQ9TPyOLk=";
+    sha256 = "sha256-5IUcKVbHxL5qb7M087sZSsd50t5zSaeWATnyLHkVsRU=";
   };
 
   nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ];
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 592c5282cd127..5d1f055e89495 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.116";
+  version = "3.1.121";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "6372b36495ae023bd64ce28ca649feba54b060ed8f0a5f606a4845974e834493";
+    sha256 = "91270a51ed29e4a578c7549ebd01665f4bcf49bf7773a15db27f4ccb13659e00";
   };
 
   postPatch = ''
@@ -35,6 +35,7 @@ python3Packages.buildPythonApplication rec {
     flask-restful
     flask-restx
     flask
+    greenlet
     guessit
     html5lib
     jinja2
diff --git a/pkgs/applications/networking/hydroxide/default.nix b/pkgs/applications/networking/hydroxide/default.nix
index 52d4ae07ce5e2..d47560c4e874a 100644
--- a/pkgs/applications/networking/hydroxide/default.nix
+++ b/pkgs/applications/networking/hydroxide/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hydroxide";
-  version = "0.2.17";
+  version = "0.2.18";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-gNMLVh5ntVCxiIKLshRvYXi5dYLZ8qiZFwZxbNPVFTk=";
+    sha256 = "sha256-s8EmoVZUUeaKTaINXvKO5tSdPUS3MlhEucwnmTTC3Wk=";
   };
 
-  vendorSha256 = "sha256-f/1Vxuc87eQie/j1b14q/1lAAzRk+ZDkBaTmHtCy7go=";
+  vendorSha256 = "sha256-jkiTpDsJN628YKkFZcng9P05hmNUc3UeFsanLf+QtJY=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
index 9c99741823aa5..dd46b64e4f64d 100644
--- a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder,
   attrs, aiohttp, appdirs, click, keyring, Logbook, peewee, janus,
   prompt_toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3,
-  setuptools,
+  setuptools, fetchpatch,
 
   pytest, faker, pytest-aiohttp, aioresponses,
 
@@ -10,7 +10,7 @@
 
 buildPythonApplication rec {
   pname = "pantalaimon";
-  version = "0.8.0";
+  version = "0.9.2";
 
   disabled = pythonOlder "3.6";
 
@@ -19,9 +19,17 @@ buildPythonApplication rec {
     owner = "matrix-org";
     repo = pname;
     rev = version;
-    sha256 = "0n86cdpw85qzlcr1ynvar0f0zbphmdz1jia9r75lmj07iw4r5hk9";
+    sha256 = "11dfv5b2slqybisq6npmrqxrzslh4bjs4093vrc05s94046d9d9n";
   };
 
+  patches = [
+    # accept newer matrix-nio versions
+    (fetchpatch {
+      url = "https://github.com/matrix-org/pantalaimon/commit/73f68c76fb05037bd7fe71688ce39eb1f526a385.patch";
+      sha256 = "0wvqcfan8yp67p6khsqkynbkifksp2422b9jy511mvhpy51sqykl";
+    })
+  ];
+
   propagatedBuildInputs = [
     aiohttp
     appdirs
diff --git a/pkgs/applications/networking/mailreaders/himalaya/default.nix b/pkgs/applications/networking/mailreaders/himalaya/default.nix
index 03a81283a65e9..b810103cf2ede 100644
--- a/pkgs/applications/networking/mailreaders/himalaya/default.nix
+++ b/pkgs/applications/networking/mailreaders/himalaya/default.nix
@@ -11,16 +11,16 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "himalaya";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "soywod";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256:0m95gjdzh94vsbs7cdxlczk29m536acwlg4y55j7rz9cdcjfvzkj";
+    sha256 = "sha256-wiasnkoIU4l1yyhUSTahOJMCOyhpz2w4WJzi/UBmiHE=";
   };
 
-  cargoSha256 = "sha256:0bz91vs5i3qb8rd9yfajavb4lyp24cxmxalzkg2chii4ckr8d3ph";
+  cargoSha256 = "sha256-VXSJLDpT0s+sh6buOP63QSiUp34H6G/FWibemtNU9wQ=";
 
   # use --lib flag to avoid test with imap server
   # https://github.com/soywod/himalaya/issues/145
diff --git a/pkgs/applications/networking/p2p/opentracker/default.nix b/pkgs/applications/networking/p2p/opentracker/default.nix
index 4e127a1e7b8a5..f08e5c42e1d75 100644
--- a/pkgs/applications/networking/p2p/opentracker/default.nix
+++ b/pkgs/applications/networking/p2p/opentracker/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, libowfat, zlib }:
+{ lib, stdenv, fetchgit, libowfat, zlib, nixosTests }:
 
 stdenv.mkDerivation {
   name = "opentracker-2018-05-26";
@@ -23,6 +23,10 @@ stdenv.mkDerivation {
     runHook postInstall
   '';
 
+  passthru.tests = {
+    bittorrent-integration = nixosTests.bittorrent;
+  };
+
   meta = with lib; {
     homepage = "https://erdgeist.org/arts/software/opentracker/";
     license = licenses.beerware;
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index b3a2a3eb212e2..d9e35a7b060bd 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -17,6 +17,7 @@
 , wrapGAppsHook
 , enableQt ? false
 , qt5
+, nixosTests
 , enableSystemd ? stdenv.isLinux
 , enableDaemon ? true
 , enableCli ? true
@@ -101,6 +102,10 @@ in stdenv.mkDerivation {
     EOF
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.bittorrent;
+  };
+
   meta = {
     description = "A fast, easy and free BitTorrent client";
     longDescription = ''
diff --git a/pkgs/applications/office/paperwork/paperwork-gtk.nix b/pkgs/applications/office/paperwork/paperwork-gtk.nix
index 3bf9f1af9a526..e619683919139 100644
--- a/pkgs/applications/office/paperwork/paperwork-gtk.nix
+++ b/pkgs/applications/office/paperwork/paperwork-gtk.nix
@@ -12,6 +12,7 @@
 , which
 , gettext
 , gobject-introspection
+, gdk-pixbuf
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -60,6 +61,7 @@ python3Packages.buildPythonApplication rec {
     gobject-introspection
     (lib.getBin gettext)
     which
+    gdk-pixbuf # for the setup hook
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/timeline/default.nix b/pkgs/applications/office/timeline/default.nix
new file mode 100644
index 0000000000000..f4f83ce8e7a72
--- /dev/null
+++ b/pkgs/applications/office/timeline/default.nix
@@ -0,0 +1,89 @@
+{ lib
+, fetchurl
+, python3
+, gettext
+, makeDesktopItem
+, copyDesktopItems
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "timeline";
+  version = "2.4.0";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/thetimelineproj/${pname}-${version}.zip";
+    sha256 = "1pa0whqci6c2p20xf7gbndrrpr1xg42ixhql595ibdd4p3l37v23";
+  };
+
+  nativeBuildInputs = [ python3.pkgs.wrapPython copyDesktopItems ];
+
+  pythonPath = with python3.pkgs; [
+    wxPython_4_0 # not compatible with wxPython_4_1. reported upstream https://github.com/wxWidgets/Phoenix/issues/1956
+    humblewx
+    icalendar
+    markdown
+    pysvg-py3
+    pillow
+  ];
+
+  checkInputs = [
+    gettext
+    python3.pkgs.mock
+  ];
+
+  desktopItems = [
+    (makeDesktopItem {
+      desktopName = "Timeline";
+      name = "timeline";
+      comment = "Display and navigate information on a timeline";
+      icon = "timeline";
+      terminal = false;
+      exec = "timeline";
+      categories = "Office;Calendar;";
+    })
+  ];
+
+  dontBuild = true;
+  doCheck = false;
+
+  patchPhase = ''
+    sed -i "s|_ROOT =.*|_ROOT = \"$out/usr/share/timeline/\"|" source/timelinelib/config/paths.py
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    site_packages=$out/${python3.pkgs.python.sitePackages}
+    install -D -m755 source/timeline.py $out/bin/timeline
+    mkdir -p $site_packages
+    cp -r source/timelinelib $site_packages/
+
+    mkdir -p $out/usr/share/timeline/locale
+    cp -r icons $out/usr/share/timeline/
+    cp -r translations/ $out/usr/share/timeline/
+
+    mkdir -p $out/share/icons/hicolor/{48x48,32x32,16x16}/apps
+    cp icons/48.png $out/share/icons/hicolor/48x48/apps/timeline.png
+    cp icons/32.png $out/share/icons/hicolor/32x32/apps/timeline.png
+    cp icons/16.png $out/share/icons/hicolor/16x16/apps/timeline.png
+
+    runHook postInstall
+  '';
+
+  # tests fail because they need an x server
+  # Unable to access the X Display, is $DISPLAY set properly?
+  checkPhase = ''
+    runHook preCheck
+    ${python3.interpreter} tools/execute-specs.py
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    homepage = "http://thetimelineproj.sourceforge.net/";
+    changelog = "http://thetimelineproj.sourceforge.net/changelog.html";
+    description = "Display and navigate information on a timeline";
+    license = with licenses; [ gpl3Only cc-by-sa-30 ];
+    platforms = with platforms; unix;
+    maintainers = with maintainers; [ davidak ];
+  };
+}
diff --git a/pkgs/applications/science/logic/coq2html/default.nix b/pkgs/applications/science/logic/coq2html/default.nix
index 46f2ebd775bfc..393b84640805a 100644
--- a/pkgs/applications/science/logic/coq2html/default.nix
+++ b/pkgs/applications/science/logic/coq2html/default.nix
@@ -1,20 +1,17 @@
-{ lib, stdenv, fetchgit, ocaml }:
+{ lib, stdenv, fetchFromGitHub, ocaml }:
 
-let
-  version = "20170720";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation  rec {
   pname = "coq2html";
-  inherit version;
+  version = "1.2";
 
-  src = fetchgit {
-    url = "https://github.com/xavierleroy/coq2html";
-    rev = "e2b94093c6b9a877717f181765e30577de22439e";
-    sha256 = "1x466j0pyjggyz0870pdllv9f5vpnfrgkd0w7ajvm9rkwyp3f610";
+  src = fetchFromGitHub {
+    owner = "xavierleroy";
+    repo = "coq2html";
+    rev = "v${version}";
+    sha256 = "sha256-ty/6A3wivjDCrmlZAcZyaIwQQ+vPBJm9MhtW6nZcV3s=";
   };
 
-  buildInputs = [ ocaml ];
+  nativeBuildInputs = [ ocaml ];
 
   installPhase = ''
     mkdir -p $out/bin
@@ -32,8 +29,8 @@ stdenv.mkDerivation {
       "Proof" keyword.
     '';
     homepage = "https://github.com/xavierleroy/coq2html";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ jwiegley ];
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ jwiegley siraben ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/science/logic/poly/default.nix b/pkgs/applications/science/logic/poly/default.nix
index 15e89138c6b38..d0344a3737daf 100644
--- a/pkgs/applications/science/logic/poly/default.nix
+++ b/pkgs/applications/science/logic/poly/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libpoly";
-  version = "0.1.8";
+  version = "0.1.9";
 
   src = fetchFromGitHub {
     owner = "SRI-CSL";
     repo = "libpoly";
     # they've pushed to the release branch, use explicit tag
     rev = "refs/tags/v${version}";
-    sha256 = "1n3gijksnl2ybznq4lkwm2428f82423sxq18gnb2g1kiwqlzdaa3";
+    sha256 = "sha256-E2lHo8Bt4ujoGQ623fjkQbqRnDYJYilXdRt4lnF4wJk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/science/math/gretl/default.nix b/pkgs/applications/science/math/gretl/default.nix
index cc9fe7c4d2ced..450021925bdee 100644
--- a/pkgs/applications/science/math/gretl/default.nix
+++ b/pkgs/applications/science/math/gretl/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gretl";
-  version = "2021a";
+  version = "2021b";
 
   src = fetchurl {
     url = "mirror://sourceforge/gretl/${pname}-${version}.tar.xz";
-    sha256 = "sha256-BDaTv6PORiBnsEaU7uXJIKuxTqIgpY44vUmSViyME0A=";
+    sha256 = "sha256-3KSAA0UPx3cqMXf/G5nrlCfLjWcDiGtzvJe/syRyE6c=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index a7df1645c7a96..aff39a6a44f4e 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -14,6 +14,7 @@
 , withpcre2 ? true
 , sendEmailSupport
 , darwin
+, nixosTests
 , withLibsecret ? false
 , pkg-config, glib, libsecret
 , gzip # needed at runtime by gitweb.cgi
@@ -334,6 +335,9 @@ stdenv.mkDerivation {
 
   stripDebugList = [ "lib" "libexec" "bin" "share/git/contrib/credential/libsecret" ];
 
+  passthru.tests = {
+    buildbot-integration = nixosTests.buildbot;
+  };
 
   meta = {
     homepage = "https://git-scm.com/";
diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix
index 72f6d67c2f1d5..cd6d9b0fd51cf 100644
--- a/pkgs/applications/version-management/git-repo/default.nix
+++ b/pkgs/applications/version-management/git-repo/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-repo";
-  version = "2.13.1";
+  version = "2.14.5";
 
   src = fetchFromGitHub {
     owner = "android";
     repo = "tools_repo";
     rev = "v${version}";
-    sha256 = "sha256-D6gh14XOZ6Fjypfhg9l5ozPhyf6u6M0Wc8HdagdPM/Q=";
+    sha256 = "sha256-3FSkWpHda1jVhy/633B+ippWcbKd83IlQcJYS9Qx5wQ=";
   };
 
   patches = [ ./import-ssl-module.patch ];
diff --git a/pkgs/applications/version-management/monotone/default.nix b/pkgs/applications/version-management/monotone/default.nix
index f20d827dc5ff0..48af459260df7 100644
--- a/pkgs/applications/version-management/monotone/default.nix
+++ b/pkgs/applications/version-management/monotone/default.nix
@@ -1,10 +1,11 @@
-{ lib, stdenv, fetchurl, boost, zlib, botan, libidn
-, lua, pcre, sqlite, perl, pkg-config, expect
+{ lib, stdenv, fetchurl, fetchFromGitHub, boost, zlib, botan2, libidn
+, lua, pcre, sqlite, perl, pkg-config, expect, less
 , bzip2, gmp, openssl
+, autoreconfHook, texinfo
 }:
 
 let
-  version = "1.1";
+  version = "1.1-unstable-2021-05-01";
   perlVersion = lib.getVersion perl;
 in
 
@@ -14,22 +15,41 @@ stdenv.mkDerivation rec {
   pname = "monotone";
   inherit version;
 
-  src = fetchurl {
-    url = "http://monotone.ca/downloads/${version}/monotone-${version}.tar.bz2";
-    sha256 = "124cwgi2q86hagslbk5idxbs9j896rfjzryhr6z63r6l485gcp7r";
+  #  src = fetchurl {
+  #    url = "http://monotone.ca/downloads/${version}/monotone-${version}.tar.bz2";
+  #    sha256 = "124cwgi2q86hagslbk5idxbs9j896rfjzryhr6z63r6l485gcp7r";
+  #  };
+
+  # My mirror of upstream Monotone repository
+  # Could fetchmtn, but circular dependency; snapshot requested
+  # https://lists.nongnu.org/archive/html/monotone-devel/2021-05/msg00000.html
+  src = fetchFromGitHub {
+    owner = "7c6f434c";
+    repo = "monotone-mirror";
+    rev = "b30b0e1c16def043d2dad57d1467d5bfdecdb070";
+    hash = "sha256:1hfy8vaap3184cd7h3qhz0da7c992idkc6q2nz9frhma45c5vgmd";
   };
 
   patches = [ ./monotone-1.1-Adapt-to-changes-in-pcre-8.42.patch ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ boost zlib botan libidn lua pcre sqlite expect
-    openssl gmp bzip2 ];
+  postPatch = ''
+    sed -e 's@/usr/bin/less@${less}/bin/less@' -i src/unix/terminal.cc
+  '';
+
+  nativeBuildInputs = [ pkg-config autoreconfHook texinfo ];
+  buildInputs = [ boost zlib botan2 libidn lua pcre sqlite expect
+    openssl gmp bzip2 perl ];
 
   postInstall = ''
     mkdir -p $out/share/${pname}-${version}
     cp -rv contrib/ $out/share/${pname}-${version}/contrib
     mkdir -p $out/${perl.libPrefix}/${perlVersion}
     cp -v contrib/Monotone.pm $out/${perl.libPrefix}/${perlVersion}
+
+    patchShebangs "$out/share/monotone"
+    patchShebangs "$out/share/${pname}-${version}"
+
+    find "$out"/share/{doc/monotone,${pname}-${version}}/contrib/ -type f | xargs sed -e 's@! */usr/bin/@!/usr/bin/env @; s@! */bin/bash@!/usr/bin/env bash@' -i
   '';
 
   #doCheck = true; # some tests fail (and they take VERY long)
@@ -38,6 +58,6 @@ stdenv.mkDerivation rec {
     description = "A free distributed version control system";
     maintainers = [ maintainers.raskin ];
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/video/droidcam/default.nix b/pkgs/applications/video/droidcam/default.nix
index eed4c030cfab5..dfb110795f4c2 100644
--- a/pkgs/applications/video/droidcam/default.nix
+++ b/pkgs/applications/video/droidcam/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "droidcam";
-  version = "1.7.2";
+  version = "1.7.3";
 
   src = fetchFromGitHub {
     owner = "aramg";
     repo = "droidcam";
     rev = "v${version}";
-    sha256 = "sha256-Ny/PJu+ifs9hQRDUv1pONBb6fKJzoiNtjPOFc4veU8c=";
+    sha256 = "sha256-Ok8FJweSzmewjYzfBJQ28xGHKK/Y32ng1hOCPVwc8eU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/filebot/default.nix b/pkgs/applications/video/filebot/default.nix
index a9d56cc910853..92c15fea9a356 100644
--- a/pkgs/applications/video/filebot/default.nix
+++ b/pkgs/applications/video/filebot/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
   version = "4.9.3";
 
   src = fetchurl {
-    url = "https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
-    sha256 = "sha256-xgdCjo2RLp+EtUTfSiys7PURhnC00R9IOLPtz3427pA=";
+    url = "https://web.archive.org/web/20210326102451/https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
+    sha256 = "sha256-T+y8k757/qFCVOCc/SNc7a+KmyscPlowubNQYzMr8jY=";
   };
 
   unpackPhase = "tar xvf $src";
diff --git a/pkgs/applications/video/jftui/default.nix b/pkgs/applications/video/jftui/default.nix
index b050e2636ccb3..3411b2d5c3313 100644
--- a/pkgs/applications/video/jftui/default.nix
+++ b/pkgs/applications/video/jftui/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jftui";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "Aanok";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0riwqfh5lyjg7as75kyx7jw6zq4gikbglhv8s05y7pzgsc9xy75j";
+    sha256 = "sha256-KyiLZuzQ0kCReUEPBf0YbmdXhw9nBfghBBsXiy9+N0E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/kodi-packages/netflix/default.nix b/pkgs/applications/video/kodi-packages/netflix/default.nix
index e258270dad63e..1aac5f8e9b273 100644
--- a/pkgs/applications/video/kodi-packages/netflix/default.nix
+++ b/pkgs/applications/video/kodi-packages/netflix/default.nix
@@ -3,13 +3,13 @@
 buildKodiAddon rec {
   pname = "netflix";
   namespace = "plugin.video.netflix";
-  version = "1.15.0";
+  version = "1.15.1";
 
   src = fetchFromGitHub {
     owner = "CastagnaIT";
     repo = namespace;
     rev = "v${version}";
-    sha256 = "1jibzzm8viqpanby6lqxpb95gw5hw3lfsw4jasjskiinbf8n469k";
+    sha256 = "0c5cdi6s76vg2gyxzf0ylisxai1ii8vi6h4q4mznpfmplfdp667v";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/video/kooha/default.nix b/pkgs/applications/video/kooha/default.nix
index 1531378db89b6..223ed132c9284 100644
--- a/pkgs/applications/video/kooha/default.nix
+++ b/pkgs/applications/video/kooha/default.nix
@@ -4,14 +4,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "kooha";
-  version = "1.1.2";
+  version = "1.1.3";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "SeaDve";
     repo = "Kooha";
     rev = "v${version}";
-    sha256 = "0jr55b39py9c8dc9rihn7ffx2yh71qqdk6pfn3c2ciiajjs74l17";
+    sha256 = "14lrx6wplvlk3cg3wij88h4ydp3m69pw7lvvzrq3j9qnh431bs36";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/video/prism/default.nix b/pkgs/applications/video/prism/default.nix
new file mode 100644
index 0000000000000..8cb6153b81113
--- /dev/null
+++ b/pkgs/applications/video/prism/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "prism";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "muesli";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0q7q7aj3fm45bnx6hgl9c1ll8na16x6p7qapr0c4a6dhxwd7n511";
+  };
+
+  vendorSha256 = "1mkd1s9zgzy9agy2rjjk8wfdga7nzv9cmwgiarfi4xrqzj4mbaxq";
+
+  meta = with lib; {
+    description = "An RTMP stream recaster/splitter";
+    homepage = "https://github.com/muesli/prism";
+    license = licenses.mit;
+    maintainers = with maintainers; [ paperdigits ];
+  };
+}
diff --git a/pkgs/applications/virtualization/containerd/default.nix b/pkgs/applications/virtualization/containerd/default.nix
index 8a4302de64fa8..657588e5eaf13 100644
--- a/pkgs/applications/virtualization/containerd/default.nix
+++ b/pkgs/applications/virtualization/containerd/default.nix
@@ -10,13 +10,13 @@
 
 buildGoPackage rec {
   pname = "containerd";
-  version = "1.4.4";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = "containerd";
     rev = "v${version}";
-    sha256 = "0qjbfj1dw6pykxhh8zahcxlgpyjzgnrngk5vjaf34akwyan8nrxb";
+    sha256 = "sha256-dUn9lvDLoljq5JPFvUdJ8te0VHkCs9Y9Em2mcq5mHvY=";
   };
 
   goPackagePath = "github.com/containerd/containerd";
diff --git a/pkgs/applications/window-managers/cardboard/default.nix b/pkgs/applications/window-managers/cardboard/default.nix
new file mode 100644
index 0000000000000..ec4f738877b8d
--- /dev/null
+++ b/pkgs/applications/window-managers/cardboard/default.nix
@@ -0,0 +1,115 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, fetchurl
+, fetchgit
+, ffmpeg
+, libGL
+, libX11
+, libcap
+, libdrm
+, libinput
+, libpng
+, libxcb
+, libxkbcommon
+, mesa
+, meson
+, ninja
+, pixman
+, pkg-config
+, unzip
+, wayland
+, wayland-protocols
+, xcbutilerrors
+, xcbutilimage
+, xcbutilwm
+}:
+
+let
+  # cereal.wrap
+  cereal-wrap = fetchurl {
+    name = "cereal-1.3.0.tar.gz";
+    url = "https://github.com/USCiLab/cereal/archive/v1.3.0.tar.gz";
+    hash = "sha256-Mp6j4xMLAmwDpKzFDhaOfa/05uZhvGp9/sDXe1cIUdU=";
+  };
+  cereal-wrapdb = fetchurl {
+    name = "cereal-1.3.0-1-wrap.zip";
+    url = "https://wrapdb.mesonbuild.com/v1/projects/cereal/1.3.0/1/get_zip";
+    hash = "sha256-QYck5UT7fPLqtLDb1iOSX4Hnnns48Jj23Ae/LCfLSKY=";
+  };
+
+  # expected.wrap
+  expected-wrap = fetchgit {
+    name = "expected";
+    url = "https://gitlab.com/cardboardwm/expected";
+    rev = "0ee13cb2b058809aa9708c45ca18d494e72a759e";
+    sha256 = "sha256-gYr4/pjuLlr3k6Jcrg2/SzJLtbgyA+ZN2oMHkHXANDo=";
+  };
+
+  # wlroots.wrap
+  wlroots-wrap = fetchgit {
+    name = "wlroots";
+    url = "https://github.com/swaywm/wlroots";
+    rev = "0.12.0";
+    sha256 = "sha256-1rE3D+kQprjcjobc95/mQkUa5y1noY0MdoYJ/SpFQwY=";
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "cardboard";
+  version = "0.0.0-unstable=2021-01-21";
+
+  src = fetchFromGitLab {
+    owner = "cardboardwm";
+    repo = pname;
+    rev = "f2ef2ff076ddbbd23994553b8eff131f9bd0207f";
+    hash = "sha256-43aqAWk4QoIP0BpRyPRDWFtVh/1UbrBoEeTDEF2gZX4=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    unzip
+  ];
+  buildInputs = [
+    ffmpeg
+    libGL
+    libX11
+    libcap
+    libdrm
+    libinput
+    libpng
+    libxcb
+    libxkbcommon
+    mesa
+    pixman
+    wayland
+    wayland-protocols
+    xcbutilerrors
+    xcbutilimage
+    xcbutilwm
+  ];
+
+  postPatch = ''
+    (cd subprojects
+     tar xvf ${cereal-wrap}
+     unzip ${cereal-wrapdb}
+     cp -r ${expected-wrap} ${expected-wrap.name}
+     cp -r ${wlroots-wrap} ${wlroots-wrap.name}
+    )
+  '';
+
+  # "Inherited" from Nixpkgs expression for wlroots
+  mesonFlags = [
+    "-Dwlroots:logind-provider=systemd"
+    "-Dwlroots:libseat=disabled"
+  ];
+
+  meta = with lib; {
+    homepage = "https://gitlab.com/cardboardwm/cardboard";
+    description = "A scrollable, tiling Wayland compositor inspired on PaperWM";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = with platforms; unix;
+  };
+}
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index b04d427aeed09..6ee1be4126258 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.14.7";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1ndqh4bzwim32n8psgsgdd47xmlb45rhvcwla1wm506byb21nk4c";
+    sha256 = "sha256-rio+3S3bA8KfosKAE9Txzftr/q2PVyd8Z9crz1O/ysc=";
   };
 
-  cargoSha256 = "1kwd76i4lbpxdvan5nzl7dhslh45cipnsdgvssdqd9k34hap05p5";
+  cargoSha256 = "sha256-17bIeK/mPE+rAO/c65IWvMGqAU6sOClJQC8z+O36cmU=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
@@ -29,6 +29,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoBuildFlags = [
     "--features=notmuch"
+    "--features=maildir"
   ];
 
   postFixup = ''
diff --git a/pkgs/data/misc/fedora-backgrounds/default.nix b/pkgs/data/misc/fedora-backgrounds/default.nix
index 31bc28a9f9c10..3089e721a7c9c 100644
--- a/pkgs/data/misc/fedora-backgrounds/default.nix
+++ b/pkgs/data/misc/fedora-backgrounds/default.nix
@@ -20,4 +20,15 @@ in {
     # Fix broken symlinks in the Xfce background directory.
     patches = [ ./f33-fix-xfce-path.patch ];
   };
+
+  f34 = fedoraBackground rec {
+    version = "34.0.1";
+    src = fetchurl {
+      url = "https://github.com/fedoradesign/backgrounds/releases/download/v${version}/f${lib.versions.major version}-backgrounds-${version}.tar.xz";
+      hash = "sha256-0gotgQ4N0yE8WZbsu7B3jmUIZrycbqjEMxZl01JcJj4=";
+    };
+    # Fix broken symlinks in the Xfce background directory.
+    patches = [ ./f34-fix-xfce-path.patch ];
+  };
+
 }
diff --git a/pkgs/data/misc/fedora-backgrounds/f34-fix-xfce-path.patch b/pkgs/data/misc/fedora-backgrounds/f34-fix-xfce-path.patch
new file mode 100644
index 0000000000000..8479276671334
--- /dev/null
+++ b/pkgs/data/misc/fedora-backgrounds/f34-fix-xfce-path.patch
@@ -0,0 +1,13 @@
+diff --git a/default/Makefile b/default/Makefile
+index 172d5d9..540a1c0 100644
+--- a/default/Makefile
++++ b/default/Makefile
+@@ -1,7 +1,7 @@
+ WP_NAME=f34
+ WP_BIGNAME=F34
+ WP_DIR=$(DESTDIR)/usr/share/backgrounds/$(WP_NAME)
+-WP_DIR_LN=/usr/share/backgrounds/$(WP_NAME)
++WP_DIR_LN=$(DESTDIR)/usr/share/backgrounds/$(WP_NAME)
+ GNOME_BG_DIR=$(DESTDIR)/usr/share/gnome-background-properties
+ KDE_BG_DIR=$(DESTDIR)/usr/share/wallpapers
+ MATE_BG_DIR=$(DESTDIR)/usr/share/mate-background-properties
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index 8370470ee1787..5b72040438587 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "95e79fb1492c7f34c2454dcb783ac8b46c0f5c8c",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/95e79fb1492c7f34c2454dcb783ac8b46c0f5c8c.tar.gz",
-  "sha256": "1wp7m8j6z2j6h8z14cnzg223jmkcgpsafraxiirbih3h4wqq2nhr",
-  "msg": "Update from Hackage at 2021-05-03T20:39:01Z"
+  "commit": "3d54acea35f6f709fa96c87696b845b3044dcab5",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/3d54acea35f6f709fa96c87696b845b3044dcab5.tar.gz",
+  "sha256": "1zlkjs9d8r5k803wbsz5fmsrs76150chcnz2jaapmq32riyvm21g",
+  "msg": "Update from Hackage at 2021-05-07T19:29:19Z"
 }
diff --git a/pkgs/data/themes/plano/default.nix b/pkgs/data/themes/plano/default.nix
index 5728dff6f9a5f..9f05a19919354 100644
--- a/pkgs/data/themes/plano/default.nix
+++ b/pkgs/data/themes/plano/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "plano-theme";
-  version = "3.36-2";
+  version = "3.38-1";
 
   src = fetchFromGitHub {
     owner = "lassekongo83";
     repo = pname;
     rev = "v${version}";
-    sha256 = "01dkjck9rlrf8wa30ad7kfv0gbpdf3l05rw7nxrvb1gh5d2vxig9";
+    sha256 = "0g2mwvzc04z3dsdfhwqgw9s7987406pv22s9rbazfvprk4ddc5b6";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix b/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix
index 0a9145de3db35..166ab61565f85 100644
--- a/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix
+++ b/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-disable-unredirect";
-  version = "unstable-2021-01-17";
+  version = "unstable-2021-04-13";
 
   src = fetchFromGitHub {
     owner = "kazysmaster";
     repo = "gnome-shell-extension-disable-unredirect";
-    rev = "2ecb2f489ea3316b77d04f03a0c885f322c67e79";
-    sha256 = "1rjyrg8qya0asndxr7189a9npww0rcxk02wkxrxjy7fdp5m89p7y";
+    rev = "2a4c0e6a7a7a5f1aad9907ee2cf43d0725e10c19";
+    sha256 = "06hbyy20xz0bvzg0vs5w4092nyfpg372c86cdm1akcjm72m5sim9";
   };
 
   uuid = "unredirect@vaina.lt";
diff --git a/pkgs/development/compilers/gleam/default.nix b/pkgs/development/compilers/gleam/default.nix
index 8ceac64a62281..7bce45c455f2f 100644
--- a/pkgs/development/compilers/gleam/default.nix
+++ b/pkgs/development/compilers/gleam/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gleam";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "gleam-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-sB+QTokH/ngcED40+vw+okFLFt+JSJQ/CbOgzlt/YmE=";
+    sha256 = "sha256-vBxVGIgg2BpVvEYjmX99YSf1zy9aWOHr6ftaYxJWkzY=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++
     lib.optionals stdenv.isDarwin [ Security libiconv ];
 
-  cargoSha256 = "sha256-C/OAzg24kulIvIZwV9L5hwvf/BkF05spJPskr2maqrM=";
+  cargoSha256 = "sha256-2zHc7xk5MuEUO9YGifSWbgRTi51ZUk84QLro94LsBtQ=";
 
   meta = with lib; {
     description = "A statically typed language for the Erlang VM";
diff --git a/pkgs/development/compilers/ispc/default.nix b/pkgs/development/compilers/ispc/default.nix
index fd74815871150..bbe17e0755ce1 100644
--- a/pkgs/development/compilers/ispc/default.nix
+++ b/pkgs/development/compilers/ispc/default.nix
@@ -28,10 +28,9 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ cmake which m4 bison flex python3 ];
+  nativeBuildInputs = [ cmake which m4 bison flex python3 llvmPackages.llvm.dev ];
   buildInputs = with llvmPackages; [
-    # we need to link against libclang, so we need the unwrapped
-    llvm llvmPackages.clang-unwrapped
+    llvm llvmPackages.libclang
   ];
 
   postPatch = ''
@@ -66,6 +65,7 @@ stdenv.mkDerivation rec {
   '';
 
   cmakeFlags = [
+    "-DLLVM_CONFIG_EXECUTABLE=${llvmPackages.llvm.dev}/bin/llvm-config"
     "-DCLANG_EXECUTABLE=${llvmPackages.clang}/bin/clang"
     "-DCLANGPP_EXECUTABLE=${llvmPackages.clang}/bin/clang++"
     "-DISPC_INCLUDE_EXAMPLES=OFF"
diff --git a/pkgs/development/compilers/ponyc/pony-corral.nix b/pkgs/development/compilers/ponyc/pony-corral.nix
index 8910d7f1e6109..e9473b81f4848 100644
--- a/pkgs/development/compilers/ponyc/pony-corral.nix
+++ b/pkgs/development/compilers/ponyc/pony-corral.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation ( rec {
   pname = "corral";
-  version = "0.4.1";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = pname;
     rev = version;
-    sha256 = "sha256-YJZ1jGMOeZKGZaTrWO2mtR94F0voC2DXaghi0LytF7I=";
+    sha256 = "sha256-mQ/SxnppChZ+6PKVo5VM+QiNn94F4qJT1kQSrwXTa7k=";
   };
 
   buildInputs = [ ponyc ];
diff --git a/pkgs/development/compilers/spirv-llvm-translator/default.nix b/pkgs/development/compilers/spirv-llvm-translator/default.nix
index 324e0b07ad87e..e4549a7d65d7f 100644
--- a/pkgs/development/compilers/spirv-llvm-translator/default.nix
+++ b/pkgs/development/compilers/spirv-llvm-translator/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , fetchFromGitHub
 , cmake
+, pkg-config
 
 , lit
 , llvm_8
@@ -17,7 +18,7 @@ stdenv.mkDerivation rec {
     sha256 = "0hxalc3fkliqs61hpr97phbm3qsx4b8vgnlg30aimzr6aas403r5";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ pkg-config cmake llvm_8.dev ];
 
   buildInputs = [ llvm_8 ];
 
diff --git a/pkgs/development/compilers/zig/default.nix b/pkgs/development/compilers/zig/default.nix
index bd96010e8bfb3..415bca8749370 100644
--- a/pkgs/development/compilers/zig/default.nix
+++ b/pkgs/development/compilers/zig/default.nix
@@ -11,9 +11,9 @@ llvmPackages.stdenv.mkDerivation rec {
     sha256 = "1z6c4ym9jmga46cw2arn7zv2drcpmrf3vw139gscxp27n7q2z5md";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake llvmPackages.llvm.dev ];
   buildInputs = [
-    llvmPackages.clang-unwrapped
+    llvmPackages.libclang
     llvmPackages.llvm
     llvmPackages.lld
     libxml2
diff --git a/pkgs/development/haskell-modules/configuration-arm.nix b/pkgs/development/haskell-modules/configuration-arm.nix
new file mode 100644
index 0000000000000..bcbf325405382
--- /dev/null
+++ b/pkgs/development/haskell-modules/configuration-arm.nix
@@ -0,0 +1,71 @@
+# ARM-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
+#
+# This extension is applied to all haskell package sets in nixpkgs
+# if `stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64`
+# to apply arm specific workarounds or fixes.
+#
+# The file is split into three parts:
+#
+# * Overrides that are applied for all arm platforms
+# * Overrides for aarch32 platforms
+# * Overrides for aarch64 platforms
+#
+# This may be extended in the future to also include compiler-
+# specific sections as compiler and linker related bugs may
+# get fixed subsequently.
+#
+# When adding new overrides, try to research which section they
+# belong into. Most likely we'll be favouring aarch64 overrides
+# in practice since that is the only platform we can test on
+# Hydra. Also take care to group overrides by the issue they
+# solve, so refactors and updates to this file are less tedious.
+{ pkgs, haskellLib }:
+
+let
+  inherit (pkgs) lib;
+in
+
+with haskellLib;
+
+self: super: {
+  # COMMON ARM OVERRIDES
+
+  # moved here from configuration-common.nix, no reason given.
+  servant-docs = dontCheck super.servant-docs;
+  swagger2 = dontHaddock (dontCheck super.swagger2);
+
+  # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
+  happy = dontCheck super.happy;
+
+} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
+  # AARCH64-SPECIFIC OVERRIDES
+
+  # Doctests fail on aarch64 due to a GHCi linking bug
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
+  # TODO: figure out if needed on aarch32 as well
+  language-nix = dontCheck super.language-nix;
+  trifecta = dontCheck super.trifecta;
+  ad = dontCheck super.ad;
+  vinyl = dontCheck super.vinyl;
+  BNFC = dontCheck super.BNFC;
+  C-structs = dontCheck super.C-structs;
+  accelerate = dontCheck super.accelerate;
+  focuslist = dontCheck super.focuslist;
+  flight-kml = dontCheck super.flight-kml;
+  exact-real = dontCheck super.exact-real;
+  autoapply = dontCheck super.autoapply;
+  hint = dontCheck super.hint;
+  hgeometry = dontCheck super.hgeometry;
+  headroom = dontCheck super.headroom;
+  haskell-time-range = dontCheck super.haskell-time-range;
+  hsakamai = dontCheck super.hsakamai;
+  hsemail-ns = dontCheck super.hsemail-ns;
+  openapi3 = dontCheck super.openapi3;
+
+  # https://github.com/ekmett/half/issues/35
+  half = dontCheck super.half;
+
+} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch32 {
+  # AARCH32-SPECIFIC OVERRIDES
+
+}
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index e595b4ece8fa5..d8f5348f5ad0b 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -75,10 +75,6 @@ self: super: {
   # Fix test trying to access /home directory
   shell-conduit = overrideCabal super.shell-conduit (drv: {
     postPatch = "sed -i s/home/tmp/ test/Spec.hs";
-
-    # the tests for shell-conduit on Darwin illegitimatey assume non-GNU echo
-    # see: https://github.com/psibi/shell-conduit/issues/12
-    doCheck = !pkgs.stdenv.isDarwin;
   });
 
   # https://github.com/froozen/kademlia/issues/2
@@ -117,15 +113,6 @@ self: super: {
   # Jailbreak is necessary for QuickCheck dependency.
   vector = doJailbreak (if pkgs.stdenv.isi686 then appendConfigureFlag super.vector "--ghc-options=-msse2" else super.vector);
 
-  conduit-extra = if pkgs.stdenv.isDarwin
-    then super.conduit-extra.overrideAttrs (drv: { __darwinAllowLocalNetworking = true; })
-    else super.conduit-extra;
-
-  # Fix Darwin build.
-  halive = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.halive pkgs.darwin.apple_sdk.frameworks.AppKit
-    else super.halive;
-
   # Test suite fails due golden tests checking text representation
   # of normalized dhall expressions, and newer dhall versions format
   # differently.
@@ -134,19 +121,6 @@ self: super: {
     then throw "Drop dontCheck override for hpack-dhall > 0.5.2"
     else dontCheck super.hpack-dhall;
 
-  barbly = addBuildDepend super.barbly pkgs.darwin.apple_sdk.frameworks.AppKit;
-
-  # Hakyll's tests are broken on Darwin (3 failures); and they require util-linux
-  hakyll = if pkgs.stdenv.isDarwin
-    then dontCheck (overrideCabal super.hakyll (drv: {
-      testToolDepends = [];
-    }))
-    else super.hakyll;
-
-  double-conversion = if !pkgs.stdenv.isDarwin
-    then super.double-conversion
-    else addExtraLibrary super.double-conversion pkgs.libcxx;
-
   inline-c-cpp = overrideCabal super.inline-c-cpp (drv: {
     postPatch = (drv.postPatch or "") + ''
       substituteInPlace inline-c-cpp.cabal --replace "-optc-std=c++11" ""
@@ -307,23 +281,16 @@ self: super: {
   integer-roots = dontCheck super.integer-roots; # requires an old version of smallcheck, will be fixed in > 1.0
   itanium-abi = dontCheck super.itanium-abi;
   katt = dontCheck super.katt;
-  language-nix = if (pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isi686) then dontCheck super.language-nix else super.language-nix; # aarch64: https://ghc.haskell.org/trac/ghc/ticket/15275
   language-slice = dontCheck super.language-slice;
   ldap-client = dontCheck super.ldap-client;
   lensref = dontCheck super.lensref;
   lvmrun = disableHardening (dontCheck super.lvmrun) ["format"];
-  math-functions = if pkgs.stdenv.isDarwin
-    then dontCheck super.math-functions # "erf table" test fails on Darwin https://github.com/bos/math-functions/issues/63
-    else super.math-functions;
   matplotlib = dontCheck super.matplotlib;
   # https://github.com/matterhorn-chat/matterhorn/issues/679 they do not want to be on stackage
   matterhorn = doJailbreak super.matterhorn; # this is needed until the end of time :')
   memcache = dontCheck super.memcache;
   metrics = dontCheck super.metrics;
   milena = dontCheck super.milena;
-  mockery = if pkgs.stdenv.isDarwin
-    then overrideCabal super.mockery (drv: { preCheck = "export TRAVIS=true"; }) # darwin doesn't have sub-second resolution https://github.com/hspec/mockery/issues/11
-    else super.mockery;
   modular-arithmetic = dontCheck super.modular-arithmetic; # tests require a very old Glob (0.7.*)
   nats-queue = dontCheck super.nats-queue;
   netpbm = dontCheck super.netpbm;
@@ -464,9 +431,8 @@ self: super: {
   # https://github.com/andrewthad/haskell-ip/issues/67
   ip = dontCheck super.ip;
 
-  # https://github.com/ndmitchell/shake/issues/206
-  # https://github.com/ndmitchell/shake/issues/267
-  shake = overrideCabal super.shake (drv: { doCheck = !pkgs.stdenv.isDarwin && false; });
+  # https://github.com/ndmitchell/shake/issues/804
+  shake = dontCheck super.shake;
 
   # https://github.com/nushio3/doctest-prop/issues/1
   doctest-prop = dontCheck super.doctest-prop;
@@ -841,7 +807,6 @@ self: super: {
   # With ghc-8.2.x haddock would time out for unknown reason
   # See https://github.com/haskell/haddock/issues/679
   language-puppet = dontHaddock super.language-puppet;
-  filecache = overrideCabal super.filecache (drv: { doCheck = !pkgs.stdenv.isDarwin; });
 
   # https://github.com/alphaHeavy/protobuf/issues/34
   protobuf = dontCheck super.protobuf;
@@ -852,17 +817,9 @@ self: super: {
     configureFlags = ["--ghc-option=-DU_DEFINE_FALSE_AND_TRUE=1"]; # https://github.com/haskell/text-icu/issues/49
   });
 
-  # aarch64 and armv7l fixes.
-  happy = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
-  hashable = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.hashable else super.hashable; # https://github.com/tibbe/hashable/issues/95
-  servant-docs =
-    let
-      f = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64)
-          then dontCheck
-          else pkgs.lib.id;
-    in doJailbreak (f super.servant-docs); # jailbreak tasty < 1.2 until servant-docs > 0.11.3 is on hackage.
+  # jailbreak tasty < 1.2 until servant-docs > 0.11.3 is on hackage.
+  servant-docs = doJailbreak super.servant-docs;
   snap-templates = doJailbreak super.snap-templates; # https://github.com/snapframework/snap-templates/issues/22
-  swagger2 = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontHaddock (dontCheck super.swagger2) else super.swagger2;
 
   # hledger-lib requires the latest version of pretty-simple
   hledger-lib = appendPatch super.hledger-lib
@@ -1164,11 +1121,6 @@ self: super: {
     '';
   });
 
-  # gtk/gtk3 needs to be told on Darwin to use the Quartz
-  # rather than X11 backend (see eg https://github.com/gtk2hs/gtk2hs/issues/249).
-  gtk3 = appendConfigureFlags super.gtk3 (pkgs.lib.optional pkgs.stdenv.isDarwin "-f have-quartz-gtk");
-  gtk = appendConfigureFlags super.gtk (pkgs.lib.optional pkgs.stdenv.isDarwin "-f have-quartz-gtk");
-
   # Chart-tests needs and compiles some modules from Chart itself
   Chart-tests = (addExtraLibrary super.Chart-tests self.QuickCheck).overrideAttrs (old: {
     preCheck = old.postPatch or "" + ''
@@ -1438,6 +1390,12 @@ self: super: {
   # https://github.com/haskell/haskell-language-server/issues/611
   haskell-language-server = dontCheck super.haskell-language-server;
 
+  # 2021-05-08: Tests fail: https://github.com/haskell/haskell-language-server/issues/1808
+  hls-splice-plugin = dontCheck super.hls-splice-plugin;
+
+  # 2021-05-08: Tests fail: https://github.com/haskell/haskell-language-server/issues/1809
+  hls-eval-plugin = dontCheck super.hls-eval-plugin;
+
   # 2021-03-19: Too restrictive upper bound on optparse-applicative
   stylish-haskell = doJailbreak super.stylish-haskell;
 
@@ -1466,7 +1424,7 @@ self: super: {
   });
 
   # 2021-03-09: Overrides because nightly is to old for hls 1.0.0
-  lsp-test = doDistribute (dontCheck self.lsp-test_0_13_0_0);
+  lsp-test = doDistribute (dontCheck self.lsp-test_0_14_0_0);
 
   # 2021-03-21 Test hangs
   # https://github.com/haskell/haskell-language-server/issues/1562
@@ -1521,11 +1479,6 @@ self: super: {
   # Due to tests restricting base in 0.8.0.0 release
   http-media = doJailbreak super.http-media;
 
-  # https://github.com/ekmett/half/issues/35
-  half = if pkgs.stdenv.isAarch64
-    then dontCheck super.half
-    else super.half;
-
   # 2020-11-19: Jailbreaking until: https://github.com/snapframework/heist/pull/124
   heist = doJailbreak super.heist;
 
@@ -1580,10 +1533,6 @@ self: super: {
   # https://github.com/yesodweb/yesod/issues/1714
   yesod-core = dontCheck super.yesod-core;
 
-  # Add ApplicationServices on darwin
-  apecs-physics = addPkgconfigDepends super.apecs-physics
-    (pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.ApplicationServices);
-
   # Break out of overspecified constraint on QuickCheck.
   algebraic-graphs = dontCheck super.algebraic-graphs;
   attoparsec = doJailbreak super.attoparsec;      # https://github.com/haskell/attoparsec/pull/168
@@ -1871,16 +1820,6 @@ self: super: {
     '' + (drv.postPatch or "");
   });
 
-  # Doctests fail on aarch64 due to a GHCi linking bug
-  # https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
-  ad = overrideCabal super.ad {
-    doCheck = !pkgs.stdenv.hostPlatform.isAarch64;
-  };
-  trifecta = if pkgs.stdenv.hostPlatform.isAarch64 then dontCheck super.trifecta else super.trifecta;
-  vinyl = overrideCabal super.vinyl {
-    doCheck = !pkgs.stdenv.hostPlatform.isAarch64;
-  };
-
   # Tests need to lookup target triple x86_64-unknown-linux
   # https://github.com/llvm-hs/llvm-hs/issues/334
   llvm-hs = overrideCabal super.llvm-hs {
@@ -1895,10 +1834,34 @@ self: super: {
       sha256 = "10npa8nh2413n6p6qld795qfkbld08icm02bspmk93y0kabpgmgm";
     });
 
-  # Too strict bounds on ref-tf
-  # https://github.com/travitch/haggle/issues/4
-  haggle = doJailbreak super.haggle;
+  # Too strict bounds on dimensional
+  # https://github.com/enomsg/science-constants-dimensional/pull/1
+  science-constants-dimensional = doJailbreak super.science-constants-dimensional;
+
+  # Tests are flaky on busy machines
+  # https://github.com/merijn/paramtree/issues/4
+  paramtree = dontCheck super.paramtree;
+
+  # Too strict version bounds on haskell-gi
+  # https://github.com/owickstrom/gi-gtk-declarative/issues/100
+  gi-gtk-declarative = doJailbreak super.gi-gtk-declarative;
+  gi-gtk-declarative-app-simple = doJailbreak super.gi-gtk-declarative-app-simple;
+
+  # Test assets missing from sdist
+  # https://github.com/hadolint/language-docker/issues/63
+  language-docker = overrideSrc super.language-docker {
+    src = pkgs.fetchFromGitHub {
+      owner = "hadolint";
+      repo = "language-docker";
+      rev = "refs/tags/${super.language-docker.version}";
+      sha256 = "06263jy538ni31vms5pzggmh64fyk62cv3lxnvkc6gylb94kljb8";
+      name = "language-docker-${super.language-docker.version}-source";
+    };
+  };
 
   phonetic-languages-phonetics-basics = appendPatch super.phonetic-languages-phonetics-basics ./patches/phonetic-languages-phonetics-basics-haddock.patch;
 
+  # 2021-05-09: Restrictive bound on hspec-golden. Dep removed in newer versions.
+  tomland = assert super.tomland.version == "1.3.2.0"; doJailbreak super.tomland;
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix
new file mode 100644
index 0000000000000..6768bc5d6b4f4
--- /dev/null
+++ b/pkgs/development/haskell-modules/configuration-darwin.nix
@@ -0,0 +1,164 @@
+# DARWIN-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
+
+{ pkgs, haskellLib }:
+
+let
+  inherit (pkgs) lib darwin;
+in
+
+with haskellLib;
+
+self: super: {
+
+  # the tests for shell-conduit on Darwin illegitimatey assume non-GNU echo
+  # see: https://github.com/psibi/shell-conduit/issues/12
+  shell-conduit = dontCheck super.shell-conduit;
+
+  conduit-extra = super.conduit-extra.overrideAttrs (drv: {
+    __darwinAllowLocalNetworking = true;
+  });
+
+  halive = addBuildDepend super.halive darwin.apple_sdk.frameworks.AppKit;
+
+  # Hakyll's tests are broken on Darwin (3 failures); and they require util-linux
+  hakyll = overrideCabal super.hakyll {
+    testToolDepends = [];
+    doCheck = false;
+  };
+
+  barbly = addBuildDepend super.barbly darwin.apple_sdk.frameworks.AppKit;
+
+  double-conversion = addExtraLibrary super.double-conversion pkgs.libcxx;
+
+  apecs-physics = addPkgconfigDepends super.apecs-physics [
+    darwin.apple_sdk.frameworks.ApplicationServices
+  ];
+
+  # "erf table" test fails on Darwin
+  # https://github.com/bos/math-functions/issues/63
+  math-functions = dontCheck super.math-functions;
+
+  # darwin doesn't have sub-second resolution
+  # https://github.com/hspec/mockery/issues/11
+  mockery = overrideCabal super.mockery (drv: {
+    preCheck = ''
+      export TRAVIS=true
+    '' + (drv.preCheck or "");
+  });
+
+  # https://github.com/ndmitchell/shake/issues/206
+  shake = dontCheck super.shake;
+
+  filecache = dontCheck super.filecache;
+
+  # gtk/gtk3 needs to be told on Darwin to use the Quartz
+  # rather than X11 backend (see eg https://github.com/gtk2hs/gtk2hs/issues/249).
+  gtk3 = appendConfigureFlag super.gtk3 "-f have-quartz-gtk";
+  gtk = appendConfigureFlag super.gtk "-f have-quartz-gtk";
+
+  OpenAL = addExtraLibrary super.OpenAL darwin.apple_sdk.frameworks.OpenAL;
+
+  proteaaudio = addExtraLibrary super.proteaaudio darwin.apple_sdk.frameworks.AudioToolbox;
+
+  # the system-fileio tests use canonicalizePath, which fails in the sandbox
+  system-fileio = dontCheck super.system-fileio;
+
+  # Prevents needing to add `security_tool` as a run-time dependency for
+  # everything using x509-system to give access to the `security` executable.
+  #
+  # darwin.security_tool is broken in Mojave (#45042)
+  #
+  # We will use the system provided security for now.
+  # Beware this WILL break in sandboxes!
+  #
+  # TODO(matthewbauer): If someone really needs this to work in sandboxes,
+  # I think we can add a propagatedImpureHost dep here, but I’m hoping to
+  # get a proper fix available soonish.
+  x509-system = overrideCabal super.x509-system (drv:
+    lib.optionalAttrs (!pkgs.stdenv.cc.nativeLibc) {
+      postPatch = ''
+        substituteInPlace System/X509/MacOS.hs --replace security /usr/bin/security
+      '' + (drv.postPatch or "");
+    });
+
+  # https://github.com/haskell-foundation/foundation/pull/412
+  foundation = dontCheck super.foundation;
+
+  llvm-hs = overrideCabal super.llvm-hs (oldAttrs: {
+    # One test fails on darwin.
+    doCheck = false;
+    # llvm-hs's Setup.hs file tries to add the lib/ directory from LLVM8 to
+    # the DYLD_LIBRARY_PATH environment variable.  This messes up clang
+    # when called from GHC, probably because clang is version 7, but we are
+    # using LLVM8.
+    preCompileBuildDriver = ''
+      substituteInPlace Setup.hs --replace "addToLdLibraryPath libDir" "pure ()"
+    '' + (oldAttrs.preCompileBuildDriver or "");
+  });
+
+  yesod-bin = addBuildDepend super.yesod-bin darwin.apple_sdk.frameworks.Cocoa;
+
+  hmatrix = addBuildDepend super.hmatrix darwin.apple_sdk.frameworks.Accelerate;
+
+  # Ensure the necessary frameworks are propagatedBuildInputs on darwin
+  OpenGLRaw = overrideCabal super.OpenGLRaw (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenGL
+    ];
+    preConfigure = ''
+      frameworkPaths=($(for i in $nativeBuildInputs; do if [ -d "$i"/Library/Frameworks ]; then echo "-F$i/Library/Frameworks"; fi done))
+      frameworkPaths=$(IFS=, ; echo "''${frameworkPaths[@]}")
+      configureFlags+=$(if [ -n "$frameworkPaths" ]; then echo -n "--ghc-options=-optl=$frameworkPaths"; fi)
+    '' + (drv.preConfigure or "");
+  });
+  GLURaw = overrideCabal super.GLURaw (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenGL
+    ];
+  });
+  bindings-GLFW = overrideCabal super.bindings-GLFW (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.AGL
+      darwin.apple_sdk.frameworks.Cocoa
+      darwin.apple_sdk.frameworks.OpenGL
+      darwin.apple_sdk.frameworks.IOKit
+      darwin.apple_sdk.frameworks.Kernel
+      darwin.apple_sdk.frameworks.CoreVideo
+      darwin.CF
+    ];
+  });
+  OpenCL = overrideCabal super.OpenCL (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenCL
+    ];
+  });
+
+  # cabal2nix likes to generate dependencies on hinotify when hfsevents is
+  # really required on darwin: https://github.com/NixOS/cabal2nix/issues/146.
+  hinotify = self.hfsevents;
+
+  # FSEvents API is very buggy and tests are unreliable. See
+  # http://openradar.appspot.com/10207999 and similar issues.
+  fsnotify = addBuildDepend (dontCheck super.fsnotify)
+    darwin.apple_sdk.frameworks.Cocoa;
+
+  FractalArt = overrideCabal super.FractalArt (drv: {
+    librarySystemDepends = [
+      darwin.libobjc
+      darwin.apple_sdk.frameworks.AppKit
+    ] ++ (drv.librarySystemDepends or []);
+  });
+
+  arbtt = overrideCabal super.arbtt (drv: {
+    librarySystemDepends = [
+      darwin.apple_sdk.frameworks.Foundation
+      darwin.apple_sdk.frameworks.Carbon
+      darwin.apple_sdk.frameworks.IOKit
+    ] ++ (drv.librarySystemDepends or []);
+  });
+
+}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index edc4fa3ac56c5..fe22ee7ea6de0 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -77,13 +77,6 @@ default-package-overrides:
   - gi-javascriptcore < 4.0.23 #
   - gi-soup < 2.4.24 #
   - gi-webkit2 < 4.0.27 #
-  # To stay hls 1.0 compatible
-  - ghcide < 1.1
-  - hls-retrie-plugin < 1.0.0.1
-  - lsp < 1.2
-  - lsp-types < 1.2
-  - hls-plugin-api < 1.1.0.0
-  - hls-explicit-imports-plugin < 1.0.0.1
 
 extra-packages:
   - base16-bytestring < 1               # required for cabal-install etc.
@@ -102,7 +95,6 @@ extra-packages:
   - hinotify == 0.3.9                   # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
   - hlint < 3.3                         # We don‘t have ghc-lib-parser 9.0.X yet.
   - immortal == 0.2.2.1                 # required by Hasura 1.3.1, 2020-08-20
-  - lsp-test < 0.14                     # needed for hls 1.0.0
   - mmorph == 1.1.3                     # Newest working version of mmorph on ghc 8.6.5. needed for hls
   - network == 2.6.3.1                  # required by pkgs/games/hedgewars/default.nix, 2020-11-15
   - optparse-applicative < 0.16         # needed for niv-0.2.19
@@ -259,7 +251,6 @@ unsupported-platforms:
   gnome-keyring:                                [ x86_64-darwin ]
   gtk-mac-integration:                          [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
   gtk-sni-tray:                                 [ x86_64-darwin ]
-  gtk-sni-tray:                                 [ x86_64-darwin ]
   haskell-snake:                                [ x86_64-darwin ]
   hcwiid:                                       [ x86_64-darwin ]
   HFuse:                                        [ x86_64-darwin ]
@@ -269,7 +260,6 @@ unsupported-platforms:
   iwlib:                                        [ x86_64-darwin ]
   libmodbus:                                    [ x86_64-darwin ]
   libsystemd-journal:                           [ x86_64-darwin ]
-  libsystemd-journal:                           [ x86_64-darwin ]
   libtelnet:                                    [ x86_64-darwin ]
   libzfs:                                       [ x86_64-darwin ]
   linearEqSolver:                               [ aarch64-linux ]
@@ -302,8 +292,7 @@ unsupported-platforms:
   udev:                                         [ x86_64-darwin ]
   vrpn:                                         [ x86_64-darwin ]
   vulkan:                                       [ i686-linux, armv7l-linux, x86_64-darwin ]
-  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux ]
-  VulkanMemoryAllocator:                        [ x86_64-darwin ]
+  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux, x86_64-darwin ]
   vulkan-utils:                                 [ x86_64-darwin ]
   webkit2gtk3-javascriptcore:                   [ x86_64-darwin ]
   Win32-console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
index 460bfe28b6112..cdae5528cc2e4 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -1,5 +1,7 @@
+# Stackage Nightly 2021-05-07
+# This file is auto-generated by
+# maintainers/scripts/haskell/update-stackage.sh
 default-package-overrides:
-  # Stackage Nightly 2021-05-03
   - abstract-deque ==0.3
   - abstract-par ==0.3.3
   - AC-Angle ==1.0
@@ -479,7 +481,7 @@ default-package-overrides:
   - convertible ==1.1.1.0
   - cookie ==0.4.5
   - core-data ==0.2.1.9
-  - core-program ==0.2.6.0
+  - core-program ==0.2.7.1
   - core-text ==0.3.0.0
   - countable ==1.0
   - country ==0.2.1
@@ -882,7 +884,7 @@ default-package-overrides:
   - ghc-byteorder ==4.11.0.0.10
   - ghc-check ==0.5.0.4
   - ghc-core ==0.5.6
-  - ghc-events ==0.16.0
+  - ghc-events ==0.17.0
   - ghc-exactprint ==0.6.4
   - ghcid ==0.8.7
   - ghci-hexcalc ==0.1.1.0
@@ -1104,7 +1106,7 @@ default-package-overrides:
   - hspec-expectations-json ==1.0.0.3
   - hspec-expectations-lifted ==0.10.0
   - hspec-expectations-pretty-diff ==0.7.2.5
-  - hspec-golden ==0.1.0.3
+  - hspec-golden ==0.2.0.0
   - hspec-golden-aeson ==0.7.0.0
   - hspec-hedgehog ==0.0.1.2
   - hspec-junit-formatter ==1.0.0.2
@@ -1260,13 +1262,13 @@ default-package-overrides:
   - io-streams ==1.5.2.0
   - io-streams-haproxy ==1.0.1.0
   - ip6addr ==1.0.2
-  - ipa ==0.3
+  - ipa ==0.3.1
   - iproute ==1.7.11
   - IPv6Addr ==2.0.2
   - ipynb ==0.1.0.1
   - ipython-kernel ==0.10.2.1
   - irc ==0.6.1.0
-  - irc-client ==1.1.2.0
+  - irc-client ==1.1.2.1
   - irc-conduit ==0.3.0.4
   - irc-ctcp ==0.1.3.0
   - isbn ==1.1.0.2
@@ -1328,7 +1330,7 @@ default-package-overrides:
   - language-bash ==0.9.2
   - language-c ==0.8.3
   - language-c-quote ==0.13
-  - language-docker ==9.3.0
+  - language-docker ==10.0.0
   - language-java ==0.2.9
   - language-javascript ==0.7.1.0
   - language-protobuf ==1.0.1
@@ -1687,7 +1689,7 @@ default-package-overrides:
   - pagure-cli ==0.2
   - pandoc ==2.13
   - pandoc-dhall-decoder ==0.1.0.1
-  - pandoc-plot ==1.1.1
+  - pandoc-plot ==1.2.0
   - pandoc-throw ==0.1.0.0
   - pandoc-types ==1.22
   - pantry ==0.5.1.5
@@ -2177,6 +2179,7 @@ default-package-overrides:
   - splint ==1.0.1.4
   - split ==0.2.3.4
   - splitmix ==0.1.0.3
+  - splitmix-distributions ==0.7.0.0
   - spoon ==0.3.1
   - spreadsheet ==0.1.3.8
   - sqlcli ==0.2.2.0
@@ -2506,8 +2509,8 @@ default-package-overrides:
   - utf8-string ==1.0.2
   - util ==0.1.17.1
   - utility-ht ==0.0.16
-  - uuid ==1.3.14
-  - uuid-types ==1.0.4
+  - uuid ==1.3.15
+  - uuid-types ==1.0.5
   - validation ==1.1.1
   - validation-selective ==0.1.0.1
   - validity ==0.11.0.0
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index 7a68332fc8f15..a8ccc4f3851f5 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -22,6 +22,7 @@ dont-distribute-packages:
  - approx-rand-test
  - barley
  - bson-mapping
+ - bv-sized-lens
  - clash-prelude-quickcheck
  - click-clack
  - cloudyfs
@@ -79,9 +80,9 @@ dont-distribute-packages:
  - openpgp-crypto-api
  - patch-image
  - perdure
- - persistent-mysql_2_12_1_0
- - persistent-postgresql_2_12_1_1
- - persistent-sqlite_2_12_0_0
+ - persistent-mysql_2_13_0_0
+ - persistent-postgresql_2_13_0_0
+ - persistent-sqlite_2_13_0_0
  - pontarius-mediaserver
  - pontarius-xmpp-extras
  - pontarius-xpmn
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index fbed88ccbdc07..c5d8b418b512c 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -101,17 +101,6 @@ self: super: builtins.intersectAttrs super {
   ormolu = enableSeparateBinOutput super.ormolu;
   ghcid = enableSeparateBinOutput super.ghcid;
 
-  # Ensure the necessary frameworks for Darwin.
-  OpenAL = if pkgs.stdenv.isDarwin
-    then addExtraLibrary super.OpenAL pkgs.darwin.apple_sdk.frameworks.OpenAL
-    else super.OpenAL;
-
-  # Ensure the necessary frameworks for Darwin.
-  proteaaudio = if pkgs.stdenv.isDarwin
-    then addExtraLibrary super.proteaaudio pkgs.darwin.apple_sdk.frameworks.AudioToolbox
-    else super.proteaaudio;
-
-
   hzk = overrideCabal super.hzk (drv: {
     preConfigure = "sed -i -e /include-dirs/d hzk.cabal";
     configureFlags = [ "--extra-include-dirs=${pkgs.zookeeper_mt}/include/zookeeper" ];
@@ -131,39 +120,11 @@ self: super: builtins.intersectAttrs super {
   # Foreign dependency name clashes with another Haskell package.
   libarchive-conduit = super.libarchive-conduit.override { archive = pkgs.libarchive; };
 
-  # Fix Darwin build.
-  halive = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.halive pkgs.darwin.apple_sdk.frameworks.AppKit
-    else super.halive;
-
   # Heist's test suite requires system pandoc
   heist = overrideCabal super.heist (drv: {
     testToolDepends = [pkgs.pandoc];
   });
 
-  # the system-fileio tests use canonicalizePath, which fails in the sandbox
-  system-fileio = if pkgs.stdenv.isDarwin then dontCheck super.system-fileio else super.system-fileio;
-
-  # Prevents needing to add `security_tool` as a run-time dependency for
-  # everything using x509-system to give access to the `security` executable.
-  x509-system =
-    if pkgs.stdenv.hostPlatform.isDarwin && !pkgs.stdenv.cc.nativeLibc
-    then
-      # darwin.security_tool is broken in Mojave (#45042)
-
-      # We will use the system provided security for now.
-      # Beware this WILL break in sandboxes!
-
-      # TODO(matthewbauer): If someone really needs this to work in sandboxes,
-      # I think we can add a propagatedImpureHost dep here, but I’m hoping to
-      # get a proper fix available soonish.
-      overrideCabal super.x509-system (drv: {
-        postPatch = (drv.postPatch or "") + ''
-          substituteInPlace System/X509/MacOS.hs --replace security /usr/bin/security
-        '';
-      })
-    else super.x509-system;
-
   # https://github.com/NixOS/cabal2nix/issues/136 and https://github.com/NixOS/cabal2nix/issues/216
   gio = disableHardening (addPkgconfigDepend (addBuildTool super.gio self.buildHaskellPackages.gtk2hs-buildtools) pkgs.glib) ["fortify"];
   glib = disableHardening (addPkgconfigDepend (addBuildTool super.glib self.buildHaskellPackages.gtk2hs-buildtools) pkgs.glib) ["fortify"];
@@ -266,12 +227,6 @@ self: super: builtins.intersectAttrs super {
   # /homeless-shelter. Disabled.
   purescript = dontCheck super.purescript;
 
-  # https://github.com/haskell-foundation/foundation/pull/412
-  foundation =
-    if pkgs.stdenv.isDarwin
-    then dontCheck super.foundation
-    else super.foundation;
-
   # Hardcoded include path
   poppler = overrideCabal super.poppler (drv: {
     postPatch = ''
@@ -283,23 +238,8 @@ self: super: builtins.intersectAttrs super {
   # Uses OpenGL in testing
   caramia = dontCheck super.caramia;
 
-  llvm-hs =
-    let llvmHsWithLlvm9 = super.llvm-hs.override { llvm-config = pkgs.llvm_9; };
-    in
-    if pkgs.stdenv.isDarwin
-    then
-      overrideCabal llvmHsWithLlvm9 (oldAttrs: {
-        # One test fails on darwin.
-        doCheck = false;
-        # llvm-hs's Setup.hs file tries to add the lib/ directory from LLVM8 to
-        # the DYLD_LIBRARY_PATH environment variable.  This messes up clang
-        # when called from GHC, probably because clang is version 7, but we are
-        # using LLVM8.
-        preCompileBuildDriver = oldAttrs.preCompileBuildDriver or "" + ''
-          substituteInPlace Setup.hs --replace "addToLdLibraryPath libDir" "pure ()"
-        '';
-      })
-    else llvmHsWithLlvm9;
+  # requires llvm 9 specifically https://github.com/llvm-hs/llvm-hs/#building-from-source
+  llvm-hs = super.llvm-hs.override { llvm-config = pkgs.llvm_9; };
 
   # Needs help finding LLVM.
   spaceprobe = addBuildTool super.spaceprobe self.llvmPackages.llvm;
@@ -322,14 +262,6 @@ self: super: builtins.intersectAttrs super {
   # Patch to consider NIX_GHC just like xmonad does
   dyre = appendPatch super.dyre ./patches/dyre-nix.patch;
 
-  yesod-bin = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.yesod-bin pkgs.darwin.apple_sdk.frameworks.Cocoa
-    else super.yesod-bin;
-
-  hmatrix = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.hmatrix pkgs.darwin.apple_sdk.frameworks.Accelerate
-    else super.hmatrix;
-
   # https://github.com/edwinb/EpiVM/issues/13
   # https://github.com/edwinb/EpiVM/issues/14
   epic = addExtraLibraries (addBuildTool super.epic self.buildHaskellPackages.happy) [pkgs.boehmgc pkgs.gmp];
@@ -405,43 +337,8 @@ self: super: builtins.intersectAttrs super {
   # Looks like Avahi provides the missing library
   dnssd = super.dnssd.override { dns_sd = pkgs.avahi.override { withLibdnssdCompat = true; }; };
 
-  # Ensure the necessary frameworks are propagatedBuildInputs on darwin
-  OpenGLRaw = overrideCabal super.OpenGLRaw (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenGL ];
-    preConfigure = pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
-      frameworkPaths=($(for i in $nativeBuildInputs; do if [ -d "$i"/Library/Frameworks ]; then echo "-F$i/Library/Frameworks"; fi done))
-      frameworkPaths=$(IFS=, ; echo "''${frameworkPaths[@]}")
-      configureFlags+=$(if [ -n "$frameworkPaths" ]; then echo -n "--ghc-options=-optl=$frameworkPaths"; fi)
-    '';
-  });
-  GLURaw = overrideCabal super.GLURaw (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenGL ];
-  });
-  bindings-GLFW = overrideCabal super.bindings-GLFW (drv: {
-    doCheck = false; # requires an active X11 display
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            (with pkgs.darwin.apple_sdk.frameworks;
-                             [ AGL Cocoa OpenGL IOKit Kernel CoreVideo
-                               pkgs.darwin.CF ]);
-  });
-  OpenCL = overrideCabal super.OpenCL (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenCL ];
-  });
+  # requires an X11 display
+  bindings-GLFW = dontCheck super.bindings-GLFW;
 
   # requires an X11 display in test suite
   gi-gtk-declarative = dontCheck super.gi-gtk-declarative;
@@ -474,16 +371,8 @@ self: super: builtins.intersectAttrs super {
     testHaskellDepends = (drv.testHaskellDepends or []) ++ [ self.test-framework self.test-framework-hunit ];
   });
 
-  # cabal2nix likes to generate dependencies on hinotify when hfsevents is really required
-  # on darwin: https://github.com/NixOS/cabal2nix/issues/146.
-  hinotify = if pkgs.stdenv.isDarwin then self.hfsevents else super.hinotify;
-
-  # FSEvents API is very buggy and tests are unreliable. See
-  # http://openradar.appspot.com/10207999 and similar issues.
   # https://github.com/haskell-fswatch/hfsnotify/issues/62
-  fsnotify = if pkgs.stdenv.isDarwin
-    then addBuildDepend (dontCheck super.fsnotify) pkgs.darwin.apple_sdk.frameworks.Cocoa
-    else dontCheck super.fsnotify;
+  fsnotify = dontCheck super.fsnotify;
 
   hidapi = addExtraLibrary super.hidapi pkgs.udev;
 
@@ -844,21 +733,6 @@ self: super: builtins.intersectAttrs super {
       '' + (drv.postInstall or "");
     });
 
-  FractalArt = overrideCabal super.FractalArt (drv: {
-    librarySystemDepends = pkgs.lib.optionals pkgs.stdenv.hostPlatform.isDarwin [
-      pkgs.darwin.libobjc
-      pkgs.darwin.apple_sdk.frameworks.AppKit
-    ] ++ (drv.librarySystemDepends or []);
-  });
-
-  arbtt = overrideCabal super.arbtt (drv: {
-    librarySystemDepends = pkgs.lib.optionals pkgs.stdenv.hostPlatform.isDarwin [
-      pkgs.darwin.apple_sdk.frameworks.Foundation
-      pkgs.darwin.apple_sdk.frameworks.Carbon
-      pkgs.darwin.apple_sdk.frameworks.IOKit
-    ] ++ (drv.librarySystemDepends or []);
-  });
-
   # set more accurate set of platforms instead of maintaining
   # an ever growing list of platforms to exclude via unsupported-platforms
   cpuid = overrideCabal super.cpuid {
@@ -867,4 +741,35 @@ self: super: builtins.intersectAttrs super {
 
   # Pass the correct libarchive into the package.
   streamly-archive = super.streamly-archive.override { archive = pkgs.libarchive; };
+
+  # passes the -msse2 flag which only works on x86 platforms
+  hsignal = overrideCabal super.hsignal {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  hls-brittany-plugin = overrideCabal super.hls-brittany-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  hls-class-plugin = overrideCabal super.hls-class-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  # Tests have file permissions expections that don‘t work with the nix store.
+  hls-stylish-haskell-plugin = dontCheck super.hls-stylish-haskell-plugin;
+  hls-haddock-comments-plugin = overrideCabal super.hls-haddock-comments-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  hls-eval-plugin = overrideCabal super.hls-eval-plugin (drv: {
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
 }
diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix
index a4f0399cf3c62..8392e751da2d6 100644
--- a/pkgs/development/haskell-modules/default.nix
+++ b/pkgs/development/haskell-modules/default.nix
@@ -7,6 +7,8 @@
 , nonHackagePackages ? import ./non-hackage-packages.nix
 , configurationCommon ? import ./configuration-common.nix
 , configurationNix ? import ./configuration-nix.nix
+, configurationArm ? import ./configuration-arm.nix
+, configurationDarwin ? import ./configuration-darwin.nix
 }:
 
 let
@@ -19,17 +21,24 @@ let
     inherit stdenv haskellLib ghc buildHaskellPackages extensible-self all-cabal-hashes;
   };
 
-  commonConfiguration = configurationCommon { inherit pkgs haskellLib; };
-  nixConfiguration = configurationNix { inherit pkgs haskellLib; };
-
-  extensible-self = makeExtensible
-    (extends overrides
-      (extends packageSetConfig
-        (extends compilerConfig
-          (extends commonConfiguration
-            (extends nixConfiguration
-              (extends nonHackagePackages
-                haskellPackages))))));
+  isArm = with stdenv.hostPlatform; isAarch64 || isAarch32;
+  platformConfigurations = lib.optionals isArm [
+    (configurationArm { inherit pkgs haskellLib; })
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    (configurationDarwin { inherit pkgs haskellLib; })
+  ];
+
+  extensions = lib.composeManyExtensions ([
+    nonHackagePackages
+    (configurationNix { inherit pkgs haskellLib; })
+    (configurationCommon { inherit pkgs haskellLib; })
+  ] ++ platformConfigurations ++ [
+    compilerConfig
+    packageSetConfig
+    overrides
+  ]);
+
+  extensible-self = makeExtensible (extends extensions haskellPackages);
 
 in
 
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 406493133c630..24849b1e5ba82 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -20954,9 +20954,7 @@ self: {
        ];
        description = "Bindings to the VulkanMemoryAllocator library";
        license = lib.licenses.bsd3;
-       platforms = [
-         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
-       ];
+       platforms = [ "aarch64-linux" "x86_64-linux" ];
      }) {};
 
   "WAVE" = callPackage
@@ -25718,20 +25716,20 @@ self: {
 
   "agda-unused" = callPackage
     ({ mkDerivation, aeson, Agda, base, containers, directory, filepath
-     , hspec, megaparsec, mtl, optparse-applicative, text
+     , hspec, mtl, optparse-applicative, text
      }:
      mkDerivation {
        pname = "agda-unused";
-       version = "0.1.0";
-       sha256 = "1g0iyv9x46ql8j9ggb6nw58274vqb6z850x26glaqcdwa3wvn1i1";
+       version = "0.2.0";
+       sha256 = "0fxrmcc0kn3jyjbij2fv72pw0r1l2rvg8wglj1i8d438jqpffigw";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         Agda base containers directory filepath megaparsec mtl text
+         Agda base containers directory filepath mtl text
        ];
        executableHaskellDepends = [
-         aeson base directory filepath mtl optparse-applicative text
+         aeson base directory mtl optparse-applicative text
        ];
        testHaskellDepends = [ base containers filepath hspec text ];
        description = "Check for unused code in an Agda project";
@@ -33168,16 +33166,14 @@ self: {
 
   "armor" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, hspec, HUnit, lens, text
+     , filepath, hashable, hspec, HUnit, lens, text
      }:
      mkDerivation {
        pname = "armor";
-       version = "0.1";
-       sha256 = "0jmq6lhi1byhjzgkvnn4p481z8wik93angx7sf6cjfj5j0kqzv71";
-       revision = "4";
-       editedCabalFile = "1vnjq91pawr4r7parg2kxs01d47b3lp8jpsji270bbmimqa0nql9";
+       version = "0.2";
+       sha256 = "1flidqihfgb1vwikm3q4dyjdjzrc5z2955ph6h30q0dyv4707s94";
        libraryHaskellDepends = [
-         base bytestring containers directory filepath HUnit lens
+         base bytestring containers directory filepath hashable HUnit lens
        ];
        testHaskellDepends = [
          aeson base bytestring containers directory hspec HUnit lens text
@@ -47539,6 +47535,18 @@ self: {
        broken = true;
      }) {};
 
+  "bv-sized-lens" = callPackage
+    ({ mkDerivation, base, bv-sized, lens, parameterized-utils }:
+     mkDerivation {
+       pname = "bv-sized-lens";
+       version = "0.1.0.0";
+       sha256 = "1njwizsxpmlpb3vm460ciw2x7byfz4y0g8bhsnfiimmyn7yazdr6";
+       libraryHaskellDepends = [ base bv-sized lens parameterized-utils ];
+       description = "Well-typed lenses for bv-sized bitvectors";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "byline" = callPackage
     ({ mkDerivation, ansi-terminal, attoparsec, base, colour
      , exceptions, free, haskeline, mtl, optparse-applicative, relude
@@ -48415,6 +48423,17 @@ self: {
        broken = true;
      }) {};
 
+  "c-enum" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "c-enum";
+       version = "0.1.0.0";
+       sha256 = "02jxhscf8ibzqkhyvsgb04wxl3a02n2qipi3gmdppi6jffk2a1sj";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base template-haskell ];
+       license = lib.licenses.bsd3;
+     }) {};
+
   "c-io" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -50470,8 +50489,8 @@ self: {
      }:
      mkDerivation {
        pname = "calamity";
-       version = "0.1.28.5";
-       sha256 = "09ja2imqhz7kr97fhfskj1g7s7q88yrpa0p2s1n55fwkn1f2d3bs";
+       version = "0.1.29.0";
+       sha256 = "05i8364x6d5kh4vimg8xp5cwskbzayk71kb6r4gg95xdi6vhgnjx";
        libraryHaskellDepends = [
          aeson async base bytestring colour concurrent-extra connection
          containers data-default-class data-flags deepseq deque df1 di-core
@@ -50494,8 +50513,8 @@ self: {
      }:
      mkDerivation {
        pname = "calamity-commands";
-       version = "0.1.0.0";
-       sha256 = "0l2x65w7inib5bdfw0gzffm3pdlsylnivnjc8y82x7fi6jha8jcp";
+       version = "0.1.1.0";
+       sha256 = "0sx0pcxh9f7r4nlhii5i3vwxpbhngzprp4h3yvp2xvkr8mp6pyk2";
        libraryHaskellDepends = [
          base generic-lens lens megaparsec polysemy polysemy-plugin text
          text-show unordered-containers
@@ -54261,27 +54280,38 @@ self: {
      }) {};
 
   "chiasma" = callPackage
-    ({ mkDerivation, base, bytestring, data-default-class, directory
-     , either, filepath, free, HTF, lens, mtl, parsec, posix-pty
-     , process, resourcet, split, transformers, typed-process, unix
-     , unliftio
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, composition
+     , composition-extra, conduit, conduit-extra, containers, cornea
+     , data-default, deepseq, directory, either, exceptions, filepath
+     , free, hedgehog, lens, mtl, parsec, parsers, posix-pty
+     , prettyprinter, prettyprinter-ansi-terminal, process, random
+     , relude, resourcet, split, stm-chans, stm-conduit, tasty
+     , tasty-hedgehog, text, transformers, typed-process, unix, unliftio
+     , unliftio-core, uuid
      }:
      mkDerivation {
        pname = "chiasma";
-       version = "0.1.0.0";
-       sha256 = "140p3qrrdh3im5qj43swl9cvljgyc39zy7ci5048j42h8x9q7glg";
-       libraryHaskellDepends = [
-         base bytestring data-default-class directory either filepath free
-         lens mtl parsec posix-pty process resourcet split transformers
-         typed-process unix unliftio
-       ];
-       testHaskellDepends = [
-         base bytestring data-default-class directory either filepath free
-         HTF lens mtl parsec posix-pty process resourcet split transformers
-         typed-process unix unliftio
+       version = "0.2.0.0";
+       sha256 = "11pbg9mlmp15hs2wdca0qyhbc94d91xkl75jlcaksla8l1qnnz9m";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring composition composition-extra
+         conduit conduit-extra containers cornea data-default deepseq
+         directory either exceptions filepath free lens mtl parsec parsers
+         posix-pty prettyprinter prettyprinter-ansi-terminal process random
+         relude resourcet split stm-chans stm-conduit text transformers
+         typed-process unix unliftio unliftio-core uuid
+       ];
+       testHaskellDepends = [
+         aeson attoparsec base bytestring composition composition-extra
+         conduit conduit-extra containers cornea data-default deepseq
+         directory either exceptions filepath free hedgehog lens mtl parsec
+         parsers posix-pty prettyprinter prettyprinter-ansi-terminal process
+         random relude resourcet split stm-chans stm-conduit tasty
+         tasty-hedgehog text transformers typed-process unix unliftio
+         unliftio-core uuid
        ];
        description = "tmux api";
-       license = lib.licenses.mit;
+       license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {};
@@ -58185,8 +58215,8 @@ self: {
      }:
      mkDerivation {
        pname = "code-conjure";
-       version = "0.1.2";
-       sha256 = "14xgpax596wd66kan1nj043n9f4wwn34rr77hgj6wir9aygx9sla";
+       version = "0.2.2";
+       sha256 = "1rf9d6mwg965r4bnjxbcw2dzcf4fxqn9hnysxzyqxnyhrr8q4149";
        libraryHaskellDepends = [
          base express leancheck speculate template-haskell
        ];
@@ -64519,8 +64549,8 @@ self: {
      }:
      mkDerivation {
        pname = "core-program";
-       version = "0.2.6.0";
-       sha256 = "1qyl7kcdqxfl2inx66n7pa1z2pqjxrz1bpg3jjknjj0kpw9rlhf3";
+       version = "0.2.7.1";
+       sha256 = "1bm75bdmcrjizmrspl52qqs4vq9hlyh7fjv5y5lfpkmqrs45045b";
        libraryHaskellDepends = [
          async base bytestring chronologique core-data core-text directory
          exceptions filepath fsnotify hashable hourglass mtl prettyprinter
@@ -64616,25 +64646,24 @@ self: {
      }) {inherit (pkgs) rocksdb;};
 
   "cornea" = callPackage
-    ({ mkDerivation, base-noprelude, either, HTF, lens, lifted-base
-     , monad-control, mtl, relude, template-haskell, th-abstraction
-     , transformers
+    ({ mkDerivation, base, either, hedgehog, lens, lifted-base
+     , monad-control, mtl, relude, tasty, tasty-hedgehog
+     , template-haskell, th-abstraction, transformers
      }:
      mkDerivation {
        pname = "cornea";
-       version = "0.3.1.2";
-       sha256 = "04iika5r5w3347w87b8whwrxym5nzvgl5pr76fpxw78fwvi1nvzk";
+       version = "0.4.0.0";
+       sha256 = "0hm17g350gnklvgi5nsx03lgbx2zs9h4q11y2gi9zjnm6gv6gjrn";
        libraryHaskellDepends = [
-         base-noprelude either lens lifted-base monad-control mtl relude
+         base either lens lifted-base monad-control mtl relude
          template-haskell th-abstraction transformers
        ];
        testHaskellDepends = [
-         base-noprelude either HTF lens lifted-base monad-control mtl relude
-         template-haskell th-abstraction transformers
+         base either hedgehog lens lifted-base monad-control mtl relude
+         tasty tasty-hedgehog template-haskell th-abstraction transformers
        ];
        description = "classy optical monadic state";
-       license = "unknown";
-       hydraPlatforms = lib.platforms.none;
+       license = "BSD-2-Clause-Patent";
      }) {};
 
   "coroutine-enumerator" = callPackage
@@ -64721,7 +64750,7 @@ self: {
        description = "A modern, lightweight, complete client for CouchDB";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-     }) {inherit (pkgs) couchdb;};
+     }) {couchdb = null;};
 
   "couchdb-conduit" = callPackage
     ({ mkDerivation, aeson, attoparsec, attoparsec-conduit, base
@@ -78301,6 +78330,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "do-spaces" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring
+     , case-insensitive, conduit, conduit-extra, config-ini, containers
+     , cryptonite, exceptions, extra, filepath, generic-lens, hspec
+     , http-client-tls, http-conduit, http-types, memory, microlens
+     , mime-types, mtl, resourcet, text, time, transformers, xml-conduit
+     }:
+     mkDerivation {
+       pname = "do-spaces";
+       version = "0.1.0";
+       sha256 = "1xj0n2pmmwkm4ss5gvsbvw8m545w4890a3hhk1ns1vbbm06zmvsi";
+       libraryHaskellDepends = [
+         base base16-bytestring bytestring case-insensitive conduit
+         conduit-extra config-ini containers cryptonite exceptions extra
+         filepath generic-lens http-client-tls http-conduit http-types
+         memory microlens mime-types mtl text time transformers xml-conduit
+       ];
+       testHaskellDepends = [
+         base bytestring case-insensitive conduit conduit-extra containers
+         generic-lens hspec http-client-tls http-conduit http-types
+         microlens mtl resourcet text time
+       ];
+       description = "DigitalOcean Spaces API bindings";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "dobutok" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -85923,6 +85978,8 @@ self: {
        pname = "esqueleto";
        version = "3.4.1.1";
        sha256 = "15355vc3ysqr4yd149xz7zm7iba7pb04p3yxgp1n6dxczwldjf43";
+       revision = "1";
+       editedCabalFile = "0rwj2cg7pkn4nwapyk9syb64f0qycq7kqwbpciwwq9xdviwcvqzk";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-html bytestring conduit containers
          monad-logger persistent resourcet tagged text time transformers
@@ -85939,7 +85996,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "esqueleto_3_4_2_0" = callPackage
+  "esqueleto_3_4_2_1" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
      , conduit, containers, exceptions, hspec, monad-logger, mtl, mysql
      , mysql-simple, persistent, persistent-mysql, persistent-postgresql
@@ -85949,8 +86006,10 @@ self: {
      }:
      mkDerivation {
        pname = "esqueleto";
-       version = "3.4.2.0";
-       sha256 = "1gmh96a0vqvxizgs2k66p06jhjcgqrm5phbvahs7b2iavaralpr3";
+       version = "3.4.2.1";
+       sha256 = "0yh2fgk5rjphszn2prww190nsvw84j68js7wnd6p5iwynrw6ahxh";
+       revision = "1";
+       editedCabalFile = "0nsm17spkhsykizmpr29x8zq16ha6j0325r08ms675jn574ni2g1";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-html bytestring conduit containers
          monad-logger persistent resourcet tagged text time transformers
@@ -89100,17 +89159,17 @@ self: {
      }) {};
 
   "fake" = callPackage
-    ({ mkDerivation, base, containers, generics-sop, hspec, random
-     , text, time
+    ({ mkDerivation, base, containers, generics-sop, hspec, lens
+     , random, text, time
      }:
      mkDerivation {
        pname = "fake";
-       version = "0.1.1.3";
-       sha256 = "07ciaxbfvhajjdj5sidvy9cxpjfssjkxykrbgnghihrla78pwq1n";
+       version = "0.1.2";
+       sha256 = "03v224sag70w1ibymw1cmi3lwby25wl0254p2gzy7s330fmlbymr";
        libraryHaskellDepends = [
          base containers generics-sop random text time
        ];
-       testHaskellDepends = [ base hspec random text time ];
+       testHaskellDepends = [ base hspec lens random text time ];
        description = "Randomly generated fake data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -101623,8 +101682,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-events";
-       version = "0.16.0";
-       sha256 = "0cr6aj4v9j2fadwhhifjlbg4anyc05phfmy3pvd9h7gn12a2ydr9";
+       version = "0.17.0";
+       sha256 = "059csl9j391iqbxaia9kawsksgbiy3ffdk9pqabb68gqrn0b7icc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102874,69 +102933,6 @@ self: {
      }) {};
 
   "ghcide" = callPackage
-    ({ mkDerivation, aeson, array, async, base, base16-bytestring
-     , binary, bytestring, bytestring-encoding, case-insensitive
-     , containers, cryptohash-sha1, data-default, deepseq, dependent-map
-     , dependent-sum, Diff, directory, dlist, extra, filepath
-     , fingertree, fuzzy, ghc, ghc-boot, ghc-boot-th, ghc-check
-     , ghc-exactprint, ghc-paths, ghc-typelits-knownnat, gitrev, Glob
-     , haddock-library, hashable, heapsize, hie-bios, hie-compat, hiedb
-     , hls-plugin-api, hp2pretty, hslogger, implicit-hie
-     , implicit-hie-cradle, lens, lsp, lsp-test, lsp-types, mtl
-     , network-uri, opentelemetry, optparse-applicative, parallel
-     , prettyprinter, prettyprinter-ansi-terminal, process, QuickCheck
-     , quickcheck-instances, record-dot-preprocessor, record-hasfield
-     , regex-tdfa, retrie, rope-utf16-splay, safe, safe-exceptions
-     , shake, shake-bench, sorted-list, sqlite-simple, stm, syb, tasty
-     , tasty-expected-failure, tasty-hunit, tasty-quickcheck
-     , tasty-rerun, text, time, transformers, unix, unliftio
-     , unliftio-core, unordered-containers, utf8-string, vector, yaml
-     }:
-     mkDerivation {
-       pname = "ghcide";
-       version = "1.0.0.0";
-       sha256 = "15hz49d68229bnp8g7q1ac60ryd4zbyc1rbxsfaq5lb586ps82k8";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson array async base base16-bytestring binary bytestring
-         bytestring-encoding case-insensitive containers cryptohash-sha1
-         data-default deepseq dependent-map dependent-sum Diff directory
-         dlist extra filepath fingertree fuzzy ghc ghc-boot ghc-boot-th
-         ghc-check ghc-exactprint ghc-paths Glob haddock-library hashable
-         heapsize hie-bios hie-compat hiedb hls-plugin-api hslogger
-         implicit-hie-cradle lens lsp lsp-types mtl network-uri
-         opentelemetry parallel prettyprinter prettyprinter-ansi-terminal
-         regex-tdfa retrie rope-utf16-splay safe safe-exceptions shake
-         sorted-list sqlite-simple stm syb text time transformers unix
-         unliftio unliftio-core unordered-containers utf8-string vector
-       ];
-       executableHaskellDepends = [
-         aeson base bytestring containers data-default directory extra
-         filepath ghc gitrev hashable heapsize hie-bios hiedb hls-plugin-api
-         lens lsp lsp-test lsp-types optparse-applicative process
-         safe-exceptions shake text unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base binary bytestring containers data-default directory
-         extra filepath ghc ghc-typelits-knownnat haddock-library
-         hls-plugin-api lens lsp lsp-test lsp-types network-uri
-         optparse-applicative process QuickCheck quickcheck-instances
-         record-dot-preprocessor record-hasfield rope-utf16-splay safe
-         safe-exceptions shake tasty tasty-expected-failure tasty-hunit
-         tasty-quickcheck tasty-rerun text
-       ];
-       testToolDepends = [ implicit-hie ];
-       benchmarkHaskellDepends = [
-         aeson base directory extra filepath optparse-applicative shake
-         shake-bench text yaml
-       ];
-       benchmarkToolDepends = [ hp2pretty implicit-hie ];
-       description = "The core of an IDE";
-       license = lib.licenses.asl20;
-     }) {};
-
-  "ghcide_1_2_0_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, async, base
      , base16-bytestring, binary, bytestring, bytestring-encoding
      , case-insensitive, containers, cryptohash-sha1, data-default
@@ -103000,7 +102996,6 @@ self: {
        benchmarkToolDepends = [ hp2pretty implicit-hie ];
        description = "The core of an IDE";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghcjs-ajax" = callPackage
@@ -115502,8 +115497,8 @@ self: {
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "2.3.0";
-       sha256 = "03cz3inkkqbdnwwvsf7dhclp9svi8c0lpjmcp81ff9vxr1v6x73x";
+       version = "2.4.0";
+       sha256 = "1b24hc695v18gpj276wmzpbns6bfn0qjhj30nq6yiqbiq04md1h5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -115675,8 +115670,8 @@ self: {
      }:
      mkDerivation {
        pname = "haggle";
-       version = "0.1.0.0";
-       sha256 = "0fpbmllp0p23c258gam7xm0dvwphw0zpmydmg9ygl4yl1kiav470";
+       version = "0.1.0.1";
+       sha256 = "1j598hcjw0p9iac4h91w47k4rh9k0h2r9gk3rrfkklvw84aznkrz";
        libraryHaskellDepends = [
          base containers deepseq hashable monad-primitive primitive ref-tf
          vector
@@ -118533,8 +118528,8 @@ self: {
      }:
      mkDerivation {
        pname = "hascard";
-       version = "0.5.0.1";
-       sha256 = "08j3bi6a04pkkf99ghw2h7z1bdisby0d3hyqv559a1pxwpbi7k22";
+       version = "0.5.0.2";
+       sha256 = "1sh4903x05fwci7nmlqd0f2wjjs5b9bqckmgrkjpnawcnsbby1ds";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -120074,53 +120069,49 @@ self: {
      }) {};
 
   "haskell-language-server" = callPackage
-    ({ mkDerivation, aeson, async, base, base16-bytestring, binary
-     , blaze-markup, brittany, bytestring, containers, cryptohash-sha1
-     , data-default, deepseq, directory, extra, filepath, floskell
-     , fourmolu, fuzzy, ghc, ghc-boot-th, ghc-paths, ghcide, gitrev
-     , hashable, hie-bios, hiedb, hls-class-plugin, hls-eval-plugin
-     , hls-explicit-imports-plugin, hls-haddock-comments-plugin
-     , hls-hlint-plugin, hls-plugin-api, hls-retrie-plugin
-     , hls-splice-plugin, hls-tactics-plugin, hslogger, hspec
-     , hspec-core, hspec-expectations, lens, lsp, lsp-test, megaparsec
-     , mtl, optparse-applicative, optparse-simple, ormolu, process
-     , regex-tdfa, safe-exceptions, shake, sqlite-simple, stm
-     , stylish-haskell, tasty, tasty-ant-xml, tasty-expected-failure
-     , tasty-golden, tasty-hunit, tasty-rerun, temporary, text
-     , transformers, unordered-containers, with-utf8, yaml
+    ({ mkDerivation, aeson, aeson-pretty, async, base
+     , base16-bytestring, binary, bytestring, containers
+     , cryptohash-sha1, data-default, deepseq, directory, extra
+     , filepath, floskell, fourmolu, fuzzy, ghc, ghc-boot-th, ghc-paths
+     , ghcide, gitrev, hashable, hie-bios, hiedb, hls-brittany-plugin
+     , hls-class-plugin, hls-eval-plugin, hls-explicit-imports-plugin
+     , hls-haddock-comments-plugin, hls-hlint-plugin, hls-plugin-api
+     , hls-retrie-plugin, hls-splice-plugin, hls-stylish-haskell-plugin
+     , hls-tactics-plugin, hls-test-utils, hslogger, hspec-expectations
+     , lens, lsp, lsp-test, lsp-types, mtl, optparse-applicative
+     , optparse-simple, ormolu, process, regex-tdfa, safe-exceptions
+     , shake, sqlite-simple, temporary, text, transformers
+     , unordered-containers
      }:
      mkDerivation {
        pname = "haskell-language-server";
-       version = "1.0.0.0";
-       sha256 = "0jchps7rwsbfq1fsyyf4jgxb4b11d8c3iaq2p4c5vz7vz2d6w1s3";
+       version = "1.1.0.0";
+       sha256 = "0zbr8qr097mjcsbgdkm6a8ala1ifdajmllr8basvrndn28zgi5cg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         async base base16-bytestring bytestring containers cryptohash-sha1
-         data-default directory extra filepath ghc ghcide gitrev hie-bios
-         hiedb hls-plugin-api hslogger lsp optparse-applicative
-         optparse-simple process safe-exceptions shake sqlite-simple text
-         unordered-containers
+         aeson-pretty async base base16-bytestring bytestring containers
+         cryptohash-sha1 data-default directory extra filepath ghc ghcide
+         gitrev hie-bios hiedb hls-plugin-api hslogger lsp
+         optparse-applicative optparse-simple process safe-exceptions shake
+         sqlite-simple text unordered-containers
        ];
        executableHaskellDepends = [
-         aeson async base base16-bytestring binary brittany bytestring
-         containers cryptohash-sha1 data-default deepseq directory extra
-         filepath floskell fourmolu fuzzy ghc ghc-boot-th ghc-paths ghcide
-         gitrev hashable hie-bios hiedb hls-class-plugin hls-eval-plugin
-         hls-explicit-imports-plugin hls-haddock-comments-plugin
-         hls-hlint-plugin hls-plugin-api hls-retrie-plugin hls-splice-plugin
+         aeson async base base16-bytestring binary bytestring containers
+         cryptohash-sha1 data-default deepseq directory extra filepath
+         floskell fourmolu fuzzy ghc ghc-boot-th ghc-paths ghcide gitrev
+         hashable hie-bios hiedb hls-brittany-plugin hls-class-plugin
+         hls-eval-plugin hls-explicit-imports-plugin
+         hls-haddock-comments-plugin hls-hlint-plugin hls-plugin-api
+         hls-retrie-plugin hls-splice-plugin hls-stylish-haskell-plugin
          hls-tactics-plugin hslogger lens lsp mtl optparse-applicative
          optparse-simple ormolu process regex-tdfa safe-exceptions shake
-         sqlite-simple stylish-haskell temporary text transformers
-         unordered-containers with-utf8
+         sqlite-simple temporary text transformers unordered-containers
        ];
        testHaskellDepends = [
-         aeson base blaze-markup bytestring containers data-default deepseq
-         directory extra filepath ghcide hie-bios hls-plugin-api hslogger
-         hspec hspec-core hspec-expectations lens lsp lsp-test megaparsec
-         process stm tasty tasty-ant-xml tasty-expected-failure tasty-golden
-         tasty-hunit tasty-rerun temporary text transformers
-         unordered-containers yaml
+         aeson base bytestring containers data-default directory extra
+         filepath ghcide hls-plugin-api hls-test-utils hspec-expectations
+         lens lsp-test lsp-types process text unordered-containers
        ];
        testToolDepends = [ ghcide ];
        description = "LSP server for GHC";
@@ -124763,29 +124754,31 @@ self: {
   "hcheckers" = callPackage
     ({ mkDerivation, aeson, array, base, binary, bits, bytes
      , bytestring, clock, concurrent-extra, containers, data-default
-     , directory, ekg, ekg-core, exceptions, fast-logger, filepath
-     , hashable, hashtables, heavy-logger, hsyslog, http-types
-     , megaparsec, microlens, monad-metrics, mtl, mwc-random, network
-     , optparse-applicative, psqueues, random, random-access-file
-     , random-shuffle, scotty, stm, stm-containers, store
-     , template-haskell, text, text-format-heavy, unix, unix-bytestring
-     , unordered-containers, vector, wai, warp, yaml
+     , directory, ekg, ekg-core, exceptions, fast-logger, filepath, Glob
+     , hashable, hashtables, heavy-logger, hsyslog, http-types, list-t
+     , megaparsec, microlens, modern-uri, monad-metrics, mtl, mwc-random
+     , network, optparse-applicative, psqueues, random
+     , random-access-file, random-shuffle, req, scotty, stm
+     , stm-containers, store, template-haskell, text, text-format-heavy
+     , unix, unix-bytestring, unordered-containers, vector, wai, warp
+     , yaml
      }:
      mkDerivation {
        pname = "hcheckers";
-       version = "0.1.0.1";
-       sha256 = "1l4cj7v4scnz5cq05294ym4gyv163ry09bpxp1vg1m1v88ww5i2w";
+       version = "0.1.0.2";
+       sha256 = "1v4hnqvi47kn10c1rjgsggxmajy7xnl462ghb2fs61ksbmrdi5b8";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          aeson array base binary bits bytes bytestring clock
          concurrent-extra containers data-default directory ekg ekg-core
-         exceptions fast-logger filepath hashable hashtables heavy-logger
-         hsyslog http-types megaparsec microlens monad-metrics mtl
-         mwc-random network optparse-applicative psqueues random
-         random-access-file random-shuffle scotty stm stm-containers store
-         template-haskell text text-format-heavy unix unix-bytestring
-         unordered-containers vector wai warp yaml
+         exceptions fast-logger filepath Glob hashable hashtables
+         heavy-logger hsyslog http-types list-t megaparsec microlens
+         modern-uri monad-metrics mtl mwc-random network
+         optparse-applicative psqueues random random-access-file
+         random-shuffle req scotty stm stm-containers store template-haskell
+         text text-format-heavy unix unix-bytestring unordered-containers
+         vector wai warp yaml
        ];
        description = "Implementation of checkers (\"draughts\") board game - server application";
        license = lib.licenses.bsd3;
@@ -130655,6 +130648,26 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "hkgr_0_3" = callPackage
+    ({ mkDerivation, base, bytestring, directory, extra, filepath
+     , simple-cabal, simple-cmd-args, typed-process, xdg-basedir
+     }:
+     mkDerivation {
+       pname = "hkgr";
+       version = "0.3";
+       sha256 = "1w8ww2dkskdfs0lh6wbn5byhnrf6mwih7n5yp81fr6awdc0k1qrm";
+       isLibrary = false;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       executableHaskellDepends = [
+         base bytestring directory extra filepath simple-cabal
+         simple-cmd-args typed-process xdg-basedir
+       ];
+       description = "Simple Hackage release workflow for package maintainers";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hkt" = callPackage
     ({ mkDerivation, base, hspec, inspection-testing, protolude, text
      }:
@@ -131402,23 +131415,26 @@ self: {
        testHaskellDepends = [ base bytestring hls-test-utils text ];
        description = "Integration with the Brittany code formatter";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {hls-test-utils = null;};
+     }) {};
 
   "hls-class-plugin" = callPackage
-    ({ mkDerivation, aeson, base, containers, ghc, ghc-exactprint
-     , ghcide, hls-plugin-api, lens, lsp, shake, text, transformers
+    ({ mkDerivation, aeson, base, bytestring, containers, filepath, ghc
+     , ghc-exactprint, ghcide, hls-plugin-api, hls-test-utils, lens, lsp
+     , lsp-test, lsp-types, shake, text, transformers
      , unordered-containers
      }:
      mkDerivation {
        pname = "hls-class-plugin";
-       version = "1.0.0.0";
-       sha256 = "103rswyrbs35q6mmv19bnj4cp4r1n5mx6aazcabfakh1cix0fn60";
+       version = "1.0.0.1";
+       sha256 = "0s9pkdcgvfb9qhj9qjy6bygdyshanczcn9apq3qcw8yznl1zqilc";
        libraryHaskellDepends = [
          aeson base containers ghc ghc-exactprint ghcide hls-plugin-api lens
          lsp shake text transformers unordered-containers
        ];
+       testHaskellDepends = [
+         base bytestring filepath hls-test-utils lens lsp-test lsp-types
+         text
+       ];
        description = "Class/instance management plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131426,15 +131442,15 @@ self: {
   "hls-eval-plugin" = callPackage
     ({ mkDerivation, aeson, base, containers, deepseq, Diff, directory
      , dlist, extra, filepath, ghc, ghc-boot-th, ghc-paths, ghcide
-     , hashable, hls-plugin-api, lens, lsp, lsp-types, megaparsec, mtl
-     , parser-combinators, pretty-simple, QuickCheck, safe-exceptions
-     , shake, temporary, text, time, transformers, unliftio
-     , unordered-containers
+     , hashable, hls-plugin-api, hls-test-utils, lens, lsp, lsp-test
+     , lsp-types, megaparsec, mtl, parser-combinators, pretty-simple
+     , QuickCheck, safe-exceptions, shake, temporary, text, time
+     , transformers, unliftio, unordered-containers
      }:
      mkDerivation {
        pname = "hls-eval-plugin";
-       version = "1.0.0.0";
-       sha256 = "0pslyhgvs6xrwijkyf4jdh873mnsb8iijmkbc9aq3dljdy080fdg";
+       version = "1.1.0.0";
+       sha256 = "138l49a8y0g7yk29xdjs0jv0xmz3y8lvig45g944spj3xi8snpfx";
        libraryHaskellDepends = [
          aeson base containers deepseq Diff directory dlist extra filepath
          ghc ghc-boot-th ghc-paths ghcide hashable hls-plugin-api lens lsp
@@ -131442,6 +131458,10 @@ self: {
          QuickCheck safe-exceptions shake temporary text time transformers
          unliftio unordered-containers
        ];
+       testHaskellDepends = [
+         aeson base directory extra filepath hls-test-utils lens lsp-test
+         lsp-types text
+       ];
        description = "Eval plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131471,24 +131491,6 @@ self: {
      }:
      mkDerivation {
        pname = "hls-explicit-imports-plugin";
-       version = "1.0.0.0";
-       sha256 = "14j89l8pkxrffllg06fj6215xqdswrbndyv5xa22f0g00acmwi6w";
-       revision = "1";
-       editedCabalFile = "0gch9wkz1h4g06xc48jhvs06jji9d0npa2zrj2gv1cbf6hjs0s92";
-       libraryHaskellDepends = [
-         aeson base containers deepseq ghc ghcide hls-plugin-api lsp
-         lsp-types shake text unordered-containers
-       ];
-       description = "Explicit imports plugin for Haskell Language Server";
-       license = lib.licenses.asl20;
-     }) {};
-
-  "hls-explicit-imports-plugin_1_0_0_1" = callPackage
-    ({ mkDerivation, aeson, base, containers, deepseq, ghc, ghcide
-     , hls-plugin-api, lsp, lsp-types, shake, text, unordered-containers
-     }:
-     mkDerivation {
-       pname = "hls-explicit-imports-plugin";
        version = "1.0.0.1";
        sha256 = "1ygs667pkc3zn66yqz6ssrxifhrc906sddmcgjnkprk7zappk2nc";
        libraryHaskellDepends = [
@@ -131497,21 +131499,24 @@ self: {
        ];
        description = "Explicit imports plugin for Haskell Language Server";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hls-haddock-comments-plugin" = callPackage
-    ({ mkDerivation, base, containers, ghc, ghc-exactprint, ghcide
-     , hls-plugin-api, lsp-types, text, unordered-containers
+    ({ mkDerivation, base, bytestring, containers, filepath, ghc
+     , ghc-exactprint, ghcide, hls-plugin-api, hls-test-utils, lsp-types
+     , text, unordered-containers
      }:
      mkDerivation {
        pname = "hls-haddock-comments-plugin";
-       version = "1.0.0.0";
-       sha256 = "1azy3rrbdi465c65f603ycj14mz1cvc9h92rrf0b0frs90hs66r3";
+       version = "1.0.0.1";
+       sha256 = "1qny8y52myd3ic893wxapbqhfdcdbil8acky91lfcylr9141154i";
        libraryHaskellDepends = [
          base containers ghc ghc-exactprint ghcide hls-plugin-api lsp-types
          text unordered-containers
        ];
+       testHaskellDepends = [
+         base bytestring filepath hls-test-utils text
+       ];
        description = "Haddock comments plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131525,8 +131530,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-hlint-plugin";
-       version = "1.0.0.1";
-       sha256 = "0hnfh6x8l20nrj54hpkkq2yj8xkgw15xcba27hagapam2yxi1xga";
+       version = "1.0.0.2";
+       sha256 = "1qi654azf4l24sc7zaimbxm7z59xfvdvn33fsa5d8y7910w17d73";
        libraryHaskellDepends = [
          aeson apply-refact base binary bytestring containers data-default
          deepseq Diff directory extra filepath ghc ghc-exactprint ghcide
@@ -131545,25 +131550,6 @@ self: {
      }:
      mkDerivation {
        pname = "hls-plugin-api";
-       version = "1.0.0.0";
-       sha256 = "03pj0irgf9p84jn5kfd4cfyqk4xyfdf9pfrwqhb0c1ipnm4l7wal";
-       libraryHaskellDepends = [
-         aeson base containers data-default dependent-map dependent-sum Diff
-         dlist hashable hslogger lens lsp opentelemetry process regex-tdfa
-         shake text unix unordered-containers
-       ];
-       description = "Haskell Language Server API for plugin communication";
-       license = lib.licenses.asl20;
-     }) {};
-
-  "hls-plugin-api_1_1_0_0" = callPackage
-    ({ mkDerivation, aeson, base, containers, data-default
-     , dependent-map, dependent-sum, Diff, dlist, hashable, hslogger
-     , lens, lsp, opentelemetry, process, regex-tdfa, shake, text, unix
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "hls-plugin-api";
        version = "1.1.0.0";
        sha256 = "1i18a5gxa409882zpviy4paldaq43j4z1zmgr9mag2mn64vplrxy";
        libraryHaskellDepends = [
@@ -131573,7 +131559,6 @@ self: {
        ];
        description = "Haskell Language Server API for plugin communication";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hls-retrie-plugin" = callPackage
@@ -131583,24 +131568,6 @@ self: {
      }:
      mkDerivation {
        pname = "hls-retrie-plugin";
-       version = "1.0.0.0";
-       sha256 = "1m4r6nxbq1lvjkl6g1i0lbxdx4zimw6g478alnqv8n208q6fiw26";
-       libraryHaskellDepends = [
-         aeson base containers deepseq directory extra ghc ghcide hashable
-         hls-plugin-api lsp lsp-types retrie safe-exceptions shake text
-         transformers unordered-containers
-       ];
-       description = "Retrie integration plugin for Haskell Language Server";
-       license = lib.licenses.asl20;
-     }) {};
-
-  "hls-retrie-plugin_1_0_0_2" = callPackage
-    ({ mkDerivation, aeson, base, containers, deepseq, directory, extra
-     , ghc, ghcide, hashable, hls-plugin-api, lsp, lsp-types, retrie
-     , safe-exceptions, shake, text, transformers, unordered-containers
-     }:
-     mkDerivation {
-       pname = "hls-retrie-plugin";
        version = "1.0.0.2";
        sha256 = "0jw1q0dk5jl80wbyvi1a6vszj9x3s7d2bnsbnyycbh4zgl33agwb";
        libraryHaskellDepends = [
@@ -131610,64 +131577,99 @@ self: {
        ];
        description = "Retrie integration plugin for Haskell Language Server";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hls-splice-plugin" = callPackage
-    ({ mkDerivation, aeson, base, containers, dlist, extra, foldl, ghc
-     , ghc-exactprint, ghcide, hls-plugin-api, lens, lsp, retrie, shake
-     , syb, text, transformers, unliftio-core, unordered-containers
+    ({ mkDerivation, aeson, base, containers, directory, dlist, extra
+     , filepath, foldl, ghc, ghc-exactprint, ghcide, hls-plugin-api
+     , hls-test-utils, lens, lsp, retrie, shake, syb, text, transformers
+     , unliftio-core, unordered-containers
      }:
      mkDerivation {
        pname = "hls-splice-plugin";
-       version = "1.0.0.0";
-       sha256 = "1xm9ji64g89fn4b81gd5g0ijv88b2zhyn303hr3jxhydqpfcipjb";
+       version = "1.0.0.1";
+       sha256 = "0fyc2z1bh64plqf831f19nqkgkhryklgrrql2cn25jhfg55gf95q";
        libraryHaskellDepends = [
          aeson base containers dlist extra foldl ghc ghc-exactprint ghcide
          hls-plugin-api lens lsp retrie shake syb text transformers
          unliftio-core unordered-containers
        ];
+       testHaskellDepends = [
+         base directory extra filepath hls-test-utils text
+       ];
        description = "HLS Plugin to expand TemplateHaskell Splices and QuasiQuotes";
        license = lib.licenses.asl20;
      }) {};
 
+  "hls-stylish-haskell-plugin" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, ghc
+     , ghc-boot-th, ghcide, hls-plugin-api, hls-test-utils, lsp-types
+     , mtl, stylish-haskell, text
+     }:
+     mkDerivation {
+       pname = "hls-stylish-haskell-plugin";
+       version = "1.0.0.0";
+       sha256 = "1f2banm7lbl2grqrm0d9dnhk5fimxqan3xlsl4hjyqgy42xqqai2";
+       libraryHaskellDepends = [
+         base directory filepath ghc ghc-boot-th ghcide hls-plugin-api
+         lsp-types mtl stylish-haskell text
+       ];
+       testHaskellDepends = [ base bytestring hls-test-utils text ];
+       description = "Integration with the Stylish Haskell code formatter";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hls-tactics-plugin" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, checkers, containers
-     , data-default, deepseq, directory, extra, filepath, fingertree
-     , generic-lens, ghc, ghc-boot-th, ghc-exactprint, ghc-source-gen
-     , ghcide, hie-bios, hls-plugin-api, hspec, hspec-discover
-     , hspec-expectations, lens, lsp, lsp-test, lsp-types, megaparsec
-     , mtl, QuickCheck, refinery, retrie, shake, syb, tasty
-     , tasty-ant-xml, tasty-expected-failure, tasty-golden, tasty-hunit
-     , tasty-rerun, text, transformers
+    ({ mkDerivation, aeson, base, containers, deepseq, directory, extra
+     , filepath, fingertree, generic-lens, ghc, ghc-boot-th
+     , ghc-exactprint, ghc-source-gen, ghcide, hls-plugin-api
+     , hls-test-utils, hspec, hspec-discover, hspec-expectations, lens
+     , lsp, lsp-types, mtl, QuickCheck, refinery, retrie, shake, syb
+     , tasty-hspec, tasty-hunit, text, transformers
+     , unordered-containers
      }:
      mkDerivation {
        pname = "hls-tactics-plugin";
-       version = "1.0.0.0";
-       sha256 = "0cd6d3m3w1n7x22k5xndjl9r440s5nx6q2fg3wcmdsbd3s3pg1qa";
-       isLibrary = true;
-       isExecutable = true;
+       version = "1.1.0.0";
+       sha256 = "13qysl6dwrn15kn310r04g1yv7jj9xhar659lrc8h230c4khn2qv";
        libraryHaskellDepends = [
          aeson base containers deepseq directory extra filepath fingertree
          generic-lens ghc ghc-boot-th ghc-exactprint ghc-source-gen ghcide
          hls-plugin-api lens lsp mtl refinery retrie shake syb text
-         transformers
-       ];
-       executableHaskellDepends = [
-         base data-default ghcide hls-plugin-api shake
+         transformers unordered-containers
        ];
        testHaskellDepends = [
-         aeson base bytestring checkers containers data-default deepseq
-         directory filepath ghc ghcide hie-bios hls-plugin-api hspec
-         hspec-expectations lens lsp-test lsp-types megaparsec mtl
-         QuickCheck tasty tasty-ant-xml tasty-expected-failure tasty-golden
-         tasty-hunit tasty-rerun text
+         aeson base containers deepseq directory filepath ghc ghcide
+         hls-plugin-api hls-test-utils hspec hspec-expectations lens
+         lsp-types mtl QuickCheck tasty-hspec tasty-hunit text
        ];
        testToolDepends = [ hspec-discover ];
        description = "Wingman plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
 
+  "hls-test-utils" = callPackage
+    ({ mkDerivation, aeson, async, base, blaze-markup, bytestring
+     , containers, data-default, directory, extra, filepath, ghcide
+     , hls-plugin-api, hspec, hspec-core, lens, lsp, lsp-test, lsp-types
+     , shake, tasty, tasty-expected-failure, tasty-golden, tasty-hunit
+     , tasty-rerun, temporary, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "hls-test-utils";
+       version = "1.0.0.0";
+       sha256 = "18n7vb9fa39jkgr0gvsrjfc0nh09w2xlniifb25bn6z3qc3w0h6i";
+       libraryHaskellDepends = [
+         aeson async base blaze-markup bytestring containers data-default
+         directory extra filepath ghcide hls-plugin-api hspec hspec-core
+         lens lsp lsp-test lsp-types shake tasty tasty-expected-failure
+         tasty-golden tasty-hunit tasty-rerun temporary text
+         unordered-containers
+       ];
+       description = "Utilities used in the tests of Haskell Language Server";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hlwm" = callPackage
     ({ mkDerivation, base, stm, transformers, unix, X11 }:
      mkDerivation {
@@ -138863,23 +138865,6 @@ self: {
      }) {};
 
   "hspec-golden" = callPackage
-    ({ mkDerivation, base, directory, hspec, hspec-core
-     , optparse-applicative, silently
-     }:
-     mkDerivation {
-       pname = "hspec-golden";
-       version = "0.1.0.3";
-       sha256 = "1d5ab34n0f1wk1q86qlb7x2b49abzzh08jh7j52nbrvnxld2j64l";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base directory hspec-core ];
-       executableHaskellDepends = [ base directory optparse-applicative ];
-       testHaskellDepends = [ base directory hspec hspec-core silently ];
-       description = "Golden tests for hspec";
-       license = lib.licenses.mit;
-     }) {};
-
-  "hspec-golden_0_2_0_0" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec, hspec-core
      , optparse-applicative, silently
      }:
@@ -138894,7 +138879,6 @@ self: {
        testHaskellDepends = [ base directory hspec hspec-core silently ];
        description = "Golden tests for hspec";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hspec-golden-aeson" = callPackage
@@ -147220,8 +147204,8 @@ self: {
      }:
      mkDerivation {
        pname = "imm";
-       version = "2.1.0.0";
-       sha256 = "01jpwxqp2c5ih9cw38w4j7x1dff0z7z1d43yx1rri83w8shpjbl3";
+       version = "2.1.1.0";
+       sha256 = "1w3kypakf8zqz8r44r9bx0z5v4wxvhnf446jzarawn9fg7yigcqn";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -148704,6 +148688,8 @@ self: {
        pname = "inline-java";
        version = "0.10.0";
        sha256 = "0rs2rw21y0yc0h4c1rz25qblk39flkg19fwjz87s6l0ly1hvcrm5";
+       revision = "1";
+       editedCabalFile = "07qpgqy66zpmg1yz38y1w5gbbcc0nvidmlg2z4anj0k5rifzgdv6";
        libraryHaskellDepends = [
          base bytestring Cabal directory filepath ghc jni jvm language-java
          mtl process template-haskell temporary text
@@ -149767,8 +149753,8 @@ self: {
      }:
      mkDerivation {
        pname = "interval-algebra";
-       version = "0.5.0";
-       sha256 = "1zjqyhcdi058gkq8pyhwfnn2zlzj8iifsl2c1z2ngvmpgxivq0qc";
+       version = "0.6.2";
+       sha256 = "0rfx5li74s160i64rjzl1p8gjj3aqxc1hml2n0c1jrair7l1g2iy";
        libraryHaskellDepends = [
          base containers QuickCheck time witherable
        ];
@@ -150509,16 +150495,15 @@ self: {
      }) {};
 
   "ipa" = callPackage
-    ({ mkDerivation, attoparsec, base, hspec, text, unicode-transforms
+    ({ mkDerivation, attoparsec, base, hspec, template-haskell, text
+     , unicode-transforms
      }:
      mkDerivation {
        pname = "ipa";
-       version = "0.3";
-       sha256 = "0cm9ahqaf2kdqny6nmk9ff1h413v0iqbfsf6glrr5vkhmx60h9qm";
-       revision = "2";
-       editedCabalFile = "1jafvzz7vdbkcwywdhx49g2q1f0gah0bz921kia6lbi5jnyaail1";
+       version = "0.3.1";
+       sha256 = "1l658qnqfs63dwarmiaw7vf6v2xl8hhvzlb95w168rpa7wfkrh5n";
        libraryHaskellDepends = [
-         attoparsec base text unicode-transforms
+         attoparsec base template-haskell text unicode-transforms
        ];
        testHaskellDepends = [ base hspec text ];
        description = "Internal Phonetic Alphabet (IPA)";
@@ -150828,26 +150813,6 @@ self: {
      }:
      mkDerivation {
        pname = "irc-client";
-       version = "1.1.2.0";
-       sha256 = "0gd7ww2cmnh7im0gicsj1617540kl97780860hzf8nkixn71hwqr";
-       libraryHaskellDepends = [
-         base bytestring conduit connection containers contravariant
-         exceptions irc-conduit irc-ctcp mtl network-conduit-tls old-locale
-         profunctors stm stm-chans text time tls transformers x509
-         x509-store x509-validation
-       ];
-       description = "An IRC client library";
-       license = lib.licenses.mit;
-     }) {};
-
-  "irc-client_1_1_2_1" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, connection, containers
-     , contravariant, exceptions, irc-conduit, irc-ctcp, mtl
-     , network-conduit-tls, old-locale, profunctors, stm, stm-chans
-     , text, time, tls, transformers, x509, x509-store, x509-validation
-     }:
-     mkDerivation {
-       pname = "irc-client";
        version = "1.1.2.1";
        sha256 = "1zaa8na730m96flgiyzcwq95v2ianvflsw3abvdavf7xpq4s71ld";
        libraryHaskellDepends = [
@@ -150858,7 +150823,6 @@ self: {
        ];
        description = "An IRC client library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "irc-colors" = callPackage
@@ -153068,6 +153032,8 @@ self: {
        pname = "jni";
        version = "0.8.0";
        sha256 = "0m94p2zx877snh3imwcdnwa8ajfb76cg2rjgjx3pan508ham1h5i";
+       revision = "2";
+       editedCabalFile = "1ql65nfmd5mhn7y2xdifx240mk5my5z8w3pn85497hzk27qllybi";
        libraryHaskellDepends = [
          async base bytestring choice constraints containers deepseq
          inline-c singletons stm text
@@ -155052,6 +155018,8 @@ self: {
        pname = "jvm";
        version = "0.6.0";
        sha256 = "119davscv5mrw2mnlrklx8hbjrc7lhf5a9jphdnnxs6bywi8i2zm";
+       revision = "2";
+       editedCabalFile = "1p0p50w0zjf79a3p5wiwg1wfnsgvqf2n04ydpacrfwm96id667kp";
        libraryHaskellDepends = [
          base bytestring choice constraints distributed-closure exceptions
          jni singletons template-haskell text vector
@@ -155077,6 +155045,8 @@ self: {
        pname = "jvm-batching";
        version = "0.2.0";
        sha256 = "19z0db10y181n4adkz23cmly0q4zp953zh6f3r7rmxcd78758pbk";
+       revision = "1";
+       editedCabalFile = "1ni0gnww6r18dg2pm1hmdkfzaghq5ssirpp737i1c81ya1k95m2n";
        setupHaskellDepends = [ base Cabal inline-java ];
        libraryHaskellDepends = [
          base bytestring distributed-closure inline-java jni jvm singletons
@@ -155155,6 +155125,8 @@ self: {
        pname = "jvm-streaming";
        version = "0.4.0";
        sha256 = "0k8y6kvbymmjlr3bvgcws0z2hwdznyr3b3alkwsjag49lsgp21sd";
+       revision = "1";
+       editedCabalFile = "01f3j02qzqi7ls876vwzl2db3621xr7psmzm3cx9pk414bhj5f56";
        setupHaskellDepends = [ base Cabal inline-java jvm-batching ];
        libraryHaskellDepends = [
          base distributed-closure inline-java jni jvm jvm-batching
@@ -157431,6 +157403,18 @@ self: {
        license = lib.licenses.gpl2Only;
      }) {};
 
+  "koji_0_0_2" = callPackage
+    ({ mkDerivation, base, haxr, mtl }:
+     mkDerivation {
+       pname = "koji";
+       version = "0.0.2";
+       sha256 = "1ypr552453r0b9s5xlsw0gllka2jaf9xwphlnx55fn05f17zh7qd";
+       libraryHaskellDepends = [ base haxr mtl ];
+       description = "Koji buildsystem XML-RPC API bindings";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "kontra-config" = callPackage
     ({ mkDerivation, base, bytestring, data-default, exceptions, text
      , transformers-base, unjson, utf8-string, yaml
@@ -159403,8 +159387,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-docker";
-       version = "9.3.0";
-       sha256 = "1n9v0b6lwr528b6919y11a8d27mhsp0mm870rx0rjg9l5j4mnbvn";
+       version = "10.0.0";
+       sha256 = "0h2jq15niz77h2vpqyq7gblgbsrrvsr3qjw1cmjvr474zgzxmrv7";
        libraryHaskellDepends = [
          base bytestring containers data-default-class megaparsec
          prettyprinter split text time
@@ -168671,36 +168655,6 @@ self: {
      }:
      mkDerivation {
        pname = "lsp";
-       version = "1.1.1.0";
-       sha256 = "04ndz4v1mwga13qndmnaaj145y5zqw7zv64px7ak26qvd1m26h9r";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson async attoparsec base bytestring containers data-default
-         dependent-map directory filepath hashable hslogger lens lsp-types
-         mtl network-uri random scientific sorted-list stm text time
-         transformers unliftio-core unordered-containers uuid
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers data-default directory filepath
-         hashable hspec lens network-uri QuickCheck quickcheck-instances
-         rope-utf16-splay sorted-list stm text unordered-containers
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Haskell library for the Microsoft Language Server Protocol";
-       license = lib.licenses.mit;
-     }) {};
-
-  "lsp_1_2_0_0" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, bytestring
-     , containers, data-default, dependent-map, directory, filepath
-     , hashable, hslogger, hspec, hspec-discover, lens, lsp-types, mtl
-     , network-uri, QuickCheck, quickcheck-instances, random
-     , rope-utf16-splay, scientific, sorted-list, stm, text, time
-     , transformers, unliftio-core, unordered-containers, uuid
-     }:
-     mkDerivation {
-       pname = "lsp";
        version = "1.2.0.0";
        sha256 = "0ca8s84xlh9kmi1lx47d6z3c8c827q30spmbxi1nl37dn35ib4b6";
        isLibrary = true;
@@ -168719,7 +168673,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Haskell library for the Microsoft Language Server Protocol";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lsp-test" = callPackage
@@ -168749,34 +168702,6 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "lsp-test_0_13_0_0" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
-     , bytestring, conduit, conduit-parse, containers, data-default
-     , Diff, directory, filepath, Glob, hspec, lens, lsp-types, mtl
-     , parser-combinators, process, some, text, time, transformers, unix
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "lsp-test";
-       version = "0.13.0.0";
-       sha256 = "1xyxmzcd6r56jj1k11lz1g6yld5q3k6cgb0bsf45px120dsf1dpy";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty ansi-terminal async base bytestring conduit
-         conduit-parse containers data-default Diff directory filepath Glob
-         lens lsp-types mtl parser-combinators process some text time
-         transformers unix unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base data-default directory filepath hspec lens lsp-types
-         text unordered-containers
-       ];
-       description = "Functional test framework for LSP servers";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
   "lsp-test_0_14_0_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
      , bytestring, conduit, conduit-parse, containers, data-default
@@ -168814,29 +168739,6 @@ self: {
      }:
      mkDerivation {
        pname = "lsp-types";
-       version = "1.1.0.0";
-       sha256 = "19lkdqwh9a5rsx5nby37v54zhwyja306z0dyslsmdmwqw92qxx54";
-       revision = "1";
-       editedCabalFile = "0iifws4r1h9v1mbsrmbvssvm0gmvzm9yh9h85izly0s51869bbq4";
-       libraryHaskellDepends = [
-         aeson base binary bytestring containers data-default deepseq
-         dependent-sum dependent-sum-template directory filepath hashable
-         hslogger lens network-uri rope-utf16-splay scientific some
-         template-haskell temporary text unordered-containers
-       ];
-       description = "Haskell library for the Microsoft Language Server Protocol, data types";
-       license = lib.licenses.mit;
-     }) {};
-
-  "lsp-types_1_2_0_0" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, containers
-     , data-default, deepseq, dependent-sum, dependent-sum-template
-     , directory, filepath, hashable, hslogger, lens, network-uri
-     , rope-utf16-splay, scientific, some, template-haskell, temporary
-     , text, unordered-containers
-     }:
-     mkDerivation {
-       pname = "lsp-types";
        version = "1.2.0.0";
        sha256 = "1axl62yafkxh414dxr5i7pwqw0s3kkqphs7b259qk33vin3qayk3";
        libraryHaskellDepends = [
@@ -168847,7 +168749,6 @@ self: {
        ];
        description = "Haskell library for the Microsoft Language Server Protocol, data types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lss" = callPackage
@@ -174677,13 +174578,20 @@ self: {
      }) {};
 
   "method" = callPackage
-    ({ mkDerivation, base, hspec, hspec-discover, rio, transformers }:
+    ({ mkDerivation, base, containers, hspec, hspec-discover, rio
+     , template-haskell, th-abstraction, transformers
+     }:
      mkDerivation {
        pname = "method";
-       version = "0.3.1.0";
-       sha256 = "0a96av07vbh3mvyczh2jiziqb098q81jx6q0c5kgn7pmlxijw1ba";
-       libraryHaskellDepends = [ base rio transformers ];
-       testHaskellDepends = [ base hspec rio transformers ];
+       version = "0.4.0.0";
+       sha256 = "0ca7xfy5yb8d68l530q6h82843i5yvp9grr9r23s7rfbisbysfpb";
+       libraryHaskellDepends = [
+         base containers rio template-haskell th-abstraction transformers
+       ];
+       testHaskellDepends = [
+         base containers hspec rio template-haskell th-abstraction
+         transformers
+       ];
        testToolDepends = [ hspec-discover ];
        description = "rebindable methods for improving testability";
        license = lib.licenses.bsd3;
@@ -176804,6 +176712,26 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "mixed-types-num_0_5_0_0" = callPackage
+    ({ mkDerivation, base, collect-errors, hspec, hspec-smallcheck, mtl
+     , QuickCheck, smallcheck, template-haskell
+     }:
+     mkDerivation {
+       pname = "mixed-types-num";
+       version = "0.5.0.0";
+       sha256 = "17jfrhlcc86qw0zg997hsd11dc97vrqfkylhwb5ii9ls14j5qxfl";
+       libraryHaskellDepends = [
+         base collect-errors hspec hspec-smallcheck mtl QuickCheck
+         smallcheck template-haskell
+       ];
+       testHaskellDepends = [
+         base collect-errors hspec hspec-smallcheck QuickCheck smallcheck
+       ];
+       description = "Alternative Prelude with numeric and logic expressions typed bottom-up";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "mixpanel-client" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring, hspec
      , hspec-discover, http-client, http-client-tls, markdown-unlit
@@ -195236,6 +195164,24 @@ self: {
        broken = true;
      }) {};
 
+  "pact-time" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, cereal, clock
+     , Decimal, deepseq, microlens, mtl, tasty, tasty-hunit, text
+     , vector, vector-space
+     }:
+     mkDerivation {
+       pname = "pact-time";
+       version = "0.2.0.0";
+       sha256 = "04d8hd4hnbsjvzjjvnyabc68srhyp8k9459pp0y1sdc7z6c0qq1m";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring cereal clock Decimal deepseq
+         microlens mtl text vector vector-space
+       ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "Time Library for Pact";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "padKONTROL" = callPackage
     ({ mkDerivation, base, containers, hmidi, minioperational
      , transformers
@@ -195994,40 +195940,6 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-plot";
-       version = "1.1.1";
-       sha256 = "10wwci7p3kphmjxlnpymbnx3cw2l3yfydm29l6k2vakz1pd7zdh0";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base bytestring containers data-default directory filepath hashable
-         lifted-async lifted-base mtl pandoc pandoc-types shakespeare
-         tagsoup template-haskell text typed-process yaml
-       ];
-       executableHaskellDepends = [
-         base containers directory filepath githash optparse-applicative
-         pandoc pandoc-types template-haskell text typed-process
-       ];
-       testHaskellDepends = [
-         base containers directory filepath hspec hspec-expectations
-         pandoc-types tasty tasty-hspec tasty-hunit text
-       ];
-       benchmarkHaskellDepends = [
-         base criterion pandoc-types template-haskell text
-       ];
-       description = "A Pandoc filter to include figures generated from code blocks using your plotting toolkit of choice";
-       license = lib.licenses.gpl2Plus;
-     }) {};
-
-  "pandoc-plot_1_2_0" = callPackage
-    ({ mkDerivation, base, bytestring, containers, criterion
-     , data-default, directory, filepath, githash, hashable, hspec
-     , hspec-expectations, lifted-async, lifted-base, mtl
-     , optparse-applicative, pandoc, pandoc-types, shakespeare, tagsoup
-     , tasty, tasty-hspec, tasty-hunit, template-haskell, text
-     , typed-process, yaml
-     }:
-     mkDerivation {
-       pname = "pandoc-plot";
        version = "1.2.0";
        sha256 = "091283hcp3rin1rpg6b4lkh32svqr1gjxsa15id3qic7a7knx2r0";
        isLibrary = true;
@@ -196050,7 +195962,6 @@ self: {
        ];
        description = "A Pandoc filter to include figures generated from code blocks using your plotting toolkit of choice";
        license = lib.licenses.gpl2Plus;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "pandoc-pyplot" = callPackage
@@ -200431,32 +200342,36 @@ self: {
        maintainers = with lib.maintainers; [ psibi ];
      }) {};
 
-  "persistent_2_12_1_1" = callPackage
+  "persistent_2_13_0_0" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
      , blaze-html, bytestring, conduit, containers, criterion, deepseq
      , deepseq-generics, fast-logger, file-embed, hspec, http-api-data
-     , monad-logger, mtl, path-pieces, QuickCheck, resource-pool
-     , resourcet, scientific, shakespeare, silently, template-haskell
-     , text, th-lift-instances, time, transformers, unliftio
-     , unliftio-core, unordered-containers, vector
+     , lift-type, monad-logger, mtl, path-pieces, QuickCheck
+     , quickcheck-instances, resource-pool, resourcet, scientific
+     , shakespeare, silently, template-haskell, text, th-lift-instances
+     , time, transformers, unliftio, unliftio-core, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "persistent";
-       version = "2.12.1.1";
-       sha256 = "00n463mvfnjpi7dz4i3lz379cf4gprsiv57j4jb7wh5a8xr2vfhz";
+       version = "2.13.0.0";
+       sha256 = "1addkfiaixk076qkdlhjmx97f8bgfmxwna9dv0h7hfvnq8v35bkf";
+       revision = "2";
+       editedCabalFile = "12ylw4rzrjlk2m0qfgqx481k0ifhv5i8z0vy70knjrkgx8d9sfvx";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-html bytestring
-         conduit containers fast-logger http-api-data monad-logger mtl
-         path-pieces resource-pool resourcet scientific silently
+         conduit containers fast-logger http-api-data lift-type monad-logger
+         mtl path-pieces resource-pool resourcet scientific silently
          template-haskell text th-lift-instances time transformers unliftio
          unliftio-core unordered-containers vector
        ];
        testHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-html bytestring
          conduit containers fast-logger hspec http-api-data monad-logger mtl
-         path-pieces QuickCheck resource-pool resourcet scientific
-         shakespeare silently template-haskell text th-lift-instances time
-         transformers unliftio unliftio-core unordered-containers vector
+         path-pieces QuickCheck quickcheck-instances resource-pool resourcet
+         scientific shakespeare silently template-haskell text
+         th-lift-instances time transformers unliftio unliftio-core
+         unordered-containers vector
        ];
        benchmarkHaskellDepends = [
          base criterion deepseq deepseq-generics file-embed template-haskell
@@ -200533,6 +200448,33 @@ self: {
        broken = true;
      }) {};
 
+  "persistent-discover" = callPackage
+    ({ mkDerivation, base, directory, dlist, file-embed, filepath
+     , hspec, hspec-discover, mtl, persistent, template-haskell
+     }:
+     mkDerivation {
+       pname = "persistent-discover";
+       version = "0.1.0.0";
+       sha256 = "1cpjbks5cmh2w3370xnmm29rk8j3xdxmry04fyi0aqyg5f91hrdi";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base directory dlist file-embed filepath mtl persistent
+         template-haskell
+       ];
+       executableHaskellDepends = [
+         base directory dlist file-embed filepath mtl persistent
+         template-haskell
+       ];
+       testHaskellDepends = [
+         base directory dlist file-embed filepath hspec hspec-discover mtl
+         persistent template-haskell
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Persistent module discover utilities";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "persistent-documentation" = callPackage
     ({ mkDerivation, base, containers, hspec, hspec-discover, mtl
      , persistent, persistent-template, template-haskell, text
@@ -200649,8 +200591,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-migration";
-       version = "0.1.0";
-       sha256 = "025hrjm95klj4b7wqlzwkcwra5yj37ilirr06hxxw6d3g668rllm";
+       version = "0.2.0";
+       sha256 = "0xqzgfzxv8xskyaivar6mnb9qp9s3fq0lh17sajrxa59fi7h8xjw";
        libraryHaskellDepends = [
          base containers fgl mtl persistent text time unordered-containers
        ];
@@ -200677,6 +200619,8 @@ self: {
        pname = "persistent-mongoDB";
        version = "2.12.0.0";
        sha256 = "1s49d4c4kiqcblkap96wcrp3nc0179vpzbqp4fdibljq9ylzxmzg";
+       revision = "1";
+       editedCabalFile = "047riy3grn68jw99095qgqxvfs5bvxmcvmnz170nrqflrlr4l4dd";
        libraryHaskellDepends = [
          aeson base bson bytestring cereal conduit http-api-data mongoDB
          network path-pieces persistent resource-pool resourcet text time
@@ -200746,26 +200690,27 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "persistent-mysql_2_12_1_0" = callPackage
+  "persistent-mysql_2_13_0_0" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring, conduit
-     , containers, fast-logger, hspec, HUnit, monad-logger, mysql
-     , mysql-simple, persistent, persistent-qq, persistent-test
-     , QuickCheck, quickcheck-instances, resource-pool, resourcet, text
-     , time, transformers, unliftio-core
+     , containers, fast-logger, hspec, http-api-data, HUnit
+     , monad-logger, mysql, mysql-simple, path-pieces, persistent
+     , persistent-qq, persistent-test, QuickCheck, quickcheck-instances
+     , resource-pool, resourcet, text, time, transformers, unliftio-core
      }:
      mkDerivation {
        pname = "persistent-mysql";
-       version = "2.12.1.0";
-       sha256 = "08494wc935gfr3007w2x9lvqcp8y2jvapgwjxz1l0mnl120vh8hw";
+       version = "2.13.0.0";
+       sha256 = "1lqd1j9r973081yzvvz9c65csqjd8bzapb4dayzwbhwjq2p0sxiz";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring conduit containers monad-logger
          mysql mysql-simple persistent resource-pool resourcet text
          transformers unliftio-core
        ];
        testHaskellDepends = [
-         base bytestring containers fast-logger hspec HUnit monad-logger
-         mysql persistent persistent-qq persistent-test QuickCheck
-         quickcheck-instances resourcet text time transformers unliftio-core
+         aeson base bytestring containers fast-logger hspec http-api-data
+         HUnit monad-logger mysql path-pieces persistent persistent-qq
+         persistent-test QuickCheck quickcheck-instances resourcet text time
+         transformers unliftio-core
        ];
        description = "Backend for the persistent library using MySQL database server";
        license = lib.licenses.mit;
@@ -200891,20 +200836,20 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "persistent-postgresql_2_12_1_1" = callPackage
+  "persistent-postgresql_2_13_0_0" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , conduit, containers, fast-logger, hspec, hspec-expectations
-     , hspec-expectations-lifted, HUnit, monad-logger, mtl, persistent
-     , persistent-qq, persistent-test, postgresql-libpq
-     , postgresql-simple, QuickCheck, quickcheck-instances
-     , resource-pool, resourcet, string-conversions, text, time
-     , transformers, unliftio, unliftio-core, unordered-containers
-     , vector
+     , hspec-expectations-lifted, http-api-data, HUnit, monad-logger
+     , mtl, path-pieces, persistent, persistent-qq, persistent-test
+     , postgresql-libpq, postgresql-simple, QuickCheck
+     , quickcheck-instances, resource-pool, resourcet
+     , string-conversions, text, time, transformers, unliftio
+     , unliftio-core, unordered-containers, vector
      }:
      mkDerivation {
        pname = "persistent-postgresql";
-       version = "2.12.1.1";
-       sha256 = "1zyh40490r3vjr5qyr8hp2ih1pjqjwbmwm1ashdm1b1n9y5ary53";
+       version = "2.13.0.0";
+       sha256 = "0a18h7ib01if2dspq8f3vwb02cwi74c12i0n3ax4aq6819qy12gb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -200915,10 +200860,10 @@ self: {
        ];
        testHaskellDepends = [
          aeson base bytestring containers fast-logger hspec
-         hspec-expectations hspec-expectations-lifted HUnit monad-logger
-         persistent persistent-qq persistent-test QuickCheck
-         quickcheck-instances resourcet text time transformers unliftio
-         unliftio-core unordered-containers vector
+         hspec-expectations hspec-expectations-lifted http-api-data HUnit
+         monad-logger path-pieces persistent persistent-qq persistent-test
+         QuickCheck quickcheck-instances resourcet text time transformers
+         unliftio unliftio-core unordered-containers vector
        ];
        description = "Backend for the persistent library using postgresql";
        license = lib.licenses.mit;
@@ -201007,8 +200952,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-redis";
-       version = "2.12.0.0";
-       sha256 = "0zibmgvlpkx4knh23jnz2vam1la6w57x2cibrdn17h0zd3s872p5";
+       version = "2.13.0.0";
+       sha256 = "1d43rlcx0islf7gn14kpxi922zaz6k5x6s4k4xc947l2r1zx40qs";
        libraryHaskellDepends = [
          aeson base binary bytestring hedis http-api-data mtl path-pieces
          persistent scientific text time transformers utf8-string
@@ -201114,7 +201059,7 @@ self: {
        maintainers = with lib.maintainers; [ psibi ];
      }) {inherit (pkgs) sqlite;};
 
-  "persistent-sqlite_2_12_0_0" = callPackage
+  "persistent-sqlite_2_13_0_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, conduit, containers
      , exceptions, fast-logger, hspec, HUnit, microlens, microlens-th
      , monad-logger, mtl, persistent, persistent-test, QuickCheck
@@ -201124,8 +201069,10 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-sqlite";
-       version = "2.12.0.0";
-       sha256 = "0qwh2zrg1dqrv7i752jkqgqfxwjbdvkxmdgnzhcfzhgn6bq1018m";
+       version = "2.13.0.0";
+       sha256 = "1xbf22cnvhjs59wqml0n5flk1fhrhjw3flm3lnhh1nik3scfny0w";
+       revision = "1";
+       editedCabalFile = "0y21azb1cvaxwlypprh3wqxr0w0hchf3r509vqxvywqymckqc71i";
        configureFlags = [ "-fsystemlib" ];
        isLibrary = true;
        isExecutable = true;
@@ -201238,24 +201185,26 @@ self: {
        broken = true;
      }) {};
 
-  "persistent-test_2_12_0_0" = callPackage
+  "persistent-test_2_13_0_0" = callPackage
     ({ mkDerivation, aeson, base, blaze-html, bytestring, conduit
-     , containers, exceptions, hspec, hspec-expectations, HUnit
-     , monad-control, monad-logger, mtl, path-pieces, persistent
+     , containers, exceptions, hspec, hspec-expectations, http-api-data
+     , HUnit, monad-control, monad-logger, mtl, path-pieces, persistent
      , QuickCheck, quickcheck-instances, random, resourcet, text, time
      , transformers, transformers-base, unliftio, unliftio-core
      , unordered-containers
      }:
      mkDerivation {
        pname = "persistent-test";
-       version = "2.12.0.0";
-       sha256 = "0vn6f8wmax68qg27ifw2sfr3d0zk12p6gaax5xshwmb5ypamrc50";
+       version = "2.13.0.0";
+       sha256 = "1fyahnnx9f3dg36kqviah5l9410d0x819dz3afxapcq27myccdw7";
+       revision = "1";
+       editedCabalFile = "16yzpsy11bcglipgcy0x8mcxlx7w00gfvnw5fhjkbj99lxdwwgm0";
        libraryHaskellDepends = [
          aeson base blaze-html bytestring conduit containers exceptions
-         hspec hspec-expectations HUnit monad-control monad-logger mtl
-         path-pieces persistent QuickCheck quickcheck-instances random
-         resourcet text time transformers transformers-base unliftio
-         unliftio-core unordered-containers
+         hspec hspec-expectations http-api-data HUnit monad-control
+         monad-logger mtl path-pieces persistent QuickCheck
+         quickcheck-instances random resourcet text time transformers
+         transformers-base unliftio unliftio-core unordered-containers
        ];
        description = "Tests for Persistent";
        license = lib.licenses.mit;
@@ -201661,8 +201610,8 @@ self: {
     ({ mkDerivation, base, containers, gu, pgf, pretty }:
      mkDerivation {
        pname = "pgf2";
-       version = "1.2.1";
-       sha256 = "10nbwhdirhlsh68f14z8y75wlbs9f9xcn8cbgkf47m74x71jqqb3";
+       version = "1.3.0";
+       sha256 = "1sd21p6f9m9l6xnf853v7lxj6j6sbsrd7i09y0w0lsysp86p8h7m";
        libraryHaskellDepends = [ base containers pretty ];
        librarySystemDepends = [ gu pgf ];
        description = "Bindings to the C version of the PGF runtime";
@@ -202065,8 +202014,8 @@ self: {
      }:
      mkDerivation {
        pname = "phonetic-languages-phonetics-basics";
-       version = "0.5.1.0";
-       sha256 = "1pqc16llr1ar7z6lfbniinxx7q09qpamajmbl3d9njhk4pwdl6b8";
+       version = "0.6.1.0";
+       sha256 = "0pa55mkw70f20bw90qc8lballa89zgk6b185038i4p3piipsymrn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -202220,6 +202169,38 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "phonetic-languages-simplified-generalized-examples-common" = callPackage
+    ({ mkDerivation, base, heaps, phonetic-languages-phonetics-basics
+     , subG
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-simplified-generalized-examples-common";
+       version = "0.1.0.1";
+       sha256 = "07rqfnz2rkx6rwfgrv97yiww2d1086av60pri5qcp5l44xwlqdy5";
+       libraryHaskellDepends = [
+         base heaps phonetic-languages-phonetics-basics subG
+       ];
+       description = "Some common code for phonetic languages generalized functionality";
+       license = lib.licenses.mit;
+     }) {};
+
+  "phonetic-languages-simplified-generalized-properties-array" = callPackage
+    ({ mkDerivation, base, phonetic-languages-phonetics-basics
+     , phonetic-languages-rhythmicity
+     , phonetic-languages-simplified-base
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-simplified-generalized-properties-array";
+       version = "0.1.0.2";
+       sha256 = "1hm9yz0ibfrzmmm70qff0bsghiscigp9843i9nhk41yfxlrmbsp3";
+       libraryHaskellDepends = [
+         base phonetic-languages-phonetics-basics
+         phonetic-languages-rhythmicity phonetic-languages-simplified-base
+       ];
+       description = "Generalization of the functionality of the phonetic-languages-simplified-properties-array";
+       license = lib.licenses.mit;
+     }) {};
+
   "phonetic-languages-simplified-lists-examples" = callPackage
     ({ mkDerivation, base, heaps, mmsyn2, parallel
      , phonetic-languages-constraints, phonetic-languages-permutations
@@ -203152,6 +203133,30 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "pipes_4_3_16" = callPackage
+    ({ mkDerivation, base, criterion, exceptions, mmorph, mtl
+     , optparse-applicative, QuickCheck, test-framework
+     , test-framework-quickcheck2, transformers, void
+     }:
+     mkDerivation {
+       pname = "pipes";
+       version = "4.3.16";
+       sha256 = "163lx5sf68zx5kik5h1fjsyckwr9shdsn5k2dsjq3mhg077nxqgl";
+       libraryHaskellDepends = [
+         base exceptions mmorph mtl transformers void
+       ];
+       testHaskellDepends = [
+         base mtl QuickCheck test-framework test-framework-quickcheck2
+         transformers
+       ];
+       benchmarkHaskellDepends = [
+         base criterion mtl optparse-applicative transformers
+       ];
+       description = "Compositional pipelines";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pipes-aeson" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, pipes
      , pipes-attoparsec, pipes-bytestring, pipes-parse, transformers
@@ -213143,26 +213148,25 @@ self: {
 
   "publish" = callPackage
     ({ mkDerivation, base, bytestring, chronologique, core-data
-     , core-program, core-text, deepseq, directory, filepath, hinotify
-     , hspec, megaparsec, pandoc, pandoc-types, template-haskell, text
+     , core-program, core-text, deepseq, directory, filepath, hspec
+     , megaparsec, pandoc, pandoc-types, template-haskell, text
      , typed-process, unix, unordered-containers
      }:
      mkDerivation {
        pname = "publish";
-       version = "2.1.5";
-       sha256 = "1ncz9bijln0xmkmy5x6lv4w6xiqr08crgqiyb8cchc88dqacddhi";
+       version = "2.1.6";
+       sha256 = "1clb9sxrsskklzany9q5600v77qywdszgzxjxrvsihrirf0akry2";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring chronologique core-data core-program core-text
-         deepseq directory filepath hinotify megaparsec pandoc pandoc-types
+         deepseq directory filepath megaparsec pandoc pandoc-types
          template-haskell text typed-process unix unordered-containers
        ];
        testHaskellDepends = [
          base bytestring chronologique core-data core-program core-text
-         deepseq directory filepath hinotify hspec megaparsec pandoc
-         pandoc-types template-haskell text typed-process unix
-         unordered-containers
+         deepseq directory filepath hspec megaparsec pandoc pandoc-types
+         template-haskell text typed-process unix unordered-containers
        ];
        description = "Publishing tools for papers, books, and presentations";
        license = lib.licenses.mit;
@@ -233673,19 +233677,19 @@ self: {
   "servant-benchmark" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , case-insensitive, hspec, http-media, http-types, QuickCheck
-     , servant, text, yaml
+     , servant, text, utf8-string, yaml
      }:
      mkDerivation {
        pname = "servant-benchmark";
-       version = "0.1.1.1";
-       sha256 = "1rsj819kg17p31ky5ad28hydrkh39nsfwkq3f9zdkqm2j924idhx";
+       version = "0.1.2.0";
+       sha256 = "0lqqk410nx48g895pfxkbbk85b1ijs4bfl9zr2li2p7wwwc4gyi9";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring case-insensitive http-media
          http-types QuickCheck servant text yaml
        ];
        testHaskellDepends = [
          aeson base base64-bytestring bytestring case-insensitive hspec
-         http-media http-types QuickCheck servant text yaml
+         http-media http-types QuickCheck servant text utf8-string yaml
        ];
        description = "Generate benchmark files from a Servant API";
        license = lib.licenses.bsd3;
@@ -244991,6 +244995,8 @@ self: {
        pname = "sparkle";
        version = "0.7.4";
        sha256 = "174rs21fgj43rq3nshzgff6mydi93n26nkcq9cadq0bzcasc2n3q";
+       revision = "1";
+       editedCabalFile = "1jwg12rmsa1il8y53ip535bjf02z7jnrnws1qi9y0xfpqblzmw6r";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal inline-java jvm-streaming ];
@@ -246573,6 +246579,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "squeather_0_8_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hedgehog
+     , lifted-base, temporary, text
+     }:
+     mkDerivation {
+       pname = "squeather";
+       version = "0.8.0.0";
+       sha256 = "1pjiq97gq8rjp4v7cx2bhj7zcwkswc593fxdwqajssi1i39679r6";
+       libraryHaskellDepends = [ base bytestring text ];
+       testHaskellDepends = [
+         base bytestring directory filepath hedgehog lifted-base temporary
+         text
+       ];
+       description = "Use databases with the version 3 series of the SQLite C library";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "squeeze" = callPackage
     ({ mkDerivation, base, Cabal, data-default, directory, extra
      , factory, filepath, mtl, QuickCheck, random, toolshed
@@ -257125,6 +257149,21 @@ self: {
        license = lib.licenses.mpl20;
      }) {};
 
+  "tasty-inspection-testing" = callPackage
+    ({ mkDerivation, base, ghc, inspection-testing, tasty
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "tasty-inspection-testing";
+       version = "0.1";
+       sha256 = "18awafrclxg8lfw8gg4ndzfwwpaz8qmad23fi24rhpdj9c7xdyhw";
+       libraryHaskellDepends = [
+         base ghc inspection-testing tasty template-haskell
+       ];
+       description = "Inspection testing support for tasty";
+       license = lib.licenses.mit;
+     }) {};
+
   "tasty-integrate" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cmdargs, containers
      , deepseq, directory, either, haskell-src-exts
@@ -262949,6 +262988,26 @@ self: {
        broken = true;
      }) {};
 
+  "tikzsd" = callPackage
+    ({ mkDerivation, array, base, containers, lens, mtl, parsec
+     , transformers
+     }:
+     mkDerivation {
+       pname = "tikzsd";
+       version = "1.0.0";
+       sha256 = "1y2pxbmm22dmrvgsqv2gvy3nf8vh3ln5pinrfsbim8qk1qfayina";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base containers lens mtl parsec transformers
+       ];
+       executableHaskellDepends = [
+         array base containers lens mtl parsec transformers
+       ];
+       description = "A program for generating LaTeX code of string diagrams";
+       license = lib.licenses.mit;
+     }) {};
+
   "tile" = callPackage
     ({ mkDerivation, base, HUnit }:
      mkDerivation {
@@ -267512,8 +267571,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "trivial-constraint";
-       version = "0.6.0.0";
-       sha256 = "0y0iyll7ml5qz271cqa0dc3w2j3w1d8jjaxwaf2flcidigws69z5";
+       version = "0.7.0.0";
+       sha256 = "0kyjifqfjf4lmrba4fb65m82s8qqv2nld9lj0qvh2qxc8bfw4hj7";
        libraryHaskellDepends = [ base ];
        description = "Constraints that any type, resp. no type fulfills";
        license = lib.licenses.gpl3Only;
@@ -271833,6 +271892,53 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "uniform-algebras" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "uniform-algebras";
+       version = "0.1.0";
+       sha256 = "19grz10hagzi8x9am59i6jifm1zjf31698k8r4l7bbhyww4w6p91";
+       libraryHaskellDepends = [ base ];
+       description = "Pointless functions and a simplistic zero and monoid";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-error" = callPackage
+    ({ mkDerivation, base, monads-tf, safe, uniform-strings }:
+     mkDerivation {
+       pname = "uniform-error";
+       version = "0.1.0";
+       sha256 = "1ap8wrnh08yvv9hwd92mp1g5fz4g7l0aij1h0hfl3j7ijd028pmx";
+       libraryHaskellDepends = [ base monads-tf safe uniform-strings ];
+       description = "Handling errors in the uniform framework";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-fileio" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, directory, exceptions
+     , filepath, HTF, monads-tf, path, path-io, pipes, pureMD5
+     , quickcheck-text, safe, test-invariant, text, uniform-algebras
+     , uniform-error, uniform-strings, uniform-time, unix, zlib
+     }:
+     mkDerivation {
+       pname = "uniform-fileio";
+       version = "0.1.0";
+       sha256 = "0rxhjn4qv2dbdycdfqblymyfj3wax586ar77zwdgkyld7v7s12ya";
+       libraryHaskellDepends = [
+         base bytestring deepseq directory exceptions filepath monads-tf
+         path path-io pipes pureMD5 safe text uniform-algebras uniform-error
+         uniform-strings uniform-time unix zlib
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq directory exceptions filepath HTF monads-tf
+         path path-io pipes pureMD5 quickcheck-text safe test-invariant text
+         uniform-algebras uniform-error uniform-strings uniform-time unix
+         zlib
+       ];
+       description = "Uniform file handling operations";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
   "uniform-io" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, Cabal
      , data-default-class, interruptible, iproute, monad-control
@@ -271870,6 +271976,55 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "uniform-strings" = callPackage
+    ({ mkDerivation, base, bytestring, MissingH, monads-tf, network-uri
+     , pretty-show, safe, snap-core, split, text, text-icu
+     , uniform-algebras
+     }:
+     mkDerivation {
+       pname = "uniform-strings";
+       version = "0.1.0";
+       sha256 = "17w04fxx81gk02xl7ca64amc0hb06i77fbanhykp3qd70nd2k8ix";
+       libraryHaskellDepends = [
+         base bytestring MissingH monads-tf network-uri pretty-show safe
+         snap-core split text text-icu uniform-algebras
+       ];
+       description = "Manipulate and convert strings of characters uniformly and consistently";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-time" = callPackage
+    ({ mkDerivation, base, convertible, monads-tf, time
+     , uniform-algebras, uniform-error, uniform-strings
+     }:
+     mkDerivation {
+       pname = "uniform-time";
+       version = "0.1.0";
+       sha256 = "08p40xl4zzswhax3i6j4ps0zy2m9qsbcpj4b00xvizc3g9fxnzsh";
+       libraryHaskellDepends = [
+         base convertible monads-tf time uniform-algebras uniform-error
+         uniform-strings
+       ];
+       description = "Time in the uniform framework";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniformBase" = callPackage
+    ({ mkDerivation, base, uniform-algebras, uniform-error
+     , uniform-fileio, uniform-strings, uniform-time
+     }:
+     mkDerivation {
+       pname = "uniformBase";
+       version = "0.1.0";
+       sha256 = "1ya87jzfmzldd66rwxrccidkrpknqws5rslq9zdsjcdngn2w0sa9";
+       libraryHaskellDepends = [
+         base uniform-algebras uniform-error uniform-fileio uniform-strings
+         uniform-time
+       ];
+       description = "A uniform base to build apps on";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
   "union" = callPackage
     ({ mkDerivation, base, criterion, deepseq, hashable, lens
      , profunctors, tagged, vinyl
@@ -272849,6 +273004,32 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "unliftio_0_2_15" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, deepseq
+     , directory, filepath, gauge, hspec, process, QuickCheck, stm, time
+     , transformers, unix, unliftio-core
+     }:
+     mkDerivation {
+       pname = "unliftio";
+       version = "0.2.15";
+       sha256 = "08yclgvk6slaisqc08b8bblh4fl77qicj0w90l46q419ya3drixd";
+       libraryHaskellDepends = [
+         async base bytestring deepseq directory filepath process stm time
+         transformers unix unliftio-core
+       ];
+       testHaskellDepends = [
+         async base bytestring containers deepseq directory filepath hspec
+         process QuickCheck stm time transformers unix unliftio-core
+       ];
+       benchmarkHaskellDepends = [
+         async base bytestring deepseq directory filepath gauge process stm
+         time transformers unix unliftio-core
+       ];
+       description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "unliftio-core" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -274732,27 +274913,6 @@ self: {
      }:
      mkDerivation {
        pname = "uuid";
-       version = "1.3.14";
-       sha256 = "1msj296faldr9fiwjqi9ixx3xl638mg6ffk7axic14wf8b9zw73a";
-       libraryHaskellDepends = [
-         base binary bytestring cryptohash-md5 cryptohash-sha1 entropy
-         network-info random text time uuid-types
-       ];
-       testHaskellDepends = [
-         base bytestring QuickCheck random tasty tasty-hunit
-         tasty-quickcheck
-       ];
-       description = "For creating, comparing, parsing and printing Universally Unique Identifiers";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "uuid_1_3_15" = callPackage
-    ({ mkDerivation, base, binary, bytestring, cryptohash-md5
-     , cryptohash-sha1, entropy, network-info, QuickCheck, random, tasty
-     , tasty-hunit, tasty-quickcheck, text, time, uuid-types
-     }:
-     mkDerivation {
-       pname = "uuid";
        version = "1.3.15";
        sha256 = "0r05h16gd7fgfpq9iz43jcn9jzrgfa0gk4cv1xy0p4rli66rb1gq";
        libraryHaskellDepends = [
@@ -274765,7 +274925,6 @@ self: {
        ];
        description = "For creating, comparing, parsing and printing Universally Unique Identifiers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "uuid-aeson" = callPackage
@@ -274865,26 +275024,6 @@ self: {
   "uuid-types" = callPackage
     ({ mkDerivation, base, binary, bytestring, deepseq, ghc-byteorder
      , hashable, QuickCheck, random, tasty, tasty-hunit
-     , tasty-quickcheck, text
-     }:
-     mkDerivation {
-       pname = "uuid-types";
-       version = "1.0.4";
-       sha256 = "01pc93z6in6g717mxkhl111qc842fz1c2z7ml6n5jhm7lg52ran2";
-       libraryHaskellDepends = [
-         base binary bytestring deepseq hashable random text
-       ];
-       testHaskellDepends = [
-         base binary bytestring ghc-byteorder QuickCheck tasty tasty-hunit
-         tasty-quickcheck
-       ];
-       description = "Type definitions for Universally Unique Identifiers";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "uuid-types_1_0_5" = callPackage
-    ({ mkDerivation, base, binary, bytestring, deepseq, ghc-byteorder
-     , hashable, QuickCheck, random, tasty, tasty-hunit
      , tasty-quickcheck, template-haskell, text
      }:
      mkDerivation {
@@ -274901,7 +275040,6 @@ self: {
        ];
        description = "Type definitions for Universally Unique Identifiers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "uulib" = callPackage
@@ -279548,8 +279686,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-middleware-validation";
-       version = "0.1.0.0";
-       sha256 = "0cbp32j31xkmniml56gnh278g94zhhfc8xlp842n8lll5hh13bf4";
+       version = "0.1.0.2";
+       sha256 = "1qrkfy31slmlbiw9gkz96yd9q6mrw72rjyjl0a5pnjif5ps12vpq";
        libraryHaskellDepends = [
          aeson base bytestring containers filepath http-types
          insert-ordered-containers lens openapi3 text wai
@@ -289833,6 +289971,28 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "yesod-persistent_1_6_0_7" = callPackage
+    ({ mkDerivation, base, blaze-builder, conduit, hspec, persistent
+     , persistent-sqlite, persistent-template, resource-pool, resourcet
+     , text, transformers, wai-extra, yesod-core
+     }:
+     mkDerivation {
+       pname = "yesod-persistent";
+       version = "1.6.0.7";
+       sha256 = "102xmp7n08sk1g5rv31jpln2v9kqf1zsqsnmi83mnhmgggcbj1k4";
+       libraryHaskellDepends = [
+         base blaze-builder conduit persistent persistent-template
+         resource-pool resourcet transformers yesod-core
+       ];
+       testHaskellDepends = [
+         base blaze-builder conduit hspec persistent persistent-sqlite text
+         wai-extra yesod-core
+       ];
+       description = "Some helpers for using Persistent from Yesod";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "yesod-platform" = callPackage
     ({ mkDerivation, ansi-terminal, ansi-wl-pprint, asn1-encoding
      , asn1-parse, asn1-types, attoparsec-conduit, authenticate
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index 2641892672af5..5d178e3b5a1b1 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -249,7 +249,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
     # a cabal flag with '--flag=myflag'.
     developPackage =
       { root
-      , name ? builtins.baseNameOf root
+      , name ? if builtins.typeOf root == "path" then builtins.baseNameOf root else ""
       , source-overrides ? {}
       , overrides ? self: super: {}
       , modifier ? drv: drv
diff --git a/pkgs/development/idris-modules/data.nix b/pkgs/development/idris-modules/data.nix
deleted file mode 100644
index 0517edec2d240..0000000000000
--- a/pkgs/development/idris-modules/data.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ build-idris-package
-, fetchFromGitHub
-, contrib
-, lib
-}:
-build-idris-package  {
-  name = "data";
-  version = "2018-03-19";
-
-  idrisDeps = [ contrib ];
-
-  src = fetchFromGitHub {
-    owner = "jdevuyst";
-    repo = "idris-data";
-    rev = "105b78ac13235edc596287367a675d7cd04ce5d5";
-    sha256 = "17wz4jddan39984qibx2x7nv2zkqznv0fpab20nrm4zgy17v77ii";
-  };
-
-  meta = {
-    description = "Functional data structures in Idris";
-    homepage = "https://github.com/jdevuyst/idris-data";
-    license = lib.licenses.bsd3;
-    maintainers = [ lib.maintainers.brainrape ];
-  };
-}
diff --git a/pkgs/development/idris-modules/default.nix b/pkgs/development/idris-modules/default.nix
index 7011a513c1012..d6fb1ac78bd6d 100644
--- a/pkgs/development/idris-modules/default.nix
+++ b/pkgs/development/idris-modules/default.nix
@@ -75,8 +75,6 @@
 
     cube = callPackage ./cube.nix {};
 
-    data = callPackage ./data.nix {};
-
     derive = callPackage ./derive.nix {};
 
     descncrunch = callPackage ./descncrunch.nix {};
diff --git a/pkgs/development/interpreters/cling/default.nix b/pkgs/development/interpreters/cling/default.nix
index f74eaf72bd4e6..73ed5b523ddeb 100644
--- a/pkgs/development/interpreters/cling/default.nix
+++ b/pkgs/development/interpreters/cling/default.nix
@@ -10,6 +10,7 @@
 , runCommandNoCC
 , llvmPackages_5
 , glibc
+, ncurses
 }:
 
 let
@@ -38,8 +39,8 @@ let
       chmod -R a+w ./tools/cling
     '';
 
-    nativeBuildInputs = [ python3 git cmake ];
-    buildInputs = [ libffi llvmPackages_5.llvm zlib ];
+    nativeBuildInputs = [ python3 git cmake llvmPackages_5.llvm.dev ];
+    buildInputs = [ libffi llvmPackages_5.llvm zlib ncurses ];
 
     strictDeps = true;
 
diff --git a/pkgs/development/interpreters/falcon/default.nix b/pkgs/development/interpreters/falcon/default.nix
index 2b14c9b489d29..0d2aa0b64203f 100644
--- a/pkgs/development/interpreters/falcon/default.nix
+++ b/pkgs/development/interpreters/falcon/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, pcre, zlib, sqlite }:
+{ lib, gccStdenv, fetchFromGitHub, cmake, pkg-config, pcre, zlib, sqlite }:
 
-stdenv.mkDerivation {
+gccStdenv.mkDerivation {
   pname = "falcon";
-  version = "2013-09-19";
+  version = "unstable-2018-10-23";
 
   src = fetchFromGitHub {
     owner = "falconpl";
     repo = "falcon";
-    rev = "095141903c4ebab928ce803055f9bda363215c37";
-    sha256 = "1x3gdcz1gqhi060ngqi0ghryf69v8bn50yrbzfad8bhblvhzzdlf";
+    rev = "637e2d5cd950a874496042993c02ab7d17c1b688";
+    sha256 = "iCyvvZJjXb1CR396EJ6GiP6d4e7iAc6QQlAOQoAfehg=";
   };
 
   # -Wnarrowing is enabled by default in recent GCC versions,
@@ -22,6 +22,6 @@ stdenv.mkDerivation {
     description = "Programming language with macros and syntax at once";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ pSub ];
-    platforms = with platforms; linux;
+    platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/development/libraries/apache-activemq/default.nix b/pkgs/development/libraries/apache-activemq/default.nix
index 136ffb79804ae..79c1715c61d75 100644
--- a/pkgs/development/libraries/apache-activemq/default.nix
+++ b/pkgs/development/libraries/apache-activemq/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "apache-activemq";
-  version = "5.16.1";
+  version = "5.16.2";
 
   src = fetchurl {
-    sha256 = "sha256-Q9PzqJC/+uhcbxAC6c+VD8wf0X8/XlXcO4XTnQni4yM=";
+    sha256 = "sha256-IS/soe5Lx1C+/UWnNcv+8AwMmu5FHvURbpkTMMGrEFs=";
     url = "mirror://apache/activemq/${version}/${pname}-${version}-bin.tar.gz";
   };
 
diff --git a/pkgs/development/libraries/avahi/default.nix b/pkgs/development/libraries/avahi/default.nix
index dd54ba79db721..a52d1be566e68 100644
--- a/pkgs/development/libraries/avahi/default.nix
+++ b/pkgs/development/libraries/avahi/default.nix
@@ -1,5 +1,6 @@
 { fetchurl, fetchpatch, lib, stdenv, pkg-config, libdaemon, dbus, perlPackages
 , expat, gettext, intltool, glib, libiconv, writeShellScriptBin, libevent
+, nixosTests
 , gtk3Support ? false, gtk3 ? null
 , qt4 ? null
 , qt4Support ? false
@@ -77,6 +78,11 @@ stdenv.mkDerivation rec {
     ln -s avahi-compat-howl.pc $out/lib/pkgconfig/howl.pc
   */
 
+  passthru.tests = {
+    smoke-test = nixosTests.avahi;
+    smoke-test-resolved = nixosTests.avahi-with-resolved;
+  };
+
   meta = with lib; {
     description = "mDNS/DNS-SD implementation";
     homepage    = "http://avahi.org";
diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix
index 0f8a61bed244b..76a3b96533cd9 100644
--- a/pkgs/development/libraries/belle-sip/default.nix
+++ b/pkgs/development/libraries/belle-sip/default.nix
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belle-sip";
-  version = "4.5.1";
+  version = "4.5.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "0d1wf0jv9lb0s6r49i9gz5nrx8jzpkx558hywll7idma9d0mr61p";
+    sha256 = "sha256-N5hcQUuqtngo5R6iUvq8X6KebfkvxUSy0WDRtCVwPDQ=";
   };
 
   nativeBuildInputs = [ antlr3_4 cmake ];
diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix
index b698cf7b404d2..5236c92527e24 100644
--- a/pkgs/development/libraries/bzrtp/default.nix
+++ b/pkgs/development/libraries/bzrtp/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bzrtp";
-  version = "4.5.1";
+  version = "4.5.10";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "1a500ncgznwha0j3c27ak3p4jh5jm6fnnb531k7c0a4i91745agj";
+    sha256 = "sha256-8qlCTkiRKMDODKMsa52pskBJ7pjqCDYkUJDb/5gFoKg=";
   };
 
   buildInputs = [ bctoolbox sqlite ];
diff --git a/pkgs/development/libraries/fstrm/default.nix b/pkgs/development/libraries/fstrm/default.nix
index 46a7118cefe43..15daa7e5a9592 100644
--- a/pkgs/development/libraries/fstrm/default.nix
+++ b/pkgs/development/libraries/fstrm/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fstrm";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "farsightsec";
     repo = "fstrm";
     rev = "v${version}";
-    sha256 = "0b6x9wgyn92vykkmd3ynhnpbdl77zb4wf4rm7p0h8p9pwq953hdm";
+    sha256 = "sha256-/WFP2g3Vuf/qaY8pprY8XFAlpEE+0SJUlFNWfa+7ZlE=";
   };
 
   outputs = [ "bin" "out" "dev" ];
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
index 38ef25770aa93..37c15225869f9 100644
--- a/pkgs/development/libraries/glfw/3.x.nix
+++ b/pkgs/development/libraries/glfw/3.x.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.3.3";
+  version = "3.3.4";
   pname = "glfw";
 
   src = fetchFromGitHub {
     owner = "glfw";
     repo = "GLFW";
     rev = version;
-    sha256 = "sha256-NfEPXjpVnFvh3Y70RZm8nDG0QwJbefF9wYNUq0BZTN4=";
+    sha256 = "sha256-BP4wxjgm0x0E68tNz5eudkVUyBnXkQlP7LY3ppZunhw=";
   };
 
   propagatedBuildInputs = [ libGL ];
diff --git a/pkgs/development/libraries/kronosnet/default.nix b/pkgs/development/libraries/kronosnet/default.nix
index c74ff6716feec..cc282d9abc9c8 100644
--- a/pkgs/development/libraries/kronosnet/default.nix
+++ b/pkgs/development/libraries/kronosnet/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kronosnet";
-  version = "1.20";
+  version = "1.21";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lP5W+4b9McU2Uqibh2SucIu2y4KluO3B1RpAJKgYq/M=";
+    sha256 = "14i4fl3g60gn5ay3dbwjcay3dnmnqr16zcp3g0wv9a3hjwh1if28";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config doxygen ];
diff --git a/pkgs/development/libraries/libdigidocpp/default.nix b/pkgs/development/libraries/libdigidocpp/default.nix
index 5b2914c141f3f..c7a7673dc1b35 100644
--- a/pkgs/development/libraries/libdigidocpp/default.nix
+++ b/pkgs/development/libraries/libdigidocpp/default.nix
@@ -2,12 +2,12 @@
 , xercesc, xml-security-c, pkg-config, xsd, zlib, xalanc, xxd }:
 
 stdenv.mkDerivation rec {
-  version = "3.14.5";
+  version = "3.14.6";
   pname = "libdigidocpp";
 
   src = fetchurl {
      url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz";
-     sha256 = "sha256-PSrYoz5ID88pYs/4rP2kz0NpI0pK6wcnx62HokE0g20=";
+     sha256 = "sha256-zDMxJyL/T3cXrqgMT15yZlCozgyOt5nNreottuuiGHk=";
   };
 
   nativeBuildInputs = [ cmake pkg-config xxd ];
diff --git a/pkgs/development/libraries/libjwt/default.nix b/pkgs/development/libraries/libjwt/default.nix
index 9c7d624e7f6e4..a81b60c425ecb 100644
--- a/pkgs/development/libraries/libjwt/default.nix
+++ b/pkgs/development/libraries/libjwt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libjwt";
-  version = "1.12.1";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "benmcollins";
     repo = "libjwt";
     rev = "v${version}";
-    sha256 = "1c69slf9k56gh0xcg6269v712ysm6wckracms4grdsc72xg6x7h2";
+    sha256 = "sha256-hS10Ecq0VVuYLDrBu4x+Y2mz6eeJV1SvnqttgbiQbi0=";
   };
 
   buildInputs = [ jansson openssl ];
diff --git a/pkgs/development/libraries/libmaxminddb/default.nix b/pkgs/development/libraries/libmaxminddb/default.nix
index 05ae1af2e2576..1c15519aaff92 100644
--- a/pkgs/development/libraries/libmaxminddb/default.nix
+++ b/pkgs/development/libraries/libmaxminddb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmaxminddb";
-  version = "1.5.2";
+  version = "1.6.0";
 
   src = fetchurl {
     url = meta.homepage + "/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-UjcHbSUKX3wpfjMcNaQz7qrw3CBeBw5Ns1PJuhDzQKI=";
+    sha256 = "sha256-diCsGHxZHOIbzXvzUjdqPFapM+aEVYofa+9L1PP5gmc=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix
index f95d39a02da8e..edadff523f3a6 100644
--- a/pkgs/development/libraries/libmodulemd/default.nix
+++ b/pkgs/development/libraries/libmodulemd/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libmodulemd";
-  version = "2.12.0";
+  version = "2.12.1";
 
   outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "fedora-modularity";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1mq9as98q4wyka404f8xwfc44cn5j4bsk0fch5pf07v81sagc1q9";
+    sha256 = "sha256-Relj14uG+dp9r5xWEbw/eAmlUJJ/kRwlPclcWGQxoJg=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libsolv/default.nix b/pkgs/development/libraries/libsolv/default.nix
index 089fbe4b35121..c7dede355df61 100644
--- a/pkgs/development/libraries/libsolv/default.nix
+++ b/pkgs/development/libraries/libsolv/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, cmake, ninja, zlib, expat, rpm, db }:
 
 stdenv.mkDerivation rec {
-  version  = "0.7.17";
+  version  = "0.7.19";
   pname = "libsolv";
 
   src = fetchFromGitHub {
     owner  = "openSUSE";
     repo   = "libsolv";
     rev    = version;
-    sha256 = "sha256-LPOS+yDwNpyO9tkFoIy4SCQymytOGB26Pfyd/EFEYnc=";
+    sha256 = "sha256-AN4cgpMBqTtK04CU89Yqd1ZfWyPrCociPd3XKdVONMU=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/libwpe/default.nix b/pkgs/development/libraries/libwpe/default.nix
index 4397f65ac4b67..9e7886eb68d1d 100644
--- a/pkgs/development/libraries/libwpe/default.nix
+++ b/pkgs/development/libraries/libwpe/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libwpe";
-  version = "1.8.0";
+  version = "1.10.0";
 
   src = fetchurl {
     url = "https://wpewebkit.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "sha256-pvAKfQkcvU21f+fuO0wSxjUJIdZU7XmBKACibIiEgdI=";
+    sha256 = "sha256-JBXicNReNZXtQFK8EF9zN0TcLTZ34S/0qDHlAphBCE0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libxlsxwriter/default.nix b/pkgs/development/libraries/libxlsxwriter/default.nix
index 849ebcf3c863c..7f1b583284b06 100644
--- a/pkgs/development/libraries/libxlsxwriter/default.nix
+++ b/pkgs/development/libraries/libxlsxwriter/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libxlsxwriter";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "jmcnamara";
     repo = "libxlsxwriter";
     rev = "RELEASE_${version}";
-    sha256 = "14c5rgx87nhzasr0j7mcfr1w7ifz0gmdiqy2xq59di5xvcdrpxpv";
+    sha256 = "0k0km5d4xs6z98nqczvdkqwhhc5izqs82ciifx2l5wcbcdxb4r0k";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/matio/default.nix b/pkgs/development/libraries/matio/default.nix
index 0b8143b691173..3b0e811097e7a 100644
--- a/pkgs/development/libraries/matio/default.nix
+++ b/pkgs/development/libraries/matio/default.nix
@@ -1,9 +1,9 @@
 { lib, stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "matio-1.5.20";
+  name = "matio-1.5.21";
   src = fetchurl {
     url = "mirror://sourceforge/matio/${name}.tar.gz";
-    sha256 = "sha256-XR9yofUav2qc0j6qgS+xe4YQlwWQlfSMdoxINcWqJZg=";
+    sha256 = "sha256-IYCRd+VYOefJTa2nRO5Vwd6n11fdqriWBXdtUBIvsGU=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/opencl-clang/default.nix b/pkgs/development/libraries/opencl-clang/default.nix
index b87088a47fcf2..c40fb9c1203a0 100644
--- a/pkgs/development/libraries/opencl-clang/default.nix
+++ b/pkgs/development/libraries/opencl-clang/default.nix
@@ -76,7 +76,7 @@ let
         ./opencl-headers-dir.patch
       ];
 
-      nativeBuildInputs = [ cmake git ];
+      nativeBuildInputs = [ cmake git llvm.dev ];
 
       buildInputs = [ libclang llvm spirv-llvm-translator ];
 
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index 133853e2362a0..b3e740f39c46c 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -42,7 +42,7 @@ let
 
   self = stdenv.mkDerivation rec {
     pname = "pipewire";
-    version = "0.3.26";
+    version = "0.3.27";
 
     outputs = [
       "out"
@@ -60,7 +60,7 @@ let
       owner = "pipewire";
       repo = "pipewire";
       rev = version;
-      sha256 = "sha256-s9+70XXMN4K3yDVwIu+L15gL6rFlpRNVQpeekZQOEec=";
+      sha256 = "sha256-GfcMODQWtcahBvXnZ98/PKIm4pkqLaz09oOy7zQR4IA=";
     };
 
     patches = [
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index 63e893ea69ff9..fcb6297f51914 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -98,6 +98,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
 
diff --git a/pkgs/development/libraries/qt-5/5.14/default.nix b/pkgs/development/libraries/qt-5/5.14/default.nix
index 3e3790ed1a4c9..02b170e0eb172 100644
--- a/pkgs/development/libraries/qt-5/5.14/default.nix
+++ b/pkgs/development/libraries/qt-5/5.14/default.nix
@@ -111,6 +111,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
     ] ++ optionals stdenv.isDarwin [
diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix
index f969254b59524..9712914c9ec21 100644
--- a/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -135,6 +135,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
     ] ++ optionals stdenv.isDarwin [
diff --git a/pkgs/development/misc/umr/default.nix b/pkgs/development/misc/umr/default.nix
index 158cef2eed1e8..3dba51022d3c0 100644
--- a/pkgs/development/misc/umr/default.nix
+++ b/pkgs/development/misc/umr/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "IwTkHEuJ82hngPjFVIihU2rSolLBqHxQTNsP8puYPaY=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config llvmPackages.llvm.dev ];
 
   buildInputs = [
     bash-completion
diff --git a/pkgs/development/ocaml-modules/atd/default.nix b/pkgs/development/ocaml-modules/atd/default.nix
index 2f85221e539c6..de6ade61518a7 100644
--- a/pkgs/development/ocaml-modules/atd/default.nix
+++ b/pkgs/development/ocaml-modules/atd/default.nix
@@ -1,4 +1,4 @@
-{ lib, menhir, easy-format, fetchurl, buildDunePackage, which, re }:
+{ lib, menhir, easy-format, fetchurl, buildDunePackage, which, re, nixosTests }:
 
 buildDunePackage rec {
   pname = "atd";
@@ -18,6 +18,10 @@ buildDunePackage rec {
 
   doCheck = true;
 
+  passthru.tests = {
+    smoke-test = nixosTests.atd;
+  };
+
   meta = with lib; {
     homepage = "https://github.com/mjambon/atd";
     description = "Syntax for cross-language type definitions";
diff --git a/pkgs/development/php-packages/phpcbf/default.nix b/pkgs/development/php-packages/phpcbf/default.nix
index da114a4d348fa..caf3b515aabb6 100644
--- a/pkgs/development/php-packages/phpcbf/default.nix
+++ b/pkgs/development/php-packages/phpcbf/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, lib, php, makeWrapper }:
 let
   pname = "phpcbf";
-  version = "3.5.8";
+  version = "3.6.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
-    sha256 = "15ci30yvw3p9zlmzsk9s4mxzb3wax3gl9p55slhf1bzwn1xxwyb0";
+    sha256 = "04wb1imm4934mpy2hxcmqh4cn7md1vwmfii39p6mby809325b5z1";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/development/php-packages/phpcs/default.nix b/pkgs/development/php-packages/phpcs/default.nix
index d2053dbe9cb73..87433066ea99b 100644
--- a/pkgs/development/php-packages/phpcs/default.nix
+++ b/pkgs/development/php-packages/phpcs/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "phpcs";
-  version = "3.5.8";
+  version = "3.6.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
-    sha256 = "037mdnpbgd9xaj556pf14h02a4a6f5zzdg58p2z1sivxcygf8aka";
+    sha256 = "0sdi78hrwd3r5p1b38qmp89m41kfszh2qn4n5zhq2dmhsjdhjziz";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/development/python-modules/Markups/default.nix b/pkgs/development/python-modules/Markups/default.nix
index 012f31c266b21..d997b120d3bfc 100644
--- a/pkgs/development/python-modules/Markups/default.nix
+++ b/pkgs/development/python-modules/Markups/default.nix
@@ -5,6 +5,7 @@
 , markdown
 , docutils
 , pygments
+, pyyaml
 }:
 
 buildPythonPackage rec {
@@ -16,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "e309d79dde0935576ce1def6752f2127a12e2c2ea2ae8b0c69f99ff8bc12181d";
   };
 
-  checkInputs = [ markdown docutils pygments ];
+  checkInputs = [ markdown docutils pygments pyyaml ];
   propagatedBuildInputs = [ python-markdown-math ];
 
   meta = {
diff --git a/pkgs/development/python-modules/aiohttp-socks/default.nix b/pkgs/development/python-modules/aiohttp-socks/default.nix
index 7b0bfe80684a1..4e75f56a8dabc 100644
--- a/pkgs/development/python-modules/aiohttp-socks/default.nix
+++ b/pkgs/development/python-modules/aiohttp-socks/default.nix
@@ -1,16 +1,16 @@
-{ lib, fetchPypi, buildPythonPackage, pythonOlder, aiohttp, attrs }:
+{ lib, fetchPypi, buildPythonPackage, pythonOlder, aiohttp, python-socks, attrs }:
 
 buildPythonPackage rec {
   pname = "aiohttp-socks";
-  version = "0.3.9";
+  version = "0.6.0";
 
   src = fetchPypi {
     inherit version;
     pname = "aiohttp_socks";
-    sha256 = "1mn2ng66951mri49f99zh3660j83kvqhr6dpx90s9fkjwk83hmjy";
+    sha256 = "04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr";
   };
 
-  propagatedBuildInputs = [ aiohttp attrs ];
+  propagatedBuildInputs = [ aiohttp attrs python-socks ];
 
   # Checks needs internet access
   doCheck = false;
diff --git a/pkgs/development/python-modules/aiopg/default.nix b/pkgs/development/python-modules/aiopg/default.nix
new file mode 100644
index 0000000000000..cb9cd327e8ce4
--- /dev/null
+++ b/pkgs/development/python-modules/aiopg/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, async-timeout
+, buildPythonPackage
+, fetchFromGitHub
+, psycopg2
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aiopg";
+  version = "1.2.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0c6s2p1fjbdk1ygpl6a1s1rbnsk8gw9kj99pf98nxhb9j3iahas4";
+  };
+
+  propagatedBuildInputs = [
+    async-timeout
+    psycopg2
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "psycopg2-binary" "psycopg2"
+  '';
+
+  # Tests requires a PostgreSQL Docker instance
+  doCheck = false;
+
+  pythonImportsCheck = [ "aiopg" ];
+
+  meta = with lib; {
+    description = "Python library for accessing a PostgreSQL database";
+    homepage = "https://aiopg.readthedocs.io/";
+    license = with licenses; [ bsd2 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/amqtt/default.nix b/pkgs/development/python-modules/amqtt/default.nix
new file mode 100644
index 0000000000000..8ab0e7a7c0cc4
--- /dev/null
+++ b/pkgs/development/python-modules/amqtt/default.nix
@@ -0,0 +1,64 @@
+{ lib
+, buildPythonPackage
+, docopt
+, fetchFromGitHub
+, hypothesis
+, passlib
+, poetry-core
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, pyyaml
+, transitions
+, websockets
+}:
+
+buildPythonPackage rec {
+  pname = "amqtt";
+  version = "0.10.0-alpha.3";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Yakifo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wz85ykjgi2174qcdgpakmc4m0p96v62az7pvc9hyallq1v1k4n6";
+  };
+
+  nativeBuildInputs = [ poetry-core ];
+
+  propagatedBuildInputs = [
+    docopt
+    passlib
+    pyyaml
+    transitions
+    websockets
+  ];
+
+  checkInputs = [
+    hypothesis
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Test are not ported from hbmqtt yet
+    "tests/test_cli.py"
+    "tests/test_client.py"
+  ];
+
+  disabledTests = [
+    # Requires network access
+    "test_connect_tcp"
+  ];
+
+  pythonImportsCheck = [ "amqtt" ];
+
+  meta = with lib; {
+    description = "Python MQTT client and broker implementation";
+    homepage = "https://amqtt.readthedocs.io/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/autopep8/default.nix b/pkgs/development/python-modules/autopep8/default.nix
index 491663b56cd09..737989ac3183c 100644
--- a/pkgs/development/python-modules/autopep8/default.nix
+++ b/pkgs/development/python-modules/autopep8/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "autopep8";
-  version = "1.5.6";
+  version = "1.5.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5454e6e9a3d02aae38f866eec0d9a7de4ab9f93c10a273fb0340f3d6d09f7514";
+    sha256 = "276ced7e9e3cb22e5d7c14748384a5cf5d9002257c0ed50c0e075b68011bb6d0";
   };
 
   propagatedBuildInputs = [ pycodestyle toml ];
diff --git a/pkgs/development/python-modules/backports-zoneinfo/default.nix b/pkgs/development/python-modules/backports-zoneinfo/default.nix
new file mode 100644
index 0000000000000..a9bc0b55955ba
--- /dev/null
+++ b/pkgs/development/python-modules/backports-zoneinfo/default.nix
@@ -0,0 +1,39 @@
+{ lib, buildPythonPackage, fetchFromGitHub
+, pythonOlder
+, importlib-resources
+, hypothesis
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "backports-zoneinfo";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "pganssle";
+    repo = "zoneinfo";
+    rev = version;
+    sha256 = "sha256-00xdDOVdDanfsjQTd3yjMN2RFGel4cWRrAA3CvSnl24=";
+  };
+
+  propagatedBuildInputs = lib.optionals (pythonOlder "3.7") [
+    importlib-resources
+  ];
+
+  pythonImportsCheck = [ "backports.zoneinfo" ];
+
+  checkInputs = [
+    hypothesis
+    pytestCheckHook
+  ];
+
+  # unfortunately /etc/zoneinfo doesn't exist in sandbox, and many tests fail
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Backport of the standard library module zoneinfo";
+    homepage = "https://github.com/pganssle/zoneinfo";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jonringer ];
+  };
+}
diff --git a/pkgs/development/python-modules/blist/default.nix b/pkgs/development/python-modules/blist/default.nix
index d4dcb54c5cd14..af129f4aa5dcb 100644
--- a/pkgs/development/python-modules/blist/default.nix
+++ b/pkgs/development/python-modules/blist/default.nix
@@ -22,6 +22,12 @@ buildPythonPackage rec {
       url = "https://github.com/DanielStutzbach/blist/commit/2dc1ec28ed68611fcec9ac1c68070c782d6b4b4e.patch";
       sha256 = "0ma0z6ga80w3wzh3sidwd8ckfbgx4j1y7cc29q6j9ddrvxpf276y";
     })
+
+    # Fixes compatibility for Python 3.9 https://github.com/DanielStutzbach/blist/pull/91
+    (fetchpatch {
+      url = "https://github.com/DanielStutzbach/blist/pull/91/commits/e63514f805e42dc6a5708e629e4153d91bc90bff.patch";
+      sha256 = "1prx8znk7008v4ky7q2lx0pi6hzqd4kxgfdwbsr4zylwbrdqvsga";
+    })
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/bpython/default.nix b/pkgs/development/python-modules/bpython/default.nix
index 55e66545538fb..64fe3c455ee59 100644
--- a/pkgs/development/python-modules/bpython/default.nix
+++ b/pkgs/development/python-modules/bpython/default.nix
@@ -3,12 +3,15 @@
 , fetchPypi
 , curtsies
 , greenlet
-, mock
+, jedi
 , pygments
+, pyxdg
 , requests
 , substituteAll
 , urwid
-, which }:
+, watchdog
+, which
+}:
 
 buildPythonPackage rec {
   pname = "bpython";
@@ -24,17 +27,22 @@ buildPythonPackage rec {
     which = "${which}/bin/which";
   })];
 
-  propagatedBuildInputs = [ curtsies greenlet pygments requests urwid ];
+  propagatedBuildInputs = [
+    curtsies
+    greenlet
+    pygments
+    pyxdg
+    requests
+    urwid
+  ];
 
   postInstall = ''
     substituteInPlace "$out/share/applications/org.bpython-interpreter.bpython.desktop" \
       --replace "Exec=/usr/bin/bpython" "Exec=$out/bin/bpython"
   '';
 
-  checkInputs = [ mock ];
-
-  # tests fail: https://github.com/bpython/bpython/issues/712
-  doCheck = false;
+  checkInputs = [ jedi watchdog ];
+  pythonImportsCheck = [ "bpython" ];
 
   meta = with lib; {
     description = "A fancy curses interface to the Python interactive interpreter";
diff --git a/pkgs/development/python-modules/buildbot/worker.nix b/pkgs/development/python-modules/buildbot/worker.nix
index 242849e2c79ec..5237f2ae733d6 100644
--- a/pkgs/development/python-modules/buildbot/worker.nix
+++ b/pkgs/development/python-modules/buildbot/worker.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, buildbot, setuptoolsTrial, mock, twisted,
-  future, coreutils }:
+  future, coreutils, nixosTests }:
 
 buildPythonPackage (rec {
   pname = "buildbot-worker";
@@ -19,6 +19,10 @@ buildPythonPackage (rec {
       --replace /usr/bin/tail "${coreutils}/bin/tail"
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.buildbot;
+  };
+
   meta = with lib; {
     homepage = "https://buildbot.net/";
     description = "Buildbot Worker Daemon";
diff --git a/pkgs/development/python-modules/certbot/default.nix b/pkgs/development/python-modules/certbot/default.nix
index 7b4f7064b16a1..12e541d9007a5 100644
--- a/pkgs/development/python-modules/certbot/default.nix
+++ b/pkgs/development/python-modules/certbot/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "certbot";
-  version = "1.14.0";
+  version = "1.15.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-J514zgmIcHpwySChFBXGKR4552wS9z5x8Berk/irHSU=";
+    sha256 = "sha256-Z5ZIA0ib+N7La6Z0Taf6DovCF6fXnEDppPQt6Vgwl0c=";
   };
 
   sourceRoot = "source/${pname}";
diff --git a/pkgs/development/python-modules/crate/default.nix b/pkgs/development/python-modules/crate/default.nix
index 9be85ff4b3cda..07b9652e7753f 100644
--- a/pkgs/development/python-modules/crate/default.nix
+++ b/pkgs/development/python-modules/crate/default.nix
@@ -29,6 +29,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    "RequestsCaBundleTest"
+  ];
   disabledTestPaths = lib.optionals stdenv.isDarwin [ "src/crate/client/test_http.py" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/csvw/default.nix b/pkgs/development/python-modules/csvw/default.nix
index cf388409c578a..3df013e7599af 100644
--- a/pkgs/development/python-modules/csvw/default.nix
+++ b/pkgs/development/python-modules/csvw/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy27
+, pythonOlder
 , attrs
 , isodate
 , dateutil
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "csvw";
-  version = "1.10.2";
-  disabled = isPy27;
+  version = "1.11.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "cldf";
     repo = "csvw";
     rev = "v${version}";
-    sha256 = "0z0qxlsfxwz1qapxb4d0mz3wkj99d7zi9yrg1cbd2xp7giagb6d4";
+    sha256 = "1393xwqawaxsflbq62vks92vv4zch8p6dd1mdvdi7j4vvf0zljkg";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/python-modules/curtsies/default.nix b/pkgs/development/python-modules/curtsies/default.nix
index dc32bcdf74c93..7b34884e26e28 100644
--- a/pkgs/development/python-modules/curtsies/default.nix
+++ b/pkgs/development/python-modules/curtsies/default.nix
@@ -1,22 +1,14 @@
-{ lib, buildPythonPackage, fetchPypi, fetchpatch, pythonOlder, blessings, mock, nose, pyte, wcwidth, typing ? null}:
+{ lib, buildPythonPackage, fetchPypi, pythonOlder, blessings, mock, nose, pyte, cwcwidth, typing ? null}:
 
 buildPythonPackage rec {
   pname = "curtsies";
-  version = "0.3.0";
+  version = "0.3.5";
   src = fetchPypi {
     inherit pname version;
-    sha256 = "89c802ec051d01dec6fc983e9856a3706e4ea8265d2940b1f6d504a9e26ed3a9";
+    sha256 = "1g8dwafx4vx06isjkn28r3cwb0hw1bv67lgygaz34yk66lrzz1x5";
   };
 
-  patches = [
-    # Fix dependency on typing. Remove with the next release
-    (fetchpatch {
-      url = "https://github.com/bpython/curtsies/commit/217b4f83e954837f8adc4c549c1f2f9f2bb272a7.patch";
-      sha256 = "1d3zwx9c7i0drb4nvydalm9mr83jrvdm75ffgisri89h337hiffs";
-    })
-  ];
-
-  propagatedBuildInputs = [ blessings wcwidth ]
+  propagatedBuildInputs = [ blessings cwcwidth ]
     ++ lib.optionals (pythonOlder "3.5") [ typing ];
 
   checkInputs = [ mock pyte nose ];
diff --git a/pkgs/development/python-modules/cwcwidth/default.nix b/pkgs/development/python-modules/cwcwidth/default.nix
new file mode 100644
index 0000000000000..a17a8a936aa06
--- /dev/null
+++ b/pkgs/development/python-modules/cwcwidth/default.nix
@@ -0,0 +1,34 @@
+{ lib, buildPythonPackage, fetchPypi, cython, pytestCheckHook }:
+
+buildPythonPackage rec {
+  pname = "cwcwidth";
+  version = "0.1.4";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1azrphpkcyggg38xvkfb9dpc4xmmm90p02kf8dkqd4d6j5w96aj8";
+  };
+
+  nativeBuildInputs = [ cython ];
+
+  checkInputs = [ pytestCheckHook ];
+  # Hack needed to make pytest + cython work
+  # https://github.com/NixOS/nixpkgs/pull/82410#issuecomment-827186298
+  preCheck = ''
+    export HOME=$(mktemp -d)
+    cp -r $TMP/$sourceRoot/tests $HOME
+    pushd $HOME
+  '';
+  postCheck = "popd";
+
+  pythonImportsCheck = [ "cwcwidth" ];
+
+  meta = with lib; {
+    description = "Python bindings for wc(s)width";
+    homepage = "https://github.com/sebastinas/cwcwidth";
+    changelog = "https://github.com/sebastinas/cwcwidth/blob/main/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ eduardosm ];
+  };
+}
diff --git a/pkgs/development/python-modules/dask-image/default.nix b/pkgs/development/python-modules/dask-image/default.nix
index 38d113eee706e..e3ab607dcac08 100644
--- a/pkgs/development/python-modules/dask-image/default.nix
+++ b/pkgs/development/python-modules/dask-image/default.nix
@@ -9,12 +9,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.5.0";
+  version = "0.6.0";
   pname = "dask-image";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0bf7ea8dcd9d795505b498bd632394720c048f50761e23c574d9a6bacfb27cbb";
+    sha256 = "1zzxrvbm52xn7azkn74pjinlk0jkpdcyl3r5vxxy5lmjnmzlrrpy";
   };
 
   propagatedBuildInputs = [ dask scipy pims ];
diff --git a/pkgs/development/python-modules/eve/default.nix b/pkgs/development/python-modules/eve/default.nix
index 32f531e4ff595..89db1ccad28dd 100644
--- a/pkgs/development/python-modules/eve/default.nix
+++ b/pkgs/development/python-modules/eve/default.nix
@@ -27,6 +27,11 @@ buildPythonPackage rec {
     setuptools
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "events>=0.3,<0.4" "events>=0.3,<0.5"
+  '';
+
   pythonImportsCheck = [ "eve" ];
 
   # tests call a running mongodb instance
diff --git a/pkgs/development/python-modules/exchangelib/default.nix b/pkgs/development/python-modules/exchangelib/default.nix
index 0cccedd54a91a..bf9ae2284f7dd 100644
--- a/pkgs/development/python-modules/exchangelib/default.nix
+++ b/pkgs/development/python-modules/exchangelib/default.nix
@@ -3,8 +3,8 @@
   lxml, tzlocal, python-dateutil, pygments, requests-kerberos,
   defusedxml, cached-property, isodate, requests_ntlm, dnspython,
   psutil, requests-mock, pyyaml,
-  oauthlib, requests_oauthlib,
-  flake8,
+  oauthlib, requests_oauthlib, tzdata,
+  flake8, backports-zoneinfo
 }:
 
 buildPythonPackage rec {
@@ -24,9 +24,11 @@ buildPythonPackage rec {
     flake8
   ];
   propagatedBuildInputs = [
-    lxml tzlocal python-dateutil pygments requests-kerberos
+    lxml tzlocal tzdata python-dateutil pygments requests-kerberos
     defusedxml cached-property isodate requests_ntlm dnspython
     oauthlib requests_oauthlib
+  ] ++ lib.optionals (pythonOlder "3.9") [
+    backports-zoneinfo
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/graphite-web/default.nix b/pkgs/development/python-modules/graphite-web/default.nix
index d2d6a78436ac4..08125bfc71a36 100644
--- a/pkgs/development/python-modules/graphite-web/default.nix
+++ b/pkgs/development/python-modules/graphite-web/default.nix
@@ -28,6 +28,12 @@ buildPythonPackage rec {
     ./update-django-tagging.patch
   ];
 
+  postPatch = ''
+    # https://github.com/graphite-project/graphite-web/pull/2701
+    substituteInPlace setup.py \
+      --replace "'scandir'" "'scandir; python_version < \"3.5\"'"
+  '';
+
   propagatedBuildInputs = [
     django
     memcached
diff --git a/pkgs/development/python-modules/hg-evolve/default.nix b/pkgs/development/python-modules/hg-evolve/default.nix
index b7bd002c36786..46db97a9aedd3 100644
--- a/pkgs/development/python-modules/hg-evolve/default.nix
+++ b/pkgs/development/python-modules/hg-evolve/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "hg-evolve";
-  version = "10.3.0";
+  version = "10.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5d7f73fc1c357134ae9b4a3ed2d844ab8e75a4ca1303679a9e150e87617e7bc7";
+    sha256 = "03xwnadpvgna70n6pfxb7xdrszppdqrx5qmkbr1v0jzbh5rnzi6b";
   };
 
   doCheck = false;
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Enables the “changeset evolution” feature of Mercurial core";
     homepage = "https://www.mercurial-scm.org/doc/evolution/";
-    maintainers = with maintainers; [ xavierzwirtz ];
+    maintainers = with maintainers; [ xavierzwirtz lukegb ];
     license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/development/python-modules/humblewx/default.nix b/pkgs/development/python-modules/humblewx/default.nix
new file mode 100644
index 0000000000000..7fd0b0e8dd90d
--- /dev/null
+++ b/pkgs/development/python-modules/humblewx/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, wxPython_4_0
+, python3
+}:
+
+buildPythonPackage rec {
+  pname = "humblewx";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "thetimelineproj";
+    repo = pname;
+    rev = version;
+    sha256 = "0fv8gwlbcj000qq34inbwgxf0xgibs590dsyqnw0mmyb7f1iq210";
+  };
+
+  # timeline is not compatible with wxPython_4_1. reported upstream
+  propagatedBuildInputs = [ wxPython_4_0 ];
+
+  checkPhase = ''
+    runHook preCheck
+    for i in examples/*; do
+      ${python3.interpreter} $i
+    done
+    runHook postCheck
+  '';
+
+  # Unable to access the X Display, is $DISPLAY set properly?
+  # would have to use nixos module tests, but it is not worth it
+  doCheck = false;
+
+  pythonImportsCheck = [ "humblewx" ];
+
+  meta = {
+    homepage = "https://github.com/thetimelineproj/humblewx";
+    description = "Library that simplifies creating user interfaces with wxPython";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ davidak ];
+  };
+}
diff --git a/pkgs/development/python-modules/hyppo/default.nix b/pkgs/development/python-modules/hyppo/default.nix
index 86b43465fb648..cc0b569d9b23f 100644
--- a/pkgs/development/python-modules/hyppo/default.nix
+++ b/pkgs/development/python-modules/hyppo/default.nix
@@ -6,6 +6,8 @@
 , numpy
 , scikitlearn
 , scipy
+, matplotlib
+, seaborn
 }:
 
 buildPythonPackage rec {
@@ -28,8 +30,12 @@ buildPythonPackage rec {
     scipy
   ];
 
-  checkInputs = [ pytestCheckHook pytestcov ];
-  pytestFlagsArray = [ "--ignore=docs" ];
+  checkInputs = [ pytestCheckHook pytestcov matplotlib seaborn ];
+  disabledTestPaths = [
+    "docs"
+    "benchmarks"
+    "examples"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/neurodata/hyppo";
diff --git a/pkgs/development/python-modules/i2c-tools/default.nix b/pkgs/development/python-modules/i2c-tools/default.nix
new file mode 100644
index 0000000000000..60af11e241984
--- /dev/null
+++ b/pkgs/development/python-modules/i2c-tools/default.nix
@@ -0,0 +1,21 @@
+{ lib
+, buildPythonPackage
+, i2c-tools
+}:
+
+buildPythonPackage rec {
+  inherit (i2c-tools) pname version src;
+
+  buildInputs = [ i2c-tools ];
+
+  preConfigure = "cd py-smbus";
+
+  meta = with lib; {
+    inherit (i2c-tools.meta) homepage platforms;
+
+    description = "wrapper for i2c-tools' smbus stuff";
+    # from py-smbus/smbusmodule.c
+    license = [ licenses.gpl2Only ];
+    maintainers = [ maintainers.evils ];
+  };
+}
diff --git a/pkgs/development/python-modules/ipympl/default.nix b/pkgs/development/python-modules/ipympl/default.nix
index 44c8c7bfd061f..2d25eb645bad9 100644
--- a/pkgs/development/python-modules/ipympl/default.nix
+++ b/pkgs/development/python-modules/ipympl/default.nix
@@ -1,4 +1,10 @@
-{ lib, buildPythonPackage, fetchPypi, ipywidgets, matplotlib }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, ipywidgets
+, matplotlib
+, jupyter-packaging
+}:
 
 buildPythonPackage rec {
   pname = "ipympl";
@@ -9,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "f0f1f356d8cb9d4fb51bb86dbbf837c190145316cb72f66081872ebc4d6db0a1";
   };
 
-  propagatedBuildInputs = [ ipywidgets matplotlib ];
+  propagatedBuildInputs = [ ipywidgets matplotlib jupyter-packaging ];
 
   # There are no unit tests in repository
   doCheck = false;
diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix
index eedfcfbcb6e98..e3de451cfe1fa 100644
--- a/pkgs/development/python-modules/jupytext/default.nix
+++ b/pkgs/development/python-modules/jupytext/default.nix
@@ -1,39 +1,52 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, GitPython
+, jupyter-packaging
+, jupyter_client
+, jupyterlab
 , markdown-it-py
+, mdit-py-plugins
 , nbformat
-, pytest
+, notebook
+, pytestCheckHook
 , pyyaml
 , toml
 }:
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.11.0";
+  version = "1.11.2";
+  format = "pyproject";
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "9062d001baaa32430fbb94a2c9394ac906db0a58da94e7aa4e414b73fd7d51bc";
+  src = fetchFromGitHub {
+    owner = "mwouts";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-S2SKAC2oT4VIVMMDbu/Puo87noAgnQs1hh88JphutA8=";
   };
 
+  buildInputs = [ jupyter-packaging jupyterlab ];
   propagatedBuildInputs = [
     markdown-it-py
+    mdit-py-plugins
     nbformat
     pyyaml
     toml
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
+    GitPython
+    jupyter_client
+    notebook
   ];
-
-  # requires test notebooks which are not shipped with the pypi release
-  # also, pypi no longer includes tests
-  doCheck = false;
-  checkPhase = ''
-    pytest
-  '';
+  # pre-commit tests require a Git repository.
+  pytestFlagsArray = [ "--ignore-glob='tests/test_pre_commit_*.py'" ];
+  pythonImportsCheck = [ "jupytext" "jupytext.cli" ];
 
   meta = with lib; {
     description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts";
diff --git a/pkgs/development/python-modules/ldaptor/19.nix b/pkgs/development/python-modules/ldaptor/19.nix
new file mode 100644
index 0000000000000..cca696f1dff09
--- /dev/null
+++ b/pkgs/development/python-modules/ldaptor/19.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, twisted
+, passlib
+, pyopenssl
+, pyparsing
+, service-identity
+, zope_interface
+, isPy3k
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "ldaptor";
+  version = "19.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "64c7b870c77e34e4f5f9cfdf330b9702e89b4dd0f64275704f86c1468312c755";
+  };
+
+  propagatedBuildInputs = [
+    twisted passlib pyopenssl pyparsing service-identity zope_interface
+  ];
+
+  disabled = isPy3k;
+
+  doCheck = false;
+
+  meta = {
+    description = "A Pure-Python Twisted library for LDAP";
+    homepage = "https://github.com/twisted/ldaptor";
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/linkify-it-py/default.nix b/pkgs/development/python-modules/linkify-it-py/default.nix
new file mode 100644
index 0000000000000..b9511bd5f35b7
--- /dev/null
+++ b/pkgs/development/python-modules/linkify-it-py/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+, uc-micro-py
+}:
+
+buildPythonPackage rec {
+  pname = "linkify-it-py";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "tsutsu3";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-gd51no6VqvIiW9fbCdp30zHG/us6by7FLHV2ul/XJAM=";
+  };
+
+  propagatedBuildInputs = [ uc-micro-py ];
+
+  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "linkify_it" ];
+
+  meta = with lib; {
+    description = "Links recognition library with full unicode support";
+    homepage = "https://github.com/tsutsu3/linkify-it-py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/pkgs/development/python-modules/liquidctl/default.nix b/pkgs/development/python-modules/liquidctl/default.nix
index ecf5990e74bc4..4b2decb9550c9 100644
--- a/pkgs/development/python-modules/liquidctl/default.nix
+++ b/pkgs/development/python-modules/liquidctl/default.nix
@@ -2,40 +2,61 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
+, installShellFiles
 , docopt
 , hidapi
 , pyusb
 , smbus-cffi
+, i2c-tools
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "liquidctl";
-  version = "1.5.1";
+  version = "1.6.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner  = pname;
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "1l6cvm8vs2gkmg4qwg5m5vqjql1gah2vd9vs7pcj2v5hf0cm5v9x";
+    sha256 = "sha256-FYpr1mYzPc0rOE75fUNjxe/57EWl+zcbIbkqFseDhzI=";
   };
 
+  nativeBuildInputs = [ installShellFiles ];
+
   propagatedBuildInputs = [
     docopt
     hidapi
     pyusb
     smbus-cffi
+    i2c-tools
   ];
 
-  # does not contain tests
-  doCheck = false;
+  outputs = [ "out" "man" ];
+
+  postInstall = ''
+    installManPage liquidctl.8
+    installShellCompletion extra/completions/liquidctl.bash
+
+    mkdir -p $out/lib/udev/rules.d
+    cp extra/linux/71-liquidctl.rules $out/lib/udev/rules.d/.
+  '';
+
+  checkInputs = [ pytestCheckHook ];
+
+  postBuild = ''
+    # needed for pythonImportsCheck
+    export XDG_RUNTIME_DIR=$TMPDIR
+  '';
+
   pythonImportsCheck = [ "liquidctl" ];
 
   meta = with lib; {
     description = "Cross-platform CLI and Python drivers for AIO liquid coolers and other devices";
     homepage    = "https://github.com/liquidctl/liquidctl";
     changelog   = "https://github.com/liquidctl/liquidctl/blob/master/CHANGELOG.md";
-    license     = licenses.gpl3;
-    maintainers = with maintainers; [ arturcygan ];
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ arturcygan evils ];
   };
 }
diff --git a/pkgs/development/python-modules/localzone/default.nix b/pkgs/development/python-modules/localzone/default.nix
index 0960a824817a7..0fcf15fe94741 100644
--- a/pkgs/development/python-modules/localzone/default.nix
+++ b/pkgs/development/python-modules/localzone/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "localzone";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchFromGitHub {
     owner = "ags-slc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1vzn1vm3zf86l7qncbmghjrwyvla9dc2v8abn8jajbl47gm7r5f7";
+    sha256 = "1cbiv21yryjqy46av9hbjccks95sxznrx8nypd3yzihf1vkjiq5a";
   };
 
   propagatedBuildInputs = [ dnspython sphinx ];
diff --git a/pkgs/development/python-modules/markdown-it-py/default.nix b/pkgs/development/python-modules/markdown-it-py/default.nix
index c7a8a3e17f3e7..322c4ac533d22 100644
--- a/pkgs/development/python-modules/markdown-it-py/default.nix
+++ b/pkgs/development/python-modules/markdown-it-py/default.nix
@@ -1,41 +1,36 @@
 { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder
 , attrs
-, coverage
+, linkify-it-py
 , psutil
 , pytest-benchmark
+, pytest-regressions
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "markdown-it-py";
-  version = "0.6.2";
+  version = "1.0.0";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "executablebooks";
-    repo = "markdown-it-py";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1g9p8pdnvjya436lii63r5gjajhmbhmyh9ngbjqf9dqny05nagz1";
+    hash = "sha256-GA7P2I8N+i2ISsVgx58zyhrfKMcZ7pL4X9T/trbsr1Y=";
   };
 
-  propagatedBuildInputs = [ attrs ];
+  propagatedBuildInputs = [ attrs linkify-it-py ]
+    ++ lib.optional (pythonOlder "3.8") typing-extensions;
 
   checkInputs = [
-    coverage
-    pytest-benchmark
     psutil
+    pytest-benchmark
+    pytest-regressions
     pytestCheckHook
   ];
-
-  disabledTests = [
-    # Requires the unpackaged pytest-regressions fixture plugin
-    "test_amsmath"
-    "test_container"
-    "test_deflist"
-    "test_dollarmath"
-    "test_spec"
-    "test_texmath"
-  ];
+  pytestImportsCheck = [ "markdown_it" ];
 
   meta = with lib; {
     description = "Markdown parser done right";
diff --git a/pkgs/development/python-modules/matrix-nio/default.nix b/pkgs/development/python-modules/matrix-nio/default.nix
index 69774b58eb695..9f10510d243b3 100644
--- a/pkgs/development/python-modules/matrix-nio/default.nix
+++ b/pkgs/development/python-modules/matrix-nio/default.nix
@@ -2,9 +2,11 @@
 , buildPythonPackage
 , fetchFromGitHub
 , git
+, poetry-core
 , attrs
 , future
 , aiohttp
+, aiohttp-socks
 , aiofiles
 , h11
 , h2
@@ -16,27 +18,37 @@
 , peewee
 , cachetools
 , atomicwrites
+, pytestCheckHook
+, faker
+, aioresponses
+, hypothesis
+, pytest-aiohttp
+, pytest-benchmark
 }:
 
 buildPythonPackage rec {
   pname = "matrix-nio";
-  version = "0.15.2";
+  version = "0.18.0";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "poljar";
     repo = "matrix-nio";
     rev = version;
-    sha256 = "190xw3cvk4amr9pl8ip2i7k3xdjd0231kn2zl6chny5axx22p1dv";
+    sha256 = "1rn5lz81y4bvgjhxzd57qhr0lmkm5xljl4bj9w10lnm4f7ls0xdi";
   };
 
   nativeBuildInputs = [
     git
+    poetry-core
+    pytestCheckHook
   ];
 
   propagatedBuildInputs = [
     attrs
     future
     aiohttp
+    aiohttp-socks
     aiofiles
     h11
     h2
@@ -50,7 +62,20 @@ buildPythonPackage rec {
     atomicwrites
   ];
 
-  doCheck = false;
+  checkInputs = [
+    faker
+    aioresponses
+    hypothesis
+    pytest-aiohttp
+    pytest-benchmark
+  ];
+
+  disabledTests = [
+    # touches network
+    "test_connect_wrapper"
+    # time dependent and flaky
+    "test_transfer_monitor_callbacks"
+  ];
 
   meta = with lib; {
     description = "A Python Matrix client library, designed according to sans I/O principles";
diff --git a/pkgs/development/python-modules/mcstatus/default.nix b/pkgs/development/python-modules/mcstatus/default.nix
index 1ea14c35510cb..cf61eb2fa3866 100644
--- a/pkgs/development/python-modules/mcstatus/default.nix
+++ b/pkgs/development/python-modules/mcstatus/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "mcstatus";
-  version = "5.1.4";
+  version = "5.2.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "Dinnerbone";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1k8hjv965svbm95m7jaawlhdbxqpkjchlwvjwn1n7z90dfgn5kih";
+    sha256 = "sha256-RlqzeixaHgyIl/7mMRkZAEsqJEP79Bz1bDGAU8PIetU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mdit-py-plugins/default.nix b/pkgs/development/python-modules/mdit-py-plugins/default.nix
new file mode 100644
index 0000000000000..9c5705dbc4083
--- /dev/null
+++ b/pkgs/development/python-modules/mdit-py-plugins/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, markdown-it-py
+, pytest-regressions
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "mdit-py-plugins";
+  version = "0.2.8";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "executablebooks";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-MXQjaVDuguGbmby6BQnrTdpq6Mih3HabXuyFxf9jB18=";
+  };
+
+  propagatedBuildInputs = [ markdown-it-py ];
+
+  checkInputs = [ pytestCheckHook pytest-regressions ];
+  pythonImportsCheck = [ "mdit_py_plugins" ];
+
+  meta = with lib; {
+    description = "Collection of core plugins for markdown-it-py";
+    homepage = "https://github.com/executablebooks/mdit-py-plugins";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/pkgs/development/python-modules/mlrose/default.nix b/pkgs/development/python-modules/mlrose/default.nix
index 40e3b6ce09532..b17b56b8f9ee9 100644
--- a/pkgs/development/python-modules/mlrose/default.nix
+++ b/pkgs/development/python-modules/mlrose/default.nix
@@ -1,21 +1,45 @@
-{ lib, isPy27, buildPythonPackage, fetchPypi, scikitlearn }:
+{ lib
+, isPy27
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, scikitlearn
+, pytestCheckHook
+, pytest-randomly
+}:
 
 buildPythonPackage rec {
   pname = "mlrose";
   version = "1.3.0";
   disabled = isPy27;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "cec83253bf6da67a7fb32b2c9ae13e9dbc6cfbcaae2aa3107993e69e9788f15e";
+  src = fetchFromGitHub {
+    owner = "gkhayes";
+    repo = "mlrose";
+    rev = "v${version}";
+    sha256 = "1dn43k3rcypj58ymcj849b37w66jz7fphw8842v6mlbij3x0rxfl";
   };
 
+  patches = [
+    # Fixes compatibility with scikit-learn 0.24.1
+    (fetchpatch {
+      url = "https://github.com/gkhayes/mlrose/pull/55/commits/19caf8616fc194402678aa67917db334ad02852a.patch";
+      sha256 = "1nivz3bn21nd21bxbcl16a6jmy7y5j8ilz90cjmd0xq4v7flsahf";
+    })
+  ];
+
   propagatedBuildInputs = [ scikitlearn ];
+  checkInputs = [ pytest-randomly pytestCheckHook ];
 
   postPatch = ''
-    sed -i 's,sklearn,scikit-learn,g' setup.py
+    substituteInPlace setup.py --replace sklearn scikit-learn
   '';
 
+  pythonImportsCheck = [ "mlrose" ];
+
+  # Fix random seed during tests
+  pytestFlagsArray = [ "--randomly-seed 0" ];
+
   meta = with lib; {
     description = "Machine Learning, Randomized Optimization and SEarch";
     homepage    = "https://github.com/gkhayes/mlrose";
diff --git a/pkgs/development/python-modules/msal/default.nix b/pkgs/development/python-modules/msal/default.nix
index 3df0527589a1a..735d74b5237be 100644
--- a/pkgs/development/python-modules/msal/default.nix
+++ b/pkgs/development/python-modules/msal/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "msal";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "582e92e3b9fa68084dca6ecfd8db866ddc75cd9043de267c79d6b6277dd27f55";
+    sha256 = "sha256-RnrwK7lKh6G2lbUb+GdmfoKKzA3Twd5fpUP2kALbSfo=";
   };
 
   propagatedBuildInputs = [
@@ -22,15 +22,15 @@ buildPythonPackage rec {
   ];
 
   # Tests assume Network Connectivity:
-  #   https://github.com/AzureAD/microsoft-authentication-library-for-python/blob/e2958961e8ec16d0af4199f60c36c3f913497e48/tests/test_authority.py#L73
+  # https://github.com/AzureAD/microsoft-authentication-library-for-python/blob/e2958961e8ec16d0af4199f60c36c3f913497e48/tests/test_authority.py#L73
   doCheck = false;
 
+  pythonImportsCheck = [ "msal" ];
+
   meta = with lib; {
     description = "The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of users with Microsoft Azure Active Directory accounts (AAD) and Microsoft Accounts (MSA) using industry standard OAuth2 and OpenID Connect";
     homepage = "https://github.com/AzureAD/microsoft-authentication-library-for-python";
     license = licenses.mit;
-    maintainers = with maintainers; [
-      kamadorueda
-    ];
+    maintainers = with maintainers; [ kamadorueda ];
   };
 }
diff --git a/pkgs/development/python-modules/mwoauth/default.nix b/pkgs/development/python-modules/mwoauth/default.nix
index 0a73e99391e20..8743329917e72 100644
--- a/pkgs/development/python-modules/mwoauth/default.nix
+++ b/pkgs/development/python-modules/mwoauth/default.nix
@@ -17,14 +17,28 @@ buildPythonPackage rec {
     sha256 = "9e0d70a1fa6f452584de1cb853ae6c11f41233549f7839cfb879f99410f6ad46";
   };
 
-  # package has no tests
+  propagatedBuildInputs = [
+    oauthlib
+    pyjwt
+    requests
+    requests_oauthlib
+    six
+  ];
+
+  postPatch = ''
+    # https://github.com/mediawiki-utilities/python-mwoauth/pull/43
+    substituteInPlace setup.py --replace "PyJWT>=1.0.1,<2.0.0" "PyJWT>=1.0.1"
+  '';
+
+  # PyPI source has no tests included
+  # https://github.com/mediawiki-utilities/python-mwoauth/issues/44
   doCheck = false;
 
-  propagatedBuildInputs = [ six pyjwt requests oauthlib requests_oauthlib ];
+  pythonImportsCheck = [ "mwoauth" ];
 
   meta = with lib; {
-    description = "A library designed to provide a simple means to performing an OAuth handshake with a MediaWiki installation with the OAuth Extension installed.";
-    homepage =  "https://github.com/mediawiki-utilities/python-mwoauth";
+    description = "Python library to perform OAuth handshakes with a MediaWiki installation";
+    homepage = "https://github.com/mediawiki-utilities/python-mwoauth";
     license = licenses.mit;
     maintainers = with maintainers; [ ixxie ];
   };
diff --git a/pkgs/development/python-modules/myjwt/default.nix b/pkgs/development/python-modules/myjwt/default.nix
index d80e66e07bf03..0fecd439e3f53 100644
--- a/pkgs/development/python-modules/myjwt/default.nix
+++ b/pkgs/development/python-modules/myjwt/default.nix
@@ -1,33 +1,31 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchFromGitHub
 , click
 , colorama
 , cryptography
 , exrex
+, fetchFromGitHub
 , pyopenssl
 , pyperclip
+, pytest-mock
+, pytestCheckHook
 , questionary
 , requests
-, pytestCheckHook
-, pytest-mock
 , requests-mock
 }:
 
 buildPythonPackage rec {
   pname = "myjwt";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "mBouamama";
     repo = "MyJWT";
     rev = version;
-    sha256 = "1n3lvdrzp6wbbcygjwa7xar2jnhjnrz7a9khmn2phhkkngxm5rc4";
+    sha256 = "sha256-kZkqFeaQPd56BVaYmCWAbVu1xwbPAIlQC3u5/x3dh7A=";
   };
 
-  patches = [ ./pinning.patch ];
-
   propagatedBuildInputs = [
     click
     colorama
@@ -40,15 +38,20 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytestCheckHook
     pytest-mock
+    pytestCheckHook
     requests-mock
   ];
 
+  postPatch = ''
+    # Remove all version pinning (E.g., tornado==5.1.1 -> tornado)
+    sed -i -e "s/==[0-9.]*//" requirements.txt
+  '';
+
   pythonImportsCheck = [ "myjwt" ];
 
   meta = with lib; {
-    description = "CLI tool for testing vulnerabilities on Json Web Token(JWT)";
+    description = "CLI tool for testing vulnerabilities of JSON Web Tokens (JWT)";
     homepage = "https://github.com/mBouamama/MyJWT";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
diff --git a/pkgs/development/python-modules/myjwt/pinning.patch b/pkgs/development/python-modules/myjwt/pinning.patch
deleted file mode 100644
index abae9d0e2ecb5..0000000000000
--- a/pkgs/development/python-modules/myjwt/pinning.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/requirements.txt b/requirements.txt
-index 3017e02..2b465db 100644
---- a/requirements.txt
-+++ b/requirements.txt
-@@ -1,8 +1,8 @@
--click==7.1.2
--colorama==0.4.4
--cryptography==3.3.1
--exrex==0.10.5
--pyOpenSSL==20.0.1
--pyperclip==1.8.1
--questionary==1.9.0
--requests==2.25.1
-+click
-+colorama
-+cryptography
-+exrex
-+pyOpenSSL
-+pyperclip
-+questionary
-+requests
diff --git a/pkgs/development/python-modules/nassl/default.nix b/pkgs/development/python-modules/nassl/default.nix
index 908ecff8c177d..8a290a7b859b7 100644
--- a/pkgs/development/python-modules/nassl/default.nix
+++ b/pkgs/development/python-modules/nassl/default.nix
@@ -8,12 +8,15 @@
 , tls-parser
 , cacert
 , pytestCheckHook
+, pythonOlder
 }:
 
 let
-  zlibStatic = pkgsStatic.zlib.override {
+  zlibStatic = (pkgsStatic.zlib.override {
     splitStaticOutput = false;
-  };
+  }).overrideAttrs (oldAttrs: {
+    NIX_CFLAGS_COMPILE = "${oldAttrs.NIX_CFLAGS_COMPILE} -fPIC";
+  });
   nasslOpensslArgs = {
     static = true;
     enableSSL2 = true;
@@ -67,13 +70,14 @@ let
 in
 buildPythonPackage rec {
   pname = "nassl";
-  version = "3.1.0";
+  version = "4.0.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    sha256 = "1x1v0fpb6gcc2r0k2rsy0mc3v25s3qbva78apvi46n08c2l309ci";
+    hash = "sha256-6lk2YfI9km10YbJAn38fvo9qa4iXcByL+udCsDe+kvU=";
   };
 
   postPatch = let
@@ -86,7 +90,7 @@ buildPythonPackage rec {
       ${opensslLegacyStatic.out}/lib/libcrypto.a \
       deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
     ln -s ${opensslLegacyStatic.out.dev}/include deps/openssl-OpenSSL_${legacyOpenSSLVersion}/include
-    ln -s ${opensslLegacyStatic.bin}/bin deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
+    ln -s ${opensslLegacyStatic.bin} deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
 
     mkdir -p deps/openssl-OpenSSL_${modernOpenSSLVersion}/
     cp ${opensslStatic.out}/lib/libssl.a \
@@ -108,18 +112,21 @@ buildPythonPackage rec {
     invoke package.wheel
   '';
 
+  doCheck = true;
+
+  pythonImportsCheck = [ "nassl" ];
+
   checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    # Skip online tests
-    pytest -k 'not Online'
-  '';
+  disabledTests = [
+    "Online"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/nabla-c0d3/nassl";
     description = "Low-level OpenSSL wrapper for Python 3.7+";
     platforms = with platforms; linux ++ darwin;
-    license = licenses.agpl3;
+    license = licenses.agpl3Only;
     maintainers = with maintainers; [ veehaitch ];
   };
 }
diff --git a/pkgs/development/python-modules/oauthenticator/default.nix b/pkgs/development/python-modules/oauthenticator/default.nix
index 839582e87f0d2..25e81c89c2553 100644
--- a/pkgs/development/python-modules/oauthenticator/default.nix
+++ b/pkgs/development/python-modules/oauthenticator/default.nix
@@ -14,20 +14,18 @@
 
 buildPythonPackage rec {
   pname = "oauthenticator";
-  version = "0.13.0";
+  version = "14.0.0";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5202adcd96ddbbccbc267da02f2d14e977300c81291aaa77be4fd9f2e27cfa37";
+    sha256 = "1zfcl3dq9ladqg7fnpx6kgxf1ckjzlc8v3j6wa8w6iwglm40ax4r";
   };
 
   propagatedBuildInputs = [
     jupyterhub
   ];
 
-  pytestFlagsArray = [ "oauthenticator/tests" ];
-
   checkInputs = [
     google-api-python-client
     google-auth-oauthlib
@@ -38,6 +36,20 @@ buildPythonPackage rec {
     requests-mock
   ];
 
+  postPatch = ''
+  # The constraint was removed. No longer needed for > 14.0.0
+  # https://github.com/jupyterhub/oauthenticator/pull/431
+    substituteInPlace test-requirements.txt --replace "pyjwt>=1.7,<2.0" "pyjwt"
+  '';
+
+  disabledTests = [
+    # Test are outdated, https://github.com/jupyterhub/oauthenticator/issues/432
+    "test_azuread"
+    "test_mediawiki"
+  ];
+
+  pythonImportsCheck = [ "oauthenticator" ];
+
   meta = with lib; {
     description = "Authenticate JupyterHub users with common OAuth providers, including GitHub, Bitbucket, and more.";
     homepage =  "https://github.com/jupyterhub/oauthenticator";
diff --git a/pkgs/development/python-modules/openrazer/common.nix b/pkgs/development/python-modules/openrazer/common.nix
index 35655b207a59a..985d4e199e182 100644
--- a/pkgs/development/python-modules/openrazer/common.nix
+++ b/pkgs/development/python-modules/openrazer/common.nix
@@ -1,16 +1,16 @@
 { lib
 , fetchFromGitHub
 }: rec {
-  version = "3.0.0";
+  version = "3.0.1";
   src = fetchFromGitHub {
     owner = "openrazer";
     repo = "openrazer";
     rev = "v${version}";
-    sha256 = "sha256-gw6Qt9BntPcF3zw19PXftDbhoCeBr8hwrujy51rb5Fc=";
+    sha256 = "sha256-ptB0jP0kp1Liynkfz0B0OMw6xNQG1s8IvxhgNAdEytM=";
   };
   meta = with lib; {
     homepage = "https://openrazer.github.io/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ roelvandijk evanjs ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/development/python-modules/peewee/default.nix b/pkgs/development/python-modules/peewee/default.nix
index 6f5d8e2622797..fd057d24d31e5 100644
--- a/pkgs/development/python-modules/peewee/default.nix
+++ b/pkgs/development/python-modules/peewee/default.nix
@@ -12,14 +12,14 @@
 buildPythonPackage rec {
 
   pname = "peewee";
-  version = "3.13.3";
+  version = "3.14.4";
 
   # pypi release does not provide tests
   src = fetchFromGitHub {
     owner = "coleifer";
     repo = pname;
     rev = version;
-    sha256 = "1r67hxb9m6v0xbnbqfnsw6dahmdr94pf81b4x51jfw6x9sa4izi4";
+    sha256 = "0x85swpaffysc05kka0mab87cnilzw1lpacfhcx5ayabh0i2qsh6";
   };
 
 
diff --git a/pkgs/development/python-modules/pika/default.nix b/pkgs/development/python-modules/pika/default.nix
index ef32507321648..0851f5c71ef74 100644
--- a/pkgs/development/python-modules/pika/default.nix
+++ b/pkgs/development/python-modules/pika/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, gevent
 , nose
 , mock
 , twisted
@@ -16,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "f023d6ac581086b124190cb3dc81dd581a149d216fa4540ac34f9be1e3970b89";
   };
 
-  checkInputs = [ nose mock twisted tornado ];
+  checkInputs = [ nose mock twisted tornado gevent ];
 
   meta = with lib; {
     description = "Pure-Python implementation of the AMQP 0-9-1 protocol";
diff --git a/pkgs/development/python-modules/pillow-simd/default.nix b/pkgs/development/python-modules/pillow-simd/default.nix
index 3aed634dfb1a1..d7b2ff8d6b366 100644
--- a/pkgs/development/python-modules/pillow-simd/default.nix
+++ b/pkgs/development/python-modules/pillow-simd/default.nix
@@ -1,19 +1,20 @@
 { lib, stdenv, buildPythonPackage, fetchFromGitHub, isPyPy, isPy3k
 , olefile, freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2
-, tk, libX11, openjpeg, libimagequant, pyroma, numpy, pytestCheckHook
+, libxcb, tk, libX11, openjpeg, libimagequant, pyroma, numpy
+, pytestCheckHook
 }@args:
 
 import ../pillow/generic.nix (rec {
   pname = "Pillow-SIMD";
-  version = "7.0.0.post3";
+  version = "8.1.2";
 
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "uploadcare";
     repo = "pillow-simd";
-    rev = "v${version}";
-    sha256 = "1h832xp1bzf951hr4dmjmxqfsv28sx9lr2cq96qdz1c72k40zj1h";
+    rev = version;
+    sha256 = "1z0c1qpx7l1bhj71ww7za7kl29j5wdraqr2pdhv4dp1q74kgrr0m";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/plexapi/default.nix b/pkgs/development/python-modules/plexapi/default.nix
index 52c371154111d..dc832809c28f9 100644
--- a/pkgs/development/python-modules/plexapi/default.nix
+++ b/pkgs/development/python-modules/plexapi/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "PlexAPI";
-  version = "4.5.1";
+  version = "4.5.2";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "pkkid";
     repo = "python-plexapi";
     rev = version;
-    sha256 = "sha256-WrjIN6+7ybprnjCv57BdKaQYoQ+HgGVr/XytXcbAmwg=";
+    sha256 = "sha256-9rdpisEuLUO7oO7+7SQb4fXqRG30rf4R7bSFY+QpMhM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pomegranate/default.nix b/pkgs/development/python-modules/pomegranate/default.nix
index 8f260ad8ccb9c..518840d415a92 100644
--- a/pkgs/development/python-modules/pomegranate/default.nix
+++ b/pkgs/development/python-modules/pomegranate/default.nix
@@ -1,19 +1,41 @@
-{ lib, buildPythonPackage, fetchFromGitHub, numpy, scipy, cython, networkx, joblib, nose, pyyaml }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, numpy
+, scipy
+, cython
+, networkx
+, joblib
+, pandas
+, nose
+, pyyaml
+}:
+
 
 buildPythonPackage rec {
   pname = "pomegranate";
-  version = "0.11.2";
+  version = "0.13.5";
 
   src = fetchFromGitHub {
     repo = pname;
     owner = "jmschrei";
     rev = "v${version}";
-    sha256 = "070ciwww1lhjmfwd5n1kcwgxwbgdfvmhjs4l156bnf08z9dlrafl";
+    sha256 = "1hbxchp3daykkf1fa79a9mh34p78bygqcf1nv4qwkql3gw0pd6l7";
   };
 
+  patches = lib.optionals (lib.versionOlder version "13.6") [
+    # Fix compatibility with recent joblib release, will be part of the next
+    # pomegranate release after 0.13.5
+    (fetchpatch {
+      url = "https://github.com/jmschrei/pomegranate/commit/42d14bebc44ffd4a778b2a6430aa845591b7c3b7.patch";
+      sha256 = "0f9cx0fj9xkr3hch7jyrn76zjypilh5bqw734caaw6g2m49lvbff";
+    })
+  ];
+
   propagatedBuildInputs = [ numpy scipy cython networkx joblib pyyaml ];
 
-  checkInputs = [ nose ];
+  checkInputs = [ pandas nose ];  # as of 0.13.5, it depends explicitly on nose, rather than pytest.
 
   meta = with lib; {
     description = "Probabilistic and graphical models for Python, implemented in cython for speed";
diff --git a/pkgs/development/python-modules/privacyidea/default.nix b/pkgs/development/python-modules/privacyidea/default.nix
index c28a00901682d..11ff6f71af632 100644
--- a/pkgs/development/python-modules/privacyidea/default.nix
+++ b/pkgs/development/python-modules/privacyidea/default.nix
@@ -1,10 +1,10 @@
 { lib, buildPythonPackage, fetchFromGitHub, cacert, openssl, python, nixosTests
 
 , cryptography, pyrad, pymysql, python-dateutil, flask-versioned, flask_script
-, defusedxml, croniter, flask_migrate, pyjwt, configobj, sqlsoup, pillow
+, defusedxml, croniter, flask_migrate, pyjwt1, configobj, sqlsoup, pillow
 , python-gnupg, passlib, pyopenssl, beautifulsoup4, smpplib, flask-babel
 , ldap3, huey, pyyaml, qrcode, oauth2client, requests, lxml, cbor2, psycopg2
-, pydash
+, pydash, ecdsa
 
 , mock, pytestCheckHook, responses, testfixtures
 }:
@@ -29,10 +29,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     cryptography pyrad pymysql python-dateutil flask-versioned flask_script
-    defusedxml croniter flask_migrate pyjwt configobj sqlsoup pillow
+    defusedxml croniter flask_migrate pyjwt1 configobj sqlsoup pillow
     python-gnupg passlib pyopenssl beautifulsoup4 smpplib flask-babel
     ldap3 huey pyyaml qrcode oauth2client requests lxml cbor2 psycopg2
-    pydash
+    pydash ecdsa
   ];
 
   passthru.tests = { inherit (nixosTests) privacyidea; };
diff --git a/pkgs/development/python-modules/pulsectl/default.nix b/pkgs/development/python-modules/pulsectl/default.nix
index 6b05f383ec6f0..378e37ec69df6 100644
--- a/pkgs/development/python-modules/pulsectl/default.nix
+++ b/pkgs/development/python-modules/pulsectl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pulsectl";
-  version = "21.3.4";
+  version = "21.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-+qi5M2I3VlmQKY8ghw4T3RZ4pFhoR8paf/Kr8QdS81Y=";
+    sha256 = "11dw8hij1vzqawlv5l1ax6i2zw6p4ccn4ww3v6q1kdmrwk46vi7r";
   };
 
   patches = [
@@ -17,7 +17,12 @@ buildPythonPackage rec {
     })
   ];
 
+  pythonImportsCheck = [
+    "pulsectl"
+  ];
+
   checkInputs = [ pulseaudio ];
+
   checkPhase = ''
     ${python.interpreter} -m unittest pulsectl.tests.all
   '';
diff --git a/pkgs/development/python-modules/pyaftership/default.nix b/pkgs/development/python-modules/pyaftership/default.nix
index e65812cb3133e..6253d95111835 100644
--- a/pkgs/development/python-modules/pyaftership/default.nix
+++ b/pkgs/development/python-modules/pyaftership/default.nix
@@ -1,4 +1,13 @@
-{ aiohttp, async-timeout, buildPythonPackage, fetchPypi, isPy3k, lib }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, isPy3k
+, aiohttp
+, async-timeout
+, aresponses
+, pytest-asyncio
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "pyaftership";
@@ -6,16 +15,17 @@ buildPythonPackage rec {
 
   disabled = !isPy3k;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "28b62c323d06492399b60d8135a58d6feaa1d60837eddc14e57ea2b69d356c0a";
+  src = fetchFromGitHub {
+    owner = "ludeeus";
+    repo = pname;
+    rev = version;
+    sha256 = "0jyzgwaijkp80whi58a0hgjzmnlczmd9vwn11z2m0j01kbdwznn5";
   };
 
   propagatedBuildInputs = [ aiohttp async-timeout ];
 
-  # No tests
-  doCheck = false;
-  pythonImportsCheck = [ "pyaftership.tracker" ];
+  checkInputs = [ pytestCheckHook aresponses pytest-asyncio ];
+  pythonImportsCheck = [ "pyaftership" ];
 
   meta = with lib; {
     description = "Python wrapper package for the AfterShip API";
diff --git a/pkgs/development/python-modules/pychannels/default.nix b/pkgs/development/python-modules/pychannels/default.nix
index 0c5e290334da1..8923e5c9c69e2 100644
--- a/pkgs/development/python-modules/pychannels/default.nix
+++ b/pkgs/development/python-modules/pychannels/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "pychannels";
-  version = "1.2.2";
+  version = "1.2.3";
 
   src = fetchFromGitHub {
     owner = "fancybits";
     repo = pname;
     rev = version;
-    sha256 = "0dqc0vhf6c5r3g7nfbpa668x6z2zxrznk6h907s6sxkq4sbqnhqf";
+    sha256 = "sha256-E+VL4mJ2KxS5bJZc3Va+wvyVjT55LJz+1wHkxDRa85s=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/pyexcel-xls/default.nix b/pkgs/development/python-modules/pyexcel-xls/default.nix
index 7e09a21e3627b..29d6df409a603 100644
--- a/pkgs/development/python-modules/pyexcel-xls/default.nix
+++ b/pkgs/development/python-modules/pyexcel-xls/default.nix
@@ -30,7 +30,11 @@ buildPythonPackage rec {
     mock
   ];
 
-  checkPhase = "nosetests";
+  postPatch = ''
+    substituteInPlace setup.py --replace "xlrd<2" "xlrd<3"
+  '';
+
+  checkPhase = "nosetests --exclude test_issue_151";
 
   meta = {
     description = "A wrapper library to read, manipulate and write data in xls using xlrd and xlwt";
diff --git a/pkgs/development/python-modules/pyflume/default.nix b/pkgs/development/python-modules/pyflume/default.nix
index 36980ddbadfea..7c80aab59cda9 100644
--- a/pkgs/development/python-modules/pyflume/default.nix
+++ b/pkgs/development/python-modules/pyflume/default.nix
@@ -22,6 +22,13 @@ buildPythonPackage rec {
     sha256 = "1dm560hh6fl1waiwsq8m31apmvvwhc3y95bfdb7449bs8k96dmxq";
   };
 
+  prePatch = ''
+    substituteInPlace setup.py --replace 'pyjwt==2.0.1' 'pyjwt>=2.0.1'
+    substituteInPlace setup.py --replace 'ratelimit==2.2.1' 'ratelimit>=2.2.1'
+    substituteInPlace setup.py --replace 'pytz==2019.2' 'pytz>=2019.2'
+    substituteInPlace setup.py --replace 'requests==2.24.0' 'requests>=2.24.0'
+  '';
+
   propagatedBuildInputs = [
     pyjwt
     ratelimit
@@ -34,6 +41,15 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  postPatch = ''
+    # https://github.com/ChrisMandich/PyFlume/issues/18
+    substituteInPlace setup.py \
+      --replace "pyjwt==2.0.1" "pyjwt>=2.0.1" \
+      --replace "ratelimit==2.2.1" "ratelimit>=2.2.1" \
+      --replace "pytz==2019.2" "pytz>=2019.2" \
+      --replace "requests==2.24.0" "requests>=2.24.0"
+  '';
+
   pythonImportsCheck = [ "pyflume" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pygmt/default.nix b/pkgs/development/python-modules/pygmt/default.nix
index 130be6d44c369..804b33c2f7914 100644
--- a/pkgs/development/python-modules/pygmt/default.nix
+++ b/pkgs/development/python-modules/pygmt/default.nix
@@ -2,12 +2,17 @@
 , pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
+, setuptools-scm
 , gmt
 , numpy
 , netcdf4
 , pandas
 , packaging
 , xarray
+, pytest-mpl
+, ipython
+, ghostscript
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -28,12 +33,14 @@ buildPythonPackage rec {
       --replace "env.get(\"GMT_LIBRARY_PATH\", \"\")" "env.get(\"GMT_LIBRARY_PATH\", \"${gmt}/lib\")"
   '';
 
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ numpy netcdf4 pandas packaging xarray ];
 
-  doCheck = false; # requires network access
-
-  postBuild = "export HOME=$TMP";
-
+  doCheck = false; # the *entire* test suite requires network access
+  checkInputs = [ pytestCheckHook pytest-mpl ghostscript ipython ];
+  postBuild = ''
+    export HOME=$TMP
+  '';
   pythonImportsCheck = [ "pygmt" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pyialarm/default.nix b/pkgs/development/python-modules/pyialarm/default.nix
new file mode 100644
index 0000000000000..6a35445fca168
--- /dev/null
+++ b/pkgs/development/python-modules/pyialarm/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, dicttoxml
+, fetchFromGitHub
+, pythonOlder
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "pyialarm";
+  version = "1.5";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "RyuzakiKK";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0vpscc2h13mmwscvjpm0bfd80x94mzh4d204v6n421mdz3ddhjqp";
+  };
+
+  propagatedBuildInputs = [
+    dicttoxml
+    xmltodict
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pyialarm" ];
+
+  meta = with lib; {
+    description = "Python library to interface with Antifurto365 iAlarm systems";
+    homepage = "https://github.com/RyuzakiKK/pyialarm";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyjwt/default.nix b/pkgs/development/python-modules/pyjwt/default.nix
index c33f2b068087a..4617869988f65 100644
--- a/pkgs/development/python-modules/pyjwt/default.nix
+++ b/pkgs/development/python-modules/pyjwt/default.nix
@@ -1,28 +1,35 @@
-{ lib, buildPythonPackage, fetchPypi
-, cryptography, ecdsa
-, pytestrunner, pytestcov, pytest }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cryptography
+, ecdsa
+, pytest-cov
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
-  pname = "PyJWT";
-  version = "2.0.1";
+  pname = "pyjwt";
+  version = "2.1.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "a5c70a06e1f33d81ef25eecd50d50bd30e34de1ca8b2b9fa3fe0daaabcf69bf7";
+    pname = "PyJWT";
+    inherit version;
+    sha256 = "sha256-+6ROeJi7yhYKKytQH0koJPyDgkhdOm8Rul0MGTfOYTA=";
   };
 
-  propagatedBuildInputs = [ cryptography ecdsa ];
+  propagatedBuildInputs = [
+    cryptography
+    ecdsa
+  ];
 
-  checkInputs = [ pytestrunner pytestcov pytest ];
+  checkInputs = [
+    pytest-cov
+    pytestCheckHook
+  ];
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "pytest>=4.0.1,<5.0.0" "pytest"
-  '';
-
-  # ecdsa changed internal behavior
-  checkPhase = ''
-    pytest tests -k 'not ec_verify_should_return_false_if_signature_invalid'
-  '';
+  pythonImportsCheck = [ "jwt" ];
 
   meta = with lib; {
     description = "JSON Web Token implementation in Python";
diff --git a/pkgs/development/python-modules/pykerberos/default.nix b/pkgs/development/python-modules/pykerberos/default.nix
index 13d7a4fd24831..fd4c0088b08c1 100644
--- a/pkgs/development/python-modules/pykerberos/default.nix
+++ b/pkgs/development/python-modules/pykerberos/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pykerberos";
-  version = "1.2.1";
+  version = "1.2.3.dev0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0v47p840myqgc7hr4lir72xshcfpa0w8j9n077h3njpqyn6wlbag";
+    sha256 = "17zjiw6rqgfic32px86qls1i3z7anp15dgb3sprbdvywy98alryn";
   };
 
   nativeBuildInputs = [ krb5 ]; # for krb5-config
@@ -15,6 +15,7 @@ buildPythonPackage rec {
 
   # there are no tests
   doCheck = false;
+  pythonImportsCheck = [ "kerberos" ];
 
   meta = with lib; {
     description = "High-level interface to Kerberos";
diff --git a/pkgs/development/python-modules/pylast/default.nix b/pkgs/development/python-modules/pylast/default.nix
index b16ea62717a52..5a0a53005bb16 100644
--- a/pkgs/development/python-modules/pylast/default.nix
+++ b/pkgs/development/python-modules/pylast/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "pylast";
-  version = "4.2.0";
+  version = "4.2.1";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-w/mkAUUgj7L7Xv+nz1pI1TYKfihH3S3MbxaNQ4VtoH0=";
+    sha256 = "sha256-R1enQk6luuBiobMPDn5x1SXx7zUI/5c8dPtyWkmG/18=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/pkgs/development/python-modules/pylint-django/default.nix b/pkgs/development/python-modules/pylint-django/default.nix
index 54b2f65ad975c..9d8b36c5ef815 100644
--- a/pkgs/development/python-modules/pylint-django/default.nix
+++ b/pkgs/development/python-modules/pylint-django/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "pylint-django";
-  version = "2.4.2";
+  version = "2.4.3";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "PyCQA";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0535y4sdi521a9s7di8ld0i8aav0afbxmx0956v6sjpyqmqdm6hr";
+    sha256 = "1mybq9jynypxbaxj921s3sx8dph8n3hmipmv4nla1g9h07g9g02z";
   };
 
   propagatedBuildInputs = [
@@ -42,9 +42,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A Pylint plugin to analyze Django applications";
     homepage = "https://github.com/PyCQA/pylint-django";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [
-      kamadorueda
-    ];
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ kamadorueda ];
   };
 }
diff --git a/pkgs/development/python-modules/pysvg-py3/default.nix b/pkgs/development/python-modules/pysvg-py3/default.nix
new file mode 100644
index 0000000000000..6f9ba796132e9
--- /dev/null
+++ b/pkgs/development/python-modules/pysvg-py3/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "pysvg-py3";
+  version = "0.2.2-post3";
+
+  src = fetchFromGitHub {
+    owner = "alorence";
+    repo = pname;
+    rev = version;
+    sha256 = "1slync0knpcjgl4xpym8w4249iy6vmrwbarpnbjzn9xca8g1h2f0";
+  };
+
+  checkPhase = ''
+    runHook preCheck
+    mkdir testoutput
+    ${python.interpreter} sample/tutorial.py
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [ "pysvg" ];
+
+  meta = {
+    homepage = "https://github.com/alorence/pysvg-py3";
+    description = "Creating SVG with Python";
+    license = lib.licenses.bsd2;
+    maintainers = with lib.maintainers; [ davidak ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-ordering/default.nix b/pkgs/development/python-modules/pytest-ordering/default.nix
index 6cd1ed227976f..c5e8a786b5eff 100644
--- a/pkgs/development/python-modules/pytest-ordering/default.nix
+++ b/pkgs/development/python-modules/pytest-ordering/default.nix
@@ -26,6 +26,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/ftobia/pytest-ordering";
     description = "Pytest plugin to run your tests in a specific order";
     license = licenses.mit;
+    broken = true;  # See https://github.com/NixOS/nixpkgs/pull/122264
     maintainers = with maintainers; [ eadwu ];
   };
 }
diff --git a/pkgs/development/python-modules/pytest-regressions/default.nix b/pkgs/development/python-modules/pytest-regressions/default.nix
new file mode 100644
index 0000000000000..90b72c886eac7
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-regressions/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+, pythonOlder
+, matplotlib
+, numpy
+, pandas
+, pillow
+, pytest
+, pytest-datadir
+, pytestCheckHook
+, pyyaml
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-regressions";
+  version = "2.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "15a71f77cb266dd4ca94331abe4c339ad056b2b2175e47442711c98cf6d65716";
+  };
+
+  patches = [
+    # Make pytest-regressions compatible with NumPy 1.20.
+    # Should be part of the next release.
+    (fetchpatch {
+      url = "https://github.com/ESSS/pytest-regressions/commit/ffad2c7fd1d110f420f4e3ca3d39d90cae18a972.patch";
+      sha256 = "sha256-bUna7MnMV6u9oEaZMsFnr4gE28rz/c0O2+Hyk291+l0=";
+    })
+  ];
+
+  nativeBuildInputs = [ setuptools-scm ];
+  buildInputs = [ pytest ];
+  propagatedBuildInputs = [ numpy pandas pillow pytest-datadir pyyaml ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  checkInputs = [ pytestCheckHook matplotlib ];
+  pythonImportsCheck = [ "pytest_regressions" "pytest_regressions.plugin" ];
+
+  meta = with lib; {
+    description = "Pytest fixtures to write regression tests";
+    longDescription = ''
+      pytest-regressions makes it simple to test general data, images,
+      files, and numeric tables by saving expected data in a data
+      directory (courtesy of pytest-datadir) that can be used to verify
+      that future runs produce the same data.
+    '';
+    homepage = "https://github.com/ESSS/pytest-regressions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-binance/default.nix b/pkgs/development/python-modules/python-binance/default.nix
index aea47c7b9e726..a750f02505ac5 100644
--- a/pkgs/development/python-modules/python-binance/default.nix
+++ b/pkgs/development/python-modules/python-binance/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi
 , pytest, requests-mock, tox
-, autobahn, certifi, chardet, cryptography, dateparser, pyopenssl, requests, service-identity, twisted }:
+, autobahn, certifi, chardet, cryptography, dateparser, pyopenssl, requests, service-identity, twisted, ujson }:
 
 buildPythonPackage rec {
   version = "0.7.9";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
   doCheck = false;  # Tries to test multiple interpreters with tox
   checkInputs = [ pytest requests-mock tox ];
 
-  propagatedBuildInputs = [ autobahn certifi chardet cryptography dateparser pyopenssl requests service-identity twisted ];
+  propagatedBuildInputs = [ autobahn certifi chardet cryptography dateparser pyopenssl requests service-identity twisted ujson ];
 
   meta = {
     description = "Binance Exchange API python implementation for automated trading";
diff --git a/pkgs/development/python-modules/python-miio/default.nix b/pkgs/development/python-modules/python-miio/default.nix
index 1d9025a035f2f..2374c6797f2e5 100644
--- a/pkgs/development/python-modules/python-miio/default.nix
+++ b/pkgs/development/python-modules/python-miio/default.nix
@@ -24,20 +24,19 @@
 
 buildPythonPackage rec {
   pname = "python-miio";
-  version = "0.5.5.2";
+  version = "0.5.6";
   disabled = pythonOlder "3.6";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-lk7egCyj+vSsaXmxuWxlQuom8n3JEs/RIWwCuwTOXeI=";
+    sha256 = "sha256-tmGt50xBDV++/pqyXsuxHdrwv+XbkjvtrzsYBzQh7zE=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace 'croniter = "^0"' 'croniter = "*"' \
-      --replace 'defusedxml = "^0.6"' 'defusedxml = "*"' \
-      --replace 'zeroconf = "^0.28"' 'zeroconf = "*"'
+      --replace 'defusedxml = "^0.6"' 'defusedxml = "*"'
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/python-socks/default.nix b/pkgs/development/python-modules/python-socks/default.nix
new file mode 100644
index 0000000000000..dcf2688082754
--- /dev/null
+++ b/pkgs/development/python-modules/python-socks/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, trio, curio, async-timeout, fetchPypi, pythonOlder }:
+
+buildPythonPackage rec {
+  pname = "python-socks";
+  version = "1.2.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx";
+  };
+
+  disabled = pythonOlder "3.6.1";
+
+  propagatedBuildInputs = [ trio curio async-timeout ];
+
+  meta = with lib; {
+    description = "Core proxy client (SOCKS4, SOCKS5, HTTP) functionality for Python";
+    homepage = "https://github.com/romis2012/python-socks";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mjlbach ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-vlc/default.nix b/pkgs/development/python-modules/python-vlc/default.nix
index 6f83f587f5880..2690f8ea7ebe5 100644
--- a/pkgs/development/python-modules/python-vlc/default.nix
+++ b/pkgs/development/python-modules/python-vlc/default.nix
@@ -8,30 +8,33 @@
 
 buildPythonPackage rec {
   pname = "python-vlc";
-  version = "3.0.11115";
+  version = "3.0.12118";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a4d3bdddfce84a8fb1b2d5447193a0239c55c16ca246e5194d48efd59c4e236b";
+    hash = "sha256-Vm8vfDA/aACFHKzAFt8cbu7AlK1j4KSdh9udaYCU8fs=";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
-
   patches = [
+    # Patch path for VLC
     (substituteAll {
       src = ./vlc-paths.patch;
       libvlcPath="${libvlc}/lib/libvlc.so.5";
     })
   ];
 
+  propagatedBuildInputs = [
+    setuptools
+  ];
+
   doCheck = false; # no tests
 
+  pythonImportsCheck = [ "vlc" ];
+
   meta = with lib; {
-    homepage = "https://wiki.videolan.org/PythonBinding";
-    maintainers = with maintainers; [ tbenst ];
     description = "Python bindings for VLC, the cross-platform multimedia player and framework";
+    homepage = "https://wiki.videolan.org/PythonBinding";
     license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ tbenst ];
   };
 }
diff --git a/pkgs/development/python-modules/roombapy/default.nix b/pkgs/development/python-modules/roombapy/default.nix
index 9c438bde75622..459037d6191e9 100644
--- a/pkgs/development/python-modules/roombapy/default.nix
+++ b/pkgs/development/python-modules/roombapy/default.nix
@@ -1,31 +1,42 @@
-{ buildPythonPackage
+{ lib
+, amqtt
+, buildPythonPackage
 , fetchFromGitHub
-, hbmqtt
-, lib
 , paho-mqtt
-, poetry
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "roombapy";
-  version = "1.6.2-1";
+  version = "1.6.3";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "pschmitt";
     repo = "roombapy";
     rev = version;
-    sha256 = "14k7bys479xwpa4alpdwphzmxm3x8kc48nfqnshn1wj94vyxc425";
+    sha256 = "sha256-GkDfIC2jx4Mpguk/Wu45pZw0czhabJwTz58WYSLCOV8=";
   };
 
-  format = "pyproject";
+  nativeBuildInputs = [ poetry-core ];
 
-  nativeBuildInputs = [ poetry ];
   propagatedBuildInputs = [ paho-mqtt ];
 
-  checkInputs = [ hbmqtt pytest-asyncio pytestCheckHook ];
-  pytestFlagsArray = [ "tests/" "--ignore=tests/test_discovery.py" ];
+  checkInputs = [
+    amqtt
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Requires network access
+    "tests/test_discovery.py"
+  ];
+
   pythonImportsCheck = [ "roombapy" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/selenium/default.nix b/pkgs/development/python-modules/selenium/default.nix
index 664f84933ed79..370d254898098 100644
--- a/pkgs/development/python-modules/selenium/default.nix
+++ b/pkgs/development/python-modules/selenium/default.nix
@@ -6,6 +6,7 @@
 , geckodriver
 , urllib3
 , xorg
+, nixosTests
 }:
 
 
@@ -47,6 +48,10 @@ buildPythonPackage rec {
     cp -v x_ignore_nofocus.so selenium/webdriver/firefox/${if stdenv.is64bit then "amd64" else "x86"}/
   '';
 
+  passthru.tests = {
+    testing-bitwarden = nixosTests.bitwarden;
+  };
+
   meta = with lib; {
     description = "The selenium package is used to automate web browser interaction from Python";
     homepage = "http://www.seleniumhq.org";
diff --git a/pkgs/development/python-modules/slixmpp/default.nix b/pkgs/development/python-modules/slixmpp/default.nix
index f648905251e23..f28708bdf03b9 100644
--- a/pkgs/development/python-modules/slixmpp/default.nix
+++ b/pkgs/development/python-modules/slixmpp/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "slixmpp";
-  version = "1.7.0";
+  version = "1.7.1";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-fy7sRKS7ih4JmjOW/noL8qJ1xWVpQLbBbObHnMwT3Bc=";
+    sha256 = "sha256-mvg23FdHJZeIZRcm8GLWmm9DDTBt29jmsUHB/smVSec=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/snowflake-connector-python/default.nix b/pkgs/development/python-modules/snowflake-connector-python/default.nix
index fdf984563ea0f..237f36e201b6f 100644
--- a/pkgs/development/python-modules/snowflake-connector-python/default.nix
+++ b/pkgs/development/python-modules/snowflake-connector-python/default.nix
@@ -1,5 +1,6 @@
-{ buildPythonPackage
-, isPy27
+{ lib
+, buildPythonPackage
+, pythonOlder
 , asn1crypto
 , azure-storage-blob
 , boto3
@@ -10,7 +11,6 @@
 , idna
 , ijson
 , isPy3k
-, lib
 , oscrypto
 , pyarrow
 , pyasn1-modules
@@ -25,20 +25,14 @@
 
 buildPythonPackage rec {
   pname = "snowflake-connector-python";
-  version = "2.4.1";
-  disabled = isPy27;
+  version = "2.4.3";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5c9180e61202a7beb1df83231688423091ca0a04ee559d2a78ff77f9c727baae";
+    sha256 = "sha256-+jAfUwaofWM5Ef1kk4AEAbBM/UES8/ZzLd4QJfkEQsM=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "'pyOpenSSL>=16.2.0,<20.0.0'," "'pyOpenSSL'," \
-      --replace 'pytz<2021.0' 'pytz'
-  '';
-
   propagatedBuildInputs = [
     azure-storage-blob
     asn1crypto
@@ -55,16 +49,26 @@ buildPythonPackage rec {
     pytz
     requests
     six
-  ] ++ lib.optionals (!isPy3k) [
     pyarrow
     pyasn1-modules
     urllib3
   ];
 
-  # tests require encrypted secrets, see
+  postPatch = ''
+    # https://github.com/snowflakedb/snowflake-connector-python/issues/705
+    substituteInPlace setup.py \
+      --replace "idna>=2.5,<3" "idna" \
+      --replace "chardet>=3.0.2,<4" "chardet"
+  '';
+
+  # Tests require encrypted secrets, see
   # https://github.com/snowflakedb/snowflake-connector-python/tree/master/.github/workflows/parameters
   doCheck = false;
-  pythonImportsCheck = [ "snowflake" "snowflake.connector" ];
+
+  pythonImportsCheck = [
+    "snowflake"
+    "snowflake.connector"
+  ];
 
   meta = with lib; {
     description = "Snowflake Connector for Python";
diff --git a/pkgs/development/python-modules/sslyze/default.nix b/pkgs/development/python-modules/sslyze/default.nix
index 991f85c900ecc..5680b4bd36b34 100644
--- a/pkgs/development/python-modules/sslyze/default.nix
+++ b/pkgs/development/python-modules/sslyze/default.nix
@@ -6,39 +6,44 @@
 , typing-extensions
 , faker
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "sslyze";
-  version = "3.1.0";
+  version = "4.1.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    sha256 = "02p0lgpkfq88dys0dqw0z8bpg9g8pds2lvs9awd9f2w5cb1pwr83";
+    hash = "sha256-oSTKNiECczlPAbv5Azc023PcquFbnlC5O+8tVgNcUW0=";
   };
 
   patchPhase = ''
     substituteInPlace setup.py \
-      --replace "cryptography>=2.6,<3.3" "cryptography>=2.6,<4.0"
+      --replace "cryptography>=2.6,<3.5" "cryptography>=2.6,<4.0"
   '';
 
   checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    # Most of the tests are online; hence, applicable tests are listed
-    # explicitly here
-    pytest \
-      tests/test_main.py \
-      tests/test_scanner.py \
-      tests/cli_tests/test_console_output.py \
-      tests/cli_tests/test_json_output.py \
-      tests/cli_tests/test_server_string_parser.py \
-      tests/plugins_tests/test_scan_commands.py \
-      tests/plugins_tests/certificate_info/test_certificate_utils.py \
-      -k "not (TestScanner and test_client_certificate_missing)"
-  '';
+  # Most of the tests are online; hence, applicable tests are listed
+  # explicitly here
+  pytestFlagsArray = [
+    "tests/test_main.py"
+    "tests/test_scanner.py"
+    "tests/cli_tests/test_console_output.py"
+    "tests/cli_tests/test_json_output.py"
+    "tests/cli_tests/test_server_string_parser.py"
+    "tests/plugins_tests/test_scan_commands.py"
+    "tests/plugins_tests/certificate_info/test_certificate_utils.py"
+  ];
+
+  disabledTests = [
+    "test_error_client_certificate_needed"
+  ];
+
   pythonImportsCheck = [ "sslyze" ];
 
   propagatedBuildInputs = [ nassl cryptography typing-extensions faker ];
@@ -47,7 +52,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/nabla-c0d3/sslyze";
     description = "Fast and powerful SSL/TLS scanning library";
     platforms = platforms.linux ++ platforms.darwin;
-    license = licenses.agpl3;
+    license = licenses.agpl3Only;
     maintainers = with maintainers; [ veehaitch ];
   };
 }
diff --git a/pkgs/development/python-modules/tld/default.nix b/pkgs/development/python-modules/tld/default.nix
index 13f23edaad152..ed601a2620c8e 100644
--- a/pkgs/development/python-modules/tld/default.nix
+++ b/pkgs/development/python-modules/tld/default.nix
@@ -26,6 +26,12 @@ buildPythonPackage rec {
     tox
   ];
 
+  # these tests require network access, but disabledTestPaths doesn't work.
+  # the file needs to be `import`ed by another python test file, so it
+  # can't simply be removed.
+  preCheck = ''
+    echo > src/tld/tests/test_commands.py
+  '';
   pythonImportsCheck = [ "tld" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/tls-parser/default.nix b/pkgs/development/python-modules/tls-parser/default.nix
index 5b6bfe6a0e28f..ad35fe501282d 100644
--- a/pkgs/development/python-modules/tls-parser/default.nix
+++ b/pkgs/development/python-modules/tls-parser/default.nix
@@ -1,5 +1,5 @@
 { lib
-, isPy27
+, pythonOlder
 , fetchFromGitHub
 , buildPythonPackage
 , pytestCheckHook
@@ -8,7 +8,7 @@
 buildPythonPackage rec {
   pname = "tls-parser";
   version = "1.2.2";
-  disabled = isPy27;
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
@@ -19,6 +19,8 @@ buildPythonPackage rec {
 
   checkInputs = [ pytestCheckHook ];
 
+  pythonImportsCheck = [ "tls_parser" ];
+
   meta = with lib; {
     homepage = "https://github.com/nabla-c0d3/tls_parser";
     description = "Small library to parse TLS records";
diff --git a/pkgs/development/python-modules/uc-micro-py/default.nix b/pkgs/development/python-modules/uc-micro-py/default.nix
new file mode 100644
index 0000000000000..9b20e2251165c
--- /dev/null
+++ b/pkgs/development/python-modules/uc-micro-py/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "uc-micro-py";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "tsutsu3";
+    repo = "uc.micro-py";
+    rev = "v${version}";
+    hash = "sha256-23mKwoRGjtxpCOC26V8bAN5QEHLDOoSqPeTlUuIrxZ0=";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "uc_micro" ];
+
+  meta = with lib; {
+    description = "Micro subset of unicode data files for linkify-it-py";
+    homepage = "https://github.com/tsutsu3/uc.micro-py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/pkgs/development/python-modules/unpaddedbase64/default.nix b/pkgs/development/python-modules/unpaddedbase64/default.nix
index 96b27127cc608..b5ff5be20616b 100644
--- a/pkgs/development/python-modules/unpaddedbase64/default.nix
+++ b/pkgs/development/python-modules/unpaddedbase64/default.nix
@@ -1,19 +1,25 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, poetry-core
 }:
 
 buildPythonPackage rec {
   pname = "unpaddedbase64";
-  version = "1.1.0";
+  version = "2.1.0";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "python-${pname}";
     rev = "refs/tags/v${version}";
-    sha256 = "0if3fjfxga0bwdq47v77fs9hrcqpmwdxry2i2a7pdqsp95258nxd";
+    sha256 = "1n6har8pxv0mqb96lanzihp1xf76aa17jw3977drb1fgz947pnmz";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   meta = with lib; {
     homepage = "https://github.com/matrix-org/python-unpaddedbase64";
     description = "Unpadded Base64";
diff --git a/pkgs/development/python-modules/uvloop/default.nix b/pkgs/development/python-modules/uvloop/default.nix
index 3ba9dcb5f1445..125850a080f39 100644
--- a/pkgs/development/python-modules/uvloop/default.nix
+++ b/pkgs/development/python-modules/uvloop/default.nix
@@ -44,8 +44,15 @@ buildPythonPackage rec {
     "--assert=plain"
     "--strict"
     "--tb=native"
+  ] ++ lib.optionals (stdenv.isAarch64) [
+    # test gets stuck in epoll_pwait on hydras aarch64 builders
+    # https://github.com/MagicStack/uvloop/issues/412
+    "--deselect" "tests/test_tcp.py::Test_AIO_TCPSSL::test_remote_shutdown_receives_trailing_data"
+  ];
+
+  disabledTestPaths = [
     # ignore code linting tests
-    "--ignore=tests/test_sourcecode.py"
+    "tests/test_sourcecode.py"
   ];
 
   # force using installed/compiled uvloop vs source by moving tests to temp dir
diff --git a/pkgs/development/python-modules/wordfreq/default.nix b/pkgs/development/python-modules/wordfreq/default.nix
index d687ffd2d0b92..6aa8599653b10 100644
--- a/pkgs/development/python-modules/wordfreq/default.nix
+++ b/pkgs/development/python-modules/wordfreq/default.nix
@@ -6,38 +6,43 @@
 , msgpack
 , mecab-python3
 , jieba
-, pytest
-, pythonOlder
+, pytestCheckHook
+, isPy27
 , fetchFromGitHub
 }:
 
 buildPythonPackage rec {
   pname = "wordfreq";
-  version = "2.3.2";
-  disabled = pythonOlder "3";
+  version = "2.5";
+  disabled = isPy27;
 
    src = fetchFromGitHub {
     owner = "LuminosoInsight";
     repo = "wordfreq";
-    # upstream don't tag by version
     rev = "v${version}";
-    sha256 = "078657iiksrqzcc2wvwhiilf3xxq5vlinsv0kz03qzqr1qyvbmas";
+    sha256 = "09wzraddbdw3781pk2sxlz8knax9jrcl24ymz54wx6sk0gvq95i7";
    };
 
-  propagatedBuildInputs = [ regex langcodes ftfy msgpack mecab-python3 jieba ];
+  propagatedBuildInputs = [
+    regex
+    langcodes
+    ftfy
+    msgpack
+    mecab-python3
+    jieba
+  ];
 
-  # patch to relax version requirements for regex
-  # dependency to prevent break in upgrade
   postPatch = ''
     substituteInPlace setup.py --replace "regex ==" "regex >="
   '';
 
-  checkInputs = [ pytest ];
-
-  checkPhase = ''
-    # These languages require additional dictionaries
-    pytest tests -k 'not test_japanese and not test_korean and not test_languages and not test_french_and_related'
-  '';
+  checkInputs = [ pytestCheckHook ];
+  disabledTests = [
+    # These languages require additional dictionaries that aren't packaged
+    "test_languages"
+    "test_japanese"
+    "test_korean"
+  ];
 
   meta = with lib; {
     description = "A library for looking up the frequencies of words in many languages, based on many sources of data";
diff --git a/pkgs/development/tools/analysis/codeql/default.nix b/pkgs/development/tools/analysis/codeql/default.nix
index abcd947fa3180..fb0cf4217abcb 100644
--- a/pkgs/development/tools/analysis/codeql/default.nix
+++ b/pkgs/development/tools/analysis/codeql/default.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "codeql";
-  version = "2.5.2";
+  version = "2.5.3";
 
   dontConfigure = true;
   dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
-    sha256 = "sha256-/Pl9qDzFSL67lBEyHPqy3QfNCXzR510SgM0U8f55Dqg=";
+    sha256 = "sha256-+bVbl6cuWrG+75AN5a1SUI8AXJq8ThnOpITPf6S2uEI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix
index ab73b8cd8f316..b676213d09c05 100644
--- a/pkgs/development/tools/bazelisk/default.nix
+++ b/pkgs/development/tools/bazelisk/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "bazelisk";
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-bD04wqmtBgdNlPGXz7/4kYQ97r9EthFfGExxOjt8u7k=";
+    sha256 = "sha256-w2YCqFkZLsTddj9OPOIdFPgXcXapCGWkc5RaH7RHg24=";
   };
 
   vendorSha256 = "sha256-IkW13y51NhKflAeHLu8k7DxRqYVnfMHSnfFuT6H/flo=";
diff --git a/pkgs/development/tools/build-managers/rebar3/default.nix b/pkgs/development/tools/build-managers/rebar3/default.nix
index c2b10d823a303..b9070a4276484 100644
--- a/pkgs/development/tools/build-managers/rebar3/default.nix
+++ b/pkgs/development/tools/build-managers/rebar3/default.nix
@@ -3,70 +3,12 @@
   tree }:
 
 let
-  version = "3.14.4";
+  version = "3.15.1";
 
   # Dependencies should match the ones in:
   # https://github.com/erlang/rebar3/blob/${version}/rebar.lock
   # `sha256` could also be taken from https://hex.pm - Checksum
-
-  bbmustache = fetchHex {
-    pkg = "bbmustache";
-    version = "1.10.0";
-    sha256 = "1vp27jqnq65a8iqp7j4z8nw9ad29dhky5agmg8aj75dvshzzmvs3";
-  };
-  certifi = fetchHex {
-    pkg = "certifi";
-    version = "2.5.3";
-    sha256 = "040w1scglvqhcvc1ifdnlcyrbwr0smi00w4xi8h03c99775nllgd";
-  };
-  cf = fetchHex {
-    pkg = "cf";
-    version = "0.3.1";
-    sha256 = "0wknz4xkqkhgvlx4vx5619p8m65v7g87lfgsvfy04jrsgm28spii";
-  };
-  cth_readable = fetchHex {
-    pkg = "cth_readable";
-    version = "1.5.0";
-    sha256 = "0z58b6frqdnhyzrmbdf6x78l3izbbh5z5i3am8hqc253r7xwv0dx";
-  };
-  erlware_commons = fetchHex {
-    pkg = "erlware_commons";
-    version = "1.4.0";
-    sha256 = "1rp2vkgzqm6sax7fc13rh9x6qzxsgg718dnv7l0kmarvyifcyphq";
-  };
-  eunit_formatters = fetchHex {
-    pkg = "eunit_formatters";
-    version = "0.5.0";
-    sha256 = "1jb3hzb216r29x2h4pcjwfmx1k81431rgh5v0mp4x5146hhvmj6n";
-  };
-  getopt = fetchHex {
-    pkg = "getopt";
-    version = "1.0.1";
-    sha256 = "53e1ab83b9ceb65c9672d3e7a35b8092e9bdc9b3ee80721471a161c10c59959c";
-  };
-  parse_trans = fetchHex {
-    pkg = "parse_trans";
-    version = "3.3.1";
-    sha256 = "12w8ai6b5s6b4hnvkav7hwxd846zdd74r32f84nkcmjzi1vrbk87";
-  };
-
-  providers = fetchHex {
-    pkg = "providers";
-    version = "1.8.1";
-    sha256 = "183b9128l4af60rs40agqh6kc6db33j4027ad6jajxn4x6nlamz4";
-  };
-
-  relx = fetchHex {
-    pkg = "relx";
-    version = "4.3.0";
-    sha256 = "0h044arh41sr92r1nlg176shavlv7pvw17alwklhszgwlr4hk3kk";
-  };
-
-  ssl_verify_fun = fetchHex {
-    pkg = "ssl_verify_fun";
-    version = "1.1.6";
-    sha256 = "1026l1z1jh25z8bfrhaw0ryk5gprhrpnirq877zqhg253x3x5c5x";
-  };
+  deps = import ./rebar-deps.nix { inherit fetchHex; };
 in
 stdenv.mkDerivation rec {
   pname = "rebar3";
@@ -78,7 +20,7 @@ stdenv.mkDerivation rec {
     owner = "erlang";
     repo = pname;
     rev = version;
-    sha256 = "09bnqwli93sq1pcz4h88ks7qg7k8yrjy9fd46yyp8xdl7i4irwy2";
+    sha256 = "1pcy5m79g0l9l3d8lkbx6cq1w87z1g3sa6wwvgbgraj2v3wkyy5g";
   };
 
   bootstrapper = ./rebar3-nix-bootstrap;
@@ -89,17 +31,9 @@ stdenv.mkDerivation rec {
     mkdir -p _checkouts
     mkdir -p _build/default/lib/
 
-    cp --no-preserve=mode -R ${bbmustache} _checkouts/bbmustache
-    cp --no-preserve=mode -R ${certifi} _checkouts/certifi
-    cp --no-preserve=mode -R ${cf} _checkouts/cf
-    cp --no-preserve=mode -R ${cth_readable} _checkouts/cth_readable
-    cp --no-preserve=mode -R ${erlware_commons} _checkouts/erlware_commons
-    cp --no-preserve=mode -R ${eunit_formatters} _checkouts/eunit_formatters
-    cp --no-preserve=mode -R ${getopt} _checkouts/getopt
-    cp --no-preserve=mode -R ${parse_trans} _checkouts/parse_trans
-    cp --no-preserve=mode -R ${providers} _checkouts/providers
-    cp --no-preserve=mode -R ${relx} _checkouts/relx
-    cp --no-preserve=mode -R ${ssl_verify_fun} _checkouts/ssl_verify_fun
+    ${toString (lib.mapAttrsToList (k: v: ''
+      cp -R --no-preserve=mode ${v} _checkouts/${k}
+    '') deps)}
 
     # Bootstrap script expects the dependencies in _build/default/lib
     # TODO: Make it accept checkouts?
diff --git a/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix b/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix
new file mode 100644
index 0000000000000..60dfc0b5b83fe
--- /dev/null
+++ b/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix
@@ -0,0 +1,58 @@
+{ fetchHex }:
+{
+  ssl_verify_fun = fetchHex {
+    pkg = "ssl_verify_fun";
+    version = "1.1.6";
+    sha256 = "sha256-vbDSRx9FPIj/OQjnaG+G+b4yfQZcwewW+kVAGX6gRoA=";
+  };
+  relx = fetchHex {
+    pkg = "relx";
+    version = "4.4.0";
+    sha256 = "sha256-VcDtY7tdVeuYOhnrlNfzB1320Sbb3/QxAqZmCpH86SU=";
+  };
+  providers = fetchHex {
+    pkg = "providers";
+    version = "1.8.1";
+    sha256 = "sha256-5FdFrenEdqmkaeoIQOQYqxk2DcRPAaIzME4RikRIa6A=";
+  };
+  parse_trans = fetchHex {
+    pkg = "parse_trans";
+    version = "3.3.1";
+    sha256 = "sha256-B82Vd4hfVjYtQU6MTE5r3xDUOodnq7ktJMvoskxUiIs=";
+  };
+  getopt = fetchHex {
+    pkg = "getopt";
+    version = "1.0.1";
+    sha256 = "sha256-U+Grg7nOtlyWctPno1uAkum9ybPugHIUcaFhwQxZlZw=";
+  };
+  eunit_formatters = fetchHex {
+    pkg = "eunit_formatters";
+    version = "0.5.0";
+    sha256 = "sha256-1si6ITQklE5uBbvAl8MgAc3Qq+OSXQJFTyKbINaHY8k=";
+  };
+  erlware_commons = fetchHex {
+    pkg = "erlware_commons";
+    version = "1.4.0";
+    sha256 = "sha256-GF7PXPQ7qzoBPds2FM57un9seoJ5BOZOV9pU/N/c4uY=";
+  };
+  cth_readable = fetchHex {
+    pkg = "cth_readable";
+    version = "1.5.1";
+    sha256 = "sha256-aGVBoi7+bKWkGgR7OVFsLdKPs8reXySi8ZFFs5Z/nYA=";
+  };
+  cf = fetchHex {
+    pkg = "cf";
+    version = "0.3.1";
+    sha256 = "sha256-MV6NRH06SwK82/o5etA7u5iKbgqm9E063Q9OPDv5dnI=";
+  };
+  certifi = fetchHex {
+    pkg = "certifi";
+    version = "2.5.3";
+    sha256 = "sha256-7VFqyzkpsQEgip1wAGLVIPOVPaO2uRjYZhBv+pgOHBA=";
+  };
+  bbmustache = fetchHex {
+    pkg = "bbmustache";
+    version = "1.10.0";
+    sha256 = "sha256-Q+/6P9S7lSMVevWp4idsSTSVuEWfyHNxRKoYbLE84u4=";
+  };
+}
diff --git a/pkgs/development/tools/conftest/default.nix b/pkgs/development/tools/conftest/default.nix
index 4c6cbbbe6b04c..833f2f84b058c 100644
--- a/pkgs/development/tools/conftest/default.nix
+++ b/pkgs/development/tools/conftest/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "conftest";
-  version = "0.24.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "conftest";
     rev = "v${version}";
-    sha256 = "sha256-iFxRZq/8TW7Df+aAc5IN+FAXU4kvbDiHWiFOlWMmCY0=";
+    sha256 = "sha256-pxPqBUOsXbP9giaV5NS3a6Z6auN4vUTIrIKcNh8xURU=";
   };
 
-  vendorSha256 = "sha256-LvaSs1y1CEP+cJc0vqTh/8MezmtuFAbfMgqloAjLZl8=";
+  vendorSha256 = "sha256-y8DRrthaUzMKxFbdbASvqsRMT+jex7jMJA6g7YF/VxI=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index db1f2aeabc741..0b6c979244108 100644
--- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -1,5 +1,6 @@
 { fetchFromGitHub, lib, buildGoModule,
-  makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }:
+  makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep,
+  nixosTests }:
 buildGoModule rec {
   name = "buildkite-agent-${version}";
   version = "3.29.0";
@@ -30,6 +31,10 @@ buildGoModule rec {
       --prefix PATH : '${lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}'
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.buildkite-agents;
+  };
+
   meta = with lib; {
     description = "Build runner for buildkite.com";
     longDescription = ''
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 5373b2d359bad..67074d4354359 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jenkins";
-  version = "2.277.3";
+  version = "2.277.4";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "1awixb55bkpqcvf2s59aph3kxdd70g9x1a5s5kly33kwrplcf8iy";
+    sha256 = "19z72d0rkxpvl03aqz102in9ln08r9831lj3ymsgmglk8c37ici6";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/database/liquibase/default.nix b/pkgs/development/tools/database/liquibase/default.nix
index 32ab88bf41281..ebd6064ee915f 100644
--- a/pkgs/development/tools/database/liquibase/default.nix
+++ b/pkgs/development/tools/database/liquibase/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "liquibase";
-  version = "4.3.2";
+  version = "4.3.4";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-sc/W4N+pd1bhLiyQLqm0j2o/RviT8iKzBZcD0GRDqqE=";
+    sha256 = "sha256-tWk4AW2F1v+5C7Gj9I6c4JVfaQDXEVMdPoaKafa7OgE=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index 83256efd5faf9..fee73f7e98ce7 100644
--- a/pkgs/development/tools/doctl/default.nix
+++ b/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.59.0";
+  version = "1.60.0";
 
   vendorSha256 = null;
 
@@ -32,7 +32,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-mkFKYWPUEHVtQi9eUPxvWYxNCfVrKdjo2bH2DEwL1d0=";
+    sha256 = "sha256-HhJOjTuPuQT8CYRf4yaR+d/MyTWlM1y+FiEU7S5rEs0=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/tools/kustomize/kustomize-sops.nix b/pkgs/development/tools/kustomize/kustomize-sops.nix
index e471489e70958..7753556a4ea59 100644
--- a/pkgs/development/tools/kustomize/kustomize-sops.nix
+++ b/pkgs/development/tools/kustomize/kustomize-sops.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kustomize-sops";
-  version = "2.5.2";
+  version = "2.5.5";
 
   src = fetchFromGitHub {
     owner = "viaduct-ai";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-c8v9O3ufTZ7/rWwLNoak0ITlEVlOg9MvheRjQIxPwKc=";
+    sha256 = "sha256-lNC8TwX462Lnt/uiKWt9hNa81g3tdenvvuNQJNkj7hM=";
   };
 
-  vendorSha256 = "sha256-kJtJ2ut+yhgNoPIY5i3dKmQV0g+8RvcGnxCyay7wy2A=";
+  vendorSha256 = "sha256-uStmUhiZuUguxUx2L8ifSNnbMCs7Jk+6tq7qZdACjag=";
 
   installPhase = ''
     mkdir -p $out/lib/viaduct.ai/v1/ksops-exec/
diff --git a/pkgs/development/tools/misc/creduce/default.nix b/pkgs/development/tools/misc/creduce/default.nix
index 75234fde6ca50..0ae900060b973 100644
--- a/pkgs/development/tools/misc/creduce/default.nix
+++ b/pkgs/development/tools/misc/creduce/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, cmake, makeWrapper
-, llvm, clang-unwrapped
+, llvm, libclang
 , flex
 , zlib
 , perlPackages
@@ -15,12 +15,12 @@ stdenv.mkDerivation rec {
     sha256 = "1b833z0g1hich68kzbkpfc26xb8w2phfl5savy8c6ir9ihwy1a8w";
   };
 
-  nativeBuildInputs = [ cmake makeWrapper ];
+  nativeBuildInputs = [ cmake makeWrapper llvm.dev ];
   buildInputs = [
     # Ensure stdenv's CC is on PATH before clang-unwrapped
     stdenv.cc
     # Actual deps:
-    llvm clang-unwrapped
+    llvm libclang
     flex zlib
   ] ++ (with perlPackages; [ perl ExporterLite FileWhich GetoptTabular RegexpCommon TermReadKey ]);
 
diff --git a/pkgs/development/tools/misc/cvise/default.nix b/pkgs/development/tools/misc/cvise/default.nix
index fe33df530cfd8..e24c133e8b908 100644
--- a/pkgs/development/tools/misc/cvise/default.nix
+++ b/pkgs/development/tools/misc/cvise/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonApplication, fetchFromGitHub, cmake, flex
-, clang-unwrapped, llvm, unifdef
+, libclang, llvm, unifdef
 , pebble, psutil, pytestCheckHook, pytest-flake8
 }:
 
@@ -19,8 +19,8 @@ buildPythonApplication rec {
     ./unifdef.patch
   ];
 
-  nativeBuildInputs = [ cmake flex ];
-  buildInputs = [ clang-unwrapped llvm unifdef ];
+  nativeBuildInputs = [ cmake flex llvm.dev ];
+  buildInputs = [ libclang llvm llvm.dev unifdef ];
   propagatedBuildInputs = [ pebble psutil ];
   checkInputs = [ pytestCheckHook pytest-flake8 unifdef ];
 
diff --git a/pkgs/development/tools/misc/global/default.nix b/pkgs/development/tools/misc/global/default.nix
index 7ace6f857c8bd..739615a841c7d 100644
--- a/pkgs/development/tools/misc/global/default.nix
+++ b/pkgs/development/tools/misc/global/default.nix
@@ -6,11 +6,11 @@ let
   pygments = python3Packages.pygments;
 in stdenv.mkDerivation rec {
   pname = "global";
-  version = "6.6.5";
+  version = "6.6.6";
 
   src = fetchurl {
     url = "mirror://gnu/global/${pname}-${version}.tar.gz";
-    sha256 = "10vvsgx8v54whb4j9mk5qqyb5h3rdd9da0il3wir8pcpksyk0dww";
+    sha256 = "sha256-dYB4r/+Y1MBRxYeFx62j7Rl3+rt3+Il/9le3HMYtTV0=";
   };
 
   nativeBuildInputs = [ libtool makeWrapper ];
diff --git a/pkgs/development/tools/misc/nimlsp/default.nix b/pkgs/development/tools/misc/nimlsp/default.nix
index 7f73fb9a1bc3c..b1d59c9450acc 100644
--- a/pkgs/development/tools/misc/nimlsp/default.nix
+++ b/pkgs/development/tools/misc/nimlsp/default.nix
@@ -16,13 +16,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "nimlsp";
-  version = "0.2.6";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "PMunch";
     repo = "nimlsp";
     rev = "v${version}";
-    sha256 = "13kw3zjh0iqymwqxwhyj8jz6hgswwahf1rjd6iad7c6gcwrrg6yl";
+    sha256 = "1lm823nvpp3bj9527jd8n1jxh6y8p8ngkfkj91p94m7ffai6jazq";
   };
 
   nativeBuildInputs = [ nim ];
diff --git a/pkgs/development/tools/rust/cargo-binutils/default.nix b/pkgs/development/tools/rust/cargo-binutils/default.nix
index 029eafd02f66d..f499512ce5322 100644
--- a/pkgs/development/tools/rust/cargo-binutils/default.nix
+++ b/pkgs/development/tools/rust/cargo-binutils/default.nix
@@ -5,23 +5,28 @@ rustPlatform.buildRustPackage rec {
   version = "0.3.3";
 
   # Upstream doesn't commit `Cargo.lock`, see https://github.com/rust-embedded/cargo-binutils/pull/99
-  src = let
-    repo = fetchFromGitHub {
-      owner = "rust-embedded";
-      repo = pname;
-      rev = "v${version}";
-      sha256 = "sha256-Dgn+f4aSsDSh+RC8yvt3ydkdtwib5jEVsnZkod5c7Vo=";
-    };
-  in runCommand "source" { } ''
-    cp -R ${repo} $out
-    chmod -R +w $out
-    cp ${./Cargo.lock} $out/Cargo.lock
-  '';
+  src =
+    let
+      repo = fetchFromGitHub {
+        owner = "rust-embedded";
+        repo = pname;
+        rev = "v${version}";
+        sha256 = "sha256-Dgn+f4aSsDSh+RC8yvt3ydkdtwib5jEVsnZkod5c7Vo=";
+      };
+    in
+    runCommand "source" { } ''
+      cp -R ${repo} $out
+      chmod -R +w $out
+      cp ${./Cargo.lock} $out/Cargo.lock
+    '';
 
   cargoSha256 = "sha256-6du86HxkDQAeIXScXBKuv0j4YZiG4O6IwVIXZnJgTO8=";
 
   meta = with lib; {
-    description = "Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain";
+    description = "Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain.";
+    longDescription = ''
+      In order for this to work, you either need to run `rustup component add llvm-tools-preview` or install the `llvm-tools-preview` component using your Nix library (e.g. nixpkgs-mozilla, or rust-overlay)
+    '';
     homepage = "https://github.com/rust-embedded/cargo-binutils";
     license = with licenses; [ asl20 mit ];
     maintainers = with maintainers; [ stupremee ];
diff --git a/pkgs/development/tools/rust/cargo-fuzz/default.nix b/pkgs/development/tools/rust/cargo-fuzz/default.nix
index 2004f9bff0628..80ce649d6c175 100644
--- a/pkgs/development/tools/rust/cargo-fuzz/default.nix
+++ b/pkgs/development/tools/rust/cargo-fuzz/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-fuzz";
-  version = "0.10.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "rust-fuzz";
     repo = "cargo-fuzz";
     rev = version;
-    sha256 = "sha256-kBbwE4ToUud5BDDlGoey2qpp2imzO6t3FcIbV3NTFa8=";
+    sha256 = "sha256-txlHXboQi3Z8AMIJJBZsBrCA7xggF0zGDpKqcD8UxMo=";
   };
 
-  cargoSha256 = "sha256-GtvflTfwNMPxMsDQoiTYGgrlSfOIhY3X8qJzwS+LJ4Y=";
+  cargoSha256 = "sha256-eEfry6Q2YiIkNEHu6C8p17pUTF43eS1/iTP2oATZ/F8=";
 
   doCheck = false;
 
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index b65c342aaa79f..a8ae0c31ee8ef 100644
--- a/pkgs/development/web/flyctl/default.nix
+++ b/pkgs/development/web/flyctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.211";
+  version = "0.0.212";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "sha256-iR8vEXLRdhLggFvu4Vhb8WW2Wo6qzAMQWC7qUMlWGd8=";
+    sha256 = "sha256-4BL+IhwmKiPN5G/5ut0RJcCXWy4IKPichx2dD3/TRic=";
   };
 
   preBuild = ''
diff --git a/pkgs/games/assaultcube/default.nix b/pkgs/games/assaultcube/default.nix
index a2c00ddc149bd..640ea81c6c6b0 100644
--- a/pkgs/games/assaultcube/default.nix
+++ b/pkgs/games/assaultcube/default.nix
@@ -67,6 +67,6 @@ stdenv.mkDerivation rec {
     homepage = "https://assault.cubers.net";
     maintainers = [ ];
     platforms = platforms.linux; # should work on darwin with a little effort.
-    license = lib.licenses.zlib;
+    license = lib.licenses.unfree;
   };
 }
diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 34de043a65857..5c77e8a2c1811 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -29,11 +29,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "openttd";
-  version = "1.11.1";
+  version = "1.11.2";
 
   src = fetchurl {
     url = "https://cdn.openttd.org/openttd-releases/${version}/${pname}-${version}-source.tar.xz";
-    sha256 = "sha256-qZGeLkKbsI+in+jme6m8dckOnvb6ZCSOs0IjoyXUAKM=";
+    sha256 = "sha256-D7qTWiqBX0/ozW3C4q4z9ydpU4cxIo+EimOzpulILm0=";
   };
 
   nativeBuildInputs = [ cmake makeWrapper ];
diff --git a/pkgs/games/super-tux-kart/default.nix b/pkgs/games/super-tux-kart/default.nix
index 35143028a2759..7998e13817d87 100644
--- a/pkgs/games/super-tux-kart/default.nix
+++ b/pkgs/games/super-tux-kart/default.nix
@@ -54,7 +54,12 @@ let
     "libsquish"
     # Not packaged to this date
     "sheenbidi"
-  ];
+  ]
+  # Our system angelscript causes linking error on ARM
+  # ld: libangelscript.so: undefined reference to
+  # `CallSystemFunctionNative(asCContext*, asCScriptFunction*, void*, unsigned int*, void*, unsigned long&, void*)'
+  # Bundled angelscript compiles fine
+  ++ lib.optional stdenv.hostPlatform.isAarch64 "angelscript";
 in
 stdenv.mkDerivation rec {
 
@@ -100,15 +105,15 @@ stdenv.mkDerivation rec {
     harfbuzz
     mcpp
     wiiuse
-    angelscript
-  ];
+  ]
+  ++ lib.optional (!stdenv.hostPlatform.isAarch64) angelscript;
 
   cmakeFlags = [
     "-DBUILD_RECORDER=OFF" # libopenglrecorder is not in nixpkgs
-    "-DUSE_SYSTEM_ANGELSCRIPT=OFF" # doesn't work with 2.31.2 or 2.32.0
+    # doesn't work with our 2.35.0 on aarch64-linux
+    "-DUSE_SYSTEM_ANGELSCRIPT=${if !stdenv.hostPlatform.isAarch64 then "ON" else "OFF"}"
     "-DCHECK_ASSETS=OFF"
     "-DUSE_SYSTEM_WIIUSE=ON"
-    "-DUSE_SYSTEM_ANGELSCRIPT=ON"
     "-DOpenGL_GL_PREFERENCE=GLVND"
   ];
 
diff --git a/pkgs/misc/lilypond/default.nix b/pkgs/misc/lilypond/default.nix
index d8db893f7d702..b75f9c3f80087 100644
--- a/pkgs/misc/lilypond/default.nix
+++ b/pkgs/misc/lilypond/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "lilypond";
-  version = "2.22.0";
+  version = "2.22.1";
 
   src = fetchurl {
     url = "http://lilypond.org/download/sources/v${lib.versions.majorMinor version}/lilypond-${version}.tar.gz";
-    sha256 = "0khg9dlm1b02mm9w54xqc9ydj416xkikn6p08g1asiyjf4qx1pb4";
+    sha256 = "sha256-cqwtVMMQwxQcC3gtTgvvkALVUZz0ZjJ1mx8D72lpzDA=";
   };
 
   postInstall = ''
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index 26670c0065e28..8e327273502e3 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -209,12 +209,12 @@ let
 
   auto-session = buildVimPluginFrom2Nix {
     pname = "auto-session";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "auto-session";
-      rev = "0ec315fd4eb3779db92881d33de3c4601f95da75";
-      sha256 = "12x9x1rygy59fn7n223cc04w05ig5qniwig0hcq5y8al6y49drl8";
+      rev = "b255889419f58b9da1ae49243b433378e3d0b820";
+      sha256 = "05wspv7j3q300fr7sg5i65j3fl7ac0lw93jkpi70f0h7kqi5hl5j";
     };
     meta.homepage = "https://github.com/rmagatti/auto-session/";
   };
@@ -389,12 +389,12 @@ let
 
   chadtree = buildVimPluginFrom2Nix {
     pname = "chadtree";
-    version = "2021-05-08";
+    version = "2021-05-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "71054d1cfcd88c91875882ec59627ba983bba090";
-      sha256 = "111q295abqgagfqcfal920bllyb5a2wzbsm03bkdvqg7hzbdhsw2";
+      rev = "d6ddb11b13a28f858344cdfafbe4d76fe032803a";
+      sha256 = "0wr6m0i0lj5dpp0rbqyx534jnwpmrrywjq55xai5z799dh4in42k";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -533,12 +533,12 @@ let
 
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc-nvim";
-    version = "2021-05-08";
+    version = "2021-05-10";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "4586b97342cff6c8b630a024db30547e53ad1d62";
-      sha256 = "0w1l82y5vmppmbp5lqdcn9cal62fiyi97qmpd6y0fi2fsy2c0y3x";
+      rev = "a3966628cb090ed9a102e7b9c78f9fb90abffd21";
+      sha256 = "1pa28arwyfgvf6c1vbcqnlwiz54lqlw8lqv89nz8880wpmwr3njk";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -618,12 +618,12 @@ let
 
   compe-tabnine = buildVimPluginFrom2Nix {
     pname = "compe-tabnine";
-    version = "2021-04-23";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "compe-tabnine";
-      rev = "f6ace45ef5cbd8b274d7163a2931c11083d34d44";
-      sha256 = "0wjy38v3h5nqr2vw2ydhy2227cqkd8k14cnb3vr39xm5c0fc3ci5";
+      rev = "755e45c97d29d73400f8fba591ff06054d37127a";
+      sha256 = "0gsq2v0qpzw211fmss3c004pmqcfns9vy4fhki9a0c69zk1ggalp";
     };
     meta.homepage = "https://github.com/tzachar/compe-tabnine/";
   };
@@ -774,12 +774,12 @@ let
 
   csv-vim = buildVimPluginFrom2Nix {
     pname = "csv-vim";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "chrisbra";
       repo = "csv.vim";
-      rev = "67e70f0949e6ea7a9d0a74fd3c3f96f75547798b";
-      sha256 = "14szr4dzg97xy996zd8rkandlw4xsi3pywv2gwg6m0nxl5cb2hrl";
+      rev = "a7baf1ce934e725fbcd61b7e6aa27572c0439681";
+      sha256 = "1bfi90h3xn0iz9kp2jglxsw22aq72si6xccvsfhxhjsz329rw239";
     };
     meta.homepage = "https://github.com/chrisbra/csv.vim/";
   };
@@ -942,12 +942,12 @@ let
 
   deol-nvim = buildVimPluginFrom2Nix {
     pname = "deol-nvim";
-    version = "2021-05-02";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deol.nvim";
-      rev = "6017dfa949fe781c8ef861081f8513e3097245c6";
-      sha256 = "12i8b054fq3vi7pn8wah5y5h87br4rjc4mhdvvdlijs4kgpkd9fy";
+      rev = "ca02aa3b59fd3a6674ff6ce471267d1f716a2995";
+      sha256 = "15r7wvcchybjp96jw9klr93sdz89qnrw033942kd0q2q19fkbxdj";
     };
     meta.homepage = "https://github.com/Shougo/deol.nvim/";
   };
@@ -1220,12 +1220,12 @@ let
 
   diffview-nvim = buildVimPluginFrom2Nix {
     pname = "diffview-nvim";
-    version = "2021-05-06";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "sindrets";
       repo = "diffview.nvim";
-      rev = "dac6553c175937e8f9b795e1fb4fea9fa7caf555";
-      sha256 = "0p0h1rqzg3gxbwr3d0n2al8lxv307dmfvanvcgiaq3md7xhfm4gf";
+      rev = "daf0134615e488e04223f5bb2377112bf274f481";
+      sha256 = "0njdhp3xp00dh4892b7vvgxwnd70ql1aa099vpy33ra3lzvy6jn0";
     };
     meta.homepage = "https://github.com/sindrets/diffview.nvim/";
   };
@@ -1499,12 +1499,12 @@ let
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "4e2eb2822acd45af84eaae156ad608d5e7720797";
-      sha256 = "0lvmnqvbw8cnr9fb2gr3vhznqkw5z1359kcbmcp6ly9s2vr2nvgn";
+      rev = "10135fd89dd433191672b34d7ab2b4bc682bfa5e";
+      sha256 = "09h8vbyyynbiyaiainb0jfbny7cprl7rjpfz5nfl7jq8lsmc0x42";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -1547,12 +1547,12 @@ let
 
   fzf-vim = buildVimPluginFrom2Nix {
     pname = "fzf-vim";
-    version = "2021-05-01";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "fzf.vim";
-      rev = "75c7e87de1ed7ff41183d479b1a23023070bfe54";
-      sha256 = "0axwgirslx6rsxda3dv2bqxyk9fnaj5yy9346hignlxzkg6z7641";
+      rev = "a88311b222eb9f90fa9fa72292e61d15c6767866";
+      sha256 = "1k0czvf81f8svbrsny8x57xy594pabi8yvgb3ixylx94fpb95ap3";
     };
     meta.homepage = "https://github.com/junegunn/fzf.vim/";
   };
@@ -1643,12 +1643,12 @@ let
 
   git-messenger-vim = buildVimPluginFrom2Nix {
     pname = "git-messenger-vim";
-    version = "2021-05-06";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "rhysd";
       repo = "git-messenger.vim";
-      rev = "0fc45c030111602b99bf4425cc3cc2a624e2db01";
-      sha256 = "0mzkmkgldh63jm41pai3xv14x2cx5qprxciyhbpc22knha2xigxi";
+      rev = "10ed3095e68c824899832e61fff58ad88ca6282f";
+      sha256 = "1l2appxysix9pkgfk6lw3pr2b2qi37qd05lpf0sd7zr89ikrr0cr";
     };
     meta.homepage = "https://github.com/rhysd/git-messenger.vim/";
   };
@@ -1679,12 +1679,12 @@ let
 
   gitsigns-nvim = buildVimPluginFrom2Nix {
     pname = "gitsigns-nvim";
-    version = "2021-05-07";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "fd08f51f88b86d2527631d94b4056b790748147d";
-      sha256 = "00csq7ci74kz958hbmvppdmq9cw11qmhli1pkx4hqxqq8mx9lg0k";
+      rev = "d89f88384567afc7a72b597e130008126fdb97f7";
+      sha256 = "03qs6kcv9wxwikpl1hhlkm7w66952i60wz38a72s87ykgdkk16ij";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -1859,12 +1859,12 @@ let
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop-nvim";
-    version = "2021-04-16";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "998452d18934af4a527d4e1aa315fd2c74cb652a";
-      sha256 = "0y17zm792fxakja4c852k9pw3lp20vgbyyzrmnc20112dll8vzgn";
+      rev = "3655626906859f572b8c4ce9dd9d69e2e1e43b81";
+      sha256 = "1qjg77zkgfvw9y0g9ab0fg52lx223h60r4jmrqnv89i9b0bfmz6f";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
@@ -2400,12 +2400,12 @@ let
 
   lsp-trouble-nvim = buildVimPluginFrom2Nix {
     pname = "lsp-trouble-nvim";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "lsp-trouble.nvim";
-      rev = "2b27b96c7893ac534ba0cbfc95d52c6c609a0b20";
-      sha256 = "0r70wxpj594j4mglqlrxs8dv9a2mv32dhq3pgp9g69r52pv1c39i";
+      rev = "0c9ca5e10c2e5dd8d8479e864e12383b1d614273";
+      sha256 = "096af9qdz15kqjq9alajjdr6n3r2az2673imyva0mcwpwc007pl5";
     };
     meta.homepage = "https://github.com/folke/lsp-trouble.nvim/";
   };
@@ -2448,24 +2448,24 @@ let
 
   lualine-nvim = buildVimPluginFrom2Nix {
     pname = "lualine-nvim";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "hoob3rt";
       repo = "lualine.nvim";
-      rev = "c8b96850c9e592fc1a3113ec4973588dec559556";
-      sha256 = "14000i249w25r3z4g5jvbq3firc0cghkj7grv76jisfqjvgfccs5";
+      rev = "82826ef66111f1bbdcc6f8e5bc2b19d7e0542229";
+      sha256 = "03wbgqhhyjc7fjhmdmywkirlwy78ziagpvjar4gvjl41rbjn7fgp";
     };
     meta.homepage = "https://github.com/hoob3rt/lualine.nvim/";
   };
 
   lush-nvim = buildVimPluginFrom2Nix {
     pname = "lush-nvim";
-    version = "2021-05-05";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "lush.nvim";
-      rev = "a7b6f179e42d34af66a2dee7a272125f65ee021b";
-      sha256 = "1s9n77azgkw3hjkdn3s7aaq0l0jk7rzgfwv9q0adjz7b0k8a9f5j";
+      rev = "19b7cf9217abfc50c5ae9048d1cedd15e0349131";
+      sha256 = "1gkng0nmis8xmfvywgv6gikjh4l0n5aqijhx0aqzi4k47pvp0cpi";
     };
     meta.homepage = "https://github.com/rktjmp/lush.nvim/";
   };
@@ -3132,12 +3132,12 @@ let
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2021-05-04";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "05ef9cb97e82074a65c8a3a278760d4b8f599e3c";
-      sha256 = "04v5l9gdrcxsk0yy0jljlr3qy79hqqw5i7fmvfrk641z4kv24rc1";
+      rev = "91f3c9fb469527a75163b8460128aade3b34e4a5";
+      sha256 = "19mapmqff6b80g70ybmwp9mc113wal7dgjfsx516dh21gcx3v98h";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
@@ -3156,24 +3156,24 @@ let
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2021-05-07";
+    version = "2021-05-10";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "eac2f3748c8dd05f6942fea18c770f658b3fc2b9";
-      sha256 = "0rczsikdvqkjd93fw7sjdsaw6nbp99zj4m0z5js43hrg8ygnmsq9";
+      rev = "ac3b0f70843840918389191f575f2404cad3304f";
+      sha256 = "0jxj9v8sxnmvvirwzj171dd43w2kg6g3dri1pya20x8plka8rgs6";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
 
   nvim-bufferline-lua = buildVimPluginFrom2Nix {
     pname = "nvim-bufferline-lua";
-    version = "2021-05-06";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "nvim-bufferline.lua";
-      rev = "14dee901aa462183632aaf346fc6ec85fa3ac85d";
-      sha256 = "0aj1cfkc2fhn6ibwv08szia0fc01jmx7x448zl2kcnwyzcr1qp0v";
+      rev = "297f214477ec10ccf381dd5644656df4cf8f46bf";
+      sha256 = "14l6m1vai51ir2vl7qmqqf9waa32fvxjmplr82asf4px1g436mlq";
     };
     meta.homepage = "https://github.com/akinsho/nvim-bufferline.lua/";
   };
@@ -3348,12 +3348,12 @@ let
 
   nvim-nonicons = buildVimPluginFrom2Nix {
     pname = "nvim-nonicons";
-    version = "2021-03-18";
+    version = "2021-05-10";
     src = fetchFromGitHub {
       owner = "yamatsum";
       repo = "nvim-nonicons";
-      rev = "f136ab905ac99c9bd20a8bc4c470eb33768c54a0";
-      sha256 = "1590gszcra3pagva6zplib35fqlgj26masjq3i6qgq85kpx5s55j";
+      rev = "5056aebb8d0ecc87b26a4f7fe9e9e520e5ea493f";
+      sha256 = "0z1j18hb5n3500b6sxm1dsya9yd9jnnywhhw9z3sbndb3irn2mny";
     };
     meta.homepage = "https://github.com/yamatsum/nvim-nonicons/";
   };
@@ -3372,12 +3372,12 @@ let
 
   nvim-scrollview = buildVimPluginFrom2Nix {
     pname = "nvim-scrollview";
-    version = "2021-05-06";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "nvim-scrollview";
-      rev = "5d18f3e13909e96d3a28a79404d4c558ab193d2c";
-      sha256 = "0vw5s5mmid1191js5v7bc3pdmlswlaziy3ryc6h18nq8mmk8d0ap";
+      rev = "bf7155b11278b5c849ddde2da76bfade668d8a92";
+      sha256 = "01pcvq1kany4nrni4g7jnqkdg23bgyl68hfwfqcw8xabrl46p746";
     };
     meta.homepage = "https://github.com/dstein64/nvim-scrollview/";
   };
@@ -3420,12 +3420,12 @@ let
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2021-05-07";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "25081a1d63cd1525c5bcfe65c053a0b88b009394";
-      sha256 = "1ris5yfi050g5nbhll39fw75djyki0slixwrljqnqn9dfgfddwp7";
+      rev = "9e0f764b675d987bbdd45af38531cc864c8cfc4c";
+      sha256 = "1rw9jasxfxghja5dlfz75iiz5rshisjnwffhzdqa9mil0pvahjr8";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -3708,12 +3708,12 @@ let
 
   plenary-nvim = buildVimPluginFrom2Nix {
     pname = "plenary-nvim";
-    version = "2021-05-03";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "02990e428c5eeb907e0767dc0628341c29509ed5";
-      sha256 = "19r8yrx1932h0q104fcskfl85f632s7ckaqh6laakifqhidnw37k";
+      rev = "3f993308024697186c02d51df1330bf07c12535a";
+      sha256 = "0riw3wy94qhbdvx32nmlc1s85n3ykg64n45p7i7mii0cd17mqm27";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -3745,12 +3745,12 @@ let
 
   popup-nvim = buildVimPluginFrom2Nix {
     pname = "popup-nvim";
-    version = "2021-03-10";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "popup.nvim";
-      rev = "bc98ca6df9179452c368f0d7bac821a8fd4c01ac";
-      sha256 = "0j1gkaba6z5vb922j47i7sq0d1zwkr5581w0nxd8c31klghg3kyn";
+      rev = "5e3bece7b4b4905f4ec89bee74c09cfd8172a16a";
+      sha256 = "1k6rz652fjkzhjd8ljr0l6vfispanrlpq0r4aya4qswzxni4rxhg";
     };
     meta.homepage = "https://github.com/nvim-lua/popup.nvim/";
   };
@@ -4587,12 +4587,12 @@ let
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-nvim";
-    version = "2021-05-06";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "88f7b27222ac75223ab971c5158dbcf64a326669";
-      sha256 = "131gpwhfkmh7wwsqs2jhjfdlp3l93s3z4klrpg5wnak5v5rgzvsq";
+      rev = "c061c216bfe082384d542a487ce02e9aed6177df";
+      sha256 = "1x4mhxwp9crs63a43wlph4jbl92192sl3hiwchwlim0g1wdar0ky";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -5116,12 +5116,12 @@ let
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "19360bac6372b364ae4ffaefbd523da47dbff316";
-      sha256 = "07iq43ikkhdl30avpqcawknhg25mhb1vz86hb2ydyv2fjmgf5jn1";
+      rev = "ab4962b83866e181b989cb550c527cbfa327942c";
+      sha256 = "14df2fk5psn27v3rhpxv1h7yhpkzl4rzld7i148lm02cj0qahnhq";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -5690,6 +5690,18 @@ let
     meta.homepage = "https://github.com/konfekt/vim-DetectSpellLang/";
   };
 
+  vim-deus = buildVimPluginFrom2Nix {
+    pname = "vim-deus";
+    version = "2021-03-28";
+    src = fetchFromGitHub {
+      owner = "ajmwagar";
+      repo = "vim-deus";
+      rev = "1be965e7bc1c01e7db5e46dcd0e50d32d4eef434";
+      sha256 = "1h0imrxhxw81hkh9xl75rcnx7ll5fry6hcf7flx84n6nawvfzyvm";
+    };
+    meta.homepage = "https://github.com/ajmwagar/vim-deus/";
+  };
+
   vim-devicons = buildVimPluginFrom2Nix {
     pname = "vim-devicons";
     version = "2021-02-19";
@@ -7051,12 +7063,12 @@ let
 
   vim-matchup = buildVimPluginFrom2Nix {
     pname = "vim-matchup";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "andymass";
       repo = "vim-matchup";
-      rev = "5bbcdf9dbb3c956ab76adfaf8cdb294d1e794d0d";
-      sha256 = "061bwk97vvzdamq3zjfvyzzi5p0m973q4dqsisrp31s75y0q0b7m";
+      rev = "2032562ba91b9904fdbaac8a586d93fc69d5aec6";
+      sha256 = "1d38dx5s89113iglbji3q4va3hnjqa6cx141faldp283v39y2qv2";
     };
     meta.homepage = "https://github.com/andymass/vim-matchup/";
   };
@@ -8179,12 +8191,12 @@ let
 
   vim-startify = buildVimPluginFrom2Nix {
     pname = "vim-startify";
-    version = "2021-04-23";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-startify";
-      rev = "df0f1dbdc0689f6172bdd3b8685868aa93446c6f";
-      sha256 = "0idrzl2kgclalsxixrh21fkw6d2vd53apw47ajjlcsl94acy2139";
+      rev = "81e36c352a8deea54df5ec1e2f4348685569bed2";
+      sha256 = "1y8yi099lqg03781bnma2bj6x5lkvfq65vhdpnm65mfyak6dpzgz";
     };
     meta.homepage = "https://github.com/mhinz/vim-startify/";
   };
@@ -8323,12 +8335,12 @@ let
 
   vim-terraform = buildVimPluginFrom2Nix {
     pname = "vim-terraform";
-    version = "2021-03-07";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "e62cac4d3186209a510f51becd768ee414b2be76";
-      sha256 = "1c93kvlrgzp5fw5rgv053sin0f2f2chydxbvrkprpz71qmxqmq05";
+      rev = "9166d42e5dc9bc0ef7e1b9e93d52bb4c5b923560";
+      sha256 = "1wr1sqxjy1dqyvkvii8jrxwagfph52z2ij8p1nz5b1kpyzvvpg7b";
     };
     meta.homepage = "https://github.com/hashivim/vim-terraform/";
   };
@@ -8756,12 +8768,12 @@ let
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2020-12-02";
+    version = "2021-05-08";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "f851600045c543f3646c709d7e03e231408eab81";
-      sha256 = "0pi85rzls3g7ilb18idk8xbqya8ygjab5ndk09p4xmmww9z4v711";
+      rev = "cd88d9bc34ca1df6bd06a9e427350d45a6c2931c";
+      sha256 = "0gf0xla3jm8cp4j5mldn79kfbd3zlwil3wdgdvsx8w3kybi6dap1";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
@@ -9057,24 +9069,24 @@ let
 
   which-key-nvim = buildVimPluginFrom2Nix {
     pname = "which-key-nvim";
-    version = "2021-05-07";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "which-key.nvim";
-      rev = "8186d5ae26fd0a6e24878a7d5c91d712dbb06e56";
-      sha256 = "1fvickzwzpbsczyrnqm0h252h2k9h17yzzwy4hs8r18ixgxwmbxd";
+      rev = "1ccba9d0b553b08feaca9f432386f9c33bd1656f";
+      sha256 = "0qarcdwyd1pbcaqzzhzq4sh8d278j1xxf90ibp6h1451fcvkymid";
     };
     meta.homepage = "https://github.com/folke/which-key.nvim/";
   };
 
   wildfire-vim = buildVimPluginFrom2Nix {
     pname = "wildfire-vim";
-    version = "2014-11-16";
+    version = "2021-05-09";
     src = fetchFromGitHub {
       owner = "gcmt";
       repo = "wildfire.vim";
-      rev = "e2baded7162260e05d2527f5bca9fca81f0bc8f2";
-      sha256 = "01i12x8brsnqicj5vclg57nv6ha7nz70gilphf6sr14xr741ra1y";
+      rev = "2f6b7d7861cc4c9ff95338f150159e1ccee64d82";
+      sha256 = "1ppc7pqy7wbaac0cd9ng5hil1f7argsd5dvg3896z5iqpf5xhmrl";
     };
     meta.homepage = "https://github.com/gcmt/wildfire.vim/";
   };
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index 052822493c640..c1a880959a788 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -4,6 +4,7 @@ AckslD/nvim-whichkey-setup.lua@main
 ackyshake/Spacegray.vim@main
 airblade/vim-gitgutter
 airblade/vim-rooter
+ajmwagar/vim-deus
 akinsho/nvim-bufferline.lua
 akinsho/nvim-toggleterm.lua
 aklt/plantuml-syntax
diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix
index 4235ecb38d345..221f38faa8794 100644
--- a/pkgs/os-specific/linux/bcc/default.nix
+++ b/pkgs/os-specific/linux/bcc/default.nix
@@ -6,7 +6,7 @@
 
 python.pkgs.buildPythonApplication rec {
   pname = "bcc";
-  version = "0.19.0";
+  version = "0.20.0";
 
   disabled = !stdenv.isLinux;
 
@@ -14,12 +14,12 @@ python.pkgs.buildPythonApplication rec {
     owner = "iovisor";
     repo = "bcc";
     rev = "v${version}";
-    sha256 = "sha256:0k807vzznlb2icczw64ph6q28605kvghya2kd4h3c7jmap6gq1qg";
+    sha256 = "1xnpz2zv445dp5h0160drv6xlvrnwfj23ngc4dp3clcd59jh1baq";
   };
   format = "other";
 
   buildInputs = with llvmPackages; [
-    llvm clang-unwrapped kernel
+    llvm llvm.dev libclang kernel
     elfutils luajit netperf iperf
     systemtap.stapBuild flex bash
     libbpf
@@ -32,7 +32,7 @@ python.pkgs.buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = [ python.pkgs.netaddr ];
-  nativeBuildInputs = [ makeWrapper cmake flex bison ]
+  nativeBuildInputs = [ makeWrapper cmake flex bison llvmPackages.llvm.dev ]
     # libelf is incompatible with elfutils-libelf
     ++ lib.filter (x: x != libelf) kernel.moduleBuildDependencies;
 
diff --git a/pkgs/os-specific/linux/bpftrace/default.nix b/pkgs/os-specific/linux/bpftrace/default.nix
index 701fed06bb626..3a18202c6c0e3 100644
--- a/pkgs/os-specific/linux/bpftrace/default.nix
+++ b/pkgs/os-specific/linux/bpftrace/default.nix
@@ -16,12 +16,12 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = with llvmPackages;
-    [ llvm clang-unwrapped
+    [ llvm libclang
       kernel elfutils libelf bcc
       libbpf libbfd libopcodes
     ];
 
-  nativeBuildInputs = [ cmake pkg-config flex bison ]
+  nativeBuildInputs = [ cmake pkg-config flex bison llvmPackages.llvm.dev ]
     # libelf is incompatible with elfutils-libelf
     ++ lib.filter (x: x != libelf) kernel.moduleBuildDependencies;
 
diff --git a/pkgs/os-specific/linux/eventstat/default.nix b/pkgs/os-specific/linux/eventstat/default.nix
index 6eaa58f353a1f..55b00ab8719ec 100644
--- a/pkgs/os-specific/linux/eventstat/default.nix
+++ b/pkgs/os-specific/linux/eventstat/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "eventstat";
-  version = "0.04.11";
+  version = "0.04.12";
   src = fetchzip {
     url = "https://kernel.ubuntu.com/~cking/tarballs/eventstat/eventstat-${version}.tar.gz";
-    sha256 = "0hsi5w8dmqwwdahnqvs83bam3j1cagw1ggm06d35dfwy5xknc5i4";
+    sha256 = "sha256-XBSs/jZodCpI9BHgAF8+bE23gRCr2uebYiMJxxB8T5E=";
   };
   buildInputs = [ ncurses ];
   installFlags = [ "DESTDIR=$(out)" ];
diff --git a/pkgs/os-specific/linux/i2c-tools/default.nix b/pkgs/os-specific/linux/i2c-tools/default.nix
index 23bc89b7d1c92..5c05ca6082e4d 100644
--- a/pkgs/os-specific/linux/i2c-tools/default.nix
+++ b/pkgs/os-specific/linux/i2c-tools/default.nix
@@ -1,12 +1,18 @@
-{ lib, stdenv, fetchurl, perl, read-edid }:
+{ lib
+, stdenv
+, fetchgit
+, perl
+, read-edid
+}:
 
 stdenv.mkDerivation rec {
   pname = "i2c-tools";
   version = "4.2";
 
-  src = fetchurl {
-    url = "https://www.kernel.org/pub/software/utils/i2c-tools/${pname}-${version}.tar.xz";
-    sha256 = "1mmc1n8awl3winyrp1rcxg94vjsx9dc1y7gj7y88blc2f2ydmwip";
+  src = fetchgit {
+    url = "https://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git";
+    rev = "v${version}";
+    sha256 = "0vqrbp10klr7ylarr6cy1q7nafiqaky4iq5my5dqy101h93vg4pg";
   };
 
   buildInputs = [ perl ];
@@ -18,6 +24,8 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
+  outputs = [ "out" "man" ];
+
   postInstall = ''
     rm -rf $out/include # Installs include/linux/i2c-dev.h that conflics with kernel headers
   '';
@@ -25,7 +33,8 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Set of I2C tools for Linux";
     homepage = "https://i2c.wiki.kernel.org/index.php/I2C_Tools";
-    license = licenses.gpl2;
+    # library is LGPL 2.1 or later; "most tools" GPL 2 or later
+    license = with licenses; [ lgpl21Plus gpl2Plus ];
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/os-specific/linux/kernel/hardened/patches.json b/pkgs/os-specific/linux/kernel/hardened/patches.json
index 0222fe5d5a7d2..d97341fccca1d 100644
--- a/pkgs/os-specific/linux/kernel/hardened/patches.json
+++ b/pkgs/os-specific/linux/kernel/hardened/patches.json
@@ -1,32 +1,32 @@
 {
     "4.14": {
         "extra": "-hardened1",
-        "name": "linux-hardened-4.14.231-hardened1.patch",
-        "sha256": "0camacpjlix1ajx2z1krsv7j5m9g7vaikp2qsa43w3xxgms1slp6",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.231-hardened1/linux-hardened-4.14.231-hardened1.patch"
+        "name": "linux-hardened-4.14.232-hardened1.patch",
+        "sha256": "141bjr8z5gg5c9bwbq2krhpwzhs225g5465izgz38sls57dllll4",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.232-hardened1/linux-hardened-4.14.232-hardened1.patch"
     },
     "4.19": {
         "extra": "-hardened1",
-        "name": "linux-hardened-4.19.188-hardened1.patch",
-        "sha256": "1l5hmfzkp9aajj48xny2khrg54501m57llykp6p3vpg9hwh19j1q",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.188-hardened1/linux-hardened-4.19.188-hardened1.patch"
+        "name": "linux-hardened-4.19.190-hardened1.patch",
+        "sha256": "111pxnnmajd1c7p51v99qc28dq7hrhji6ja0i5m46d2r8am1z4cz",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.190-hardened1/linux-hardened-4.19.190-hardened1.patch"
     },
     "5.10": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.10.32-hardened1.patch",
-        "sha256": "0vl01f6kpb38qv9855x1c4fzih1xmfb1xby70dzfkp5bg53ms5r3",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.32-hardened1/linux-hardened-5.10.32-hardened1.patch"
+        "name": "linux-hardened-5.10.35-hardened1.patch",
+        "sha256": "133k9h187jpkyfqrd66v4k0z3l3gg6r0g4x8nsic9sarapdd62v7",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.35-hardened1/linux-hardened-5.10.35-hardened1.patch"
     },
     "5.11": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.11.16-hardened1.patch",
-        "sha256": "1fxf1qcqrvgywxnyywsbav80ys0y4c9qg6s8ygmplyjvncd9005l",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.11.16-hardened1/linux-hardened-5.11.16-hardened1.patch"
+        "name": "linux-hardened-5.11.19-hardened1.patch",
+        "sha256": "16czmg41nijl7zaahb4ggi8z7hizc0qsqg3az8vzll5kvzzr313f",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.11.19-hardened1/linux-hardened-5.11.19-hardened1.patch"
     },
     "5.4": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.4.114-hardened1.patch",
-        "sha256": "0zbn9x59m6b62c9hjp47xkg1qk8a489nd99px2g4i24mnhgan0kf",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.114-hardened1/linux-hardened-5.4.114-hardened1.patch"
+        "name": "linux-hardened-5.4.117-hardened1.patch",
+        "sha256": "0b9mfw49yrdgsj9804nh0qxzj49z2xb1jvxhvdxpm9yjlnyw85bv",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.117-hardened1/linux-hardened-5.4.117-hardened1.patch"
     }
 }
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 9ec576a1aa69a..431180c34bba0 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.14.231";
+  version = "4.14.232";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "10k63vwibygdd6gzs4r6rncqqa0qf8cbnqznhbfsi41lxsnpjfsp";
+    sha256 = "0sa3sz7bznlhijd0iwv37nyrrnw34iq6dq1bqr6cj2wpyrhr7h8x";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_14 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index b1140311b60ff..5357251720be9 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.19.188";
+  version = "4.19.190";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0xq00mwgclk89bk5jpmncjnz7vsq353qrnc0cjp0n9mi4vqg375h";
+    sha256 = "0pf8py0id0r8wzr5050bik1sbhl8gsznnr5bvcmrs4jkhpp2m73g";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_19 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 2cc14e6cf6708..7ba90db9aedd0 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,12 +1,12 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.267";
+  version = "4.4.268";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1qk629fsl1glr0h1hxami3f4ivgl58iqsnw43slvn1yc91cb7ws4";
+    sha256 = "1srk08kaxq5jjlqx804cgjffhcsrdkv3idh8ipagl6v2w4kas5v8";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_4 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index eb6ef73dd192a..c6308a178e4bf 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.267";
+  version = "4.9.268";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0q0a49b3wsxk9mqyy8b55lr1gmiqxjpqh2nlhj4xwcfzd7z9lfwq";
+    sha256 = "0aknrlf5q0dsqib8c9klmf5c60dy7hg2zksb020qvyrp077gcrjv";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_9 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix
index cd09eadea1d1e..f40e7740c45a3 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.10.32";
+  version = "5.10.35";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1fnp0wyiswg8q4w89ssm1fz1ryfc1567fx08bz3fmf2cdqr8wkv4";
+    sha256 = "1zcqsjzqgcvlhkjwhzs6sxgbhzkfg898pbisivjqfymp8nfs2dxc";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_10 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-5.11.nix b/pkgs/os-specific/linux/kernel/linux-5.11.nix
index 6dc3a2772a0c7..9d704bf30785e 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.11.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.11.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.11.16";
+  version = "5.11.19";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0hqgai4r40xxlfqp1paxhn2g4i4yqvi1k473dddcxjrhs60kc5i1";
+    sha256 = "0jrb8wbxj0dadyadggcn49hlxzxgz8mz8xr0ckgbnnvb8snikvjs";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_11 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index e18cf2e23fdca..ebb7ffca409ed 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.4.114";
+  version = "5.4.117";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0mwmvvz817zgxalb2xcx0i49smjag6j81vmqxp2kpwjqrf3z165y";
+    sha256 = "0w679qymqh8dlb1mh2vxr382m1pzxdjwlp3bqzjr4043fmbrp62f";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_4 ];
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index 6e264a3ec63b5..ea04414804c7d 100644
--- a/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
-    rev = "17990";
-    sha256 = "1hras4018lgvql1zxw26fzcvk0w1xh6pyh3kmhxxh23k61zl83zk";
+    rev = "18063";
+    sha256 = "1mmijqra6sq2pcc8yhh8m4k6x0dvhnq4xxzm1qs7kdznj2zwr8is";
   }
 , ...
 }:
diff --git a/pkgs/os-specific/linux/kernel/linux-lqx.nix b/pkgs/os-specific/linux/kernel/linux-lqx.nix
index c279edee2f1c6..1494508cb0141 100644
--- a/pkgs/os-specific/linux/kernel/linux-lqx.nix
+++ b/pkgs/os-specific/linux/kernel/linux-lqx.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub, buildLinux, linux_zen, ... } @ args:
 
 let
-  version = "5.11.18";
+  version = "5.11.19";
   suffix = "lqx1";
 in
 
@@ -14,7 +14,7 @@ buildLinux (args // {
     owner = "zen-kernel";
     repo = "zen-kernel";
     rev = "v${version}-${suffix}";
-    sha256 = "0fz0s6bdcvbzy1149acqkq3aqg481dwiq85wh7ii1hx6p1gbsx71";
+    sha256 = "17gdlkixsy68j6c7lpkkk242x71rqj78hpqg3kp01fckj633za5n";
   };
 
   extraMeta = {
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
index 382588c157ac4..368d65d75bbd3 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.10.30-rt37"; # updated by ./update-rt.sh
+  version = "5.10.30-rt38"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -25,7 +25,7 @@ in buildLinux (args // {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "1jibjfmjyn90n5jz5vq056n9xfzn9p8g9fsv7nmj5mfxxm4qhjal";
+      sha256 = "0f8wcs0y1qx3kqsan8g7bh1my2yc77k6d1g3q12nfxvbmlgs766n";
     };
   }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
index 37ea8ab86fdd9..34efc8e21ee9b 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.4.109-rt56"; # updated by ./update-rt.sh
+  version = "5.4.115-rt57"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -14,14 +14,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "1vmpc6yrr2zm4m3naflwik5111jr8hy0mnyddwk31l0p4xbg8smc";
+    sha256 = "1llxk04vlpi7a4ca2f5vlcxfn68n8yhmsar3hsl259i7hms28isv";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "08cg8b7mwihs8zgdh0jwi8hrn3hnf9j0jyplsyc7644wd6mqby4a";
+      sha256 = "1xh7xi27q58njhfayi2lnk4id7hnlklkgh2zx012gxv4ari76g0k";
     };
   }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches;
 
diff --git a/pkgs/os-specific/linux/klibc/default.nix b/pkgs/os-specific/linux/klibc/default.nix
index dc96f3b6a6211..522a74dea01a6 100644
--- a/pkgs/os-specific/linux/klibc/default.nix
+++ b/pkgs/os-specific/linux/klibc/default.nix
@@ -9,11 +9,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "klibc";
-  version = "2.0.8";
+  version = "2.0.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/libs/klibc/2.0/klibc-${version}.tar.xz";
-    sha256 = "0dmlkhnn5q8fc6rkzsisir4chkzmmiq6xkjmvyvf0g7yihwz2j2f";
+    sha256 = "sha256-bcynCJEzINJjCfBbDCv2gHG/EbPa3MTmx9kjg3/CPuE=";
   };
 
   patches = [ ./no-reinstall-kernel-headers.patch ];
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
index 5874f334fedb9..01d0fa823b9b5 100644
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
@@ -214,6 +214,47 @@ nixBuild() {
   fi
 }
 
+nixFlakeBuild() {
+    if [ -z "$buildHost" ]; then
+        nix build "$@" --out-link "${tmpDir}/result"
+        readlink -f "${tmpDir}/result"
+    else
+        local attr="$1"
+        shift 1
+        local evalArgs=()
+        local buildArgs=()
+        while [ "$#" -gt 0 ]; do
+            local i="$1"; shift 1
+            case "$i" in
+              --recreate-lock-file|--no-update-lock-file|--no-write-lock-file|--no-registries|--commit-lock-file)
+                evalArgs+=("$i")
+                ;;
+              --update-input)
+                local j="$1"; shift 1
+                evalArgs+=("$i" "$j")
+                ;;
+              --override-input)
+                local j="$1"; shift 1
+                local k="$1"; shift 1
+                evalArgs+=("$i" "$j" "$k")
+                ;;
+              *)
+                buildArgs+=("$i")
+                ;;
+            esac
+        done
+
+        local drv="$(nix "${flakeFlags[@]}" eval --raw "${attr}.drvPath" "${evalArgs[@]}" "${extraBuildArgs[@]}")"
+        if [ -a "$drv" ]; then
+            NIX_SSHOPTS=$SSHOPTS nix "${flakeFlags[@]}" copy --derivation --to "ssh://$buildHost" "$drv"
+            buildHostCmd nix-store -r "$drv" "${buildArgs[@]}"
+        else
+            echo "nix eval failed"
+            exit 1
+        fi
+    fi
+}
+
 
 if [ -z "$action" ]; then showSyntax; fi
 
@@ -418,10 +459,7 @@ if [ -z "$rollback" ]; then
         if [[ -z $flake ]]; then
             pathToConfig="$(nixBuild '<nixpkgs/nixos>' --no-out-link -A system "${extraBuildFlags[@]}")"
         else
-            outLink=$tmpDir/result
-            nix "${flakeFlags[@]}" build "$flake#$flakeAttr.config.system.build.toplevel" \
-              "${extraBuildFlags[@]}" "${lockFlags[@]}" --out-link $outLink
-            pathToConfig="$(readlink -f $outLink)"
+            pathToConfig="$(nixFlakeBuild "$flake#$flakeAttr.config.system.build.toplevel" "${extraBuildFlags[@]}" "${lockFlags[@]}")"
         fi
         copyToTarget "$pathToConfig"
         targetHostCmd nix-env -p "$profile" --set "$pathToConfig"
@@ -429,24 +467,19 @@ if [ -z "$rollback" ]; then
         if [[ -z $flake ]]; then
             pathToConfig="$(nixBuild '<nixpkgs/nixos>' -A system -k "${extraBuildFlags[@]}")"
         else
-            nix "${flakeFlags[@]}" build "$flake#$flakeAttr.config.system.build.toplevel" "${extraBuildFlags[@]}" "${lockFlags[@]}"
-            pathToConfig="$(readlink -f ./result)"
+            pathToConfig="$(nixFlakeBuild "$flake#$flakeAttr.config.system.build.toplevel" "${extraBuildFlags[@]}" "${lockFlags[@]}")"
         fi
     elif [ "$action" = build-vm ]; then
         if [[ -z $flake ]]; then
             pathToConfig="$(nixBuild '<nixpkgs/nixos>' -A vm -k "${extraBuildFlags[@]}")"
         else
-            nix "${flakeFlags[@]}" build "$flake#$flakeAttr.config.system.build.vm" \
-              "${extraBuildFlags[@]}" "${lockFlags[@]}"
-            pathToConfig="$(readlink -f ./result)"
+            pathToConfig="$(nixFlakeBuild "$flake#$flakeAttr.config.system.build.vm" "${extraBuildFlags[@]}" "${lockFlags[@]}")"
         fi
     elif [ "$action" = build-vm-with-bootloader ]; then
         if [[ -z $flake ]]; then
             pathToConfig="$(nixBuild '<nixpkgs/nixos>' -A vmWithBootLoader -k "${extraBuildFlags[@]}")"
         else
-            nix "${flakeFlags[@]}" build "$flake#$flakeAttr.config.system.build.vmWithBootLoader" \
-              "${extraBuildFlags[@]}" "${lockFlags[@]}"
-            pathToConfig="$(readlink -f ./result)"
+            pathToConfig="$(nixFlakeBuild "$flake#$flakeAttr.config.system.build.vmWithBootLoader" "${extraBuildFlags[@]}" "${lockFlags[@]}")"
         fi
     else
         showSyntax
diff --git a/pkgs/os-specific/linux/openrazer/driver.nix b/pkgs/os-specific/linux/openrazer/driver.nix
index 4745ba818a905..07113e6286251 100644
--- a/pkgs/os-specific/linux/openrazer/driver.nix
+++ b/pkgs/os-specific/linux/openrazer/driver.nix
@@ -10,7 +10,8 @@ let
   common = import ../../../development/python-modules/openrazer/common.nix { inherit lib fetchFromGitHub; };
 in
 stdenv.mkDerivation (common // {
-  name = "openrazer-${common.version}-${kernel.version}";
+  pname = "openrazer";
+  version = "${common.version}-${kernel.version}";
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
@@ -19,6 +20,8 @@ stdenv.mkDerivation (common // {
   ];
 
   installPhase = ''
+    runHook preInstall
+
     binDir="$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid"
     mkdir -p "$binDir"
     cp -v driver/*.ko "$binDir"
@@ -32,9 +35,12 @@ stdenv.mkDerivation (common // {
       --replace /usr/bin/logger ${util-linux}/bin/logger \
       --replace chgrp ${coreutils}/bin/chgrp \
       --replace "PATH='/sbin:/bin:/usr/sbin:/usr/bin'" ""
+
+    runHook postInstall
   '';
 
   meta = common.meta // {
     description = "An entirely open source Linux driver that allows you to manage your Razer peripherals on GNU/Linux";
+    broken = kernel.kernelOlder "4.19";
   };
 })
diff --git a/pkgs/os-specific/linux/rtl8812au/default.nix b/pkgs/os-specific/linux/rtl8812au/default.nix
index 68a88fb6778db..0ed6b443e043b 100644
--- a/pkgs/os-specific/linux/rtl8812au/default.nix
+++ b/pkgs/os-specific/linux/rtl8812au/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, kernel, bc, nukeReferences }:
 
 stdenv.mkDerivation rec {
-  name = "rtl8812au-${kernel.version}-${version}";
-  version = "5.6.4.2_35491.20200702";
+  pname = "rtl8812au";
+  version = "${kernel.version}-5.9.3.2.20210427";
 
   src = fetchFromGitHub {
     owner = "gordboy";
-    repo = "rtl8812au-5.6.4.2";
-    rev = "3110ad65d0f03532bd97b1017cae67ca86dd34f6";
-    sha256 = "0p0cv67dfr41npxn0c1frr0k9wiv0pdbvlzlmclgixn39xc6n5qz";
+    repo = "rtl8812au-5.9.3.2";
+    rev = "6ef5d8fcdb0b94b7490a9a38353877708fca2cd4";
+    sha256 = "sha256-czExf4z0nf7XEJ1YnRSB3CrGV6NTmUKDiZjLmrh6Hwo=";
   };
 
   nativeBuildInputs = [ bc nukeReferences ];
@@ -42,9 +42,10 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Driver for Realtek 802.11ac, rtl8812au, provides the 8812au mod";
-    homepage = "https://github.com/gordboy/rtl8812au-5.6.4.2";
-    license = licenses.gpl2;
+    homepage = "https://github.com/gordboy/rtl8812au-5.9.3.2";
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ danielfullmer ];
+    broken = kernel.kernelOlder "4.10" || kernel.isHardened;
   };
 }
diff --git a/pkgs/servers/atlassian/confluence.nix b/pkgs/servers/atlassian/confluence.nix
index a7c9464fcaec3..61b664d5705a9 100644
--- a/pkgs/servers/atlassian/confluence.nix
+++ b/pkgs/servers/atlassian/confluence.nix
@@ -8,11 +8,11 @@ assert withMysql -> (mysql_jdbc != null);
 
 stdenvNoCC.mkDerivation rec {
   pname = "atlassian-confluence";
-  version = "7.10.1";
+  version = "7.11.0";
 
   src = fetchurl {
     url = "https://product-downloads.atlassian.com/software/confluence/downloads/${pname}-${version}.tar.gz";
-    sha256 = "sha256-ScE0UXmoxHb7HOJhSfOLXj3Wb3/XitFuOR36Iktmgxk=";
+    sha256 = "sha256-/D/fMg+WRkGGV4NG73gvVDZwwi/8BB0w6IWK/OQ3caA=";
   };
 
   buildPhase = ''
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 995ff86259147..6feb4f6bd03bf 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "atlassian-jira";
-  version = "8.14.0";
+  version = "8.14.1";
 
   src = fetchurl {
     url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "12dm0sasw98ywd074rjd9hnbymvy8z16bicjxfxqz91n1y13732i";
+    sha256 = "sha256-AtBkGODC8x25GQENRSRiptUvDIcHGg9JnqVnDxXzmmQ=";
   };
 
   buildPhase = ''
diff --git a/pkgs/servers/bazarr/default.nix b/pkgs/servers/bazarr/default.nix
index 24da18c4a877c..7e73494088551 100644
--- a/pkgs/servers/bazarr/default.nix
+++ b/pkgs/servers/bazarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bazarr";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchurl {
     url = "https://github.com/morpheus65535/bazarr/archive/v${version}.tar.gz";
-    sha256 = "1qnzjqpwsvanfhd1yn5789yx4d3ijk9983llm0w5xnjz6rmcxrw5";
+    sha256 = "sha256-N0HoZgAtWPgYPU9OWpMEXO2qUoNIGCsFn9vll0hLal0=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/beanstalkd/default.nix b/pkgs/servers/beanstalkd/default.nix
index 01af8a4d5bc8c..9bfe3182d6539 100644
--- a/pkgs/servers/beanstalkd/default.nix
+++ b/pkgs/servers/beanstalkd/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, installShellFiles }:
+{ lib, stdenv, fetchurl, installShellFiles, nixosTests }:
 
 stdenv.mkDerivation rec {
   version = "1.12";
@@ -19,6 +19,10 @@ stdenv.mkDerivation rec {
     installManPage doc/beanstalkd.1
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.beanstalkd;
+  };
+
   meta = with lib; {
     homepage = "http://kr.github.io/beanstalkd/";
     description = "A simple, fast work queue";
diff --git a/pkgs/servers/blockbook/default.nix b/pkgs/servers/blockbook/default.nix
index 2394ef258a91f..5ab10af18c03b 100644
--- a/pkgs/servers/blockbook/default.nix
+++ b/pkgs/servers/blockbook/default.nix
@@ -9,6 +9,7 @@
 , snappy
 , zeromq
 , zlib
+, nixosTests
 }:
 
 buildGoModule rec {
@@ -54,6 +55,10 @@ buildGoModule rec {
     cp -r $src/static/css/ $out/share/
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.blockbook-frontend;
+  };
+
   meta = with lib; {
     description = "Trezor address/account balance backend";
     homepage = "https://github.com/trezor/blockbook";
diff --git a/pkgs/servers/gerbera/default.nix b/pkgs/servers/gerbera/default.nix
index c7e560f9e6190..bc0bfa23d7b38 100644
--- a/pkgs/servers/gerbera/default.nix
+++ b/pkgs/servers/gerbera/default.nix
@@ -20,13 +20,13 @@ let
   optionOnOff = option: if option then "on" else "off";
 in stdenv.mkDerivation rec {
   pname = "gerbera";
-  version = "1.7.0";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     repo = "gerbera";
     owner = "gerbera";
     rev = "v${version}";
-    sha256 = "sha256-unBToiLSpTtnung77z65iuUqiQHwfMVgmFZMUtKU7fQ=";
+    sha256 = "sha256-i33pAgSOjVOoj0qGBnb8hpRMqgTCBTQmKTuZ9AkvoPg=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index f1349e522529f..f535477827c2f 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -333,6 +333,7 @@ in with py.pkgs; buildPythonApplication rec {
     "rituals_perfume_genie"
     "rmvtransport"
     "roku"
+    "roomba"
     "rss_feed_template"
     "ruckus_unleashed"
     "safe_mode"
@@ -389,6 +390,7 @@ in with py.pkgs; buildPythonApplication rec {
     "wled"
     "workday"
     "worldclock"
+    "xiaomi_miio"
     "yeelight"
     "zeroconf"
     "zha"
diff --git a/pkgs/servers/http/apache-httpd/2.4.nix b/pkgs/servers/http/apache-httpd/2.4.nix
index 164293a5b5e33..3fff2ac9fceb6 100644
--- a/pkgs/servers/http/apache-httpd/2.4.nix
+++ b/pkgs/servers/http/apache-httpd/2.4.nix
@@ -1,4 +1,5 @@
 { lib, stdenv, fetchurl, perl, zlib, apr, aprutil, pcre, libiconv, lynx
+, nixosTests
 , proxySupport ? true
 , sslSupport ? true, openssl
 , http2Support ? true, nghttp2
@@ -85,6 +86,9 @@ stdenv.mkDerivation rec {
 
   passthru = {
     inherit apr aprutil sslSupport proxySupport ldapSupport luaSupport lua5;
+    tests = {
+      acme-integration = nixosTests.acme;
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/servers/http/apt-cacher-ng/default.nix b/pkgs/servers/http/apt-cacher-ng/default.nix
index c79a9fe3fd270..9e40bb648ea50 100644
--- a/pkgs/servers/http/apt-cacher-ng/default.nix
+++ b/pkgs/servers/http/apt-cacher-ng/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "apt-cacher-ng";
-  version = "3.6.1";
+  version = "3.6.3";
 
   src = fetchurl {
     url = "http://ftp.debian.org/debian/pool/main/a/apt-cacher-ng/apt-cacher-ng_${version}.orig.tar.xz";
-    sha256 = "sha256-avyjp4KH7l6OZxnMVDv1U/MIWcadqyPPtnLYzEYkqlA=";
+    sha256 = "sha256-P4ArWpxjOjBi9EiDp/ord17GfUOFwpiTKGvSEuZljGA=";
   };
 
   nativeBuildInputs = [ cmake doxygen pkg-config ];
diff --git a/pkgs/servers/http/nginx/generic.nix b/pkgs/servers/http/nginx/generic.nix
index 663193789a5b4..e13c0b4e92234 100644
--- a/pkgs/servers/http/nginx/generic.nix
+++ b/pkgs/servers/http/nginx/generic.nix
@@ -145,6 +145,7 @@ stdenv.mkDerivation {
     tests = {
       inherit (nixosTests) nginx nginx-auth nginx-etag nginx-pubhtml nginx-sandbox nginx-sso;
       variants = lib.recurseIntoAttrs nixosTests.nginx-variants;
+      acme-integration = nixosTests.acme;
     };
   };
 
diff --git a/pkgs/servers/lidarr/default.nix b/pkgs/servers/lidarr/default.nix
index 60c2027e552fb..9bd998cd85057 100644
--- a/pkgs/servers/lidarr/default.nix
+++ b/pkgs/servers/lidarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "lidarr";
-  version = "0.7.2.1878";
+  version = "0.8.1.2135";
 
   src = fetchurl {
     url = "https://github.com/lidarr/Lidarr/releases/download/v${version}/Lidarr.master.${version}.linux.tar.gz";
-    sha256 = "0kv0x3vvv4rp3i5k5985zp95mm8ca7gpm7kr82l11v3hm3n6yvqn";
+    sha256 = "sha256-eJX6t19D2slX68fXSMd/Vix3XSgCVylK+Wd8VH9jsuI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/misc/navidrome/default.nix b/pkgs/servers/misc/navidrome/default.nix
index b4dfc4791b766..532f7734acbba 100644
--- a/pkgs/servers/misc/navidrome/default.nix
+++ b/pkgs/servers/misc/navidrome/default.nix
@@ -4,11 +4,11 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "navidrome";
-  version = "0.40.0";
+  version = "0.42.1";
 
   src = fetchurl {
     url = "https://github.com/deluan/navidrome/releases/download/v${version}/navidrome_${version}_Linux_x86_64.tar.gz";
-    sha256 = "sha256-sBITCHyji55OnopNlDCNypSf/j8LKtarSGPYz5fQZys=";
+    sha256 = "1bndqs689rc7pf1l08rlph8h3f86kr1c7i96szs4wkycfy9w8vsv";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -18,8 +18,12 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
+    runHook preInstall
+
      mkdir -p $out/bin
      cp navidrome $out/bin
+
+    runHook postInstall
   '';
 
   postFixup = ''
@@ -30,7 +34,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Navidrome Music Server and Streamer compatible with Subsonic/Airsonic";
     homepage = "https://www.navidrome.org/";
-    license = licenses.gpl3;
+    license = licenses.gpl3Only;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ aciceri ];
   };
diff --git a/pkgs/servers/nosql/victoriametrics/default.nix b/pkgs/servers/nosql/victoriametrics/default.nix
index d7612d30764a0..12ad703751210 100644
--- a/pkgs/servers/nosql/victoriametrics/default.nix
+++ b/pkgs/servers/nosql/victoriametrics/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "VictoriaMetrics";
-  version = "1.54.1";
+  version = "1.59.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-nZSNn1vLk3y6s4ie1AkSkGmKUiIrcBr3yKW5uAEtRt0=";
+    sha256 = "sha256-2i9rmk9aAnjTJY+w/NKJOaLX+tpkt3vG07iLCsSGzdU=";
   };
 
   vendorSha256 = null;
@@ -22,5 +22,7 @@ buildGoModule rec {
     description = "fast, cost-effective and scalable time series database, long-term remote storage for Prometheus";
     license = licenses.asl20;
     maintainers = [ maintainers.yorickvp ];
+    changelog = "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v${version}";
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/servers/radarr/default.nix b/pkgs/servers/radarr/default.nix
index 47edb29723e35..fb5792c6e42b4 100644
--- a/pkgs/servers/radarr/default.nix
+++ b/pkgs/servers/radarr/default.nix
@@ -9,14 +9,14 @@ let
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   hash = {
-    x64-linux_hash = "sha256-bTh+Z5w5ZkL2iPteStqVcoFDGZIbpVjuXn20TZsfgtY=";
-    arm64-linux_hash = "sha256-aIzVSIRuGNiIFJPToXCQwYsbICKuPtwKATnQhkxvJuA=";
-    x64-osx_hash = "sha256-FxRSAJvRQya2x1kei6yRceGcyQ2mCaFveyeMGw0Jqw4=";
+    x64-linux_hash = "sha256-5W4X1E7794hFVPo4+s826CNIrw6Z/n0cDjj6pmsj2Dk=";
+    arm64-linux_hash = "sha256-gqCgToAVIS+IEulFY4mo2Mtcb3nyFpzDBqVEewREQcs=";
+    x64-osx_hash = "sha256-MFpIzSYAvAWVHMdEd+aP67s3po+yb3qWzSd/Ko++5Jc=";
   }."${arch}-${os}_hash";
 
 in stdenv.mkDerivation rec {
   pname = "radarr";
-  version = "3.0.2.4552";
+  version = "3.1.1.4954";
 
   src = fetchurl {
     url = "https://github.com/Radarr/Radarr/releases/download/v${version}/Radarr.master.${version}.${os}-core-${arch}.tar.gz";
diff --git a/pkgs/servers/sickbeard/sickgear.nix b/pkgs/servers/sickbeard/sickgear.nix
index 85ed2808d7872..f713ab39cb969 100644
--- a/pkgs/servers/sickbeard/sickgear.nix
+++ b/pkgs/servers/sickbeard/sickgear.nix
@@ -4,13 +4,13 @@ let
   pythonEnv = python2.withPackages(ps: with ps; [ cheetah ]);
 in stdenv.mkDerivation rec {
   pname = "sickgear";
-  version = "0.23.15";
+  version = "0.23.16";
 
   src = fetchFromGitHub {
     owner = "SickGear";
     repo = "SickGear";
     rev = "release_${version}";
-    sha256 = "sha256-xZ2SgYSEamh+Z64VKvIemqJLH/WjJHFji5qIameF5hM=";
+    sha256 = "sha256-Kx3vTbwYfILxn7n4upyVZo0V6S2lTStlezku9bfwGVw=";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index e70d43a1505e0..db588b3abe01f 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -22,14 +22,14 @@ mariadb = server // {
 };
 
 common = rec { # attributes common to both builds
-  version = "10.5.8";
+  version = "10.5.10";
 
   src = fetchurl {
     urls = [
       "https://downloads.mariadb.org/f/mariadb-${version}/source/mariadb-${version}.tar.gz"
       "https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz"
     ];
-    sha256 = "1s3vfm73911cddjhgpcbkya6nz7ag2zygg56qqzwscn5ybv28j7b";
+    sha256 = "1fxsq2xgcb8j81z043bifpmxblj6nb3wqjm9rgsnpwmazkwk5zx5";
     name   = "mariadb-${version}.tar.gz";
   };
 
diff --git a/pkgs/servers/sql/mariadb/galera/default.nix b/pkgs/servers/sql/mariadb/galera/default.nix
index 3c13388c4602d..165b92162407e 100644
--- a/pkgs/servers/sql/mariadb/galera/default.nix
+++ b/pkgs/servers/sql/mariadb/galera/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, buildEnv
-, asio, boost, check, openssl, scons
+, asio, boost, check, openssl, cmake
 }:
 
 let
@@ -10,50 +10,33 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "mariadb-galera";
-  version = "26.4.7";
+  version = "26.4.8";
 
   src = fetchFromGitHub {
     owner = "codership";
     repo = "galera";
     rev = "release_${version}";
-    sha256 = "0h7s670pcasq8wzprhyxqfca2cghi62b8xz2kikb2a86wd453qil";
+    sha256 = "0rx710dfijiykpi41rhxx8vafk07bffv2nbl3d4ggc32rzv88369";
     fetchSubmodules = true;
   };
 
-  buildInputs = [ asio boost check openssl scons ];
-
-  postPatch = ''
-    substituteInPlace SConstruct \
-      --replace "boost_library_path = '''" "boost_library_path = '${boost}/lib'"
-  '';
+  buildInputs = [ asio boost check openssl cmake ];
 
   preConfigure = ''
-    export CPPFLAGS="-I${asio}/include -I${boost.dev}/include -I${check}/include -I${openssl.dev}/include"
-    export LIBPATH="${galeraLibs}/lib"
+    # make sure bundled asio cannot be used, but leave behind license, because it gets installed
+    rm -r asio/{asio,asio.hpp}
   '';
 
-  sconsFlags = "ssl=1 system_asio=1 strict_build_flags=0";
-
-  enableParallelBuilding = true;
-
-  installPhase = ''
-    # copied with modifications from scripts/packages/freebsd.sh
-    GALERA_LICENSE_DIR="$share/licenses/${pname}-${version}"
-    install -d $out/{bin,lib/galera,share/doc/galera,$GALERA_LICENSE_DIR}
-    install -m 555 "garb/garbd"                       "$out/bin/garbd"
-    install -m 444 "libgalera_smm.so"                 "$out/lib/galera/libgalera_smm.so"
-    install -m 444 "scripts/packages/README"          "$out/share/doc/galera/"
-    install -m 444 "scripts/packages/README-MySQL"    "$out/share/doc/galera/"
-    install -m 444 "scripts/packages/freebsd/LICENSE" "$out/$GALERA_LICENSE_DIR"
-    install -m 444 "LICENSE"                          "$out/$GALERA_LICENSE_DIR/GPLv2"
-    install -m 444 "asio/LICENSE_1_0.txt"             "$out/$GALERA_LICENSE_DIR/LICENSE.asio"
+  postInstall = ''
+    # for backwards compatibility
+    ln -s . $out/lib/galera
   '';
 
   meta = with lib; {
     description = "Galera 3 wsrep provider library";
     homepage = "https://galeracluster.com/";
-    license = licenses.lgpl2;
-    maintainers = with maintainers; [ izorkin ];
+    license = licenses.lgpl2Only;
+    maintainers = with maintainers; [ ajs124 izorkin ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/servers/web-apps/galene/default.nix b/pkgs/servers/web-apps/galene/default.nix
index ae56fed52bd34..d377b00a300b4 100644
--- a/pkgs/servers/web-apps/galene/default.nix
+++ b/pkgs/servers/web-apps/galene/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "galene";
-  version = "0.3";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "jech";
     repo = "galene";
     rev = "galene-${version}";
-    sha256 = "1pl3mnkmfqykhq55q36kvvnvn9fgsk72pfa7nii3hywzad0bj0ar";
+    sha256 = "sha256-8CgNMI7zOeDxrnmQNDM61Bgpw+N0sc7HR9c+YsQTO5I=";
   };
 
-  vendorSha256 = "0jrc6y5chkj25bnpzn6blvfb0vd09h6fdcz75g54605z8nqd397p";
+  vendorSha256 = "sha256-qOHuZGMr0CPwy/DuuWYCDSe24Y6ivg1uQJGXCuKGV/M=";
 
   outputs = [ "out" "static" ];
 
diff --git a/pkgs/servers/web-apps/rss-bridge/default.nix b/pkgs/servers/web-apps/rss-bridge/default.nix
index 13ad9d69ad6b0..649b76f871c10 100644
--- a/pkgs/servers/web-apps/rss-bridge/default.nix
+++ b/pkgs/servers/web-apps/rss-bridge/default.nix
@@ -1,17 +1,17 @@
-{ config, lib, pkgs, fetchFromGitHub, stdenv, ... }:
+{ stdenv, lib, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   pname = "rss-bridge";
-  version = "2020-11-10";
+  version = "2021-04-25";
 
   src = fetchFromGitHub {
     owner = "RSS-Bridge";
     repo = "rss-bridge";
     rev = version;
-    sha256 = "00cp61lqvhi7b7j0rglsqg3l7cg8s9b8vq098bgvg5dygyi44hyv";
+    sha256 = "0dkw8xq710q0wclyr003357gk0vgb5pmpcx75k13pv56c3mrg9vm";
   };
 
-  patchPhase = ''
+  postPatch = ''
     substituteInPlace lib/rssbridge.php \
       --replace "define('PATH_CACHE', PATH_ROOT . 'cache/');" "define('PATH_CACHE', getenv('RSSBRIDGE_DATA') . '/cache/');" \
       --replace "define('FILE_CONFIG', PATH_ROOT . 'config.ini.php');" "define('FILE_CONFIG', getenv('RSSBRIDGE_DATA') . '/config.ini.php');" \
diff --git a/pkgs/tools/admin/acme.sh/default.nix b/pkgs/tools/admin/acme.sh/default.nix
index 63ca45452e650..2f8532448f345 100644
--- a/pkgs/tools/admin/acme.sh/default.nix
+++ b/pkgs/tools/admin/acme.sh/default.nix
@@ -1,13 +1,13 @@
 { stdenv, lib, fetchFromGitHub, makeWrapper, curl, openssl, socat, iproute2, unixtools, dnsutils }:
 stdenv.mkDerivation rec {
   pname = "acme.sh";
-  version = "2.8.8";
+  version = "2.8.9";
 
   src = fetchFromGitHub {
     owner = "Neilpang";
     repo = "acme.sh";
     rev = version;
-    sha256 = "1iqwzqgg26vsg7lwmgmga9y3ap9q8r5xyx799bj8kawnr8n6s4jd";
+    sha256 = "sha256-xiLAvxly4WbMb6DAXPsXJgQqVmTlX9cbqFECJQ+r0Jk=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index f89e02c8593b9..ac4d2799e49b6 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -21,18 +21,18 @@ let
   sources = name: system: {
     x86_64-darwin = {
       url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
-      sha256 = "0fb0bw16idj810si32fxqx1nl057bdsjk3pvkgzpf7j96v2lkw71";
+      sha256 = "1xb6s78q0fba45595d868vmbxdb41060jbygypfa5hvvcz8d8ayk";
     };
 
     x86_64-linux = {
       url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
-      sha256 = "0gnnp8whcx6ada8a4xs8kxrbza97zivk57r9qzv0q5arg4xslagr";
+      sha256 = "19ywvp7nm91rc32r7dzb6yf3ss74m3s01fh2xqnmdg382jjlzdby";
     };
   }.${system};
 
 in stdenv.mkDerivation rec {
   pname = "google-cloud-sdk";
-  version = "336.0.0";
+  version = "339.0.0";
 
   src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
 
diff --git a/pkgs/tools/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix
index 417e01a325d37..f0deb99c44fb4 100644
--- a/pkgs/tools/admin/lxd/default.nix
+++ b/pkgs/tools/admin/lxd/default.nix
@@ -18,13 +18,13 @@ let
 in
 buildGoPackage rec {
   pname = "lxd";
-  version = "4.13";
+  version = "4.14";
 
   goPackagePath = "github.com/lxc/lxd";
 
   src = fetchurl {
-    url = "https://github.com/lxc/lxd/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "0w2r80wf86jijgfxbkv06lgfhz4p2aaidsqd96bx3q1382nrbzcf";
+    url = "https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz";
+    sha256 = "1x9gv70j333w254jgg1n0kvxpwv6vww0v0i862pglq48xhdaa7hy";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/admin/pebble/default.nix b/pkgs/tools/admin/pebble/default.nix
index 4813f86ea641d..1fb902a8c8035 100644
--- a/pkgs/tools/admin/pebble/default.nix
+++ b/pkgs/tools/admin/pebble/default.nix
@@ -1,6 +1,7 @@
 { buildGoPackage
 , fetchFromGitHub
 , lib
+, nixosTests
 }:
 
 let
@@ -17,6 +18,10 @@ in buildGoPackage {
     sha256 = "1piwzzfqsdx6s2niczzp4mf4r3qn9nfdgpn7882g52cmmm0vzks2";
   };
 
+  passthru.tests = {
+    smoke-test = nixosTests.acme;
+  };
+
   meta = {
     homepage = "https://github.com/letsencrypt/pebble";
     description = "A miniature version of Boulder, Pebble is a small RFC 8555 ACME test server not suited for a production CA";
diff --git a/pkgs/tools/backup/bacula/default.nix b/pkgs/tools/backup/bacula/default.nix
index c2ed78823317b..cb4f5874bac10 100644
--- a/pkgs/tools/backup/bacula/default.nix
+++ b/pkgs/tools/backup/bacula/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bacula";
-  version = "11.0.1";
+  version = "11.0.2";
 
   src = fetchurl {
     url    = "mirror://sourceforge/bacula/${pname}-${version}.tar.gz";
-    sha256 = "sha256-Lr2c24hZU8A/Cd8xGA7rfqga67ghz0XJ/cs/z/hSlPU=";
+    sha256 = "sha256-ooaKsNhUIxubAlGt6fUAkbD+PDMfkq+6lnK4G9lp4C8=";
   };
 
   buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 8ab82b672265f..a28499f77328e 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, attr, libuuid, libscrypt, libsodium, keyutils
-, liburcu, zlib, libaio, udev, zstd, lz4, valgrind, python3Packages
+, liburcu, zlib, libaio, udev, zstd, lz4, valgrind, python3Packages, nixosTests
 , fuseSupport ? false, fuse3 ? null }:
 
 assert fuseSupport -> fuse3 != null;
@@ -39,6 +39,10 @@ stdenv.mkDerivation {
 
   installFlags = [ "PREFIX=${placeholder "out"}" ];
 
+  passthru.tests = {
+    smoke-test = nixosTests.bcachefs;
+  };
+
   meta = with lib; {
     description = "Tool for managing bcachefs filesystems";
     homepage = "https://bcachefs.org/";
diff --git a/pkgs/tools/filesystems/bees/default.nix b/pkgs/tools/filesystems/bees/default.nix
index bbad83f017688..7ba27208fe880 100644
--- a/pkgs/tools/filesystems/bees/default.nix
+++ b/pkgs/tools/filesystems/bees/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, runCommand, fetchFromGitHub, bash, btrfs-progs, coreutils, python3Packages, util-linux }:
+{ lib, stdenv, runCommand, fetchFromGitHub, bash, btrfs-progs, coreutils
+, python3Packages, util-linux, nixosTests }:
 
 let
 
@@ -55,7 +56,7 @@ let
 
 in
 
-runCommand "bees-service" {
+(runCommand "bees-service" {
   inherit bash bees coreutils;
   utillinux = util-linux; # needs to be a valid shell variable name
   btrfsProgs = btrfs-progs; # needs to be a valid shell variable name
@@ -64,4 +65,8 @@ runCommand "bees-service" {
   substituteAll ${./bees-service-wrapper} "$out"/bin/bees-service-wrapper
   chmod +x "$out"/bin/bees-service-wrapper
   ln -s ${bees}/bin/beesd "$out"/bin/beesd
-''
+'').overrideAttrs (old: {
+  passthru.tests = {
+    smoke-test = nixosTests.bees;
+  };
+})
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index b145d1802a1c5..ee7f86760707c 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "gcsfuse";
-  version = "0.34.1";
+  version = "0.35.0";
 
   src = fetchFromGitHub {
     owner = "googlecloudplatform";
     repo = "gcsfuse";
     rev = "v${version}";
-    sha256 = "16ns04g4cvp6lfhkifgib5rxpbcxy8ghhavi3mv1cvxawpmdrxnq";
+    sha256 = "sha256-GJ21Cqd/W/PocmN1p4OeeUdswhH7fSmAMiNTs0X3564=";
   };
 
   goPackagePath = "github.com/googlecloudplatform/gcsfuse";
diff --git a/pkgs/tools/graphics/agi/default.nix b/pkgs/tools/graphics/agi/default.nix
index 071538d1703ad..b7cfefe70cbf9 100644
--- a/pkgs/tools/graphics/agi/default.nix
+++ b/pkgs/tools/graphics/agi/default.nix
@@ -14,11 +14,11 @@
 
 stdenv.mkDerivation rec {
   pname = "agi";
-  version = "1.1.0-dev-20210504";
+  version = "1.1.0-dev-20210506";
 
   src = fetchzip {
     url = "https://github.com/google/agi-dev-releases/releases/download/v${version}/agi-${version}-linux.zip";
-    sha256 = "sha256-q9xWe1gGX7SV/tAUHu/uBB709aqegIsNLTPM5zljgYY=";
+    sha256 = "sha256-VB9AL2h+e+92lhsfdYHbSgv5AIrgEPJsa74VGncDHGo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/gmic/default.nix b/pkgs/tools/graphics/gmic/default.nix
index b50716188e957..37b398ef1c629 100644
--- a/pkgs/tools/graphics/gmic/default.nix
+++ b/pkgs/tools/graphics/gmic/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gmic";
-  version = "2.9.6";
+  version = "2.9.7";
 
   outputs = [ "out" "lib" "dev" "man" ];
 
   src = fetchurl {
     url = "https://gmic.eu/files/source/gmic_${version}.tar.gz";
-    sha256 = "sha256-0i/oUVrxbc0FDQmgvHEn7Cn0eVznMqDGw+r4OTVrwRo=";
+    sha256 = "sha256-lCU3SH6nIhQSMFeds81DMTaEKcDjPLOP7hsXqulVfxY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/timg/default.nix b/pkgs/tools/graphics/timg/default.nix
index 5acbaa7ffd208..7c2d004144dc4 100644
--- a/pkgs/tools/graphics/timg/default.nix
+++ b/pkgs/tools/graphics/timg/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "timg";
-  version = "1.4.0";
+  version = "1.4.2";
 
   src = fetchFromGitHub {
     owner = "hzeller";
     repo = "timg";
     rev = "v${version}";
-    sha256 = "10qhjfkbazncmj07y0a6cpmi7ki0l10qzpvi2zh8369yycqqxr8y";
+    sha256 = "1zjcaxnik8imkn22g5kz6zly3yxpknrzd093sfxpgqnfw4sq8149";
   };
 
   buildInputs = [ graphicsmagick ffmpeg libexif libjpeg zlib ];
diff --git a/pkgs/tools/inputmethods/fcitx-engines/fcitx-anthy/default.nix b/pkgs/tools/inputmethods/fcitx-engines/fcitx-anthy/default.nix
index 3fe5a59175f2e..74553dcebbbb7 100644
--- a/pkgs/tools/inputmethods/fcitx-engines/fcitx-anthy/default.nix
+++ b/pkgs/tools/inputmethods/fcitx-engines/fcitx-anthy/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fcitx-anthy";
-  version = "0.2.3";
+  version = "0.2.4";
 
   src = fetchurl {
     url = "http://download.fcitx-im.org/fcitx-anthy/${pname}-${version}.tar.xz";
-    sha256 = "01jx7wwq0mifqrzkswfglqhwkszbfcl4jinxgdgqx9kc6mb4k6zd";
+    sha256 = "sha256-Hxhs2RXuFf/bhczcQ3+Zj+gI3+Z4BEfIzMIfUOUNX7M=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix b/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
index b24dac6886d93..40465d55e400d 100644
--- a/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
+++ b/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "fcitx5-qt";
-  version = "5.0.4";
+  version = "5.0.6";
 
   src = fetchFromGitHub {
     owner = "fcitx";
     repo = "fcitx5-qt";
     rev = version;
-    sha256 = "sha256-PZbnxt30Tv7i+Q6G9UpGgWDs65rn0MZVe1ybhz4vN9I=";
+    sha256 = "sha256-Y7X4pkBSf5FMpf1mdyLvr1QWhqz3yC4iOGXDvvvV9Yw=";
   };
 
   preConfigure = ''
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
index 8fbd9254486a5..acb2d41e0456f 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ibus-m17n";
-  version = "1.4.4";
+  version = "1.4.5";
 
   src = fetchFromGitHub {
     owner = "ibus";
     repo = "ibus-m17n";
     rev = version;
-    sha256 = "sha256-kPTysHTC+j8BMnzsddRa4Tg54idejApTqmLrP20pu5M=";
+    sha256 = "sha256-atsfaoA0V9PPwhPTpHI7b7A5JsDiYHfA+0NlNOKYIPg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/birdfont/default.nix b/pkgs/tools/misc/birdfont/default.nix
index 609899bbe30f4..1b1fefc0a7cfb 100644
--- a/pkgs/tools/misc/birdfont/default.nix
+++ b/pkgs/tools/misc/birdfont/default.nix
@@ -4,11 +4,11 @@ gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "birdfont";
-  version = "2.29.1";
+  version = "2.29.4";
 
   src = fetchurl {
     url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "0620bppcbm9pb8l0d4sc56gfwkr97gw4zjirjz5ikk5lj0m801yi";
+    sha256 = "sha256-caNY6PrsqBrYwC61MxNsf8B9E8it1Ls1d+hdbf8u+o8=";
   };
 
   nativeBuildInputs = [ python3 pkg-config vala_0_44 gobject-introspection wrapGAppsHook ];
diff --git a/pkgs/tools/misc/czkawka/default.nix b/pkgs/tools/misc/czkawka/default.nix
index 0c8690b0e753d..8bca39c2ad52c 100644
--- a/pkgs/tools/misc/czkawka/default.nix
+++ b/pkgs/tools/misc/czkawka/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "czkawka";
-  version = "3.0.0";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "qarmin";
     repo = pname;
     rev = version;
-    sha256 = "1g5a9ns5lkiyk6hjsh08hgs41538dzj0a4lgn2c5cbad5psl0xa6";
+    sha256 = "sha256-LtGgpfToQUNKM1hmMPW7UrS/n7iyI+dz2vbSo+GOcRg=";
   };
 
-  cargoSha256 = "03y7grvnp1y6h8phdb0z1y3mwwbamvcbgmr2h707qvszga4yz9rq";
+  cargoSha256 = "sha256-ZbyoCo1n4GRBkb5SClby5V51rLN1PnvCHD30TiJU2gY=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/tools/misc/ddccontrol/default.nix b/pkgs/tools/misc/ddccontrol/default.nix
index 41f2bede99952..b7d0f2c3aad98 100644
--- a/pkgs/tools/misc/ddccontrol/default.nix
+++ b/pkgs/tools/misc/ddccontrol/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ddccontrol";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchFromGitHub {
     owner = "ddccontrol";
     repo = "ddccontrol";
-    rev = "0.5.1";
-    sha256 = "sha256-e6Rzzz5S+Um2ZBuUkfAJQA4V+zqCqsUHB0f1t/dTU2w=";
+    rev = "0.5.2";
+    sha256 = "sha256-kul0sjbwbCwadvrccG3KwL/fKWACFUg74QGvgfWE4FQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/debootstrap/default.nix b/pkgs/tools/misc/debootstrap/default.nix
index ea60887ebfab4..b75f31c617203 100644
--- a/pkgs/tools/misc/debootstrap/default.nix
+++ b/pkgs/tools/misc/debootstrap/default.nix
@@ -15,13 +15,13 @@ let binPath = lib.makeBinPath [
   ];
 in stdenv.mkDerivation rec {
   pname = "debootstrap";
-  version = "1.0.123";
+  version = "1.0.124";
 
   src = fetchurl {
     # git clone git://git.debian.org/d-i/debootstrap.git
     # I'd like to use the source. However it's lacking the lanny script ? (still true?)
     url = "mirror://debian/pool/main/d/${pname}/${pname}_${version}.tar.gz";
-    sha256 = "0a53dhfwa74vdhqd6kbl7zlm7iic37c6wkdclppf0syxxi3q2njy";
+    sha256 = "sha256-dwDphksp8WaybFQVPtjCdbRvS5pgRou2B+AZpkwWzY8=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/dua/default.nix b/pkgs/tools/misc/dua/default.nix
index 5bff1f66d569d..f69d13d04556a 100644
--- a/pkgs/tools/misc/dua/default.nix
+++ b/pkgs/tools/misc/dua/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dua";
-  version = "2.11.2";
+  version = "2.11.3";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
 
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
     owner = "Byron";
     repo = "dua-cli";
     rev = "v${version}";
-    sha256 = "sha256-sT4hg5MC6xuhSKeNxaVY9vOlMEx23uwxgK6UMLO4kVs=";
+    sha256 = "sha256-rwbeWjYhAgZhQDg1/Pux08Kw+7NQG7dJlhZnwlaEjJ4=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     extraPostFetch = ''
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-DOotIN8XScgHR9L6aFgky2B18piGIKfLWx1GTdYnCB0=";
+  cargoSha256 = "sha256-ta5mHTfSs72HUz3ezZhVvU61ECvyWY3Sba7/UoJGc8U=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/misc/esphome/default.nix b/pkgs/tools/misc/esphome/default.nix
index d2b84b2853396..77273f8fd2f0c 100644
--- a/pkgs/tools/misc/esphome/default.nix
+++ b/pkgs/tools/misc/esphome/default.nix
@@ -8,13 +8,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "esphome";
-  version = "1.17.1";
+  version = "1.17.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0483glwi155ca1wnffwhmwn17d7kwk4hjwmckb8zs197rfqmb55v";
+    sha256 = "1md52xzlrzf99s5q2152s1b7yql2h02ss451g68ky207xz660aj1";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix
index 75e1084e0bda2..aea480ac04648 100644
--- a/pkgs/tools/misc/ffsend/default.nix
+++ b/pkgs/tools/misc/ffsend/default.nix
@@ -17,16 +17,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   pname = "ffsend";
-  version = "0.2.71";
+  version = "0.2.72";
 
   src = fetchFromGitLab {
     owner = "timvisee";
     repo = "ffsend";
     rev = "v${version}";
-    sha256 = "sha256-dXFnM8085XVzUwk1e3SoO+O+z9lJ40htJzHBGRQ95XY=";
+    sha256 = "sha256-YEmEaf0ob2ulmQghwDYi0RtGuTdRHCoLdPnuVjxvlxE=";
   };
 
-  cargoSha256 = "sha256-VwxIH/n1DjZsMOLAREclqanb4q7QEOZ35KWWciyrnyQ=";
+  cargoSha256 = "sha256-mcWQzfMc2cJjp0EFcfG7SAM70ItwEC/N13UDiRiI3ys=";
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles ];
   buildInputs =
diff --git a/pkgs/tools/misc/fselect/default.nix b/pkgs/tools/misc/fselect/default.nix
index d60e68a0e320b..eaddc8790e94b 100644
--- a/pkgs/tools/misc/fselect/default.nix
+++ b/pkgs/tools/misc/fselect/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fselect";
-  version = "0.7.4";
+  version = "0.7.5";
 
   src = fetchFromGitHub {
     owner = "jhspetersson";
     repo = "fselect";
     rev = version;
-    sha256 = "sha256-gwFX5c5y4bL+KhPDnvCbDco1ORYyqZYFsetMrmOATZU=";
+    sha256 = "sha256-6/mcGq6qKYmcBcNndYYJB3rnHr6ZVpEcVjJBz7NEJEw=";
   };
 
-  cargoSha256 = "sha256-gWCiaAgb7hBenbp1kogCoB6vctYfDZccRW9li2yxJaU=";
+  cargoSha256 = "sha256-W6YmFsTlU3LD3tvhLuA/3k/269gR2RLLOo86BQC5x98=";
 
   nativeBuildInputs = [ installShellFiles ];
   buildInputs = lib.optional stdenv.isDarwin libiconv;
diff --git a/pkgs/tools/misc/gh-ost/default.nix b/pkgs/tools/misc/gh-ost/default.nix
index dd28ddfaff556..bc7d3f6db42ab 100644
--- a/pkgs/tools/misc/gh-ost/default.nix
+++ b/pkgs/tools/misc/gh-ost/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "gh-ost";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "github";
     repo = "gh-ost";
     rev = "v${version}";
-    sha256 = "0laj5nmf10qn01mqn0flipmhankgvrcfbdl3bc76wa14qkkg722m";
+    sha256 = "sha256-srJXzY4TTHZDYKq8OPqin4zRoYlmaJKhHXDzO/GjBV8=";
   };
 
   goPackagePath = "github.com/github/gh-ost";
diff --git a/pkgs/tools/misc/ipbt/default.nix b/pkgs/tools/misc/ipbt/default.nix
index 8ee6bb5addb97..25dad59c9fef9 100644
--- a/pkgs/tools/misc/ipbt/default.nix
+++ b/pkgs/tools/misc/ipbt/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, perl, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "20190601.d1519e0";
+  version = "20210215.5a9cb02";
   pname = "ipbt";
 
   src = fetchurl {
     url = "https://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-${version}.tar.gz";
-    sha256 = "1aj8pajdd81vq2qw6vzfm27i0aj8vfz9m7k3sda30pnsrizm06d5";
+    sha256 = "0w6blpv22jjivzr58y440zv6djvi5iccdmj4y2md52fbpjngmsha";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/tools/networking/clash/default.nix b/pkgs/tools/networking/clash/default.nix
index 9cad36c68a632..61e529dc8729d 100644
--- a/pkgs/tools/networking/clash/default.nix
+++ b/pkgs/tools/networking/clash/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "clash";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "Dreamacro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-I4qpcHsN8WGt7YLNXO08BJypilhMSVmZjqECDjlEqXU=";
+    sha256 = "sha256-XG/nci8Sj0vfa/SFPpJwl1Zmt/23LfKxocejplZtS0E=";
   };
 
-  vendorSha256 = "sha256-Nfzk7p52msGxTPDbs4g9KuRPFxp4Npt0QXkdVOZvipc=";
+  vendorSha256 = "sha256-WR1CpjEMHRkpd0/iqrOm0oVXvyQO+r6GyeP0L0zx8aA=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix
index 09edbaf751615..e57409fe558fa 100644
--- a/pkgs/tools/networking/croc/default.nix
+++ b/pkgs/tools/networking/croc/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "croc";
-  version = "9.1.1";
+  version = "9.1.2";
 
   src = fetchFromGitHub {
     owner = "schollz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MiTc8uT4FUHqEgE37kZ0pc7y1aK6u+4LqYQ8l1j2jA4=";
+    sha256 = "sha256-7v8vz0n35ATWdmMcM2U7z1sONbmsaWQahHsramivm88=";
   };
 
-  vendorSha256 = "sha256-UGFFzpbBeL4YS3VSjCa31E2fiqND8j3E4FjRflg1NFc=";
+  vendorSha256 = "sha256-IAyiD4v2UEGlWj8oZ0E3YhqyThJTjwjWjOzQKuj6Q9s=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/networking/findomain/default.nix b/pkgs/tools/networking/findomain/default.nix
index fb04ad2ff4988..9c6aa52f60700 100644
--- a/pkgs/tools/networking/findomain/default.nix
+++ b/pkgs/tools/networking/findomain/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "findomain";
-  version = "4.0.1";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "Edu4rdSHL";
     repo = pname;
     rev = version;
-    sha256 = "sha256-uv1boI9iaBeobo/58Di4oslh1eGLuK9HR5EwQQeWn+0=";
+    sha256 = "sha256-kzB6HIZK1XRxnjg5FvUWESalrYppJiiXVI8DBsDpLu8=";
   };
 
-  cargoSha256 = "sha256-/QEytergBF/eAn1deOchoS0ib9tiax13CRtrwgrds1s=";
+  cargoSha256 = "sha256-2XftJ/T8wSaHXVgqbWY6EAmaVBXEzM+J6TSOJ0QFR3g=";
 
   nativeBuildInputs = [ installShellFiles perl ];
   buildInputs = lib.optional stdenv.isDarwin Security;
diff --git a/pkgs/tools/networking/miniupnpd/default.nix b/pkgs/tools/networking/miniupnpd/default.nix
index 05b04cf9484bb..aea0faddf5d7f 100644
--- a/pkgs/tools/networking/miniupnpd/default.nix
+++ b/pkgs/tools/networking/miniupnpd/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, fetchurl, iptables, libuuid, pkg-config
 , which, iproute2, gnused, coreutils, gawk, makeWrapper
+, nixosTests
 }:
 
 let
@@ -30,6 +31,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru.tests = {
+    bittorrent-integration = nixosTests.bittorrent;
+  };
+
   meta = with lib; {
     homepage = "http://miniupnp.free.fr/";
     description = "A daemon that implements the UPnP Internet Gateway Device (IGD) specification";
diff --git a/pkgs/tools/networking/openssh/common.nix b/pkgs/tools/networking/openssh/common.nix
index 55babb4ca2dc6..21ad012f3fb9b 100644
--- a/pkgs/tools/networking/openssh/common.nix
+++ b/pkgs/tools/networking/openssh/common.nix
@@ -22,6 +22,7 @@
 , withKerberos ? true
 , libkrb5
 , libfido2
+, nixosTests
 , withFIDO ? stdenv.hostPlatform.isUnix && !stdenv.hostPlatform.isMusl
 , linkOpenssl ? true
 }:
@@ -111,6 +112,10 @@ stdenv.mkDerivation rec {
     "sysconfdir=\${out}/etc/ssh"
   ];
 
+  passthru.tests = {
+    borgbackup-integration = nixosTests.borgbackup;
+  };
+
   meta = {
     description = "An implementation of the SSH protocol${extraDesc}";
     homepage = "https://www.openssh.com/";
diff --git a/pkgs/tools/package-management/createrepo_c/default.nix b/pkgs/tools/package-management/createrepo_c/default.nix
index ed181d2484ead..92696a8d75f1e 100644
--- a/pkgs/tools/package-management/createrepo_c/default.nix
+++ b/pkgs/tools/package-management/createrepo_c/default.nix
@@ -1,18 +1,22 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, bzip2, expat, glib, curl, libxml2, python3, rpm, openssl, sqlite, file, xz, pcre, bash-completion }:
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, bzip2, expat, glib, curl, libxml2, python3, rpm
+, openssl, sqlite, file, xz, pcre, bash-completion, zstd, zchunk, libmodulemd
+}:
 
 stdenv.mkDerivation rec {
   pname = "createrepo_c";
-  version = "0.11.1";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner  = "rpm-software-management";
     repo   = "createrepo_c";
     rev    = version;
-    sha256 = "0cmysc7gdd2czagl4drfh9gin6aa2847vgi30a3p0cfqvczf9cm6";
+    sha256 = "G2xioH9XWntHFmUfTN2s2mdtIqgTTLKr5jZflwpaC8Q=";
   };
 
   patches = [
+    # Use the output directory to install the bash completions.
     ./fix-bash-completion-path.patch
+    # Use the output directory to install the python modules.
     ./fix-python-install-path.patch
   ];
 
@@ -23,15 +27,15 @@ stdenv.mkDerivation rec {
       --replace "@PYTHON_INSTALL_DIR@" "$out/${python3.sitePackages}"
   '';
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config rpm ];
 
-  buildInputs = [ bzip2 expat glib curl libxml2 python3 rpm openssl sqlite file xz pcre bash-completion ];
+  buildInputs = [ bzip2 expat glib curl libxml2 python3 openssl sqlite file xz pcre bash-completion zstd zchunk libmodulemd ];
 
   meta = with lib; {
     description = "C implementation of createrepo";
-    homepage    = "http://rpm-software-management.github.io/createrepo_c/";
-    license     = licenses.gpl2;
-    platforms   = platforms.linux;
+    homepage    = "https://rpm-software-management.github.io/createrepo_c/";
+    license     = licenses.gpl2Plus;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ copumpkin ];
   };
 }
diff --git a/pkgs/tools/package-management/createrepo_c/fix-bash-completion-path.patch b/pkgs/tools/package-management/createrepo_c/fix-bash-completion-path.patch
index e184cc8facc05..2539ec5d338dc 100644
--- a/pkgs/tools/package-management/createrepo_c/fix-bash-completion-path.patch
+++ b/pkgs/tools/package-management/createrepo_c/fix-bash-completion-path.patch
@@ -1,11 +1,11 @@
---- createrepo_c-0.10.0-src.orig/CMakeLists.txt	2017-03-19 11:01:02.703173617 +0100
-+++ createrepo_c-0.10.0-src/CMakeLists.txt	2017-03-19 11:02:38.617448248 +0100
-@@ -100,7 +100,7 @@
- 
- pkg_check_modules(BASHCOMP bash-completion)
- if (BASHCOMP_FOUND)
--    execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=completionsdir bash-completion OUTPUT_VARIABLE BASHCOMP_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
-+    SET(BASHCOMP_DIR "@BASHCOMP_DIR@")
-     message("Bash completion directory: ${BASHCOMP_DIR}")
-     INSTALL(FILES createrepo_c.bash DESTINATION ${BASHCOMP_DIR} RENAME createrepo_c)
-     INSTALL(CODE "
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -117,7 +117,7 @@ OPTION(ENABLE_BASHCOMP "Install Bash autocompletions?" ON)
+ IF (ENABLE_BASHCOMP)
+     pkg_check_modules(BASHCOMP bash-completion)
+     IF (BASHCOMP_FOUND)
+-        execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=completionsdir bash-completion OUTPUT_VARIABLE BASHCOMP_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
++        SET(BASHCOMP_DIR "@BASHCOMP_DIR@")
+         message("Bash completion directory: ${BASHCOMP_DIR}")
+         INSTALL(FILES createrepo_c.bash DESTINATION ${BASHCOMP_DIR} RENAME createrepo_c)
+         INSTALL(CODE "
diff --git a/pkgs/tools/package-management/createrepo_c/fix-python-install-path.patch b/pkgs/tools/package-management/createrepo_c/fix-python-install-path.patch
index a247c6d9fe479..b8739622e3c08 100644
--- a/pkgs/tools/package-management/createrepo_c/fix-python-install-path.patch
+++ b/pkgs/tools/package-management/createrepo_c/fix-python-install-path.patch
@@ -1,11 +1,11 @@
---- createrepo_c-0.10.0-src.orig/src/python/CMakeLists.txt	2017-03-19 10:50:33.796342953 +0100
-+++ createrepo_c-0.10.0-src/src/python/CMakeLists.txt	2017-03-19 10:53:51.207580073 +0100
-@@ -19,7 +19,7 @@
-     FIND_PACKAGE(PythonInterp 3.0 REQUIRED)
- endif()
- 
+--- a/src/python/CMakeLists.txt
++++ b/src/python/CMakeLists.txt
+@@ -14,7 +14,7 @@ if (NOT SKBUILD)
+     FIND_PACKAGE(PythonLibs 3 REQUIRED)
+ endif (NOT SKBUILD)
+
 -EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
 +SET(PYTHON_INSTALL_DIR "@PYTHON_INSTALL_DIR@")
  INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH})
- 
+
  MESSAGE(STATUS "Python install dir is ${PYTHON_INSTALL_DIR}")
diff --git a/pkgs/tools/security/doppler/default.nix b/pkgs/tools/security/doppler/default.nix
index 0f2dee26ffced..48625e48355bc 100644
--- a/pkgs/tools/security/doppler/default.nix
+++ b/pkgs/tools/security/doppler/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "doppler";
-  version = "3.24.3";
+  version = "3.24.4";
 
   src = fetchFromGitHub {
     owner = "dopplerhq";
     repo = "cli";
     rev = version;
-    sha256 = "sha256-G7oyyvrn+19N0C0V5MBwls+dQNzHh+DJmMTmsln8rC4=";
+    sha256 = "sha256-j1HTWC/YDER2LPJ1ELoxA5ZOxrdQOnDiHNOc7aVgWlk=";
   };
 
   vendorSha256 = "sha256-UaR/xYGMI+C9aID85aPSfVzmTWXj4KcjfOJ6TTJ8KoY=";
diff --git a/pkgs/tools/security/ipscan/default.nix b/pkgs/tools/security/ipscan/default.nix
index d1c56beb08164..a2ec75cfd2e2f 100644
--- a/pkgs/tools/security/ipscan/default.nix
+++ b/pkgs/tools/security/ipscan/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ipscan";
-  version = "3.7.3";
+  version = "3.7.6";
 
   src = fetchurl {
     url = "https://github.com/angryip/ipscan/releases/download/${version}/ipscan_${version}_all.deb";
-    sha256 = "18vvjqsxkz9g503k983cxdzzz6sdkv6qg3nwf8af9k34ynhhh0m7";
+    sha256 = "sha256-IjbuCCwcAOlCM2XbM5qBGjaGn8xNNDjoyJmCzP5JF/Q=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/tools/system/bottom/default.nix b/pkgs/tools/system/bottom/default.nix
index 0f7be5eb4479d..eafa0edd72646 100644
--- a/pkgs/tools/system/bottom/default.nix
+++ b/pkgs/tools/system/bottom/default.nix
@@ -33,5 +33,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ berbiche ];
     platforms = platforms.unix;
+    mainProgram = "btm";
   };
 }
diff --git a/pkgs/tools/text/chroma/default.nix b/pkgs/tools/text/chroma/default.nix
index 388d9b9227321..6511d2dcdbb39 100644
--- a/pkgs/tools/text/chroma/default.nix
+++ b/pkgs/tools/text/chroma/default.nix
@@ -8,7 +8,7 @@ buildGoModule rec {
     owner  = "alecthomas";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "0zzk4wcjgxa9lsx8kwpmxvcw67f2fr7ai37jxmdahnws0ai2c2f7";
+    sha256 = "sha256-+4UaQrJh3PBf68rlW1lOEyEVw3vWxfc+Casa5+H8F9A=";
     leaveDotGit = true;
   };
 
diff --git a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix b/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
index 4d34cd50b1e78..0718e437b06b2 100644
--- a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
+++ b/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "google-compute-engine-oslogin";
-  version = "20200507.00";
+  version = "20210429.00";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "guest-oslogin";
     rev = version;
-    sha256 = "1np8c96sm29pwnxykc0id8kkgalhw576g43fgi1y936sr2hfvx3v";
+    sha256 = "eHAg9K5oxcygEzqaac81jSFHF+zsW6uB7q2Kfo9hSrA=";
   };
 
   postPatch = ''
@@ -28,8 +28,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ curl.dev pam ];
 
-  NIX_CFLAGS_COMPILE="-I${json_c.dev}/include/json-c";
-  NIX_CFLAGS_LINK="-L${json_c}/lib";
+  NIX_CFLAGS_COMPILE = "-I${json_c.dev}/include/json-c";
+  NIX_CFLAGS_LINK = "-L${json_c}/lib";
 
   makeFlags = [
     "VERSION=${version}"
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 49f96c5a26920..d57b776210330 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4155,6 +4155,8 @@ in
     inherit (darwin.apple_sdk.frameworks) AppKit Security;
   };
 
+  timeline = callPackage ../applications/office/timeline/default.nix { };
+
   tsm-client = callPackage ../tools/backup/tsm-client { jdk8 = null; };
   tsm-client-withGui = callPackage ../tools/backup/tsm-client { };
 
@@ -7126,7 +7128,12 @@ in
 
   nzbget = callPackage ../tools/networking/nzbget { };
 
-  nzbhydra2 = callPackage ../servers/nzbhydra2 { };
+  nzbhydra2 = callPackage ../servers/nzbhydra2 {
+    # You need Java (at least 8, at most 15)
+    # https://github.com/theotherp/nzbhydra2/issues/697
+    # https://github.com/theotherp/nzbhydra2/#how-to-run
+    jre = openjdk11;
+  };
 
   oapi-codegen = callPackage ../tools/networking/oapi-codegen { };
 
@@ -7444,6 +7451,8 @@ in
 
   pitivi = callPackage ../applications/video/pitivi { };
 
+  prism = callPackage ../applications/video/prism { };
+
   pulumi-bin = callPackage ../tools/admin/pulumi { };
 
   p0f = callPackage ../tools/security/p0f { };
@@ -12756,7 +12765,7 @@ in
   credstash = with python3Packages; toPythonApplication credstash;
 
   creduce = callPackage ../development/tools/misc/creduce {
-    inherit (llvmPackages_7) llvm clang-unwrapped;
+    inherit (llvmPackages_7) llvm libclang;
   };
 
   cscope = callPackage ../development/tools/misc/cscope { };
@@ -12768,7 +12777,7 @@ in
   css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify;
 
   cvise = python3Packages.callPackage ../development/tools/misc/cvise {
-    inherit (llvmPackages_11) llvm clang-unwrapped;
+    inherit (llvmPackages_11) llvm libclang;
   };
 
   libcxx = llvmPackages.libcxx;
@@ -13288,6 +13297,8 @@ in
 
   ninja = callPackage ../development/tools/build-managers/ninja { };
 
+  nimbo = with python3Packages; callPackage ../applications/misc/nimbo { };
+
   gn = callPackage ../development/tools/build-managers/gn { };
 
   nixbang = callPackage ../development/tools/misc/nixbang {
@@ -22411,6 +22422,8 @@ in
 
   caerbannog = callPackage ../applications/misc/caerbannog { };
 
+  cardboard = callPackage ../applications/window-managers/cardboard { };
+
   cage = callPackage ../applications/window-managers/cage { };
 
   calf = callPackage ../applications/audio/calf {
@@ -24748,7 +24761,6 @@ in
 
   monotone = callPackage ../applications/version-management/monotone {
     lua = lua5;
-    botan = botan.override (x: { openssl = null; });
   };
 
   monotoneViz = callPackage ../applications/version-management/monotone-viz {
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 075f69c7d0d8f..7c14c56cd4115 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -311,6 +311,8 @@ in {
 
   aionotion = callPackage ../development/python-modules/aionotion { };
 
+  aiopg = callPackage ../development/python-modules/aiopg { };
+
   aioprocessing = callPackage ../development/python-modules/aioprocessing { };
 
   aiopulse = callPackage ../development/python-modules/aiopulse { };
@@ -385,6 +387,8 @@ in {
 
   amqplib = callPackage ../development/python-modules/amqplib { };
 
+  amqtt = callPackage ../development/python-modules/amqtt { };
+
   android-backup = callPackage ../development/python-modules/android-backup { };
 
   androidtv = callPackage ../development/python-modules/androidtv { };
@@ -931,6 +935,8 @@ in {
 
   backports_weakref = callPackage ../development/python-modules/backports_weakref { };
 
+  backports-zoneinfo = callPackage ../development/python-modules/backports-zoneinfo { };
+
   bacpypes = callPackage ../development/python-modules/bacpypes { };
 
   banal = callPackage ../development/python-modules/banal { };
@@ -1625,6 +1631,8 @@ in {
 
   cvxpy = callPackage ../development/python-modules/cvxpy { };
 
+  cwcwidth = callPackage ../development/python-modules/cwcwidth { };
+
   cx_Freeze = callPackage ../development/python-modules/cx_freeze { };
 
   cx_oracle = callPackage ../development/python-modules/cx_oracle { };
@@ -2346,6 +2354,7 @@ in {
 
   fenics = callPackage ../development/libraries/science/math/fenics {
     pytest = self.pytest_4;
+    hdf5 = pkgs.hdf5_1_10;
   };
 
   ffmpeg-python = callPackage ../development/python-modules/ffmpeg-python { };
@@ -3148,6 +3157,8 @@ in {
 
   humanize = callPackage ../development/python-modules/humanize { };
 
+  humblewx = callPackage ../development/python-modules/humblewx { };
+
   hupper = callPackage ../development/python-modules/hupper { };
 
   hvac = callPackage ../development/python-modules/hvac { };
@@ -3185,6 +3196,10 @@ in {
 
   hyppo = callPackage ../development/python-modules/hyppo { };
 
+  i2c-tools = callPackage ../development/python-modules/i2c-tools {
+    inherit (pkgs) i2c-tools;
+  };
+
   i3ipc = callPackage ../development/python-modules/i3ipc { };
 
   i3-py = callPackage ../development/python-modules/i3-py { };
@@ -3896,6 +3911,8 @@ in {
 
   line_profiler = callPackage ../development/python-modules/line_profiler { };
 
+  linkify-it-py = callPackage ../development/python-modules/linkify-it-py { };
+
   linode-api = callPackage ../development/python-modules/linode-api { };
 
   linode = callPackage ../development/python-modules/linode { };
@@ -4120,6 +4137,8 @@ in {
 
   md2gemini = callPackage ../development/python-modules/md2gemini { };
 
+  mdit-py-plugins = callPackage ../development/python-modules/mdit-py-plugins { };
+
   MDP = callPackage ../development/python-modules/mdp { };
 
   measurement = callPackage ../development/python-modules/measurement { };
@@ -5184,7 +5203,9 @@ in {
 
   prison = callPackage ../development/python-modules/prison { };
 
-  privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { };
+  privacyidea = callPackage ../development/python-modules/privacyidea { };
+
+  pyjwt1 = callPackage ../development/python-modules/pyjwt/1.nix { };
 
   proboscis = callPackage ../development/python-modules/proboscis { };
 
@@ -5664,6 +5685,8 @@ in {
 
   pyi2cflash = callPackage ../development/python-modules/pyi2cflash { };
 
+  pyialarm = callPackage ../development/python-modules/pyialarm { };
+
   pyicloud = callPackage ../development/python-modules/pyicloud { };
 
   PyICU = callPackage ../development/python-modules/pyicu { };
@@ -6231,6 +6254,8 @@ in {
 
   py_stringmatching = callPackage ../development/python-modules/py_stringmatching { };
 
+  pysvg-py3 = callPackage ../development/python-modules/pysvg-py3 { };
+
   pysvn = callPackage ../development/python-modules/pysvn {
     inherit (pkgs) bash subversion apr aprutil expat neon openssl;
   };
@@ -6419,6 +6444,8 @@ in {
 
   pytest-random-order = callPackage ../development/python-modules/pytest-random-order { };
 
+  pytest-regressions = callPackage ../development/python-modules/pytest-regressions { };
+
   pytest-relaxed = callPackage ../development/python-modules/pytest-relaxed { };
 
   pytest-remotedata = callPackage ../development/python-modules/pytest-remotedata { };
@@ -6679,6 +6706,8 @@ in {
 
   python-socketio_4 = callPackage ../development/python-modules/python-socketio/4.nix { };
 
+  python-socks = callPackage ../development/python-modules/python-socks { };
+
   python-sql = callPackage ../development/python-modules/python-sql { };
 
   python-stdnum = callPackage ../development/python-modules/python-stdnum { };
@@ -8338,6 +8367,8 @@ in {
 
   uarray = callPackage ../development/python-modules/uarray { };
 
+  uc-micro-py = callPackage ../development/python-modules/uc-micro-py { };
+
   udatetime = callPackage ../development/python-modules/udatetime { };
 
   ueberzug = callPackage ../development/python-modules/ueberzug {
diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix
index e21f90342927a..9eae7555ea45f 100644
--- a/pkgs/top-level/python2-packages.nix
+++ b/pkgs/top-level/python2-packages.nix
@@ -383,7 +383,9 @@ with self; with super; {
 
   prettytable = callPackage ../development/python-modules/prettytable/1.nix { };
 
-  privacyidea = callPackage ../development/python-modules/privacyidea { };
+  privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { };
+
+  ldaptor = callPackage ../development/python-modules/ldaptor/19.nix { };
 
   progressbar231 = callPackage ../development/python-modules/progressbar231 { };
 
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix
index 1c3389c24d186..a4ce43859ce1f 100644
--- a/pkgs/top-level/release-haskell.nix
+++ b/pkgs/top-level/release-haskell.nix
@@ -75,191 +75,197 @@ let
       _: v: builtins.length (v.meta.maintainers or []) > 0
     ) set);
 
-  jobs = mapTestOn {
-    haskellPackages = packagePlatforms pkgs.haskellPackages;
-    haskell.compiler = packagePlatforms pkgs.haskell.compiler;
+  recursiveUpdateMany = builtins.foldl' lib.recursiveUpdate {};
 
-    tests = let
-      testPlatforms = packagePlatforms pkgs.tests;
-    in {
-      haskell = testPlatforms.haskell;
-      writers = testPlatforms.writers;
-    };
+  jobs = recursiveUpdateMany [
+    (mapTestOn {
+      haskellPackages = packagePlatforms pkgs.haskellPackages;
+      haskell.compiler = packagePlatforms pkgs.haskell.compiler;
 
-    # top-level packages that depend on haskellPackages
-    inherit (pkgsPlatforms)
-      agda
-      arion
-      bench
-      bustle
-      blucontrol
-      cabal-install
-      cabal2nix
-      cachix
-      carp
-      cedille
-      client-ip-echo
-      darcs
-      dconf2nix
-      dhall
-      dhall-bash
-      dhall-docs
-      dhall-lsp-server
-      dhall-json
-      dhall-nix
-      dhall-text
-      diagrams-builder
-      elm2nix
-      fffuu
-      futhark
-      ghcid
-      git-annex
-      git-brunch
-      gitit
-      glirc
-      hadolint
-      haskell-ci
-      haskell-language-server
-      hasura-graphql-engine
-      hci
-      hercules-ci-agent
-      hinit
-      hedgewars
-      hledger
-      hledger-iadd
-      hledger-interest
-      hledger-ui
-      hledger-web
-      hlint
-      hpack
-      hyper-haskell
-      hyper-haskell-server-with-packages
-      icepeak
-      idris
-      ihaskell
-      jl
-      koka
-      krank
-      lambdabot
-      ldgallery
-      madlang
-      matterhorn
-      mueval
-      neuron-notes
-      niv
-      nix-delegate
-      nix-deploy
-      nix-diff
-      nix-linter
-      nix-output-monitor
-      nix-script
-      nix-tree
-      nixfmt
-      nota
-      ormolu
-      pandoc
-      pakcs
-      petrinizer
-      place-cursor-at
-      pinboard-notes-backup
-      pretty-simple
-      shake
-      shellcheck
-      sourceAndTags
-      spacecookie
-      spago
-      splot
-      stack
-      stack2nix
-      stutter
-      stylish-haskell
-      taffybar
-      tamarin-prover
-      taskell
-      termonad-with-packages
-      tldr-hs
-      tweet-hs
-      update-nix-fetchgit
-      uqm
-      uuagc
-      vaultenv
-      wstunnel
-      xmobar
-      xmonad-with-packages
-      yi
-      zsh-git-prompt
-      ;
+      tests = let
+        testPlatforms = packagePlatforms pkgs.tests;
+      in {
+        haskell = testPlatforms.haskell;
+        writers = testPlatforms.writers;
+      };
+
+      # top-level packages that depend on haskellPackages
+      inherit (pkgsPlatforms)
+        agda
+        arion
+        bench
+        bustle
+        blucontrol
+        cabal-install
+        cabal2nix
+        cachix
+        carp
+        cedille
+        client-ip-echo
+        darcs
+        dconf2nix
+        dhall
+        dhall-bash
+        dhall-docs
+        dhall-lsp-server
+        dhall-json
+        dhall-nix
+        dhall-text
+        diagrams-builder
+        elm2nix
+        fffuu
+        futhark
+        ghcid
+        git-annex
+        git-brunch
+        gitit
+        glirc
+        hadolint
+        haskell-ci
+        haskell-language-server
+        hasura-graphql-engine
+        hci
+        hercules-ci-agent
+        hinit
+        hedgewars
+        hledger
+        hledger-iadd
+        hledger-interest
+        hledger-ui
+        hledger-web
+        hlint
+        hpack
+        hyper-haskell
+        hyper-haskell-server-with-packages
+        icepeak
+        idris
+        ihaskell
+        jl
+        koka
+        krank
+        lambdabot
+        ldgallery
+        madlang
+        matterhorn
+        mueval
+        neuron-notes
+        niv
+        nix-delegate
+        nix-deploy
+        nix-diff
+        nix-linter
+        nix-output-monitor
+        nix-script
+        nix-tree
+        nixfmt
+        nota
+        ormolu
+        pandoc
+        pakcs
+        petrinizer
+        place-cursor-at
+        pinboard-notes-backup
+        pretty-simple
+        shake
+        shellcheck
+        sourceAndTags
+        spacecookie
+        spago
+        splot
+        stack
+        stack2nix
+        stutter
+        stylish-haskell
+        taffybar
+        tamarin-prover
+        taskell
+        termonad-with-packages
+        tldr-hs
+        tweet-hs
+        update-nix-fetchgit
+        uqm
+        uuagc
+        vaultenv
+        wstunnel
+        xmobar
+        xmonad-with-packages
+        yi
+        zsh-git-prompt
+        ;
 
-    elmPackages.elm = pkgsPlatforms.elmPackages.elm;
-  } // versionedCompilerJobs {
-    # Packages which should be checked on more than the
-    # default GHC version. This list can be used to test
-    # the state of the package set with newer compilers
-    # and to confirm that critical packages for the
-    # package sets (like Cabal, jailbreak-cabal) are
-    # working as expected.
-    cabal-install = all;
-    Cabal_3_4_0_0 = with compilerNames; [ ghc884 ghc8104 ];
-    funcmp = all;
-    haskell-language-server = all;
-    hoogle = all;
-    hsdns = all;
-    jailbreak-cabal = all;
-    language-nix = all;
-    nix-paths = all;
-    titlecase = all;
-  } // {
-    mergeable = pkgs.releaseTools.aggregate {
-      name = "haskell-updates-mergeable";
-      meta = {
-        description = ''
-          Critical haskell packages that should work at all times,
-          serves as minimum requirement for an update merge
-        '';
-        maintainers = lib.teams.haskell.members;
+      elmPackages.elm = pkgsPlatforms.elmPackages.elm;
+    })
+    (versionedCompilerJobs {
+      # Packages which should be checked on more than the
+      # default GHC version. This list can be used to test
+      # the state of the package set with newer compilers
+      # and to confirm that critical packages for the
+      # package sets (like Cabal, jailbreak-cabal) are
+      # working as expected.
+      cabal-install = all;
+      Cabal_3_4_0_0 = with compilerNames; [ ghc884 ghc8104 ];
+      funcmp = all;
+      haskell-language-server = all;
+      hoogle = all;
+      hsdns = all;
+      jailbreak-cabal = all;
+      language-nix = all;
+      nix-paths = all;
+      titlecase = all;
+    })
+    {
+      mergeable = pkgs.releaseTools.aggregate {
+        name = "haskell-updates-mergeable";
+        meta = {
+          description = ''
+            Critical haskell packages that should work at all times,
+            serves as minimum requirement for an update merge
+          '';
+          maintainers = lib.teams.haskell.members;
+        };
+        constituents = accumulateDerivations [
+          # haskell specific tests
+          jobs.tests.haskell
+          jobs.tests.writers # writeHaskell{,Bin}
+          # important top-level packages
+          jobs.cabal-install
+          jobs.cabal2nix
+          jobs.cachix
+          jobs.darcs
+          jobs.haskell-language-server
+          jobs.hledger
+          jobs.hledger-ui
+          jobs.hpack
+          jobs.niv
+          jobs.pandoc
+          jobs.stack
+          jobs.stylish-haskell
+          # important haskell (library) packages
+          jobs.haskellPackages.cabal-plan
+          jobs.haskellPackages.distribution-nixpkgs
+          jobs.haskellPackages.hackage-db
+          jobs.haskellPackages.policeman
+          jobs.haskellPackages.xmonad
+          jobs.haskellPackages.xmonad-contrib
+          # haskell packages maintained by @peti
+          # imported from the old hydra jobset
+          jobs.haskellPackages.hopenssl
+          jobs.haskellPackages.hsemail
+          jobs.haskellPackages.hsyslog
+        ];
       };
-      constituents = accumulateDerivations [
-        # haskell specific tests
-        jobs.tests.haskell
-        jobs.tests.writers # writeHaskell{,Bin}
-        # important top-level packages
-        jobs.cabal-install
-        jobs.cabal2nix
-        jobs.cachix
-        jobs.darcs
-        jobs.haskell-language-server
-        jobs.hledger
-        jobs.hledger-ui
-        jobs.hpack
-        jobs.niv
-        jobs.pandoc
-        jobs.stack
-        jobs.stylish-haskell
-        # important haskell (library) packages
-        jobs.haskellPackages.cabal-plan
-        jobs.haskellPackages.distribution-nixpkgs
-        jobs.haskellPackages.hackage-db
-        jobs.haskellPackages.policeman
-        jobs.haskellPackages.xmonad
-        jobs.haskellPackages.xmonad-contrib
-        # haskell packages maintained by @peti
-        # imported from the old hydra jobset
-        jobs.haskellPackages.hopenssl
-        jobs.haskellPackages.hsemail
-        jobs.haskellPackages.hsyslog
-      ];
-    };
-    maintained = pkgs.releaseTools.aggregate {
-      name = "maintained-haskell-packages";
-      meta = {
-        description = "Aggregate jobset of all haskell packages with a maintainer";
-        maintainers = lib.teams.haskell.members;
+      maintained = pkgs.releaseTools.aggregate {
+        name = "maintained-haskell-packages";
+        meta = {
+          description = "Aggregate jobset of all haskell packages with a maintainer";
+          maintainers = lib.teams.haskell.members;
+        };
+        constituents = accumulateDerivations
+          (builtins.map
+            (name: jobs.haskellPackages."${name}")
+            (maintainedPkgNames pkgs.haskellPackages));
       };
-      constituents = accumulateDerivations
-        (builtins.map
-          (name: jobs.haskellPackages."${name}")
-          (maintainedPkgNames pkgs.haskellPackages));
-    };
-  };
+    }
+  ];
 
 in jobs