about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/contributing/coding-conventions.xml10
-rw-r--r--doc/languages-frameworks/vim.section.md14
-rw-r--r--lib/sources.nix2
-rw-r--r--maintainers/maintainer-list.nix46
-rw-r--r--nixos/doc/manual/default.nix1
-rw-r--r--nixos/doc/manual/man-nixos-install.xml23
-rw-r--r--nixos/doc/manual/release-notes/rl-2009.xml2
-rw-r--r--nixos/doc/manual/release-notes/rl-2103.xml8
-rw-r--r--nixos/lib/make-disk-image.nix16
-rw-r--r--nixos/maintainers/scripts/ec2/amazon-image.nix2
-rwxr-xr-xnixos/maintainers/scripts/ec2/create-amis.sh54
-rw-r--r--nixos/modules/config/fonts/fontdir.nix2
-rw-r--r--nixos/modules/installer/tools/nixos-install.sh2
-rw-r--r--nixos/modules/misc/ids.nix2
-rw-r--r--nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix3
-rw-r--r--nixos/modules/services/databases/postgresql.nix15
-rw-r--r--nixos/modules/services/databases/victoriametrics.nix2
-rw-r--r--nixos/modules/services/hardware/lcd.nix5
-rw-r--r--nixos/modules/services/hardware/undervolt.nix46
-rw-r--r--nixos/modules/services/mail/dovecot.nix2
-rw-r--r--nixos/modules/services/misc/autorandr.nix4
-rw-r--r--nixos/modules/services/misc/cgminer.nix2
-rw-r--r--nixos/modules/services/misc/safeeyes.nix4
-rw-r--r--nixos/modules/services/monitoring/prometheus/default.nix48
-rw-r--r--nixos/modules/services/monitoring/teamviewer.nix4
-rw-r--r--nixos/modules/services/network-filesystems/ceph.nix8
-rw-r--r--nixos/modules/services/networking/babeld.nix34
-rw-r--r--nixos/modules/services/networking/blockbook-frontend.nix24
-rw-r--r--nixos/modules/services/networking/cjdns.nix2
-rw-r--r--nixos/modules/services/networking/dnsdist.nix1
-rw-r--r--nixos/modules/services/networking/mullvad-vpn.nix4
-rw-r--r--nixos/modules/services/networking/murmur.nix5
-rw-r--r--nixos/modules/services/networking/namecoind.nix4
-rw-r--r--nixos/modules/services/networking/nextdns.nix4
-rw-r--r--nixos/modules/services/networking/nix-store-gcs-proxy.nix2
-rw-r--r--nixos/modules/services/networking/nsd.nix4
-rw-r--r--nixos/modules/services/networking/supybot.nix4
-rw-r--r--nixos/modules/services/networking/tailscale.nix6
-rw-r--r--nixos/modules/services/security/vault.nix4
-rw-r--r--nixos/modules/services/web-apps/moinmoin.nix3
-rw-r--r--nixos/modules/services/web-apps/shiori.nix51
-rw-r--r--nixos/modules/services/web-servers/caddy.nix14
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix3
-rw-r--r--nixos/modules/services/web-servers/traefik.nix4
-rw-r--r--nixos/modules/services/x11/xserver.nix8
-rw-r--r--nixos/modules/system/boot/networkd.nix2
-rw-r--r--nixos/modules/system/boot/stage-1-init.sh3
-rw-r--r--nixos/modules/system/boot/systemd-unit-options.nix16
-rw-r--r--nixos/modules/system/boot/systemd.nix29
-rw-r--r--nixos/modules/virtualisation/amazon-image.nix2
-rw-r--r--nixos/tests/firefox.nix91
-rw-r--r--pkgs/applications/audio/opustags/default.nix4
-rw-r--r--pkgs/applications/blockchains/ergo/default.nix4
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/monero-gui/default.nix10
-rw-r--r--pkgs/applications/blockchains/monero/default.nix4
-rw-r--r--pkgs/applications/editors/android-studio/default.nix6
-rw-r--r--pkgs/applications/editors/marker/default.nix49
-rw-r--r--pkgs/applications/editors/neovim/utils.nix159
-rw-r--r--pkgs/applications/editors/neovim/wrapper.nix128
-rw-r--r--pkgs/applications/editors/textadept/default.nix16
-rw-r--r--pkgs/applications/editors/textadept/deps.nix24
-rw-r--r--pkgs/applications/editors/uemacs/default.nix38
-rw-r--r--pkgs/applications/kde/default.nix1
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/kdeconnect-kde.nix (renamed from pkgs/applications/misc/kdeconnect/default.nix)78
-rw-r--r--pkgs/applications/kde/okular.nix4
-rw-r--r--pkgs/applications/kde/srcs.nix1728
-rw-r--r--pkgs/applications/misc/archiver/default.nix6
-rw-r--r--pkgs/applications/misc/batsignal/default.nix4
-rw-r--r--pkgs/applications/misc/clipcat/default.nix64
-rw-r--r--pkgs/applications/misc/dstask/default.nix4
-rw-r--r--pkgs/applications/misc/electrum/ltc.nix2
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix5
-rw-r--r--pkgs/applications/misc/geoipupdate/default.nix6
-rw-r--r--pkgs/applications/misc/hugo/default.nix6
-rw-r--r--pkgs/applications/misc/jotta-cli/default.nix4
-rw-r--r--pkgs/applications/misc/peaclock/default.nix24
-rw-r--r--pkgs/applications/misc/prusa-slicer/super-slicer.nix4
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/misc/teleprompter/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix10
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix1
-rw-r--r--pkgs/applications/networking/browsers/firefox/wrapper.nix4
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.nix5
-rw-r--r--pkgs/applications/networking/cloudflared/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/atlantis/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix29
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/default.nix1
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json8
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-package.json4
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/skype-call-recorder/conference.patch148
-rw-r--r--pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix28
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt-install.patch159
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
-rw-r--r--pkgs/applications/networking/irc/ircdog/default.nix28
-rw-r--r--pkgs/applications/networking/mullvad-vpn/default.nix4
-rw-r--r--pkgs/applications/networking/remote/citrix-workspace/generic.nix12
-rw-r--r--pkgs/applications/networking/remote/citrix-workspace/sources.nix13
-rw-r--r--pkgs/applications/office/zanshin/default.nix37
-rw-r--r--pkgs/applications/radio/fldigi/default.nix4
-rw-r--r--pkgs/applications/radio/noaa-apt/default.nix7
-rw-r--r--pkgs/applications/science/biology/last/default.nix4
-rw-r--r--pkgs/applications/science/biology/lumpy/default.nix9
-rw-r--r--pkgs/applications/science/biology/samtools/default.nix6
-rw-r--r--pkgs/applications/science/logic/coq/default.nix7
-rw-r--r--pkgs/applications/science/math/geogebra/default.nix92
-rw-r--r--pkgs/applications/science/math/geogebra/geogebra6.nix92
-rw-r--r--pkgs/applications/terminal-emulators/alacritty/default.nix (renamed from pkgs/applications/misc/alacritty/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/aminal/default.nix (renamed from pkgs/applications/misc/aminal/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/cool-retro-term/default.nix (renamed from pkgs/applications/misc/cool-retro-term/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/eterm/default.nix (renamed from pkgs/applications/misc/eterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/evilvte/default.nix (renamed from pkgs/applications/misc/evilvte/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/foot/default.nix (renamed from pkgs/applications/misc/foot/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/guake/default.nix (renamed from pkgs/applications/misc/guake/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/havoc/default.nix (renamed from pkgs/applications/misc/havoc/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/hyper/default.nix (renamed from pkgs/applications/misc/hyper/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/iterm2/default.nix (renamed from pkgs/applications/misc/iterm2/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/iterm2/disable_updates.patch (renamed from pkgs/applications/misc/iterm2/disable_updates.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/kitty/default.nix (renamed from pkgs/applications/misc/kitty/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/kitty/fix-paths.patch (renamed from pkgs/applications/misc/kitty/fix-paths.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/lilyterm/default.nix (renamed from pkgs/applications/misc/lilyterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/lxterminal/default.nix (renamed from pkgs/applications/misc/lxterminal/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch (renamed from pkgs/applications/misc/lxterminal/respect-xml-catalog-files-var.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/microcom/default.nix (renamed from pkgs/applications/misc/microcom/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/mlterm/default.nix (renamed from pkgs/applications/misc/mlterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/mrxvt/default.nix (renamed from pkgs/applications/misc/mrxvt/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/nimmm/default.nix (renamed from pkgs/applications/misc/nimmm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/roxterm/default.nix (renamed from pkgs/applications/misc/roxterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-bidi/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-bidi/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perl/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perls/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-resize-font/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-resize-font/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-tabbedex/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-theme-switch/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-vtwheel/default.nix (renamed from pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix)4
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/default.nix (renamed from pkgs/applications/misc/rxvt-unicode/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/patches/256-color-resources.patch (renamed from pkgs/applications/misc/rxvt-unicode/patches/256-color-resources.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/patches/9.06-font-width.patch (renamed from pkgs/applications/misc/rxvt-unicode/patches/9.06-font-width.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/patches/makefile-phony.patch (renamed from pkgs/applications/misc/rxvt-unicode/patches/makefile-phony.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix (renamed from pkgs/applications/misc/rxvt-unicode/wrapper.nix)2
-rw-r--r--pkgs/applications/terminal-emulators/rxvt/default.nix (renamed from pkgs/applications/misc/rxvt/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/sakura/default.nix (renamed from pkgs/applications/misc/sakura/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/st/default.nix (renamed from pkgs/applications/misc/st/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/st/xst.nix (renamed from pkgs/applications/misc/st/xst.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/stupidterm/default.nix (renamed from pkgs/applications/misc/stupidterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/terminator/default.nix (renamed from pkgs/applications/misc/terminator/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/terminus/default.nix (renamed from pkgs/applications/misc/terminus/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/termite/add_errno_header.patch (renamed from pkgs/applications/misc/termite/add_errno_header.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/termite/default.nix (renamed from pkgs/applications/misc/termite/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/termite/remove_ldflags_macos.patch (renamed from pkgs/applications/misc/termite/remove_ldflags_macos.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/termite/url_regexp_trailing.patch (renamed from pkgs/applications/misc/termite/url_regexp_trailing.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/termite/wrapper.nix (renamed from pkgs/applications/misc/termite/wrapper.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/termonad/default.nix (renamed from pkgs/applications/misc/termonad/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/tilda/default.nix (renamed from pkgs/applications/misc/tilda/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/tilix/default.nix (renamed from pkgs/applications/misc/tilix/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/wayst/default.nix (renamed from pkgs/applications/misc/wayst/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/wayst/utf8proc.patch (renamed from pkgs/applications/misc/wayst/utf8proc.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/x3270/default.nix (renamed from pkgs/applications/misc/x3270/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/xterm/default.nix (renamed from pkgs/applications/misc/xterm/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/xterm/sixel-256.support.patch (renamed from pkgs/applications/misc/xterm/sixel-256.support.patch)0
-rw-r--r--pkgs/applications/terminal-emulators/xtermcontrol/default.nix (renamed from pkgs/applications/misc/xtermcontrol/default.nix)0
-rw-r--r--pkgs/applications/terminal-emulators/yaft/default.nix (renamed from pkgs/applications/misc/yaft/default.nix)0
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-gone/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-trim/default.nix6
-rw-r--r--pkgs/applications/version-management/git-review/default.nix21
-rw-r--r--pkgs/applications/video/linuxstopmotion/default.nix32
-rw-r--r--pkgs/applications/video/linuxstopmotion/linuxstopmotion-fix-wrong-isProcess-logic.patch33
-rw-r--r--pkgs/applications/video/motion/default.nix4
-rw-r--r--pkgs/applications/video/obs-studio/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix6
-rw-r--r--pkgs/build-support/cc-wrapper/default.nix2
-rw-r--r--pkgs/build-support/writers/default.nix7
-rwxr-xr-xpkgs/common-updater/scripts/mark-broken152
-rw-r--r--pkgs/data/fonts/iosevka/bin.nix37
-rwxr-xr-xpkgs/data/fonts/iosevka/update.sh28
-rw-r--r--pkgs/data/fonts/iosevka/variants.nix24
-rw-r--r--pkgs/development/compilers/abcl/default.nix4
-rw-r--r--pkgs/development/compilers/flutter/default.nix28
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix11
-rw-r--r--pkgs/development/compilers/flutter/patches/dev/disable-auto-update.patch (renamed from pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch)8
-rw-r--r--pkgs/development/compilers/flutter/patches/dev/move-cache.patch (renamed from pkgs/development/compilers/flutter/patches/beta/move-cache.patch)34
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch28
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/move-cache.patch16
-rw-r--r--pkgs/development/compilers/graalvm/enterprise-edition.nix36
-rw-r--r--pkgs/development/compilers/opa/default.nix6
-rw-r--r--pkgs/development/compilers/opa/ocaml-4.03.patch35
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix8
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix8
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml38
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1353
-rw-r--r--pkgs/development/interpreters/dart/default.nix8
-rw-r--r--pkgs/development/libraries/armadillo/default.nix4
-rw-r--r--pkgs/development/libraries/attica/default.nix20
-rw-r--r--pkgs/development/libraries/ffmpeg-full/default.nix9
-rw-r--r--pkgs/development/libraries/libarchive/default.nix10
-rw-r--r--pkgs/development/libraries/libguestfs/default.nix2
-rw-r--r--pkgs/development/libraries/libical/default.nix2
-rw-r--r--pkgs/development/libraries/nuraft/default.nix24
-rw-r--r--pkgs/development/libraries/nuspell/default.nix6
-rw-r--r--pkgs/development/libraries/qtutilities/default.nix4
-rw-r--r--pkgs/development/libraries/science/biology/htslib/default.nix4
-rw-r--r--pkgs/development/libraries/science/networking/ns-3/default.nix8
-rw-r--r--pkgs/development/libraries/sentencepiece/default.nix4
-rw-r--r--pkgs/development/libraries/tdlib/default.nix12
-rw-r--r--pkgs/development/ocaml-modules/base64/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/biocaml/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/bistro/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt.nix2
-rw-r--r--pkgs/development/ocaml-modules/curly/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/fiat-p256/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/hex/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/jwto/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/re/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/webmachine/default.nix1
-rw-r--r--pkgs/development/python-modules/anyio/default.nix58
-rw-r--r--pkgs/development/python-modules/asgi-csrf/default.nix27
-rw-r--r--pkgs/development/python-modules/async_stagger/default.nix44
-rw-r--r--pkgs/development/python-modules/asyncio-throttle/default.nix34
-rw-r--r--pkgs/development/python-modules/beancount/default.nix4
-rw-r--r--pkgs/development/python-modules/bids-validator/default.nix4
-rw-r--r--pkgs/development/python-modules/coordinates/default.nix2
-rw-r--r--pkgs/development/python-modules/hass-nabucasa/default.nix16
-rw-r--r--pkgs/development/python-modules/httpcore/default.nix42
-rw-r--r--pkgs/development/python-modules/httpx/default.nix42
-rw-r--r--pkgs/development/python-modules/ircrobots/default.nix52
-rw-r--r--pkgs/development/python-modules/ircrobots/relax-dependencies.patch14
-rw-r--r--pkgs/development/python-modules/ircstates/default.nix48
-rw-r--r--pkgs/development/python-modules/irctokens/default.nix34
-rw-r--r--pkgs/development/python-modules/py_stringmatching/default.nix4
-rw-r--r--pkgs/development/python-modules/pycognito/default.nix4
-rw-r--r--pkgs/development/python-modules/pysam/default.nix12
-rw-r--r--pkgs/development/python-modules/python-jose/default.nix11
-rw-r--r--pkgs/development/python-modules/python-miio/default.nix17
-rw-r--r--pkgs/development/python-modules/spotipy/default.nix28
-rw-r--r--pkgs/development/python-modules/tensorflow/1/default.nix4
-rw-r--r--pkgs/development/python-modules/toolz/2.nix28
-rw-r--r--pkgs/development/python-modules/toolz/default.nix6
-rw-r--r--pkgs/development/python-modules/trezor/default.nix4
-rw-r--r--pkgs/development/tools/analysis/cargo-tarpaulin/default.nix6
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/analysis/pev/default.nix20
-rw-r--r--pkgs/development/tools/azcopy/default.nix4
-rw-r--r--pkgs/development/tools/bazel-kazel/default.nix4
-rw-r--r--pkgs/development/tools/bazelisk/default.nix4
-rw-r--r--pkgs/development/tools/buildah/default.nix4
-rw-r--r--pkgs/development/tools/castxml/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildkite-agent/default.nix17
-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/electron/default.nix36
-rwxr-xr-xpkgs/development/tools/electron/print-hashes.sh4
-rw-r--r--pkgs/development/tools/gofumpt/default.nix8
-rw-r--r--pkgs/development/tools/gopls/default.nix3
-rw-r--r--pkgs/development/tools/gosec/default.nix6
-rw-r--r--pkgs/development/tools/gotestsum/default.nix6
-rw-r--r--pkgs/development/tools/gotools/default.nix8
-rw-r--r--pkgs/development/tools/ocaml/ocp-build/default.nix17
-rw-r--r--pkgs/development/tools/packer/default.nix4
-rw-r--r--pkgs/development/tools/purescript/spago/spago.nix20
-rw-r--r--pkgs/development/tools/rubocop/Gemfile.lock25
-rw-r--r--pkgs/development/tools/rubocop/gemset.nix61
-rw-r--r--pkgs/development/web/flyctl/default.nix6
-rw-r--r--pkgs/games/among-sus/default.nix29
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix9
-rw-r--r--pkgs/misc/vim-plugins/generated.nix744
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names4
-rw-r--r--pkgs/os-specific/linux/android-udev-rules/default.nix4
-rw-r--r--pkgs/os-specific/linux/checksec/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/raspberrypi/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/generic.nix9
-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.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.8.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix5
-rw-r--r--pkgs/os-specific/linux/kernel/linux-zen.nix1
-rw-r--r--pkgs/os-specific/linux/kmscon/default.nix1
-rw-r--r--pkgs/os-specific/linux/usbip/default.nix5
-rw-r--r--pkgs/servers/asterisk/default.nix12
-rw-r--r--pkgs/servers/consul/default.nix6
-rw-r--r--pkgs/servers/dns/pdns-recursor/default.nix4
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix23
-rw-r--r--pkgs/servers/home-assistant/default.nix16
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/http/nginx/mainline.nix4
-rw-r--r--pkgs/servers/matrix-synapse/default.nix9
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix8
-rw-r--r--pkgs/servers/monitoring/loki/default.nix30
-rw-r--r--pkgs/servers/monitoring/prometheus/blackbox-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/promscale.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/pushgateway.nix4
-rw-r--r--pkgs/servers/openbgpd/default.nix19
-rw-r--r--pkgs/servers/plex/raw.nix4
-rw-r--r--pkgs/servers/tarssh/default.nix25
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/shells/zsh/zplugin/default.nix40
-rw-r--r--pkgs/shells/zsh/zsh-powerlevel10k/default.nix16
-rw-r--r--pkgs/stdenv/native/default.nix9
-rw-r--r--pkgs/tools/admin/aws-google-auth/default.nix14
-rw-r--r--pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix33
-rw-r--r--pkgs/tools/compression/zstd/default.nix6
-rw-r--r--pkgs/tools/filesystems/fatresize/default.nix32
-rw-r--r--pkgs/tools/filesystems/fatresize/fatresize_parted_nix.patch74
-rw-r--r--pkgs/tools/misc/aptly/default.nix4
-rw-r--r--pkgs/tools/misc/bdf2psf/default.nix4
-rw-r--r--pkgs/tools/misc/broadlink-cli/default.nix16
-rw-r--r--pkgs/tools/misc/broot/default.nix6
-rw-r--r--pkgs/tools/misc/ffsend/default.nix6
-rw-r--r--pkgs/tools/misc/fsmon/default.nix4
-rw-r--r--pkgs/tools/misc/fzf/default.nix8
-rw-r--r--pkgs/tools/misc/gif-for-cli/default.nix12
-rw-r--r--pkgs/tools/misc/tmux/default.nix10
-rw-r--r--pkgs/tools/misc/topgrade/default.nix14
-rw-r--r--pkgs/tools/misc/up/default.nix8
-rw-r--r--pkgs/tools/misc/up/gomod.patch23
-rw-r--r--pkgs/tools/misc/yle-dl/default.nix22
-rw-r--r--pkgs/tools/misc/you-get/default.nix4
-rw-r--r--pkgs/tools/misc/zoxide/default.nix32
-rw-r--r--pkgs/tools/networking/bacnet-stack/default.nix31
-rw-r--r--pkgs/tools/networking/chrony/allow-clock_adjtime.patch26
-rw-r--r--pkgs/tools/networking/chrony/default.nix13
-rw-r--r--pkgs/tools/networking/chrony/fix-seccomp-build.patch13
-rw-r--r--pkgs/tools/networking/croc/default.nix6
-rw-r--r--pkgs/tools/networking/mozwire/default.nix6
-rw-r--r--pkgs/tools/package-management/cargo-audit/default.nix6
-rw-r--r--pkgs/tools/package-management/emplace/default.nix6
-rw-r--r--pkgs/tools/security/1password-gui/default.nix4
-rw-r--r--pkgs/tools/security/cfssl/default.nix4
-rw-r--r--pkgs/tools/security/lynis/default.nix4
-rw-r--r--pkgs/tools/security/nmap/qt.nix22
-rw-r--r--pkgs/tools/system/bpytop/default.nix4
-rw-r--r--pkgs/tools/system/ctop/default.nix6
-rw-r--r--pkgs/tools/system/hostctl/default.nix36
-rw-r--r--pkgs/tools/system/zenith/default.nix6
-rw-r--r--pkgs/tools/text/ledger2beancount/default.nix58
-rw-r--r--pkgs/tools/text/shfmt/default.nix21
-rw-r--r--pkgs/tools/text/vgrep/default.nix14
-rw-r--r--pkgs/top-level/aliases.nix3
-rw-r--r--pkgs/top-level/all-packages.nix280
-rw-r--r--pkgs/top-level/perl-packages.nix40
-rw-r--r--pkgs/top-level/python-packages.nix17
362 files changed, 5113 insertions, 3774 deletions
diff --git a/doc/contributing/coding-conventions.xml b/doc/contributing/coding-conventions.xml
index fcb6501f61599..e587275a63836 100644
--- a/doc/contributing/coding-conventions.xml
+++ b/doc/contributing/coding-conventions.xml
@@ -524,6 +524,16 @@ args.stdenv.mkDerivation (args // {
        </varlistentry>
        <varlistentry>
         <term>
+         If it’s a <emphasis>terminal emulator</emphasis>:
+        </term>
+        <listitem>
+         <para>
+          <filename>applications/terminal-emulators</filename> (e.g. <filename>alacritty</filename> or <filename>rxvt</filename> or <filename>termite</filename>)
+         </para>
+        </listitem>
+       </varlistentry>
+       <varlistentry>
+        <term>
          If it’s for <emphasis>video playback / editing</emphasis>:
         </term>
         <listitem>
diff --git a/doc/languages-frameworks/vim.section.md b/doc/languages-frameworks/vim.section.md
index 8e4826232e1ab..84ad567e8c212 100644
--- a/doc/languages-frameworks/vim.section.md
+++ b/doc/languages-frameworks/vim.section.md
@@ -265,6 +265,20 @@ To add a new plugin, run `./update.py --add "[owner]/[name]"`. **NOTE**: This sc
 
 Finally, there are some plugins that are also packaged in nodePackages because they have Javascript-related build steps, such as running webpack. Those plugins are not listed in `vim-plugin-names` or managed by `update.py` at all, and are included separately in `overrides.nix`. Currently, all these plugins are related to the `coc.nvim` ecosystem of Language Server Protocol integration with vim/neovim.
 
+## Updating plugins in nixpkgs
+
+Run the update script with a GitHub API token that has at least `public_repo` access. Running the script without the token is likely to result in rate-limiting (429 errors). For steps on creating an API token, please refer to [GitHub's token documentation](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token).
+
+```sh
+GITHUB_API_TOKEN=my_token ./pkgs/misc/vim-plugins/update.py
+```
+
+Alternatively, set the number of processes to a lower count to avoid rate-limiting.
+
+```sh
+./pkgs/misc/vim-plugins/update.py --proc 1
+```
+
 ## Important repositories
 
 - [vim-pi](https://bitbucket.org/vimcommunity/vim-pi) is a plugin repository
diff --git a/lib/sources.nix b/lib/sources.nix
index 702a0ef889217..1a3afcae67da3 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -6,6 +6,7 @@ let
     hasContext
     match
     readDir
+    split
     storeDir
     tryEval
     ;
@@ -15,7 +16,6 @@ let
     isString
     pathExists
     readFile
-    split
     ;
 in
 rec {
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index c0b1ae06abe5a..b5c3fc2b44118 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1303,10 +1303,12 @@
     name = "Vladimir Serov";
     keys = [
       # compare with https://keybase.io/cab404
-      { longkeyid = "1BB96810926F4E715DEF567E6BA7C26C3FDF7BB3";
+      {
+        longkeyid = "1BB96810926F4E715DEF567E6BA7C26C3FDF7BB3";
         fingerprint = "rsa3072/0xCBDECF658C38079E";
       }
-      { longkeyid = "1EBC648C64D6045463013B3EB7EFFC271D55DB8A";
+      {
+        longkeyid = "1EBC648C64D6045463013B3EB7EFFC271D55DB8A";
         fingerprint = "ed25519/0xB7EFFC271D55DB8A";
       }
     ];
@@ -1431,10 +1433,12 @@
     githubId = 2054509;
     name = "Constantine Evans";
     keys = [
-      { longkeyid = "rsa4096/0xB67DB1D20A93A9F9";
+      {
+        longkeyid = "rsa4096/0xB67DB1D20A93A9F9";
         fingerprint = "32B1 6EE7 DBA5 16DE 526E  4C5A B67D B1D2 0A93 A9F9";
       }
-      { longkeyid = "rsa4096/0x1A1D58B86AE2AABD";
+      {
+        longkeyid = "rsa4096/0x1A1D58B86AE2AABD";
         fingerprint = "669C 1D24 5A87 DB34 6BE4  3216 1A1D 58B8 6AE2 AABD";
       }
     ];
@@ -4373,7 +4377,7 @@
     name = "Jeff Zellner";
   };
   kaction = {
-    name  = "Dmitry Bogatov";
+    name = "Dmitry Bogatov";
     email = "KAction@disroot.org";
     github = "kaction";
     githubId = 44864956;
@@ -5685,12 +5689,6 @@
     githubId = 1387206;
     name = "Mike Sperber";
   };
-  mildlyincompetent = {
-    email = "nix@kch.dev";
-    github = "mildlyincompetent";
-    githubId = 19479662;
-    name = "Kajetan Champlewski";
-  };
   millerjason = {
     email = "mailings-github@millerjason.com";
     github = "millerjason";
@@ -6615,6 +6613,12 @@
     githubId = 131844;
     name = "Igor Pashev";
   };
+  pasqui23 = {
+    email = "p3dimaria@hotmail.it";
+    github = "pasqui23";
+    githubId = 6931743;
+    name = "pasqui23";
+  };
   patryk27 = {
     email = "wychowaniec.patryk@gmail.com";
     github = "Patryk27";
@@ -7006,7 +7010,7 @@
   purcell = {
     email = "steve@sanityinc.com";
     github = "purcell";
-    githubId =	5636;
+    githubId = 5636;
     name = "Steve Purcell";
   };
   puzzlewolf = {
@@ -7275,10 +7279,12 @@
     github = "rissson";
     githubId = 18313093;
     keys = [
-      { longkeyid = "rsa4096/0xF6FD87B15C263EC9";
+      {
+        longkeyid = "rsa4096/0xF6FD87B15C263EC9";
         fingerprint = "8A0E 6A7C 08AB B9DE 67DE  2A13 F6FD 87B1 5C26 3EC9";
       }
-      { longkeyid = "ed25519/0xBBB7A6801DF1E03F";
+      {
+        longkeyid = "ed25519/0xBBB7A6801DF1E03F";
         fingerprint = "C0A7 A9BB 115B C857 4D75  EA99 BBB7 A680 1DF1 E03F";
       }
     ];
@@ -8358,7 +8364,7 @@
     name = "Szczyp";
   };
   szlend = {
-    email = "pub+nix@zlender.si";
+    email = "pub.nix@zlender.si";
     github = "szlend";
     githubId = 7301807;
     name = "Simon Žlender";
@@ -9244,6 +9250,12 @@
     email = "kirill.wedens@gmail.com";
     name = "wedens";
   };
+  wheelsandmetal = {
+    email = "jakob@schmutz.co.uk";
+    github = "wheelsandmetal";
+    githubId = 13031455;
+    name = "Jakob Schmutz";
+  };
   WhittlesJr = {
     email = "alex.joseph.whitt@gmail.com";
     github = "WhittlesJr";
@@ -9328,7 +9340,7 @@
     email = "worldofpeace@protonmail.ch";
     github = "worldofpeace";
     githubId = 28888242;
-    name = "worldofpeace";
+    name = "WORLDofPEACE";
   };
   wscott = {
     email = "wsc9tt@gmail.com";
@@ -9749,7 +9761,7 @@
     name = "Asad Saeeduddin";
   };
   ngerstle = {
-    name  = "Nicholas Gerstle";
+    name = "Nicholas Gerstle";
     email = "ngerstle@gmail.com";
     github = "ngerstle";
     githubId = 1023752;
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix
index 6ca75f869f45c..af7a2e08220c1 100644
--- a/nixos/doc/manual/default.nix
+++ b/nixos/doc/manual/default.nix
@@ -63,6 +63,7 @@ let
     "--stringparam html.script './highlightjs/highlight.pack.js ./highlightjs/loader.js'"
     "--param xref.with.number.and.title 1"
     "--param toc.section.depth 0"
+    "--param generate.consistent.ids 1"
     "--stringparam admon.style ''"
     "--stringparam callout.graphics.extension .svg"
     "--stringparam current.docid manual"
diff --git a/nixos/doc/manual/man-nixos-install.xml b/nixos/doc/manual/man-nixos-install.xml
index b205e23096875..91542d37cbd55 100644
--- a/nixos/doc/manual/man-nixos-install.xml
+++ b/nixos/doc/manual/man-nixos-install.xml
@@ -50,6 +50,12 @@
    </arg>
 
    <arg>
+    <group choice='req'>
+     <arg choice='plain'><option>--impure</option></arg>
+    </group>
+   </arg>
+
+   <arg>
      <arg choice='plain'>
        <option>--channel</option>
      </arg>
@@ -102,6 +108,12 @@
 
    <arg>
     <arg choice='plain'>
+     <option>--keep-going</option>
+    </arg>
+   </arg>
+
+   <arg>
+    <arg choice='plain'>
      <option>--help</option>
     </arg>
    </arg>
@@ -297,6 +309,17 @@
    </varlistentry>
    <varlistentry>
     <term>
+     <option>--keep-going</option>
+    </term>
+    <listitem>
+     <para>
+      Causes Nix to continue building derivations as far as possible
+      in the face of failed builds.
+     </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
      <option>--help</option>
     </term>
     <listitem>
diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml
index c399c22eef558..01f113198eb92 100644
--- a/nixos/doc/manual/release-notes/rl-2009.xml
+++ b/nixos/doc/manual/release-notes/rl-2009.xml
@@ -1618,7 +1618,7 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
       nixpkgs. It was a work in progress to package the
       <link xlink:href="https://www.deepin.org/en/dde/">Deepin Desktop Environment (DDE)</link>,
       including libraries, tools and applications, and it was still
-      missing a service to lauch the desktop environment. It has shown
+      missing a service to launch the desktop environment. It has shown
       to no longer be a feasible goal due to reasons discussed in
       <link xlink:href="https://github.com/NixOS/nixpkgs/issues/94870">issue #94870</link>.
       The package <literal>netease-cloud-music</literal> has also been
diff --git a/nixos/doc/manual/release-notes/rl-2103.xml b/nixos/doc/manual/release-notes/rl-2103.xml
index 54a731b15bc29..2fc87154b2ce1 100644
--- a/nixos/doc/manual/release-notes/rl-2103.xml
+++ b/nixos/doc/manual/release-notes/rl-2103.xml
@@ -135,6 +135,14 @@
      to <package>nextcloud20</package>.
     </para>
    </listitem>
+   <listitem>
+    <para>
+     NixOS now emits a deprecation warning if systemd's <literal>StartLimitInterval</literal> setting is used in a <literal>serviceConfig</literal> section instead of in a <literal>unitConfig</literal>; that setting is deprecated and now undocumented for the service section by systemd upstream, but still effective and somewhat buggy there, which can be confusing. See <link xlink:href="https://github.com/NixOS/nixpkgs/issues/45785">#45785</link> for details.
+    </para>
+    <para>
+     All services should use <xref linkend="opt-systemd.services._name_.startLimitIntervalSec" /> or <literal>StartLimitIntervalSec</literal> in <xref linkend="opt-systemd.services._name_.unitConfig" /> instead.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/lib/make-disk-image.nix b/nixos/lib/make-disk-image.nix
index 8aa606a56af80..a4a488a1b3ea9 100644
--- a/nixos/lib/make-disk-image.nix
+++ b/nixos/lib/make-disk-image.nix
@@ -28,6 +28,9 @@
   #   partition of reasonable size is created in addition to the root partition.
   # For "legacy", the msdos partition table is used and a single large root
   #   partition is created.
+  # For "legacy+gpt", the GPT partition table is used, a 1MiB no-fs partition for
+  #   use by the bootloader is created, and a single large root partition is
+  #   created.
   # For "hybrid", the GPT partition table is used and a mandatory ESP
   #   partition of reasonable size is created in addition to the root partition.
   #   Also a legacy MBR will be present.
@@ -54,7 +57,7 @@
   format ? "raw"
 }:
 
-assert partitionTableType == "legacy" || partitionTableType == "efi" || partitionTableType == "hybrid" || partitionTableType == "none";
+assert partitionTableType == "legacy" || partitionTableType == "legacy+gpt" || partitionTableType == "efi" || partitionTableType == "hybrid" || partitionTableType == "none";
 # We use -E offset=X below, which is only supported by e2fsprogs
 assert partitionTableType != "none" -> fsType == "ext4";
 
@@ -75,6 +78,7 @@ let format' = format; in let
 
   rootPartition = { # switch-case
     legacy = "1";
+    "legacy+gpt" = "2";
     efi = "2";
     hybrid = "3";
   }.${partitionTableType};
@@ -85,6 +89,16 @@ let format' = format; in let
         mklabel msdos \
         mkpart primary ext4 1MiB -1
     '';
+    "legacy+gpt" = ''
+      parted --script $diskImage -- \
+        mklabel gpt \
+        mkpart no-fs 1MB 2MB \
+        set 1 bios_grub on \
+        align-check optimal 1 \
+        mkpart primary ext4 2MB -1 \
+        align-check optimal 2 \
+        print
+    '';
     efi = ''
       parted --script $diskImage -- \
         mklabel gpt \
diff --git a/nixos/maintainers/scripts/ec2/amazon-image.nix b/nixos/maintainers/scripts/ec2/amazon-image.nix
index b09f4ca47a3fc..0ecf07669a119 100644
--- a/nixos/maintainers/scripts/ec2/amazon-image.nix
+++ b/nixos/maintainers/scripts/ec2/amazon-image.nix
@@ -57,7 +57,7 @@ in {
     inherit (cfg) contents format name;
     pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
     partitionTableType = if config.ec2.efi then "efi"
-                         else if config.ec2.hvm then "legacy"
+                         else if config.ec2.hvm then "legacy+gpt"
                          else "none";
     diskSize = cfg.sizeMB;
     fsType = "ext4";
diff --git a/nixos/maintainers/scripts/ec2/create-amis.sh b/nixos/maintainers/scripts/ec2/create-amis.sh
index 89e24f2ccfd95..ec2eb53667901 100755
--- a/nixos/maintainers/scripts/ec2/create-amis.sh
+++ b/nixos/maintainers/scripts/ec2/create-amis.sh
@@ -1,13 +1,15 @@
 #!/usr/bin/env nix-shell
 #!nix-shell -p awscli -p jq -p qemu -i bash
+# shellcheck shell=bash
 
 # Uploads and registers NixOS images built from the
 # <nixos/release.nix> amazonImage attribute. Images are uploaded and
 # registered via a home region, and then copied to other regions.
 
-# The home region requires an s3 bucket, and a "vmimport" IAM role
-# with access to the S3 bucket.  Configuration of the vmimport role is
-# documented in
+# The home region requires an s3 bucket, and an IAM role named "vmimport"
+# (by default) with access to the S3 bucket. The name can be
+# configured with the "service_role_name" variable. Configuration of the
+# vmimport role is documented in
 # https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html
 
 # set -x
@@ -17,6 +19,7 @@ set -euo pipefail
 state_dir=$HOME/amis/ec2-images
 home_region=eu-west-1
 bucket=nixos-amis
+service_role_name=vmimport
 
 regions=(eu-west-1 eu-west-2 eu-west-3 eu-central-1 eu-north-1
          us-east-1 us-east-2 us-west-1 us-west-2
@@ -64,7 +67,7 @@ image_logical_bytes=$(read_image_info .logical_bytes)
 
 # Derived attributes
 
-image_logical_gigabytes=$((($image_logical_bytes-1)/1024/1024/1024+1)) # Round to the next GB
+image_logical_gigabytes=$(((image_logical_bytes-1)/1024/1024/1024+1)) # Round to the next GB
 
 case "$image_system" in
     aarch64-linux)
@@ -100,7 +103,7 @@ write_state() {
     local type=$2
     local val=$3
 
-    mkdir -p $state_dir
+    mkdir -p "$state_dir"
     echo "$val" > "$state_dir/$state_key.$type"
 }
 
@@ -110,8 +113,8 @@ wait_for_import() {
     local state snapshot_id
     log "Waiting for import task $task_id to be completed"
     while true; do
-        read state progress snapshot_id < <(
-            aws ec2 describe-import-snapshot-tasks --region $region --import-task-ids "$task_id" | \
+        read -r state progress snapshot_id < <(
+            aws ec2 describe-import-snapshot-tasks --region "$region" --import-task-ids "$task_id" | \
                 jq -r '.ImportSnapshotTasks[].SnapshotTaskDetail | "\(.Status) \(.Progress) \(.SnapshotId)"'
         )
         log " ... state=$state progress=$progress snapshot_id=$snapshot_id"
@@ -125,6 +128,8 @@ wait_for_import() {
                 ;;
             *)
                 log "Unexpected snapshot import state: '${state}'"
+                log "Full response: "
+                aws ec2 describe-import-snapshot-tasks --region "$region" --import-task-ids "$task_id" >&2
                 exit 1
                 ;;
         esac
@@ -138,8 +143,8 @@ wait_for_image() {
     log "Waiting for image $ami_id to be available"
 
     while true; do
-        read state < <(
-            aws ec2 describe-images --image-ids "$ami_id" --region $region | \
+        read -r state < <(
+            aws ec2 describe-images --image-ids "$ami_id" --region "$region" | \
                 jq -r ".Images[].State"
         )
         log " ... state=$state"
@@ -163,7 +168,7 @@ make_image_public() {
     local region=$1
     local ami_id=$2
 
-    wait_for_image $region "$ami_id"
+    wait_for_image "$region" "$ami_id"
 
     log "Making image $ami_id public"
 
@@ -177,27 +182,30 @@ upload_image() {
     local aws_path=${image_file#/}
 
     local state_key="$region.$image_label.$image_system"
-    local task_id=$(read_state "$state_key" task_id)
-    local snapshot_id=$(read_state "$state_key" snapshot_id)
-    local ami_id=$(read_state "$state_key" ami_id)
+    local task_id
+    task_id=$(read_state "$state_key" task_id)
+    local snapshot_id
+    snapshot_id=$(read_state "$state_key" snapshot_id)
+    local ami_id
+    ami_id=$(read_state "$state_key" ami_id)
 
     if [ -z "$task_id" ]; then
         log "Checking for image on S3"
         if ! aws s3 ls --region "$region" "s3://${bucket}/${aws_path}" >&2; then
             log "Image missing from aws, uploading"
-            aws s3 cp --region $region "$image_file" "s3://${bucket}/${aws_path}" >&2
+            aws s3 cp --region "$region" "$image_file" "s3://${bucket}/${aws_path}" >&2
         fi
 
         log "Importing image from S3 path s3://$bucket/$aws_path"
 
-        task_id=$(aws ec2 import-snapshot --disk-container "{
+        task_id=$(aws ec2 import-snapshot --role-name "$service_role_name" --disk-container "{
           \"Description\": \"nixos-image-${image_label}-${image_system}\",
           \"Format\": \"vhd\",
           \"UserBucket\": {
               \"S3Bucket\": \"$bucket\",
               \"S3Key\": \"$aws_path\"
           }
-        }" --region $region | jq -r '.ImportTaskId')
+        }" --region "$region" | jq -r '.ImportTaskId')
 
         write_state "$state_key" task_id "$task_id"
     fi
@@ -221,16 +229,16 @@ upload_image() {
             --virtualization-type hvm
         )
 
-        block_device_mappings+=(DeviceName=/dev/sdb,VirtualName=ephemeral0)
-        block_device_mappings+=(DeviceName=/dev/sdc,VirtualName=ephemeral1)
-        block_device_mappings+=(DeviceName=/dev/sdd,VirtualName=ephemeral2)
-        block_device_mappings+=(DeviceName=/dev/sde,VirtualName=ephemeral3)
+        block_device_mappings+=("DeviceName=/dev/sdb,VirtualName=ephemeral0")
+        block_device_mappings+=("DeviceName=/dev/sdc,VirtualName=ephemeral1")
+        block_device_mappings+=("DeviceName=/dev/sdd,VirtualName=ephemeral2")
+        block_device_mappings+=("DeviceName=/dev/sde,VirtualName=ephemeral3")
 
         ami_id=$(
             aws ec2 register-image \
                 --name "$image_name" \
                 --description "$image_description" \
-                --region $region \
+                --region "$region" \
                 --architecture $amazon_arch \
                 --block-device-mappings "${block_device_mappings[@]}" \
                 "${extra_flags[@]}" \
@@ -240,7 +248,7 @@ upload_image() {
         write_state "$state_key" ami_id "$ami_id"
     fi
 
-    make_image_public $region "$ami_id"
+    make_image_public "$region" "$ami_id"
 
     echo "$ami_id"
 }
@@ -268,7 +276,7 @@ copy_to_region() {
         write_state "$state_key" ami_id "$ami_id"
     fi
 
-    make_image_public $region "$ami_id"
+    make_image_public "$region" "$ami_id"
 
     echo "$ami_id"
 }
diff --git a/nixos/modules/config/fonts/fontdir.nix b/nixos/modules/config/fonts/fontdir.nix
index 264d73ebafa53..c4bd3a077d339 100644
--- a/nixos/modules/config/fonts/fontdir.nix
+++ b/nixos/modules/config/fonts/fontdir.nix
@@ -8,7 +8,7 @@ let
 
   x11Fonts = pkgs.runCommand "X11-fonts" { preferLocalBuild = true; } ''
     mkdir -p "$out/share/X11/fonts"
-    font_regexp='.*\.\(ttf\|otf\|pcf\|pfa\|pfb\|bdf\)\(\.gz\)?'
+    font_regexp='.*\.\(ttf\|ttc\|otf\|pcf\|pfa\|pfb\|bdf\)\(\.gz\)?'
     find ${toString config.fonts.fonts} -regex "$font_regexp" \
       -exec ln -sf -t "$out/share/X11/fonts" '{}' \;
     cd "$out/share/X11/fonts"
diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh
index 90555f1458036..9d49d4055e431 100644
--- a/nixos/modules/installer/tools/nixos-install.sh
+++ b/nixos/modules/installer/tools/nixos-install.sh
@@ -64,7 +64,7 @@ while [ "$#" -gt 0 ]; do
         --no-bootloader)
             noBootLoader=1
             ;;
-        --show-trace)
+        --show-trace|--impure|--keep-going)
             extraBuildFlags+=("$i")
             ;;
         --help)
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index cd21a1609c915..4e0f8ba718eba 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -468,7 +468,7 @@ in
       #minecraft = 114; # unused
       vault = 115;
       #ripped = 116; # unused
-      #murmur = 117; # unused
+      murmur = 117;
       foundationdb = 118;
       newrelic = 119;
       starbound = 120;
diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix
index d2e7e8e18f94e..79d1ce5805457 100644
--- a/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix
+++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix
@@ -25,19 +25,18 @@ in
   ];
 
   config = mkIf cfg.enable {
-
     systemd.services.hercules-ci-agent = {
       wantedBy = [ "multi-user.target" ];
       after = [ "network-online.target" ];
       wants = [ "network-online.target" ];
       path = [ config.nix.package ];
+      startLimitBurst = 30 * 1000000; # practically infinite
       serviceConfig = {
         User = "hercules-ci-agent";
         ExecStart = command;
         ExecStartPre = testCommand;
         Restart = "on-failure";
         RestartSec = 120;
-        StartLimitBurst = 30 * 1000000; # practically infinite
       };
     };
 
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 5056d50153f6d..f582b0592774f 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -69,11 +69,16 @@ in
         type = types.lines;
         default = "";
         description = ''
-          Defines how users authenticate themselves to the server. By
-          default, "trust" access to local users will always be granted
-          along with any other custom options. If you do not want this,
-          set this option using "lib.mkForce" to override this
-          behaviour.
+          Defines how users authenticate themselves to the server. See the
+          <link xlink:href="https://www.postgresql.org/docs/current/auth-pg-hba-conf.html">
+          PostgreSQL documentation for pg_hba.conf</link>
+          for details on the expected format of this option. By default,
+          peer based authentication will be used for users connecting
+          via the Unix socket, and md5 password authentication will be
+          used for users connecting via TCP. Any added rules will be
+          inserted above the default rules. If you'd like to replace the
+          default rules entirely, you can use <function>lib.mkForce</function> in your
+          module.
         '';
       };
 
diff --git a/nixos/modules/services/databases/victoriametrics.nix b/nixos/modules/services/databases/victoriametrics.nix
index 0af5d2adf3724..5b09115bb2fb0 100644
--- a/nixos/modules/services/databases/victoriametrics.nix
+++ b/nixos/modules/services/databases/victoriametrics.nix
@@ -40,10 +40,10 @@ let cfg = config.services.victoriametrics; in
     systemd.services.victoriametrics = {
       description = "VictoriaMetrics time series database";
       after = [ "network.target" ];
+      startLimitBurst = 5;
       serviceConfig = {
         Restart = "on-failure";
         RestartSec = 1;
-        StartLimitBurst = 5;
         StateDirectory = "victoriametrics";
         DynamicUser = true;
         ExecStart = ''
diff --git a/nixos/modules/services/hardware/lcd.nix b/nixos/modules/services/hardware/lcd.nix
index d78d742cd3185..dc8595ea60cde 100644
--- a/nixos/modules/services/hardware/lcd.nix
+++ b/nixos/modules/services/hardware/lcd.nix
@@ -151,14 +151,13 @@ in with lib; {
         description = "LCDproc - client";
         after = [ "lcdd.service" ];
         wantedBy = [ "lcd.target" ];
+        # Allow restarting for eternity
+        startLimitIntervalSec = lib.mkIf cfg.client.restartForever 0;
         serviceConfig = serviceCfg // {
           ExecStart = "${pkg}/bin/lcdproc -f -c ${clientCfg}";
           # If the server is being restarted at the same time, the client will
           # fail as it cannot connect, so space it out a bit.
           RestartSec = "5";
-          # Allow restarting for eternity
-          StartLimitIntervalSec = lib.mkIf cfg.client.restartForever "0";
-          StartLimitBurst = lib.mkIf cfg.client.restartForever "0";
         };
       };
     };
diff --git a/nixos/modules/services/hardware/undervolt.nix b/nixos/modules/services/hardware/undervolt.nix
index 054ffa35050a9..9c2f78a755ddd 100644
--- a/nixos/modules/services/hardware/undervolt.nix
+++ b/nixos/modules/services/hardware/undervolt.nix
@@ -3,7 +3,12 @@
 with lib;
 let
   cfg = config.services.undervolt;
-  cliArgs = lib.cli.toGNUCommandLineShell {} {
+
+  mkPLimit = limit: window:
+    if (isNull limit && isNull window) then null
+    else assert asserts.assertMsg (!isNull limit && !isNull window) "Both power limit and window must be set";
+      "${toString limit} ${toString window}";
+  cliArgs = lib.cli.toGNUCommandLine {} {
     inherit (cfg)
       verbose
       temp
@@ -21,6 +26,9 @@ let
 
     temp-bat = cfg.tempBat;
     temp-ac = cfg.tempAc;
+
+    power-limit-long = mkPLimit cfg.p1.limit cfg.p1.window;
+    power-limit-short = mkPLimit cfg.p2.limit cfg.p2.window;
   };
 in
 {
@@ -104,6 +112,40 @@ in
       '';
     };
 
+    p1.limit = mkOption {
+      type = with types; nullOr int;
+      default = null;
+      description = ''
+        The P1 Power Limit in Watts.
+        Both limit and window must be set.
+      '';
+    };
+    p1.window = mkOption {
+      type = with types; nullOr (oneOf [ float int ]);
+      default = null;
+      description = ''
+        The P1 Time Window in seconds.
+        Both limit and window must be set.
+      '';
+    };
+
+    p2.limit = mkOption {
+      type = with types; nullOr int;
+      default = null;
+      description = ''
+        The P2 Power Limit in Watts.
+        Both limit and window must be set.
+      '';
+    };
+    p2.window = mkOption {
+      type = with types; nullOr (oneOf [ float int ]);
+      default = null;
+      description = ''
+        The P2 Time Window in seconds.
+        Both limit and window must be set.
+      '';
+    };
+
     useTimer = mkOption {
       type = types.bool;
       default = false;
@@ -133,7 +175,7 @@ in
       serviceConfig = {
         Type = "oneshot";
         Restart = "no";
-        ExecStart = "${pkgs.undervolt}/bin/undervolt ${cliArgs}";
+        ExecStart = "${pkgs.undervolt}/bin/undervolt ${toString cliArgs}";
       };
     };
 
diff --git a/nixos/modules/services/mail/dovecot.nix b/nixos/modules/services/mail/dovecot.nix
index f5c5f795dc1b6..03e7e40e388e1 100644
--- a/nixos/modules/services/mail/dovecot.nix
+++ b/nixos/modules/services/mail/dovecot.nix
@@ -427,12 +427,12 @@ in
       wantedBy = [ "multi-user.target" ];
       restartTriggers = [ cfg.configFile modulesDir ];
 
+      startLimitIntervalSec = 60;  # 1 min
       serviceConfig = {
         ExecStart = "${dovecotPkg}/sbin/dovecot -F";
         ExecReload = "${dovecotPkg}/sbin/doveadm reload";
         Restart = "on-failure";
         RestartSec = "1s";
-        StartLimitInterval = "1min";
         RuntimeDirectory = [ "dovecot2" ];
       };
 
diff --git a/nixos/modules/services/misc/autorandr.nix b/nixos/modules/services/misc/autorandr.nix
index cf7fb5f78d3d5..dfb418af6edeb 100644
--- a/nixos/modules/services/misc/autorandr.nix
+++ b/nixos/modules/services/misc/autorandr.nix
@@ -37,9 +37,9 @@ in {
       description = "Autorandr execution hook";
       after = [ "sleep.target" ];
 
+      startLimitIntervalSec = 5;
+      startLimitBurst = 1;
       serviceConfig = {
-        StartLimitInterval = 5;
-        StartLimitBurst = 1;
         ExecStart = "${pkgs.autorandr}/bin/autorandr --batch --change --default ${cfg.defaultTarget}";
         Type = "oneshot";
         RemainAfterExit = false;
diff --git a/nixos/modules/services/misc/cgminer.nix b/nixos/modules/services/misc/cgminer.nix
index 7635c2a0f4e95..fa9c8c54509ea 100644
--- a/nixos/modules/services/misc/cgminer.nix
+++ b/nixos/modules/services/misc/cgminer.nix
@@ -126,12 +126,12 @@ in
         GPU_USE_SYNC_OBJECTS = "1";
       };
 
+      startLimitIntervalSec = 60;  # 1 min
       serviceConfig = {
         ExecStart = "${pkgs.cgminer}/bin/cgminer --syslog --text-only --config ${cgminerConfig}";
         User = cfg.user;
         RestartSec = "30s";
         Restart = "always";
-        StartLimitInterval = "1m";
       };
     };
 
diff --git a/nixos/modules/services/misc/safeeyes.nix b/nixos/modules/services/misc/safeeyes.nix
index 6ecb0d13187c1..1e748195e41aa 100644
--- a/nixos/modules/services/misc/safeeyes.nix
+++ b/nixos/modules/services/misc/safeeyes.nix
@@ -32,14 +32,14 @@ in
       wantedBy = [ "graphical-session.target" ];
       partOf   = [ "graphical-session.target" ];
 
+      startLimitIntervalSec = 350;
+      startLimitBurst = 10;
       serviceConfig = {
         ExecStart = ''
           ${pkgs.safeeyes}/bin/safeeyes
         '';
         Restart = "on-failure";
         RestartSec = 3;
-        StartLimitInterval = 350;
-        StartLimitBurst = 10;
       };
     };
 
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index 98aaa9c0f030a..72428957109c6 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -45,7 +45,7 @@ let
 
   cmdlineArgs = cfg.extraFlags ++ [
     "--storage.tsdb.path=${workingDir}/data/"
-    "--config.file=${prometheusYml}"
+    "--config.file=/run/prometheus/prometheus-substituted.yaml"
     "--web.listen-address=${cfg.listenAddress}:${builtins.toString cfg.port}"
     "--alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
     "--alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
@@ -522,6 +522,45 @@ in {
       '';
     };
 
+    environmentFile = mkOption {
+      type = types.nullOr types.path;
+      default = null;
+      example = "/root/prometheus.env";
+      description = ''
+        Environment file as defined in <citerefentry>
+        <refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum>
+        </citerefentry>.
+
+        Secrets may be passed to the service without adding them to the
+        world-readable Nix store, by specifying placeholder variables as
+        the option value in Nix and setting these variables accordingly in the
+        environment file.
+
+        Environment variables from this file will be interpolated into the
+        config file using envsubst with this syntax:
+        <literal>$ENVIRONMENT ''${VARIABLE}</literal>
+
+        <programlisting>
+          # Example scrape config entry handling an OAuth bearer token
+          {
+            job_name = "home_assistant";
+            metrics_path = "/api/prometheus";
+            scheme = "https";
+            bearer_token = "\''${HOME_ASSISTANT_BEARER_TOKEN}";
+            [...]
+          }
+        </programlisting>
+
+        <programlisting>
+          # Content of the environment file
+          HOME_ASSISTANT_BEARER_TOKEN=someoauthbearertoken
+        </programlisting>
+
+        Note that this file needs to be available on the host on which
+        <literal>Prometheus</literal> is running.
+      '';
+    };
+
     configText = mkOption {
       type = types.nullOr types.lines;
       default = null;
@@ -662,12 +701,19 @@ in {
     systemd.services.prometheus = {
       wantedBy = [ "multi-user.target" ];
       after    = [ "network.target" ];
+      preStart = ''
+         ${lib.getBin pkgs.envsubst}/bin/envsubst -o "/run/prometheus/prometheus-substituted.yaml" \
+                                                  -i "${prometheusYml}"
+      '';
       serviceConfig = {
         ExecStart = "${cfg.package}/bin/prometheus" +
           optionalString (length cmdlineArgs != 0) (" \\\n  " +
             concatStringsSep " \\\n  " cmdlineArgs);
         User = "prometheus";
         Restart  = "always";
+        EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
+        RuntimeDirectory = "prometheus";
+        RuntimeDirectoryMode = "0700";
         WorkingDirectory = workingDir;
         StateDirectory = cfg.stateDir;
       };
diff --git a/nixos/modules/services/monitoring/teamviewer.nix b/nixos/modules/services/monitoring/teamviewer.nix
index 8d781d82d0864..ce9e57a187cdc 100644
--- a/nixos/modules/services/monitoring/teamviewer.nix
+++ b/nixos/modules/services/monitoring/teamviewer.nix
@@ -31,14 +31,14 @@ in
       after = [ "NetworkManager-wait-online.service" "network.target" ];
       preStart = "mkdir -pv /var/lib/teamviewer /var/log/teamviewer";
 
+      startLimitIntervalSec = 60;
+      startLimitBurst = 10;
       serviceConfig = {
         Type = "forking";
         ExecStart = "${pkgs.teamviewer}/bin/teamviewerd -d";
         PIDFile = "/run/teamviewerd.pid";
         ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
         Restart = "on-abort";
-        StartLimitInterval = "60";
-        StartLimitBurst = "10";
       };
     };
   };
diff --git a/nixos/modules/services/network-filesystems/ceph.nix b/nixos/modules/services/network-filesystems/ceph.nix
index d17959a6a3059..f2dc740fd88e9 100644
--- a/nixos/modules/services/network-filesystems/ceph.nix
+++ b/nixos/modules/services/network-filesystems/ceph.nix
@@ -28,6 +28,9 @@ let
 
     # Don't start services that are not yet initialized
     unitConfig.ConditionPathExists = "/var/lib/${stateDirectory}/keyring";
+    startLimitBurst =
+      if daemonType == "osd" then 30 else if lib.elem daemonType ["mgr" "mds"] then 3 else 5;
+    startLimitIntervalSec = 60 * 30;  # 30 mins
 
     serviceConfig = {
       LimitNOFILE = 1048576;
@@ -39,8 +42,6 @@ let
       ProtectHome = "true";
       ProtectSystem = "full";
       Restart = "on-failure";
-      StartLimitBurst = "5";
-      StartLimitInterval = "30min";
       StateDirectory = stateDirectory;
       User = "ceph";
       Group = if daemonType == "osd" then "disk" else "ceph";
@@ -48,13 +49,10 @@ let
                     -f --cluster ${clusterName} --id ${daemonId}'';
     } // optionalAttrs (daemonType == "osd") {
       ExecStartPre = ''${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh --id ${daemonId} --cluster ${clusterName}'';
-      StartLimitBurst = "30";
       RestartSec = "20s";
       PrivateDevices = "no"; # osd needs disk access
     } // optionalAttrs ( daemonType == "mon") {
       RestartSec = "10";
-    } // optionalAttrs (lib.elem daemonType ["mgr" "mds"]) {
-      StartLimitBurst = "3";
     };
   });
 
diff --git a/nixos/modules/services/networking/babeld.nix b/nixos/modules/services/networking/babeld.nix
index e62c74d0069df..90395dbd3c54c 100644
--- a/nixos/modules/services/networking/babeld.nix
+++ b/nixos/modules/services/networking/babeld.nix
@@ -87,9 +87,37 @@ in
       description = "Babel routing daemon";
       after = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
-      serviceConfig.ExecStart = "${pkgs.babeld}/bin/babeld -c ${configFile}";
+      serviceConfig = {
+        ExecStart = "${pkgs.babeld}/bin/babeld -c ${configFile} -I /run/babeld/babeld.pid -S /var/lib/babeld/state";
+        CapabilityBoundingSet = [ "CAP_NET_ADMIN" ];
+        IPAddressAllow = [ "fe80::/64" "ff00::/8" "::1/128" "127.0.0.0/8" ];
+        IPAddressDeny = "any";
+        LockPersonality = true;
+        NoNewPrivileges = true;
+        MemoryDenyWriteExecute = true;
+        ProtectSystem = "strict";
+        ProtectClock = true;
+        ProtectKernelTunables = false; # Couldn't write sysctl: Read-only file system
+        ProtectKernelModules = true;
+        ProtectKernelLogs = true;
+        ProtectControlGroups = true;
+        RestrictAddressFamilies = [ "AF_NETLINK" "AF_INET6" ];
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        RestrictSUIDSGID = true;
+        RemoveIPC = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        PrivateMounts = true;
+        PrivateTmp = true;
+        PrivateDevices = true;
+        PrivateUsers = false; # kernel_route(ADD): Operation not permitted
+        SystemCallArchitectures = "native";
+        SystemCallFilter = [ "@system-service" ];
+        UMask = "0177";
+        RuntimeDirectory = "babeld";
+        StateDirectory = "babeld";
+      };
     };
-
   };
-
 }
diff --git a/nixos/modules/services/networking/blockbook-frontend.nix b/nixos/modules/services/networking/blockbook-frontend.nix
index dde24522756af..ca323e495ec1d 100644
--- a/nixos/modules/services/networking/blockbook-frontend.nix
+++ b/nixos/modules/services/networking/blockbook-frontend.nix
@@ -158,15 +158,21 @@ let
         type = types.attrs;
         default = {};
         example = literalExample '' {
-          alternative_estimate_fee = "whatthefee-disabled";
-          alternative_estimate_fee_params = "{\"url\": \"https://whatthefee.io/data.json\", \"periodSeconds\": 60}";
-          fiat_rates = "coingecko";
-          fiat_rates_params = "{\"url\": \"https://api.coingecko.com/api/v3\", \"coin\": \"bitcoin\", \"periodSeconds\": 60}";
-          coin_shortcut = "BTC";
-          coin_label = "Bitcoin";
-          xpub_magic = 76067358;
-          xpub_magic_segwit_p2sh = 77429938;
-          xpub_magic_segwit_native = 78792518;
+          "alternative_estimate_fee" = "whatthefee-disabled";
+          "alternative_estimate_fee_params" = "{\"url\": \"https://whatthefee.io/data.json\", \"periodSeconds\": 60}";
+          "fiat_rates" = "coingecko";
+          "fiat_rates_params" = "{\"url\": \"https://api.coingecko.com/api/v3\", \"coin\": \"bitcoin\", \"periodSeconds\": 60}";
+          "coin_shortcut" = "BTC";
+          "coin_label" = "Bitcoin";
+          "parse" = true;
+          "subversion" = "";
+          "address_format" = "";
+          "xpub_magic" = 76067358;
+          "xpub_magic_segwit_p2sh" = 77429938;
+          "xpub_magic_segwit_native" = 78792518;
+          "mempool_workers" = 8;
+          "mempool_sub_workers" = 2;
+          "block_addresses_to_keep" = 300;
         }'';
         description = ''
           Additional configurations to be appended to <filename>coin.conf</filename>.
diff --git a/nixos/modules/services/networking/cjdns.nix b/nixos/modules/services/networking/cjdns.nix
index 5f8ac96b2292c..f116d6392ea7d 100644
--- a/nixos/modules/services/networking/cjdns.nix
+++ b/nixos/modules/services/networking/cjdns.nix
@@ -264,10 +264,10 @@ in
          ''
       );
 
+      startLimitIntervalSec = 0;
       serviceConfig = {
         Type = "forking";
         Restart = "always";
-        StartLimitInterval = 0;
         RestartSec = 1;
         CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_RAW CAP_SETUID";
         ProtectSystem = true;
diff --git a/nixos/modules/services/networking/dnsdist.nix b/nixos/modules/services/networking/dnsdist.nix
index c48835e73612b..05c2bdef83e70 100644
--- a/nixos/modules/services/networking/dnsdist.nix
+++ b/nixos/modules/services/networking/dnsdist.nix
@@ -41,6 +41,7 @@ in {
     systemd.services.dnsdist = {
       wantedBy = [ "multi-user.target" ];
 
+      startLimitIntervalSec = 0;
       serviceConfig = {
         DynamicUser = true;
 
diff --git a/nixos/modules/services/networking/mullvad-vpn.nix b/nixos/modules/services/networking/mullvad-vpn.nix
index cc98414257ca7..d9e6e57c92cc6 100644
--- a/nixos/modules/services/networking/mullvad-vpn.nix
+++ b/nixos/modules/services/networking/mullvad-vpn.nix
@@ -29,9 +29,9 @@ with lib;
         # Needed for ping
         "/run/wrappers"
       ];
+      startLimitBurst = 5;
+      startLimitIntervalSec = 20;
       serviceConfig = {
-        StartLimitBurst = 5;
-        StartLimitIntervalSec = 20;
         ExecStart = "${pkgs.mullvad-vpn}/bin/mullvad-daemon -v --disable-stdout-timestamps";
         Restart = "always";
         RestartSec = 1;
diff --git a/nixos/modules/services/networking/murmur.nix b/nixos/modules/services/networking/murmur.nix
index b384f436861db..c6e5649ec4798 100644
--- a/nixos/modules/services/networking/murmur.nix
+++ b/nixos/modules/services/networking/murmur.nix
@@ -278,6 +278,10 @@ in
       home            = "/var/lib/murmur";
       createHome      = true;
       uid             = config.ids.uids.murmur;
+      group           = "murmur";
+    };
+    users.groups.murmur = {
+      gid             = config.ids.gids.murmur;
     };
 
     systemd.services.murmur = {
@@ -300,6 +304,7 @@ in
         RuntimeDirectory = "murmur";
         RuntimeDirectoryMode = "0700";
         User = "murmur";
+        Group = "murmur";
       };
     };
   };
diff --git a/nixos/modules/services/networking/namecoind.nix b/nixos/modules/services/networking/namecoind.nix
index 16f85df2e77c8..4966ed2cac8dc 100644
--- a/nixos/modules/services/networking/namecoind.nix
+++ b/nixos/modules/services/networking/namecoind.nix
@@ -165,6 +165,8 @@ in
       after    = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
 
+      startLimitIntervalSec = 120;
+      startLimitBurst = 5;
       serviceConfig = {
         User  = "namecoin";
         Group = "namecoin";
@@ -176,8 +178,6 @@ in
         TimeoutStopSec     = "60s";
         TimeoutStartSec    = "2s";
         Restart            = "always";
-        StartLimitInterval = "120s";
-        StartLimitBurst    = "5";
       };
 
       preStart = optionalString (cfg.wallet != "${dataDir}/wallet.dat")  ''
diff --git a/nixos/modules/services/networking/nextdns.nix b/nixos/modules/services/networking/nextdns.nix
index a633bff62ec7e..b070eeec894fe 100644
--- a/nixos/modules/services/networking/nextdns.nix
+++ b/nixos/modules/services/networking/nextdns.nix
@@ -28,9 +28,9 @@ in {
       environment = {
         SERVICE_RUN_MODE = "1";
       };
+      startLimitIntervalSec = 5;
+      startLimitBurst = 10;
       serviceConfig = {
-        StartLimitInterval = 5;
-        StartLimitBurst = 10;
         ExecStart = "${pkgs.nextdns}/bin/nextdns run ${escapeShellArgs config.services.nextdns.arguments}";
         RestartSec = 120;
         LimitMEMLOCK = "infinity";
diff --git a/nixos/modules/services/networking/nix-store-gcs-proxy.nix b/nixos/modules/services/networking/nix-store-gcs-proxy.nix
index 3f2ce5bca4da4..0012302db2e3c 100644
--- a/nixos/modules/services/networking/nix-store-gcs-proxy.nix
+++ b/nixos/modules/services/networking/nix-store-gcs-proxy.nix
@@ -42,9 +42,9 @@ in
       description = "A HTTP nix store that proxies requests to Google Storage";
       wantedBy = ["multi-user.target"];
 
+      startLimitIntervalSec = 10;
       serviceConfig = {
         RestartSec = 5;
-        StartLimitInterval = 10;
         ExecStart = ''
           ${pkgs.nix-store-gcs-proxy}/bin/nix-store-gcs-proxy \
             --bucket-name ${cfg.bucketName} \
diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix
index 3ecbd06ee416b..f33c350a257a9 100644
--- a/nixos/modules/services/networking/nsd.nix
+++ b/nixos/modules/services/networking/nsd.nix
@@ -916,14 +916,14 @@ in
       after = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
 
+      startLimitBurst = 4;
+      startLimitIntervalSec = 5 * 60;  # 5 mins
       serviceConfig = {
         ExecStart = "${nsdPkg}/sbin/nsd -d -c ${nsdEnv}/nsd.conf";
         StandardError = "null";
         PIDFile = pidFile;
         Restart = "always";
         RestartSec = "4s";
-        StartLimitBurst = 4;
-        StartLimitInterval = "5min";
       };
 
       preStart = ''
diff --git a/nixos/modules/services/networking/supybot.nix b/nixos/modules/services/networking/supybot.nix
index dc9fb31ffd0bf..7a62e04ec7c4b 100644
--- a/nixos/modules/services/networking/supybot.nix
+++ b/nixos/modules/services/networking/supybot.nix
@@ -103,6 +103,8 @@ in
         rm -f '${cfg.stateDir}/supybot.cfg.bak'
       '';
 
+      startLimitIntervalSec = 5 * 60;  # 5 min
+      startLimitBurst = 1;
       serviceConfig = {
         ExecStart = "${pyEnv}/bin/supybot ${cfg.stateDir}/supybot.cfg";
         PIDFile = "/run/supybot.pid";
@@ -110,8 +112,6 @@ in
         Group = "supybot";
         UMask = "0007";
         Restart = "on-abort";
-        StartLimitInterval = "5m";
-        StartLimitBurst = "1";
 
         NoNewPrivileges = true;
         PrivateDevices = true;
diff --git a/nixos/modules/services/networking/tailscale.nix b/nixos/modules/services/networking/tailscale.nix
index 4d6aeb75ebd15..4419c8a0602f8 100644
--- a/nixos/modules/services/networking/tailscale.nix
+++ b/nixos/modules/services/networking/tailscale.nix
@@ -17,6 +17,7 @@ in {
   };
 
   config = mkIf cfg.enable {
+    environment.systemPackages = [ pkgs.tailscale ]; # for the CLI
     systemd.services.tailscale = {
       description = "Tailscale client daemon";
 
@@ -24,10 +25,7 @@ in {
       wants = [ "network-pre.target" ];
       wantedBy = [ "multi-user.target" ];
 
-      unitConfig = {
-        StartLimitIntervalSec = 0;
-        StartLimitBurst = 0;
-      };
+      startLimitIntervalSec = 0;
 
       serviceConfig = {
         ExecStart =
diff --git a/nixos/modules/services/security/vault.nix b/nixos/modules/services/security/vault.nix
index 6a8a3a93327eb..64622454b9dee 100644
--- a/nixos/modules/services/security/vault.nix
+++ b/nixos/modules/services/security/vault.nix
@@ -131,6 +131,8 @@ in
 
       restartIfChanged = false; # do not restart on "nixos-rebuild switch". It would seal the storage and disrupt the clients.
 
+      startLimitIntervalSec = 60;
+      startLimitBurst = 3;
       serviceConfig = {
         User = "vault";
         Group = "vault";
@@ -145,8 +147,6 @@ in
         KillSignal = "SIGINT";
         TimeoutStopSec = "30s";
         Restart = "on-failure";
-        StartLimitInterval = "60s";
-        StartLimitBurst = 3;
       };
 
       unitConfig.RequiresMountsFor = optional (cfg.storagePath != null) cfg.storagePath;
diff --git a/nixos/modules/services/web-apps/moinmoin.nix b/nixos/modules/services/web-apps/moinmoin.nix
index dc7abce2a5cb5..3a876f75f4a48 100644
--- a/nixos/modules/services/web-apps/moinmoin.nix
+++ b/nixos/modules/services/web-apps/moinmoin.nix
@@ -224,6 +224,8 @@ in
               chmod -R u+w ${dataDir}/${wikiIdent}/underlay
             '';
 
+            startLimitIntervalSec = 30;
+
             serviceConfig = {
               User = user;
               Group = group;
@@ -237,7 +239,6 @@ in
 
               Restart = "on-failure";
               RestartSec = "2s";
-              StartLimitIntervalSec = "30s";
 
               StateDirectory = "moin/${wikiIdent}";
               StateDirectoryMode = "0750";
diff --git a/nixos/modules/services/web-apps/shiori.nix b/nixos/modules/services/web-apps/shiori.nix
index 1817a2039352d..9083ddfa2206b 100644
--- a/nixos/modules/services/web-apps/shiori.nix
+++ b/nixos/modules/services/web-apps/shiori.nix
@@ -37,11 +37,60 @@ in {
       description = "Shiori simple bookmarks manager";
       wantedBy = [ "multi-user.target" ];
 
+      environment.SHIORI_DIR = "/var/lib/shiori";
+
       serviceConfig = {
         ExecStart = "${package}/bin/shiori serve --address '${address}' --port '${toString port}'";
+
         DynamicUser = true;
-        Environment = "SHIORI_DIR=/var/lib/shiori";
         StateDirectory = "shiori";
+        # As the RootDirectory
+        RuntimeDirectory = "shiori";
+
+        # Security options
+
+        BindReadOnlyPaths = [
+          "/nix/store"
+
+          # For SSL certificates, and the resolv.conf
+          "/etc"
+        ];
+
+        CapabilityBoundingSet = "";
+
+        DeviceAllow = "";
+
+        LockPersonality = true;
+
+        MemoryDenyWriteExecute = true;
+
+        PrivateDevices = true;
+        PrivateUsers = true;
+
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+
+        RestrictNamespaces = true;
+        RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
+        RestrictRealtime = true;
+        RestrictSUIDSGID = true;
+
+        RootDirectory = "/run/shiori";
+
+        SystemCallArchitectures = "native";
+        SystemCallErrorNumber = "EPERM";
+        SystemCallFilter = [
+          "@system-service"
+
+          "~@chown" "~@cpu-emulation" "~@debug" "~@ipc" "~@keyring" "~@memlock"
+          "~@module" "~@obsolete" "~@privileged" "~@process" "~@raw-io"
+          "~@resources" "~@setuid"
+        ];
       };
     };
   };
diff --git a/nixos/modules/services/web-servers/caddy.nix b/nixos/modules/services/web-servers/caddy.nix
index 72bf9a9a1f448..297b732733927 100644
--- a/nixos/modules/services/web-servers/caddy.nix
+++ b/nixos/modules/services/web-servers/caddy.nix
@@ -24,6 +24,10 @@ let
     ${pkgs.jq}/bin/jq -s '.[0] * .[1]' ${adaptedConfig} ${tlsJSON} > $out
   '';
 in {
+  imports = [
+    (mkRemovedOptionModule [ "services" "caddy" "agree" ] "this option is no longer necessary for Caddy 2")
+  ];
+
   options.services.caddy = {
     enable = mkEnableOption "Caddy web server";
 
@@ -66,12 +70,6 @@ in {
       description = "Email address (for Let's Encrypt certificate)";
     };
 
-    agree = mkOption {
-      default = false;
-      type = types.bool;
-      description = "Agree to Let's Encrypt Subscriber Agreement";
-    };
-
     dataDir = mkOption {
       default = "/var/lib/caddy";
       type = types.path;
@@ -103,6 +101,8 @@ in {
       after = [ "network-online.target" ];
       wants = [ "network-online.target" ]; # systemd-networkd-wait-online.service
       wantedBy = [ "multi-user.target" ];
+      startLimitIntervalSec = 14400;
+      startLimitBurst = 10;
       serviceConfig = {
         ExecStart = "${cfg.package}/bin/caddy run --config ${configJSON}";
         ExecReload = "${cfg.package}/bin/caddy reload --config ${configJSON}";
@@ -110,8 +110,6 @@ in {
         User = "caddy";
         Group = "caddy";
         Restart = "on-abnormal";
-        StartLimitIntervalSec = 14400;
-        StartLimitBurst = 10;
         AmbientCapabilities = "cap_net_bind_service";
         CapabilityBoundingSet = "cap_net_bind_service";
         NoNewPrivileges = true;
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 631e92fd6e955..c0c2f27a00ef9 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -693,6 +693,8 @@ in
         ${cfg.preStart}
         ${execCommand} -t
       '';
+
+      startLimitIntervalSec = 60;
       serviceConfig = {
         ExecStart = execCommand;
         ExecReload = [
@@ -701,7 +703,6 @@ in
         ];
         Restart = "always";
         RestartSec = "10s";
-        StartLimitInterval = "1min";
         # User and group
         User = cfg.user;
         Group = cfg.group;
diff --git a/nixos/modules/services/web-servers/traefik.nix b/nixos/modules/services/web-servers/traefik.nix
index 4ab7307c3b671..3d29199dd4549 100644
--- a/nixos/modules/services/web-servers/traefik.nix
+++ b/nixos/modules/services/web-servers/traefik.nix
@@ -136,6 +136,8 @@ in {
       description = "Traefik web server";
       after = [ "network-online.target" ];
       wantedBy = [ "multi-user.target" ];
+      startLimitIntervalSec = 86400;
+      startLimitBurst = 5;
       serviceConfig = {
         ExecStart =
           "${cfg.package}/bin/traefik --configfile=${staticConfigFile}";
@@ -143,8 +145,6 @@ in {
         User = "traefik";
         Group = cfg.group;
         Restart = "on-failure";
-        StartLimitInterval = 86400;
-        StartLimitBurst = 5;
         AmbientCapabilities = "cap_net_bind_service";
         CapabilityBoundingSet = "cap_net_bind_service";
         NoNewPrivileges = true;
diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix
index 55d3e742ef7cd..9e971671c474e 100644
--- a/nixos/modules/services/x11/xserver.nix
+++ b/nixos/modules/services/x11/xserver.nix
@@ -678,14 +678,14 @@ in
 
         script = "${cfg.displayManager.job.execCmd}";
 
+        # Stop restarting if the display manager stops (crashes) 2 times
+        # in one minute. Starting X typically takes 3-4s.
+        startLimitIntervalSec = 30;
+        startLimitBurst = 3;
         serviceConfig = {
           Restart = "always";
           RestartSec = "200ms";
           SyslogIdentifier = "display-manager";
-          # Stop restarting if the display manager stops (crashes) 2 times
-          # in one minute. Starting X typically takes 3-4s.
-          StartLimitInterval = "30s";
-          StartLimitBurst = "3";
         };
       };
 
diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix
index 47689b2a4700a..3b01bc00bafa2 100644
--- a/nixos/modules/system/boot/networkd.nix
+++ b/nixos/modules/system/boot/networkd.nix
@@ -648,11 +648,13 @@ let
           "RapidCommit"
           "ForceDHCPv6PDOtherInformation"
           "PrefixDelegationHint"
+          "RouteMetric"
         ])
         (assertValueOneOf "UseDNS" boolValues)
         (assertValueOneOf "UseNTP" boolValues)
         (assertValueOneOf "RapidCommit" boolValues)
         (assertValueOneOf "ForceDHCPv6PDOtherInformation" boolValues)
+        (assertInt "RouteMetric")
       ];
 
       sectionDHCPServer = checkUnitConfig "DHCPServer" [
diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh
index f7c2940049e56..e5cafe237cd53 100644
--- a/nixos/modules/system/boot/stage-1-init.sh
+++ b/nixos/modules/system/boot/stage-1-init.sh
@@ -120,7 +120,7 @@ eval "exec $logOutFd>&1 $logErrFd>&2"
 if test -w /dev/kmsg; then
     tee -i < /tmp/stage-1-init.log.fifo /proc/self/fd/"$logOutFd" | while read -r line; do
         if test -n "$line"; then
-            echo "<7>stage-1-init: $line" > /dev/kmsg
+            echo "<7>stage-1-init: [$(date)] $line" > /dev/kmsg
         fi
     done &
 else
@@ -356,6 +356,7 @@ mountFS() {
     case $options in
         *x-nixos.autoresize*)
             if [ "$fsType" = ext2 -o "$fsType" = ext3 -o "$fsType" = ext4 ]; then
+                modprobe "$fsType"
                 echo "resizing $device..."
                 e2fsck -fp "$device"
                 resize2fs "$device"
diff --git a/nixos/modules/system/boot/systemd-unit-options.nix b/nixos/modules/system/boot/systemd-unit-options.nix
index 5addc6f9ca44d..4154389b2ce5f 100644
--- a/nixos/modules/system/boot/systemd-unit-options.nix
+++ b/nixos/modules/system/boot/systemd-unit-options.nix
@@ -210,12 +210,21 @@ in rec {
       '';
     };
 
+    startLimitBurst = mkOption {
+       type = types.int;
+       description = ''
+         Configure unit start rate limiting. Units which are started
+         more than startLimitBurst times within an interval time
+         interval are not permitted to start any more.
+       '';
+    };
+
     startLimitIntervalSec = mkOption {
        type = types.int;
        description = ''
          Configure unit start rate limiting. Units which are started
-         more than burst times within an interval time interval are
-         not permitted to start any more.
+         more than startLimitBurst times within an interval time
+         interval are not permitted to start any more.
        '';
     };
 
@@ -245,8 +254,7 @@ in rec {
     serviceConfig = mkOption {
       default = {};
       example =
-        { StartLimitInterval = 10;
-          RestartSec = 5;
+        { RestartSec = 5;
         };
       type = types.addCheck (types.attrsOf unitOption) checkService;
       description = ''
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index 74d6957678f56..c22264b3e92dd 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -243,6 +243,8 @@ let
           OnFailure = toString config.onFailure; }
         // optionalAttrs (options.startLimitIntervalSec.isDefined) {
           StartLimitIntervalSec = toString config.startLimitIntervalSec;
+        } // optionalAttrs (options.startLimitBurst.isDefined) {
+          StartLimitBurst = toString config.startLimitBurst;
         };
     };
   };
@@ -884,14 +886,25 @@ in
 
   config = {
 
-    warnings = concatLists (mapAttrsToList (name: service:
-      let
-        type = service.serviceConfig.Type or "";
-        restart = service.serviceConfig.Restart or "no";
-      in optional
-      (type == "oneshot" && (restart == "always" || restart == "on-success"))
-      "Service '${name}.service' with 'Type=oneshot' cannot have 'Restart=always' or 'Restart=on-success'")
-      cfg.services);
+    warnings = concatLists (
+      mapAttrsToList
+        (name: service:
+          let
+            type = service.serviceConfig.Type or "";
+            restart = service.serviceConfig.Restart or "no";
+            hasDeprecated = builtins.hasAttr "StartLimitInterval" service.serviceConfig;
+          in
+            concatLists [
+              (optional (type == "oneshot" && (restart == "always" || restart == "on-success"))
+                "Service '${name}.service' with 'Type=oneshot' cannot have 'Restart=always' or 'Restart=on-success'"
+              )
+              (optional hasDeprecated
+                "Service '${name}.service' uses the attribute 'StartLimitInterval' in the Service section, which is deprecated. See https://github.com/NixOS/nixpkgs/issues/45786."
+              )
+            ]
+        )
+        cfg.services
+    );
 
     system.build.units = cfg.units;
 
diff --git a/nixos/modules/virtualisation/amazon-image.nix b/nixos/modules/virtualisation/amazon-image.nix
index 20d48add71293..44cb60809452c 100644
--- a/nixos/modules/virtualisation/amazon-image.nix
+++ b/nixos/modules/virtualisation/amazon-image.nix
@@ -48,7 +48,7 @@ in
     ];
     boot.initrd.kernelModules = [ "xen-blkfront" "xen-netfront" ];
     boot.initrd.availableKernelModules = [ "ixgbevf" "ena" "nvme" ];
-    boot.kernelParams = mkIf cfg.hvm [ "console=ttyS0" ];
+    boot.kernelParams = mkIf cfg.hvm [ "console=ttyS0" "random.trust_cpu=on" ];
 
     # Prevent the nouveau kernel module from being loaded, as it
     # interferes with the nvidia/nvidia-uvm modules needed for CUDA.
diff --git a/nixos/tests/firefox.nix b/nixos/tests/firefox.nix
index 7071baceba739..07e25bd4ca72d 100644
--- a/nixos/tests/firefox.nix
+++ b/nixos/tests/firefox.nix
@@ -11,26 +11,105 @@ import ./make-test-python.nix ({ pkgs, esr ? false, ... }: {
       environment.systemPackages =
         (if esr then [ pkgs.firefox-esr ] else [ pkgs.firefox ])
         ++ [ pkgs.xdotool ];
+
+      # Need some more memory to record audio.
+      virtualisation.memorySize = "500";
+
+      # Create a virtual sound device, with mixing
+      # and all, for recording audio.
+      boot.kernelModules = [ "snd-aloop" ];
+      sound.enable = true;
+      sound.extraConfig = ''
+        pcm.!default {
+          type plug
+          slave.pcm pcm.dmixer
+        }
+        pcm.dmixer {
+          type dmix
+          ipc_key 1
+          slave {
+            pcm "hw:Loopback,0,0"
+            rate 48000
+            periods 128
+            period_time 0
+            period_size 1024
+            buffer_size 8192
+          }
+        }
+        pcm.recorder {
+          type hw
+          card "Loopback"
+          device 1
+          subdevice 0
+        }
+      '';
+
+      systemd.services.audio-recorder = {
+        description = "Record NixOS test audio to /tmp/record.wav";
+        script = "${pkgs.alsaUtils}/bin/arecord -D recorder -f S16_LE -r48000 /tmp/record.wav";
+      };
+
     };
 
   testScript = ''
+      from contextlib import contextmanager
+
+
+      @contextmanager
+      def audio_recording(machine: Machine) -> None:
+          """
+          Perform actions while recording the
+          machine audio output.
+          """
+          machine.systemctl("start audio-recorder")
+          yield
+          machine.systemctl("stop audio-recorder")
+
+
+      def wait_for_sound(machine: Machine) -> None:
+          """
+          Wait until any sound has been emitted.
+          """
+          machine.wait_for_file("/tmp/record.wav")
+          while True:
+              # Get at most 2M of the recording
+              machine.execute("tail -c 2M /tmp/record.wav > /tmp/last")
+              # Get the exact size
+              size = int(machine.succeed("stat -c '%s' /tmp/last").strip())
+              # Compare it against /dev/zero using `cmp` (skipping 50B of WAVE header).
+              # If some non-NULL bytes are found it returns 1.
+              status, output = machine.execute(
+                  f"cmp -i 50 -n {size - 50} /tmp/last /dev/zero 2>&1"
+              )
+              if status == 1:
+                  break
+              machine.sleep(2)
+
+
       machine.wait_for_x()
 
-      with subtest("wait until Firefox has finished loading the Valgrind docs page"):
+      with subtest("Wait until Firefox has finished loading the Valgrind docs page"):
           machine.execute(
               "xterm -e 'firefox file://${pkgs.valgrind.doc}/share/doc/valgrind/html/index.html' &"
           )
           machine.wait_for_window("Valgrind")
           machine.sleep(40)
 
+      with subtest("Check whether Firefox can play sound"):
+          with audio_recording(machine):
+              machine.succeed(
+                  "firefox file://${pkgs.sound-theme-freedesktop}/share/sounds/freedesktop/stereo/phone-incoming-call.oga &"
+              )
+              wait_for_sound(machine)
+          machine.copy_from_vm("/tmp/record.wav")
+
+      with subtest("Close sound test tab"):
+          machine.execute("xdotool key ctrl+w")
+
       with subtest("Close default browser prompt"):
           machine.execute("xdotool key space")
 
-      with subtest("Hide default browser window"):
-          machine.sleep(2)
-          machine.execute("xdotool key F12")
-
-      with subtest("wait until Firefox draws the developer tool panel"):
+      with subtest("Wait until Firefox draws the developer tool panel"):
           machine.sleep(10)
           machine.succeed("xwininfo -root -tree | grep Valgrind")
           machine.screenshot("screen")
diff --git a/pkgs/applications/audio/opustags/default.nix b/pkgs/applications/audio/opustags/default.nix
index eb056c720d1fd..8e5546aec8b6c 100644
--- a/pkgs/applications/audio/opustags/default.nix
+++ b/pkgs/applications/audio/opustags/default.nix
@@ -1,13 +1,13 @@
 { stdenv, lib, cmake, pkgconfig, libogg, fetchFromGitHub, libiconv }:
 stdenv.mkDerivation rec {
   pname = "opustags";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "fmang";
     repo = "opustags";
     rev = version;
-    sha256 = "09z0cdg20algaj2yyhfz3hxh1biwjjvzx1pc2vdc64n8lkswqsc1";
+    sha256 = "1y0czl72paawy342ff9ickaamkih43k59yfcdw7bnddypyfa7nbg";
   };
 
   buildInputs = [ libogg ];
diff --git a/pkgs/applications/blockchains/ergo/default.nix b/pkgs/applications/blockchains/ergo/default.nix
index 685a562f21b14..706acebba5532 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 = "3.3.4";
+  version = "3.3.5";
 
   src = fetchurl {
     url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
-    sha256 = "0psq0nxb4c0fsxjzjxb4sy6lh4kj4w8aizd81r92fdv8izbm25sk";
+    sha256 = "0bxzpwwb42bppqli3zggx3lah7g6kwmy6k6k6dinypj6x0bafqcg";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index 3bd379ce27c8b..da0449f41d1f4 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "2.14.0";
+  version = "2.15.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
-    sha256 = "057g77nd8qxi8dw9sp7x068wsxmrpnsdfrca876f0bpw7lpb0bqq";
+    sha256 = "06sm4ah05j0f3bxb1sbdi8mazmxk166y2gaycll6p2xhd105ins3";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/blockchains/monero-gui/default.nix b/pkgs/applications/blockchains/monero-gui/default.nix
index c079fa88a7037..8cd03f34286f5 100644
--- a/pkgs/applications/blockchains/monero-gui/default.nix
+++ b/pkgs/applications/blockchains/monero-gui/default.nix
@@ -27,13 +27,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "monero-gui";
-  version = "0.17.1.0";
+  version = "0.17.1.1";
 
   src = fetchFromGitHub {
     owner  = "monero-project";
     repo   = "monero-gui";
     rev    = "v${version}";
-    sha256 = "07r78ipv4g3i6z822kq380vi3qwlb958rccsy6lyybkhj9y0rx84";
+    sha256 = "0aqhp4rmqsgwjb875kgh6qwz0wyyiag1fksyic9cnhgg5j5y95nx";
   };
 
   nativeBuildInputs = [
@@ -75,11 +75,7 @@ stdenv.mkDerivation rec {
                 'add_subdirectory(monero EXCLUDE_FROM_ALL)'
   '';
 
-  preConfigure = ''
-    # because $out needs to be expanded
-    cmakeFlagsArray+=("-DCMAKE_INSTALL_PREFIX=$out/bin")
-    cmakeFlagsArray+=("-DARCH=${arch}")
-  '';
+  cmakeFlags = [ "-DARCH=${arch}" ];
 
   desktopItem = makeDesktopItem {
     name = "monero-wallet-gui";
diff --git a/pkgs/applications/blockchains/monero/default.nix b/pkgs/applications/blockchains/monero/default.nix
index 7d55a5f6f34cf..29acbd0f37b3f 100644
--- a/pkgs/applications/blockchains/monero/default.nix
+++ b/pkgs/applications/blockchains/monero/default.nix
@@ -17,13 +17,13 @@ assert trezorSupport -> all (x: x!=null) [ libusb1 protobuf python3 ];
 
 stdenv.mkDerivation rec {
   pname = "monero";
-  version = "0.17.1.0";
+  version = "0.17.1.1";
 
   src = fetchFromGitHub {
     owner = "monero-project";
     repo = "monero";
     rev = "v${version}";
-    sha256 = "1cngniv7sndy8r0fcfgk737640k53q3kwd36g891p5igcb985qdw";
+    sha256 = "18x27dm24k04vx0yz57zi02rk0wrmbn4wr8alqf48dq6z9wr0fhp";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index e16464fb84948..3a5bc63e1c382 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -19,9 +19,9 @@ let
     sha256Hash = "sha256-qbxmR9g8DSKzcP09bJuc+am79BSXWG39UQxFEb1bZ88=";
   };
   latestVersion = { # canary & dev
-    version = "4.2.0.14"; # "Android Studio 4.2 Canary 14"
-    build = "202.6907010";
-    sha256Hash = "sha256-A6nl4uN25CWOjpwBvOQG26EZnJP5tNvSrGtoF+IQmtY=";
+    version = "4.2.0.15"; # "Android Studio 4.2 Canary 15"
+    build = "202.6922807";
+    sha256Hash = "sha256-PXFNnPSJbdp9NtkMDR3Vq+vpWqd85Io2FmXPhRLRk/8=";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/marker/default.nix b/pkgs/applications/editors/marker/default.nix
new file mode 100644
index 0000000000000..758cb0c30eba4
--- /dev/null
+++ b/pkgs/applications/editors/marker/default.nix
@@ -0,0 +1,49 @@
+{ stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook
+, gtk3
+, gtksourceview
+, gtkspell3
+, webkitgtk
+, pandoc
+}:
+
+stdenv.mkDerivation rec {
+  pname = "marker";
+  version = "2020.04.04";
+
+  src = fetchFromGitHub {
+    owner = "fabiocolacio";
+    repo = "Marker";
+    rev = "${version}";
+    fetchSubmodules = true;
+    sha256 = "1iy7izyprf050bix8am1krqivgyxnhx3jm775v8f80cgbqxy7m5r";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gtk3
+    gtksourceview
+    gtkspell3
+    webkitgtk
+    pandoc
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://fabiocolacio.github.io/Marker/";
+    description = "Markdown editor for the Linux desktop";
+    maintainers = with maintainers; [ trepetti ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    changelog = "https://github.com/fabiocolacio/Marker/releases/tag/${version}";
+  };
+}
diff --git a/pkgs/applications/editors/neovim/utils.nix b/pkgs/applications/editors/neovim/utils.nix
new file mode 100644
index 0000000000000..15d3f214057f3
--- /dev/null
+++ b/pkgs/applications/editors/neovim/utils.nix
@@ -0,0 +1,159 @@
+{ lib
+, vimUtils
+, nodejs
+, neovim-unwrapped
+, bundlerEnv
+, ruby
+, pythonPackages
+, python3Packages
+, writeText
+, wrapNeovimUnstable
+}:
+let
+  # returns everything needed for the caller to wrap its own neovim:
+  # - the generated content of the future init.vim
+  # - the arguments to wrap neovim with
+  # The caller is responsible for writing the init.vim and adding it to the wrapped
+  # arguments (["-u" writeText "init.vim" GENERATEDRC)]).
+  # This makes it possible to write the config anywhere: on a per-project basis
+  # .nvimrc or in $XDG_CONFIG_HOME/nvim/init.vim to avoid sideeffects.
+  # Indeed, note that wrapping with `-u init.vim` has sideeffects like .nvimrc wont be loaded
+  # anymore, $MYVIMRC wont be set etc
+  makeNeovimConfig =
+    {
+    withPython2 ? false
+    /* the function you would have passed to python.withPackages */
+    , extraPython2Packages ? (_: [ ])
+    ,  withPython3 ? true
+    /* the function you would have passed to python3.withPackages */
+    , extraPython3Packages ? (_: [ ])
+    , withNodeJs ? false
+    , withRuby ? true
+
+    # same values as in vimUtils.vimrcContent
+    , configure ? { }
+
+    # for forward compability, when adding new environments, haskell etc.
+    , ...
+    }:
+    let
+      rubyEnv = bundlerEnv {
+        name = "neovim-ruby-env";
+        gemdir = ./ruby_provider;
+        postBuild = ''
+          ln -sf ${ruby}/bin/* $out/bin
+        '';
+      };
+
+
+      requiredPlugins = vimUtils.requiredPlugins configure;
+      getDeps = attrname: map (plugin: plugin.${attrname} or (_: [ ]));
+
+      pluginPython2Packages = getDeps "pythonDependencies" requiredPlugins;
+      python2Env = pythonPackages.python.withPackages (ps:
+        [ ps.pynvim ]
+        ++ (extraPython2Packages ps)
+        ++ (lib.concatMap (f: f ps) pluginPython2Packages));
+
+      pluginPython3Packages = getDeps "python3Dependencies" requiredPlugins;
+      python3Env = python3Packages.python.withPackages (ps:
+        [ ps.pynvim ]
+        ++ (extraPython3Packages ps)
+        ++ (lib.concatMap (f: f ps) pluginPython3Packages));
+
+
+      # Mapping a boolean argument to a key that tells us whether to add or not to
+      # add to nvim's 'embedded rc' this:
+      #    let g:<key>_host_prog=$out/bin/nvim-<key>
+      # Or this:
+      #    let g:loaded_${prog}_provider=1
+      # While the latter tells nvim that this provider is not available
+      hostprog_check_table = {
+        node = withNodeJs;
+        python = withPython2;
+        python3 = withPython3;
+        ruby = withRuby;
+      };
+      ## Here we calculate all of the arguments to the 1st call of `makeWrapper`
+      # We start with the executable itself NOTE we call this variable "initial"
+      # because if configure != {} we need to call makeWrapper twice, in order to
+      # avoid double wrapping, see comment near finalMakeWrapperArgs
+      makeWrapperArgs =
+        let
+          binPath = lib.makeBinPath (lib.optionals withRuby [ rubyEnv ] ++ lib.optionals withNodeJs [ nodejs ]);
+
+          flags = lib.concatLists (lib.mapAttrsToList (
+              prog: withProg: [
+                "--cmd" (genProviderSettings prog withProg)
+              ]
+            )
+            hostprog_check_table);
+        in
+        [
+          "--argv0" "$0" "--add-flags" (lib.escapeShellArgs flags)
+        ] ++ lib.optionals withRuby [
+          "--set" "GEM_HOME" "${rubyEnv}/${rubyEnv.ruby.gemPath}"
+        ] ++ lib.optionals (binPath != "") [
+          "--suffix" "PATH" ":" binPath
+        ];
+
+      manifestRc = vimUtils.vimrcContent (configure // { customRC = ""; });
+      neovimRcContent = vimUtils.vimrcContent configure;
+    in
+    {
+      wrapperArgs = makeWrapperArgs;
+      inherit neovimRcContent;
+      inherit manifestRc;
+      inherit rubyEnv;
+      inherit python2Env;
+      inherit python3Env;
+    };
+
+    genProviderSettings = prog: withProg:
+      if withProg then
+        "let g:${prog}_host_prog='${placeholder "out"}/bin/nvim-${prog}'"
+      else
+        "let g:loaded_${prog}_provider=1"
+    ;
+
+  # to keep backwards compatibility
+  legacyWrapper = neovim: {
+    extraMakeWrapperArgs ? ""
+    , withPython ? true
+    /* the function you would have passed to python.withPackages */
+    , extraPythonPackages ? (_: [])
+    /* the function you would have passed to python.withPackages */
+    , withPython3 ? true,  extraPython3Packages ? (_: [])
+    , withNodeJs ? false
+    , withRuby ? true
+    , vimAlias ? false
+    , viAlias ? false
+    , configure ? {}
+  }:
+    let
+      /* for compatibility with passing extraPythonPackages as a list; added 2018-07-11 */
+      compatFun = funOrList: (if builtins.isList funOrList then
+        (_: lib.warn "passing a list as extraPythonPackages to the neovim wrapper is deprecated, pass a function as to python.withPackages instead" funOrList)
+      else funOrList);
+
+      res = makeNeovimConfig {
+        withPython2 = withPython;
+        extraPythonPackages = compatFun extraPythonPackages;
+        inherit withPython3;
+        extraPython3Packages = compatFun extraPython3Packages;
+        inherit withNodeJs withRuby;
+
+        inherit configure;
+      };
+    in
+    wrapNeovimUnstable neovim (res // {
+      wrapperArgs = lib.escapeShellArgs (
+        res.wrapperArgs ++ [ "--add-flags" "-u ${writeText "init.vim" res.neovimRcContent}" ])
+        + " " + extraMakeWrapperArgs
+      ;
+  });
+in
+{
+  inherit makeNeovimConfig;
+  inherit legacyWrapper;
+}
diff --git a/pkgs/applications/editors/neovim/wrapper.nix b/pkgs/applications/editors/neovim/wrapper.nix
index cdc9a441dc5d7..d18d13a050fe7 100644
--- a/pkgs/applications/editors/neovim/wrapper.nix
+++ b/pkgs/applications/editors/neovim/wrapper.nix
@@ -13,124 +13,41 @@ neovim:
 
 let
   wrapper = {
-      extraMakeWrapperArgs ? ""
-    , withPython ? true,  extraPythonPackages ? (_: []) /* the function you would have passed to python.withPackages */
-    , withPython3 ? true,  extraPython3Packages ? (_: []) /* the function you would have passed to python.withPackages */
+      # should contain all args but the binary
+      wrapperArgs ? ""
+    , manifestRc ? null
+    , withPython2 ? true, python2Env ? null
+    , withPython3 ? true,  python3Env ? null
     , withNodeJs? false
-    , withRuby ? true
+    , withRuby ? true, rubyEnv ? null
     , vimAlias ? false
     , viAlias ? false
-    , configure ? {}
+    , ...
   }:
   let
 
-  rubyEnv = bundlerEnv {
-    name = "neovim-ruby-env";
-    gemdir = ./ruby_provider;
-    postBuild = ''
-      ln -sf ${ruby}/bin/* $out/bin
-    '';
-  };
-
-  /* for compatibility with passing extraPythonPackages as a list; added 2018-07-11 */
-  compatFun = funOrList: (if builtins.isList funOrList then
-    (_: lib.warn "passing a list as extraPythonPackages to the neovim wrapper is deprecated, pass a function as to python.withPackages instead" funOrList)
-    else funOrList);
-  extraPythonPackagesFun = compatFun extraPythonPackages;
-  extraPython3PackagesFun = compatFun extraPython3Packages;
-
-  requiredPlugins = vimUtils.requiredPlugins configure;
-  getDeps = attrname: map (plugin: plugin.${attrname} or (_:[]));
-
-  pluginPythonPackages = getDeps "pythonDependencies" requiredPlugins;
-  pythonEnv = pythonPackages.python.withPackages(ps:
-        [ ps.pynvim ]
-        ++ (extraPythonPackagesFun ps)
-        ++ (concatMap (f: f ps) pluginPythonPackages));
-
-  pluginPython3Packages = getDeps "python3Dependencies" requiredPlugins;
-  python3Env = python3Packages.python.withPackages (ps:
-        [ ps.pynvim ]
-        ++ (extraPython3PackagesFun ps)
-        ++ (concatMap (f: f ps) pluginPython3Packages));
-
-  binPath = makeBinPath (optionals withRuby [rubyEnv] ++ optionals withNodeJs [nodejs]);
-
-  # Mapping a boolean argument to a key that tells us whether to add or not to
-  # add to nvim's 'embedded rc' this:
-  #
-  #    let g:<key>_host_prog=$out/bin/nvim-<key>
-  #
-  # Or this:
-  #
-  #    let g:loaded_${prog}_provider=1
-  #
-  # While the later tells nvim that this provider is not available
-  #
-  hostprog_check_table = {
-    node = withNodeJs;
-    python = withPython;
-    python3 = withPython3;
-    ruby = withRuby;
-  };
-  ## Here we calculate all of the arguments to the 1st call of `makeWrapper`
-  # We start with the executable itself NOTE we call this variable "initial"
-  # because if configure != {} we need to call makeWrapper twice, in order to
-  # avoid double wrapping, see comment near finalMakeWrapperArgs
-  initialMakeWrapperArgs =
-    let
-      flags = lib.concatLists (lib.mapAttrsToList (
-        prog:
-        withProg:
-        [
-          "--cmd"
-          (if withProg then
-            "let g:${prog}_host_prog='${placeholder "out"}/bin/nvim-${prog}'"
-          else
-            "let g:loaded_${prog}_provider=1"
-            )
-        ]
-      ) hostprog_check_table);
-    in [
-      "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim"
-      "--argv0" "$0"
-      "--add-flags" (lib.escapeShellArgs flags)
-    ] ++ lib.optionals withRuby [
-      "--set" "GEM_HOME" "${rubyEnv}/${rubyEnv.ruby.gemPath}"
-    ] ++ lib.optionals (binPath != "") [
-      "--suffix" "PATH" ":" binPath
-    ];
   # If configure != {}, we can't generate the rplugin.vim file with e.g
   # NVIM_SYSTEM_RPLUGIN_MANIFEST *and* NVIM_RPLUGIN_MANIFEST env vars set in
   # the wrapper. That's why only when configure != {} (tested both here and
   # when postBuild is evaluated), we call makeWrapper once to generate a
   # wrapper with most arguments we need, excluding those that cause problems to
   # generate rplugin.vim, but still required for the final wrapper.
-  finalMakeWrapperArgs = initialMakeWrapperArgs
-    # this relies on a patched neovim, see
-    # https://github.com/neovim/neovim/issues/9413
-    ++ lib.optionals (configure != {}) [
-      "--set" "NVIM_SYSTEM_RPLUGIN_MANIFEST" "${placeholder "out"}/rplugin.vim"
-      "--add-flags" "-u ${configFile}"
-    ];
-   configFile = writeText "init.vim" "${vimUtils.vimrcContent configure}";
+  finalMakeWrapperArgs =
+    [ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim" ] ++
+      [ "--set" "NVIM_SYSTEM_RPLUGIN_MANIFEST" "${placeholder "out"}/rplugin.vim" ];
   in
   symlinkJoin {
       name = "neovim-${stdenv.lib.getVersion neovim}";
       # Remove the symlinks created by symlinkJoin which we need to perform
       # extra actions upon
-      postBuild = ''
-        rm $out/bin/nvim
-        makeWrapper ${lib.escapeShellArgs initialMakeWrapperArgs} ${extraMakeWrapperArgs}
-      ''
-      + lib.optionalString stdenv.isLinux ''
+      postBuild = lib.optionalString stdenv.isLinux ''
         rm $out/share/applications/nvim.desktop
         substitute ${neovim}/share/applications/nvim.desktop $out/share/applications/nvim.desktop \
           --replace 'TryExec=nvim' "TryExec=$out/bin/nvim" \
           --replace 'Name=Neovim' 'Name=WrappedNeovim'
       ''
-      + optionalString withPython ''
-        makeWrapper ${pythonEnv}/bin/python $out/bin/nvim-python --unset PYTHONPATH
+      + optionalString withPython2 ''
+        makeWrapper ${python2Env}/bin/python $out/bin/nvim-python --unset PYTHONPATH
       ''
       + optionalString withPython3 ''
         makeWrapper ${python3Env}/bin/python3 $out/bin/nvim-python3 --unset PYTHONPATH
@@ -147,9 +64,14 @@ let
       + optionalString viAlias ''
         ln -s $out/bin/nvim $out/bin/vi
       ''
-      + optionalString (configure != {}) ''
+      + optionalString (manifestRc != null) (let
+        manifestWrapperArgs =
+          [ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim-wrapper" ];
+      in ''
         echo "Generating remote plugin manifest"
         export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim
+        makeWrapper ${lib.escapeShellArgs manifestWrapperArgs} ${wrapperArgs}
+
         # Some plugins assume that the home directory is accessible for
         # initializing caches, temporary files, etc. Even if the plugin isn't
         # actively used, it may throw an error as soon as Neovim is launched
@@ -165,8 +87,8 @@ let
         # (swap/viminfo) and redirect errors to stderr.
         # Only display the log on error since it will contain a few normally
         # irrelevant messages.
-        if ! $out/bin/nvim \
-          -u ${vimUtils.vimrcFile (configure // { customRC = ""; })} \
+        if ! $out/bin/nvim-wrapper \
+          -u ${writeText "manifest.vim" manifestRc} \
           -i NONE -n \
           -E -V1rplugins.log -s \
           +UpdateRemotePlugins +quit! > outfile 2>&1; then
@@ -174,7 +96,11 @@ let
           echo -e "\nGenerating rplugin.vim failed!"
           exit 1
         fi
-        makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs} ${extraMakeWrapperArgs}
+        rm "${placeholder "out"}/bin/nvim-wrapper"
+      '')
+      + ''
+        rm $out/bin/nvim
+        makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs} ${wrapperArgs}
       '';
 
     paths = [ neovim ];
@@ -182,7 +108,7 @@ let
     preferLocalBuild = true;
 
     buildInputs = [makeWrapper];
-    passthru = { unwrapped = neovim; inherit configFile; };
+    passthru = { unwrapped = neovim; };
 
     meta = neovim.meta // {
       # To prevent builds on hydra
diff --git a/pkgs/applications/editors/textadept/default.nix b/pkgs/applications/editors/textadept/default.nix
index bb771c89010b1..0456d013bbbe6 100644
--- a/pkgs/applications/editors/textadept/default.nix
+++ b/pkgs/applications/editors/textadept/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchhg, fetchurl, gtk2, glib, pkgconfig, unzip, ncurses, zip }:
+
 stdenv.mkDerivation rec {
-  version = "10.2";
+  version = "10.8";
   pname = "textadept";
 
   nativeBuildInputs = [ pkgconfig ];
@@ -11,7 +12,7 @@ stdenv.mkDerivation rec {
   src = fetchhg {
     url = "http://foicica.com/hg/textadept";
     rev = "textadept_${version}";
-    sha256 = "0fai8xqddkkprmbf0cf8wwgv7ccfdb1iyim30nppm2m16whkc8fl";
+    sha256 = "sha256-dEZSx2tuHTWYhk9q5iGlrWTAvDvKaM8HaHwXcFcv33s=";
   };
 
   preConfigure =
@@ -19,10 +20,6 @@ stdenv.mkDerivation rec {
       "ln -s ${fetchurl params} $PWD/src/${name}"
     ) (import ./deps.nix)) + ''
 
-    # work around trying to download stuff in `make deps`
-    function wget() { true; }
-    export -f wget
-
     cd src
     make deps
   '';
@@ -31,12 +28,17 @@ stdenv.mkDerivation rec {
     make curses
   '';
 
+  preInstall = ''
+    mkdir -p $out/share/applications
+    mkdir -p $out/share/pixmaps
+  '';
+
   postInstall = ''
     make curses install PREFIX=$out MAKECMDGOALS=curses
   '';
 
   makeFlags = [
-    "PREFIX=$(out)"
+    "PREFIX=$(out) WGET=true PIXMAPS_DIR=$(out)/share/pixmaps"
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/textadept/deps.nix b/pkgs/applications/editors/textadept/deps.nix
index 80306191ff127..3ab778dddb2a1 100644
--- a/pkgs/applications/editors/textadept/deps.nix
+++ b/pkgs/applications/editors/textadept/deps.nix
@@ -1,23 +1,23 @@
 {
-    "542782a4df7d.zip" = {
-      url = "http://foicica.com/hg/scintilla/archive/542782a4df7d.zip";
-      sha256 = "1qwxxcj86z9y7ij05j60lcp1awy2c9ck0vnn9z6c732sqjza0zx5";
+    "99fa62b828ee.zip" = {
+      url = "http://foicica.com/hg/scintilla/archive/99fa62b828ee.zip";
+      sha256 = "sha256-QO4iGhx72CfB1/0Pp/Qab92qm98VZn/EkrHZGndoHVc=";
     };
     "lua-5.3.5.tar.gz" = {
       url = "http://www.lua.org/ftp/lua-5.3.5.tar.gz";
       sha256 = "1b2qn2rv96nmbm6zab4l877bd4zq7wpwm8drwjiy2ih4jqzysbhc";
     };
-    "lpeg-1.0.0.tar.gz" = {
-      url = "http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-1.0.0.tar.gz";
-      sha256 = "13mz18s359wlkwm9d9iqlyyrrwjc6iqfpa99ai0icam2b3khl68h";
+    "lpeg-1.0.2.tar.gz" = {
+      url = "http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-1.0.2.tar.gz";
+      sha256 = "sha256-SNZldgUbbHg4j6rQm3BJMJMmRYj80PJY3aqxzdShX/4=";
     };
-    "v_1_6_3.zip" = {
-      url = "https://github.com/keplerproject/luafilesystem/archive/v_1_6_3.zip";
-      sha256 = "044s125im2irb4i42nnc5shvjj25fp4vsdbzd6b0va5igj0f6h4y";
+    "v1_7_0_2.zip" = {
+      url = "https://github.com/keplerproject/luafilesystem/archive/v1_7_0_2.zip";
+      sha256 = "sha256-kXSriR8dOStCpYeyr7c3+VZez4qGDS5aK/9FeFj1hHg=";
     };
-    "6435a42450c7.zip" = {
-      url = "http://foicica.com/hg/gtdialog/archive/6435a42450c7.zip";
-      sha256 = "1vxn89sif3qccksb6x5iprysqhjg69g7nyxlgrg31q397dmsg1ym";
+    "db67f8a489e8.zip" = {
+      url = "http://foicica.com/hg/gtdialog/archive/db67f8a489e8.zip";
+      sha256 = "sha256-UIvjbDrg3jyz7t2tm4y1zzH/TG6Kqaz3LE5y2U6OHuM=";
     };
     "cdk-5.0-20150928.tgz" = {
       url = "http://invisible-mirror.net/archives/cdk/cdk-5.0-20150928.tgz";
diff --git a/pkgs/applications/editors/uemacs/default.nix b/pkgs/applications/editors/uemacs/default.nix
deleted file mode 100644
index e14a07eb6835b..0000000000000
--- a/pkgs/applications/editors/uemacs/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, fetchgit, ncurses }:
-
-stdenv.mkDerivation {
-  pname = "uemacs";
-  version = "2014-12-08";
-
-  src = fetchgit {
-    url = "git://git.kernel.org/pub/scm/editors/uemacs/uemacs.git";
-    rev = "8841922689769960fa074fbb053cb8507f2f3ed9";
-    sha256 = "14yq7kpkax111cg6k7i3mnqk7sq7a65krq6qizzj7vvnm7bsj3sd";
-  };
-
-  postPatch = ''
-    substituteInPlace Makefile \
-      --replace "-lcurses" "-lncurses" \
-      --replace "CFLAGS=-O2" "CFLAGS+=" \
-      --replace "BINDIR=/usr/bin" "BINDIR=$out/bin" \
-      --replace "LIBDIR=/usr/lib" "LIBDIR=$out/share/uemacs"
-    substituteInPlace epath.h \
-      --replace "/usr/global/lib/" "$out/share/uemacs/" \
-      --replace "/usr/local/bin/" "$out/bin/" \
-      --replace "/usr/local/lib/" "$out/share/uemacs/" \
-      --replace "/usr/local/" "$out/bin/" \
-      --replace "/usr/lib/" "$out/share/uemacs/"
-    mkdir -p $out/bin $out/share/uemacs
-  '';
-
-  buildInputs = [ ncurses ];
-
-  meta = with stdenv.lib; {
-    homepage = "https://git.kernel.org/cgit/editors/uemacs/uemacs.git";
-    description = "Torvalds Micro-emacs fork";
-    longDescription = ''
-      uEmacs/PK 4.0 is a full screen editor based on MicroEMACS 3.9e
-    '';
-    license = licenses.unfree;
-  };
-}
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index 9622404c456d0..4713c9ecf4946 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -107,6 +107,7 @@ let
       kcharselect = callPackage ./kcharselect.nix {};
       kcolorchooser = callPackage ./kcolorchooser.nix {};
       kdebugsettings = callPackage ./kdebugsettings.nix {};
+      kdeconnect-kde = callPackage ./kdeconnect-kde.nix {};
       kdegraphics-mobipocket = callPackage ./kdegraphics-mobipocket.nix {};
       kdegraphics-thumbnailers = callPackage ./kdegraphics-thumbnailers.nix {};
       kdenetwork-filesharing = callPackage ./kdenetwork-filesharing.nix {};
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index 90e1cf43f6b11..dc023c57a7e68 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=(http://download.kde.org/stable/release-service/20.08.1/src)
+WGET_ARGS=(http://download.kde.org/stable/release-service/20.08.2/src)
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/kde/kdeconnect-kde.nix
index d042f011bb78f..83e54d1fa80c5 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/kde/kdeconnect-kde.nix
@@ -1,39 +1,32 @@
 { mkDerivation
-, lib
-, fetchurl
-, fetchpatch
 , extra-cmake-modules
+, fetchpatch
 , kcmutils
 , kconfigwidgets
 , kdbusaddons
 , kdoctools
-, kiconthemes
 , ki18n
+, kiconthemes
+, kio
+, kirigami2
 , knotifications
-, qca-qt5
-, libfakekey
+, kpeople
+, kpeoplevcard
+, kwayland
+, lib
 , libXtst
-, qtx11extras
-, qtmultimedia
-, qtgraphicaleffects
-, sshfs
+, libfakekey
 , makeWrapper
-, kwayland
-, kio
-, kpeoplevcard
-, kpeople
-, kirigami2
 , pulseaudio-qt
+, qca-qt5
+, qtgraphicaleffects
+, qtmultimedia
+, qtx11extras
+, sshfs
 }:
 
-mkDerivation rec {
-  pname = "kdeconnect";
-  version = "20.08.2";
-
-  src = fetchurl {
-    url = "https://download.kde.org/stable/release-service/${version}/src/${pname}-kde-${version}.tar.xz";
-    sha256 = "0rzfnkgkv759d4pa16qk0sw87wqzwgkd99yzrzfy2zcq423f6hvd";
-  };
+mkDerivation {
+  name = "kdeconnect-kde";
 
   patches = [
     # https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/328
@@ -44,39 +37,36 @@ mkDerivation rec {
   ];
 
   buildInputs = [
-    libfakekey
-    libXtst
-    qtmultimedia
-    qtgraphicaleffects
-    pulseaudio-qt
-    kpeoplevcard
-    kpeople
-    kirigami2
-    ki18n
-    kiconthemes
     kcmutils
     kconfigwidgets
     kdbusaddons
+    ki18n
+    kiconthemes
+    kio
+    kirigami2
     knotifications
+    kpeople
+    kpeoplevcard
+    kwayland
+    libXtst
+    libfakekey
+    pulseaudio-qt
     qca-qt5
+    qtgraphicaleffects
+    qtmultimedia
     qtx11extras
-    makeWrapper
-    kwayland
-    kio
   ];
 
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-
-  postInstall = ''
-    wrapProgram $out/libexec/kdeconnectd --prefix PATH : ${lib.makeBinPath [ sshfs ]}
-  '';
+  nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
 
-  enableParallelBuilding = true;
+  qtWrapperArgs = [
+    "--prefix PATH : ${lib.makeBinPath [ sshfs ]}"
+  ];
 
   meta = with lib; {
     description = "KDE Connect provides several features to integrate your phone and your computer";
-    homepage    = "https://community.kde.org/KDEConnect";
-    license     = with licenses; [ gpl2 ];
+    homepage = "https://community.kde.org/KDEConnect";
+    license = with licenses; [ gpl2 ];
     maintainers = with maintainers; [ fridh ];
   };
 }
diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix
index 3bcdb9ca84244..288b2ceb807f9 100644
--- a/pkgs/applications/kde/okular.nix
+++ b/pkgs/applications/kde/okular.nix
@@ -4,7 +4,7 @@
   breeze-icons, chmlib ? null, discount, djvulibre, ebook_tools, kactivities,
   karchive, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons,
   kdbusaddons, kdegraphics-mobipocket, kiconthemes, kjs, khtml, kio, kparts,
-  kpty, kwallet, kwindowsystem, libkexiv2, libspectre, libzip, phonon, poppler,
+  kpty, kpurpose, kwallet, kwindowsystem, libkexiv2, libspectre, libzip, phonon, poppler,
   qca-qt5, qtdeclarative, qtsvg, threadweaver, kcrash
 }:
 
@@ -14,7 +14,7 @@ mkDerivation {
   buildInputs = [
     breeze-icons discount djvulibre ebook_tools kactivities karchive kbookmarks
     kcompletion kconfig kconfigwidgets kcoreaddons kdbusaddons
-    kdegraphics-mobipocket kiconthemes kjs khtml kio kparts kpty kwallet
+    kdegraphics-mobipocket kiconthemes kjs khtml kio kparts kpty kpurpose kwallet
     kwindowsystem libkexiv2 libspectre libzip phonon poppler qca-qt5
     qtdeclarative qtsvg threadweaver kcrash
   ] ++ lib.optional (!stdenv.isAarch64) chmlib;
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 5bcb48acc1816..6966c07ec0af9 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -4,1731 +4,1731 @@
 
 {
   akonadi = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-20.08.1.tar.xz";
-      sha256 = "f930de5fae376f138e87c6d67357ab799a3397d865b55c50f771b4427d85f495";
-      name = "akonadi-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-20.08.2.tar.xz";
+      sha256 = "d3a4b3b3f543734ad5428ca0e573b8dbf9e05f42d51e1aab39b5b5266c16be7d";
+      name = "akonadi-20.08.2.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-calendar-20.08.1.tar.xz";
-      sha256 = "896ec2523203022bf70e23897d59b64c8bfffad4ead5b6756555ab34a4047ef5";
-      name = "akonadi-calendar-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-calendar-20.08.2.tar.xz";
+      sha256 = "20173d00dc764f6a1e8e0b433d96b982ceadcb17e9bd067caf2967fd5440eb51";
+      name = "akonadi-calendar-20.08.2.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-calendar-tools-20.08.1.tar.xz";
-      sha256 = "21ccc2e1090eeda1eba0c29ab51c3bae1e8f57aedead569c4ed7995f5ad6cffc";
-      name = "akonadi-calendar-tools-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-calendar-tools-20.08.2.tar.xz";
+      sha256 = "2069cc3a12f0da3f10181c13d19b1048d8f2e0c0f4a4e14309a7e6f08aa74ab9";
+      name = "akonadi-calendar-tools-20.08.2.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadiconsole-20.08.1.tar.xz";
-      sha256 = "077ee646babbc4ca4075505d3dd830f4f5b8b1253617228e96f565fe23bcaad9";
-      name = "akonadiconsole-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadiconsole-20.08.2.tar.xz";
+      sha256 = "dc03a1986b6e7af0d26af927009d567da1e1835cc2bb5cc1b5732ffca3ecde9d";
+      name = "akonadiconsole-20.08.2.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-contacts-20.08.1.tar.xz";
-      sha256 = "eee775960345ec0ca13b0550bb56fb6875867921fa7b9412a2c4b0dfb8ab4366";
-      name = "akonadi-contacts-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-contacts-20.08.2.tar.xz";
+      sha256 = "e4a2696e0e0cf69926d34f160a4581131a1da8244355787564b75dec06db1b30";
+      name = "akonadi-contacts-20.08.2.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-import-wizard-20.08.1.tar.xz";
-      sha256 = "d895c866a05f0a55ca8f2d852ed0ae3fdc13aa160cbcbaf9f1017443458d9526";
-      name = "akonadi-import-wizard-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-import-wizard-20.08.2.tar.xz";
+      sha256 = "639d72ae3d32f681ddb046a87d625871b485785602cf35b817e89004def4dc5e";
+      name = "akonadi-import-wizard-20.08.2.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-mime-20.08.1.tar.xz";
-      sha256 = "3c7a57f798a7db1e1aebc3162c20f58a0fb9ed9e703078344ef1de215c73ff0b";
-      name = "akonadi-mime-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-mime-20.08.2.tar.xz";
+      sha256 = "5699a1d44a9812c9530bc61af5822ff34a573b168d72230cd8261c05065c06e3";
+      name = "akonadi-mime-20.08.2.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-notes-20.08.1.tar.xz";
-      sha256 = "afc0cdba349f0b2edece44221a7c3c532d07251ec51f05994e83a1d79c4f50fc";
-      name = "akonadi-notes-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-notes-20.08.2.tar.xz";
+      sha256 = "4897ca92d6b68f75254e1c419438275a94fa678c9f062dcd91c0267129886ca7";
+      name = "akonadi-notes-20.08.2.tar.xz";
     };
   };
   akonadi-search = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akonadi-search-20.08.1.tar.xz";
-      sha256 = "db305bfc55535d8812d84a119e4dcf04e7b87c345e7ac3a884469cbf55abca83";
-      name = "akonadi-search-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akonadi-search-20.08.2.tar.xz";
+      sha256 = "618400950fa44f0c578ab51c3b311a47e0b2df47203f754e50bcc363201a9fc7";
+      name = "akonadi-search-20.08.2.tar.xz";
     };
   };
   akregator = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/akregator-20.08.1.tar.xz";
-      sha256 = "21751a5a14b188649caeeb19cbcef877dd00548a29c073f8694e227d951c7a00";
-      name = "akregator-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/akregator-20.08.2.tar.xz";
+      sha256 = "4de4bd31dede5c09e0eb9e14d1da1d1979409eb1e28df5f95963086d4a49edc9";
+      name = "akregator-20.08.2.tar.xz";
     };
   };
   analitza = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/analitza-20.08.1.tar.xz";
-      sha256 = "91c691df8be52255db9387549c6392ad2c5358c12e805f3a96520e2aa0c147de";
-      name = "analitza-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/analitza-20.08.2.tar.xz";
+      sha256 = "2fad01bf48199e3671559ec9a619f0d590af331922899c793f96fc90860ec487";
+      name = "analitza-20.08.2.tar.xz";
     };
   };
   ark = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ark-20.08.1.tar.xz";
-      sha256 = "32e8546b186b88efc9d4688e02def0b6225d921f9b92cfcd328417f09ec0f725";
-      name = "ark-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ark-20.08.2.tar.xz";
+      sha256 = "ec061ac07687b5a3541af293e3bc2aa7bedcfe0ef38ba6e57e2704068a726ffc";
+      name = "ark-20.08.2.tar.xz";
     };
   };
   artikulate = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/artikulate-20.08.1.tar.xz";
-      sha256 = "b626a6a38f6eb50d64607032d5b100351c4242e40a4a13cdce4769e188ee361a";
-      name = "artikulate-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/artikulate-20.08.2.tar.xz";
+      sha256 = "66545d85e25aa67816deea4b2b89b485181458a5bc117dad9588671d8b48b41c";
+      name = "artikulate-20.08.2.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/audiocd-kio-20.08.1.tar.xz";
-      sha256 = "7662849929c96d1745ce4ac7ddc931be2eff5e3cc755f2cd959b4d3f4b20b9b0";
-      name = "audiocd-kio-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/audiocd-kio-20.08.2.tar.xz";
+      sha256 = "5f38c549fe8c3a4659ac8291c223327b765834e7668bc15a96047e20cdb11f01";
+      name = "audiocd-kio-20.08.2.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/baloo-widgets-20.08.1.tar.xz";
-      sha256 = "9f48cb2f1b45e46828b1656abaeb60e836650015c07277ec52bea053d0058958";
-      name = "baloo-widgets-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/baloo-widgets-20.08.2.tar.xz";
+      sha256 = "e1d14b8dba911ebc1cee76dbcd44fa200418ba959d86ce567093b5fc3b700a07";
+      name = "baloo-widgets-20.08.2.tar.xz";
     };
   };
   blinken = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/blinken-20.08.1.tar.xz";
-      sha256 = "53b30435ea0d83f713ecb53219173aa55c0d11194830972734a4acc9a5a28c5a";
-      name = "blinken-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/blinken-20.08.2.tar.xz";
+      sha256 = "c6e74033ab8ece83618c5cda0ab3cf327514b8e2e6b0e9daf484ce88f671a65e";
+      name = "blinken-20.08.2.tar.xz";
     };
   };
   bomber = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/bomber-20.08.1.tar.xz";
-      sha256 = "a4b2f5dcce7e125da30bef6bcc9746b67f8451d2040696714686dd618d80a96c";
-      name = "bomber-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/bomber-20.08.2.tar.xz";
+      sha256 = "27c226b31bcdbbda0c9e304e428ca7451614c397a038e830f8052c381dae7215";
+      name = "bomber-20.08.2.tar.xz";
     };
   };
   bovo = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/bovo-20.08.1.tar.xz";
-      sha256 = "5d5ee817a73de0deef6b7c35a798bda02c6d15e9dd0e7379a13c23c0832fe0d1";
-      name = "bovo-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/bovo-20.08.2.tar.xz";
+      sha256 = "936cab24a13900765f0c5a5afb6f155cb5a05bdb067f86b77e33af5f0e4c37d2";
+      name = "bovo-20.08.2.tar.xz";
     };
   };
   calendarsupport = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/calendarsupport-20.08.1.tar.xz";
-      sha256 = "38d6e695725c8484e1492d431144a0ecd1b66535bc07ac77e1f0eb1499d8fc32";
-      name = "calendarsupport-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/calendarsupport-20.08.2.tar.xz";
+      sha256 = "83bcdd36689f762363a95b688b9377a3335b4fd58ad1d5efad36ad2b0cf7cc10";
+      name = "calendarsupport-20.08.2.tar.xz";
     };
   };
   cantor = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/cantor-20.08.1.tar.xz";
-      sha256 = "c44b96ac861302589923d144bf7b5d529b6eb2f91cea2d014944a0516de31a05";
-      name = "cantor-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/cantor-20.08.2.tar.xz";
+      sha256 = "aca92b6e40a9e05282eae2b55f7cc6bf88612ffa9b3dde1a239648be8e5bdc59";
+      name = "cantor-20.08.2.tar.xz";
     };
   };
   cervisia = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/cervisia-20.08.1.tar.xz";
-      sha256 = "eedd3b3f00b97d513437fdbd2eeaa28cd6db29512983b82196bdededd8b701f2";
-      name = "cervisia-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/cervisia-20.08.2.tar.xz";
+      sha256 = "b3444ecd1078b92fad9b00297496dd3d92366a9c0bb56cfa138f28cc15db1389";
+      name = "cervisia-20.08.2.tar.xz";
     };
   };
   dolphin = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/dolphin-20.08.1.tar.xz";
-      sha256 = "7d6ef04b866366a0ff3b199aac082ade41b3748b225ef7675ea42ccf48cbdc24";
-      name = "dolphin-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/dolphin-20.08.2.tar.xz";
+      sha256 = "bd13574610fc2108b9b04249cff70ca99958fe57a42fbf260ed16e5e377071bc";
+      name = "dolphin-20.08.2.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/dolphin-plugins-20.08.1.tar.xz";
-      sha256 = "a00cab6b30c9b5a4c0164704c9eab2cbb661928e775f83acb3691af77bf17427";
-      name = "dolphin-plugins-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/dolphin-plugins-20.08.2.tar.xz";
+      sha256 = "7eabeb295ae2932958992bf7273afcb8164fbe90a2574064983fb2ecbc57eeaf";
+      name = "dolphin-plugins-20.08.2.tar.xz";
     };
   };
   dragon = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/dragon-20.08.1.tar.xz";
-      sha256 = "691bc338ca25e70e9a43cbcdf50f2e0aa92643bdad0329bdc3e09373ac287040";
-      name = "dragon-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/dragon-20.08.2.tar.xz";
+      sha256 = "cf7cce288fdeb12a0c86739741c6b901859e9b36d8fc9e7478c46f53cc74dd6c";
+      name = "dragon-20.08.2.tar.xz";
     };
   };
   elisa = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/elisa-20.08.1.tar.xz";
-      sha256 = "1a0234a074a70bfcd4b2ccc14664b2cc7f88d2ccfd33c1716d35c27a31e258c0";
-      name = "elisa-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/elisa-20.08.2.tar.xz";
+      sha256 = "6c04377dfd5e82b2b67b3a43cc3ffd3b206f24ab75c3fe18298ec80876dcc268";
+      name = "elisa-20.08.2.tar.xz";
     };
   };
   eventviews = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/eventviews-20.08.1.tar.xz";
-      sha256 = "b46e6ad32a503ce1dc1e5ade71e79f44011362fe569836ca1f2cd11c560a5a73";
-      name = "eventviews-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/eventviews-20.08.2.tar.xz";
+      sha256 = "ecac9ac6e6a6ed835b28048d8bfc09bac9a1e7a57c5dd0eba6f4360301b32af9";
+      name = "eventviews-20.08.2.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ffmpegthumbs-20.08.1.tar.xz";
-      sha256 = "8b7cd6bd27b29977d0406b08c2cf33988c651a2f59392be47f076e49eea5673b";
-      name = "ffmpegthumbs-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ffmpegthumbs-20.08.2.tar.xz";
+      sha256 = "af5b3de86487d3ddccda34c5165a34427ef97fe1090108781eb38babc101740f";
+      name = "ffmpegthumbs-20.08.2.tar.xz";
     };
   };
   filelight = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/filelight-20.08.1.tar.xz";
-      sha256 = "9677038781a1d66238da0e54f967c9c97cb44d593dbe164b8e26f38d0ac75330";
-      name = "filelight-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/filelight-20.08.2.tar.xz";
+      sha256 = "65f5f90d56d3449722647286324f8aae54754ec2a46c9aaa2e3bad92bae3433e";
+      name = "filelight-20.08.2.tar.xz";
     };
   };
   granatier = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/granatier-20.08.1.tar.xz";
-      sha256 = "7b0d53fd50fdb56270f8fd53d45478c0f1be10bb67b901db08b0f413c4baeb3e";
-      name = "granatier-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/granatier-20.08.2.tar.xz";
+      sha256 = "bb79b84b485bb194bf4edaa833e7705ec9fc0275301c70df78498b872de9ee57";
+      name = "granatier-20.08.2.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/grantlee-editor-20.08.1.tar.xz";
-      sha256 = "edeb994eab7001bcf8462834a61ae1a045e9122ae104d31bdeed2ac7497b6306";
-      name = "grantlee-editor-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/grantlee-editor-20.08.2.tar.xz";
+      sha256 = "353b2c58d169e8b3c91367a7ce8939ede39c289036e3617da019ae1045a81c7b";
+      name = "grantlee-editor-20.08.2.tar.xz";
     };
   };
   grantleetheme = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/grantleetheme-20.08.1.tar.xz";
-      sha256 = "9a8f91ce63a3b143d47d8e3fbd1378732639cd3daf5b5789989164d8225fe54f";
-      name = "grantleetheme-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/grantleetheme-20.08.2.tar.xz";
+      sha256 = "8cb4d2f698cf7f44bf70322669809f07900021f215175c8db120abc0f2debf62";
+      name = "grantleetheme-20.08.2.tar.xz";
     };
   };
   gwenview = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/gwenview-20.08.1.tar.xz";
-      sha256 = "df1c45317aff9aece8b023cd87aab62c9cd222520795922564e89fdc9df48995";
-      name = "gwenview-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/gwenview-20.08.2.tar.xz";
+      sha256 = "580df49eb6852db4b1229f0326372dc7da7a08140d552da59a62ece08b03cc9d";
+      name = "gwenview-20.08.2.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/incidenceeditor-20.08.1.tar.xz";
-      sha256 = "eecc51eb405c473eb20449842dcdb3dac96712bbcf7aeedaa06614e1da3e0bbe";
-      name = "incidenceeditor-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/incidenceeditor-20.08.2.tar.xz";
+      sha256 = "e9c24390b5951ef9f504a4dc432fea52ed7487288c424f073446e6c07e70c69a";
+      name = "incidenceeditor-20.08.2.tar.xz";
     };
   };
   juk = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/juk-20.08.1.tar.xz";
-      sha256 = "aa9a93a0befacf401cf41d8358b4987d8b370b4c153f3b66e05e922472e004a8";
-      name = "juk-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/juk-20.08.2.tar.xz";
+      sha256 = "b19f59ad8c80c4c335469fbddde6db92112e286b1699964eab39a3d826c7ec60";
+      name = "juk-20.08.2.tar.xz";
     };
   };
   k3b = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/k3b-20.08.1.tar.xz";
-      sha256 = "66fad59f4e35c24dc8868c46ff45ffa66048501e0a6ac0c23a8b9e957033e50f";
-      name = "k3b-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/k3b-20.08.2.tar.xz";
+      sha256 = "6370be558e93fed4605b7870b1d7ea324713c5a52370eab9c05d85fc3b76acd5";
+      name = "k3b-20.08.2.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kaccounts-integration-20.08.1.tar.xz";
-      sha256 = "b65ec11be0c2b612222de382d24345f19be0cd264243f0d954da8a81b80034bc";
-      name = "kaccounts-integration-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kaccounts-integration-20.08.2.tar.xz";
+      sha256 = "6678ee7d394b69a37e6a220a6cba3804f999997da5803da4bab1d8f329ff30fe";
+      name = "kaccounts-integration-20.08.2.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kaccounts-providers-20.08.1.tar.xz";
-      sha256 = "481a2e2708773197b63937233ade6380c0b64e13a1610f27aa2751b6ee3624a4";
-      name = "kaccounts-providers-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kaccounts-providers-20.08.2.tar.xz";
+      sha256 = "c719d7840ab118ff591e75e12869afc3118e5cdeb5c0415eba5b1f6993664c90";
+      name = "kaccounts-providers-20.08.2.tar.xz";
     };
   };
   kaddressbook = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kaddressbook-20.08.1.tar.xz";
-      sha256 = "f7fb72cbff43ae6dfb222e5b1c49947602086412b97634484eb3cc86ab773aa2";
-      name = "kaddressbook-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kaddressbook-20.08.2.tar.xz";
+      sha256 = "8d2e5849dd8878806e8566ce43c139633c37f027f677603600c8acc0d0d41198";
+      name = "kaddressbook-20.08.2.tar.xz";
     };
   };
   kajongg = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kajongg-20.08.1.tar.xz";
-      sha256 = "801c0cc63767809ea4909ceb66dbbbb3e8ad400db7a24c80dc6ae8f3f5c9a6b9";
-      name = "kajongg-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kajongg-20.08.2.tar.xz";
+      sha256 = "1eb534ac6d1d3ca14b73bd6e5b626b988acafc30b168f54d48a493adc715ecde";
+      name = "kajongg-20.08.2.tar.xz";
     };
   };
   kalarm = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kalarm-20.08.1.tar.xz";
-      sha256 = "22fea5be32c8db6b0903f216307f20dafc2ac69c620d9b4512e1034c0294c207";
-      name = "kalarm-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kalarm-20.08.2.tar.xz";
+      sha256 = "e783c041ac4b162cf5254e37e53854835eda6c61ef3ae2358466000a8650a4da";
+      name = "kalarm-20.08.2.tar.xz";
     };
   };
   kalarmcal = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kalarmcal-20.08.1.tar.xz";
-      sha256 = "745515662c23154480e73f4a8d6e9ec760d01770383c1dd7f31d3f1463be7602";
-      name = "kalarmcal-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kalarmcal-20.08.2.tar.xz";
+      sha256 = "0398a37f412eb03b5cbf2488ce7e0c38a069f1806bda4ea9bfce4fc67311a9a6";
+      name = "kalarmcal-20.08.2.tar.xz";
     };
   };
   kalgebra = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kalgebra-20.08.1.tar.xz";
-      sha256 = "a5ab916eba3bfd7535408768e6530e993bc1097ef1a2a0af5aa804aa1f713caf";
-      name = "kalgebra-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kalgebra-20.08.2.tar.xz";
+      sha256 = "c934dc8d92917e31c17efa5b64dbec4795439a5f26762e2f214b49028bfe264d";
+      name = "kalgebra-20.08.2.tar.xz";
     };
   };
   kalzium = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kalzium-20.08.1.tar.xz";
-      sha256 = "c2c4a823525ab5927c39f29e2150f34fc03947fb852aea1bdb73390c5a709188";
-      name = "kalzium-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kalzium-20.08.2.tar.xz";
+      sha256 = "474f74cbb478d3f5f69b5785711ed969ac15d5e92aee5308c6118a9d12611016";
+      name = "kalzium-20.08.2.tar.xz";
     };
   };
   kamera = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kamera-20.08.1.tar.xz";
-      sha256 = "f5b04ca46313de1bb0a57253650d1d1578f45796035888b759ad224b5866ee96";
-      name = "kamera-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kamera-20.08.2.tar.xz";
+      sha256 = "ba28cab34267ce203b4b70f4a2c2b6a75849aec83dd2d73f6903894c5c125fdf";
+      name = "kamera-20.08.2.tar.xz";
     };
   };
   kamoso = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kamoso-20.08.1.tar.xz";
-      sha256 = "ed8fa6a6127a8bea5294534aa2552526af101f981de58512fbb9f7dfd78e8984";
-      name = "kamoso-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kamoso-20.08.2.tar.xz";
+      sha256 = "e7d0af2781ff077261886a1683aff1d518a17f9b6d83f84fa95a7633a00f1516";
+      name = "kamoso-20.08.2.tar.xz";
     };
   };
   kanagram = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kanagram-20.08.1.tar.xz";
-      sha256 = "c810db58884e80d95baef149b8ced8fff7c5e48d6057478e81a5c8895ae67b42";
-      name = "kanagram-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kanagram-20.08.2.tar.xz";
+      sha256 = "3f3f961aa847f26ac875104e82b8e7e73bbc049f20460117f849df91ba9b42e2";
+      name = "kanagram-20.08.2.tar.xz";
     };
   };
   kapman = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kapman-20.08.1.tar.xz";
-      sha256 = "934da85c5d9c99a0ed658fe4d99df258246716e04e13ceb3e18b11cc035c4f4c";
-      name = "kapman-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kapman-20.08.2.tar.xz";
+      sha256 = "932bd697f2ca0e44af6be983dae3e13df9435642b91f0e1ebba7fd50291c2cbd";
+      name = "kapman-20.08.2.tar.xz";
     };
   };
   kapptemplate = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kapptemplate-20.08.1.tar.xz";
-      sha256 = "7b350467e14bc310a695ffa3481afa7857de2f6ec714915ee2d8a25a6511909b";
-      name = "kapptemplate-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kapptemplate-20.08.2.tar.xz";
+      sha256 = "3bda6d9f6127e19357f071ca6f9f05890c35a6aaf86e54bce39381f0045b6b0c";
+      name = "kapptemplate-20.08.2.tar.xz";
     };
   };
   kate = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kate-20.08.1.tar.xz";
-      sha256 = "44607f6a1d5ca8bb7173bedbeabef65bb98dde0fd009987bd8139fbb53959146";
-      name = "kate-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kate-20.08.2.tar.xz";
+      sha256 = "718e8230edfa16f93f54380c4e214a0f25f8a398fe74ad23f12b7dcffae419d0";
+      name = "kate-20.08.2.tar.xz";
     };
   };
   katomic = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/katomic-20.08.1.tar.xz";
-      sha256 = "1aa655857bb1708880b6fbf4e54acdfe1cb7f47a9494249978251d870b86f13a";
-      name = "katomic-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/katomic-20.08.2.tar.xz";
+      sha256 = "bb94e81cb1122b57d2601f701bc51ff8fa27ac07a5de34e5c49928d50d46ed85";
+      name = "katomic-20.08.2.tar.xz";
     };
   };
   kbackup = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kbackup-20.08.1.tar.xz";
-      sha256 = "08b0c43fca2dba65e1173841343daf8e6e37e11101be7315011e8345ba9b1e72";
-      name = "kbackup-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kbackup-20.08.2.tar.xz";
+      sha256 = "bb97dd10a64c42ae80c9c87442d3a06d3c18f4f5997bd3b6d1460dec655b3e0a";
+      name = "kbackup-20.08.2.tar.xz";
     };
   };
   kblackbox = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kblackbox-20.08.1.tar.xz";
-      sha256 = "3f09d483fa3a3013e685df9efd9cee8d9d1b9f0e017cc97d92636bae89fc469c";
-      name = "kblackbox-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kblackbox-20.08.2.tar.xz";
+      sha256 = "714a8749a49d1a7938b74372138ae3e5bafef50de61207e63a6d2c60b6bfded2";
+      name = "kblackbox-20.08.2.tar.xz";
     };
   };
   kblocks = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kblocks-20.08.1.tar.xz";
-      sha256 = "e2b6e5b0727ca45d6b0f0e8b9f0aa029a0acb9bdebeac5bfd849455e560977ed";
-      name = "kblocks-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kblocks-20.08.2.tar.xz";
+      sha256 = "c82f8b6e722308a236d0057028d644ebf8105c9c902d799bc2fb3e1c1ff7c188";
+      name = "kblocks-20.08.2.tar.xz";
     };
   };
   kbounce = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kbounce-20.08.1.tar.xz";
-      sha256 = "99af3bd297fcbecb9eaa4222bbb5122144beff9cb999420bf45339d61375f2a4";
-      name = "kbounce-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kbounce-20.08.2.tar.xz";
+      sha256 = "371fbaf7c1faeacf1c74441ec1a58f1ced862f741e67123d2eb105f1d4f9b8e2";
+      name = "kbounce-20.08.2.tar.xz";
     };
   };
   kbreakout = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kbreakout-20.08.1.tar.xz";
-      sha256 = "0d57c105f2778b68c0b5ff8cb3e02d5c7ea2956b90d48d126ff1118b94d5f2fa";
-      name = "kbreakout-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kbreakout-20.08.2.tar.xz";
+      sha256 = "b58b9dd26eff3960bc664076ddf4d0c81c7dfd5380be1d058b86de2d3f55d2ef";
+      name = "kbreakout-20.08.2.tar.xz";
     };
   };
   kbruch = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kbruch-20.08.1.tar.xz";
-      sha256 = "f04bf902a31b68d18c69afff511a591817a35f5ad866de4f84aa1b664b35a41e";
-      name = "kbruch-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kbruch-20.08.2.tar.xz";
+      sha256 = "54c5997a8d6405439448dd929bf16017c9e5db052b30c9bf144c656c6d8b9e0b";
+      name = "kbruch-20.08.2.tar.xz";
     };
   };
   kcachegrind = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcachegrind-20.08.1.tar.xz";
-      sha256 = "59c43296aaa7d8a5dbf782ba9248ee8bb6308e7bd7bdfc0b99e1c912529337f2";
-      name = "kcachegrind-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcachegrind-20.08.2.tar.xz";
+      sha256 = "e6b84a323a21ae7975ccc07154bcdc6eef1bc92818b800cfc5d546ada7f0387c";
+      name = "kcachegrind-20.08.2.tar.xz";
     };
   };
   kcalc = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcalc-20.08.1.tar.xz";
-      sha256 = "46702fe8eca8b604e15f3f2eb4d1f17b8601b6ad0b03bb9cd0a0dd7ed7a13c49";
-      name = "kcalc-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcalc-20.08.2.tar.xz";
+      sha256 = "76b6c8e44c789090c0155f79878df8f27c96d2df4273443b0f05a42ec81902cf";
+      name = "kcalc-20.08.2.tar.xz";
     };
   };
   kcalutils = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcalutils-20.08.1.tar.xz";
-      sha256 = "ae6a8ca02722f8f593a8d248ab3d043cc68be23d18f820e150af000a902601c2";
-      name = "kcalutils-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcalutils-20.08.2.tar.xz";
+      sha256 = "fccae5166b627f654412344d0090000ecd270af54b0cedb8648e35af26369cae";
+      name = "kcalutils-20.08.2.tar.xz";
     };
   };
   kcharselect = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcharselect-20.08.1.tar.xz";
-      sha256 = "36575e9fd0a93fb3ddaf6a75a213786351bdd3ab8c167dc1a3e2824a23a6655b";
-      name = "kcharselect-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcharselect-20.08.2.tar.xz";
+      sha256 = "9438e723469b6bf0d87b23965c6d925800ff35b2cc2214a7eeb5fb41009489e0";
+      name = "kcharselect-20.08.2.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcolorchooser-20.08.1.tar.xz";
-      sha256 = "20cae01bd5e8c824f8e7900badd0d66464c363a749a1ce9fe6fe3a1e31c99ade";
-      name = "kcolorchooser-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcolorchooser-20.08.2.tar.xz";
+      sha256 = "f314c31932704e7136b5fff89efe95e84e4215f3902089f9d838411f0fbc0c72";
+      name = "kcolorchooser-20.08.2.tar.xz";
     };
   };
   kcron = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kcron-20.08.1.tar.xz";
-      sha256 = "24ee9aee48bef951d6ac1fff32271417c4eb2239f0ec1de8388f2bae55ce83f5";
-      name = "kcron-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kcron-20.08.2.tar.xz";
+      sha256 = "ce72bb7c48606b0611cfe46a545224cca131d34a4b678c86d9ac473071833f83";
+      name = "kcron-20.08.2.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdebugsettings-20.08.1.tar.xz";
-      sha256 = "cac50d34c8a31805924aa75755475a754109fc643e95fe50188477522d113a55";
-      name = "kdebugsettings-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdebugsettings-20.08.2.tar.xz";
+      sha256 = "78502b1a52f9f81ff848e5b210b37a3a74da7c0032de2513f23c1d25cf801283";
+      name = "kdebugsettings-20.08.2.tar.xz";
     };
   };
   kdeconnect-kde = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdeconnect-kde-20.08.1.tar.xz";
-      sha256 = "8ebfe36b4d08b36881082a3748f63a7c645b51e8f3b094607512817e9f6ce668";
-      name = "kdeconnect-kde-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdeconnect-kde-20.08.2.tar.xz";
+      sha256 = "6d43e38620987de1ddcfdfa7d4e6e31ff383b806139ba02e69a99c3ddfb4ee67";
+      name = "kdeconnect-kde-20.08.2.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kde-dev-scripts-20.08.1.tar.xz";
-      sha256 = "f7f99a199fea69019738e6d2147e5f6e4419835aa2c39e6d60f4d2e5d629ba96";
-      name = "kde-dev-scripts-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kde-dev-scripts-20.08.2.tar.xz";
+      sha256 = "ff1a819991903b09bef3637b579d215e087310e39b98a1a6928e15f193aec056";
+      name = "kde-dev-scripts-20.08.2.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kde-dev-utils-20.08.1.tar.xz";
-      sha256 = "8105a5b911643dca1f0c476c9247282f80e4ea17bae06dcca63ba9638bf5d21d";
-      name = "kde-dev-utils-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kde-dev-utils-20.08.2.tar.xz";
+      sha256 = "21a4a11e102cbbd9fed955720966d7be2f7a615f57c9bf1dfc94ce973d25ffc3";
+      name = "kde-dev-utils-20.08.2.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdeedu-data-20.08.1.tar.xz";
-      sha256 = "d9c10c849f94b8cff7f79747a0594b8050f19d5477799b03f803c4241a9d12b6";
-      name = "kdeedu-data-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdeedu-data-20.08.2.tar.xz";
+      sha256 = "9030c39b92a7500254e8303ce246d2535cd66a203bb96b2670defd5288294ad1";
+      name = "kdeedu-data-20.08.2.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdegraphics-mobipocket-20.08.1.tar.xz";
-      sha256 = "9974c36d90fc23d9a3a7172cf1526dc3671bf90f01f608effe92f64fce53c372";
-      name = "kdegraphics-mobipocket-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdegraphics-mobipocket-20.08.2.tar.xz";
+      sha256 = "8972079756633abe8cbfaa39cdff9d56f89958861e6e418738311bcdc52771a5";
+      name = "kdegraphics-mobipocket-20.08.2.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdegraphics-thumbnailers-20.08.1.tar.xz";
-      sha256 = "8303231f2fc44c071b3f6a477ae5335f2657dbfaba52362529aaba20973a5995";
-      name = "kdegraphics-thumbnailers-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdegraphics-thumbnailers-20.08.2.tar.xz";
+      sha256 = "977cf6c40ba00a8a391a951aab80c55d9615927a1ef4a7bb5eea2f6a83373532";
+      name = "kdegraphics-thumbnailers-20.08.2.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdenetwork-filesharing-20.08.1.tar.xz";
-      sha256 = "e88f4a2f6d7b8a61ebd491eb112f51d50f9949d729022fab01223d6ea36b8a01";
-      name = "kdenetwork-filesharing-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdenetwork-filesharing-20.08.2.tar.xz";
+      sha256 = "f909ee8433baf906b6c23af4747d83ae3e151e213585abe01282213012228b3a";
+      name = "kdenetwork-filesharing-20.08.2.tar.xz";
     };
   };
   kdenlive = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdenlive-20.08.1.tar.xz";
-      sha256 = "f99e3f22c3d5e41a3ca251299d010ac2bc44933091c25d360104d562a1090873";
-      name = "kdenlive-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdenlive-20.08.2.tar.xz";
+      sha256 = "535df45a148f0f94271e045ef0c93575fded83da7a2b727aeaf90e61e1d7c418";
+      name = "kdenlive-20.08.2.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdepim-addons-20.08.1.tar.xz";
-      sha256 = "a0bddcbe8f8f6d8c878a6b5634578522a8d485e424cf37d35bc17df9a1ffc7c2";
-      name = "kdepim-addons-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdepim-addons-20.08.2.tar.xz";
+      sha256 = "f7ab0d9ee2b9351959199f8903c447c6cb82fd58d642b7039cd2b8e324038b01";
+      name = "kdepim-addons-20.08.2.tar.xz";
     };
   };
   kdepim-apps-libs = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdepim-apps-libs-20.08.1.tar.xz";
-      sha256 = "a0664933b3b5ff20747bf2adec9fbbecf22935129349208430d53e8c9bf5b5bb";
-      name = "kdepim-apps-libs-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdepim-apps-libs-20.08.2.tar.xz";
+      sha256 = "8c3ebdf7072d3a5a6ea2921697b28aa27e51ba43db152ea83a07b4b13c282434";
+      name = "kdepim-apps-libs-20.08.2.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdepim-runtime-20.08.1.tar.xz";
-      sha256 = "27a4c04dcf2eac4108a43acbdd57e3a8aa1da92443a3e7977329d0218da05c24";
-      name = "kdepim-runtime-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdepim-runtime-20.08.2.tar.xz";
+      sha256 = "3b475dfd394d5c09991eb4e1f0ddb3e2aa1f586ed75aa7961b159ef712d80132";
+      name = "kdepim-runtime-20.08.2.tar.xz";
     };
   };
   kdesdk-kioslaves = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdesdk-kioslaves-20.08.1.tar.xz";
-      sha256 = "528cce0ea4c7c9fd53a604591eae4a70d39421ebbe62ed59bcbc80072f95c19f";
-      name = "kdesdk-kioslaves-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdesdk-kioslaves-20.08.2.tar.xz";
+      sha256 = "5e79532675d717d906f6b43eea1cac20fe1513bcf497696251c00fe74e2f0f58";
+      name = "kdesdk-kioslaves-20.08.2.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdesdk-thumbnailers-20.08.1.tar.xz";
-      sha256 = "5b189182f2a734f82e67e23d3293e694c51f97c0a9acd1ec5498442a3d2a3804";
-      name = "kdesdk-thumbnailers-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdesdk-thumbnailers-20.08.2.tar.xz";
+      sha256 = "0b6809e2469d7057b6d674d5950fd4f6243a1d3d185452212522880c714c1c63";
+      name = "kdesdk-thumbnailers-20.08.2.tar.xz";
     };
   };
   kdf = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdf-20.08.1.tar.xz";
-      sha256 = "c100c87e9dbfcf7c12ce78d743f4ce3a2ec2bf3c1b0d969af1285255071195a5";
-      name = "kdf-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdf-20.08.2.tar.xz";
+      sha256 = "b33c043c18ae7b80b40e73c0a34759540724fa81815a6afa1e91e3ad44aec27e";
+      name = "kdf-20.08.2.tar.xz";
     };
   };
   kdialog = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdialog-20.08.1.tar.xz";
-      sha256 = "089e8a8e85a9021b830e9b8a19ecb1999781915a716c9c2b3c99894a5d1c8dcf";
-      name = "kdialog-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdialog-20.08.2.tar.xz";
+      sha256 = "1bb808c2d01680e2396f282b798d9e22d2c1722f992c672eaf7451bf83a5d459";
+      name = "kdialog-20.08.2.tar.xz";
     };
   };
   kdiamond = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kdiamond-20.08.1.tar.xz";
-      sha256 = "1629dc6f70873b42081bd75dbf858da56d380c32925ddd49bd2110d458cb4b23";
-      name = "kdiamond-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kdiamond-20.08.2.tar.xz";
+      sha256 = "7bfc2b24d86c663bff719156ba20cd36017f1df647ee6769b5101aa6ab3e3e21";
+      name = "kdiamond-20.08.2.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/keditbookmarks-20.08.1.tar.xz";
-      sha256 = "8bfedffae0332dbfb611d25f3178ab7babe374155cce7c44e1aaa841934c3123";
-      name = "keditbookmarks-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/keditbookmarks-20.08.2.tar.xz";
+      sha256 = "87d72e78c907e7829a642364f3a49dd0f0dea0c76e7a5c524a67f957dca94b9b";
+      name = "keditbookmarks-20.08.2.tar.xz";
     };
   };
   kfind = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kfind-20.08.1.tar.xz";
-      sha256 = "e49412d0eae6f77369b96ee7fa5902252294d03da1e8782460d4bba5be6bb149";
-      name = "kfind-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kfind-20.08.2.tar.xz";
+      sha256 = "2381bbe7793a666fa9463aead1246dc4244409f68375f6d75e1423be15b42d74";
+      name = "kfind-20.08.2.tar.xz";
     };
   };
   kfloppy = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kfloppy-20.08.1.tar.xz";
-      sha256 = "cfbe396c252acc23a929d05fe1a71099bc19ee3ab55f4f40e47780cf871852c5";
-      name = "kfloppy-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kfloppy-20.08.2.tar.xz";
+      sha256 = "7f624d03dc3dc5099ac1479148800043195fa6c0e3bb6d7efcb452a76e99e191";
+      name = "kfloppy-20.08.2.tar.xz";
     };
   };
   kfourinline = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kfourinline-20.08.1.tar.xz";
-      sha256 = "2c65dcc685d7e46da73e53ac3ab250ef4d1738bb85aa6f1b09160ff2ece364a2";
-      name = "kfourinline-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kfourinline-20.08.2.tar.xz";
+      sha256 = "aed2ecdb40b2e3d5452b183a1817216373d32a0aab4eff02f6c823a6f8d801eb";
+      name = "kfourinline-20.08.2.tar.xz";
     };
   };
   kgeography = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kgeography-20.08.1.tar.xz";
-      sha256 = "f7ce4c6a00f18558aa04f4af0b71e45efc10c67f0b3454c5f0b2527a43133d30";
-      name = "kgeography-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kgeography-20.08.2.tar.xz";
+      sha256 = "82c4798f3184c77d0be63aeb5e86c84240c9cb0aa0e66ff57f92c0b5c3748f19";
+      name = "kgeography-20.08.2.tar.xz";
     };
   };
   kget = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kget-20.08.1.tar.xz";
-      sha256 = "efbfc08a5a4ed3974bbdab20c5eae07cdb70f7f42e9de1c75651a57511d7e576";
-      name = "kget-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kget-20.08.2.tar.xz";
+      sha256 = "42993095d6325e921b6ed36f4b0a2153ffd5d68cfa3e6d3ced2db09e2a6aabb8";
+      name = "kget-20.08.2.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kgoldrunner-20.08.1.tar.xz";
-      sha256 = "40380c0d3b65e06cdb9d9ca3791c10e0d2d300856cc49a7b3da0145b7651274b";
-      name = "kgoldrunner-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kgoldrunner-20.08.2.tar.xz";
+      sha256 = "4bbcfcf5cf810e0b1f78e1a88d222631c07401187fb327deaa5ab6658483d351";
+      name = "kgoldrunner-20.08.2.tar.xz";
     };
   };
   kgpg = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kgpg-20.08.1.tar.xz";
-      sha256 = "6b926c2adf896c3f68402ec10faf8db1e5f7c7b9fa8c1c26f9021d1fb0c975b0";
-      name = "kgpg-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kgpg-20.08.2.tar.xz";
+      sha256 = "fc4ec5c38c3bdb02a399f0eb1e75da356a523ada369d5410c2f4e7f5f14a508f";
+      name = "kgpg-20.08.2.tar.xz";
     };
   };
   khangman = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/khangman-20.08.1.tar.xz";
-      sha256 = "fe94116ea833295a46c59a7420676925bb1038e7da86f6369d452087add40868";
-      name = "khangman-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/khangman-20.08.2.tar.xz";
+      sha256 = "7ff30ecbab7c9e8f44b7e8c3887ec78a918c919ce902005aeb7fb969ac995b28";
+      name = "khangman-20.08.2.tar.xz";
     };
   };
   khelpcenter = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/khelpcenter-20.08.1.tar.xz";
-      sha256 = "217b433c1a5da966ad5dab1e89e2e719632f1e035ab92cce094c5f0848bb6e39";
-      name = "khelpcenter-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/khelpcenter-20.08.2.tar.xz";
+      sha256 = "36051a4352a05dd9b74b4e325c0e16e30d6bd8b48d6c3d13980b39a77aab4e2d";
+      name = "khelpcenter-20.08.2.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kidentitymanagement-20.08.1.tar.xz";
-      sha256 = "3b34e029e99647d6742825633682ab8a5eecbe102e34ea2472cb53afb853840d";
-      name = "kidentitymanagement-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kidentitymanagement-20.08.2.tar.xz";
+      sha256 = "17a1fd47d91289519cafb12c0d917b4775496ada447cb6f4ba56dc42446152ec";
+      name = "kidentitymanagement-20.08.2.tar.xz";
     };
   };
   kig = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kig-20.08.1.tar.xz";
-      sha256 = "f318d346cd152e62ae892ade31a784f0b7b823c56fdfd64e05a330072ad95745";
-      name = "kig-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kig-20.08.2.tar.xz";
+      sha256 = "401832d384e47ea6daf310f7e823ae6b8a55bc117b7570bd4bf36261d01587f5";
+      name = "kig-20.08.2.tar.xz";
     };
   };
   kigo = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kigo-20.08.1.tar.xz";
-      sha256 = "58fa166a487c855d300c8a33758928131fc4db80cbda19a08e3de918335d2bdb";
-      name = "kigo-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kigo-20.08.2.tar.xz";
+      sha256 = "b9e6edd2e35e57edb3d89bb76f1d7e4a9e7f8fb64644b58012543a367834aa60";
+      name = "kigo-20.08.2.tar.xz";
     };
   };
   killbots = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/killbots-20.08.1.tar.xz";
-      sha256 = "252636f4df2af0e087f4d604f76c5d8702c38392d821281a0f6283be4e429af9";
-      name = "killbots-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/killbots-20.08.2.tar.xz";
+      sha256 = "332ebd24be6ea62c8621aeaa5b200d6ebf03ae0198a06693b36b2c80cac89d95";
+      name = "killbots-20.08.2.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kimagemapeditor-20.08.1.tar.xz";
-      sha256 = "bf391d0812e0f2dce6a11481972cf9d04f14d0bf92cad7210fa35a1fa0edf230";
-      name = "kimagemapeditor-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kimagemapeditor-20.08.2.tar.xz";
+      sha256 = "fd8272978a7c3a1d95b20a5ec57ccf00d740a8d6eb483f0a204d03669215309c";
+      name = "kimagemapeditor-20.08.2.tar.xz";
     };
   };
   kimap = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kimap-20.08.1.tar.xz";
-      sha256 = "eae645ae2535c2612556e8938011cc478054c032126bb55683b95127d1b94741";
-      name = "kimap-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kimap-20.08.2.tar.xz";
+      sha256 = "bda4f4b4e94481b70cec270655c0fd2888da51106d80c0388ae5c0dc5d36e092";
+      name = "kimap-20.08.2.tar.xz";
     };
   };
   kio-extras = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kio-extras-20.08.1.tar.xz";
-      sha256 = "1122635926052f34fd35d8aeef9c3c1d892690d8372f2b7d902e6449cdab988a";
-      name = "kio-extras-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kio-extras-20.08.2.tar.xz";
+      sha256 = "9d4b9cb5a4002ad2127c5c5c4d25ff95d53de32ea08348e8dc40fe83d950076e";
+      name = "kio-extras-20.08.2.tar.xz";
     };
   };
   kio-gdrive = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kio-gdrive-20.08.1.tar.xz";
-      sha256 = "5104136948ee60cd527109bb9e8830e6a12f6062a29f34bc995b2625b0280825";
-      name = "kio-gdrive-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kio-gdrive-20.08.2.tar.xz";
+      sha256 = "71047e9f8e5ad9317cc3dbf1de2d121f322b5d968d3685351ef0d2aabe2f46ca";
+      name = "kio-gdrive-20.08.2.tar.xz";
     };
   };
   kipi-plugins = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kipi-plugins-20.08.1.tar.xz";
-      sha256 = "b7d8f1aa087006a48d9bd7ec036ab4779e898e3b02692c91342439747cad6c5c";
-      name = "kipi-plugins-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kipi-plugins-20.08.2.tar.xz";
+      sha256 = "89de8f75dd01e2130c1e651bd04717ce4d35768202ae3e825c93c75c8312e583";
+      name = "kipi-plugins-20.08.2.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kirigami-gallery-20.08.1.tar.xz";
-      sha256 = "497886cc5a8483f068a642ce19df19f69fd105a4fb583f1a9898c885659c9df5";
-      name = "kirigami-gallery-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kirigami-gallery-20.08.2.tar.xz";
+      sha256 = "0b4a5cec32bdfaef42b790f1d249d227c9daf56e0f3c1e302d33ccaa485c28e5";
+      name = "kirigami-gallery-20.08.2.tar.xz";
     };
   };
   kiriki = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kiriki-20.08.1.tar.xz";
-      sha256 = "51e77cbbf6a0c60487d72b03b28c08409d0b6134c983d9e420fbc4d7f73223e8";
-      name = "kiriki-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kiriki-20.08.2.tar.xz";
+      sha256 = "42081e39c045bd830c6a79938a83690ea5641aa9e5437645234441da2d29b053";
+      name = "kiriki-20.08.2.tar.xz";
     };
   };
   kiten = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kiten-20.08.1.tar.xz";
-      sha256 = "f3764d090db8027746e83c326e833680fd669dca66dd6af095ba120e66de2901";
-      name = "kiten-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kiten-20.08.2.tar.xz";
+      sha256 = "a7285d5880611da2202d0e3f8f2bf860f275932d3da54ff7aecc793225f7ad7d";
+      name = "kiten-20.08.2.tar.xz";
     };
   };
   kitinerary = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kitinerary-20.08.1.tar.xz";
-      sha256 = "d3e0b6130b5c603bc1494404fa91ed1995e9142d66e4c3ddd5d2c79fdea856e4";
-      name = "kitinerary-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kitinerary-20.08.2.tar.xz";
+      sha256 = "69d8b5f64774860e5098c1dbfb06d274da4379c04383c4f0f0e412481c48fa27";
+      name = "kitinerary-20.08.2.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kjumpingcube-20.08.1.tar.xz";
-      sha256 = "226424cd21f75c499eedd15460a466988b179312467ed16437df87be494d9fbc";
-      name = "kjumpingcube-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kjumpingcube-20.08.2.tar.xz";
+      sha256 = "0edba227e24b8aeda4e75bc6c25ad25b50ac624b5319a64ce20d6c3f7691a48a";
+      name = "kjumpingcube-20.08.2.tar.xz";
     };
   };
   kldap = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kldap-20.08.1.tar.xz";
-      sha256 = "098fb07b280ef25dcf04b18f627223014257f6c0874b2959f2a8e68cacdb74a7";
-      name = "kldap-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kldap-20.08.2.tar.xz";
+      sha256 = "dfc8bd59d837766e741b33cf8486256b7bd5ffc33ff2aab240d47b4766ec8489";
+      name = "kldap-20.08.2.tar.xz";
     };
   };
   kleopatra = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kleopatra-20.08.1.tar.xz";
-      sha256 = "e7bc3ce03ad5431e4289360ba6b701e38d53b60de58fd1ed358480cec48657a6";
-      name = "kleopatra-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kleopatra-20.08.2.tar.xz";
+      sha256 = "70ffa2d1549b6b4674a9cd92052174002d81fb236cfbf872187c6e3616191ba2";
+      name = "kleopatra-20.08.2.tar.xz";
     };
   };
   klettres = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/klettres-20.08.1.tar.xz";
-      sha256 = "f29d6df1de3562731f246a892caaa493b9bccc9d1317a948e03ad12cb8c80c06";
-      name = "klettres-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/klettres-20.08.2.tar.xz";
+      sha256 = "9cef7dea479d27644e4812157d4cf3993dc3ee84b847377a17cec305a03a3156";
+      name = "klettres-20.08.2.tar.xz";
     };
   };
   klickety = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/klickety-20.08.1.tar.xz";
-      sha256 = "a9b63b3e944faba25498e981c06981dc354f9acd34b77f46fe2bebef388bf2cb";
-      name = "klickety-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/klickety-20.08.2.tar.xz";
+      sha256 = "90665c5aeda52f55af8dcf3936e557ba431d9e48c6be361eaeb82117b6213a33";
+      name = "klickety-20.08.2.tar.xz";
     };
   };
   klines = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/klines-20.08.1.tar.xz";
-      sha256 = "d16650d7d44f48f47700dcb8fe97519dd28fe7213052636363d281c24f46a2b9";
-      name = "klines-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/klines-20.08.2.tar.xz";
+      sha256 = "8e8b897cdc3c31fada1dd2635da211def507f47c8062c6458f559283ae470edb";
+      name = "klines-20.08.2.tar.xz";
     };
   };
   kmag = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmag-20.08.1.tar.xz";
-      sha256 = "0aaaf19af2c943ae460dbcc1984bae167b79be287802e8a6faa6aaaed11718f3";
-      name = "kmag-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmag-20.08.2.tar.xz";
+      sha256 = "8e933e8ebbf0ab956e2a251312e3d4e027848dc2f2b4e8a7c7250b8fdf10ca05";
+      name = "kmag-20.08.2.tar.xz";
     };
   };
   kmahjongg = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmahjongg-20.08.1.tar.xz";
-      sha256 = "842b3d2e9c60b6a8e6bb6d09f26db49d988889ec3962ac40aea0e79434c2eb43";
-      name = "kmahjongg-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmahjongg-20.08.2.tar.xz";
+      sha256 = "98e34794560a062bd22950acc583b77a6f8d1d28aceb863604f5a6c98c6cc80d";
+      name = "kmahjongg-20.08.2.tar.xz";
     };
   };
   kmail = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmail-20.08.1.tar.xz";
-      sha256 = "7ba5854e36e2ed752baa3a1ac15d1a6227699da6f5bdca3c250f22226b4d902b";
-      name = "kmail-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmail-20.08.2.tar.xz";
+      sha256 = "ff179b89836236174cd587ce4ea2a4320e58345d45582cb157186cfbb01e58f2";
+      name = "kmail-20.08.2.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmail-account-wizard-20.08.1.tar.xz";
-      sha256 = "7a1dc9ad542c0e54b80e955a162888c7d4b6bababcf02681d54af4480c03bd8d";
-      name = "kmail-account-wizard-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmail-account-wizard-20.08.2.tar.xz";
+      sha256 = "7cdb9b60b1a646f0c5c0d0e7dfbe357a9f66bb305afbccbb4b421ee6f6941df8";
+      name = "kmail-account-wizard-20.08.2.tar.xz";
     };
   };
   kmailtransport = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmailtransport-20.08.1.tar.xz";
-      sha256 = "4cabad74e141891546b0f47f44030eeb59fb63257a5c0d1c12124815ebf710c1";
-      name = "kmailtransport-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmailtransport-20.08.2.tar.xz";
+      sha256 = "8b12836b1ca0243819680cba73c809c491c5e7a8d1ea9d9dc23e7338aed69a0c";
+      name = "kmailtransport-20.08.2.tar.xz";
     };
   };
   kmbox = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmbox-20.08.1.tar.xz";
-      sha256 = "df77b2bf448d1ce21ff4a816f1164297519b48cd60200cea0edae6e72a81a19b";
-      name = "kmbox-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmbox-20.08.2.tar.xz";
+      sha256 = "4fa1ad98368130dcdc8ad71dba3084c489130b1e8fc4a2b119ffc6f56595ba73";
+      name = "kmbox-20.08.2.tar.xz";
     };
   };
   kmime = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmime-20.08.1.tar.xz";
-      sha256 = "cd0beaa46040d571b505d07853be76f099289e22d99ce4884695d4d645dfbe8c";
-      name = "kmime-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmime-20.08.2.tar.xz";
+      sha256 = "9f23e2814e62ae6c4a67fd3223315ef875776f9d098b4d11c7d06a726a725435";
+      name = "kmime-20.08.2.tar.xz";
     };
   };
   kmines = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmines-20.08.1.tar.xz";
-      sha256 = "eeb58941c94330f3ffdca60c0ca84d8ebcc9c6c355737217b521c54e50c650cd";
-      name = "kmines-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmines-20.08.2.tar.xz";
+      sha256 = "6b07a812497a665505b6b1e3a84ac0818f1a5e5757146cdbceec55e94bb41753";
+      name = "kmines-20.08.2.tar.xz";
     };
   };
   kmix = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmix-20.08.1.tar.xz";
-      sha256 = "012d14adbb200a7e66ddbc9ebc8e18c4e5082ae24dea6ab22284b6c730a1b472";
-      name = "kmix-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmix-20.08.2.tar.xz";
+      sha256 = "73453f02a72384382fd7449215189e22b5e1600e9ef0c9cc910f3fddd09beb85";
+      name = "kmix-20.08.2.tar.xz";
     };
   };
   kmousetool = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmousetool-20.08.1.tar.xz";
-      sha256 = "c1d769efdd318eb1e29905122c579c72a41da74b45a076b79cf177b1800e1464";
-      name = "kmousetool-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmousetool-20.08.2.tar.xz";
+      sha256 = "c1f70c172dc2ad7d937db5e6355522082f924ba45e7aac1bbb1c04e230f1d406";
+      name = "kmousetool-20.08.2.tar.xz";
     };
   };
   kmouth = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmouth-20.08.1.tar.xz";
-      sha256 = "d87fb47fa00c54f13cdaef33d15cc74f31d7009d4a8d988902b62c698d1e2c2c";
-      name = "kmouth-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmouth-20.08.2.tar.xz";
+      sha256 = "d206afecdbe5f063dfbf805956f475e95c7b0fd548fd5f1b4fd7376ea6747e96";
+      name = "kmouth-20.08.2.tar.xz";
     };
   };
   kmplot = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kmplot-20.08.1.tar.xz";
-      sha256 = "6d294a89f9e0fc42262ada6d71ba5abaeb756beb194e71f1852e18ae2b85456e";
-      name = "kmplot-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kmplot-20.08.2.tar.xz";
+      sha256 = "c3bc34a2d1bf4620745009b49b6541a16ac64eb3d1e6cf1ba936b14aa5d02e2b";
+      name = "kmplot-20.08.2.tar.xz";
     };
   };
   knavalbattle = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/knavalbattle-20.08.1.tar.xz";
-      sha256 = "e0cbffc5643aac302c53cfd957eefa7f89486fdd0d9c55b74f39d733a0ac3b65";
-      name = "knavalbattle-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/knavalbattle-20.08.2.tar.xz";
+      sha256 = "2cd91ee61193810eee62e47f38f590e81b03287083f31564e0ebfd893d339ac9";
+      name = "knavalbattle-20.08.2.tar.xz";
     };
   };
   knetwalk = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/knetwalk-20.08.1.tar.xz";
-      sha256 = "30cbf7bdf5f875ce172a382ef7da8e74803015017c6cd525cb6c288defac020d";
-      name = "knetwalk-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/knetwalk-20.08.2.tar.xz";
+      sha256 = "4a97f4b1af463e5e50698e8ac089cf6933fb66f25dd9b0fae3f1b1a51cbca3c0";
+      name = "knetwalk-20.08.2.tar.xz";
     };
   };
   knights = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/knights-20.08.1.tar.xz";
-      sha256 = "58518d8ecce5744fdf68c18e0803f48cb912fa29c5ea93ed6ccd2d4d320f722d";
-      name = "knights-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/knights-20.08.2.tar.xz";
+      sha256 = "b62dda6e8b5bb85cc814f7244e39806e38c266be1bf3090eb6de59c8141fc1d4";
+      name = "knights-20.08.2.tar.xz";
     };
   };
   knotes = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/knotes-20.08.1.tar.xz";
-      sha256 = "7d066a34d46684f258481466875d18f99a9000d66dec36f7dcab92790f6c57bb";
-      name = "knotes-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/knotes-20.08.2.tar.xz";
+      sha256 = "1e61f2c8b5fe9075f07be16543e3a7310bf533b6c2446f162f7196b41e3e6ecb";
+      name = "knotes-20.08.2.tar.xz";
     };
   };
   kolf = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kolf-20.08.1.tar.xz";
-      sha256 = "04d117895a6504d6138d1e3cd3157dd3318ba93eefd749182556344650f6a2f8";
-      name = "kolf-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kolf-20.08.2.tar.xz";
+      sha256 = "834c1c6cdc62e650c7b0d36db26387cc4ebe2bb4b2e8fa06c0bf461e3a1e8c64";
+      name = "kolf-20.08.2.tar.xz";
     };
   };
   kollision = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kollision-20.08.1.tar.xz";
-      sha256 = "858d69131951734181b449ce48498b3b843634eb8c069c932042b3c0f862f98c";
-      name = "kollision-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kollision-20.08.2.tar.xz";
+      sha256 = "9b6829f49d9baa89596ef8649996724db72c3c8eb793b9b6afc80dc0d07c0421";
+      name = "kollision-20.08.2.tar.xz";
     };
   };
   kolourpaint = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kolourpaint-20.08.1.tar.xz";
-      sha256 = "7de98e081f13fb9f8a73932d5e8ce6f1cfd73e345fa28d03f515cad69f1b8bae";
-      name = "kolourpaint-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kolourpaint-20.08.2.tar.xz";
+      sha256 = "fbcd875a4a407d9b1e5a637d4947bacfb50f39e10af3327f30fdbb953528aae0";
+      name = "kolourpaint-20.08.2.tar.xz";
     };
   };
   kompare = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kompare-20.08.1.tar.xz";
-      sha256 = "6e9109f1b24b3d79dec3d70c75357a67d16ab35081bcf7e4b842981b84796aa2";
-      name = "kompare-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kompare-20.08.2.tar.xz";
+      sha256 = "4e52cb2c9e35e90fe77bfb23bd10c1931c56b11e3fec06c215730d60c47e8550";
+      name = "kompare-20.08.2.tar.xz";
     };
   };
   konqueror = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/konqueror-20.08.1.tar.xz";
-      sha256 = "e3aac062d9e431e63a861ecf5a1d577b11a154faaed5bd95ef6b69b4fc8a34e9";
-      name = "konqueror-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/konqueror-20.08.2.tar.xz";
+      sha256 = "f0622aa67ad0028e28bd6129688aab8946fb49492f0b335f6624ab7d4ef239d7";
+      name = "konqueror-20.08.2.tar.xz";
     };
   };
   konquest = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/konquest-20.08.1.tar.xz";
-      sha256 = "cad87dd698bd1ebc0279216614f7fa7c3d3f36d545683a69f1ceafe9e279bbfe";
-      name = "konquest-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/konquest-20.08.2.tar.xz";
+      sha256 = "cf97a6961b15b39f5bcdf541e52c137f1d67d0fa5ee259922b4e762edc4491eb";
+      name = "konquest-20.08.2.tar.xz";
     };
   };
   konsole = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/konsole-20.08.1.tar.xz";
-      sha256 = "bdd82f9104b2f76c53bdbdef613391719b70719a132d24f12e5f620e1c9313d1";
-      name = "konsole-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/konsole-20.08.2.tar.xz";
+      sha256 = "af08ac7666f1ba7c407205f32aaaf015329621247502e80d8df4abe103148951";
+      name = "konsole-20.08.2.tar.xz";
     };
   };
   kontact = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kontact-20.08.1.tar.xz";
-      sha256 = "36c33eb5685c22f94257e86ff760d1aa225ae6e2d69402a2b653c54627c7cbde";
-      name = "kontact-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kontact-20.08.2.tar.xz";
+      sha256 = "232d9880df74ce0c7697f08b53ef9512ac9c11c3b04142ba7ba4b95091cb5396";
+      name = "kontact-20.08.2.tar.xz";
     };
   };
   kontactinterface = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kontactinterface-20.08.1.tar.xz";
-      sha256 = "8272d0c17423a15e56e9e6d3979ee3017fd02ed996b8b6902c47312276ffeb51";
-      name = "kontactinterface-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kontactinterface-20.08.2.tar.xz";
+      sha256 = "72d53dbea9db0b1f5654e13c18b4da3d256c6b9d08dfe4581cdf73e3552d2a07";
+      name = "kontactinterface-20.08.2.tar.xz";
     };
   };
   kopete = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kopete-20.08.1.tar.xz";
-      sha256 = "9846baae28d723963927d231716e2a8bc19795bac920958b688b48394ef5bc05";
-      name = "kopete-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kopete-20.08.2.tar.xz";
+      sha256 = "05f5d6236d4c96b9ce7ba5f24f4e06d7263a78cac27368a7e6b3e5075d42fbb1";
+      name = "kopete-20.08.2.tar.xz";
     };
   };
   korganizer = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/korganizer-20.08.1.tar.xz";
-      sha256 = "e693d895b36575f2a73c36ceaafadf81465bbf9b03c74da27f5273a2e7e3670e";
-      name = "korganizer-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/korganizer-20.08.2.tar.xz";
+      sha256 = "4f719ec12c52fc313997a187439dc6888fd030a4a1b2357db000abc0a19527b2";
+      name = "korganizer-20.08.2.tar.xz";
     };
   };
   kpat = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kpat-20.08.1.tar.xz";
-      sha256 = "2c23ee028c03c5c210b110a2ad253aa7d91c5a0abcb101eb2b3f4c640092463c";
-      name = "kpat-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kpat-20.08.2.tar.xz";
+      sha256 = "e4aaed4e876212a926a05d252dab9d01f240d829e383c6072e168a4f78e6d446";
+      name = "kpat-20.08.2.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kpimtextedit-20.08.1.tar.xz";
-      sha256 = "2664e6cbe520fa345e18db071dd5b8a5b4cf9b0fc7317eb04849005228666189";
-      name = "kpimtextedit-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kpimtextedit-20.08.2.tar.xz";
+      sha256 = "2dfbcdd53669c812234346b4d31b61af9c510bb4cb0b9912decea8d3c4d406a6";
+      name = "kpimtextedit-20.08.2.tar.xz";
     };
   };
   kpkpass = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kpkpass-20.08.1.tar.xz";
-      sha256 = "76012e5bdd4cc434313a0f311acec8f7c798542008cd8efa71fcdf04fb77e55b";
-      name = "kpkpass-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kpkpass-20.08.2.tar.xz";
+      sha256 = "ed699c75128ef299f06d699c80c69ac9529fa044db6f18a39d54a5e70d85108c";
+      name = "kpkpass-20.08.2.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kqtquickcharts-20.08.1.tar.xz";
-      sha256 = "ea931bfefcc04bee03bff2498b92ca1a390967bbc5366c739d1a7cde6bb75820";
-      name = "kqtquickcharts-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kqtquickcharts-20.08.2.tar.xz";
+      sha256 = "2ba593a65c143cb56a3030f7ee0cced2df7c7e9431cebf1ae93be51c68b4c3b4";
+      name = "kqtquickcharts-20.08.2.tar.xz";
     };
   };
   krdc = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/krdc-20.08.1.tar.xz";
-      sha256 = "7b1fa57be31a3534099e7f203ef9afde23c86c4bbed1072a9d1164a3cf5e1e20";
-      name = "krdc-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/krdc-20.08.2.tar.xz";
+      sha256 = "52ddd68bdb1b356be341cf3bc5405cb965f4e4f3da8bf4b28bfb62c7db21ac5f";
+      name = "krdc-20.08.2.tar.xz";
     };
   };
   kreversi = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kreversi-20.08.1.tar.xz";
-      sha256 = "5da68ddd37f5dbd4e1c94d1641c69f0e9b4e99eff3cdafcdcbac1139ca517315";
-      name = "kreversi-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kreversi-20.08.2.tar.xz";
+      sha256 = "22824dca9c8f07145a6fd9b7386867d8a8efff0fda6752f377230381a1cc71c2";
+      name = "kreversi-20.08.2.tar.xz";
     };
   };
   krfb = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/krfb-20.08.1.tar.xz";
-      sha256 = "a80b9bab47f2a7299e33b0e2a10b117605ec1cc572ca72e914c7f01dde383eda";
-      name = "krfb-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/krfb-20.08.2.tar.xz";
+      sha256 = "5e90fb4f3bcf2c48b15ec33634d61464323ab5ce1c156a499f089d862dd041d4";
+      name = "krfb-20.08.2.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kross-interpreters-20.08.1.tar.xz";
-      sha256 = "1fb7d75d83e63d1a7147468dd25eeb6aeb06b4679f126c658a8b40ef257f9a4e";
-      name = "kross-interpreters-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kross-interpreters-20.08.2.tar.xz";
+      sha256 = "82da0302d2d292e86fa924c8bd1d4effb21f763c42c57affaddeff4777c43951";
+      name = "kross-interpreters-20.08.2.tar.xz";
     };
   };
   kruler = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kruler-20.08.1.tar.xz";
-      sha256 = "a9a1f3bd7b02416a393826f7bb810211ef2e14a3628706de735cb88e791d72d1";
-      name = "kruler-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kruler-20.08.2.tar.xz";
+      sha256 = "ede45d9cdf1b514fb20ed3a97877689ec75904438b94735706eb638ba01ca778";
+      name = "kruler-20.08.2.tar.xz";
     };
   };
   kshisen = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kshisen-20.08.1.tar.xz";
-      sha256 = "d53af415ed2f4d202f5a6f965408e39062e39f43acf83b9550b6cf2ecc1f7641";
-      name = "kshisen-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kshisen-20.08.2.tar.xz";
+      sha256 = "d11030b101a409324661adf664d4298f34cc320abff80dba72d112cc3ae2d25d";
+      name = "kshisen-20.08.2.tar.xz";
     };
   };
   ksirk = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksirk-20.08.1.tar.xz";
-      sha256 = "763d3a8f518365391d2a04943f6efa9c73c388b7701deff300e9e42e4efe848f";
-      name = "ksirk-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksirk-20.08.2.tar.xz";
+      sha256 = "b7766f0976b3cc112d4c599d91c07d321829c9b1e8ef34d3d21ec4964026854a";
+      name = "ksirk-20.08.2.tar.xz";
     };
   };
   ksmtp = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksmtp-20.08.1.tar.xz";
-      sha256 = "608d395cd1a046810ebd00f990d6f7c63d66677e7293ef06948ab9d336d2f08f";
-      name = "ksmtp-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksmtp-20.08.2.tar.xz";
+      sha256 = "5f51e0c025b192719709ae763feeac94df893007b62b5a69b7b95ae9f2fdd8ee";
+      name = "ksmtp-20.08.2.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksnakeduel-20.08.1.tar.xz";
-      sha256 = "25bb5cfe2ed480b8ee31d9fe2e62272d77e7b8667748eb4f2c855901f718784f";
-      name = "ksnakeduel-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksnakeduel-20.08.2.tar.xz";
+      sha256 = "b6f0f51f8fad795cd134f9426b1f1ba8ccceb72e304e8ba55e60af471ad282cc";
+      name = "ksnakeduel-20.08.2.tar.xz";
     };
   };
   kspaceduel = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kspaceduel-20.08.1.tar.xz";
-      sha256 = "382def18d1ce6a4333fb47bcd87aed6837382a2b0da2cb8b835d0b34eaed9e38";
-      name = "kspaceduel-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kspaceduel-20.08.2.tar.xz";
+      sha256 = "62b9526c031662c049aa90b06ed3e5e2ce8ae774f271e1f29430f23c1f6cd787";
+      name = "kspaceduel-20.08.2.tar.xz";
     };
   };
   ksquares = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksquares-20.08.1.tar.xz";
-      sha256 = "163c5c070643e31594ada4e812433eb5f615ef425dddafd515e6c445d821f319";
-      name = "ksquares-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksquares-20.08.2.tar.xz";
+      sha256 = "e1f9fdfa9a4a8348a65e66d48b7389784a1db6c8799cea453d6da3a2a57aca59";
+      name = "ksquares-20.08.2.tar.xz";
     };
   };
   ksudoku = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksudoku-20.08.1.tar.xz";
-      sha256 = "e53b694b340f812cd3bdf5126a32a1e71efe0785897c5d15f9e28c68fd794840";
-      name = "ksudoku-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksudoku-20.08.2.tar.xz";
+      sha256 = "6fed393f734eb27d6c36ad7516bf29ff648d319f08d9f8bdc17a8030842d8e33";
+      name = "ksudoku-20.08.2.tar.xz";
     };
   };
   ksystemlog = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ksystemlog-20.08.1.tar.xz";
-      sha256 = "e0e8bc1cf8ee229206c8a65e30979ba8b72426c8dc2f737f6fecb0dfb36ed21a";
-      name = "ksystemlog-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ksystemlog-20.08.2.tar.xz";
+      sha256 = "63c6a520b63f148de2e3996250a2fef22e1a3ce18e744a699ae21de96a2c4e53";
+      name = "ksystemlog-20.08.2.tar.xz";
     };
   };
   kteatime = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kteatime-20.08.1.tar.xz";
-      sha256 = "23cc14f587e4ae4e3b56f1fb7a2093301df740328e35b25d7fca55d35f012ce5";
-      name = "kteatime-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kteatime-20.08.2.tar.xz";
+      sha256 = "d8e69fdb124e8689c72e4b9fe39226cc49b1ca990478fbb68e02b37f0cd861ac";
+      name = "kteatime-20.08.2.tar.xz";
     };
   };
   ktimer = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktimer-20.08.1.tar.xz";
-      sha256 = "9c7062f9ee64ff49a7c7773fe41cee0899e30f1f47368af73da067e51db6714b";
-      name = "ktimer-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktimer-20.08.2.tar.xz";
+      sha256 = "69293b7296643c6543d0646d14f9c75479f29f129924258957a407b77539a4c2";
+      name = "ktimer-20.08.2.tar.xz";
     };
   };
   ktnef = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktnef-20.08.1.tar.xz";
-      sha256 = "433b232a0c835e7f27c06e6d19856e4f8690c3e3b5c5d63f85172897b2448c81";
-      name = "ktnef-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktnef-20.08.2.tar.xz";
+      sha256 = "ab73736e386c2b52a14fb56f1184479ed1c83c0571e9e8518d2b94b1dcd2e47d";
+      name = "ktnef-20.08.2.tar.xz";
     };
   };
   ktouch = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktouch-20.08.1.tar.xz";
-      sha256 = "e098ebbccca743f678103a9adf54fc388fa4379cc6f667e48259d0b50f56b5fb";
-      name = "ktouch-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktouch-20.08.2.tar.xz";
+      sha256 = "1b073a92343c9a2c772cfaac4e9fa7b6e85750586e3a57da413e33cdba34b5f4";
+      name = "ktouch-20.08.2.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-accounts-kcm-20.08.1.tar.xz";
-      sha256 = "b71f2f654c3cf48e4b4b037a0ae8f6fef5bac9c3483458c0eadf7b3253577504";
-      name = "ktp-accounts-kcm-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-accounts-kcm-20.08.2.tar.xz";
+      sha256 = "df709ee612ff4c71a43197762b8a9d296b5a43f6e0afe4d9c8d0bd88eef81465";
+      name = "ktp-accounts-kcm-20.08.2.tar.xz";
     };
   };
   ktp-approver = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-approver-20.08.1.tar.xz";
-      sha256 = "51296f4d84585ba63d4c72cdbdee6e2b436a1aff8ce6b475a8c9a81766856b39";
-      name = "ktp-approver-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-approver-20.08.2.tar.xz";
+      sha256 = "054db02db679d0a4600632700cdd57cae539159a0a8f01f479ea337d33d8a6bd";
+      name = "ktp-approver-20.08.2.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-auth-handler-20.08.1.tar.xz";
-      sha256 = "6c1c006a3381caeebdfc37886b91b598153f3778567303d8a031e84599c9d582";
-      name = "ktp-auth-handler-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-auth-handler-20.08.2.tar.xz";
+      sha256 = "a61557efa800d42fd8ed14efdb09d43310212976d737a4fd5272f502bacbc371";
+      name = "ktp-auth-handler-20.08.2.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-call-ui-20.08.1.tar.xz";
-      sha256 = "feb783be10b0792cb0c59456a00607b2d595e8bef90f0b4ec79dd070596d413c";
-      name = "ktp-call-ui-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-call-ui-20.08.2.tar.xz";
+      sha256 = "ecd38d8b9f24cf620b8c9c1935328af3142199c6aa87e69c734e43096e492ac5";
+      name = "ktp-call-ui-20.08.2.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-common-internals-20.08.1.tar.xz";
-      sha256 = "5750bde4950fbe26f06a306aa642c9c501d4f0e1b41b57234d9e36b189a91d1b";
-      name = "ktp-common-internals-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-common-internals-20.08.2.tar.xz";
+      sha256 = "807fcd6f9c415a0799057435f997e143e9584a94577f9afaa7fcc6a4197e7cb0";
+      name = "ktp-common-internals-20.08.2.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-contact-list-20.08.1.tar.xz";
-      sha256 = "809db5ff05c1ec632109be408cef987532193b1b0bea69d6a9286c12ccfe19a1";
-      name = "ktp-contact-list-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-contact-list-20.08.2.tar.xz";
+      sha256 = "214d73532dc855a8a4b68730adf5cbd046aae89f2ee2ad5d9a4c25b4eff6acb0";
+      name = "ktp-contact-list-20.08.2.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-contact-runner-20.08.1.tar.xz";
-      sha256 = "a9e761fd35545cfffade088e33f4358e2743416f61e9ba490f21f3b04193158f";
-      name = "ktp-contact-runner-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-contact-runner-20.08.2.tar.xz";
+      sha256 = "8e40e4ab7ce2c1c382b109a15f88f5e1c7d147c76ed36ca05ef6d9f3f58d3d45";
+      name = "ktp-contact-runner-20.08.2.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-desktop-applets-20.08.1.tar.xz";
-      sha256 = "d6ffd4b29c4fb977937cb47d55d023012be1a9b3602dd1f1628eba7d8c9167cd";
-      name = "ktp-desktop-applets-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-desktop-applets-20.08.2.tar.xz";
+      sha256 = "b0884360be80f89dee3852b023055220e3cdab2f422cc3812eda31169fba6298";
+      name = "ktp-desktop-applets-20.08.2.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-filetransfer-handler-20.08.1.tar.xz";
-      sha256 = "35495c1d18a7b65496fcf17cade4a81e4795b1603c380c036dda0a7626f66312";
-      name = "ktp-filetransfer-handler-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-filetransfer-handler-20.08.2.tar.xz";
+      sha256 = "c2ec5fd2a5746dd8ce1371c503c51feee206d8dfe7ca8cdaa71b8e925636a97c";
+      name = "ktp-filetransfer-handler-20.08.2.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-kded-module-20.08.1.tar.xz";
-      sha256 = "247e4047e3955e21066ec461a5374d1b3d925bb92b42adc46d3711e542ad7e04";
-      name = "ktp-kded-module-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-kded-module-20.08.2.tar.xz";
+      sha256 = "307285b2d4e04c244691a6f2a285aec8ada26e0b01eb1fdbf2bc1da57b05828a";
+      name = "ktp-kded-module-20.08.2.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-send-file-20.08.1.tar.xz";
-      sha256 = "b3786c6e6f09ea086c2d94d2a6dd653e45bab8f984c6287c39f5e0134d6ffee1";
-      name = "ktp-send-file-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-send-file-20.08.2.tar.xz";
+      sha256 = "6c3fb09112d439ce2f0db3acdbc766e8a914d4dc7cbb6ab709922f8e95f2f0e1";
+      name = "ktp-send-file-20.08.2.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktp-text-ui-20.08.1.tar.xz";
-      sha256 = "5cdb88f55b6ca1a1053b8d5b2604eff681c5f3558f0c8037034c264793de8c02";
-      name = "ktp-text-ui-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktp-text-ui-20.08.2.tar.xz";
+      sha256 = "0f10612e08bc1ee04fb0a538337d760d7b79b5dac37bb58275998d16dbb5415c";
+      name = "ktp-text-ui-20.08.2.tar.xz";
     };
   };
   ktuberling = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/ktuberling-20.08.1.tar.xz";
-      sha256 = "62d3d8db7b1db7f9d58df44acf61342ce42fb081038fc48f8f6e45d9167ceaa6";
-      name = "ktuberling-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/ktuberling-20.08.2.tar.xz";
+      sha256 = "f9e4a0de3b92d015f8e7b862badf4bbf11b3ce2727aa607384a009247e7b7fad";
+      name = "ktuberling-20.08.2.tar.xz";
     };
   };
   kturtle = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kturtle-20.08.1.tar.xz";
-      sha256 = "c261fdf44b36aaa278b4b9752a0d989facec3768853606e5c0b8a86d9d01edb3";
-      name = "kturtle-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kturtle-20.08.2.tar.xz";
+      sha256 = "ca9bf47b2ec34744492f218c922b10d613b19fbbd2c75b6ddba157eef21337c7";
+      name = "kturtle-20.08.2.tar.xz";
     };
   };
   kubrick = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kubrick-20.08.1.tar.xz";
-      sha256 = "c0c017f6913f94224e18df7d96ba9ad92f51522a331b77f5722f2d2c953c342c";
-      name = "kubrick-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kubrick-20.08.2.tar.xz";
+      sha256 = "02fed26a7246feffd668fbda939893295557c0571da64fdf195db93474653224";
+      name = "kubrick-20.08.2.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kwalletmanager-20.08.1.tar.xz";
-      sha256 = "b5a134db6b6bceb802c6c45915636bcd95fea5b6846cfd022917405f48cc92c5";
-      name = "kwalletmanager-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kwalletmanager-20.08.2.tar.xz";
+      sha256 = "7950e250c5351a9b8e3b36165fa2003baa044bb2d3553a32360000a322bddad8";
+      name = "kwalletmanager-20.08.2.tar.xz";
     };
   };
   kwave = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kwave-20.08.1.tar.xz";
-      sha256 = "3791f9401271c23d3ababd14e4c1e6acfe58df2100331e31ba61453feaf9fa32";
-      name = "kwave-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kwave-20.08.2.tar.xz";
+      sha256 = "6e15a67022ef96f07b9825139cc7aaacbc6f60729570c31ce6cb25184602b434";
+      name = "kwave-20.08.2.tar.xz";
     };
   };
   kwordquiz = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/kwordquiz-20.08.1.tar.xz";
-      sha256 = "77d2d30abcb37ee6a8e0b121ed1969f2fa61eb32814f49a0186043a4e8f1a71c";
-      name = "kwordquiz-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/kwordquiz-20.08.2.tar.xz";
+      sha256 = "57aa012f3aad128579f067668db1344306e2e23d6a89b47d413d6eee0da0e238";
+      name = "kwordquiz-20.08.2.tar.xz";
     };
   };
   libgravatar = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libgravatar-20.08.1.tar.xz";
-      sha256 = "dfe95055869944b79b1f4120f013b547225b02b69c7e410fd09d52469a892263";
-      name = "libgravatar-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libgravatar-20.08.2.tar.xz";
+      sha256 = "4c0a2eb073ef42a26813b93bd76aaa9e26a040a966329e6e3cf371d7de1e55f7";
+      name = "libgravatar-20.08.2.tar.xz";
     };
   };
   libkcddb = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkcddb-20.08.1.tar.xz";
-      sha256 = "1519c9248b46d95d8761a8ed22b0805964a5fef5aa665710b08851c753f70590";
-      name = "libkcddb-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkcddb-20.08.2.tar.xz";
+      sha256 = "545cf54ac454845c524ba7cd7ec289ac952fa1ce2bbae01411ba71c66a5ed08a";
+      name = "libkcddb-20.08.2.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkcompactdisc-20.08.1.tar.xz";
-      sha256 = "f43b8129a0083686dbc939387931867d9d65e14936f2a86be0a7286e01cf1974";
-      name = "libkcompactdisc-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkcompactdisc-20.08.2.tar.xz";
+      sha256 = "37534f67af69775d6f786917920d2810a5d20f28df57e1a17aee9a7b30bbe302";
+      name = "libkcompactdisc-20.08.2.tar.xz";
     };
   };
   libkdcraw = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkdcraw-20.08.1.tar.xz";
-      sha256 = "3431810972d886635ba6249ac86a9442a9c3a3333eb0b27533fc459e757e9eb1";
-      name = "libkdcraw-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkdcraw-20.08.2.tar.xz";
+      sha256 = "6fbf1a5ca5a439fabb01648cde4b57e1f3de2372b7f3b56ccae03f653490f1b2";
+      name = "libkdcraw-20.08.2.tar.xz";
     };
   };
   libkdegames = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkdegames-20.08.1.tar.xz";
-      sha256 = "6ab0b143dcba2d935dd0182c9154657ebbfb205c28bc86e2e13875b58e23737d";
-      name = "libkdegames-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkdegames-20.08.2.tar.xz";
+      sha256 = "d9f0ab87dc4671a55ad8d2b7d3a54cbc444201c11ebae436e0107fe7067fb983";
+      name = "libkdegames-20.08.2.tar.xz";
     };
   };
   libkdepim = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkdepim-20.08.1.tar.xz";
-      sha256 = "a2fb769239283e7f536d4779089ad8664d1498cf7520f057589bf0285630fb4b";
-      name = "libkdepim-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkdepim-20.08.2.tar.xz";
+      sha256 = "3558c9af95c22bb4ce0ceeec483fada9e8e9f27de4ac34ffe44a4eb3b6d21101";
+      name = "libkdepim-20.08.2.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkeduvocdocument-20.08.1.tar.xz";
-      sha256 = "ecd158beb7fcc1a5d540d956669c6fdce6172f4b282755170d2791076d75ad84";
-      name = "libkeduvocdocument-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkeduvocdocument-20.08.2.tar.xz";
+      sha256 = "ef8e0b359e3cf1b3303da3795add1ced405d230f51895abe10d5a7989be03923";
+      name = "libkeduvocdocument-20.08.2.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkexiv2-20.08.1.tar.xz";
-      sha256 = "67310ae90d89f26d2ae98ede8fa973e27ea1ce3d15c389954d391cd058543979";
-      name = "libkexiv2-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkexiv2-20.08.2.tar.xz";
+      sha256 = "793c4d11bb1b60beca7b25a2427650b3f358364c55be022dfd4a7ccfd889578d";
+      name = "libkexiv2-20.08.2.tar.xz";
     };
   };
   libkgapi = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkgapi-20.08.1.tar.xz";
-      sha256 = "dfa9003556a01ef19eda186973f87356d32ea8f82f8d653803b2cc935f077127";
-      name = "libkgapi-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkgapi-20.08.2.tar.xz";
+      sha256 = "f3fb015e8b8ac92c138e8a59e8e8b9333500e0ea314180cc1ad14e31248312df";
+      name = "libkgapi-20.08.2.tar.xz";
     };
   };
   libkgeomap = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkgeomap-20.08.1.tar.xz";
-      sha256 = "a210945b6807efca3390173233269aa31f27a23b5f36670b88f66b3b28df846f";
-      name = "libkgeomap-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkgeomap-20.08.2.tar.xz";
+      sha256 = "7149095aa0df4e3a184bb2a6fb8322e27e3a34eb3bc40cf370a09b21fb2a6ea0";
+      name = "libkgeomap-20.08.2.tar.xz";
     };
   };
   libkipi = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkipi-20.08.1.tar.xz";
-      sha256 = "4722ab563c1350042920d1937b84fdd38b5779449a2d9b689328cd82241cb5d2";
-      name = "libkipi-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkipi-20.08.2.tar.xz";
+      sha256 = "87ffa30b23779313a94953afe57d1b19515c3a2f311a2dea6449c9d96b09e5b1";
+      name = "libkipi-20.08.2.tar.xz";
     };
   };
   libkleo = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkleo-20.08.1.tar.xz";
-      sha256 = "78c1dc2e4d7177aaf37cb1c706d9c21b08fac7d130ac1da3d3f2a6f083117ffb";
-      name = "libkleo-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkleo-20.08.2.tar.xz";
+      sha256 = "34537b35e22cef85650ae6f9bf197518bb5a59e9614d6d86ba86f085fddd97c4";
+      name = "libkleo-20.08.2.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkmahjongg-20.08.1.tar.xz";
-      sha256 = "5a8674921e39b38655d1f95340831b1bc746047cbad8501706436f5dacf47fc2";
-      name = "libkmahjongg-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkmahjongg-20.08.2.tar.xz";
+      sha256 = "032ac6d9e96cd9156f5153c01f881d0e442fda9de90398df320846095ba2c40a";
+      name = "libkmahjongg-20.08.2.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libkomparediff2-20.08.1.tar.xz";
-      sha256 = "9d109dfea1433602cdabc89ffa5f522147befc9b1d6d9760549aba7db5dbd399";
-      name = "libkomparediff2-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libkomparediff2-20.08.2.tar.xz";
+      sha256 = "91b0b72d5c4e2ddd863636cca299660bfbb5b7a55773cbc51000fe9c1ca91a98";
+      name = "libkomparediff2-20.08.2.tar.xz";
     };
   };
   libksane = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libksane-20.08.1.tar.xz";
-      sha256 = "0d8717ad004a2480aea232d9a2317b4d1cc4678d53f0176bdaeb411eedd19dbe";
-      name = "libksane-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libksane-20.08.2.tar.xz";
+      sha256 = "21bb577d78e020281dfc6c993ab7fe286d648e72c851e45463a32969fbb35aa6";
+      name = "libksane-20.08.2.tar.xz";
     };
   };
   libksieve = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/libksieve-20.08.1.tar.xz";
-      sha256 = "a1defe888c6c5a3c16ef6fad39d9eb94bc784031079763f004048951820acec0";
-      name = "libksieve-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/libksieve-20.08.2.tar.xz";
+      sha256 = "589e4dc27d1d91d8c16879fa99aab45f3847a74e3e9357e3e037503e5515ee2e";
+      name = "libksieve-20.08.2.tar.xz";
     };
   };
   lokalize = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/lokalize-20.08.1.tar.xz";
-      sha256 = "a4a3e5703d39ae8fe12d2ff832e99b3339ba1c8ec8d2439abeb348e687f1eae9";
-      name = "lokalize-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/lokalize-20.08.2.tar.xz";
+      sha256 = "c11616bc02763fb1f3b1abf0b2ba70d0c6c550435c94ff25c5096f9a90375e23";
+      name = "lokalize-20.08.2.tar.xz";
     };
   };
   lskat = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/lskat-20.08.1.tar.xz";
-      sha256 = "319d611468b969b3bb62731a0aa04c5672bb689c41adf5545dfa8b9742668775";
-      name = "lskat-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/lskat-20.08.2.tar.xz";
+      sha256 = "78f152f7af46345f65c3800f9c591fb204e917595c1f803c9c15148ef39c42b8";
+      name = "lskat-20.08.2.tar.xz";
     };
   };
   mailcommon = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/mailcommon-20.08.1.tar.xz";
-      sha256 = "d4ee996f74a749ad626ca5029821546da82dbfc1c81864ff39b5f51d6dcf1d88";
-      name = "mailcommon-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/mailcommon-20.08.2.tar.xz";
+      sha256 = "a4170ab9ff7680fb26c61474f42d5424716f4e91c1a5e9275cc1222491c9564d";
+      name = "mailcommon-20.08.2.tar.xz";
     };
   };
   mailimporter = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/mailimporter-20.08.1.tar.xz";
-      sha256 = "dcf2b94d4f66be2b339b31dfebef7af373e0cf59f09e4cfb664eb828e1d4f73f";
-      name = "mailimporter-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/mailimporter-20.08.2.tar.xz";
+      sha256 = "a255b60378c1cf77e517919d072cb44bd8c25e8ed8f07429763bb7915b3cc711";
+      name = "mailimporter-20.08.2.tar.xz";
     };
   };
   marble = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/marble-20.08.1.tar.xz";
-      sha256 = "96b019a41ae4e0aaab59950b6be040bd2145f130190b8c0dea436c791e3192ed";
-      name = "marble-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/marble-20.08.2.tar.xz";
+      sha256 = "f44ac10de33dc31ce1cb99635131fe2c7bf3f60f09204b2061f81042a725475c";
+      name = "marble-20.08.2.tar.xz";
     };
   };
   mbox-importer = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/mbox-importer-20.08.1.tar.xz";
-      sha256 = "262c8805539b7c766099c6287d1dbf88161afe6d32c1c6821ebe63cff4fe3b71";
-      name = "mbox-importer-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/mbox-importer-20.08.2.tar.xz";
+      sha256 = "3b3bee33683c534974255616f3b2f3baebf85363b2c24bbee9cc195ddf35ca9a";
+      name = "mbox-importer-20.08.2.tar.xz";
     };
   };
   messagelib = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/messagelib-20.08.1.tar.xz";
-      sha256 = "fc41124e905456a3c5227ca6154dc3e77620e307458fbb19f5421cbfb04523b3";
-      name = "messagelib-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/messagelib-20.08.2.tar.xz";
+      sha256 = "5cf3a3f2b6473e60a7c2af10aa4eb1cfba25a4786132ee87b657b0dafb9f5028";
+      name = "messagelib-20.08.2.tar.xz";
     };
   };
   minuet = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/minuet-20.08.1.tar.xz";
-      sha256 = "a640025550337f415f7bfaaad7f6ef7de667dd054131be2c313d894c3f6703ea";
-      name = "minuet-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/minuet-20.08.2.tar.xz";
+      sha256 = "24383168e2a0b7b319ecb37e2b1f3b039ad790a7e0f49385657f049565f1ef84";
+      name = "minuet-20.08.2.tar.xz";
     };
   };
   okular = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/okular-20.08.1.tar.xz";
-      sha256 = "77b5d8e410a2a008ea63f60a561f99053ec07d92da6ee3afaeefd977aadebd83";
-      name = "okular-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/okular-20.08.2.tar.xz";
+      sha256 = "6f1885ed8050a55bb2cbf05089b452f555852e003ec7fe89fe472c0dbc92e65b";
+      name = "okular-20.08.2.tar.xz";
     };
   };
   palapeli = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/palapeli-20.08.1.tar.xz";
-      sha256 = "31b847caa89b998dfa580553d96c656b05f2d85fdd88f0ba71e953762cefac90";
-      name = "palapeli-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/palapeli-20.08.2.tar.xz";
+      sha256 = "a31b0db2f3e77eac8f527d26f8ed0400fe5bcdb3a3970b925f14886bd1bcd63e";
+      name = "palapeli-20.08.2.tar.xz";
     };
   };
   parley = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/parley-20.08.1.tar.xz";
-      sha256 = "9617a90c2d4f9ab5d928febc6bcd10c9023dcc10e9f1202bfb97b77019948f0c";
-      name = "parley-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/parley-20.08.2.tar.xz";
+      sha256 = "cf2f00925730d8baec66d422f058e4b3e979678e79c57898ceffd8650720bda6";
+      name = "parley-20.08.2.tar.xz";
     };
   };
   picmi = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/picmi-20.08.1.tar.xz";
-      sha256 = "027e37a2c9dcf828684a0f8ffdcfc6451a2bd62976c10d990e471fa0f5ba97c3";
-      name = "picmi-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/picmi-20.08.2.tar.xz";
+      sha256 = "35f2bf3d8375618f97aee01c8f2421521b2cd5c11d7b14fc9a376026d74c82a5";
+      name = "picmi-20.08.2.tar.xz";
     };
   };
   pimcommon = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/pimcommon-20.08.1.tar.xz";
-      sha256 = "58a33349bf932076f6be343ae64e23f146e2a6a96e3af8ce68dbd752f2c80dd9";
-      name = "pimcommon-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/pimcommon-20.08.2.tar.xz";
+      sha256 = "cba9e66153d36debe3f046363af7ff40a4ba263f33bfe20c7ec10b5bf9183deb";
+      name = "pimcommon-20.08.2.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/pim-data-exporter-20.08.1.tar.xz";
-      sha256 = "54092763e4b951f4e90a217c876107900e0706da68ca5517184e5da258ae95ec";
-      name = "pim-data-exporter-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/pim-data-exporter-20.08.2.tar.xz";
+      sha256 = "54b09a3f763004c805cc0dce8ab2e665116b7ef29419f22ad413aa250dcb4ac0";
+      name = "pim-data-exporter-20.08.2.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/pim-sieve-editor-20.08.1.tar.xz";
-      sha256 = "f788038796f226bfe426835fc6f186e23f2c7f9fda8316dfa6af307d6936d4ad";
-      name = "pim-sieve-editor-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/pim-sieve-editor-20.08.2.tar.xz";
+      sha256 = "e8c590a0fddc5292172115b11fb75c5f847347079100617dbf321875642d7098";
+      name = "pim-sieve-editor-20.08.2.tar.xz";
     };
   };
   poxml = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/poxml-20.08.1.tar.xz";
-      sha256 = "9f4bcafc664532706fe634ce8b0f410619d5e3c285526a7b61969155d75bbad2";
-      name = "poxml-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/poxml-20.08.2.tar.xz";
+      sha256 = "67d260349489e92ebce20253f9a3ccde5bb75eb13eb4d1a08a86c18c82e4a2a9";
+      name = "poxml-20.08.2.tar.xz";
     };
   };
   print-manager = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/print-manager-20.08.1.tar.xz";
-      sha256 = "52d41ca3ae69e6e8e1eb4ddf1d516868dc436e81779053efdea5e3819545ca5b";
-      name = "print-manager-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/print-manager-20.08.2.tar.xz";
+      sha256 = "de21f8c428198b906f4ae438d6ced8d707b12c15578409c2aa2f7b2f73feb990";
+      name = "print-manager-20.08.2.tar.xz";
     };
   };
   rocs = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/rocs-20.08.1.tar.xz";
-      sha256 = "3c5f764f06f6f5b7c68523be4fdd37e75b2249e0b15001bc39e55051d9e271ef";
-      name = "rocs-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/rocs-20.08.2.tar.xz";
+      sha256 = "2d8efd62b89dd36033bb3d818c82fee67e6efa2d2bb98dda0d4eab13baaee485";
+      name = "rocs-20.08.2.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/signon-kwallet-extension-20.08.1.tar.xz";
-      sha256 = "10a0ea806dc63cbf6c6d4794fe596c68355bccb3e08370d70ce7a8e95af448a5";
-      name = "signon-kwallet-extension-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/signon-kwallet-extension-20.08.2.tar.xz";
+      sha256 = "a271f4d09511171dcf1ebcdaf0b7205f9ee6a75b20ef0801f36d136f7b4a70dd";
+      name = "signon-kwallet-extension-20.08.2.tar.xz";
     };
   };
   spectacle = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/spectacle-20.08.1.tar.xz";
-      sha256 = "4a01b5ef41901ff2e83bb517c2e96a978188b98cb62243eb541a317f57a2bd69";
-      name = "spectacle-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/spectacle-20.08.2.tar.xz";
+      sha256 = "9a467ea3b05981d588d39573cca375636b825ad8cab8a36ce48dbbc12425ab0d";
+      name = "spectacle-20.08.2.tar.xz";
     };
   };
   step = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/step-20.08.1.tar.xz";
-      sha256 = "6e04930963676b1bfa55ee095914c7491a61bf3963c45ed4157f868175ee6605";
-      name = "step-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/step-20.08.2.tar.xz";
+      sha256 = "a52e4b6f281ba1a7afd4ab3ac7307080464147c4052ee222399135fe61ac7958";
+      name = "step-20.08.2.tar.xz";
     };
   };
   svgpart = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/svgpart-20.08.1.tar.xz";
-      sha256 = "206c3741464f959ffbaea09bc918fc3e88f32fcf12928cd8c399ab44d4b1f228";
-      name = "svgpart-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/svgpart-20.08.2.tar.xz";
+      sha256 = "3a46b5bd9acf5372f73b602d155517f0dff47f3337bd8a46a580aae7480dd771";
+      name = "svgpart-20.08.2.tar.xz";
     };
   };
   sweeper = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/sweeper-20.08.1.tar.xz";
-      sha256 = "722c25de8cc74fe7e8310d47a7e794f32e935331f89d4f5249fd045a83ce0431";
-      name = "sweeper-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/sweeper-20.08.2.tar.xz";
+      sha256 = "0c255ef15c1e32eb561b26f5b73a6c154730be583efbc5ee713aaed17de14091";
+      name = "sweeper-20.08.2.tar.xz";
     };
   };
   umbrello = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/umbrello-20.08.1.tar.xz";
-      sha256 = "d980d67f8a878e01cd3af5499aa843df703f20cdecca8a14b59d87d13c747328";
-      name = "umbrello-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/umbrello-20.08.2.tar.xz";
+      sha256 = "0357b44646c750253e3e7ee323b9e49e854c4c8cdf340eb5a11b2d42edfc4cd7";
+      name = "umbrello-20.08.2.tar.xz";
     };
   };
   yakuake = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/yakuake-20.08.1.tar.xz";
-      sha256 = "6768a360a3d79080e6e53821460ed27f6c2e47fa11077bbec3213d85385d6fac";
-      name = "yakuake-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/yakuake-20.08.2.tar.xz";
+      sha256 = "8a0aa3a97a9fdc781887a6cb6480cba5079cf8aacd3345b63f5eb6be4d91665a";
+      name = "yakuake-20.08.2.tar.xz";
     };
   };
   zeroconf-ioslave = {
-    version = "20.08.1";
+    version = "20.08.2";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/20.08.1/src/zeroconf-ioslave-20.08.1.tar.xz";
-      sha256 = "ca1685a22922057ba89510d71a11218bf47db0d0313aec2b55aca21932564866";
-      name = "zeroconf-ioslave-20.08.1.tar.xz";
+      url = "${mirror}/stable/release-service/20.08.2/src/zeroconf-ioslave-20.08.2.tar.xz";
+      sha256 = "0ad34f8361ee3ecd669e396265135b534239994d3bec5e9e6a43b7b7bf5c04e4";
+      name = "zeroconf-ioslave-20.08.2.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/misc/archiver/default.nix b/pkgs/applications/misc/archiver/default.nix
index fed1dc48470ed..aec0b9d51186b 100644
--- a/pkgs/applications/misc/archiver/default.nix
+++ b/pkgs/applications/misc/archiver/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "archiver";
-  version = "3.3.2";
+  version = "3.4.0";
 
   src = fetchFromGitHub {
     owner = "mholt";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1fi86g27c660g3mv9c5rfm0mmvh5q08704c19xnvrpwlg65glqrz";
+    sha256 = "16jawybywqfkp68035bnf206a2w4khjw239saa429a21lxrfyk4a";
   };
 
-  vendorSha256 = "1rqhra3rfarq8f750zszkrm0jcsxa4sjbfpmcdlj5z000df699zq";
+  vendorSha256 = "0m89ibj3dm58j49d99dhkn0ryivnianxz7lkpkvhs0cdbzzc02az";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version} -X main.commit=${src.rev} -X main.date=unknown" ];
 
diff --git a/pkgs/applications/misc/batsignal/default.nix b/pkgs/applications/misc/batsignal/default.nix
index 56c508eaca925..77eb32166fe44 100644
--- a/pkgs/applications/misc/batsignal/default.nix
+++ b/pkgs/applications/misc/batsignal/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "batsignal";
-  version = "1.1.2";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "electrickite";
     repo = "batsignal";
     rev = "${version}";
-    sha256 = "0ss5dw7wpqsf96dig6r7x4fhf6brmjdy54jyyf5nk1h9kzw4d69r";
+    sha256 = "12hj0j18db34x0xzgj6xmhvxm966d05z0rl3d9rlrcd2q96lilwf";
   };
 
   buildInputs = [ libnotify glib ];
diff --git a/pkgs/applications/misc/clipcat/default.nix b/pkgs/applications/misc/clipcat/default.nix
new file mode 100644
index 0000000000000..244770e138f91
--- /dev/null
+++ b/pkgs/applications/misc/clipcat/default.nix
@@ -0,0 +1,64 @@
+{ lib, fetchFromGitHub, installShellFiles, rustPlatform, rustfmt, xorg
+, pkgconfig, llvmPackages, clang, protobuf, python3 }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "clipcat";
+  version = "0.4.19";
+
+  src = fetchFromGitHub {
+    owner = "xrelkd";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1lhnm521qqy3aw2iyk1dv4yc5ms0c5x5iipx96bz6v6y0cnmf4kw";
+  };
+
+  cargoSha256 = "04iflyvz8g53z658rkxafiyi2m9kzxwl3p1xgkjq7vacmz5jk15c";
+
+  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+
+  # needed for internal protobuf c wrapper library
+  PROTOC = "${protobuf}/bin/protoc";
+  PROTOC_INCLUDE = "${protobuf}/include";
+
+  nativeBuildInputs = [
+    pkgconfig
+
+    clang
+    llvmPackages.libclang
+
+    rustfmt
+    protobuf
+
+    python3
+
+    installShellFiles
+  ];
+  buildInputs = [ xorg.libxcb ];
+
+  cargoBuildFlags = [ "--features=all" ];
+
+  postInstall = ''
+    installShellCompletion --bash --name clipcatd             completions/bash-completion/completions/clipcatd
+    installShellCompletion --fish --name clipcatd.fish        completions/fish/completions/clipcatd.fish
+    installShellCompletion --zsh  --name _clipcatd            completions/zsh/site-functions/_clipcatd
+
+    installShellCompletion --bash --name clipcatctl           completions/bash-completion/completions/clipcatctl
+    installShellCompletion --fish --name clipcatctl.fish      completions/fish/completions/clipcatctl.fish
+    installShellCompletion --zsh  --name _clipcatctl          completions/zsh/site-functions/_clipcatctl
+
+    installShellCompletion --bash --name clipcat-menu         completions/bash-completion/completions/clipcat-menu
+    installShellCompletion --fish --name clipcat-menu.fish    completions/fish/completions/clipcat-menu.fish
+    installShellCompletion --zsh  --name _clipcat-menu        completions/zsh/site-functions/_clipcat-menu
+
+    installShellCompletion --bash --name clipcat-notify       completions/bash-completion/completions/clipcat-notify
+    installShellCompletion --fish --name clipcat-notify.fish  completions/fish/completions/clipcat-notify.fish
+    installShellCompletion --zsh  --name _clipcat-notify      completions/zsh/site-functions/_clipcat-notify
+  '';
+
+  meta = with lib; {
+    description = "Clipboard Manager written in Rust Programming Language";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ xrelkd ];
+  };
+}
diff --git a/pkgs/applications/misc/dstask/default.nix b/pkgs/applications/misc/dstask/default.nix
index c9b3e2dd89835..0eeb0d9cab6e5 100644
--- a/pkgs/applications/misc/dstask/default.nix
+++ b/pkgs/applications/misc/dstask/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dstask";
-  version = "0.22";
+  version = "0.23";
 
   src = fetchFromGitHub {
     owner = "naggie";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0vwkar827ncwmva091q37gq8fvs9jz1765zdxrcvhczlj5a0qdgi";
+    sha256 = "15hr0ivwvm2lzpi8l5y5a3hya3i7r85pxna961m24gd4f8gs4cjl";
   };
 
   # Set vendorSha256 to null because dstask vendors its dependencies (meaning
diff --git a/pkgs/applications/misc/electrum/ltc.nix b/pkgs/applications/misc/electrum/ltc.nix
index 2c6fb39fa4334..7d6480b4696c9 100644
--- a/pkgs/applications/misc/electrum/ltc.nix
+++ b/pkgs/applications/misc/electrum/ltc.nix
@@ -27,6 +27,8 @@ python3Packages.buildPythonApplication rec {
     dnspython
     jsonrpclib-pelix
     pysocks
+    trezor
+    btchip
   ];
 
   preBuild = ''
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index ffe7d4ec47deb..8135dce4d7a3e 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.15.1";
+  version = "1.15.2";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "1pysh0gz3f3dxk5bfkzaii4myrgik396mf6vlks50inpbnslmqsl";
+    sha256 = "0f2d1ixg0ir7ispxxggv378dc0m55k9y19075swf893maxf07f35";
   };
 
   propagatedBuildInputs = with python3Packages; [ requests ];
@@ -15,6 +15,7 @@ python3Packages.buildPythonApplication rec {
   pytestFlagsArray = [
     # requires network access
     "--ignore=test/test_results.py"
+    "--ignore=test/test_downloader.py"
   ];
 
   meta = {
diff --git a/pkgs/applications/misc/geoipupdate/default.nix b/pkgs/applications/misc/geoipupdate/default.nix
index ee6ed27ddda8a..1f2c275b13d11 100644
--- a/pkgs/applications/misc/geoipupdate/default.nix
+++ b/pkgs/applications/misc/geoipupdate/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "geoipupdate";
-  version = "4.3.0";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner = "maxmind";
     repo = "geoipupdate";
     rev = "v${version}";
-    sha256 = "08h14bf4z2gx9sy34jpi2pvxv3i8g9ypl222hzdjsp2ixhl0jia9";
+    sha256 = "0lhz7i4lprsik3s41y19vphsyc29vz6cbxikmvkmy6xjn40khjfr";
   };
 
-  vendorSha256 = "0q4byhvs1c1xm4qjvs2vyf98vdv121qn0z51arcf7k4ayrys5xcx";
+  vendorSha256 = "1f858k8cl0dgiw124jv0p9jhi9aqxnc3nmc7hksw70fla2nzjrv0";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 72ebefb98e73b..4b2a4c464573b 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.76.5";
+  version = "0.77.0";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0p7zz9cif1vihhs21nvh4n3y1p2cwpga59rilpam7yvza4nzx7ay";
+    sha256 = "1vjqddcbk8afqkjzrj9wwvz697bxhv9vz0rk2vj2ji6lz1slhc56";
   };
 
-  vendorSha256 = "0kiqy8n2df52gsgsbmr96rph8lpnw06g622123hlwk7kqg0z9ifh";
+  vendorSha256 = "03xv188jw5scqd6a8xd2s13vkn721d37bgs6a6rik7pgqmjh46c6";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/jotta-cli/default.nix b/pkgs/applications/misc/jotta-cli/default.nix
index 70ca28b467831..a924bd181c0e6 100644
--- a/pkgs/applications/misc/jotta-cli/default.nix
+++ b/pkgs/applications/misc/jotta-cli/default.nix
@@ -5,10 +5,10 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "jotta-cli";
-  version = "0.6.24251";
+  version = "0.7.33634";
   src = fetchzip {
       url = "https://repo.jotta.us/archives/linux/${arch}/jotta-cli-${version}_linux_${arch}.tar.gz";
-      sha256 = "0f26fg5fqpz0f6jxp72cj5f2kf76jah5iaqlqsl87250y0hm330g";
+      sha256 = "0apbdk4fvmn52w9qyh6hvpk3k0sa810jvvndpsbysnlmi7gv5w62";
       stripRoot = false;
     };
 
diff --git a/pkgs/applications/misc/peaclock/default.nix b/pkgs/applications/misc/peaclock/default.nix
new file mode 100644
index 0000000000000..e824bbaf583b4
--- /dev/null
+++ b/pkgs/applications/misc/peaclock/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, libpthreadstubs, icu }:
+
+stdenv.mkDerivation rec {
+  pname = "peaclock";
+  version = "0.4.3";
+
+  src = fetchFromGitHub {
+    owner = "octobanana";
+    repo = pname;
+    rev = version;
+    sha256 = "1582vgslhpgbvcd7ipgf1d1razrvgpq1f93q069yr2bbk6xn8i16";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libpthreadstubs icu ];
+
+  meta = with stdenv.lib; {
+    description = "A clock, timer, and stopwatch for the terminal";
+    homepage = "https://octobanana.com/software/peaclock";
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ djanatyn ];
+  };
+}
diff --git a/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/pkgs/applications/misc/prusa-slicer/super-slicer.nix
index 1e8f9fc99528c..2bc59e855a086 100644
--- a/pkgs/applications/misc/prusa-slicer/super-slicer.nix
+++ b/pkgs/applications/misc/prusa-slicer/super-slicer.nix
@@ -3,7 +3,7 @@
 }:
 let
   appname = "SuperSlicer";
-  version = "2.2.54.1";
+  version = "2.2.54.2";
   pname = "super-slicer";
   description = "PrusaSlicer fork with more features and faster development cycle";
   override = super: {
@@ -12,7 +12,7 @@ let
     src = fetchFromGitHub {
       owner = "supermerill";
       repo = "SuperSlicer";
-      sha256 = "sha256-0NWrck9nqAlc8xX3nTrRlnzjso4MRRjJSW7bUvCX6Y4=";
+      sha256 = "sha256-ThmsxFXI1uReK+JwpHrIWzHpBdIOP77kDjv+QaK+Azk=";
       rev = version;
     };
 
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index c45ea27c425e8..bb4b3ac90ce10 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -20,14 +20,14 @@
 }:
 
 mkDerivation rec {
-  version = "0.11.0";
+  version = "1.0.0";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${version}";
-    sha256 = "1lpjrij6y8l738hd7bfig0piglqinnqbadidzw9k0nm53bh4pqrr";
+    sha256 = "sha256-mB23UOUrOfEmbFfVsAXyi3iod0NAfp/sl7Gkklqfmbo=";
   };
 
   buildInputs = [ qtbase cpp-utilities qtutilities ]
diff --git a/pkgs/applications/misc/teleprompter/default.nix b/pkgs/applications/misc/teleprompter/default.nix
index 37b3f10329b9d..96265356ead77 100644
--- a/pkgs/applications/misc/teleprompter/default.nix
+++ b/pkgs/applications/misc/teleprompter/default.nix
@@ -1,15 +1,15 @@
-{ lib, stdenv, fetchurl, electron_4, makeDesktopItem, makeWrapper, nodePackages, autoPatchelfHook}:
+{ lib, stdenv, fetchurl, electron_10, makeDesktopItem, makeWrapper, nodePackages, autoPatchelfHook}:
 
 let
-  electron = electron_4;
+  electron = electron_10;
 in
 stdenv.mkDerivation rec {
   pname = "teleprompter";
-  version = "2.3.4";
+  version = "2.4.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/teleprompter-imaginary-films/imaginary-${pname}-${version}-64bit.tar.gz";
-    sha256 = "084ml2l3qg46bsazaapyxdx4zavvxp0j4ycsdpdwk3f94g9xb120";
+    url = "https://github.com/ImaginarySense/Imaginary-Teleprompter-Electron/releases/download/${lib.versions.majorMinor version}/imaginary-teleprompter-${version}.tar.gz";
+    sha256 = "bgdtK8l5d26avv1WUw9cfOgZrIL1q/a9890Ams4yidQ=";
   };
 
   dontBuild = true;
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "The most complete, free, teleprompter app on the web";
-    license = [ licenses.gpl3 ];
+    license = [ licenses.gpl3Plus ];
     homepage = "https://github.com/ImaginarySense/Teleprompter-Core";
     platforms = platforms.linux;
     maintainers = with maintainers; [ Scriptkiddi ];
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 43e4717f82f68..f83cb1d209d73 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -14,7 +14,6 @@
 , proprietaryCodecs ? true
 , enablePepperFlash ? false
 , enableWideVine ? false
-, useVaapi ? false # Deprecated, use enableVaapi instead!
 , enableVaapi ? false # Disabled by default due to unofficial support
 , useOzone ? false
 , cupsSupport ? true
@@ -148,13 +147,6 @@ let
       ''
     else browser;
 
-  optionalVaapiFlags = if useVaapi # TODO: Remove after 20.09:
-    then throw ''
-      Chromium's useVaapi was replaced by enableVaapi and you don't need to pass
-      "--ignore-gpu-blacklist" anymore (also no rebuilds are required anymore).
-    '' else lib.optionalString
-      (enableVaapi)
-      "--add-flags --enable-accelerated-video-decode";
 in stdenv.mkDerivation {
   name = "chromium${suffix}-${version}";
   inherit version;
@@ -181,7 +173,7 @@ in stdenv.mkDerivation {
 
     eval makeWrapper "${browserBinary}" "$out/bin/chromium" \
       --add-flags ${escapeShellArg (escapeShellArg commandLineArgs)} \
-      ${optionalVaapiFlags} \
+      ${lib.optionalString enableVaapi "--add-flags --enable-accelerated-video-decode"} \
       ${concatMapStringsSep " " getWrapperFlags chromium.plugins.enabled}
 
     ed -v -s "$out/bin/chromium" << EOF
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index c787fb5754d58..03cf35e1a6beb 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -333,6 +333,7 @@ buildStdenv.mkDerivation ({
     version = ffversion;
     isFirefox3Like = true;
     gtk = gtk2;
+    inherit alsaSupport;
     inherit nspr;
     inherit ffmpegSupport;
     inherit gssSupport;
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 424c45d305e84..9c8625495b202 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -2,7 +2,7 @@
 
 ## various stuff that can be plugged in
 , flashplayer, hal-flash
-, ffmpeg, xorg, libpulseaudio, libcanberra-gtk2, libglvnd
+, ffmpeg, xorg, alsaLib, libpulseaudio, libcanberra-gtk2, libglvnd
 , gnome3/*.gnome-shell*/
 , browserpass, chrome-gnome-shell, uget-integrator, plasma-browser-integration, bukubrow
 , tridactyl-native
@@ -39,6 +39,7 @@ let
       enableAdobeFlash = cfg.enableAdobeFlash or false;
       ffmpegSupport = browser.ffmpegSupport or false;
       gssSupport = browser.gssSupport or false;
+      alsaSupport = browser.alsaSupport or false;
 
       plugins =
         let
@@ -76,6 +77,7 @@ let
             (with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ])
             ++ lib.optional (enableAdobeFlash && (cfg.enableAdobeFlashDRM or false)) hal-flash
             ++ lib.optional (config.pulseaudio or true) libpulseaudio
+            ++ lib.optional alsaSupport alsaLib
             ++ pkcs11Modules;
       gtk_modules = [ libcanberra-gtk2 ];
 
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index fb261c2860729..727090a4c5c35 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -150,7 +150,10 @@ in stdenv.mkDerivation {
     description = "A freeware web browser developed by Google";
     homepage = "https://www.google.com/chrome/browser/";
     license = licenses.unfree;
-    maintainers = [ maintainers.msteen ];
+    maintainers = with maintainers; [ primeos msteen ];
+    # Note from primeos: By updating Chromium I also update Google Chrome and
+    # will try to merge PRs and respond to issues but I'm not actually using
+    # Google Chrome. msteen is the actual user/maintainer.
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix
index 47e2cc04b3984..d61d32e40e951 100644
--- a/pkgs/applications/networking/cloudflared/default.nix
+++ b/pkgs/applications/networking/cloudflared/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2020.10.0";
+  version = "2020.10.2";
 
   src = fetchFromGitHub {
     owner  = "cloudflare";
     repo   = "cloudflared";
     rev    = version;
-    sha256 = "1ssmyll13pf19fxq34iw4x7ps8p4mcg9nwlx00hp5sahhwx4iz01";
+    sha256 = "0ppl74gb46r2x65hl7z1hjdqlr8la0pvhy8af8isk11sbxmprqjj";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/atlantis/default.nix b/pkgs/applications/networking/cluster/atlantis/default.nix
index d3e18ce691f1b..15c5f0e97c4cd 100644
--- a/pkgs/applications/networking/cluster/atlantis/default.nix
+++ b/pkgs/applications/networking/cluster/atlantis/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "atlantis";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "runatlantis";
     repo = "atlantis";
     rev = "v${version}";
-    sha256 = "0nb0dm4yn6f5pw7clgb2d1khcwcxiidqyc0sdh38wwqg0zyil0cz";
+    sha256 = "0xxg48f28ac7x6kap6w1hgsimdc604ivkck4dx7p5p7xd3s7gld5";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
index ca0da973f2c6e..ae98fbbcc2dcd 100644
--- a/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -9,6 +9,7 @@
 , buildGoPackage
 , git
 , runc
+, kmod
 , libseccomp
 , pkgconfig
 , ethtool
@@ -226,6 +227,7 @@ stdenv.mkDerivation rec {
   # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494
   # Note the list in that issue is stale and some aren't relevant for k3s.
   k3sRuntimeDeps = [
+    kmod
     socat
     iptables
     iproute
diff --git a/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix b/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix
new file mode 100644
index 0000000000000..7e807d2ed5ce7
--- /dev/null
+++ b/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "terraform-provider-cloudfoundry";
+  version = "0.12.6";
+
+  src = fetchFromGitHub {
+    owner = "cloudfoundry-community";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0n5ybpzk6zkrnd9vpmbjlkm8fdp7nbfr046wih0jk72pmiyrcygi";
+  };
+
+  vendorSha256 = "01lfsd9aw9w3kr1a2a5b7ac6d8jaij83lhxl4y4qsnjlqk86fbxq";
+
+  # needs a running cloudfoundry
+  doCheck = false;
+
+  postInstall = "mv $out/bin/terraform-provider-cloudfoundry{,_v${version}}";
+
+  passthru = { provider-source-address = "registry.terraform.io/cloudfoundry-community/cloudfoundry"; };
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/cloudfoundry-community/terraform-provider-cloudfoundry";
+    description = "Terraform provider for cloudfoundry";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ ris ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix
index 24c6dd21cdefb..a75500c8eb372 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix
@@ -161,6 +161,7 @@ let
 
     # Packages that don't fit the default model
     ansible = callPackage ./ansible {};
+    cloudfoundry = callPackage ./cloudfoundry {};
     elasticsearch = callPackage ./elasticsearch {};
     gandi = callPackage ./gandi {};
     keycloak = callPackage ./keycloak {};
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index bd7c50dba203d..29bbac6f70bb9 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -934,6 +934,14 @@
     "sha256": "1cl83afm00fflsd3skynjvncid3r74fkxfznrs1v8qypcg1j79g1",
     "version": "0.18.0"
   },
+  "time": {
+    "owner": "hashicorp",
+    "provider-source-address": "registry.terraform.io/hashicorp/time",
+    "repo": "terraform-provider-time",
+    "rev": "v0.6.0",
+    "sha256": "0fb81hisjicib9rzbn51jqfrchyjd3hzq98adnf22cbra8wlnxlm",
+    "version": "0.6.0"
+  },
   "tls": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/tls",
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
index f8bcdc4bef7cb..8b63483405877 100644
--- a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
@@ -39,11 +39,12 @@
 
 stdenv.mkDerivation rec {
   pname = "bluejeans";
-  version = "2.4.0";
+  version = "2.17.0";
+  buildNumber = "11";
 
   src = fetchurl {
-    url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans.rpm";
-    sha256 = "180hc854ngwfn6y6nsrfn74rv78cxhq6sgshrca5zqv6wq3l98g0";
+    url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans_${version}.${buildNumber}.rpm";
+    sha256 = "1h5jbnp5bwy6bpma9a1ia08v7bpz09fm66jsip470k1r7vjjwa68";
   };
 
   nativeBuildInputs = [ rpmextract makeWrapper ];
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
index 05f7af332436c..364f5a25d0af9 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "element-desktop",
   "productName": "Element",
   "main": "src/electron-main.js",
-  "version": "1.7.10",
+  "version": "1.7.12",
   "description": "A feature-rich client for Matrix.org",
   "author": "Element",
   "repository": {
@@ -62,7 +62,7 @@
   },
   "build": {
     "appId": "im.riot.app",
-    "electronVersion": "10.1.1",
+    "electronVersion": "10.1.3",
     "files": [
       "package.json",
       {
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
index 2a611aa630a2e..21374014c8861 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
@@ -4394,11 +4394,11 @@
       };
     }
     {
-      name = "npm_user_validate___npm_user_validate_1.0.0.tgz";
+      name = "npm_user_validate___npm_user_validate_1.0.1.tgz";
       path = fetchurl {
-        name = "npm_user_validate___npm_user_validate_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-1.0.0.tgz";
-        sha1 = "8ceca0f5cea04d4e93519ef72d0557a75122e951";
+        name = "npm_user_validate___npm_user_validate_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-1.0.1.tgz";
+        sha1 = "31428fc5475fe8416023f178c0ab47935ad8c561";
       };
     }
     {
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index cb5e598c12119..b31841c5e79ac 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -8,12 +8,12 @@
 
 let
   executableName = "element-desktop";
-  version = "1.7.10";
+  version = "1.7.12";
   src = fetchFromGitHub {
     owner = "vector-im";
     repo = "riot-desktop";
     rev = "v${version}";
-    sha256 = "06ygqfhbsld4s274kakb6a5nx75jki44r8lwk3n0pi5mnkn626gl";
+    sha256 = "08d9llrglap5bbicdkbdl9l71wba2kkyhdyd0a4iqdz3l2jvv698";
   };
   electron = electron_9;
 
diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix
index a71bc086370ac..0d3e771630fdc 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-web.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix
@@ -12,11 +12,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "element-web";
-  version = "1.7.10";
+  version = "1.7.12";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "1xcvydjpdp6cy5g0da5yaa49gjxsmf4hsyi2q4l3p8qvs4qajn0r";
+    sha256 = "173hdg09cw13vqh0lvz6kl0mq4i3rsacjxhspkpydh2qd1g3hjrs";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 2ee017dfdbaf3..eef24f75f1553 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -60,6 +60,9 @@ python3.pkgs.buildPythonApplication rec {
       ${python3.interpreter} setup.py test
   '';
 
+  # necessary for wrapGAppsHook
+  strictDeps = false;
+
   meta = {
     homepage = "http://gajim.org/";
     description = "Jabber client written in PyGTK";
diff --git a/pkgs/applications/networking/instant-messengers/skype-call-recorder/conference.patch b/pkgs/applications/networking/instant-messengers/skype-call-recorder/conference.patch
deleted file mode 100644
index 8b8ce8fd7bbf1..0000000000000
--- a/pkgs/applications/networking/instant-messengers/skype-call-recorder/conference.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From abd67f1d44eef81baf2e9729f95e002c4ecc7350 Mon Sep 17 00:00:00 2001
-From: jlh <jlh@gmx.ch>
-Date: Fri, 16 Oct 2009 17:40:54 +0200
-Subject: [PATCH] Rudimentary support for recording hosted conference calls
-
----
- call.cpp |   37 +++++++++++++++++++++++++++++++++++--
- call.h   |   11 ++++++++++-
- 2 files changed, 45 insertions(+), 3 deletions(-)
-
-diff --git a/call.cpp b/call.cpp
-index c2b02f2..663c1c1 100644
---- a/call.cpp
-+++ b/call.cpp
-@@ -90,9 +90,10 @@ void AutoSync::reset() {
- 
- // Call class
- 
--Call::Call(QObject *p, Skype *sk, CallID i) :
--	QObject(p),
-+Call::Call(CallHandler *h, Skype *sk, CallID i) :
-+	QObject(h),
- 	skype(sk),
-+	handler(h),
- 	id(i),
- 	status("UNKNOWN"),
- 	writer(NULL),
-@@ -119,6 +120,13 @@ Call::Call(QObject *p, Skype *sk, CallID i) :
- 		debug(QString("Call %1: cannot get partner display name").arg(id));
- 		displayName = "Unnamed Caller";
- 	}
-+
-+	// Skype does not properly send updates when the CONF_ID property
-+	// changes.  since we need this information, check it now on all calls
-+	handler->updateConfIDs();
-+	// this call isn't yet in the list of calls, thus we need to
-+	// explicitely check its CONF_ID
-+	updateConfID();
- }
- 
- Call::~Call() {
-@@ -134,6 +142,10 @@ Call::~Call() {
- 	// QT takes care of deleting servers and sockets
- }
- 
-+void Call::updateConfID() {
-+	confID = skype->getObject(QString("CALL %1 CONF_ID").arg(id)).toLong();
-+}
-+
- bool Call::okToDelete() const {
- 	// this is used for checking whether past calls may now be deleted.
- 	// when a past call hasn't been decided yet whether it should have been
-@@ -270,6 +282,11 @@ void Call::startRecording(bool force) {
- 	if (isRecording)
- 		return;
- 
-+	if (handler->isConferenceRecording(confID)) {
-+		debug(QString("Call %1: call is part of a conference that is already being recorded").arg(id));
-+		return;
-+	}
-+
- 	if (force) {
- 		emit showLegalInformation();
- 	} else {
-@@ -589,6 +606,22 @@ CallHandler::~CallHandler() {
- 	delete legalInformationDialog;
- }
- 
-+void CallHandler::updateConfIDs() {
-+	QList<Call *> list = calls.values();
-+	for (int i = 0; i < list.size(); i++)
-+		list.at(i)->updateConfID();
-+}
-+
-+bool CallHandler::isConferenceRecording(CallID id) const {
-+	QList<Call *> list = calls.values();
-+	for (int i = 0; i < list.size(); i++) {
-+		Call *c = list.at(i);
-+		if (c->getConfID() == id && c->getIsRecording())
-+			return true;
-+	}
-+	return false;
-+}
-+
- void CallHandler::callCmd(const QStringList &args) {
- 	CallID id = args.at(0).toInt();
- 
-diff --git a/call.h b/call.h
-index cb8396d..b746f46 100644
---- a/call.h
-+++ b/call.h
-@@ -43,6 +43,8 @@ class QTcpServer;
- class QTcpSocket;
- class LegalInformationDialog;
- 
-+class CallHandler;
-+
- typedef int CallID;
- 
- class AutoSync {
-@@ -68,18 +70,21 @@ private:
- class Call : public QObject {
- 	Q_OBJECT
- public:
--	Call(QObject *, Skype *, CallID);
-+	Call(CallHandler *, Skype *, CallID);
- 	~Call();
- 	void startRecording(bool = false);
- 	void stopRecording(bool = true);
-+	void updateConfID();
- 	bool okToDelete() const;
- 	void setStatus(const QString &);
- 	QString getStatus() const { return status; }
- 	bool statusDone() const;
- 	bool statusActive() const;
- 	CallID getID() const { return id; }
-+	CallID getConfID() const { return confID; }
- 	void removeFile();
- 	void hideConfirmation(int);
-+	bool getIsRecording() const { return isRecording; }
- 
- signals:
- 	void startedCall(int, const QString &);
-@@ -99,10 +104,12 @@ private:
- 
- private:
- 	Skype *skype;
-+	CallHandler *handler;
- 	CallID id;
- 	QString status;
- 	QString skypeName;
- 	QString displayName;
-+	CallID confID;
- 	AudioFileWriter *writer;
- 	bool isRecording;
- 	int stereo;
-@@ -140,6 +147,8 @@ class CallHandler : public QObject {
- public:
- 	CallHandler(QObject *, Skype *);
- 	~CallHandler();
-+	void updateConfIDs();
-+	bool isConferenceRecording(CallID) const;
- 	void callCmd(const QStringList &);
- 
- signals:
--- 
-1.6.5.GIT
-
diff --git a/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix b/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix
deleted file mode 100644
index 57d1ffece71a2..0000000000000
--- a/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ stdenv, fetchurl, cmake, lame, id3lib, libvorbis, qt4, libogg }:
-
-stdenv.mkDerivation {
-  name = "skype-call-recorder-0.8";
-  src = fetchurl {
-    url = "https://atdot.ch/scr/files/0.8/skype-call-recorder-0.8.tar.gz";
-    sha256 = "1iijkhq3aj9gr3bx6zl8ryvzkqcdhsm9yisimakwq0lnw0lgf5di";
-  };
-
-  # Keep an rpath reference to the used libogg
-  prePatch = ''
-    sed -i -e '/ADD_EXECUTABLE/aSET(LIBRARIES ''${LIBRARIES} ogg)' CMakeLists.txt
-  '';
-
-  # Better support for hosted conferences
-  patches = [ ./conference.patch ];
-
-  buildInputs = [ cmake lame id3lib libvorbis qt4 libogg ];
-  NIX_LDFLAGS = "-lvorbis";
-
-  meta = {
-    homepage = "http://atdot.ch/scr/";
-    description = "Open source tool to record your Skype calls on Linux";
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [viric];
-  };
-}
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 2edccd8c019ea..bd41fc562bfc3 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -40,8 +40,8 @@ let
 
   pname = "slack";
   version = {
-    x86_64-darwin = "4.9.0";
-    x86_64-linux = "4.9.1";
+    x86_64-darwin = "4.10.3";
+    x86_64-linux = "4.10.3";
   }.${system} or throwSystem;
 
   src = let
@@ -49,11 +49,11 @@ let
   in {
     x86_64-darwin = fetchurl {
       url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
-      sha256 = "007fflncvvclj4agb6g5hc5k9j5hhz1rpvlcfd8w31rn1vad4abk";
+      sha256 = "0r77l57vr603xamich4h4gbdd5vdcj0sjs6yjpymfx9s0f98v8bb";
     };
     x86_64-linux = fetchurl {
       url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb";
-      sha256 = "1n8br5vlcnf13b8m6727hy4bkmd6wayss96ck4ba9zsjiyj7v74i";
+      sha256 = "1gnjj2iyk8cwjajg8h9qpmzx10j4qjxjzciq8csg45qfzwkr3drf";
     };
   }.${system} or throwSystem;
 
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 379922ee58555..ed1b643960c9f 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -22,12 +22,12 @@ let
 
 in mkDerivation rec {
   pname = "telegram-desktop";
-  version = "2.4.4";
+  version = "2.4.5";
 
   # Telegram-Desktop with submodules
   src = fetchurl {
     url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
-    sha256 = "09lhikaybf57rki62miqcaxxrdg1ni2rj9aj4w9mrbzdv849fyc8";
+    sha256 = "0nhzypgc45f5gqy53azj7mljnj7p9p0m7bil02f9cih1dg5sdxx5";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt-install.patch b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt-install.patch
deleted file mode 100644
index bc8a23eb31e5e..0000000000000
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt-install.patch
+++ /dev/null
@@ -1,159 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 6fbc0da..6cbff3c 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1856,3 +1856,41 @@ configure_file(
-     "${CMAKE_CURRENT_BINARY_DIR}/tg_owtConfig.cmake"
-     COPYONLY
- )
-+
-+install(
-+TARGETS
-+    tg_owt
-+    libabsl
-+    libopenh264
-+    libpffft
-+    librnnoise
-+    libsrtp
-+    libusrsctp
-+    libvpx
-+    ${vpx_export}
-+    libwebrtcbuild
-+    libyuv
-+    ${platform_export}
-+EXPORT tg_owtTargets
-+RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
-+ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
-+)
-+
-+install(
-+    DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/src/
-+    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
-+    FILES_MATCHING PATTERN "*.h"
-+)
-+
-+install(
-+    EXPORT tg_owtTargets
-+    NAMESPACE tg_owt::
-+    DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/tg_owt
-+)
-+
-+install(
-+    FILES ${CMAKE_CURRENT_BINARY_DIR}/tg_owtConfig.cmake
-+    DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/tg_owt
-+)
-diff --git a/cmake/libabsl.cmake b/cmake/libabsl.cmake
-index 2fb3b8c..4a4f85b 100644
---- a/cmake/libabsl.cmake
-+++ b/cmake/libabsl.cmake
-@@ -123,5 +123,6 @@ PRIVATE
-
- target_include_directories(libabsl
- PUBLIC
--    ${libabsl_loc}
-+    $<BUILD_INTERFACE:${libabsl_loc}>
-+    $<INSTALL_INTERFACE:include/third_party/abseil-cpp>
- )
-diff --git a/cmake/libpffft.cmake b/cmake/libpffft.cmake
-index a6ceb3e..435d3a3 100644
---- a/cmake/libpffft.cmake
-+++ b/cmake/libpffft.cmake
-@@ -24,5 +24,6 @@ endif()
-
- target_include_directories(libpffft
- PUBLIC
--    ${libpffft_loc}
-+    $<BUILD_INTERFACE:${libpffft_loc}>
-+    $<INSTALL_INTERFACE:include/third_party/pffft/src>
- )
-diff --git a/cmake/libsrtp.cmake b/cmake/libsrtp.cmake
-index 57c54b5..26b3466 100644
---- a/cmake/libsrtp.cmake
-+++ b/cmake/libsrtp.cmake
-@@ -30,6 +30,8 @@ PRIVATE
-
- target_include_directories(libsrtp
- PUBLIC
--    ${libsrtp_loc}/include
--    ${libsrtp_loc}/crypto/include
-+    $<BUILD_INTERFACE:${libsrtp_loc}/include>
-+    $<BUILD_INTERFACE:${libsrtp_loc}/crypto/include>
-+    $<INSTALL_INTERFACE:include/third_party/libsrtp/include>
-+    $<INSTALL_INTERFACE:include/third_party/libsrtp/crypto/include>
- )
-diff --git a/cmake/libusrsctp.cmake b/cmake/libusrsctp.cmake
-index caa0529..38d2ef6 100644
---- a/cmake/libusrsctp.cmake
-+++ b/cmake/libusrsctp.cmake
-@@ -67,6 +67,8 @@ endif()
-
- target_include_directories(libusrsctp
- PUBLIC
--    ${third_party_loc}/usrsctp/usrsctplib
--    ${libusrsctp_loc}
-+    $<BUILD_INTERFACE:${third_party_loc}/usrsctp/usrsctplib>
-+    $<BUILD_INTERFACE:${libusrsctp_loc}>
-+    $<INSTALL_INTERFACE:include/third_party/usrsctp/usrsctplib/usrsctplib>
-+    $<INSTALL_INTERFACE:include/third_party/usrsctp/usrsctplib>
- )
-diff --git a/cmake/libvpx.cmake b/cmake/libvpx.cmake
-index e192e7e..78cf25b 100644
---- a/cmake/libvpx.cmake
-+++ b/cmake/libvpx.cmake
-@@ -68,6 +68,11 @@ else()
-     set(ASM_SUFFIX ".asm.S")
- endif()
-
-+foreach(dir ${include_directories})
-+    string(REPLACE ${libvpx_loc} include/third_party/libvpx install_include_dir ${dir})
-+    list(APPEND install_include_directories ${install_include_dir})
-+endforeach()
-+
- function(add_sublibrary postfix)
-     add_library(libvpx_${postfix} OBJECT)
-     init_feature_target(libvpx_${postfix} ${postfix})
-@@ -75,6 +80,8 @@ function(add_sublibrary postfix)
-     target_include_directories(libvpx_${postfix}
-     PRIVATE
-         ${include_directories}
-+        "$<BUILD_INTERFACE:${include_directories}>"
-+        "$<INSTALL_INTERFACE:${install_include_directories}>"
-     )
-     set(sources_list ${ARGV})
-     list(REMOVE_AT sources_list 0)
-@@ -725,5 +732,6 @@ endif()
-
- target_include_directories(libvpx
- PUBLIC
--    ${include_directories}
-+    "$<BUILD_INTERFACE:${include_directories}>"
-+    "$<INSTALL_INTERFACE:${install_include_directories}>"
- )
-diff --git a/cmake/libwebrtcbuild.cmake b/cmake/libwebrtcbuild.cmake
-index c3520b8..9b4b543 100644
---- a/cmake/libwebrtcbuild.cmake
-+++ b/cmake/libwebrtcbuild.cmake
-@@ -44,5 +44,6 @@ endif()
-
- target_include_directories(libwebrtcbuild
- INTERFACE
--    ${webrtc_loc}
-+    $<BUILD_INTERFACE:${webrtc_loc}>
-+    $<INSTALL_INTERFACE:include>
- )
-diff --git a/cmake/libyuv.cmake b/cmake/libyuv.cmake
-index ebfc6f0..18e70ef 100644
---- a/cmake/libyuv.cmake
-+++ b/cmake/libyuv.cmake
-@@ -126,7 +126,8 @@ endif()
-
- target_include_directories(libyuv
- PUBLIC
--    ${libyuv_loc}/include
-+    $<BUILD_INTERFACE:${libyuv_loc}/include>
-+    $<INSTALL_INTERFACE:include/third_party/libyuv/include>
- )
-
- target_compile_definitions(libyuv
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
index 47e9b6787e3e0..4695e61f7d5ba 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
@@ -3,8 +3,8 @@
 }:
 
 let
-  rev = "c73a4718cbff7048373a63db32068482e5fd11ef";
-  sha256 = "0nr20mvvmmg8ii8f2rljd7iv2szplcfjn40rpy6llkmf705mwr1k";
+  rev = "1d4f7d74ff1a627db6e45682efd0e3b85738e426";
+  sha256 = "1w03xmjn693ff489pg368jv21478vr4ldxyya4lsrx87fn88caj3";
 
 in stdenv.mkDerivation {
   pname = "tg_owt";
@@ -16,8 +16,6 @@ in stdenv.mkDerivation {
     inherit rev sha256;
   };
 
-  patches = [ ./tg_owt-install.patch ];
-
   nativeBuildInputs = [ pkg-config cmake ninja yasm ];
 
   buildInputs = [ libjpeg openssl libopus ffmpeg alsaLib libpulseaudio ];
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index 3109db89ff37c..6c072118bc88c 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -15,11 +15,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
 let
   inherit (stdenv.lib) concatStringsSep makeBinPath optional;
 
-  version = "5.3.469451.0927";
+  version = "5.4.53350.1027";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
-      sha256 = "0qb9jx2zd5p6jk1g0xmh1f6xlf4gfl38ns6ixpc653qfimy8b0av";
+      sha256 = "11va3px42y81bwy10mxm7mk0kf2sni9gwb422pq9djck2dgchw5x";
     };
   };
 
diff --git a/pkgs/applications/networking/irc/ircdog/default.nix b/pkgs/applications/networking/irc/ircdog/default.nix
new file mode 100644
index 0000000000000..5badc69a3a277
--- /dev/null
+++ b/pkgs/applications/networking/irc/ircdog/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildGoPackage
+, fetchFromGitHub
+}:
+
+buildGoPackage rec {
+  pname = "ircdog";
+  version = "0.2.1";
+
+  goPackagePath = "github.com/goshuirc/ircdog";
+
+  src = fetchFromGitHub {
+    owner = "goshuirc";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1ppbznlkv7vajfbimxbyiq5y6pkfhm6ylhl408rwq1bawl28hpkl";
+    fetchSubmodules = true;
+  };
+
+  meta = with lib; {
+    description = "ircdog is a simple wrapper over the raw IRC protocol that can respond to pings, and interprets formatting codes";
+    homepage = "https://github.com/goshuirc/ircdog";
+    license = licenses.isc;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
+
+
diff --git a/pkgs/applications/networking/mullvad-vpn/default.nix b/pkgs/applications/networking/mullvad-vpn/default.nix
index aa7aaab29ac2e..52adbca18b17f 100644
--- a/pkgs/applications/networking/mullvad-vpn/default.nix
+++ b/pkgs/applications/networking/mullvad-vpn/default.nix
@@ -41,11 +41,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mullvad-vpn";
-  version = "2020.5";
+  version = "2020.6";
 
   src = fetchurl {
     url = "https://www.mullvad.net/media/app/MullvadVPN-${version}_amd64.deb";
-    sha256 = "131z6qlpjwxcn5a62f1f147f2z1xg185jmr0vbin8h0dwa1182vn";
+    sha256 = "0d9rv874avx86jppl1dky0nfq1633as0z8yz3h3f69nhmcbwhlr3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
index a2ad8b8129a69..35085d422f26c 100644
--- a/pkgs/applications/networking/remote/citrix-workspace/generic.nix
+++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
@@ -3,6 +3,7 @@
 , heimdal, krb5, libsoup, libvorbis, speex, openssl, zlib, xorg, pango, gtk2
 , gnome2, nss, nspr, gtk_engines, freetype, dconf, libpng12, libxml2
 , libjpeg, libredirect, tzdata, cacert, systemd, libcxxabi, libcxx, e2fsprogs, symlinkJoin
+, libpulseaudio
 
 , homepage, version, prefix, hash
 
@@ -97,7 +98,8 @@ stdenv.mkDerivation rec {
     xorg.libXScrnSaver
     xorg.libXtst
     zlib
-  ] ++ lib.optional (lib.versionOlder version "20.04") e2fsprogs;
+  ] ++ lib.optional (lib.versionOlder version "20.04") e2fsprogs
+    ++ lib.optional (lib.versionAtLeast version "20.10") libpulseaudio;
 
   runtimeDependencies = [
     glib
@@ -146,8 +148,8 @@ stdenv.mkDerivation rec {
     export HOME=$(mktemp -d)
 
     # Run upstream installer in the store-path.
-    sed -i -e 's,^ANSWER="",ANSWER="$INSTALLER_YES",g' -e 's,/bin/true,true,g' ./linuxx64/hinst
-    ${stdenv.shell} linuxx64/hinst CDROM "$(pwd)"
+    sed -i -e 's,^ANSWER="",ANSWER="$INSTALLER_YES",g' -e 's,/bin/true,true,g' ./${prefix}/hinst
+    ${stdenv.shell} ${prefix}/hinst CDROM "$(pwd)"
 
     if [ -f "$ICAInstDir/util/setlog" ]; then
       chmod +x "$ICAInstDir/util/setlog"
@@ -169,8 +171,8 @@ stdenv.mkDerivation rec {
 
     # See https://developer-docs.citrix.com/projects/workspace-app-for-linux-oem-guide/en/latest/reference-information/#library-files
     # Those files are fallbacks to support older libwekit.so and libjpeg.so
-    rm $out/opt/citrix-icaclient/lib/ctxjpeg_fb_8.so
-    rm $out/opt/citrix-icaclient/lib/UIDialogLibWebKit.so
+    rm $out/opt/citrix-icaclient/lib/ctxjpeg_fb_8.so || true
+    rm $out/opt/citrix-icaclient/lib/UIDialogLibWebKit.so || true
 
     # We support only Gstreamer 1.0
     rm $ICAInstDir/util/{gst_aud_{play,read},gst_*0.10,libgstflatstm0.10.so}
diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix
index abdd54f4af6e9..bbeed5b779c2b 100644
--- a/pkgs/applications/networking/remote/citrix-workspace/sources.nix
+++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix
@@ -43,6 +43,17 @@ let
       x86hash   = "1b4gdmnnpa61ydiv2fnmap8cnfhskrq6swcs6i1nqrp5zvvkqrv4";
       x64suffix = "15";
       x86suffix = "15";
+      homepage  = "https://www.citrix.com/de-de/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-2009.html";
+    };
+
+    "20.10.0" = {
+      major     = "20";
+      minor     = "10";
+      patch     = "0";
+      x64hash   = "13g7r92mhwqwqkm6a4k4yn232ighkmxifs7j8wdi1yva0dvklqdf";
+      x86hash   = "04cr2da25v8x098ccyjwa47d4krk3jpldqkyf4kk2j3hwzbqh9yx";
+      x64suffix = "6";
+      x86suffix = "6";
       homepage  = "https://www.citrix.com/de-de/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
     };
   };
@@ -52,7 +63,7 @@ let
   #
   # The lifespans of Citrix products can be found here:
   # https://www.citrix.com/support/product-lifecycle/milestones/receiver.html
-  unsupportedVersions = [ "19.6.0" "19.8.0" "19.10.0" "19.12.0" ];
+  unsupportedVersions = [ ];
 in {
   inherit supportedVersions unsupportedVersions;
 }
diff --git a/pkgs/applications/office/zanshin/default.nix b/pkgs/applications/office/zanshin/default.nix
index 18e7629749646..e3b9408ed96db 100644
--- a/pkgs/applications/office/zanshin/default.nix
+++ b/pkgs/applications/office/zanshin/default.nix
@@ -1,10 +1,18 @@
-{
-  mkDerivation, lib,
-  fetchurl,
-  extra-cmake-modules,
-  qtbase, boost,
-  akonadi-calendar, akonadi-notes, akonadi-search, kidentitymanagement, kontactinterface, kldap,
-  krunner, kwallet, kcalendarcore
+{ mkDerivation
+, lib
+, fetchurl
+, extra-cmake-modules
+, qtbase
+, boost
+, akonadi-calendar
+, akonadi-notes
+, akonadi-search
+, kidentitymanagement
+, kontactinterface
+, kldap
+, krunner
+, kwallet
+, kcalendarcore
 }:
 
 mkDerivation rec {
@@ -21,9 +29,17 @@ mkDerivation rec {
   ];
 
   buildInputs = [
-    qtbase boost
-    akonadi-calendar akonadi-notes akonadi-search kidentitymanagement kontactinterface kldap
-    krunner kwallet kcalendarcore
+    qtbase
+    boost
+    akonadi-calendar
+    akonadi-notes
+    akonadi-search
+    kidentitymanagement
+    kontactinterface
+    kldap
+    krunner
+    kwallet
+    kcalendarcore
   ];
 
   meta = with lib; {
@@ -32,5 +48,6 @@ mkDerivation rec {
     maintainers = with maintainers; [ zraexy ];
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
+    broken = true;
   };
 }
diff --git a/pkgs/applications/radio/fldigi/default.nix b/pkgs/applications/radio/fldigi/default.nix
index af93b7ee65d6d..3811c8fd6f263 100644
--- a/pkgs/applications/radio/fldigi/default.nix
+++ b/pkgs/applications/radio/fldigi/default.nix
@@ -2,12 +2,12 @@
   libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
 
 stdenv.mkDerivation rec {
-  version = "4.1.14";
+  version = "4.1.15";
   pname = "fldigi";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "0hr6xbv01xf7z4r2jxxhn8xjdmca2198q4m9glh4877dllvfq6xj";
+    sha256 = "1fzbcv2dgg6byb2l8m2d6i69yn0a44pq52mpmms756jdf6z622i6";
   };
 
   buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio
diff --git a/pkgs/applications/radio/noaa-apt/default.nix b/pkgs/applications/radio/noaa-apt/default.nix
index 5034d5fd93c1a..a81f2ea8f7d97 100644
--- a/pkgs/applications/radio/noaa-apt/default.nix
+++ b/pkgs/applications/radio/noaa-apt/default.nix
@@ -13,13 +13,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "noaa-apt";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "martinber";
     repo = "noaa-apt";
     rev = "v${version}";
-    sha256 = "0fqki4a9c54rixdz5bpswvn433f9saw6yazgw4av3xdd7g2fdvvj";
+    sha256 = "0fmbg6lw7lmm402hzddpzgi7y9mc6kic14x8rif7fampk20mv3ms";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec {
     pango
   ];
 
-  cargoSha256 = "1pzcq31inazmc9cz31fspzqkp0lpkjid8ai3g17sin1pfzby5jlh";
+  cargoSha256 = "0w4rbbz8lsh31xkgibzndiic47690nfcjrn1411dskf7ali6djy8";
 
   preBuild = ''
     # Used by macro pointing to resource location at compile time.
@@ -59,6 +59,7 @@ rustPlatform.buildRustPackage rec {
     homepage = "http://noaa-apt.mbernardi.com.ar/";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ trepetti ];
+    platforms = platforms.all;
     changelog = "https://github.com/martinber/noaa-apt/releases/tag/v${version}";
   };
 }
diff --git a/pkgs/applications/science/biology/last/default.nix b/pkgs/applications/science/biology/last/default.nix
index 13f6a23913fcf..775852931163f 100644
--- a/pkgs/applications/science/biology/last/default.nix
+++ b/pkgs/applications/science/biology/last/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "last";
-  version = "1066";
+  version = "1133";
 
   src = fetchurl {
     url = "http://last.cbrc.jp/last-${version}.zip";
-    sha256 = "098j3f3a80rmhd01ds7rnb9y1xykmll2yh5ivpnvskssd8z2vc4r";
+    sha256 = "0a600p1fymm1ylaxzjwg46zdwz6ilaaak1f4n8xr3hp3ir9rgfjq";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/science/biology/lumpy/default.nix b/pkgs/applications/science/biology/lumpy/default.nix
index 04512e8e372e8..f6267a2e017f8 100644
--- a/pkgs/applications/science/biology/lumpy/default.nix
+++ b/pkgs/applications/science/biology/lumpy/default.nix
@@ -7,13 +7,14 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "lumpy";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "arq5x";
     repo = "lumpy-sv";
-    rev = version;
-    sha256 = "0azhzvmh9az9jcq0xprlzdz6w16azgszv4kshb903bwbnqirmk18";
+    rev = "v${version}";
+    sha256 = "0r71sg7qch8r6p6dw995znrqdj6q49hjdylhzbib2qmv8nvglhs9";
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ which ];
@@ -26,6 +27,8 @@ in stdenv.mkDerivation rec {
     # Use Nix htslib over bundled version
     sed -i 's/lumpy_filter: htslib/lumpy_filter:/' Makefile
     sed -i 's|../../lib/htslib/libhts.a|-lhts|' src/filter/Makefile
+    # Also make sure we use the includes from Nix's htslib
+    sed -i 's|../../lib/htslib/|${htslib}|' src/filter/Makefile
   '';
 
   # Upstream's makefile doesn't have an install target
diff --git a/pkgs/applications/science/biology/samtools/default.nix b/pkgs/applications/science/biology/samtools/default.nix
index e750eea89ac9f..27ed79a1f6ca5 100644
--- a/pkgs/applications/science/biology/samtools/default.nix
+++ b/pkgs/applications/science/biology/samtools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "samtools";
-  version = "1.10";
+  version = "1.11";
 
   src = fetchurl {
     url = "https://github.com/samtools/samtools/releases/download/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "119ms0dpydw8dkh3zc4yyw9zhdzgv12px4l2kayigv31bpqcb7kv";
+    sha256 = "1dp5wknak4arnw5ghhif9mmljlfnw5bgm91wib7z0j8wdjywx0z2";
   };
 
   nativeBuildInputs = [ perl ];
@@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     homepage = "http://www.htslib.org/";
     platforms = platforms.unix;
-    maintainers = [ maintainers.mimame ];
+    maintainers = with maintainers; [ mimame unode ];
   };
 }
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 9b7e007ce5035..946cba41b143b 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -109,7 +109,7 @@ self = stdenv.mkDerivation {
   nativeBuildInputs = [ pkgconfig ]
   ++ stdenv.lib.optional (!versionAtLeast "8.6") gnumake42
   ;
-  buildInputs = [ ncurses ]
+  buildInputs = [ ncurses ocamlPackages.ocaml ocamlPackages.findlib ]
   ++ stdenv.lib.optional (!versionAtLeast "8.10") ocamlPackages.camlp5
   ++ stdenv.lib.optional (!versionAtLeast "8.12") ocamlPackages.num
   ++ stdenv.lib.optionals buildIde
@@ -117,10 +117,7 @@ self = stdenv.mkDerivation {
      then [ ocamlPackages.lablgtk3-sourceview3 glib gnome3.defaultIconTheme wrapGAppsHook ]
      else [ ocamlPackages.lablgtk ]);
 
-  propagatedBuildInputs = [ ocamlPackages.ocaml ocamlPackages.findlib ]
-    ++ stdenv.lib.optional (versionAtLeast "8.12") ocamlPackages.num;
-
-  propagatedUserEnvPkgs = [ ocamlPackages.ocaml ocamlPackages.findlib ];
+  propagatedBuildInputs = stdenv.lib.optional (versionAtLeast "8.12") ocamlPackages.num;
 
   postPatch = ''
     UNAME=$(type -tp uname)
diff --git a/pkgs/applications/science/math/geogebra/default.nix b/pkgs/applications/science/math/geogebra/default.nix
index 5cebef83a4a97..a6950ad3451ca 100644
--- a/pkgs/applications/science/math/geogebra/default.nix
+++ b/pkgs/applications/science/math/geogebra/default.nix
@@ -1,18 +1,7 @@
-{ stdenv, fetchurl, jre, makeDesktopItem, makeWrapper, language ? "en_US" }:
-
-stdenv.mkDerivation rec {
+{ stdenv, fetchurl, jre, makeDesktopItem, makeWrapper, unzip, language ? "en_US" }:
+let
   pname = "geogebra";
-  version = "5-0-593-0";
-
-  preferLocalBuild = true;
-
-  src = fetchurl {
-    urls = [
-      "https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
-      "http://web.archive.org/https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
-    ];
-    sha256 = "d84c27a3299e6df08881733d22215a18decedcba4c2d97a9e5424c39cd57db35";
-  };
+  version = "5-0-609-0";
 
   srcIcon = fetchurl {
     url = "http://static.geogebra.org/images/geogebra-logo.svg";
@@ -30,23 +19,6 @@ stdenv.mkDerivation rec {
     mimeType = "application/vnd.geogebra.file;application/vnd.geogebra.tool;";
   };
 
-  buildInputs = [ makeWrapper ];
-
-  installPhase = ''
-    install -D geogebra/* -t "$out/libexec/geogebra/"
-
-    makeWrapper "$out/libexec/geogebra/geogebra" "$out/bin/geogebra" \
-      --set JAVACMD "${jre}/bin/java" \
-      --set GG_PATH "$out/libexec/geogebra" \
-      --add-flags "--language=${language}"
-
-    install -Dm644 "${desktopItem}/share/applications/"* \
-      -t $out/share/applications/
-
-    install -Dm644 "${srcIcon}" \
-      "$out/share/icons/hicolor/scalable/apps/geogebra.svg"
-  '';
-
   meta = with stdenv.lib; {
     description = "Dynamic mathematics software with graphics, algebra and spreadsheets";
     longDescription = ''
@@ -57,7 +29,61 @@ stdenv.mkDerivation rec {
     homepage = "https://www.geogebra.org/";
     maintainers = with maintainers; [ ma27 ];
     license = with licenses; [ gpl3 cc-by-nc-sa-30 geogebra ];
-    platforms = platforms.all;
+    platforms = with platforms; linux ++ darwin;
     hydraPlatforms = [];
   };
-}
+
+  linuxPkg = stdenv.mkDerivation {
+    inherit pname version meta srcIcon desktopItem;
+
+    preferLocalBuild = true;
+
+    src = fetchurl {
+      urls = [
+        "https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
+        "http://web.archive.org/web/20201022200454/https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
+      ];
+      sha256 = "0xbhg8hm3dqm3qkraj48pqwslrnjyxpq9mcgylr2m8i1gmqw7xwf";
+    };
+
+    nativeBuildInputs = [ makeWrapper ];
+
+    installPhase = ''
+      install -D geogebra/* -t "$out/libexec/geogebra/"
+
+      makeWrapper "$out/libexec/geogebra/geogebra" "$out/bin/geogebra" \
+        --set JAVACMD "${jre}/bin/java" \
+        --set GG_PATH "$out/libexec/geogebra" \
+        --add-flags "--language=${language}"
+
+      install -Dm644 "${desktopItem}/share/applications/"* \
+        -t $out/share/applications/
+
+      install -Dm644 "${srcIcon}" \
+        "$out/share/icons/hicolor/scalable/apps/geogebra.svg"
+    '';
+  };
+
+  darwinPkg = stdenv.mkDerivation {
+    inherit pname version meta;
+
+    preferLocalBuild = true;
+
+    src = fetchurl {
+      url = "https://download.geogebra.org/installers/5.0/GeoGebra-MacOS-Installer-withJava-${version}.zip";
+      sha256 = "16fgqwxz31cfmia0pyzpk05aqzrqr11sjbw37q9zb3xfh3p1r4gz";
+    };
+
+    dontUnpack = true;
+
+    nativeBuildInputs = [ unzip ];
+
+    installPhase = ''
+      install -dm755 $out/Applications
+      unzip $src -d $out/Applications
+    '';
+  };
+in
+if stdenv.isDarwin
+then darwinPkg
+else linuxPkg
diff --git a/pkgs/applications/science/math/geogebra/geogebra6.nix b/pkgs/applications/science/math/geogebra/geogebra6.nix
index 65caff82ead10..7bd5826489371 100644
--- a/pkgs/applications/science/math/geogebra/geogebra6.nix
+++ b/pkgs/applications/science/math/geogebra/geogebra6.nix
@@ -1,46 +1,70 @@
 { stdenv, unzip, fetchurl, electron_6, makeWrapper, geogebra }:
-stdenv.mkDerivation rec{
+let
+  pname = "geogebra";
+  version = "6-0-609-0";
 
-  name = "geogebra-${version}";
-  version = "6-0-600-0";
+  srcIcon = geogebra.srcIcon;
+  desktopItem = geogebra.desktopItem;
 
-  src = fetchurl {
-    urls = [
-        "https://download.geogebra.org/installers/6.0/GeoGebra-Linux64-Portable-${version}.zip"
-        "https://web.archive.org/web/20200904093945/https://download.geogebra.org/installers/6.0/GeoGebra-Linux64-Portable-${version}.zip"
-      ];
-    sha256 = "1l49rvfkil2cz6r7sa2mi0p6hvb6p66jv3x6xj8hjqls4l3sfhkm";
+  meta = with stdenv.lib; geogebra.meta // {
+    license = licenses.geogebra;
+    maintainers = with maintainers; [ voidless ];
+    platforms = with platforms; linux ++ darwin;
   };
 
-  dontConfigure = true;
-  dontBuild = true;
+  linuxPkg = stdenv.mkDerivation {
+    inherit pname version meta;
 
-  nativeBuildInputs = [
-    unzip
-    makeWrapper
-  ];
+    src = fetchurl {
+      urls = [
+          "https://download.geogebra.org/installers/6.0/GeoGebra-Linux64-Portable-${version}.zip"
+          "https://web.archive.org/web/20201022200156/https://download.geogebra.org/installers/6.0/GeoGebra-Linux64-Portable-${version}.zip"
+        ];
+      sha256 = "0rzcbq587x8827g9v03awa9hz27vyfjc0cz45ymbchqp31lsx49b";
+    };
 
-  unpackPhase = ''
-    unzip $src
-  '';
+    dontConfigure = true;
+    dontBuild = true;
 
-  installPhase = ''
-    mkdir -p $out/libexec/geogebra/ $out/bin
-    cp -r GeoGebra-linux-x64/{resources,locales} "$out/"
-    makeWrapper ${stdenv.lib.getBin electron_6}/bin/electron $out/bin/geogebra --add-flags "$out/resources/app"
-    install -Dm644 "${desktopItem}/share/applications/"* \
-      -t $out/share/applications/
+    nativeBuildInputs = [
+      unzip
+      makeWrapper
+    ];
 
-    install -Dm644 "${srcIcon}" \
-      "$out/share/icons/hicolor/scalable/apps/geogebra.svg"
-  '';
+    unpackPhase = ''
+      unzip $src
+    '';
 
-  srcIcon = geogebra.srcIcon;
+    installPhase = ''
+      mkdir -p $out/libexec/geogebra/ $out/bin
+      cp -r GeoGebra-linux-x64/{resources,locales} "$out/"
+      makeWrapper ${stdenv.lib.getBin electron_6}/bin/electron $out/bin/geogebra --add-flags "$out/resources/app"
+      install -Dm644 "${desktopItem}/share/applications/"* \
+        -t $out/share/applications/
 
-  desktopItem = geogebra.desktopItem;
-  meta = with stdenv.lib; geogebra.meta // {
-    license = licenses.geogebra;
-    maintainers = with maintainers; [ voidless ];
-    platforms = platforms.linux;
+      install -Dm644 "${srcIcon}" \
+        "$out/share/icons/hicolor/scalable/apps/geogebra.svg"
+    '';
+  };
+
+  darwinPkg = stdenv.mkDerivation {
+    inherit pname version meta;
+
+    src = fetchurl {
+      url = "https://download.geogebra.org/installers/6.0/GeoGebra-Classic-6-MacOS-Portable-${version}.zip";
+      sha256 = "0275869zgwbl1qjj593q6629hnxbwk9c15rkm29a3lh10pinb099";
+    };
+
+    dontUnpack = true;
+
+    nativeBuildInputs = [ unzip ];
+
+    installPhase = ''
+      install -dm755 $out/Applications
+      unzip $src -d $out/Applications
+    '';
   };
-}
+in
+if stdenv.isDarwin
+then darwinPkg
+else linuxPkg
diff --git a/pkgs/applications/misc/alacritty/default.nix b/pkgs/applications/terminal-emulators/alacritty/default.nix
index 72e00cb15a708..72e00cb15a708 100644
--- a/pkgs/applications/misc/alacritty/default.nix
+++ b/pkgs/applications/terminal-emulators/alacritty/default.nix
diff --git a/pkgs/applications/misc/aminal/default.nix b/pkgs/applications/terminal-emulators/aminal/default.nix
index 7f04a93d6a326..7f04a93d6a326 100644
--- a/pkgs/applications/misc/aminal/default.nix
+++ b/pkgs/applications/terminal-emulators/aminal/default.nix
diff --git a/pkgs/applications/misc/cool-retro-term/default.nix b/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
index 739ad07adbf3a..739ad07adbf3a 100644
--- a/pkgs/applications/misc/cool-retro-term/default.nix
+++ b/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
diff --git a/pkgs/applications/misc/eterm/default.nix b/pkgs/applications/terminal-emulators/eterm/default.nix
index b51acd9fa7284..b51acd9fa7284 100644
--- a/pkgs/applications/misc/eterm/default.nix
+++ b/pkgs/applications/terminal-emulators/eterm/default.nix
diff --git a/pkgs/applications/misc/evilvte/default.nix b/pkgs/applications/terminal-emulators/evilvte/default.nix
index 7a5284a527a67..7a5284a527a67 100644
--- a/pkgs/applications/misc/evilvte/default.nix
+++ b/pkgs/applications/terminal-emulators/evilvte/default.nix
diff --git a/pkgs/applications/misc/foot/default.nix b/pkgs/applications/terminal-emulators/foot/default.nix
index 3d95f7c5772dd..3d95f7c5772dd 100644
--- a/pkgs/applications/misc/foot/default.nix
+++ b/pkgs/applications/terminal-emulators/foot/default.nix
diff --git a/pkgs/applications/misc/guake/default.nix b/pkgs/applications/terminal-emulators/guake/default.nix
index d403ddc8b26ca..d403ddc8b26ca 100644
--- a/pkgs/applications/misc/guake/default.nix
+++ b/pkgs/applications/terminal-emulators/guake/default.nix
diff --git a/pkgs/applications/misc/havoc/default.nix b/pkgs/applications/terminal-emulators/havoc/default.nix
index a6d5278fc3c5a..a6d5278fc3c5a 100644
--- a/pkgs/applications/misc/havoc/default.nix
+++ b/pkgs/applications/terminal-emulators/havoc/default.nix
diff --git a/pkgs/applications/misc/hyper/default.nix b/pkgs/applications/terminal-emulators/hyper/default.nix
index 1535b1a2568eb..1535b1a2568eb 100644
--- a/pkgs/applications/misc/hyper/default.nix
+++ b/pkgs/applications/terminal-emulators/hyper/default.nix
diff --git a/pkgs/applications/misc/iterm2/default.nix b/pkgs/applications/terminal-emulators/iterm2/default.nix
index e273eda45c315..e273eda45c315 100644
--- a/pkgs/applications/misc/iterm2/default.nix
+++ b/pkgs/applications/terminal-emulators/iterm2/default.nix
diff --git a/pkgs/applications/misc/iterm2/disable_updates.patch b/pkgs/applications/terminal-emulators/iterm2/disable_updates.patch
index e717c58f30f16..e717c58f30f16 100644
--- a/pkgs/applications/misc/iterm2/disable_updates.patch
+++ b/pkgs/applications/terminal-emulators/iterm2/disable_updates.patch
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix
index e2eda846d60f4..e2eda846d60f4 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/terminal-emulators/kitty/default.nix
diff --git a/pkgs/applications/misc/kitty/fix-paths.patch b/pkgs/applications/terminal-emulators/kitty/fix-paths.patch
index 380f6d7491464..380f6d7491464 100644
--- a/pkgs/applications/misc/kitty/fix-paths.patch
+++ b/pkgs/applications/terminal-emulators/kitty/fix-paths.patch
diff --git a/pkgs/applications/misc/lilyterm/default.nix b/pkgs/applications/terminal-emulators/lilyterm/default.nix
index 28f9625b5b667..28f9625b5b667 100644
--- a/pkgs/applications/misc/lilyterm/default.nix
+++ b/pkgs/applications/terminal-emulators/lilyterm/default.nix
diff --git a/pkgs/applications/misc/lxterminal/default.nix b/pkgs/applications/terminal-emulators/lxterminal/default.nix
index 8c002bd14b086..8c002bd14b086 100644
--- a/pkgs/applications/misc/lxterminal/default.nix
+++ b/pkgs/applications/terminal-emulators/lxterminal/default.nix
diff --git a/pkgs/applications/misc/lxterminal/respect-xml-catalog-files-var.patch b/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch
index 598f506118f29..598f506118f29 100644
--- a/pkgs/applications/misc/lxterminal/respect-xml-catalog-files-var.patch
+++ b/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch
diff --git a/pkgs/applications/misc/microcom/default.nix b/pkgs/applications/terminal-emulators/microcom/default.nix
index 8377505ec1c54..8377505ec1c54 100644
--- a/pkgs/applications/misc/microcom/default.nix
+++ b/pkgs/applications/terminal-emulators/microcom/default.nix
diff --git a/pkgs/applications/misc/mlterm/default.nix b/pkgs/applications/terminal-emulators/mlterm/default.nix
index 7c7906fc841f0..7c7906fc841f0 100644
--- a/pkgs/applications/misc/mlterm/default.nix
+++ b/pkgs/applications/terminal-emulators/mlterm/default.nix
diff --git a/pkgs/applications/misc/mrxvt/default.nix b/pkgs/applications/terminal-emulators/mrxvt/default.nix
index 4dc70133ec479..4dc70133ec479 100644
--- a/pkgs/applications/misc/mrxvt/default.nix
+++ b/pkgs/applications/terminal-emulators/mrxvt/default.nix
diff --git a/pkgs/applications/misc/nimmm/default.nix b/pkgs/applications/terminal-emulators/nimmm/default.nix
index 383057ca65518..383057ca65518 100644
--- a/pkgs/applications/misc/nimmm/default.nix
+++ b/pkgs/applications/terminal-emulators/nimmm/default.nix
diff --git a/pkgs/applications/misc/roxterm/default.nix b/pkgs/applications/terminal-emulators/roxterm/default.nix
index d02296f0e16d1..d02296f0e16d1 100644
--- a/pkgs/applications/misc/roxterm/default.nix
+++ b/pkgs/applications/terminal-emulators/roxterm/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/default.nix
index 74bfbe83e91f3..74bfbe83e91f3 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix
index a4e03fa347f0e..a4e03fa347f0e 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-autocomplete-all-the-things/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-bidi/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-bidi/default.nix
index 4b6b4eb8184cc..4b6b4eb8184cc 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-bidi/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-bidi/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix
index f81709b973900..f81709b973900 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perl/default.nix
index 0c95acd72057f..0c95acd72057f 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perl/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perls/default.nix
index 53bb938c3330d..53bb938c3330d 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-perls/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-resize-font/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-resize-font/default.nix
index a056e603f0044..a056e603f0044 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-resize-font/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-resize-font/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
index 71a55f9293c66..71a55f9293c66 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
index 5a84a9b472a5b..5a84a9b472a5b 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
index aebbedacef644..eb520f38bedbe 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
    rev = "36d3e861664aeae36a45f96100f10f8fe2218035";
    sha256 = "1h3vrsbli5q9kr84j5ijbivlhpwlh3l8cv233pg362v2zz4ja8i7";
   };
-  
+
   installPhase = ''
     sed -i 's|#! perl|#! ${perl}/bin/perl|g' vtwheel
     mkdir -p $out/lib/urxvt/perl
@@ -23,5 +23,5 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ danbst ];
     platforms = with platforms; unix;
   };
-  
+
 }
diff --git a/pkgs/applications/misc/rxvt-unicode/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
index 6512f402ffbd8..6512f402ffbd8 100644
--- a/pkgs/applications/misc/rxvt-unicode/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
diff --git a/pkgs/applications/misc/rxvt-unicode/patches/256-color-resources.patch b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/256-color-resources.patch
index c8d2acfbdc519..c8d2acfbdc519 100644
--- a/pkgs/applications/misc/rxvt-unicode/patches/256-color-resources.patch
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/256-color-resources.patch
diff --git a/pkgs/applications/misc/rxvt-unicode/patches/9.06-font-width.patch b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/9.06-font-width.patch
index 636083218fa56..636083218fa56 100644
--- a/pkgs/applications/misc/rxvt-unicode/patches/9.06-font-width.patch
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/9.06-font-width.patch
diff --git a/pkgs/applications/misc/rxvt-unicode/patches/makefile-phony.patch b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/makefile-phony.patch
index 5e42e17c156a6..5e42e17c156a6 100644
--- a/pkgs/applications/misc/rxvt-unicode/patches/makefile-phony.patch
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/patches/makefile-phony.patch
diff --git a/pkgs/applications/misc/rxvt-unicode/wrapper.nix b/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix
index 38978799b5a8d..b03acb99530af 100644
--- a/pkgs/applications/misc/rxvt-unicode/wrapper.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix
@@ -29,7 +29,7 @@ let
   # This provides simple way to customize urxvt using
   # the `.override` mechanism.
   wrapper = { configure, ... }:
-    let 
+    let
       config = configure { inherit availablePlugins; };
       plugins = config.plugins or (builtins.attrValues availablePlugins);
       extraDeps = config.extraDeps or [ ];
diff --git a/pkgs/applications/misc/rxvt/default.nix b/pkgs/applications/terminal-emulators/rxvt/default.nix
index c71973da13beb..c71973da13beb 100644
--- a/pkgs/applications/misc/rxvt/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt/default.nix
diff --git a/pkgs/applications/misc/sakura/default.nix b/pkgs/applications/terminal-emulators/sakura/default.nix
index 7cccec3b72fcb..7cccec3b72fcb 100644
--- a/pkgs/applications/misc/sakura/default.nix
+++ b/pkgs/applications/terminal-emulators/sakura/default.nix
diff --git a/pkgs/applications/misc/st/default.nix b/pkgs/applications/terminal-emulators/st/default.nix
index a91229f2921e3..a91229f2921e3 100644
--- a/pkgs/applications/misc/st/default.nix
+++ b/pkgs/applications/terminal-emulators/st/default.nix
diff --git a/pkgs/applications/misc/st/xst.nix b/pkgs/applications/terminal-emulators/st/xst.nix
index 3e29abee5d65d..3e29abee5d65d 100644
--- a/pkgs/applications/misc/st/xst.nix
+++ b/pkgs/applications/terminal-emulators/st/xst.nix
diff --git a/pkgs/applications/misc/stupidterm/default.nix b/pkgs/applications/terminal-emulators/stupidterm/default.nix
index 2016059d81e78..2016059d81e78 100644
--- a/pkgs/applications/misc/stupidterm/default.nix
+++ b/pkgs/applications/terminal-emulators/stupidterm/default.nix
diff --git a/pkgs/applications/misc/terminator/default.nix b/pkgs/applications/terminal-emulators/terminator/default.nix
index 5de8109e3a4d2..5de8109e3a4d2 100644
--- a/pkgs/applications/misc/terminator/default.nix
+++ b/pkgs/applications/terminal-emulators/terminator/default.nix
diff --git a/pkgs/applications/misc/terminus/default.nix b/pkgs/applications/terminal-emulators/terminus/default.nix
index 4c38e530247e8..4c38e530247e8 100644
--- a/pkgs/applications/misc/terminus/default.nix
+++ b/pkgs/applications/terminal-emulators/terminus/default.nix
diff --git a/pkgs/applications/misc/termite/add_errno_header.patch b/pkgs/applications/terminal-emulators/termite/add_errno_header.patch
index 81283f86a21db..81283f86a21db 100644
--- a/pkgs/applications/misc/termite/add_errno_header.patch
+++ b/pkgs/applications/terminal-emulators/termite/add_errno_header.patch
diff --git a/pkgs/applications/misc/termite/default.nix b/pkgs/applications/terminal-emulators/termite/default.nix
index 63565e207f77f..63565e207f77f 100644
--- a/pkgs/applications/misc/termite/default.nix
+++ b/pkgs/applications/terminal-emulators/termite/default.nix
diff --git a/pkgs/applications/misc/termite/remove_ldflags_macos.patch b/pkgs/applications/terminal-emulators/termite/remove_ldflags_macos.patch
index f8c68518bb4de..f8c68518bb4de 100644
--- a/pkgs/applications/misc/termite/remove_ldflags_macos.patch
+++ b/pkgs/applications/terminal-emulators/termite/remove_ldflags_macos.patch
diff --git a/pkgs/applications/misc/termite/url_regexp_trailing.patch b/pkgs/applications/terminal-emulators/termite/url_regexp_trailing.patch
index 96deaa073d71b..96deaa073d71b 100644
--- a/pkgs/applications/misc/termite/url_regexp_trailing.patch
+++ b/pkgs/applications/terminal-emulators/termite/url_regexp_trailing.patch
diff --git a/pkgs/applications/misc/termite/wrapper.nix b/pkgs/applications/terminal-emulators/termite/wrapper.nix
index 379223d9076d0..379223d9076d0 100644
--- a/pkgs/applications/misc/termite/wrapper.nix
+++ b/pkgs/applications/terminal-emulators/termite/wrapper.nix
diff --git a/pkgs/applications/misc/termonad/default.nix b/pkgs/applications/terminal-emulators/termonad/default.nix
index 4388cbcfb4419..4388cbcfb4419 100644
--- a/pkgs/applications/misc/termonad/default.nix
+++ b/pkgs/applications/terminal-emulators/termonad/default.nix
diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/terminal-emulators/tilda/default.nix
index 0a672b039f6be..0a672b039f6be 100644
--- a/pkgs/applications/misc/tilda/default.nix
+++ b/pkgs/applications/terminal-emulators/tilda/default.nix
diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/terminal-emulators/tilix/default.nix
index 4707685e3dab3..4707685e3dab3 100644
--- a/pkgs/applications/misc/tilix/default.nix
+++ b/pkgs/applications/terminal-emulators/tilix/default.nix
diff --git a/pkgs/applications/misc/wayst/default.nix b/pkgs/applications/terminal-emulators/wayst/default.nix
index 99ee326aebf25..99ee326aebf25 100644
--- a/pkgs/applications/misc/wayst/default.nix
+++ b/pkgs/applications/terminal-emulators/wayst/default.nix
diff --git a/pkgs/applications/misc/wayst/utf8proc.patch b/pkgs/applications/terminal-emulators/wayst/utf8proc.patch
index 0923c5dbe18d7..0923c5dbe18d7 100644
--- a/pkgs/applications/misc/wayst/utf8proc.patch
+++ b/pkgs/applications/terminal-emulators/wayst/utf8proc.patch
diff --git a/pkgs/applications/misc/x3270/default.nix b/pkgs/applications/terminal-emulators/x3270/default.nix
index 747d26538764c..747d26538764c 100644
--- a/pkgs/applications/misc/x3270/default.nix
+++ b/pkgs/applications/terminal-emulators/x3270/default.nix
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/terminal-emulators/xterm/default.nix
index 109444fc51802..109444fc51802 100644
--- a/pkgs/applications/misc/xterm/default.nix
+++ b/pkgs/applications/terminal-emulators/xterm/default.nix
diff --git a/pkgs/applications/misc/xterm/sixel-256.support.patch b/pkgs/applications/terminal-emulators/xterm/sixel-256.support.patch
index 480e67e89ca3e..480e67e89ca3e 100644
--- a/pkgs/applications/misc/xterm/sixel-256.support.patch
+++ b/pkgs/applications/terminal-emulators/xterm/sixel-256.support.patch
diff --git a/pkgs/applications/misc/xtermcontrol/default.nix b/pkgs/applications/terminal-emulators/xtermcontrol/default.nix
index f7c0edf22420f..f7c0edf22420f 100644
--- a/pkgs/applications/misc/xtermcontrol/default.nix
+++ b/pkgs/applications/terminal-emulators/xtermcontrol/default.nix
diff --git a/pkgs/applications/misc/yaft/default.nix b/pkgs/applications/terminal-emulators/yaft/default.nix
index e66f397a38307..e66f397a38307 100644
--- a/pkgs/applications/misc/yaft/default.nix
+++ b/pkgs/applications/terminal-emulators/yaft/default.nix
diff --git a/pkgs/applications/version-management/git-and-tools/git-gone/default.nix b/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
index 46decaf3cc127..13411ed4c41b2 100644
--- a/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-gone";
-  version = "0.3.6";
+  version = "0.3.7";
 
   src = fetchFromGitHub {
     owner = "lunaryorn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0wpmabd5lshsga3dhv1hix7i99f1f82rpl6kjmpi315whg11kki3";
+    sha256 = "0hhy1yazda9r4n753a5m9jf31fbzmm4v8wvl3pksspj2syglmll8";
   };
 
-  cargoSha256 = "0ayqsrhy6hpi20gfryhnwl2c1na4nnmzxkp7him104cc07vsdllq";
+  cargoSha256 = "1g2jijx8y34lid9qwa26v4svab5v9ki6gn9vcfiy61dqa964c3l9";
 
   nativeBuildInputs = [ pkgconfig makeWrapper installShellFiles ];
 
diff --git a/pkgs/applications/version-management/git-and-tools/git-trim/default.nix b/pkgs/applications/version-management/git-and-tools/git-trim/default.nix
index 137e6eb71589b..33534334bea70 100644
--- a/pkgs/applications/version-management/git-and-tools/git-trim/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-trim/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-trim";
-  version = "0.4.0";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "foriequal0";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0w6qrr53wal4p4jvz35f9mpqwz1vfcymj17sz418n9p9lw45f24n";
+    sha256 = "1rb9dhj7b7mjrhsvm9vw5gzjfxj10idnzv488jkfdz7sfhd3fcvz";
   };
 
-  cargoSha256 = "1mlvkvgcln59bi249z87v8i0ixq1a7walkzsjml6d219rmy5550h";
+  cargoSha256 = "1q62gqqhf78ljcvzp7yrnr0vk65rif2f7axzjq0b87prbcsr7ij4";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/applications/version-management/git-review/default.nix b/pkgs/applications/version-management/git-review/default.nix
index c7702cfa19516..d0bbca15ea179 100644
--- a/pkgs/applications/version-management/git-review/default.nix
+++ b/pkgs/applications/version-management/git-review/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, pythonPackages} :
+{ lib, fetchurl, buildPythonApplication, pbr, requests, setuptools }:
 
-pythonPackages.buildPythonApplication rec {
+buildPythonApplication rec {
   pname = "git-review";
   version = "1.28.0";
 
@@ -8,21 +8,20 @@ pythonPackages.buildPythonApplication rec {
   # upstream repository (and we are installing from tarball instead)
   PBR_VERSION = version;
 
-  src = fetchFromGitHub {
-    owner = "openstack-infra";
-    repo = pname;
-    rev = version;
-    sha256 = "1hgw1dkl94m3idv4izc7wf2j7al2c7nnsqywy7g53nzkv9pfv47s";
+  src = fetchurl {
+    url = "https://opendev.org/opendev/${pname}/archive/${version}.tar.gz";
+    sha256 = "1y1jzb0hlprynwwr4q5y4x06641qrhj0k69mclabnmhfam9g8ygm";
   };
 
-  propagatedBuildInputs = with pythonPackages; [ pbr requests setuptools ];
+  propagatedBuildInputs = [ pbr requests setuptools ];
 
   # Don't do tests because they require gerrit which is not packaged
   doCheck = false;
 
-  meta = {
-    homepage = "https://github.com/openstack-infra/git-review";
+  meta = with lib; {
+    homepage = "https://opendev.org/opendev/git-review";
     description = "Tool to submit code to Gerrit";
-    license = stdenv.lib.licenses.asl20;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ metadark ];
   };
 }
diff --git a/pkgs/applications/video/linuxstopmotion/default.nix b/pkgs/applications/video/linuxstopmotion/default.nix
index 3a2d1b79e9e00..365fb1ea417ab 100644
--- a/pkgs/applications/video/linuxstopmotion/default.nix
+++ b/pkgs/applications/video/linuxstopmotion/default.nix
@@ -1,32 +1,26 @@
-{ stdenv, fetchgit, pkgconfig, qt4, SDL, SDL_image, libvorbis, libtar, libxml2
-, gamin, qmake4Hook
-}:
+{ mkDerivation, lib, fetchgit, pkgconfig, qmake, qtbase, qttools, qtmultimedia, libvorbis, libtar, libxml2 }:
 
-stdenv.mkDerivation rec {
-  version = "0.8";
+mkDerivation rec {
+  version = "0.8.5";
   pname = "linuxstopmotion";
-  
+
   src = fetchgit {
-    url = "git://git.code.sf.net/p/linuxstopmotion/code";
-    rev = "refs/tags/${version}";
-    sha256 = "19v9d0v3laiwi0f1n92lvj2s5s1mxsrfygna0xyw9pkcnk3b26q6";
+    url = "https://git.code.sf.net/p/linuxstopmotion/code";
+    rev = version;
+    sha256 = "1612lkwsfzc59wvdj2zbj5cwsyw66bwn31jrzjrxvygxdh4ab069";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ qt4 SDL SDL_image libvorbis libtar libxml2 gamin qmake4Hook ];
-
-  patches = [ ./linuxstopmotion-fix-wrong-isProcess-logic.patch ];
+  nativeBuildInputs = [ qmake pkgconfig ];
+  buildInputs = [ qtbase qttools qtmultimedia libvorbis libtar libxml2 ];
 
-  # Installation breaks without this
-  preInstall = ''
-    mkdir -p "$out/share/stopmotion/translations/"
-    cp -v build/*.qm "$out/share/stopmotion/translations/"
+  postPatch = ''
+    substituteInPlace stopmotion.pro --replace '$$[QT_INSTALL_BINS]' '${lib.getDev qttools}/bin'
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Create stop-motion animation movies";
     homepage = "http://linuxstopmotion.org/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/pkgs/applications/video/linuxstopmotion/linuxstopmotion-fix-wrong-isProcess-logic.patch b/pkgs/applications/video/linuxstopmotion/linuxstopmotion-fix-wrong-isProcess-logic.patch
deleted file mode 100644
index caab48d0e2d9b..0000000000000
--- a/pkgs/applications/video/linuxstopmotion/linuxstopmotion-fix-wrong-isProcess-logic.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From b23b7dab1d540b0710fcb9ded1c6256a49844906 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Wed, 20 Aug 2014 22:22:00 +0200
-Subject: [PATCH] Fix wrong "isProcess" logic
-
-Stopmotion wrongly thinks that uvccapture should be run as a daemon,
-even though configuration for uvccapture has no "daemon-like" command
-line to be run (according to "preferences"). The result is an error
-popup instead of video/image grabbing.
-
-This brings back the "isProcess" logic that was in stopmotion v0.7.2,
-because it seems to work, while the current logic (v0.8.0) seems to
-fail.
----
- src/presentation/frontends/qtfrontend/frameview.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/presentation/frontends/qtfrontend/frameview.cpp b/src/presentation/frontends/qtfrontend/frameview.cpp
-index e44dca7..d2c41fd 100644
---- a/src/presentation/frontends/qtfrontend/frameview.cpp
-+++ b/src/presentation/frontends/qtfrontend/frameview.cpp
-@@ -270,7 +270,7 @@ bool FrameView::on() {
- 	Preference device(QString("device%1")
- 			.arg(activeDev).toLatin1().constData(), "");
- 	QString pre = QString(prepoll.get()).replace("$VIDEODEVICE", device.get());
--	bool isProcess = startDaemon.get();
-+	bool isProcess = (strcmp(startDaemon.get(), "") == 0) ? false : true;
- 
- 	bool isCameraReady = true;
- 	this->grabber = new CommandLineGrabber(capturedFile.path(), isProcess);
--- 
-2.0.2
-
diff --git a/pkgs/applications/video/motion/default.nix b/pkgs/applications/video/motion/default.nix
index 7f101c41edbdc..e25101250411c 100644
--- a/pkgs/applications/video/motion/default.nix
+++ b/pkgs/applications/video/motion/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "motion";
-  version = "4.3.1";
+  version = "4.3.2";
 
   src = fetchFromGitHub {
     owner  = "Motion-Project";
     repo   = "motion";
     rev    = "release-${version}";
-    sha256 = "01yy4pdgd4wa97bpw27zn5zik9iz719m1jiwkk9lb7m2a2951dhc";
+    sha256 = "09xs815jsivcilpmnrx2jkcxirj4lg5kp99fkr0p2sdxw03myi95";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index c8d70c72fbacc..0d0fce279bbd1 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -39,13 +39,13 @@ let
 
 in mkDerivation rec {
   pname = "obs-studio";
-  version = "26.0.0";
+  version = "26.0.2";
 
   src = fetchFromGitHub {
     owner = "obsproject";
     repo = "obs-studio";
     rev = version;
-    sha256 = "09y57b3c88szl3wyx3cxq8jrm3pfnyg2n25hxl1ynkq3rgaavdq2";
+    sha256 = "1d502f80whh686mvq0yn6zpa5nvmnlzxwp5sjz43vpbbvhpbrdqj";
   };
 
   nativeBuildInputs = [ addOpenGLRunpath cmake pkgconfig ];
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 8bd3d581434ee..f6acf5698f4c1 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.14.1";
+  version = "0.14.2";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11qhzjml04njhfa033v98m4yd522zj91s6ffvrm0m6sk7m0wyjsc";
+    sha256 = "1f1gvgb1zk8gw596vaz9iihbpybwzs5shd25qq7bn2bhr4hqlbb9";
   };
 
-  cargoSha256 = "0jmmxld4rsjj6p5nazi3d8j1hh7r34q6kyfqq4wv0sjc77gcpaxd";
+  cargoSha256 = "1dcfclk8lbqvq2hywr80jm63p1i1kz3893zq99ipgryia46vd397";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix b/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
index c7cfd27d3faa0..83d5d371b3977 100644
--- a/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
+++ b/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
@@ -77,13 +77,13 @@ let
       done
     fi
 
-    auto_mounts=""
+    declare -a auto_mounts
     # loop through all directories in the root
     for dir in /*; do
       # if it is a directory and it is not in the blacklist
       if [[ -d "$dir" ]] && grep -v "$dir" <<< "$blacklist" >/dev/null; then
         # add it to the mount list
-        auto_mounts="$auto_mounts --bind $dir $dir"
+        auto_mounts+=(--bind "$dir" "$dir")
       fi
     done
 
@@ -97,7 +97,7 @@ let
       --ro-bind /nix /nix \
       ${etcBindFlags} \
       $ro_mounts \
-      $auto_mounts \
+      "''${auto_mounts[@]}" \
       ${init runScript}/bin/${name}-init ${initArgs}
   '';
 
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index 0e4e76d72843a..09cef8b8678d1 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -57,7 +57,7 @@ let
   suffixSalt = replaceStrings ["-" "."] ["_" "_"] targetPlatform.config;
 
   expand-response-params =
-    if buildPackages.stdenv.hasCC && buildPackages.stdenv.cc != "/dev/null"
+    if (buildPackages.stdenv.hasCC or false) && buildPackages.stdenv.cc != "/dev/null"
     then import ../expand-response-params { inherit (buildPackages) stdenv; }
     else "";
 
diff --git a/pkgs/build-support/writers/default.nix b/pkgs/build-support/writers/default.nix
index 495a56b419742..9c709921d2104 100644
--- a/pkgs/build-support/writers/default.nix
+++ b/pkgs/build-support/writers/default.nix
@@ -1,4 +1,4 @@
-{ pkgs, lib }:
+{ pkgs, lib, gawk, gnused, gixy }:
 
 with lib;
 rec {
@@ -219,10 +219,11 @@ rec {
   writeNginxConfig = name: text: pkgs.runCommandLocal name {
     inherit text;
     passAsFile = [ "text" ];
+    nativeBuildInputs = [ gawk gnused gixy ];
   } /* sh */ ''
     # nginx-config-formatter has an error - https://github.com/1connect/nginx-config-formatter/issues/16
-    ${pkgs.gawk}/bin/awk -f ${awkFormatNginx} "$textPath" | ${pkgs.gnused}/bin/sed '/^\s*$/d' > $out
-    ${pkgs.gixy}/bin/gixy $out
+    awk -f ${awkFormatNginx} "$textPath" | sed '/^\s*$/d' > $out
+    gixy $out
   '';
 
   # writePerl takes a name an attributeset with libraries and some perl sourcecode and
diff --git a/pkgs/common-updater/scripts/mark-broken b/pkgs/common-updater/scripts/mark-broken
index d128d0d458ba7..ee80616d0cbe3 100755
--- a/pkgs/common-updater/scripts/mark-broken
+++ b/pkgs/common-updater/scripts/mark-broken
@@ -1,86 +1,106 @@
 #!/usr/bin/env bash
-set -e
+
+# This script is meant to be used to mark failing hydra builds as broken in the meta attrs
+# To use the script, you should pass the list of failing attrs as arguments to the script.
+#
+# Example: `cat failing-attrs | xargs ./pkgs/common-update/scripts/mark-broken`
+#
+# Generating a list of failing attrs: (this should be improved at a later date)
+#   - Go to the most recent hydra evaluation with all builds completed
+#   - Select the "builds still failing" tab
+#   - Highlight and select all packages, should be prefixed with `nixpkgs.`
+#   - Use regex and editor foo to leave only the attr names
+#   - Use the above example command to then execute the script
+#
+# OTHER NOTES:
+#   - The `denyFileList` and `denyAttrList` will likely need to be updated slightly
+#     to align with the conventions used in nixpkgs at execution time
+#   - Any attrs which failed for any reason will be written to `failed-marks.txt`.
+#     Those attrs will likely need manual attention as disablement will likely be conditional.
 
 scriptName=mark-broken # do not use the .wrapped name
 
-die() {
-    echo "$scriptName: error: $1" >&2
-    exit 1
+failMark() {
+        local attr=$1
+        shift 1
+
+        echo "$attr: $@" >&2
+        echo $attr >> failed-marks.txt
 }
 
 usage() {
-    echo "Usage: $scriptName <attr> [--new-value=<new-value>]"
+    echo "Usage: $scriptName <attrs>"
 }
 
-args=()
-
-for arg in "$@"; do
-    case $arg in
-        --new-value=*)
-            newValue="${arg#*=}"
-        ;;
-        --help)
-            usage
-            exit 0
-        ;;
-        --*)
-            echo "$scriptName: Unknown argument: $arg"
-            usage
-            exit 1
-        ;;
-        *)
-            args["${#args[*]}"]=$arg
-        ;;
-    esac
-done
-
-attr=${args[0]}
-
-if (( "${#args[*]}" < 1 )); then
+if (( "${#@}" < 1 )); then
     echo "$scriptName: Too few arguments"
     usage
     exit 1
 fi
 
-if (( "${#args[*]}" > 1 )); then
-    echo "$scriptName: Too many arguments"
-    usage
-    exit 1
-fi
+# in case we resolve to an auto-generated file, just skip these entries
+denyFileList=(
+        node-packages.nix # node, it will mark all node packages as broken
+        generic-builder.nix # haskell, it will mark all haskell packages as broken
+)
 
-if [ -z $newValue ]; then
-  newValue="true"
-fi
+# ignore older versions of parameterized packages sets, these likely need
+# to be conditionally disabled
+denyAttrList=(
+        python27Packages
+        python37Packages
+        libsForQt512
+        linuxPackages_
+        rubyPackages_
+)
 
-nixFile=$(nix-instantiate --eval --json -E "with import ./. {}; (builtins.unsafeGetAttrPos \"description\" $attr.meta).file" | jq -r .)
-if [[ ! -f "$nixFile" ]]; then
-    die "Couldn't evaluate 'builtins.unsafeGetAttrPos \"description\" $attr.meta' to locate the .nix file!"
-fi
+function attemptToMarkBroken() {
+        local attr=$1
 
-# Insert broken attribute
-sed -i.bak "$nixFile" -r \
-  -e "/^\s*broken\s*=.*$/d" \
-  -e "s/(\s*)meta\s*=.*\{/&\n\1  broken = $newValue;/"
+        # skip likely to be noisy attrs
+        for badAttr in ${denyAttrList[@]};do
+                if [[ $attr =~ $badAttr ]]; then
+                        failMark $attr "attr contained $badAttr, skipped."
+                        return
+                fi
+        done
 
-if cmp -s "$nixFile" "$nixFile.bak"; then
-    mv "$nixFile.bak" "$nixFile"
-    die "Failed to mark the package as broken! Does it have a meta attribute?"
-fi
+        nixFile=$(nix-instantiate --eval --json -E "with import ./. {}; (builtins.unsafeGetAttrPos \"description\" $attr.meta).file" 2>/dev/null | jq -r .)
+        if [[ ! -f "$nixFile" ]]; then
+            failMark $attr "Couldn't locate correct file"
+            return
+        fi
 
-if [[ "$newValue" == "true" ]]; then
-    # broken should evaluate to true in any case now
-    markedSuccessfully=$(nix-instantiate --eval -E "with import ./. {}; $attr.meta.broken" || true)
-    if [[ ! "$markedSuccessfully" == "true" ]]; then
-        mv "$nixFile.bak" "$nixFile"
-        die "Couldn't verify the broken attribute to be set correctly, restoring backup!"
-    fi
-else
-    # we can not check if broken evaluates to the correct value, but we can check that it does evaluate
-    if ! nix-instantiate --eval -E "with import ./. {}; $attr.meta.broken" >/dev/null; then
-        mv "$nixFile.bak" "$nixFile"
-        die "Couldn't verify the broken attribute to be set correctly, restoring backup!"
-    fi
-fi
+        # skip files which are auto-generated
+        for filename in ${denyFileList[@]};do
+                if [[ "$filename" == $(basename $nixFile) ]]; then
+                        failMark $attr "filename matched $filename, skipped."
+                        return
+                fi
+        done
+
+        # Insert broken attribute
+        sed -i.bak "$nixFile" -r \
+          -e "/^\s*broken\s*=.*$/d" \
+          -e "s/(\s*)meta\s*=.*\{/&\n\1  broken = true;/"
+
+        if cmp -s "$nixFile" "$nixFile.bak"; then
+            mv "$nixFile.bak" "$nixFile"
+            failMark $attr "Does it have a meta attribute?"
+            return
+        fi
 
-rm -f "$nixFile.bak"
-rm -f "$attr.fetchlog"
+        # broken should evaluate to true in any case now
+        markedSuccessfully=$(nix-instantiate --eval -E "with import ./. {}; $attr.meta.broken")
+        if [[ "$markedSuccessfully" != "true" ]]; then
+            mv "$nixFile.bak" "$nixFile"
+            failMark $attr "$attr.meta.broken doesn't evaluate to true."
+            return
+        fi
+
+        rm -f "$nixFile.bak"
+}
+
+for attr in $@; do
+        attemptToMarkBroken $attr
+done
diff --git a/pkgs/data/fonts/iosevka/bin.nix b/pkgs/data/fonts/iosevka/bin.nix
index 0f88aa05e4cf0..c3e77c1051fb5 100644
--- a/pkgs/data/fonts/iosevka/bin.nix
+++ b/pkgs/data/fonts/iosevka/bin.nix
@@ -1,20 +1,35 @@
-{ stdenv, fetchzip }:
+{ stdenv, lib, fetchurl, unzip
+, variant ? ""
+}:
 
 let
-  version = "3.4.6";
-in fetchzip {
-  name = "iosevka-bin-${version}";
+  name = "iosevka" + lib.optionalString (variant != "") "-" + variant;
 
-  url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-iosevka-${version}.zip";
+  variantHashes = import ./variants.nix;
+  validVariants = map (lib.removePrefix "iosevka-")
+    (builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ]));
+in stdenv.mkDerivation rec {
+  pname = "${name}-bin";
+  version = "3.7.1";
 
-  postFetch = ''
+  src = fetchurl {
+    url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip";
+    sha256 = variantHashes.${name} or (throw ''
+      No such variant "${variant}" for package iosevka-bin.
+      Valid variants are: ${lib.concatStringsSep ", " validVariants}.
+    '');
+  };
+
+  nativeBuildInputs = [ unzip ];
+
+  phases = [ "unpackPhase" ];
+
+  unpackPhase = ''
     mkdir -p $out/share/fonts
-    unzip -j $downloadedFile \*.ttc -d $out/share/fonts/truetype
+    unzip -d $out/share/fonts/truetype $src
   '';
 
-  sha256 = "1nab49gkpxahwvvw39xcc32q425qkccr7ffmz87jbcdv71qy7pp9";
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = "https://be5invis.github.io/Iosevka/";
     downloadPage = "https://github.com/be5invis/Iosevka/releases";
     description = ''
@@ -25,4 +40,6 @@ in fetchzip {
     platforms = platforms.all;
     maintainers = [ maintainers.cstrahan ];
   };
+
+  passthru.updateScript = ./update.sh;
 }
diff --git a/pkgs/data/fonts/iosevka/update.sh b/pkgs/data/fonts/iosevka/update.sh
new file mode 100755
index 0000000000000..df78c62a6ce8b
--- /dev/null
+++ b/pkgs/data/fonts/iosevka/update.sh
@@ -0,0 +1,28 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p curl jq
+
+set -e
+
+release=$(curl -s https://api.github.com/repos/be5invis/Iosevka/releases/latest)
+
+oldVersion=$(nix-instantiate --eval -E 'with import ./. {}; lib.getVersion iosevka-bin' | tr -d '"')
+version=$(echo "$release" | jq -r .tag_name | tr -d v)
+
+if test "$oldVersion" = "$version"; then
+	echo "New version same as old version, nothing to do." >&2
+	exit 0
+fi
+
+file=$(nix-instantiate --eval -A iosevka-bin.meta.position | sed -r 's/^"(.*):[0-9]+"$/\1/')
+sed -i "s/$oldVersion/$version/" "$file"
+
+{
+	echo '# This file was autogenerated. DO NOT EDIT!'
+	echo '{'
+	for asset in $(echo "$release" | jq -r '.assets[].name | select(startswith("ttc"))'); do
+		printf '  %s = "%s";\n' \
+			$(echo "$asset" | sed -r "s/^ttc-(.*)-$version.zip$/\1/") \
+			$(nix-prefetch-url "https://github.com/be5invis/Iosevka/releases/download/v$version/$asset")
+	done
+	echo '}'
+} >$(dirname "$file")/variants.nix
diff --git a/pkgs/data/fonts/iosevka/variants.nix b/pkgs/data/fonts/iosevka/variants.nix
new file mode 100644
index 0000000000000..b3fd986c4caf5
--- /dev/null
+++ b/pkgs/data/fonts/iosevka/variants.nix
@@ -0,0 +1,24 @@
+# This file was autogenerated. DO NOT EDIT!
+{
+  iosevka = "0h226f32nwlqnsdc86bwk2wcdl2hsq5q1s2ln6dsf9m7w8ajn0nr";
+  iosevka-aile = "05k3h7n7mkpdsjcxha27vjj503b4129jd90wj8qyk5h0nrgy1rc6";
+  iosevka-curly = "0fxcc99n9ghkdjmfxba9mg4fc0dwlvnnxlmc618jv6s3k2xn7sza";
+  iosevka-curly-slab = "1qgxyw5v91l4cw3mvqzagk9amyy63iqh72bnsz63daxgss3fpsab";
+  iosevka-etoile = "184rjidnjayv5wsrxxxf39mvdcjafdwcvp0h4rfniy9s0ifrwjvf";
+  iosevka-slab = "1cbrv5pyhnvwrdaj8r011igw2yjgzzigd82g1r10d348lk64wja1";
+  iosevka-sparkle = "124jnjzffnfw58b78svw8rzgal10z5nspwc267pvq7q0f2ak1wpp";
+  iosevka-ss01 = "18ckb0ch4za4vgwqz8azx8vhg9v9a922ffbckrbmy8n5bi03dl7w";
+  iosevka-ss02 = "0cwm2jdni5m9z0xagpmq9vvjp3yvin7c7bnavsj15yfvpq8b8qsp";
+  iosevka-ss03 = "1yzbvkr726f8mm024qzy2hdd7nz4kymgjm0cj5208c57bln0byr2";
+  iosevka-ss04 = "1kpz84a1cb39rxc87whw0fh0k9ak2qbcq59hm425da2acf27a648";
+  iosevka-ss05 = "1xnnm96jnw90mhwylsw1ad6m8pr4r1bd02l7g82m5hmr7bc4b7dd";
+  iosevka-ss06 = "1raw01ijiawaqxfmj0m8z8jrb2ns7vzy68lak63mss8j35xzg1l5";
+  iosevka-ss07 = "0bjhjwjif7qw6wyyrzfg2pdvy1b070k053ndmjard6sh1rcln02d";
+  iosevka-ss08 = "1qwgk8riff57np4hlmd0kcl9bx511x9zmnlrjq3ilfn6abdwgm7i";
+  iosevka-ss09 = "0sfnhmcrsv1v7l756hx70y1mrp35fbs6wrsczw4vxfbbaigs767r";
+  iosevka-ss10 = "10n70z7588h8y2z274vjn6hvzc7lg87znibcmkk2brmx2g5bw2wl";
+  iosevka-ss11 = "0mnyd04vdqr8jm3syv6ddrn61f27k91kxkdy86pp34xaac2ipmm0";
+  iosevka-ss12 = "1f8pn2220s6r566b40ncnqrfmfdhnlr0nkvzj9swgvx66jr8mlhj";
+  iosevka-ss13 = "1py5qgfqm9wp9pzcxg83mydvf3r6nhrqi21d0fvmnk04ghk1psd6";
+  iosevka-ss14 = "0z47kqicd26x5v94zy97xyl277v0s6856pbllfn1gv92ax2dg5cy";
+}
diff --git a/pkgs/development/compilers/abcl/default.nix b/pkgs/development/compilers/abcl/default.nix
index edcf722f2553a..f27abda03d182 100644
--- a/pkgs/development/compilers/abcl/default.nix
+++ b/pkgs/development/compilers/abcl/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, ant, jre, jdk}:
 stdenv.mkDerivation rec {
   pname = "abcl";
-  version = "1.7.1";
+  version = "1.8.0";
   # or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
   src = fetchurl {
     url = "https://common-lisp.net/project/armedbear/releases/${version}/${pname}-src-${version}.tar.gz";
-    sha256 = "09wjcjvriagml740krg9nva5v6bsc3sav86dmb55pjvfpsr1846m";
+    sha256 = "0wpfj7q9vq2k2mkp2wx2yvrcq0v8229ddyk8viiaizs7msn588ac";
   };
   configurePhase = ''
     mkdir nix-tools
diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix
index 9b9d1f7481d14..baab0583fb0c4 100644
--- a/pkgs/development/compilers/flutter/default.nix
+++ b/pkgs/development/compilers/flutter/default.nix
@@ -1,6 +1,9 @@
-{ callPackage }:
+{ callPackage, dart }:
 
 let
+  dart_stable = dart.override { version = "2.10.0"; };
+  dart_beta = dart.override { version = "2.10.0"; };
+  dart_dev = dart.override { version = "2.11.0-161.0.dev"; };
   mkFlutter = opts: callPackage (import ./flutter.nix opts) { };
   getPatches = dir:
     let files = builtins.attrNames (builtins.readDir dir);
@@ -10,25 +13,28 @@ in {
   stable = mkFlutter rec {
     pname = "flutter";
     channel = "stable";
-    version = "1.17.5";
+    version = "1.22.0";
     filename = "flutter_linux_${version}-${channel}.tar.xz";
-    sha256Hash = "0kapja3nh7dfhjbn2np02wghijrjnpzsv4hz10fj54hs8hdx19di";
+    sha256Hash = "0ryrx458ss8ryhmspcfrhjvad2pl46bxh1qk5vzwzhxiqdc79vm8";
     patches = getPatches ./patches/stable;
+    dart = dart_stable;
   };
   beta = mkFlutter rec {
-    pname = "flutter-beta";
+    pname = "flutter";
     channel = "beta";
-    version = "1.20.0-7.2.pre";
+    version = "1.22.0-12.3.pre";
     filename = "flutter_linux_${version}-${channel}.tar.xz";
-    sha256Hash = "0w89ig5vi4spa95mf08r4vvwni7bzzdlyhvr9sy1a35qmf7j9s6f";
-    patches = getPatches ./patches/beta;
+    sha256Hash = "1axzz137z4lgpa09h7bjf52i6dij6a9wmjbha1182db23r09plzh";
+    patches = getPatches ./patches/stable;
+    dart = dart_beta;
   };
   dev = mkFlutter rec {
-    pname = "flutter-dev";
+    pname = "flutter";
     channel = "dev";
-    version = "1.21.0-1.0.pre";
+    version = "1.23.0-7.0.pre";
     filename = "flutter_linux_${version}-${channel}.tar.xz";
-    sha256Hash = "14rx89jp6ivk3ai7iwbznkr5q445ndh8fppzbxg520kq10s2208r";
-    patches = getPatches ./patches/beta;
+    sha256Hash = "166qb4qbv051bc71yj7c0vrkamhvzz3fp3mz318qzm947mydwjj5";
+    patches = getPatches ./patches/dev;
+    dart = dart_dev;
   };
 }
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
index e9b60253cda05..7fda2d616f3e2 100644
--- a/pkgs/development/compilers/flutter/flutter.nix
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -1,5 +1,5 @@
-{ channel, pname, version, sha256Hash, patches
-, filename ? "flutter_linux_v${version}-${channel}.tar.xz" }:
+{ channel, pname, version, sha256Hash, patches, dart
+, filename ? "flutter_linux_${version}-${channel}.tar.xz"}:
 
 { bash, buildFHSUserEnv, cacert, coreutils, git, makeWrapper, runCommand, stdenv
 , fetchurl, alsaLib, dbus, expat, libpulseaudio, libuuid, libX11, libxcb
@@ -72,6 +72,7 @@ let
       with pkgs; [
         bash
         curl
+        dart
         git
         unzip
         which
@@ -118,11 +119,15 @@ in runCommand drvName {
     homepage = "https://flutter.dev";
     license = licenses.bsd3;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ babariviere ];
+    maintainers = with maintainers; [ babariviere ericdallo ];
   };
 } ''
   mkdir -p $out/bin
 
   echo -n "$startScript" > $out/bin/${pname}
   chmod +x $out/bin/${pname}
+
+  mkdir -p $out/bin/cache/dart-sdk/
+  cp -r ${dart}/* $out/bin/cache/dart-sdk/
+  ln $out/bin/cache/dart-sdk/bin/dart $out/bin/dart
 ''
diff --git a/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/dev/disable-auto-update.patch
index cd01577cc10f2..f9ac00d1d323e 100644
--- a/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch
+++ b/pkgs/development/compilers/flutter/patches/dev/disable-auto-update.patch
@@ -1,8 +1,8 @@
 diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh
-index 702bd9ed5..4d4dc94c6 100755
+index 22efe87443..c6954575c5 100644
 --- a/bin/internal/shared.sh
 +++ b/bin/internal/shared.sh
-@@ -204,8 +204,6 @@ function shared::execute() {
+@@ -212,8 +212,6 @@ function shared::execute() {
    # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
    # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
  
@@ -12,10 +12,10 @@ index 702bd9ed5..4d4dc94c6 100755
    case "$BIN_NAME" in
      flutter*)
 diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
-index 21be933e1..2ea73c4c0 100644
+index fb1616ba96..b973b3fd58 100644
 --- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
 +++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
-@@ -294,13 +294,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+@@ -291,13 +291,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
            globals.flutterUsage.suppressAnalytics = true;
          }
  
diff --git a/pkgs/development/compilers/flutter/patches/beta/move-cache.patch b/pkgs/development/compilers/flutter/patches/dev/move-cache.patch
index 64950d4476efe..eb6ff5cf582e5 100644
--- a/pkgs/development/compilers/flutter/patches/beta/move-cache.patch
+++ b/pkgs/development/compilers/flutter/patches/dev/move-cache.patch
@@ -1,21 +1,21 @@
 diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
-index 8e511eefd..fef3cca8b 100644
+index a059a8e992..b664a7070c 100644
 --- a/dev/devicelab/lib/framework/runner.dart
 +++ b/dev/devicelab/lib/framework/runner.dart
-@@ -126,7 +126,7 @@ Future<void> cleanupSystem() async {
-     print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)');
-     final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
-     final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.');
--    recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir);
-+    recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir);
-     copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper')));
-     if (!Platform.isWindows) {
-       await exec(
+@@ -137,7 +137,7 @@ Future<void> cleanupSystem() async {
+       print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)');
+       final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
+       final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.');
+-      recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir);
++      recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir);
+       copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper')));
+       if (!Platform.isWindows) {
+         await exec(
 diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
-index c680de599..480abfb77 100644
+index 36714c5fb4..c0cc049ee1 100644
 --- a/packages/flutter_tools/lib/src/asset.dart
 +++ b/packages/flutter_tools/lib/src/asset.dart
-@@ -8,6 +8,7 @@ import 'package:meta/meta.dart';
+@@ -6,6 +6,7 @@ import 'package:meta/meta.dart';
  import 'package:package_config/package_config.dart';
  import 'package:yaml/yaml.dart';
  
@@ -23,20 +23,20 @@ index c680de599..480abfb77 100644
  import 'base/context.dart';
  import 'base/file_system.dart';
  import 'base/utils.dart';
-@@ -392,7 +393,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+@@ -397,7 +398,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
      for (final Map<dynamic, dynamic> font in (family['fonts'] as List<dynamic>).cast<Map<dynamic, dynamic>>()) {
        final Uri entryUri = globals.fs.path.toUri(font['asset'] as String);
        result.add(_Asset(
 -        baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
-+	baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
++        baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
          relativeUri: Uri(path: entryUri.pathSegments.last),
          entryUri: entryUri,
          package: null,
 diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
-index c0946782c..bdbc35cb8 100644
+index aaca036d78..43ff428f8d 100644
 --- a/packages/flutter_tools/lib/src/cache.dart
 +++ b/packages/flutter_tools/lib/src/cache.dart
-@@ -202,8 +202,15 @@ class Cache {
+@@ -226,8 +226,15 @@ class Cache {
        return;
      }
      assert(_lock == null);
@@ -53,7 +53,7 @@ index c0946782c..bdbc35cb8 100644
      try {
        _lock = lockFile.openSync(mode: FileMode.write);
      } on FileSystemException catch (e) {
-@@ -306,7 +313,7 @@ class Cache {
+@@ -330,7 +337,7 @@ class Cache {
      if (_rootOverride != null) {
        return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache'));
      } else {
diff --git a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
index c77357ea13c50..35ce5b3673505 100644
--- a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
+++ b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
@@ -1,24 +1,24 @@
-diff --git a/bin/flutter b/bin/flutter
-index cdf974233..1f7de1c1b 100755
---- a/bin/flutter
-+++ b/bin/flutter
-@@ -185,8 +185,6 @@ fi
- # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
- # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
+diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh
+index 8d613de739..a673466726 100644
+--- a/bin/internal/shared.sh
++++ b/bin/internal/shared.sh
+@@ -204,8 +204,6 @@ function shared::execute() {
+   # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
+   # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
  
--(upgrade_flutter) 3< "$PROG_NAME"
+-  upgrade_flutter 7< "$PROG_NAME"
 -
- # FLUTTER_TOOL_ARGS isn't quoted below, because it is meant to be considered as
- # separate space-separated args.
- "$DART" --packages="$FLUTTER_TOOLS_DIR/.packages" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
+   BIN_NAME="$(basename "$PROG_NAME")"
+   case "$BIN_NAME" in
+     flutter*)
 diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
-index b3e69714f..a9eb76234 100644
+index 8a1a1e29da..778f253358 100644
 --- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
 +++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
-@@ -301,13 +301,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+           globals.flutterUsage.suppressAnalytics = true;
          }
  
-         _checkFlutterCopy();
 -        try {
 -          await globals.flutterVersion.ensureVersionFile();
 -        } on FileSystemException catch (e) {
diff --git a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
index 64950d4476efe..dc77496edb31a 100644
--- a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
+++ b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
@@ -1,8 +1,8 @@
 diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
-index 8e511eefd..fef3cca8b 100644
+index d045c83f04..d51973020b 100644
 --- a/dev/devicelab/lib/framework/runner.dart
 +++ b/dev/devicelab/lib/framework/runner.dart
-@@ -126,7 +126,7 @@ Future<void> cleanupSystem() async {
+@@ -136,7 +136,7 @@ Future<void> cleanupSystem() async {
      print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)');
      final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
      final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.');
@@ -12,7 +12,7 @@ index 8e511eefd..fef3cca8b 100644
      if (!Platform.isWindows) {
        await exec(
 diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
-index c680de599..480abfb77 100644
+index 8da01315ae..bb8d61d7f2 100644
 --- a/packages/flutter_tools/lib/src/asset.dart
 +++ b/packages/flutter_tools/lib/src/asset.dart
 @@ -8,6 +8,7 @@ import 'package:meta/meta.dart';
@@ -23,20 +23,20 @@ index c680de599..480abfb77 100644
  import 'base/context.dart';
  import 'base/file_system.dart';
  import 'base/utils.dart';
-@@ -392,7 +393,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
      for (final Map<dynamic, dynamic> font in (family['fonts'] as List<dynamic>).cast<Map<dynamic, dynamic>>()) {
        final Uri entryUri = globals.fs.path.toUri(font['asset'] as String);
        result.add(_Asset(
 -        baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
-+	baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
++        baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
          relativeUri: Uri(path: entryUri.pathSegments.last),
          entryUri: entryUri,
          package: null,
 diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
-index c0946782c..bdbc35cb8 100644
+index a35d8f87d0..a40027dc74 100644
 --- a/packages/flutter_tools/lib/src/cache.dart
 +++ b/packages/flutter_tools/lib/src/cache.dart
-@@ -202,8 +202,15 @@ class Cache {
+@@ -215,8 +215,15 @@ class Cache {
        return;
      }
      assert(_lock == null);
@@ -53,7 +53,7 @@ index c0946782c..bdbc35cb8 100644
      try {
        _lock = lockFile.openSync(mode: FileMode.write);
      } on FileSystemException catch (e) {
-@@ -306,7 +313,7 @@ class Cache {
+@@ -319,7 +326,7 @@ class Cache {
      if (_rootOverride != null) {
        return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache'));
      } else {
diff --git a/pkgs/development/compilers/graalvm/enterprise-edition.nix b/pkgs/development/compilers/graalvm/enterprise-edition.nix
index 89896c556efae..690bfdb425cf7 100644
--- a/pkgs/development/compilers/graalvm/enterprise-edition.nix
+++ b/pkgs/development/compilers/graalvm/enterprise-edition.nix
@@ -1,44 +1,51 @@
-{ stdenv, requireFile, perl, unzip, glibc, zlib, bzip2, gdk-pixbuf, xorg, glib, fontconfig, freetype, cairo, pango, gtk3, gtk2, ffmpeg_3, libGL, atk, alsaLib, libav_0_8, setJavaClassPath }:
+{ stdenv, requireFile, perl, unzip, glibc, zlib, bzip2, gdk-pixbuf, xorg, glib, fontconfig, freetype, cairo, pango, gtk3, gtk2, ffmpeg, libGL, atk, alsaLib, libav_0_8, setJavaClassPath }:
 
 let
   common = javaVersion:
     let
       graalvmXXX-ee = stdenv.mkDerivation rec {
         pname = "graalvm${javaVersion}-ee";
-        version = "20.0.0";
+        version = "20.2.1";
         srcs = [
           (requireFile {
              name   = "graalvm-ee-java${javaVersion}-linux-amd64-${version}.tar.gz";
-             sha256 = {  "8" = "2df9b31b96f7a24b6a2fe3ecea0b5e819d5d058fde6320016dba1787ce59e99e";
-                        "11" = "b704fd27b5993584a1ad659b41f42ff0ae8893c066b64a6f6a1719fbee382536";
+             sha256 = {  "8" = "e0bb182146283a43824dd2c2ceeb89b6ff7a93f9a85da889f8663ce1c2bd3002";
+                        "11" = "e5d92d361e7859fe5f88c92d7bb466e285e07f1e4e2d9944948f85fa0e3aee2b";
                       }.${javaVersion};
              url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
           })
           (requireFile {
              name   = "native-image-installable-svm-svmee-java${javaVersion}-linux-amd64-${version}.jar";
-             sha256 = {  "8" = "a9f3f86d880d133bd24ad3b1d95129a96e80ea1d8fbc865d09e9410b921e6897";
-                        "11" = "57086123a95f1e9d4e67b92f830bad9325431908c69a40ef10f28ed586d8bd35";
+             sha256 = {  "8" = "37ac6a62f68adad513057a60513ba75749adf98cc73999b3918afe159900428d";
+                        "11" = "f62df715ad529f8b84854644ac99e0a9a349232c7f03985d20a2a8be20edaa44";
+                      }.${javaVersion};
+             url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
+          })
+          (requireFile {
+             name   = "llvm-toolchain-installable-java${javaVersion}-linux-amd64-${version}.jar";
+             sha256 = {  "8" = "da98a8c17b0c724b41d1596b57e282a1ecfcbf9140404dfb04b0d4d9fb159d8a";
+                        "11" = "fc442c396e92f59d034a69175104cb3565c3d128426bd939cc94c6ceccbb720f";
                       }.${javaVersion};
              url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
           })
           (requireFile {
              name   = "ruby-installable-svm-svmee-java${javaVersion}-linux-amd64-${version}.jar";
-             sha256 = {  "8" = "28b2910736f41070c84b97f1b1a3c5fa43ebdcd926ec92c8f145550b5b975b3c";
-                        "11" = "27ff1befa67fe5cc9eb0216b6b1105876f44d13eff6137f36f29f13377ea687b";
+             sha256 = {  "8" = "44f6887249f2eb54cba98dd4d9de019da5463d92982e03bf655fffe4bb520daf";
+                        "11" = "941f3752ccb097958f49250586f04c305092ded3ea4c1b7d9a0f7632e47fa335";
                       }.${javaVersion};
              url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
           })
           (requireFile {
              name   = "python-installable-svm-svmee-java${javaVersion}-linux-amd64-${version}.jar";
-             sha256 = {  "8" = "9c83bcd71e316805c2914c9002ce348ae44829606adc2375d9188b1eaaaf82f9";
-                        "11" = "5ca51478bcb5ea5bd9be35856dd7fb2ef03b888cd1b7284a8c15531979025fb4";
+             sha256 = {  "8" = "5c3993c701bd09c6064dcf4a6d9c7489620d0654b03c74682398c788c0211c09";
+                        "11" = "de3ebf35ce47dc399d7976cbd09fde0e85f2c10f85bc3fe8f32bb9e2b500ab70";
                       }.${javaVersion};
              url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
           })
           (requireFile {
              name   = "wasm-installable-svm-svmee-java${javaVersion}-linux-amd64-${version}.jar";
-             sha256 = {  "8" = "e8bd14d3f9bf652104e4346e0899a0351afaecae030a9c0ce0f91b1f93d9e660";
-                        "11" = "d24eeb84625bb7a5e330b897fd6dde7fc579a687997b64625199c33fa83c40b4";
+             sha256 = {  "8" = "c0a334b271fd32c098bb3c42eada7eafb9f536becaa756097eebe4682915b067";
+                        "11" = "9e801071992a0ff976bc40b640a8b9368fd8ea890ba986543658fcbaa3a7fd68";
                       }.${javaVersion};
              url    = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
           })
@@ -47,7 +54,7 @@ let
         unpackPhase = ''
           unpack_jar() {
             jar=$1
-            unzip $jar -d $out
+            unzip -o $jar -d $out
             perl -ne 'use File::Path qw(make_path);
                       use File::Basename qw(dirname);
                       if (/^(.+) = (.+)$/) {
@@ -70,6 +77,7 @@ let
           unpack_jar ''${arr[2]}
           unpack_jar ''${arr[3]}
           unpack_jar ''${arr[4]}
+          unpack_jar ''${arr[5]}
         '';
 
         installPhase = {
@@ -117,7 +125,7 @@ let
                     }.${javaVersion}
                  }:${
             stdenv.lib.strings.makeLibraryPath [ glibc xorg.libXxf86vm xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender
-                                                 glib zlib bzip2 alsaLib fontconfig freetype pango gtk3 gtk2 cairo gdk-pixbuf atk ffmpeg_3 libGL ]}"
+                                                 glib zlib bzip2 alsaLib fontconfig freetype pango gtk3 gtk2 cairo gdk-pixbuf atk ffmpeg libGL ]}"
 
           for f in $(find $out -type f -perm -0100); do
             patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$f" || true
diff --git a/pkgs/development/compilers/opa/default.nix b/pkgs/development/compilers/opa/default.nix
index c20e0d0ef991d..864bb8e1b2638 100644
--- a/pkgs/development/compilers/opa/default.nix
+++ b/pkgs/development/compilers/opa/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
     sha256 = "1qs91rq9xrafv2mf2v415k8lv91ab3ycz0xkpjh1mng5ca3pjlf3";
   };
 
+  patches = [ ./ocaml-4.03.patch ];
+
   # Paths so the opa compiler code generation will use the same programs as were
   # used to build opa.
   codeGeneratorPaths = stdenv.lib.makeBinPath [ ocamlPackages.ocaml gcc binutils gnumake nodejs ];
@@ -23,7 +25,7 @@ stdenv.mkDerivation rec {
     patchShebangs .
     (
     cat ./compiler/buildinfos/buildInfos.ml.pre
-    ./compiler/buildinfos/generate_buildinfos.sh . --release --version ./compiler/buildinfos/version_major.txt 
+    ./compiler/buildinfos/generate_buildinfos.sh . --release --version ./compiler/buildinfos/version_major.txt
     echo let opa_git_version = ${version}
     echo 'let opa_git_sha = "xxxx"'
     cat ./compiler/buildinfos/buildInfos.ml.post
@@ -34,6 +36,8 @@ stdenv.mkDerivation rec {
     done
     export CAMLP4O=${ocamlPackages.camlp4}/bin/camlp4o
     export CAMLP4ORF=${ocamlPackages.camlp4}/bin/camlp4orf
+    export OCAMLBUILD=${ocamlPackages.ocamlbuild}/bin/ocamlbuild
+    substituteInPlace _tags --replace ', warn_error_A' ""
   '';
 
   prefixKey = "-prefix ";
diff --git a/pkgs/development/compilers/opa/ocaml-4.03.patch b/pkgs/development/compilers/opa/ocaml-4.03.patch
new file mode 100644
index 0000000000000..5e2a3e2522e6c
--- /dev/null
+++ b/pkgs/development/compilers/opa/ocaml-4.03.patch
@@ -0,0 +1,35 @@
+--- a/compiler/passes/surfaceAstRenaming.ml
++++ b/compiler/passes/surfaceAstRenaming.ml
+@@ -1110,7 +1110,7 @@ let find_opt_local_or_global name all_env =
+     | None -> find_opt_global name all_env
+     | v -> v
+ 
+-let path_expr_to_module_aux p = function
++let path_expr_to_module_aux p : _ -> _ result = function
+   | Some (OpenedIdent (tree, ident, path)) ->
+       (match Tree.get_path_opt tree p with
+            (* the path is not in the tree, which means a 'dot' access
+diff --git a/ocamllib/libbase/baseInt64.mli b/ocamllib/libbase/baseInt64.mli
+index fb544706..734437f9 100644
+--- a/ocamllib/libbase/baseInt64.mli
++++ b/ocamllib/libbase/baseInt64.mli
+@@ -40,7 +40,9 @@ external shift_right_logical : int64 -> int -> int64 = "%int64_lsr"
+ external of_int : int -> int64 = "%int64_of_int"
+ external to_int : int64 -> int = "%int64_to_int"
+ external of_float : float -> int64 = "caml_int64_of_float"
++ "caml_int64_of_float_unboxed" [@@unboxed] [@@noalloc]
+ external to_float : int64 -> float = "caml_int64_to_float"
++ "caml_int64_to_float_unboxed" [@@unboxed] [@@noalloc]
+ external of_int32 : int32 -> int64 = "%int64_of_int32"
+ external to_int32 : int64 -> int32 = "%int64_to_int32"
+ external of_nativeint : nativeint -> int64 = "%int64_of_nativeint"
+@@ -48,7 +50,9 @@ external to_nativeint : int64 -> nativeint = "%int64_to_nativeint"
+ external of_string : string -> int64 = "caml_int64_of_string"
+ val to_string : int64 -> string
+ external bits_of_float : float -> int64 = "caml_int64_bits_of_float"
++ "caml_int64_bits_of_float_unboxed" [@@unboxed] [@@noalloc]
+ external float_of_bits : int64 -> float = "caml_int64_float_of_bits"
++ "caml_int64_float_of_bits_unboxed" [@@unboxed] [@@noalloc]
+ type t = int64
+ val compare : t -> t -> int
+ external format : string -> int64 -> string = "caml_int64_format"
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 26cbf7f78c39b..ce30937639663 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -694,7 +694,7 @@ self: super: {
         postPatch = ''
           substituteInPlace conf.py --replace "'.md': CommonMarkParser," ""
         '';
-        nativeBuildInputs = with pkgs.buildPackages.pythonPackages; [ sphinx recommonmark sphinx_rtd_theme ];
+        nativeBuildInputs = with pkgs.buildPackages.python3Packages; [ sphinx recommonmark sphinx_rtd_theme ];
         makeFlags = [ "html" ];
         installPhase = ''
           mv _build/html $out
@@ -1467,7 +1467,7 @@ self: super: {
   skylighting-core = doDistribute super.skylighting-core_0_10_0_3;
   hslua = doDistribute self.hslua_1_1_2;
   jira-wiki-markup = doDistribute self.jira-wiki-markup_1_3_2;
-  pandoc = doDistribute self.pandoc_2_11_0_2;
+  pandoc = doDistribute self.pandoc_2_11_0_4;
   # jailbreaking pandoc-citeproc because it has not bumped upper bound on pandoc
   pandoc-citeproc = doJailbreak (doDistribute self.pandoc-citeproc_0_17_0_2);
   pandoc-types = doDistribute self.pandoc-types_1_22;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index f1260735479b0..bd9f43e90c9d2 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -44,7 +44,7 @@ self: super: {
   text = self.text_1_2_4_0;
 
   # Needs Cabal 3.0.x.
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_1_0; };
 
   # https://github.com/bmillwood/applicative-quoters/issues/6
   applicative-quoters = appendPatch super.applicative-quoters (pkgs.fetchpatch {
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index d5ae77e8246ef..27bf04b914e79 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -41,8 +41,8 @@ self: super: {
   xhtml = null;
 
   # Needs Cabal 3.2.x.
-  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_1_0; };
 
   # Restricts aeson to <1.4
   # https://github.com/purescript/purescript/pull/3537
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
index 339fda5d6fbfa..f2da20426aced 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -42,8 +42,8 @@ self: super: {
   xhtml = null;
 
   # Needs Cabal 3.0.x.
-  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_1_0; };
 
   # https://github.com/tibbe/unordered-containers/issues/214
   unordered-containers = dontCheck super.unordered-containers;
@@ -77,10 +77,10 @@ self: super: {
 
   # cabal2nix needs the latest version of Cabal, and the one
   # hackage-db uses must match, so take the latest
-  cabal2nix = super.cabal2nix.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  cabal2nix = super.cabal2nix.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
 
   # cabal2spec needs a recent version of Cabal
-  cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
 
   # Builds only with ghc-8.8.x and beyond.
   policeman = markBroken super.policeman;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index a2562e44527b5..220a8e5c207a0 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -53,8 +53,8 @@ self: super: {
   haddock-api = self.haddock-api_2_23_1;
 
   # These builds need Cabal 3.2.x.
-  cabal2spec = super.cabal2spec.override { Cabal = self.Cabal_3_2_0_0; };
-  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  cabal2spec = super.cabal2spec.override { Cabal = self.Cabal_3_2_1_0; };
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
 
   # Ignore overly restrictive upper version bounds.
   aeson-diff = doJailbreak super.aeson-diff;
@@ -109,10 +109,10 @@ self: super: {
   apply-refact = super.apply-refact_0_7_0_0;
 
   # The package needs the latest Cabal version.
-  cabal-install-parsers = super.cabal-install-parsers.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  cabal-install-parsers = super.cabal-install-parsers.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
 
   # cabal-fmt requires Cabal3
-  cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_2_0_0; };
+  cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_2_1_0; };
 
   # liquidhaskell does not support ghc version 8.8.x.
   liquid = markBroken super.liquid;
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 8a2e787038db4..3a31056fd12f9 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -75,7 +75,7 @@ default-package-overrides:
   # haskell-language-server 0.5.0.0 doesn't accept newer versions
   - fourmolu ==0.2.*
   - refinery ==0.2.*
-  # LTS Haskell 16.19
+  # LTS Haskell 16.20
   - abstract-deque ==0.3
   - abstract-par ==0.3.3
   - AC-Angle ==1.0
@@ -91,7 +91,7 @@ default-package-overrides:
   - aeson-attoparsec ==0.0.0
   - aeson-better-errors ==0.9.1.0
   - aeson-casing ==0.2.0.0
-  - aeson-combinators ==0.0.3.0
+  - aeson-combinators ==0.0.4.0
   - aeson-compat ==0.3.9
   - aeson-default ==0.9.1.0
   - aeson-diff ==1.1.0.9
@@ -214,12 +214,12 @@ default-package-overrides:
   - annotated-wl-pprint ==0.7.0
   - ansi-terminal ==0.10.3
   - ansi-wl-pprint ==0.6.9
-  - antiope-core ==7.5.1
-  - antiope-dynamodb ==7.5.1
-  - antiope-messages ==7.5.1
-  - antiope-s3 ==7.5.1
-  - antiope-sns ==7.5.1
-  - antiope-sqs ==7.5.1
+  - antiope-core ==7.5.3
+  - antiope-dynamodb ==7.5.3
+  - antiope-messages ==7.5.3
+  - antiope-s3 ==7.5.3
+  - antiope-sns ==7.5.3
+  - antiope-sqs ==7.5.3
   - ANum ==0.2.0.2
   - apecs ==0.9.2
   - apecs-gloss ==0.2.4
@@ -814,7 +814,7 @@ default-package-overrides:
   - fmlist ==0.9.4
   - fmt ==0.6.1.2
   - fn ==0.3.0.2
-  - focus ==1.0.1.3
+  - focus ==1.0.1.4
   - focuslist ==0.1.0.2
   - foldable1 ==0.1.0.0
   - fold-debounce ==0.2.0.9
@@ -975,7 +975,7 @@ default-package-overrides:
   - hackage-db ==2.1.0
   - hackage-security ==0.6.0.1
   - haddock-library ==1.8.0
-  - hadolint ==1.18.0
+  - hadolint ==1.18.2
   - hadoop-streaming ==0.2.0.3
   - hakyll ==4.13.4.0
   - half ==0.3
@@ -1275,7 +1275,7 @@ default-package-overrides:
   - JuicyPixels-blurhash ==0.1.0.3
   - JuicyPixels-extra ==0.4.1
   - JuicyPixels-scale-dct ==0.1.2
-  - junit-xml ==0.1.0.1
+  - junit-xml ==0.1.0.2
   - justified-containers ==0.3.0.0
   - jwt ==0.10.0
   - kan-extensions ==5.2.1
@@ -1302,7 +1302,7 @@ default-package-overrides:
   - language-bash ==0.9.2
   - language-c ==0.8.3
   - language-c-quote ==0.12.2.1
-  - language-docker ==9.1.1
+  - language-docker ==9.1.2
   - language-haskell-extract ==0.2.4
   - language-java ==0.2.9
   - language-javascript ==0.7.1.0
@@ -1651,7 +1651,7 @@ default-package-overrides:
   - password-instances ==2.0.0.1
   - path ==0.7.0
   - path-extra ==0.2.0
-  - path-io ==1.6.1
+  - path-io ==1.6.2
   - path-pieces ==0.2.1
   - path-text-utf8 ==0.0.1.6
   - pathtype ==0.8.1.1
@@ -1818,7 +1818,7 @@ default-package-overrides:
   - range ==0.3.0.2
   - Ranged-sets ==0.4.0
   - range-set-list ==0.1.3.1
-  - rank1dynamic ==0.4.0
+  - rank1dynamic ==0.4.1
   - rank2classes ==1.3.2.1
   - Rasterific ==0.7.5.3
   - rasterific-svg ==0.3.3.2
@@ -2478,7 +2478,7 @@ default-package-overrides:
   - xdg-userdirs ==0.1.0.2
   - xeno ==0.4.2
   - xls ==0.1.3
-  - xlsx ==0.8.1
+  - xlsx ==0.8.2
   - xlsx-tabular ==0.2.2.1
   - xml ==1.3.14
   - xml-basic ==0.1.3.1
@@ -2507,7 +2507,7 @@ default-package-overrides:
   - yesod-auth-fb ==1.10.1
   - yesod-auth-hashdb ==1.7.1.2
   - yesod-bin ==1.6.0.6
-  - yesod-core ==1.6.18.4
+  - yesod-core ==1.6.18.5
   - yesod-fb ==0.6.1
   - yesod-form ==1.6.7
   - yesod-form-bootstrap4 ==3.0.0
@@ -5066,7 +5066,6 @@ broken-packages:
   - flamethrower
   - flamingra
   - flashblast
-  - flat
   - flat-maybe
   - flatbuffers
   - flay
@@ -8746,7 +8745,11 @@ broken-packages:
   - polydata-core
   - polynomial
   - polysemy-chronos
+  - polysemy-extra
+  - polysemy-fskvstore
   - polysemy-http
+  - polysemy-kvstore-jsonfile
+  - polysemy-methodology
   - polysemy-optics
   - polysemy-RandomFu
   - polysemy-resume
@@ -11115,6 +11118,7 @@ broken-packages:
   - windns
   - windowslive
   - winerror
+  - winery
   - winio
   - Wired
   - wires
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index f48e90b187bf8..6169d134ddaaa 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -836,8 +836,8 @@ self: {
      }:
      mkDerivation {
        pname = "Agda";
-       version = "2.6.1.1";
-       sha256 = "0d4j3n96wyc2crz238q49sb31ll6dfddllb82ry0jnsk8f0ypx2p";
+       version = "2.6.1.2";
+       sha256 = "0b872fi12j316zcbwnablkg45p252a4sqca9lsgfig55qirk0w08";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -2775,7 +2775,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "Cabal_3_2_0_0" = callPackage
+  "Cabal_3_2_1_0" = callPackage
     ({ mkDerivation, array, base, base-compat, base-orphans, binary
      , bytestring, containers, deepseq, Diff, directory, filepath
      , integer-logarithms, mtl, optparse-applicative, parsec, pretty
@@ -2785,8 +2785,10 @@ self: {
      }:
      mkDerivation {
        pname = "Cabal";
-       version = "3.2.0.0";
-       sha256 = "0vz6bl1ia7wjc62sj5iw5jhigdwfz6yz01mripjcymv4qrbkl1gj";
+       version = "3.2.1.0";
+       sha256 = "1xfn9q6jnbp3jc6swn4hapa83f5m66pjz8fqbqmffydagf36fkzy";
+       revision = "1";
+       editedCabalFile = "07brbxkjlf1yqs9bjdwcwq1gx853kh600qnrf6bnya92q1p0fhw7";
        setupHaskellDepends = [ mtl parsec ];
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
@@ -21914,8 +21916,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-IO";
-       version = "0.1.6.1";
-       sha256 = "1cd84n434i2l13xziys0rm7wx5iqw2xqydf96yj6fwkaysh3hrps";
+       version = "0.1.7.0";
+       sha256 = "0xvl0xgqcwqvsvqhdysgh3i2lhp1vi7sglgzzmzxz3142a67xpgd";
        libraryHaskellDepends = [
          base exceptions primitive stm time unix-time Z-Data
        ];
@@ -23936,8 +23938,8 @@ self: {
      }:
      mkDerivation {
        pname = "addy";
-       version = "0.1.0.0";
-       sha256 = "10p7q0infa1bawhg7hxw8rqjqdj3w737j5s3g41hy4in2nfp5ji0";
+       version = "0.1.0.1";
+       sha256 = "1mvxnbb1118f26581zqyh0id4g1qnn44f8q3h0sfpijf0g1v9vg5";
        libraryHaskellDepends = [
          attoparsec base bytestring ip lens relude text text-icu
          validation-selective
@@ -24411,8 +24413,8 @@ self: {
      }:
      mkDerivation {
        pname = "aeson-combinators";
-       version = "0.0.3.0";
-       sha256 = "0x8bk7jxrg8j1zk5047sf5i6fy6hahjzrfnyzgwv1l443z4v445n";
+       version = "0.0.4.0";
+       sha256 = "01gsrm6glr2axcls4hxs740z8lxf39cvdhvidf360mnijai4sgl6";
        libraryHaskellDepends = [
          aeson base bytestring containers fail scientific text time
          time-compat unordered-containers uuid-types vector void
@@ -25513,6 +25515,28 @@ self: {
        broken = true;
      }) {};
 
+  "agda-unused" = callPackage
+    ({ mkDerivation, aeson, Agda, base, containers, directory, filepath
+     , hspec, megaparsec, mtl, optparse-applicative, text
+     }:
+     mkDerivation {
+       pname = "agda-unused";
+       version = "0.1.0";
+       sha256 = "1g0iyv9x46ql8j9ggb6nw58274vqb6z850x26glaqcdwa3wvn1i1";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         Agda base containers directory filepath megaparsec mtl text
+       ];
+       executableHaskellDepends = [
+         aeson base directory filepath mtl optparse-applicative text
+       ];
+       testHaskellDepends = [ base containers filepath hspec text ];
+       description = "Check for unused code in an Agda project";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "agentx" = callPackage
     ({ mkDerivation, base, binary, bitwise, bytestring, containers
      , data-default, Diff, fclabels, mtl, network, pipes
@@ -30304,32 +30328,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-core";
-       version = "7.5.1";
-       sha256 = "068dsdag8bng2ddzr0vxipmzrfa5x3jq80pmrmc0l86bjvnlsdjr";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core base bytestring exceptions
-         generic-lens http-client http-types lens mtl resourcet text
-         transformers unliftio-core
-       ];
-       testHaskellDepends = [
-         aeson aeson-lens amazonka amazonka-core base bytestring exceptions
-         generic-lens hedgehog hspec http-client http-types
-         hw-hspec-hedgehog lens mtl resourcet scientific text transformers
-         unliftio-core
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "antiope-core_7_5_3" = callPackage
-    ({ mkDerivation, aeson, aeson-lens, amazonka, amazonka-core, base
-     , bytestring, exceptions, generic-lens, hedgehog, hspec
-     , hspec-discover, http-client, http-types, hw-hspec-hedgehog, lens
-     , mtl, resourcet, scientific, text, transformers, unliftio-core
-     }:
-     mkDerivation {
-       pname = "antiope-core";
        version = "7.5.3";
        sha256 = "1bzyahw9i098riqlmhymbk0zjg4iz95r0c4mpsrc811wyqdi7f65";
        libraryHaskellDepends = [
@@ -30346,7 +30344,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-dynamodb" = callPackage
@@ -30356,30 +30353,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-dynamodb";
-       version = "7.5.1";
-       sha256 = "19d7rbz4qqq3pd9nncydgvda798a5ziw21zkpa5d0smfna71zckp";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-dynamodb antiope-core base
-         generic-lens lens text unliftio-core unordered-containers
-       ];
-       testHaskellDepends = [
-         amazonka amazonka-core amazonka-dynamodb antiope-core base
-         generic-lens lens text unliftio-core unordered-containers
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "antiope-dynamodb_7_5_3" = callPackage
-    ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-dynamodb
-     , antiope-core, base, generic-lens, hspec-discover, lens, text
-     , unliftio-core, unordered-containers
-     }:
-     mkDerivation {
-       pname = "antiope-dynamodb";
        version = "7.5.3";
        sha256 = "1j9g36c33virrnsqxrggnx2283nw9bp0i256vgq4z92h1z76kfz0";
        libraryHaskellDepends = [
@@ -30424,30 +30397,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-messages";
-       version = "7.5.1";
-       sha256 = "01hkq4n5jpfnb9i8ysaj73zknvkhpxb3mnq7csv2dc29ral4vzdp";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core base bytestring generic-lens lens
-         lens-aeson monad-loops network-uri text unliftio-core
-       ];
-       testHaskellDepends = [
-         aeson amazonka amazonka-core base bytestring generic-lens hedgehog
-         hspec hw-hspec-hedgehog lens lens-aeson monad-loops network-uri
-         scientific text unliftio-core
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "antiope-messages_7_5_3" = callPackage
-    ({ mkDerivation, aeson, amazonka, amazonka-core, base, bytestring
-     , generic-lens, hedgehog, hspec, hspec-discover, hw-hspec-hedgehog
-     , lens, lens-aeson, monad-loops, network-uri, scientific, text
-     , unliftio-core
-     }:
-     mkDerivation {
-       pname = "antiope-messages";
        version = "7.5.3";
        sha256 = "1kajbd0f81jamk7cg97zkm9z89m0zlsfklhbfarg3rgiaq28ss2v";
        libraryHaskellDepends = [
@@ -30462,7 +30411,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-optparse-applicative" = callPackage
@@ -30495,34 +30443,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-s3";
-       version = "7.5.1";
-       sha256 = "0nqs90pqk8dfjbrc55f4gdw4ybw2fslbx9z2x8k45mqpri3xwc0y";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-s3 antiope-core
-         antiope-messages attoparsec base bytestring conduit conduit-extra
-         deepseq dlist exceptions generic-lens http-types lens mtl
-         network-uri resourcet text time unliftio-core
-       ];
-       testHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-s3 antiope-core attoparsec
-         base bytestring conduit conduit-extra exceptions generic-lens
-         hedgehog hspec http-types hw-hspec-hedgehog lens mtl network-uri
-         resourcet text time unliftio-core
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "antiope-s3_7_5_3" = callPackage
-    ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-s3
-     , antiope-core, antiope-messages, attoparsec, base, bytestring
-     , conduit, conduit-extra, deepseq, dlist, exceptions, generic-lens
-     , hedgehog, hspec, hspec-discover, http-types, hw-hspec-hedgehog
-     , lens, mtl, network-uri, resourcet, text, time, unliftio-core
-     }:
-     mkDerivation {
-       pname = "antiope-s3";
        version = "7.5.3";
        sha256 = "1wwh17vzrbg20jmbgf9xdx8vn5qkx8azzczzlyb2s2k3ldlh8s0c";
        libraryHaskellDepends = [
@@ -30540,7 +30460,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-shell" = callPackage
@@ -30579,29 +30498,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-sns";
-       version = "7.5.1";
-       sha256 = "13wzfjqihsi0xw7j869knj82a6k1fi74fywhlqc3bh1xc6wcir7q";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-sns base bytestring
-         generic-lens lens text time unliftio-core
-       ];
-       testHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-sns base bytestring
-         generic-lens hedgehog hspec hw-hspec-hedgehog lens text time
-         unliftio-core
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "antiope-sns_7_5_3" = callPackage
-    ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-sns, base
-     , bytestring, generic-lens, hedgehog, hspec, hspec-discover
-     , hw-hspec-hedgehog, lens, text, time, unliftio-core
-     }:
-     mkDerivation {
-       pname = "antiope-sns";
        version = "7.5.3";
        sha256 = "01saqspi2033y423nyw4k0km3ggmypp3zzhkr7ha51r717bj6sii";
        libraryHaskellDepends = [
@@ -30616,7 +30512,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-sqs" = callPackage
@@ -30628,32 +30523,6 @@ self: {
      }:
      mkDerivation {
        pname = "antiope-sqs";
-       version = "7.5.1";
-       sha256 = "1y3fxqx5595agcnr157q3jap0dmcss8lyij187j9f29y0wkbkzv6";
-       libraryHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-sqs base bytestring conduit
-         generic-lens lens lens-aeson monad-loops mtl network-uri split text
-         unliftio-core unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson amazonka amazonka-core amazonka-sqs base bytestring conduit
-         generic-lens hedgehog hspec hw-hspec-hedgehog lens lens-aeson
-         monad-loops mtl network-uri text time unliftio-core
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "antiope-sqs_7_5_3" = callPackage
-    ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-sqs, base
-     , bytestring, conduit, generic-lens, hedgehog, hspec
-     , hspec-discover, hw-hspec-hedgehog, lens, lens-aeson, monad-loops
-     , mtl, network-uri, split, text, time, unliftio-core
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "antiope-sqs";
        version = "7.5.3";
        sha256 = "18wz0ajnh5hib7srwksbwsyqrnp4slzcd2i30p98gnh1plqgbx5p";
        libraryHaskellDepends = [
@@ -30669,7 +30538,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "antiope-swf" = callPackage
@@ -35407,6 +35275,26 @@ self: {
        broken = true;
      }) {};
 
+  "aur_7_0_5" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, hashable, http-client
+     , http-client-tls, http-types, tasty, tasty-hunit, text
+     }:
+     mkDerivation {
+       pname = "aur";
+       version = "7.0.5";
+       sha256 = "16c4q0w6qpn4gg6xlggkcs92fcvm58a3qmykfm1dgcfsjhwwhxkx";
+       libraryHaskellDepends = [
+         aeson base bytestring hashable http-client http-types text
+       ];
+       testHaskellDepends = [
+         base http-client http-client-tls tasty tasty-hunit
+       ];
+       description = "Access metadata from the Arch Linux User Repository";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "aur-api" = callPackage
     ({ mkDerivation, aeson, base, bytestring, exceptions, hspec
      , http-client, http-client-tls, mtl, text
@@ -35461,6 +35349,42 @@ self: {
        broken = true;
      }) {};
 
+  "aura_3_2_2" = callPackage
+    ({ mkDerivation, aeson, algebraic-graphs, aur, base, bytestring
+     , containers, filepath, hashable, http-client, http-client-tls
+     , http-types, language-bash, megaparsec, network-uri
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , rio, scheduler, stm, tasty, tasty-hunit, text, time, transformers
+     , typed-process, versions
+     }:
+     mkDerivation {
+       pname = "aura";
+       version = "3.2.2";
+       sha256 = "07ska8w2k3sl084aadjclw8v0ykrp8hiwhim5zd6wd7q95njyk2f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson algebraic-graphs aur base bytestring containers filepath
+         hashable http-client http-types language-bash megaparsec
+         network-uri prettyprinter prettyprinter-ansi-terminal rio scheduler
+         stm text time transformers typed-process versions
+       ];
+       executableHaskellDepends = [
+         aeson aur base bytestring containers http-client http-client-tls
+         megaparsec optparse-applicative prettyprinter
+         prettyprinter-ansi-terminal rio scheduler text transformers
+         typed-process versions
+       ];
+       testHaskellDepends = [
+         base bytestring containers megaparsec rio tasty tasty-hunit text
+         versions
+       ];
+       description = "A secure package manager for Arch Linux and the AUR";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "authenticate" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , case-insensitive, conduit, containers, html-conduit, http-conduit
@@ -37648,8 +37572,8 @@ self: {
     ({ mkDerivation, barbies, base, split, template-haskell }:
      mkDerivation {
        pname = "barbies-th";
-       version = "0.1.5";
-       sha256 = "0bjbvamihrwh4l5zs8fnk2iq98fd1d2xkfbsvp6spfcp1ynqlj6k";
+       version = "0.1.7";
+       sha256 = "1wzy8j4i9mp1vlfkrixc49nv1c6prqspvhkjdwp16bvdz4fgbvpq";
        libraryHaskellDepends = [ barbies base split template-haskell ];
        testHaskellDepends = [ barbies base ];
        description = "Create strippable HKD via TH";
@@ -45879,8 +45803,8 @@ self: {
        pname = "broadcast-chan-tests";
        version = "0.2.1.1";
        sha256 = "0qx8j9sfky5qvrxrn4is9sja4qh6jh7jahq3zkyyq3a54jkwc8d3";
-       revision = "2";
-       editedCabalFile = "0dc7drwischhs0k95hjrlssxlqdg3ickrbbrki7wjslmk8k00bki";
+       revision = "3";
+       editedCabalFile = "1x34m1wk5m9ryfhp86wm4bmvwdghrknsmir356nnb3y3xm8558b4";
        libraryHaskellDepends = [
          async base broadcast-chan clock containers optparse-applicative
          paramtree stm tagged tasty tasty-golden tasty-hunit tasty-travis
@@ -47120,22 +47044,23 @@ self: {
      }) {};
 
   "byline" = callPackage
-    ({ mkDerivation, ansi-terminal, base, colour, exceptions, free
-     , haskeline, mtl, relude, tasty, tasty-hunit, terminfo-hs, text
+    ({ mkDerivation, ansi-terminal, attoparsec, base, colour
+     , exceptions, free, haskeline, mtl, optparse-applicative, relude
+     , tasty, tasty-hunit, terminfo-hs, text
      }:
      mkDerivation {
        pname = "byline";
-       version = "1.0.0.0";
-       sha256 = "1jwjdjiraq37pr2ysc9h5qqlma6j7rd2dkip2y2f6bx07d1v7fpr";
+       version = "1.1.0.1";
+       sha256 = "1vj17x2czfks5bdns8181iw7rbfghk9pgx5f75xwzn9p6xycg9hy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         ansi-terminal base colour exceptions free haskeline mtl relude
-         terminfo-hs text
+         ansi-terminal attoparsec base colour exceptions free haskeline mtl
+         optparse-applicative relude terminfo-hs text
        ];
        testHaskellDepends = [
-         ansi-terminal base colour exceptions free haskeline mtl relude
-         tasty tasty-hunit terminfo-hs text
+         ansi-terminal attoparsec base colour exceptions free haskeline mtl
+         optparse-applicative relude tasty tasty-hunit terminfo-hs text
        ];
        description = "Library for creating command-line interfaces (colors, menus, etc.)";
        license = stdenv.lib.licenses.bsd2;
@@ -47572,8 +47497,8 @@ self: {
        pname = "bytestring-handle";
        version = "0.1.0.6";
        sha256 = "18f17aja1ivhr3zyg2cccn2m03hdn5jf5410dndkhf12gvgiqs7y";
-       revision = "1";
-       editedCabalFile = "0x11aj6w1lijh84jcdq1qgyvdnc7i9ivbyq4wf9rxicg57viisz9";
+       revision = "2";
+       editedCabalFile = "1x1sy3dz2ph9v6jk22wmcv5gk2bka5fv4s68i8q0j9m9pk085w37";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base bytestring HUnit QuickCheck test-framework
@@ -48676,8 +48601,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-fmt";
-       version = "0.1.4";
-       sha256 = "0akc63g7h21nyyr9m0dwjlnxqw8k26zx5s2mzn8zak2q9i88ds1b";
+       version = "0.1.5";
+       sha256 = "1fsnjipd3j4vx77pmslkrdkf2wzqalqhwpcp5drxksl68nnxy8ad";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -50648,8 +50573,8 @@ self: {
      }:
      mkDerivation {
        pname = "capnp";
-       version = "0.6.0.3";
-       sha256 = "0zrga41zk41881kr79grdwzl5caawv3khnvpbkhmhfzq3snmnhgd";
+       version = "0.7.0.0";
+       sha256 = "1mzs7f50840jbyzdipff47rwjmxv7i0rk6w4rdljzkw36yz4kj4v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -51677,8 +51602,8 @@ self: {
      }:
      mkDerivation {
        pname = "cassava-streams";
-       version = "0.3.0.4";
-       sha256 = "17g3qrinzfpmbcqyjrnwaycplmys0p93hb6841cp5rr1pjramb55";
+       version = "0.3.0.5";
+       sha256 = "1zv5y5jnzbpm407zz3lhfzsf7hr923dzshb2w2xyh5y3v427rwn5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -55488,8 +55413,8 @@ self: {
      }:
      mkDerivation {
        pname = "clckwrks";
-       version = "0.26.2.2";
-       sha256 = "1m6a043y72da9nyr8x35v5lrh12is49rwarj5dlrm8clp8n987dp";
+       version = "0.26.2.3";
+       sha256 = "1bark213l3kx5gbr5nxnlhnrif5sg9z5v3igpcl47yisy99695p4";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          acid-state aeson aeson-qq attoparsec base blaze-html bytestring
@@ -55669,8 +55594,8 @@ self: {
      }:
      mkDerivation {
        pname = "clckwrks-plugin-page";
-       version = "0.4.3.23";
-       sha256 = "0mk6vz98l2xxhk8w457mbgbcjslnbv34swjrwfjjqk9jhmcnmxss";
+       version = "0.4.3.24";
+       sha256 = "0zsf8j8l99cxskjql8zh407ar7920ph6xn42j8nxnh6qir16wdar";
        libraryHaskellDepends = [
          acid-state aeson attoparsec base clckwrks containers directory
          filepath happstack-hsp happstack-server hsp hsx2hs ixset mtl
@@ -61760,6 +61685,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "configurator-pg_0_2_5" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath, HUnit
+     , megaparsec, protolude, scientific, test-framework
+     , test-framework-hunit, text
+     }:
+     mkDerivation {
+       pname = "configurator-pg";
+       version = "0.2.5";
+       sha256 = "1wmdg9zxfz8vhhsq5rraynhrhqc8fjrdhfrky2mfajzbp8dpaqsm";
+       libraryHaskellDepends = [
+         base containers megaparsec protolude scientific text
+       ];
+       testHaskellDepends = [
+         base bytestring filepath HUnit protolude test-framework
+         test-framework-hunit text
+       ];
+       description = "Reduced parser for configurator-ng config files";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "confsolve" = callPackage
     ({ mkDerivation, attoparsec, base, cmdargs, process, system-fileio
      , system-filepath, text, time, unordered-containers
@@ -62573,8 +62519,8 @@ self: {
      }:
      mkDerivation {
        pname = "context";
-       version = "0.1.0.0";
-       sha256 = "17w0narhg25ls1rs2xp8x0yxh5jhw52b0c3zgi9ivn99j7c8qrhd";
+       version = "0.1.1.1";
+       sha256 = "0zn8hnyf04q7brchll3xnk0ifxadl050wric191irmnl29m6p5k8";
        libraryHaskellDepends = [ base containers ];
        testHaskellDepends = [ async base ghc-prim hspec ];
        testToolDepends = [ hspec-discover ];
@@ -64839,6 +64785,21 @@ self: {
        broken = true;
      }) {};
 
+  "crdt-event-fold" = callPackage
+    ({ mkDerivation, base, binary, containers, data-default-class
+     , data-dword
+     }:
+     mkDerivation {
+       pname = "crdt-event-fold";
+       version = "1.0.0.2";
+       sha256 = "0bhfbzxb7s49x6nk1gg1n5nf26h8xqgy41ln7d5j59zp0lri5c04";
+       libraryHaskellDepends = [
+         base binary containers data-default-class data-dword
+       ];
+       description = "Garbage collected event folding CRDT";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "creatur" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, cereal, cond
      , directory, exceptions, filepath, gray-extended, hdaemonize
@@ -67358,8 +67319,8 @@ self: {
      }:
      mkDerivation {
        pname = "cut-the-crap";
-       version = "2.1.1";
-       sha256 = "0w0ir436gmh3d9ycdcjyxkgblrah7ij5njqmm44lx1kyhih6bk2x";
+       version = "2.2.0";
+       sha256 = "19i1wmh9163fb8wggnla4c8r51j71wiwyzhhh3mznckhaws40fqa";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -72727,6 +72688,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "deriving-show-simple" = callPackage
+    ({ mkDerivation, base, HUnit }:
+     mkDerivation {
+       pname = "deriving-show-simple";
+       version = "0";
+       sha256 = "0m0sill0h6k651l1il6g4g5ypinwq77x9xy01jbj5gawcs9mln0i";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base HUnit ];
+       description = "Derive a Show instance without field selector names";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "derp" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -75133,8 +75106,8 @@ self: {
      }:
      mkDerivation {
        pname = "digit";
-       version = "0.9";
-       sha256 = "0xyghgg8kzjrvhrcjizqnbprcyq5a3ma3x0dfijrdvbyd3lzghvm";
+       version = "0.10";
+       sha256 = "1qvz2gj4f2fcq8m8s4h6q5r2y3z55dhk4zxxijxha3mqfiybh4ky";
        libraryHaskellDepends = [
          base lens parsers scientific semigroupoids semigroups
          template-haskell
@@ -81306,7 +81279,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "egison_4_1_1" = callPackage
+  "egison_4_1_2" = callPackage
     ({ mkDerivation, array, base, containers, criterion, directory
      , exceptions, filepath, ghc, ghc-paths, Glob, hashable, haskeline
      , HUnit, megaparsec, mtl, optparse-applicative, parsec
@@ -81316,8 +81289,8 @@ self: {
      }:
      mkDerivation {
        pname = "egison";
-       version = "4.1.1";
-       sha256 = "16z2zp3gjm3gwp884ab86g0vhkxkkfxma0p9h1as5fyc6kvnsdbn";
+       version = "4.1.2";
+       sha256 = "1h388s7pagjipzgxyy1l3w3f03vl17bg9vl0afidjdmqm294mp8m";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -81333,10 +81306,10 @@ self: {
          regex-tdfa split text transformers unordered-containers vector
        ];
        testHaskellDepends = [
-         base filepath Glob HUnit mtl test-framework test-framework-hunit
-         transformers
+         base filepath Glob HUnit mtl process test-framework
+         test-framework-hunit transformers
        ];
-       benchmarkHaskellDepends = [ base criterion ];
+       benchmarkHaskellDepends = [ base criterion transformers ];
        description = "Programming language with non-linear pattern-matching against non-free data";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -84729,6 +84702,35 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "esqueleto_3_4_0_0" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
+     , conduit, containers, exceptions, hspec, monad-logger, mtl, mysql
+     , mysql-simple, persistent, persistent-mysql, persistent-postgresql
+     , persistent-sqlite, persistent-template, postgresql-libpq
+     , postgresql-simple, resourcet, tagged, text, time, transformers
+     , unliftio, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "esqueleto";
+       version = "3.4.0.0";
+       sha256 = "0a4wrkcwlzgw0mds1pnxspv6ddzy9mz0md0qdx0x9s51z9ldswaj";
+       libraryHaskellDepends = [
+         aeson attoparsec base blaze-html bytestring conduit containers
+         monad-logger persistent resourcet tagged text time transformers
+         unliftio unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson attoparsec base blaze-html bytestring conduit containers
+         exceptions hspec monad-logger mtl mysql mysql-simple persistent
+         persistent-mysql persistent-postgresql persistent-sqlite
+         persistent-template postgresql-libpq postgresql-simple resourcet
+         tagged text time transformers unliftio unordered-containers vector
+       ];
+       description = "Type-safe EDSL for SQL queries on persistent backends";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ess" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -86208,6 +86210,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "exception-via" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "exception-via";
+       version = "0.1.0.0";
+       sha256 = "046f787jw3v1c61q9c9canq0m266wv39rsk0613fyrhl96sss66m";
+       libraryHaskellDepends = [ base template-haskell ];
+       description = "DerivingVia for your hierarchical exceptions";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "exceptional" = callPackage
     ({ mkDerivation, base, exceptions }:
      mkDerivation {
@@ -88037,8 +88050,8 @@ self: {
      }:
      mkDerivation {
        pname = "faktory";
-       version = "1.0.1.2";
-       sha256 = "12pabsmy21il88qmdbg91152y9nzqci9y2cn9ljizlcndnsy7s5l";
+       version = "1.0.1.3";
+       sha256 = "1mxgkf54hxlj753dva21gxdqamq4mgfslcq5gqhp154gi0xmm79w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -89748,10 +89761,8 @@ self: {
      }:
      mkDerivation {
        pname = "ffmpeg-light";
-       version = "0.12.2.2";
-       sha256 = "0yn1qhj2kzicxpjmy09lb660psjavbrfib29q0m1b8zx0fvn5xzk";
-       revision = "1";
-       editedCabalFile = "1wwfbrpr5hz1a9lppn73j2gpal3l2jnn554k6w9n181fbk67xvjd";
+       version = "0.13.0";
+       sha256 = "1xvhpzd3kf2xn6s94lmpkxp9nv1jy20pr3x2qmqhc2gjxx9vcqg1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -91739,8 +91750,6 @@ self: {
        ];
        description = "Principled and efficient bit-oriented binary serialization";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "flat-maybe" = callPackage
@@ -92800,23 +92809,6 @@ self: {
      }:
      mkDerivation {
        pname = "focus";
-       version = "1.0.1.3";
-       sha256 = "1g10fzy76k5bjn8ysym8ywvrqrvxvhdi4b99wabhzznhzmankddx";
-       libraryHaskellDepends = [ base transformers ];
-       testHaskellDepends = [
-         QuickCheck quickcheck-instances rerebase tasty tasty-hunit
-         tasty-quickcheck
-       ];
-       description = "A general abstraction for manipulating elements of container data structures";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "focus_1_0_1_4" = callPackage
-    ({ mkDerivation, base, QuickCheck, quickcheck-instances, rerebase
-     , tasty, tasty-hunit, tasty-quickcheck, transformers
-     }:
-     mkDerivation {
-       pname = "focus";
        version = "1.0.1.4";
        sha256 = "1knaiwnxcl2hrx4b3k954rd5v995gxa48db1z9mp58s646ymlmfl";
        libraryHaskellDepends = [ base transformers ];
@@ -92826,7 +92818,6 @@ self: {
        ];
        description = "A general abstraction for manipulating elements of container data structures";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "focuslist" = callPackage
@@ -103889,6 +103880,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "githash_0_1_5_0" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hspec
+     , process, template-haskell, temporary, unliftio
+     }:
+     mkDerivation {
+       pname = "githash";
+       version = "0.1.5.0";
+       sha256 = "1m2dhmddn9k75j5wyjilbh40n7fkgi7cyic9l0k2s7g9z93yyvql";
+       libraryHaskellDepends = [
+         base bytestring directory filepath process template-haskell
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath hspec process template-haskell
+         temporary unliftio
+       ];
+       description = "Compile git revision info into Haskell projects";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
      , binary, binary-instances, bytestring, containers, cryptohash-sha1
@@ -108424,8 +108435,8 @@ self: {
      }:
      mkDerivation {
        pname = "google-server-api";
-       version = "0.3.2.1";
-       sha256 = "1bvj8pihsz4w53lax5k234p58v9r2k1gpkvdgjwl6n0vkqbw1qy8";
+       version = "0.3.3.1";
+       sha256 = "17lsjlfkr3crxyxhj7w77ga7h7c6va6z5qmyvmhwapmym1zmsqrs";
        libraryHaskellDepends = [
          aeson aeson-casing base base64-bytestring bytestring HsOpenSSL
          http-api-data http-client http-client-tls http-media mime-mail
@@ -108565,8 +108576,8 @@ self: {
      }:
      mkDerivation {
        pname = "gopro-plus";
-       version = "0.4.1.0";
-       sha256 = "1xim8kr58nnpfh1sj66p73alm1l8wwxqafx5b77wc51dwrjyz1p8";
+       version = "0.4.1.1";
+       sha256 = "1vcy9r4jnnrfc6xp34b4w5z4xgxhcnsv5sy26iazw6g07mg1v73p";
        libraryHaskellDepends = [
          aeson base bytestring containers exceptions filepath
          generic-deriving lens lens-aeson mtl random retry text time
@@ -112983,8 +112994,8 @@ self: {
        pname = "hackage-security-HTTP";
        version = "0.1.1";
        sha256 = "0chkrn4d33qjh50fpbkrkqj6jsxd5y5c2mrgqgwsdx3x08kaq8nd";
-       revision = "1";
-       editedCabalFile = "11k2jqnkqywdm2rzvcgib0p9i11z5g4d2yikfn932mjfr4ss51bj";
+       revision = "3";
+       editedCabalFile = "1nsvfqg2k1yj8pvbfx1083m29v1c9kcb9h389r380ga1b32v89nl";
        libraryHaskellDepends = [
          base bytestring hackage-security HTTP mtl network network-uri zlib
        ];
@@ -113492,34 +113503,6 @@ self: {
      }) {};
 
   "hadolint" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, gitrev, hspec, HsYAML, HUnit, language-docker
-     , megaparsec, mtl, optparse-applicative, ShellCheck, split, text
-     , void
-     }:
-     mkDerivation {
-       pname = "hadolint";
-       version = "1.18.0";
-       sha256 = "1pvf1wr8sg2yv439yyd08jz75jzmpys5629pcii1kdx5vh2rp1yx";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base bytestring containers directory filepath HsYAML
-         language-docker megaparsec mtl ShellCheck split text void
-       ];
-       executableHaskellDepends = [
-         base containers gitrev language-docker megaparsec
-         optparse-applicative text
-       ];
-       testHaskellDepends = [
-         aeson base bytestring hspec HsYAML HUnit language-docker megaparsec
-         ShellCheck split text
-       ];
-       description = "Dockerfile Linter JavaScript API";
-       license = stdenv.lib.licenses.gpl3;
-     }) {};
-
-  "hadolint_1_18_2" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , directory, filepath, gitrev, hspec, HsYAML, HUnit
      , language-docker, megaparsec, mtl, optparse-applicative, parallel
@@ -113545,7 +113528,6 @@ self: {
        ];
        description = "Dockerfile Linter JavaScript API";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hadoop-formats" = callPackage
@@ -115525,8 +115507,8 @@ self: {
      }:
      mkDerivation {
        pname = "happstack-clientsession";
-       version = "7.3.1";
-       sha256 = "1sl67wdzaf6j773iapjnc1v2k19ycd18irkdpb4px1a1mq6ym0sv";
+       version = "7.3.2";
+       sha256 = "0kl4g1y68hnj188n5a7hkj4a9s70943f837yyijanwahnmkgi1nc";
        libraryHaskellDepends = [
          base bytestring cereal clientsession happstack-server monad-control
          mtl safecopy transformers-base
@@ -115759,8 +115741,8 @@ self: {
      }:
      mkDerivation {
        pname = "happstack-hsp";
-       version = "7.3.7.4";
-       sha256 = "188fqqpq7m921qkfv2b64pikcx8zzsy376l4py4wxlkabl7fkydr";
+       version = "7.3.7.5";
+       sha256 = "1krjas0id8an3ry83xrgxl9cb18n17r394ivz05c45mwan6sbpqf";
        libraryHaskellDepends = [
          base bytestring happstack-server harp hsp hsx2hs mtl syb text
          utf8-string
@@ -115813,8 +115795,8 @@ self: {
      }:
      mkDerivation {
        pname = "happstack-jmacro";
-       version = "7.0.12.2";
-       sha256 = "0zgmh75z59g6hs8n924sbnhswjdd6b947ywiird2a3y6d2zwqj3v";
+       version = "7.0.12.3";
+       sha256 = "1phhy9sq7hiz3c50k5wyclrsjqacw8mcdyg80h3xi43zgjmff23w";
        libraryHaskellDepends = [
          base base64-bytestring bytestring cereal digest happstack-server
          jmacro text utf8-string wl-pprint-text
@@ -125509,12 +125491,12 @@ self: {
      }:
      mkDerivation {
        pname = "hex-text";
-       version = "0.1.0.0";
-       sha256 = "0if46jkzd67jwp56vmvd021qq2vfzpmaf1v2w07cy0w61icfvjxr";
+       version = "0.1.0.2";
+       sha256 = "0wgqm1ziblgljrh679i44gvdq7bqym37y1lnnpb1mk7qlv664c9h";
        libraryHaskellDepends = [ base base16-bytestring bytestring text ];
        testHaskellDepends = [ base doctest ];
        description = "ByteString-Text hexidecimal conversions";
-       license = stdenv.lib.licenses.asl20;
+       license = stdenv.lib.licenses.mit;
      }) {};
 
   "hexchat" = callPackage
@@ -126820,6 +126802,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hie-compat" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, directory
+     , filepath, ghc, ghc-boot, transformers
+     }:
+     mkDerivation {
+       pname = "hie-compat";
+       version = "0.1.0.0";
+       sha256 = "00wnb7ylahglw167n2n1b2a6b0b75ay167zzrl10jsskivxwx3h3";
+       libraryHaskellDepends = [
+         array base bytestring containers directory filepath ghc ghc-boot
+         transformers
+       ];
+       description = "HIE files for GHC 8.6 and other HIE file backports";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "hie-core" = callPackage
     ({ mkDerivation, aeson, async, base, binary, bytestring, containers
      , data-default, deepseq, directory, extra, filepath, ghc, ghc-boot
@@ -135651,14 +135649,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hslua-module-doclayout_0_2_0" = callPackage
+  "hslua-module-doclayout_0_2_0_1" = callPackage
     ({ mkDerivation, base, doclayout, hslua, tasty, tasty-hunit
      , tasty-lua, text
      }:
      mkDerivation {
        pname = "hslua-module-doclayout";
-       version = "0.2.0";
-       sha256 = "1ilkyv0wscz2kv0jkn45qc8ng5l1hvvbkwh972zvisys1m3hri4y";
+       version = "0.2.0.1";
+       sha256 = "1fwzx85lv2547gs42lp7mx9w7b0vl4hpc0ql7ip5yqp17q58a08y";
        libraryHaskellDepends = [ base doclayout hslua text ];
        testHaskellDepends = [
          base doclayout hslua tasty tasty-hunit tasty-lua
@@ -138698,6 +138696,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "http-client-openssl_0_3_2_0" = callPackage
+    ({ mkDerivation, base, bytestring, HsOpenSSL, HsOpenSSL-x509-system
+     , hspec, http-client, http-types, network
+     }:
+     mkDerivation {
+       pname = "http-client-openssl";
+       version = "0.3.2.0";
+       sha256 = "114aci8nvbzvhscla6172y7s47yp689rslhg8h7y3hmkh2zq7r65";
+       libraryHaskellDepends = [
+         base bytestring HsOpenSSL HsOpenSSL-x509-system http-client network
+       ];
+       testHaskellDepends = [
+         base HsOpenSSL hspec http-client http-types
+       ];
+       doCheck = false;
+       description = "http-client backend using the OpenSSL library";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "http-client-overrides" = callPackage
     ({ mkDerivation, aeson, base, bytestring, http-client
      , http-client-tls, http-types, network-uri, tasty, tasty-hunit
@@ -138821,10 +138839,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-client-websockets";
-       version = "0.1.0.0";
-       sha256 = "1wx1dx3n8vjz3qa9l2a7l6i2scwbwxavjh0ss6awwphyirfl0v6p";
-       revision = "1";
-       editedCabalFile = "0wj1b817w8c0cjpqkbganvrbhz99hnr5gcj47l3g4bv4n90ygrpn";
+       version = "0.1.1.0";
+       sha256 = "1kmvwhfsp1l672km2a06pww0a3wmwbxcwwg1k78xcnc767wj0g1m";
        libraryHaskellDepends = [
          base bytestring http-client network-uri utf8-string websockets
        ];
@@ -139107,8 +139123,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-io-streams";
-       version = "0.1.5.0";
-       sha256 = "0c8x4iyvg2yjsvvfvvp96ddw9fpmjiaql4c7kpf93f9i5rkyxjy5";
+       version = "0.1.6.0";
+       sha256 = "03wndmw1pblnjqhni76s5lyyw3l8zbl1csydzl8bp0h1g5vmfpmp";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring binary blaze-builder
          brotli-streams bytestring case-insensitive containers
@@ -140381,8 +140397,8 @@ self: {
      }:
      mkDerivation {
        pname = "hurl";
-       version = "1.4.2.0";
-       sha256 = "19qf4akwx7aazzy86zhkm5z60342hz07msqxir6ism98dd33fpwl";
+       version = "1.4.2.1";
+       sha256 = "158p0fnlvz03vj29q4b5lzv4070d3l64wa1zsg9v2xlcrr6lrp87";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -145053,8 +145069,8 @@ self: {
      }:
      mkDerivation {
        pname = "in-other-words";
-       version = "0.1.0.0";
-       sha256 = "06ipmkbgncsgcq5rfyn0v4plhbbrzrcx3r4xr1f3f6xv760pfyra";
+       version = "0.1.1.0";
+       sha256 = "0f11si2bnxw2bm5mfnnqh9cfwhlzdcqkw5dfjql1y618db808am9";
        libraryHaskellDepends = [
          async base exceptions monad-control mtl stm transformers
          transformers-base
@@ -145579,8 +145595,8 @@ self: {
      }:
      mkDerivation {
        pname = "indigo";
-       version = "0.3.0";
-       sha256 = "1xga3i9rdd2y53m6c8v4c2r44clhs2f82nyynf81n8zjqfgxybkl";
+       version = "0.3.1";
+       sha256 = "1xc2gk7bihgpv78cl1c15x1izwsazmdpdsagan4d6yd0zw30xci4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -149599,8 +149615,8 @@ self: {
      }:
      mkDerivation {
        pname = "j";
-       version = "0.1.1.0";
-       sha256 = "0a3xl4sr5s7436z8fnjg6vknk7wi202b8ryvswxrv1ks49h2zg8s";
+       version = "0.1.2.0";
+       sha256 = "053n10j75mv2iwrra51nv4vf48ki8q5aksqjbrlnzbhbm125jhf3";
        libraryHaskellDepends = [ base bytestring repa unix ];
        testHaskellDepends = [ base bytestring repa tasty tasty-hunit ];
        description = "J in Haskell";
@@ -152276,8 +152292,8 @@ self: {
     ({ mkDerivation, base, tasty, tasty-golden, text, xml-conduit }:
      mkDerivation {
        pname = "junit-xml";
-       version = "0.1.0.1";
-       sha256 = "1r75ncsmr5yj7xbgrw4sipjii7l3v7hj6nfi1lidc26n4m7r8ib1";
+       version = "0.1.0.2";
+       sha256 = "0sm738irwvmdnn8cvf0rnvp8s5gmr0ih241l27sasqq18nra2v04";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base text xml-conduit ];
        testHaskellDepends = [ base tasty tasty-golden ];
@@ -153957,22 +153973,24 @@ self: {
 
   "keycloak-hs" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, base64-bytestring
-     , bytestring, containers, exceptions, hslogger, http-api-data
-     , http-client, http-types, jwt, lens, mtl, safe, string-conversions
-     , text, word8, wreq
+     , bytestring, containers, exceptions, hashable, hslogger
+     , http-api-data, http-client, http-types, jose, lens, lens-aeson
+     , mtl, safe, string-conversions, text, unordered-containers, word8
+     , wreq
      }:
      mkDerivation {
        pname = "keycloak-hs";
-       version = "1.1.1";
-       sha256 = "1ycr1q7sfr68zbx1jxnfv0c19w2nv2rxczi5aixd01ck8v1kx798";
+       version = "2.1.0";
+       sha256 = "0yki4fqbgirnvcaf5p00pskh91abspivgkkdi9m93andz56vl23v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson aeson-casing base base64-bytestring bytestring containers
-         exceptions hslogger http-api-data http-client http-types jwt lens
-         mtl safe string-conversions text word8 wreq
+         exceptions hashable hslogger http-api-data http-client http-types
+         jose lens lens-aeson mtl safe string-conversions text
+         unordered-containers word8 wreq
        ];
-       executableHaskellDepends = [ base ];
+       executableHaskellDepends = [ base hslogger ];
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -156511,27 +156529,6 @@ self: {
      }:
      mkDerivation {
        pname = "language-docker";
-       version = "9.1.1";
-       sha256 = "1smrayjp8d8vqvn7lg2mg3lzsqqslysj6syh1ckbn1a5fmjpzfv2";
-       libraryHaskellDepends = [
-         base bytestring containers data-default-class megaparsec
-         prettyprinter split text time
-       ];
-       testHaskellDepends = [
-         base bytestring containers data-default-class hspec HUnit
-         megaparsec prettyprinter QuickCheck split text time
-       ];
-       description = "Dockerfile parser, pretty-printer and embedded DSL";
-       license = stdenv.lib.licenses.gpl3;
-     }) {};
-
-  "language-docker_9_1_2" = callPackage
-    ({ mkDerivation, base, bytestring, containers, data-default-class
-     , hspec, HUnit, megaparsec, prettyprinter, QuickCheck, split, text
-     , time
-     }:
-     mkDerivation {
-       pname = "language-docker";
        version = "9.1.2";
        sha256 = "014rb5jf650fhsmc02v4xc60w7v1261ri1w9ig6dw0xjdgxalvbs";
        libraryHaskellDepends = [
@@ -156544,7 +156541,6 @@ self: {
        ];
        description = "Dockerfile parser, pretty-printer and embedded DSL";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "language-dockerfile" = callPackage
@@ -160509,8 +160505,8 @@ self: {
      }:
      mkDerivation {
        pname = "liboath-hs";
-       version = "0.0.1.1";
-       sha256 = "0ikh4rch2zdv9xan70qkf68m9hdz8k86ji7jw9xci1cvg318zd1k";
+       version = "0.0.1.2";
+       sha256 = "08wnzsk82ahyb3fy2sd1ci6aw0h3wiiad2j4kxs1j90wbrwkd3ri";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -164445,6 +164441,8 @@ self: {
        pname = "log-postgres";
        version = "0.7.1.4";
        sha256 = "1m96d5486xadypm5iby8rkb979k82md394j5iaik6xk5aavcn6xx";
+       revision = "1";
+       editedCabalFile = "0yyaxibkq8c9bwhaday8ijmfbm8k3i14wd9zsgfby99b6rxra351";
        libraryHaskellDepends = [
          aeson aeson-pretty base base64-bytestring bytestring deepseq
          hpqtypes http-client lifted-base log-base mtl semigroups split text
@@ -165427,19 +165425,19 @@ self: {
     ({ mkDerivation, aeson-pretty, base, bimap, bytestring, constraints
      , containers, data-default, first-class-families, fmt, interpolate
      , lens, morley, morley-prelude, mtl, named, optparse-applicative
-     , pretty-terminal, QuickCheck, singletons, template-haskell, text
-     , text-manipulate, unordered-containers, vinyl, with-utf8
+     , singletons, template-haskell, text, text-manipulate
+     , unordered-containers, vinyl, with-utf8
      }:
      mkDerivation {
        pname = "lorentz";
-       version = "0.6.2";
-       sha256 = "13xl9f538h729zn9dqjcj10qav1ggbma9rp4pyj0cdgj5mq8mv8w";
+       version = "0.7.0";
+       sha256 = "1nwz7cdjy0s1fa64q4ymyds2m6yhqx8vxjp0p9qn7b4l7civhk9c";
        libraryHaskellDepends = [
          aeson-pretty base bimap bytestring constraints containers
          data-default first-class-families fmt interpolate lens morley
-         morley-prelude mtl named optparse-applicative pretty-terminal
-         QuickCheck singletons template-haskell text text-manipulate
-         unordered-containers vinyl with-utf8
+         morley-prelude mtl named optparse-applicative singletons
+         template-haskell text text-manipulate unordered-containers vinyl
+         with-utf8
        ];
        description = "EDSL for the Michelson Language";
        license = stdenv.lib.licenses.mit;
@@ -170559,15 +170557,15 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
-  "megaparsec_9_0_0" = callPackage
+  "megaparsec_9_0_1" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , criterion, deepseq, mtl, parser-combinators, scientific, text
      , transformers, weigh
      }:
      mkDerivation {
        pname = "megaparsec";
-       version = "9.0.0";
-       sha256 = "1x10f2b14ww306am9w06s23va26ab3vwdh0jk67ql6ybigxh0asi";
+       version = "9.0.1";
+       sha256 = "00953zvxfyjibw8c1ssmixxh0cwn59pz24zbh6s34rk3v14vqa3j";
        libraryHaskellDepends = [
          base bytestring case-insensitive containers deepseq mtl
          parser-combinators scientific text transformers
@@ -170606,7 +170604,7 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
-  "megaparsec-tests_9_0_0" = callPackage
+  "megaparsec-tests_9_0_1" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , hspec, hspec-discover, hspec-expectations, hspec-megaparsec
      , megaparsec, mtl, parser-combinators, QuickCheck, scientific, text
@@ -170614,8 +170612,8 @@ self: {
      }:
      mkDerivation {
        pname = "megaparsec-tests";
-       version = "9.0.0";
-       sha256 = "0zm246r8k48mj5v2dxjan7dsrcnw54bcm27swi5mh8c0yb3vcvab";
+       version = "9.0.1";
+       sha256 = "0synm14x1k9r5q7xmv21z0y95b42g7lvwn78mcnc3cx62x6393ng";
        libraryHaskellDepends = [
          base bytestring containers hspec hspec-expectations
          hspec-megaparsec megaparsec mtl QuickCheck text transformers
@@ -173881,8 +173879,8 @@ self: {
     ({ mkDerivation, base, vector }:
      mkDerivation {
        pname = "mmsyn2";
-       version = "0.2.0.0";
-       sha256 = "1lxfl6gr42x9rhy4jpig9hwl0bnbidrv65i8f4fr39ifrx43fgxw";
+       version = "0.3.1.0";
+       sha256 = "06n8vxqafc698ahml782klb41g9bfsvqdrl4k0blnn3m3vavnzxy";
        libraryHaskellDepends = [ base vector ];
        description = "The library that can be used for multiple (Ord a) => a -> b transformations";
        license = stdenv.lib.licenses.mit;
@@ -173904,8 +173902,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmsyn4";
-       version = "0.4.0.0";
-       sha256 = "0qfr2dlzigggbwgznh1sxxkp7qwvcba2rlhwdqs4rzaz53sx2xzj";
+       version = "0.5.0.0";
+       sha256 = "05r33lx2cxsf7a14809dgs7lhfqlglshpv22jfzrl2xy0rl3x4qz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -173924,8 +173922,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "mmsyn5";
-       version = "0.4.4.0";
-       sha256 = "1yvsx82x7m5y2swxllhb7zzgspb3lfdhrbw6n5v3xsa9vxhwa35l";
+       version = "0.5.0.0";
+       sha256 = "0xbdmlq71pjnsls67mydrfzajnnyyzp0dvzgrg2lms3pssvzs6f1";
        libraryHaskellDepends = [ base ];
        description = "Various additional operations on lists (some with intermediate Monads)";
        license = stdenv.lib.licenses.mit;
@@ -173937,8 +173935,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmsyn6ukr";
-       version = "0.8.1.0";
-       sha256 = "0r5lnx1m57kjfb1cfm9a22l9kn552y6vpfbkxpffi03ni407q65q";
+       version = "0.8.3.0";
+       sha256 = "017q1jf9490sddb0f6wjizcsv423izjqirgq7ymzpxcd4sbcdhyn";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -174116,8 +174114,8 @@ self: {
      }:
      mkDerivation {
        pname = "mock-httpd";
-       version = "0.0.0.0";
-       sha256 = "0mv669gvn61by4j7sd4w2hvzr3vpa0szrhgzdciv5g1a0gsh3kk7";
+       version = "1.0.0";
+       sha256 = "1dn680lpvh2ww0ab4wgp9a7k2w309zymkjlp3igwk01q4cbjpsg2";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -174265,6 +174263,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "modern-uri_0_3_3_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, contravariant
+     , criterion, deepseq, exceptions, hspec, hspec-discover
+     , hspec-megaparsec, megaparsec, mtl, profunctors, QuickCheck
+     , reflection, tagged, template-haskell, text, weigh
+     }:
+     mkDerivation {
+       pname = "modern-uri";
+       version = "0.3.3.0";
+       sha256 = "184vhcnpwjsvxwbdsipz7kc2xylfwfqflbbbyipag610w07a3qk2";
+       libraryHaskellDepends = [
+         base bytestring containers contravariant deepseq exceptions
+         megaparsec mtl profunctors QuickCheck reflection tagged
+         template-haskell text
+       ];
+       testHaskellDepends = [
+         base bytestring hspec hspec-megaparsec megaparsec QuickCheck text
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq megaparsec text weigh
+       ];
+       description = "Modern library for working with URIs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "modify-fasta" = callPackage
     ({ mkDerivation, base, containers, fasta, mtl, optparse-applicative
      , pipes, pipes-text, regex-tdfa, regex-tdfa-text, semigroups, split
@@ -176818,15 +176843,14 @@ self: {
      , generic-deriving, gitrev, haskeline, hex-text, interpolate, lens
      , megaparsec, memory, morley-prelude, mtl, named
      , optparse-applicative, parser-combinators, pretty-simple
-     , QuickCheck, quickcheck-arbitrary-adt, quickcheck-instances
      , semigroups, show-type, singletons, syb, template-haskell, text
      , th-lift, th-lift-instances, time, timerep, transformers-compat
      , unordered-containers, vector, vinyl, with-utf8, wl-pprint-text
      }:
      mkDerivation {
        pname = "morley";
-       version = "1.7.1";
-       sha256 = "0za05qqx64zx92fsrnlk78m0d2g3ircw0k67fym7k5a9mck6bxg0";
+       version = "1.8.1";
+       sha256 = "1lchr282394vjwgi5l0innc7szxkp7pibrbma0yza37l3q295xz2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -176834,15 +176858,15 @@ self: {
          bytestring constraints containers cryptonite data-default
          first-class-families fmt generic-deriving gitrev hex-text
          interpolate lens megaparsec memory morley-prelude mtl named
-         optparse-applicative parser-combinators QuickCheck
-         quickcheck-arbitrary-adt quickcheck-instances semigroups show-type
+         optparse-applicative parser-combinators semigroups show-type
          singletons syb template-haskell text th-lift th-lift-instances time
          timerep transformers-compat unordered-containers vector vinyl
          with-utf8 wl-pprint-text
        ];
        executableHaskellDepends = [
-         aeson base bytestring fmt haskeline megaparsec morley-prelude named
-         optparse-applicative pretty-simple text vinyl with-utf8
+         aeson base bytestring data-default fmt haskeline megaparsec
+         morley-prelude named optparse-applicative pretty-simple text vinyl
+         with-utf8
        ];
        description = "Developer tools for the Michelson Language";
        license = stdenv.lib.licenses.mit;
@@ -178467,8 +178491,8 @@ self: {
      }:
      mkDerivation {
        pname = "mu-protobuf";
-       version = "0.4.0.0";
-       sha256 = "13323mk6maj4fn1vg98nkb80k1975mqaszbj67a4mr5n2s9vrlz2";
+       version = "0.4.0.1";
+       sha256 = "1dr2vgxkzxpkz0iiwzwbficm65flwfmcs5xbxx5mg5gwf7x0qz3l";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -178503,17 +178527,18 @@ self: {
      }) {};
 
   "mu-schema" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, sop-core
-     , template-haskell, text, th-abstraction, unordered-containers
-     , uuid, vector
+    ({ mkDerivation, aeson, base, bytestring, containers
+     , first-class-families, sop-core, template-haskell, text
+     , th-abstraction, unordered-containers, uuid, vector
      }:
      mkDerivation {
        pname = "mu-schema";
-       version = "0.3.1.0";
-       sha256 = "1kl62ask8cvjimjcb9f3y3vpvk544m3zlzp4jn1yrvbmzn3px0d1";
+       version = "0.3.1.1";
+       sha256 = "0n30xn2z1dl4n28mbfnif8csvz0namll0hab1r7mhnamp0yc3gs8";
        libraryHaskellDepends = [
-         aeson base bytestring containers sop-core template-haskell text
-         th-abstraction unordered-containers uuid vector
+         aeson base bytestring containers first-class-families sop-core
+         template-haskell text th-abstraction unordered-containers uuid
+         vector
        ];
        description = "Format-independent schemas for serialization";
        license = stdenv.lib.licenses.asl20;
@@ -179813,8 +179838,8 @@ self: {
      }:
      mkDerivation {
        pname = "musicw";
-       version = "0.3.5.2";
-       sha256 = "0mn5vnjxqkpd2pgjxmchlih74a1m52v06h6f08kyb26l0sjpbfx7";
+       version = "0.3.6";
+       sha256 = "0bi57x087r22547z90n58faz78ha6z6pfmf2chwrfdys48lr8wfq";
        libraryHaskellDepends = [
          array base bytestring containers data-default file-embed ghcjs-base
          ghcjs-dom ghcjs-prim json monad-loops mtl safe text time
@@ -180504,6 +180529,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) mysql;};
 
+  "mysql_0_1_7_2" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, hspec, mysql
+     }:
+     mkDerivation {
+       pname = "mysql";
+       version = "0.1.7.2";
+       sha256 = "0vkc39hx55hqwgkhqm80ckabbjaq4f9840msznf71glzihzg8k0n";
+       setupHaskellDepends = [ base Cabal ];
+       libraryHaskellDepends = [ base bytestring containers ];
+       librarySystemDepends = [ mysql ];
+       testHaskellDepends = [ base bytestring hspec ];
+       description = "A low-level MySQL client library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) mysql;};
+
   "mysql-effect" = callPackage
     ({ mkDerivation, base, bytestring, extensible-effects, mysql
      , mysql-simple
@@ -181608,8 +181649,8 @@ self: {
        pname = "natural-transformation";
        version = "0.4";
        sha256 = "1by8xwjc23l6pa9l4iv7zp82dykpll3vc3hgxk0pgva724n8xhma";
-       revision = "8";
-       editedCabalFile = "007vgw2zaf2z9fyi9f0spmqn6fd8j438r3vnkgmazzvb43szmi0n";
+       revision = "9";
+       editedCabalFile = "1db5ln24wcn4fcf92096iff8jp7q531ccm8pgbqincrbxayahl1s";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base containers quickcheck-instances tasty tasty-quickcheck
@@ -184489,8 +184530,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export-tools-extra";
-       version = "0.5.6.0";
-       sha256 = "08a13v1fx7lad7wdibij79vdcbqn10lcb2n6lhzq70097f8a06vm";
+       version = "0.5.7.0";
+       sha256 = "0dhw68vkrwfgv9q4skml8kq6zgrg7awjq4vxqp541szvamwvgh6y";
        libraryHaskellDepends = [
          aeson ansi-wl-pprint array base base64 binary bytestring
          case-insensitive containers ede enclosed-exceptions http-client
@@ -186203,8 +186244,8 @@ self: {
      }:
      mkDerivation {
        pname = "nri-env-parser";
-       version = "0.1.0.1";
-       sha256 = "1v6984ndlalrvdff10frik8bxqskmzf8cr13q6095jl6krjivkay";
+       version = "0.1.0.2";
+       sha256 = "0cl9f6p83k0r7ha6hzgmrv0abi9rw5p0wr838jyhazk179g37rrn";
        libraryHaskellDepends = [
          base modern-uri network-uri nri-prelude text
        ];
@@ -186223,8 +186264,8 @@ self: {
      }:
      mkDerivation {
        pname = "nri-prelude";
-       version = "0.1.0.4";
-       sha256 = "0x8jvrp2kcj9a23g370fj9v6mmp3c3vi05dg3arq1ri5in4y6psa";
+       version = "0.2.0.0";
+       sha256 = "061klliw29a8kkbwgqkhqbil7jq85pxgmqn21xwszi0g16jb8ayx";
        libraryHaskellDepends = [
          aeson ansi-terminal async auto-update base bytestring
          concurrent-output containers directory exceptions filepath hedgehog
@@ -191940,6 +191981,8 @@ self: {
        pname = "pam";
        version = "0.2.0.0";
        sha256 = "0j4hm7ph0iszf8wyqpy5jiplr14jj37z2yvgcgy7p5ab5p5r38gx";
+       revision = "1";
+       editedCabalFile = "09d6acii3gimk3f04scy9k5f7di4sdam753ddi587px530pwdigb";
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ pam ];
        libraryToolDepends = [ c2hs ];
@@ -192048,7 +192091,7 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
-  "pandoc_2_11_0_2" = callPackage
+  "pandoc_2_11_0_4" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, attoparsec, base
      , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
      , case-insensitive, citeproc, commonmark, commonmark-extensions
@@ -192067,8 +192110,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.11.0.2";
-       sha256 = "0lnzypad3jfix7h78gk4fvyl0x3n7f77i8bn6dn2lzdsf6wasy8x";
+       version = "2.11.0.4";
+       sha256 = "18nqdhvk0rgrzmbhab9vb05g8w9hvwx0ncf5cqp5ijxycilcskb8";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -193668,8 +193711,8 @@ self: {
     ({ mkDerivation, base, parallel, tree-monad }:
      mkDerivation {
        pname = "parallel-tree-search";
-       version = "0.4.1";
-       sha256 = "1x2k649q6gqz9z16vwg1j59ajf2wp59lfwb65g8819fz4rwimncr";
+       version = "0.4.2";
+       sha256 = "08r8xl3x5zvsy3d3ss9m9l7kb0dyp7hjrwxlnz7g2jl7p5x8rjbd";
        libraryHaskellDepends = [ base parallel tree-monad ];
        description = "Parallel Tree Search";
        license = stdenv.lib.licenses.publicDomain;
@@ -193734,8 +193777,8 @@ self: {
        pname = "paramtree";
        version = "0.1.1.1";
        sha256 = "0ls9wzmz5lk7gyl8lx9cjs49zpwhrv955fs5q6ypv7bpbvjbchs1";
-       revision = "2";
-       editedCabalFile = "17wyi6q6azm2s04pm1alc183yp01a8qbvj1nymjxdzvrl2dkk2g6";
+       revision = "3";
+       editedCabalFile = "1nd342xk0sm9dlh5915b9kbksyd87wpji1mw8m8phm8d72prcxmi";
        libraryHaskellDepends = [ base containers ];
        testHaskellDepends = [
          base bytestring tasty tasty-golden tasty-hunit temporary
@@ -195062,26 +195105,6 @@ self: {
      }:
      mkDerivation {
        pname = "path-io";
-       version = "1.6.1";
-       sha256 = "1qbnjwx72idbqwi5gkhnphf2phdszdf6y1aqf77y17kks3992vmn";
-       libraryHaskellDepends = [
-         base containers directory dlist exceptions filepath path temporary
-         time transformers unix-compat
-       ];
-       testHaskellDepends = [
-         base directory exceptions filepath hspec path transformers
-         unix-compat
-       ];
-       description = "Interface to ‘directory’ package for users of ‘path’";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "path-io_1_6_2" = callPackage
-    ({ mkDerivation, base, containers, directory, dlist, exceptions
-     , filepath, hspec, path, temporary, time, transformers, unix-compat
-     }:
-     mkDerivation {
-       pname = "path-io";
        version = "1.6.2";
        sha256 = "11mrs0awd343far3rmcphdli65g737haxg7fwx3pl04fgdxfbpdq";
        libraryHaskellDepends = [
@@ -195094,7 +195117,6 @@ self: {
        ];
        description = "Interface to ‘directory’ package for users of ‘path’";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "path-like" = callPackage
@@ -196669,8 +196691,8 @@ self: {
      }:
      mkDerivation {
        pname = "periodic-client";
-       version = "1.1.7.1";
-       sha256 = "0d9ngiq064fajiy2c4sddpgr93ia13iv83rdnvbk05x7agi0srjb";
+       version = "1.1.7.2";
+       sha256 = "0ldjxfq8p4spv4vgqjyklmcd8k3n2mrinma5w6k29d1wvyf5kxz5";
        libraryHaskellDepends = [
          base binary byteable bytestring hslogger metro metro-socket mtl
          periodic-common resource-pool transformers unliftio
@@ -197672,7 +197694,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "persistent-test_2_0_3_2" = callPackage
+  "persistent-test_2_0_3_3" = callPackage
     ({ mkDerivation, aeson, base, blaze-html, bytestring, conduit
      , containers, exceptions, hspec, hspec-expectations, HUnit
      , monad-control, monad-logger, mtl, path-pieces, persistent
@@ -197682,8 +197704,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-test";
-       version = "2.0.3.2";
-       sha256 = "0d7a6m4qm6xzyv7h2fqn9hgv7r7q6dwh7x04ddsrygjxdgpwgqf3";
+       version = "2.0.3.3";
+       sha256 = "0ry6inln7grmcj58k3sfjid24069n4kmph6sikvm352b9ffw6h5x";
        libraryHaskellDepends = [
          aeson base blaze-html bytestring conduit containers exceptions
          hspec hspec-expectations HUnit monad-control monad-logger mtl
@@ -197722,13 +197744,13 @@ self: {
 
   "persistent-vector" = callPackage
     ({ mkDerivation, base, containers, criterion, deepseq, QuickCheck
-     , test-framework, test-framework-quickcheck2
+     , test-framework, test-framework-quickcheck2, transformers
      }:
      mkDerivation {
        pname = "persistent-vector";
-       version = "0.1.1";
-       sha256 = "1l5v02pjb24gk4hw28knjp55l7z6jzcfiklfikd2nqbl7866c2j2";
-       libraryHaskellDepends = [ base deepseq ];
+       version = "0.2.0";
+       sha256 = "07fxfmkgjszssagj4miw1sx9vi782hwsf6gay7z6mb96mygbld5y";
+       libraryHaskellDepends = [ base deepseq transformers ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
        ];
@@ -198319,6 +198341,36 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "phonetic-languages-common" = callPackage
+    ({ mkDerivation, base, subG, vector }:
+     mkDerivation {
+       pname = "phonetic-languages-common";
+       version = "0.1.0.0";
+       sha256 = "12al80szl9mxapwq6b0kp6bnhnwqxjqzyf72ycxvpx1xlppsfza9";
+       libraryHaskellDepends = [ base subG vector ];
+       description = "A generalization of the uniqueness-periods-vector-common package";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "phonetic-languages-plus" = callPackage
+    ({ mkDerivation, base, bytestring, lists-flines, parallel
+     , uniqueness-periods-vector-stats
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-plus";
+       version = "0.1.0.0";
+       sha256 = "1yzqrqkikkx6ii1n7zs5vf1k5m26v8bj8m0h43zmxb1j30klh2ir";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base lists-flines ];
+       executableHaskellDepends = [
+         base bytestring lists-flines parallel
+         uniqueness-periods-vector-stats
+       ];
+       description = "Some common shared between different packages functions";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "phonetic-languages-rhythmicity" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -198341,6 +198393,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "phonetic-languages-vector" = callPackage
+    ({ mkDerivation, base, vector }:
+     mkDerivation {
+       pname = "phonetic-languages-vector";
+       version = "0.1.0.0";
+       sha256 = "12mhmrfpdkxl00yfvy5jc74c7xnrj10pcydnn3xdhzj0fvp1zrll";
+       libraryHaskellDepends = [ base vector ];
+       description = "A generalization of the functionality of the uniqueness-periods-vector package";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "phooey" = callPackage
     ({ mkDerivation, array, base, mtl, reactive, TypeCompose, wx
      , wxcore
@@ -200752,25 +200815,23 @@ self: {
      }) {};
 
   "playlists" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, doctest, filepath
-     , hspec, optparse-applicative, text, word8
+    ({ mkDerivation, attoparsec, base, bytestring, filepath, hspec
+     , optparse-applicative, text, word8
      }:
      mkDerivation {
        pname = "playlists";
-       version = "0.5.0.0";
-       sha256 = "0653aifikinz69wq3d6sfkchcchhwlndh1lf40qrk96941qss0d6";
-       revision = "1";
-       editedCabalFile = "19vwlvva12p4r3ch1ik7m6h5r7cy0f35qn8smd41pv47v29dsxiq";
+       version = "0.5.1";
+       sha256 = "1hrxmp33pzmvpg9j102hjradnlq261hs9amqkivqjfn9y4pb8inm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          attoparsec base bytestring filepath text word8
        ];
        executableHaskellDepends = [
-         base bytestring optparse-applicative text
+         attoparsec base bytestring filepath optparse-applicative text word8
        ];
        testHaskellDepends = [
-         base bytestring doctest filepath hspec text
+         attoparsec base bytestring filepath hspec text word8
        ];
        description = "Library and executable for working with playlist files";
        license = stdenv.lib.licenses.bsd3;
@@ -201997,6 +202058,36 @@ self: {
        broken = true;
      }) {};
 
+  "polysemy-extra" = callPackage
+    ({ mkDerivation, base, containers, polysemy, polysemy-zoo }:
+     mkDerivation {
+       pname = "polysemy-extra";
+       version = "0.1.0.0";
+       sha256 = "1y5k935jh6dfs87kdih1ibb61ljkp39wyrkg1n2zss020cdhbi7g";
+       libraryHaskellDepends = [ base containers polysemy polysemy-zoo ];
+       description = "Run a KVStore as a filesystem in polysemy";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "polysemy-fskvstore" = callPackage
+    ({ mkDerivation, base, bytestring, path, polysemy, polysemy-zoo
+     , rio, unliftio-path
+     }:
+     mkDerivation {
+       pname = "polysemy-fskvstore";
+       version = "0.1.0.0";
+       sha256 = "1hg552w21hgq5jvcbrw1kn1870xdyf44a3xqd87nrj9s9k2j4pk2";
+       libraryHaskellDepends = [
+         base bytestring path polysemy polysemy-zoo rio unliftio-path
+       ];
+       description = "Run a KVStore as a filesystem in polysemy";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "polysemy-http" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring
      , case-insensitive, co-log-core, co-log-polysemy, composition
@@ -202031,6 +202122,39 @@ self: {
        broken = true;
      }) {};
 
+  "polysemy-kvstore-jsonfile" = callPackage
+    ({ mkDerivation, aeson, base, containers, exceptions, extra, path
+     , polysemy, polysemy-zoo, unliftio-path
+     }:
+     mkDerivation {
+       pname = "polysemy-kvstore-jsonfile";
+       version = "0.1.0.0";
+       sha256 = "1lbjq1hlq6cf6px5f6zqi04sl0yz0rpyq2m2y16zknjz3wi7zqvi";
+       libraryHaskellDepends = [
+         aeson base containers exceptions extra path polysemy polysemy-zoo
+         unliftio-path
+       ];
+       description = "Run a KVStore as a single json file in polysemy";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "polysemy-methodology" = callPackage
+    ({ mkDerivation, base, polysemy, polysemy-plugin, polysemy-zoo }:
+     mkDerivation {
+       pname = "polysemy-methodology";
+       version = "0.1.2.1";
+       sha256 = "0is4jnmfn2gx78ijxwvhm8qwk2gqz31hh9pg5r8y43hyx7im40ay";
+       libraryHaskellDepends = [
+         base polysemy polysemy-plugin polysemy-zoo
+       ];
+       description = "Domain modelling algebra for polysemy";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "polysemy-optics" = callPackage
     ({ mkDerivation, base, optics, polysemy, polysemy-zoo }:
      mkDerivation {
@@ -204778,28 +204902,30 @@ self: {
 
   "predicate-typed" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, binary, bytestring
-     , comonad, containers, deepseq, directory, doctest, hashable, lens
-     , mtl, pcre-heavy, pcre-light, pretty, pretty-terminal, QuickCheck
-     , safe, stm, string-conversions, tasty, tasty-hunit
-     , tasty-quickcheck, template-haskell, text, th-lift, these, time
-     , tree-view
+     , comonad, constraints, containers, deepseq, directory, doctest
+     , hashable, lens, lens-action, pcre-heavy, pcre-light
+     , pretty-terminal, QuickCheck, random, safe, stm
+     , string-conversions, tasty, tasty-hunit, tasty-quickcheck
+     , template-haskell, text, th-lift, these, time
      }:
      mkDerivation {
        pname = "predicate-typed";
-       version = "0.7.3.0";
-       sha256 = "124f9bdvq30xaadg6020q0pmfv56mpkw25ws306xp8mfs61g1src";
+       version = "0.7.4.0";
+       sha256 = "04vxyw4bgzbkk56dw7p8b4x12m4wymxwh83537hvphdv9qj71ph9";
+       revision = "1";
+       editedCabalFile = "064zfd03nw1bd0p8vwymk0kscbpvxrgzbwmqys3ys1rqzjpnfdrp";
        libraryHaskellDepends = [
-         aeson aeson-pretty base binary bytestring comonad containers
-         deepseq directory hashable lens mtl pcre-heavy pcre-light pretty
-         pretty-terminal QuickCheck safe string-conversions template-haskell
-         text th-lift these time tree-view
+         aeson aeson-pretty base binary bytestring comonad constraints
+         containers deepseq directory hashable lens lens-action pcre-heavy
+         pcre-light pretty-terminal QuickCheck random safe
+         string-conversions template-haskell text th-lift these time
        ];
        testHaskellDepends = [
-         aeson aeson-pretty base binary bytestring comonad containers
-         deepseq directory doctest hashable lens mtl pcre-heavy pcre-light
-         pretty pretty-terminal QuickCheck safe stm string-conversions tasty
-         tasty-hunit tasty-quickcheck template-haskell text th-lift these
-         time tree-view
+         aeson aeson-pretty base binary bytestring comonad constraints
+         containers deepseq directory doctest hashable lens lens-action
+         pcre-heavy pcre-light pretty-terminal QuickCheck random safe stm
+         string-conversions tasty tasty-hunit tasty-quickcheck
+         template-haskell text th-lift these time
        ];
        description = "Predicates, Refinement types and Dsl";
        license = stdenv.lib.licenses.bsd3;
@@ -205301,8 +205427,8 @@ self: {
      }:
      mkDerivation {
        pname = "pretty-diff";
-       version = "0.2.0.2";
-       sha256 = "0nz6shwyw6pkwd8n4rvix4fn0f5mvxx1xkc6q4k1xrg2ylg73ksv";
+       version = "0.2.0.3";
+       sha256 = "1pnq05zw7zyfikga8y27pkya4wrf0m3mrksmzi8l7jp9qdhkyia1";
        libraryHaskellDepends = [ base data-default Diff text ];
        testHaskellDepends = [
          base data-default Diff tasty tasty-hunit tasty-test-reporter text
@@ -213165,10 +213291,8 @@ self: {
      }:
      mkDerivation {
        pname = "rank1dynamic";
-       version = "0.4.0";
-       sha256 = "07dbfp0sc32q1p8xh4ap8m3b287r9hh4r8vfsrppdm5pabz4nhiw";
-       revision = "1";
-       editedCabalFile = "1idh1iz15pzdhrhy19584i9ahz41ijbmf56wbb2wns2kipy6w9lr";
+       version = "0.4.1";
+       sha256 = "19x2w44f31589vf4s428m7g3dz75qykr7mv599rf3gls4zjx781r";
        libraryHaskellDepends = [ base binary ];
        testHaskellDepends = [
          base HUnit test-framework test-framework-hunit
@@ -214811,7 +214935,7 @@ self: {
        broken = true;
      }) {};
 
-  "reanimate_1_1_1_0" = callPackage
+  "reanimate_1_1_2_1" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, array, attoparsec, base
      , base64-bytestring, bytestring, cassava, cereal, colour
      , containers, cryptohash-sha256, cubicbezier, directory, filelock
@@ -214826,8 +214950,8 @@ self: {
      }:
      mkDerivation {
        pname = "reanimate";
-       version = "1.1.1.0";
-       sha256 = "05illhid0nnypkl7znzkmc7b3wc7lmv8jn2sdcj39xr1yr8hji7f";
+       version = "1.1.2.1";
+       sha256 = "043jpim33pliymnks47i39hz36wp61rvwjyk9f0k89whsi74bkd6";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson ansi-terminal array attoparsec base base64-bytestring
@@ -216581,6 +216705,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "reform-happstack_0_2_5_4" = callPackage
+    ({ mkDerivation, base, bytestring, happstack-server, mtl, random
+     , reform, text, utf8-string
+     }:
+     mkDerivation {
+       pname = "reform-happstack";
+       version = "0.2.5.4";
+       sha256 = "1xknj906vr0q6vrxrvna1777v7hsdg1l3r0wwnga7k1yn5hcfc76";
+       libraryHaskellDepends = [
+         base bytestring happstack-server mtl random reform text utf8-string
+       ];
+       description = "Happstack support for reform";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "reform-hsp" = callPackage
     ({ mkDerivation, base, hsp, hsx2hs, reform, text }:
      mkDerivation {
@@ -224663,17 +224803,17 @@ self: {
      , containers, crackNum, deepseq, directory, doctest, filepath
      , gauge, Glob, hlint, mtl, pretty, process, QuickCheck, random
      , silently, syb, tasty, tasty-golden, tasty-hunit, tasty-quickcheck
-     , template-haskell, time, transformers, z3
+     , template-haskell, time, transformers, uniplate, z3
      }:
      mkDerivation {
        pname = "sbv";
-       version = "8.8";
-       sha256 = "0xm05g9kxh38jjbssnhyw6c8q4rsyjndm2b8r36cqwx0n607zvgy";
+       version = "8.9";
+       sha256 = "1h8bhi1pjlg0v16wwqcvil7gq98b6dn8ckzmrsgb8sc3qz0nxj51";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array async base containers crackNum deepseq directory filepath mtl
          pretty process QuickCheck random syb template-haskell time
-         transformers
+         transformers uniplate
        ];
        testHaskellDepends = [
          base bytestring containers crackNum directory doctest filepath Glob
@@ -238081,6 +238221,49 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "snap-server_1_1_2_0" = callPackage
+    ({ mkDerivation, attoparsec, base, base16-bytestring, blaze-builder
+     , bytestring, bytestring-builder, case-insensitive, clock
+     , containers, criterion, deepseq, directory, filepath, HsOpenSSL
+     , http-common, http-streams, HUnit, io-streams, io-streams-haproxy
+     , lifted-base, monad-control, mtl, network, old-locale
+     , openssl-streams, parallel, QuickCheck, random, snap-core
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     , text, threads, time, transformers, unix, unix-compat, vector
+     }:
+     mkDerivation {
+       pname = "snap-server";
+       version = "1.1.2.0";
+       sha256 = "0w4yv9a5ilpma0335ariwap2iscmdbaaif88lq3cm7px910nyc4j";
+       configureFlags = [ "-fopenssl" ];
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base blaze-builder bytestring bytestring-builder
+         case-insensitive clock containers filepath HsOpenSSL io-streams
+         io-streams-haproxy lifted-base mtl network old-locale
+         openssl-streams snap-core text time transformers unix unix-compat
+         vector
+       ];
+       testHaskellDepends = [
+         attoparsec base base16-bytestring blaze-builder bytestring
+         bytestring-builder case-insensitive clock containers deepseq
+         directory filepath HsOpenSSL http-common http-streams HUnit
+         io-streams io-streams-haproxy lifted-base monad-control mtl network
+         old-locale openssl-streams parallel QuickCheck random snap-core
+         test-framework test-framework-hunit test-framework-quickcheck2 text
+         threads time transformers unix unix-compat vector
+       ];
+       benchmarkHaskellDepends = [
+         attoparsec base blaze-builder bytestring bytestring-builder
+         criterion io-streams io-streams-haproxy snap-core transformers
+         vector
+       ];
+       description = "A web server for the Snap Framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "snap-stream" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, io-streams
      , snap-core
@@ -242501,8 +242684,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack-clean-old";
-       version = "0.1";
-       sha256 = "12q3x0lj8mjhfr6zrizl7995qca28qccjfqwhriciv35l4sny9md";
+       version = "0.2";
+       sha256 = "1mk92hgh1prnw0piwccxb1nf1383yap7csx03abnwp8anl8xw5dc";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -242774,10 +242957,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack2cabal";
-       version = "1.0.11";
-       sha256 = "1lm4dl743xscrksgqg1v1ylm4bb3i8j470yih8si968k7xzcdvx2";
-       revision = "1";
-       editedCabalFile = "1ga8z004rvrvi58yfr7vmikngn3q8134z87nzaj0lll39kljni83";
+       version = "1.0.12";
+       sha256 = "0424qz4fy8218a0zr8pw5kbaldrb3wddvsb87sjqbb4q5qcm7rj7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -243997,27 +244178,28 @@ self: {
 
   "staversion" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring, Cabal
-     , containers, directory, filepath, heredoc, hspec, http-client
-     , http-client-tls, http-types, megaparsec, optparse-applicative
-     , pretty, process, QuickCheck, semigroups, text, transformers
-     , transformers-compat, unordered-containers, yaml
+     , containers, directory, filepath, hashable, heredoc, hspec
+     , http-client, http-client-tls, http-types, megaparsec
+     , optparse-applicative, pretty, process, QuickCheck, semigroups
+     , text, transformers, transformers-compat, unordered-containers
+     , yaml
      }:
      mkDerivation {
        pname = "staversion";
-       version = "0.2.3.7";
-       sha256 = "0mrkm7gr6s27dngws7p3mcfyp9pdvyr25mg9nd3ygklaql74jmng";
+       version = "0.2.4.0";
+       sha256 = "1n6f7ka4ncadp4svd3bc81qxdgiff85mws5apx7wdhcwfn8wbsib";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson ansi-wl-pprint base bytestring Cabal containers directory
-         filepath http-client http-client-tls http-types megaparsec
+         filepath hashable http-client http-client-tls http-types megaparsec
          optparse-applicative pretty process semigroups text transformers
          transformers-compat unordered-containers yaml
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
          base bytestring Cabal filepath heredoc hspec QuickCheck semigroups
-         text
+         text unordered-containers
        ];
        description = "What version is the package X in stackage lts-Y.ZZ?";
        license = stdenv.lib.licenses.bsd3;
@@ -245511,6 +245693,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "streaming-bytestring_0_2_0" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, exceptions, ghc-prim
+     , mmorph, mtl, resourcet, smallcheck, streaming, tasty, tasty-hunit
+     , tasty-smallcheck, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "streaming-bytestring";
+       version = "0.2.0";
+       sha256 = "1vmbg84xc7ix7ihs96ia13gdpi7z3grrkq9qai6j8s1klnzpljhi";
+       libraryHaskellDepends = [
+         base bytestring deepseq exceptions ghc-prim mmorph mtl resourcet
+         streaming transformers transformers-base
+       ];
+       testHaskellDepends = [
+         base bytestring resourcet smallcheck streaming tasty tasty-hunit
+         tasty-smallcheck transformers
+       ];
+       description = "Fast, effectful byte streams";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "streaming-cassava" = callPackage
     ({ mkDerivation, base, bytestring, cassava, hspec, mtl, QuickCheck
      , quickcheck-instances, streaming, streaming-bytestring, text
@@ -246532,6 +246736,8 @@ self: {
        pname = "string-interpolate";
        version = "0.3.0.2";
        sha256 = "1dkw4q2fxnr7gnish45lryxwrmdy93ffa1010qdnjlnz5m3dxbyl";
+       revision = "1";
+       editedCabalFile = "1rwylfxa821260mxfsr6l6grcyz7gxk18mvjijfhg5sm53v4c1ka";
        libraryHaskellDepends = [
          base bytestring haskell-src-exts haskell-src-meta split
          template-haskell text text-conversions utf8-string
@@ -251871,15 +252077,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "tasty_1_3_1" = callPackage
+  "tasty_1_4" = callPackage
     ({ mkDerivation, ansi-terminal, async, base, clock, containers, mtl
      , optparse-applicative, stm, tagged, unbounded-delays, unix
      , wcwidth
      }:
      mkDerivation {
        pname = "tasty";
-       version = "1.3.1";
-       sha256 = "1p8lq0yd1880knnygv4spgjj3j2mi8bawd018vcxy9rml7sdzm8w";
+       version = "1.4";
+       sha256 = "0jkia4zg01936gm2klpn3c4grlmdgiq0qnqq1cz7xg4baza14q3b";
        libraryHaskellDepends = [
          ansi-terminal async base clock containers mtl optparse-applicative
          stm tagged unbounded-delays unix wcwidth
@@ -252460,6 +252666,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "tasty-rerun_1_1_18" = callPackage
+    ({ mkDerivation, base, containers, mtl, optparse-applicative, split
+     , stm, tagged, tasty, transformers
+     }:
+     mkDerivation {
+       pname = "tasty-rerun";
+       version = "1.1.18";
+       sha256 = "0sccp5zx9v2rx741nbmgd8mzjhy5m4v74hk26d23xz93ph8aqx7s";
+       libraryHaskellDepends = [
+         base containers mtl optparse-applicative split stm tagged tasty
+         transformers
+       ];
+       description = "Rerun only tests which failed in a previous test run";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tasty-silver" = callPackage
     ({ mkDerivation, ansi-terminal, async, base, bytestring, containers
      , deepseq, directory, filepath, mtl, optparse-applicative, process
@@ -252534,8 +252757,8 @@ self: {
      }:
      mkDerivation {
        pname = "tasty-test-reporter";
-       version = "0.1.1.2";
-       sha256 = "1v6s3dd3ynzw0690hz1abi8l2j6zlpfj61g072w176n7is6x7p73";
+       version = "0.1.1.4";
+       sha256 = "0aail968niiy4yicbb0nfd7z46vxgp5zf1k9ndh4smskihz8kjin";
        libraryHaskellDepends = [
          ansi-terminal base concurrent-output containers directory filepath
          junit-xml mtl safe-exceptions stm tagged tasty text
@@ -253146,8 +253369,8 @@ self: {
      }:
      mkDerivation {
        pname = "telegram-bot-simple";
-       version = "0.3.1";
-       sha256 = "09r64kgvgc5xx4wa5mxlc6fi4cf5qa81j7334wr7niv88fs659yb";
+       version = "0.3.3";
+       sha256 = "0lbk7j6y2hzkd5hhd1wsdvsixgnim1xzy1nram2msm5jin9wy9rb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -256568,16 +256791,21 @@ self: {
      }) {};
 
   "th-lego" = callPackage
-    ({ mkDerivation, base, template-haskell
+    ({ mkDerivation, base, QuickCheck, quickcheck-instances, rerebase
+     , tasty, tasty-hunit, tasty-quickcheck, template-haskell
      , template-haskell-compat-v0208, text
      }:
      mkDerivation {
        pname = "th-lego";
-       version = "0.1.0.4";
-       sha256 = "16pls283c6r4rx9aiyqacfrq5cy8d1q964fnzzk62517nicb9xyv";
+       version = "0.2.2";
+       sha256 = "0z9bpycyayvjr01pl704yhmchdfiyfi58drkq9ccxahgrwa0gpfc";
        libraryHaskellDepends = [
          base template-haskell template-haskell-compat-v0208 text
        ];
+       testHaskellDepends = [
+         QuickCheck quickcheck-instances rerebase tasty tasty-hunit
+         tasty-quickcheck template-haskell
+       ];
        description = "Template Haskell construction utilities";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -256932,8 +257160,8 @@ self: {
      }:
      mkDerivation {
        pname = "themoviedb";
-       version = "1.2.0.0";
-       sha256 = "1dchnsk9mx2v01apj5ilnsl3w9vj6f5pkqrm9701zw7rcp7xds0w";
+       version = "1.2.0.1";
+       sha256 = "1n6raffsjn9iq427nyh7hnnx1jvgvilisfy6dz72hl4ry5198sdq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -261761,8 +261989,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "tree-monad";
-       version = "0.3";
-       sha256 = "1zs1qgp908d0y7dm9mhzwl529z2aw24zr8balsvn1lzl1aynzslm";
+       version = "0.3.1";
+       sha256 = "0ny57rygkgwn8i733gz2zb12i5niq5q7lrqvzfwsnjd0b40yighf";
        libraryHaskellDepends = [ base ];
        description = "Non-Determinism Monad for Tree Search";
        license = stdenv.lib.licenses.bsd3;
@@ -265853,8 +266081,8 @@ self: {
     ({ mkDerivation, base, bytestring, mmsyn2, mmsyn5, vector }:
      mkDerivation {
        pname = "ukrainian-phonetics-basic";
-       version = "0.1.1.0";
-       sha256 = "0k7lv4lzmkjyfk5r664gmdaqbj08s1kp7n4w8lw7kn7fmxvwkraf";
+       version = "0.1.7.0";
+       sha256 = "0rjyy6yxwd799svqd34wjjz5wvxzlkr7bl65s1wmvdfbs9dvfk95";
        libraryHaskellDepends = [ base bytestring mmsyn2 mmsyn5 vector ];
        description = "A library to work with the basic Ukrainian phonetics and syllable segmentation";
        license = stdenv.lib.licenses.mit;
@@ -266925,8 +267153,8 @@ self: {
      }) {};
 
   "uniqueness-periods-vector-examples" = callPackage
-    ({ mkDerivation, base, bytestring, lists-flines, mmsyn6ukr
-     , parallel, phonetic-languages-ukrainian, print-info
+    ({ mkDerivation, base, mmsyn6ukr, parallel, phonetic-languages-plus
+     , phonetic-languages-ukrainian, print-info
      , uniqueness-periods-vector, uniqueness-periods-vector-common
      , uniqueness-periods-vector-filters
      , uniqueness-periods-vector-general
@@ -266935,17 +267163,16 @@ self: {
      }:
      mkDerivation {
        pname = "uniqueness-periods-vector-examples";
-       version = "0.13.1.0";
-       sha256 = "0z6jglwli11845x4nlk8b3wk4d6j6i1m7jr3vhgri64g34qj1767";
+       version = "0.14.1.0";
+       sha256 = "191ihc62lzgdnzr0z0skgrxb5zg1jbnv2g6faafy9krla3j4rn4s";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base lists-flines uniqueness-periods-vector
-         uniqueness-periods-vector-common
-         uniqueness-periods-vector-properties vector
+         base uniqueness-periods-vector uniqueness-periods-vector-common
+         uniqueness-periods-vector-properties
        ];
        executableHaskellDepends = [
-         base bytestring lists-flines mmsyn6ukr parallel
+         base mmsyn6ukr parallel phonetic-languages-plus
          phonetic-languages-ukrainian print-info uniqueness-periods-vector
          uniqueness-periods-vector-common uniqueness-periods-vector-filters
          uniqueness-periods-vector-general
@@ -266973,8 +267200,8 @@ self: {
      }:
      mkDerivation {
        pname = "uniqueness-periods-vector-general";
-       version = "0.5.1.0";
-       sha256 = "1abqcxrlchhi5jag6rvaar48ip356p9r1zcndbja72z4dxg9b9q0";
+       version = "0.5.2.0";
+       sha256 = "08jprdi4rlq6i923q9lg6mjbiyphh26ray6kbi1pk84im3y0s6bm";
        libraryHaskellDepends = [
          base print-info uniqueness-periods-vector-common vector
        ];
@@ -267561,6 +267788,8 @@ self: {
        pname = "unjson";
        version = "0.15.3";
        sha256 = "1p2bk9j5ww0zbkaw1wvl2122h763zn4ddjzg5rka948q3d6zivvi";
+       revision = "1";
+       editedCabalFile = "1jgin4v0j5siyrchrlkp8y5abs30mk8j9d5ah3r0b84683whnnrx";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring containers free hashable invariant
          pretty primitive scientific semigroups text time
@@ -267629,6 +267858,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "unliftio_0_2_13_1" = 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.13.1";
+       sha256 = "08q00kqg934y9cpj18kcgzcw3a2wgs6kjvgldgvr2a3vndwn95m0";
+       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 = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unliftio-core" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -269387,11 +269642,11 @@ self: {
      }:
      mkDerivation {
        pname = "uuagc";
-       version = "0.9.53";
-       sha256 = "0cij4kf8f2151xz2q935bn9bhrqig9alc008vds7cw6pkb32ngz6";
+       version = "0.9.53.1";
+       sha256 = "0agmvc1ng1dpnl0z8njilc2r51rgl9fh3lmxgprwc0y5dqqrn6zr";
        isLibrary = true;
        isExecutable = true;
-       setupHaskellDepends = [ base Cabal ];
+       setupHaskellDepends = [ base Cabal uuagc-cabal ];
        libraryHaskellDepends = [
          array base containers directory filepath ghc-prim haskell-src-exts
          mtl uuagc-cabal uulib
@@ -269635,15 +269890,15 @@ self: {
      }:
      mkDerivation {
        pname = "uusi";
-       version = "0.0.0.0";
-       sha256 = "0wii4azq5aj8d1c8n5plsfqqvf9x5s4qw82mhvjhnzja3d6cck4f";
+       version = "0.0.1.0";
+       sha256 = "1kxhrkfsw6n2ic5f41bw2cjpix1k9ij5s3fhvsxgfiiwn7h5g7x2";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base Cabal colourista directory microlens optparse-applicative
          process text
        ];
-       description = "A program removing all version constraints of dependencies in .cabal file";
+       description = "Remove all version constraints of dependencies in .cabal file";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
@@ -271864,8 +272119,8 @@ self: {
      }:
      mkDerivation {
        pname = "vimeta";
-       version = "0.3.0.0";
-       sha256 = "0npz5mx9w6srz5p0is3yzgfwssakdycv8h0h38ff7q0sivq3pfnv";
+       version = "0.3.0.1";
+       sha256 = "0i834y50b4820109asrzp61bqprxs9rfgr9b8310zhsisrlbxgl3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -272665,8 +272920,8 @@ self: {
     ({ mkDerivation, base, bytestring, transformers, vector, vulkan }:
      mkDerivation {
        pname = "vulkan";
-       version = "3.6.10";
-       sha256 = "028c6n6f62nnwszb4px5mhg2spqb2z4psm06fbc2r1qw6vpqhxn6";
+       version = "3.6.11";
+       sha256 = "065l0nk4w3if01aavfzgnalpp39xz1j8xw022l9w9pmdmb2y0fjm";
        libraryHaskellDepends = [ base bytestring transformers vector ];
        librarySystemDepends = [ vulkan ];
        description = "Bindings to the Vulkan graphics API";
@@ -274368,8 +274623,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-saml2";
-       version = "0.2.1.0";
-       sha256 = "0yljqfrrp426pn17fq28arw3ygrb3i84fr28r0hns0cv4a4sz4gx";
+       version = "0.2.1.2";
+       sha256 = "1hd408fs4w0lpqg0shnrwpx98fh6idzk8la3gn8xghhml189xgwl";
        libraryHaskellDepends = [
          base base64-bytestring bytestring c14n cryptonite
          data-default-class http-types mtl text time vault wai wai-extra
@@ -275505,8 +275760,8 @@ self: {
      }:
      mkDerivation {
        pname = "web-routes-happstack";
-       version = "0.23.12";
-       sha256 = "0p5fa2cdpk6s9n0wa7nllhk1naa3a8a8vx63q6da8ifk6x8jn68a";
+       version = "0.23.12.1";
+       sha256 = "06gifknfv6g9rd9f83r75hc3sld4xb4f1czxs9k5ca7n1l1vlccy";
        libraryHaskellDepends = [
          base bytestring happstack-server text web-routes
        ];
@@ -276669,6 +276924,8 @@ self: {
        pname = "what4";
        version = "1.0";
        sha256 = "0yyyq2gzl7srjq6inj1dqdhpxd58r1rhjajwxi0gr5pmxfzv7k8w";
+       revision = "1";
+       editedCabalFile = "04ab8nvnngb3bjv94mkcr17hh2m943m4pyk3klbnmpwyp9ip6pmf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -276734,8 +276991,8 @@ self: {
     ({ mkDerivation, base, shelly, template-haskell, text }:
      mkDerivation {
        pname = "which";
-       version = "0.1.0.0";
-       sha256 = "0w1jik9bkndx8ssd00i1ii686kb0fd2sc0slr7ki561g5z1xa7dz";
+       version = "0.2";
+       sha256 = "1c1l79bdpqfg4n3p5gkc3x362m9k11hmyydr2y3j0xs4hhm3d5aa";
        libraryHaskellDepends = [ base shelly template-haskell text ];
        description = "Determine the full path to an executable";
        license = stdenv.lib.licenses.bsd3;
@@ -277090,33 +277347,33 @@ self: {
      }) {};
 
   "winery" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, cereal
-     , containers, cpu, deepseq, directory, fast-builder, gauge
-     , hashable, HUnit, megaparsec, mtl, prettyprinter
-     , prettyprinter-ansi-terminal, QuickCheck, quickcheck-instances
-     , scientific, semigroups, serialise, store, text, time
-     , transformers, unordered-containers, vector
+    ({ mkDerivation, aeson, barbies, barbies-th, base, binary
+     , bytestring, cereal, containers, cpu, deepseq, directory
+     , fast-builder, gauge, hashable, HUnit, megaparsec, mtl
+     , prettyprinter, prettyprinter-ansi-terminal, QuickCheck
+     , quickcheck-instances, scientific, semigroups, serialise, store
+     , text, time, transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "winery";
-       version = "1.3.1";
-       sha256 = "0p504hglnih3gxc8x2iqqq9sih1l6chq53nijlv8f6wy15j9p5hh";
+       version = "1.3.2";
+       sha256 = "0ll6zm6zmhl9xmlbhj8is33zny4l7hwvf8lpvgqw0jcvz7j955a2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring containers cpu fast-builder hashable HUnit
-         megaparsec mtl prettyprinter prettyprinter-ansi-terminal QuickCheck
-         scientific semigroups text time transformers unordered-containers
-         vector
+         aeson barbies barbies-th base bytestring containers cpu
+         fast-builder hashable HUnit megaparsec mtl prettyprinter
+         prettyprinter-ansi-terminal QuickCheck scientific semigroups text
+         time transformers unordered-containers vector
        ];
        executableHaskellDepends = [
          aeson base bytestring megaparsec prettyprinter
          prettyprinter-ansi-terminal text
        ];
        testHaskellDepends = [
-         base bytestring containers fast-builder QuickCheck
-         quickcheck-instances scientific text time unordered-containers
-         vector
+         barbies barbies-th base bytestring containers fast-builder
+         QuickCheck quickcheck-instances scientific text time
+         unordered-containers vector
        ];
        benchmarkHaskellDepends = [
          aeson base binary bytestring cereal deepseq directory gauge
@@ -277124,6 +277381,8 @@ self: {
        ];
        description = "A compact, well-typed seralisation format for Haskell values";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "winio" = callPackage
@@ -279928,8 +280187,8 @@ self: {
      }:
      mkDerivation {
        pname = "xlsx";
-       version = "0.8.1";
-       sha256 = "1prb6369af2w0rni2ha32yzd9r17yi0xnyn1dzwdzq03maxikgy9";
+       version = "0.8.2";
+       sha256 = "0kjfnp24nc97qqla1z65wzy59cch336pjncz1kdfakmgv27mv38a";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring binary-search bytestring conduit
          containers data-default deepseq errors extra filepath lens mtl
@@ -283606,43 +283865,6 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.6.18.4";
-       sha256 = "1i69k0782prgf3wzi714fx0g3jsd654kncn62c7sijsbs0zc6h5h";
-       libraryHaskellDepends = [
-         aeson auto-update base blaze-html blaze-markup bytestring
-         case-insensitive cereal clientsession conduit conduit-extra
-         containers cookie deepseq fast-logger http-types memory
-         monad-logger mtl parsec path-pieces primitive random resourcet
-         shakespeare template-haskell text time transformers unix-compat
-         unliftio unordered-containers vector wai wai-extra wai-logger warp
-         word8
-       ];
-       testHaskellDepends = [
-         async base bytestring clientsession conduit conduit-extra
-         containers cookie hspec hspec-expectations http-types HUnit network
-         path-pieces random resourcet shakespeare streaming-commons
-         template-haskell text transformers unliftio wai wai-extra warp
-       ];
-       benchmarkHaskellDepends = [
-         base blaze-html bytestring gauge shakespeare text
-       ];
-       description = "Creation of type-safe, RESTful web applications";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "yesod-core_1_6_18_5" = callPackage
-    ({ mkDerivation, aeson, async, auto-update, base, blaze-html
-     , blaze-markup, bytestring, case-insensitive, cereal, clientsession
-     , conduit, conduit-extra, containers, cookie, deepseq, fast-logger
-     , gauge, hspec, hspec-expectations, http-types, HUnit, memory
-     , monad-logger, mtl, network, parsec, path-pieces, primitive
-     , random, resourcet, shakespeare, streaming-commons
-     , template-haskell, text, time, transformers, unix-compat, unliftio
-     , unordered-containers, vector, wai, wai-extra, wai-logger, warp
-     , word8
-     }:
-     mkDerivation {
-       pname = "yesod-core";
        version = "1.6.18.5";
        sha256 = "11f51x3slqnan07fp2bxswd3y994wccqg48gakdk272i2bcg2vfq";
        libraryHaskellDepends = [
@@ -283665,7 +283887,6 @@ self: {
        ];
        description = "Creation of type-safe, RESTful web applications";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yesod-crud" = callPackage
@@ -287695,36 +287916,34 @@ self: {
      }) {};
 
   "zxcvbn-hs" = callPackage
-    ({ mkDerivation, attoparsec, base, base64-bytestring, binary
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring, binary
      , binary-instances, containers, criterion, fgl, hedgehog, lens
      , math-functions, tasty, tasty-hedgehog, tasty-hunit, text, time
      , unordered-containers, vector, zlib
      }:
      mkDerivation {
        pname = "zxcvbn-hs";
-       version = "0.2.1.0";
-       sha256 = "1gvarz005nlz9q5bkdwvplvsmwwchhx0arpq1grmh39r706lh4d8";
-       revision = "2";
-       editedCabalFile = "05l4pni4264rcivixzakjkph5qr4jr8qb4jbfj2nw106n1zhjaka";
+       version = "0.3.0.0";
+       sha256 = "13rz0bjvcj9hrxnxqbw7bl6529yz4aqawq6abssj4nmxbmgrj7xf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         attoparsec base base64-bytestring binary binary-instances
+         aeson attoparsec base base64-bytestring binary binary-instances
          containers fgl lens math-functions text time unordered-containers
          vector zlib
        ];
        executableHaskellDepends = [
-         attoparsec base base64-bytestring binary binary-instances
+         aeson attoparsec base base64-bytestring binary binary-instances
          containers fgl lens math-functions text time unordered-containers
          vector zlib
        ];
        testHaskellDepends = [
-         attoparsec base base64-bytestring binary binary-instances
+         aeson attoparsec base base64-bytestring binary binary-instances
          containers fgl hedgehog lens math-functions tasty tasty-hedgehog
          tasty-hunit text time unordered-containers vector zlib
        ];
        benchmarkHaskellDepends = [
-         attoparsec base base64-bytestring binary binary-instances
+         aeson attoparsec base base64-bytestring binary binary-instances
          containers criterion fgl lens math-functions text time
          unordered-containers vector zlib
        ];
diff --git a/pkgs/development/interpreters/dart/default.nix b/pkgs/development/interpreters/dart/default.nix
index 050e7f14979cd..7d185edb1d197 100644
--- a/pkgs/development/interpreters/dart/default.nix
+++ b/pkgs/development/interpreters/dart/default.nix
@@ -36,6 +36,10 @@ let
       url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
       sha256 = "1p66fkdh1kv0ypmadmg67c3y3li3aaf1lahqh2g6r6qrzbh5da2p";
     };
+    "2.10.0-x86_64-linux" = fetchurl {
+      url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
+      sha256 = "0dncmsfbwcn3ygflhp83i6z4bvc02fbpaq1vzdzw8xdk3sbynchb";
+    };
     "2.9.0-4.0.dev-x86_64-linux" = fetchurl {
       url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
       sha256 = "16d9842fb3qbc0hy0zmimav9zndfkq96glgykj20xssc88qpjk2r";
@@ -48,6 +52,10 @@ let
       url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
       sha256 = "1x6mlmc4hccmx42k7srhma18faxpxvghjwqahna80508rdpljwgc";
     };
+    "2.11.0-161.0.dev-x86_64-linux" = fetchurl {
+      url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
+      sha256 = "05difz4w2fyh2yq5p5pkrqk59jqljlxhc1i6lmy5kihh6z69r12i";
+    };
   };
 
 in
diff --git a/pkgs/development/libraries/armadillo/default.nix b/pkgs/development/libraries/armadillo/default.nix
index 169777f2b42cd..a306a02be0696 100644
--- a/pkgs/development/libraries/armadillo/default.nix
+++ b/pkgs/development/libraries/armadillo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "armadillo";
-  version = "10.1.0";
+  version = "10.1.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    sha256 = "15c3amyrk496v0s6r2pn8dw4v82f4ld347nbv5qdzd6injsg3qvj";
+    sha256 = "13hwynp1dnk3flw8ly00wjj12x2wsvj2da39bzay8c08m3dj3q4m";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/attica/default.nix b/pkgs/development/libraries/attica/default.nix
deleted file mode 100644
index d883100fd3cea..0000000000000
--- a/pkgs/development/libraries/attica/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, fetchurl, cmake, qt4 }:
-
-stdenv.mkDerivation rec {
-  name = "attica-0.4.2";
-  
-  src = fetchurl {
-    url = "mirror://kde/stable/attica/${name}.tar.bz2";
-    sha256 = "1y74gsyzi70dfr9d1f1b08k130rm3jaibsppg8dv5h3211vm771v";
-  };
-  
-  buildInputs = [ qt4 ];
-  nativeBuildInputs = [ cmake ];
-  
-  meta = with stdenv.lib; {
-    description = "Library to access Open Collaboration Service providers";
-    license = "LGPL";
-    maintainers = [ maintainers.sander maintainers.phreedom ];
-    inherit (qt4.meta) platforms;
-  };
-}
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
index c23fb87f2fae2..df7043cd44ed7 100644
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -244,6 +244,15 @@ stdenv.mkDerivation rec {
   pname = "ffmpeg-full";
   inherit (ffmpeg) src version;
 
+  # this should go away in the next release
+  patches = [
+    (fetchpatch {
+      url = "https://git.videolan.org/?p=ffmpeg.git;a=patch;h=7c59e1b0f285cd7c7b35fcd71f49c5fd52cf9315";
+      sha256 = "sha256-dqpmpDFETTuWHWolMoLaubU4BeDEuQaBNA0wmzL1f8o=";
+      name = "fix_libsrt.patch";
+    })
+  ];
+
   prePatch = ''
     patchShebangs .
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix
index d1917de37d6ac..3c97ce21ce070 100644
--- a/pkgs/development/libraries/libarchive/default.nix
+++ b/pkgs/development/libraries/libarchive/default.nix
@@ -2,8 +2,10 @@
   fetchFromGitHub, stdenv, pkgconfig, autoreconfHook,
   acl, attr, bzip2, e2fsprogs, libxml2, lzo, openssl, sharutils, xz, zlib, zstd,
 
-  # Optional but increases closure only negligibly.
-  xarSupport ? true,
+  # Optional but increases closure only negligibly. Also, while libxml2
+  # builds fine on windows, but libarchive has trouble linking windows
+  # things it depends on for some reason.
+  xarSupport ? stdenv.hostPlatform.isUnix,
 }:
 
 assert xarSupport -> libxml2 != null;
@@ -22,7 +24,9 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "lib" "dev" ];
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
-  buildInputs = [ sharutils zlib bzip2 openssl xz lzo zstd ]
+  buildInputs =
+    stdenv.lib.optional stdenv.hostPlatform.isUnix sharutils
+    ++ [ zlib bzip2 openssl xz lzo zstd ]
     ++ stdenv.lib.optionals stdenv.isLinux [ e2fsprogs attr acl ]
     ++ stdenv.lib.optional xarSupport libxml2;
 
diff --git a/pkgs/development/libraries/libguestfs/default.nix b/pkgs/development/libraries/libguestfs/default.nix
index d8a037aa5f159..b875b3579037b 100644
--- a/pkgs/development/libraries/libguestfs/default.nix
+++ b/pkgs/development/libraries/libguestfs/default.nix
@@ -91,5 +91,7 @@ stdenv.mkDerivation rec {
     homepage = "https://libguestfs.org/";
     maintainers = with maintainers; [offline];
     platforms = platforms.linux;
+    # this is to avoid "output size exceeded"
+    hydraPlatforms = if appliance != null then appliance.meta.hydraPlatforms else platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix
index c03367da97ba2..5741a121c463b 100644
--- a/pkgs/development/libraries/libical/default.nix
+++ b/pkgs/development/libraries/libical/default.nix
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
     runHook preInstallCheck
 
     export TZDIR=${tzdata}/share/zoneinfo
-    ctest --output-on-failure
+    ctest --output-on-failure --exclude-regex 'timezones|libical-glib-array|libical-glib-component|libical-glib-timezone'
 
     runHook postInstallCheck
   '';
diff --git a/pkgs/development/libraries/nuraft/default.nix b/pkgs/development/libraries/nuraft/default.nix
new file mode 100644
index 0000000000000..1554e16781567
--- /dev/null
+++ b/pkgs/development/libraries/nuraft/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, boost172, asio, openssl, zlib }:
+
+stdenv.mkDerivation rec {
+  pname = "nuraft";
+  version = "1.1.2";
+
+  src = fetchFromGitHub {
+    owner = "eBay";
+    repo = "NuRaft";
+    rev = "v${version}";
+    sha256 = "sha256-l6rG8f+JAWfAJxEZPKRHZo2k8x9WbtSJC3gGCSMHYfs=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ boost172 asio openssl zlib ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/eBay/NuRaft";
+    description = "C++ implementation of Raft core logic as a replication library";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ wheelsandmetal ];
+  };
+}
diff --git a/pkgs/development/libraries/nuspell/default.nix b/pkgs/development/libraries/nuspell/default.nix
index 7de16c7c1199c..c8cb7734e90c6 100644
--- a/pkgs/development/libraries/nuspell/default.nix
+++ b/pkgs/development/libraries/nuspell/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nuspell";
-  version = "3.1.2";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "nuspell";
     repo = "nuspell";
     rev = "v${version}";
-    sha256 = "0wbb6dwmzlsyy224y0liis0azgzwbjdvcyzc31pw1aw6vbp36na6";
+    sha256 = "1jfnwva2i67i9pyh123a5h2zs5p7gw77qh4w7qkx61jigsyxc5v7";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ronn ];
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     description = "Free and open source C++ spell checking library";
     homepage = "https://nuspell.github.io/";
     maintainers = with maintainers; [ fpletz ];
-    license = licenses.gpl3;
+    license = licenses.lgpl3Plus;
   };
 }
diff --git a/pkgs/development/libraries/qtutilities/default.nix b/pkgs/development/libraries/qtutilities/default.nix
index 388665f5aabd7..916e381ab4da3 100644
--- a/pkgs/development/libraries/qtutilities/default.nix
+++ b/pkgs/development/libraries/qtutilities/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qtutilities";
-  version = "6.0.6";
+  version = "6.3.0";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0g3f18530w5f8dlzrh45k868hspga5p3m8qpz7pcg3nsdjda8cwz";
+    sha256 = "sha256-vHx2JMPqioY8jUpBOIFdhhN1mIUV3LS8ayQOo3g7bY0=";
   };
 
   buildInputs = [ qtbase cpp-utilities ];
diff --git a/pkgs/development/libraries/science/biology/htslib/default.nix b/pkgs/development/libraries/science/biology/htslib/default.nix
index 7ee63e9bb4131..9da6595e7a43a 100644
--- a/pkgs/development/libraries/science/biology/htslib/default.nix
+++ b/pkgs/development/libraries/science/biology/htslib/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "htslib";
-  version = "1.10.2";
+  version = "1.11";
 
   src = fetchurl {
     url = "https://github.com/samtools/htslib/releases/download/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "0f8rglbvf4aaw41i2sxlpq7pvhly93sjqiz0l4q3hwki5zg47dg3";
+    sha256 = "1mrq4mihzx37yqhj3sfz6da6mw49niia808bzsw2gkkgmadxvyng";
   };
 
   # perl is only used during the check phase.
diff --git a/pkgs/development/libraries/science/networking/ns-3/default.nix b/pkgs/development/libraries/science/networking/ns-3/default.nix
index 73be2a8ca6c2b..b611a2baf8e25 100644
--- a/pkgs/development/libraries/science/networking/ns-3/default.nix
+++ b/pkgs/development/libraries/science/networking/ns-3/default.nix
@@ -26,7 +26,7 @@
 
 # All modules can be enabled by choosing 'all_modules'.
 # we include here the DCE mandatory ones
-, modules ? [ "core" "network" "internet" "point-to-point" "fd-net-device" "netanim"]
+, modules ? [ "core" "network" "internet" "point-to-point" "point-to-point-layout" "fd-net-device" "netanim" ]
 , lib
 }:
 
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "ns-3";
-  version = "30";
+  version = "32";
 
   src = fetchFromGitLab {
     owner = "nsnam";
     repo   = "ns-3-dev";
     rev    = "ns-3.${version}";
-    sha256 = "0smdi3gglmafpc7a20hj2lbmwks3d5fpsicpn39lmm3svazw0bvp";
+    sha256 = "158yjhsrmslj1q4zcq5p16hv9i82qnxx714l7idicncn0wzrfx7k";
   };
 
   nativeBuildInputs = [ wafHook ];
@@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     patchShebangs doc/ns3_html_theme/get_version.sh
+    # FIX/Remove when https://github.com/NixOS/nixpkgs/pull/69310 gets merged
+    sed -i 's/program.ns3_module_dependencies.copy()/program.ns3_module_dependencies[:]/g' wscript
   '';
 
   wafConfigureFlags = with stdenv.lib; [
diff --git a/pkgs/development/libraries/sentencepiece/default.nix b/pkgs/development/libraries/sentencepiece/default.nix
index 9b699035bf9f6..e918a3b3d1d20 100644
--- a/pkgs/development/libraries/sentencepiece/default.nix
+++ b/pkgs/development/libraries/sentencepiece/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sentencepiece";
-  version = "0.1.93";
+  version = "0.1.94";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0h9c1xs0sab23labh8m3ar6kvzfldv2id2f17icja61ihyw06nrd";
+    sha256 = "sha256:11cqw4hx33gw2jmrg11jyp7fj9pwzwjwzqcn24jfsbgh6n8gks5x";
   };
 
   nativeBuildInputs = [ cmake ] ++ lib.optional withGPerfTools gperftools;
diff --git a/pkgs/development/libraries/tdlib/default.nix b/pkgs/development/libraries/tdlib/default.nix
index 4bf49e297e335..165506f964727 100644
--- a/pkgs/development/libraries/tdlib/default.nix
+++ b/pkgs/development/libraries/tdlib/default.nix
@@ -1,14 +1,20 @@
 { fetchFromGitHub, gperf, openssl, readline, zlib, cmake, stdenv }:
 
 stdenv.mkDerivation rec {
-  version = "1.6.0";
+  version = "unstable-2020-10-25";
   pname = "tdlib";
 
   src = fetchFromGitHub {
     owner = "tdlib";
     repo = "td";
-    rev = "v${version}";
-    sha256 = "0zlzpl6fgszg18kwycyyyrnkm255dvc6fkq0b0y32m5wvwwl36cv";
+
+    # At version 1.6.0, this line was `rev = "v${version}". Version 1.6.9 (here called `unstable-2020-10-25`) uses an
+    # explicit revision because 1.6.9 is not a tdlib GitHub release, and is therefore not hosted at
+    # `https://github.com/tdlib/td/releases/tag/v1.6.9`. Please return to the `rev = "v${version}"` style on the next
+    # version bump if you can, since that will allow `nixpkgs-update` to update the package automatically.
+    rev = "32f2338bd199dd06a1b4b5f1ad14f2d4f2868f01";
+
+    sha256 = "0wv03hlgzrsc04kcwnwz6dsmkdzvhb0i1wjs08gzivwxw06pkq4n";
   };
 
   buildInputs = [ gperf openssl readline zlib ];
diff --git a/pkgs/development/ocaml-modules/base64/default.nix b/pkgs/development/ocaml-modules/base64/default.nix
index b2e3e0c5e74d3..de0bc13e2833f 100644
--- a/pkgs/development/ocaml-modules/base64/default.nix
+++ b/pkgs/development/ocaml-modules/base64/default.nix
@@ -1,25 +1,17 @@
-{ lib, fetchpatch, fetchzip, buildDunePackage, alcotest, bos }:
-
-let version = "3.2.0"; in
+{ lib, fetchurl, buildDunePackage, alcotest, bos, dune-configurator }:
 
 buildDunePackage rec {
   pname = "base64";
-  inherit version;
-
-  src = fetchzip {
-    url = "https://github.com/mirage/ocaml-base64/archive/v${version}.tar.gz";
-    sha256 = "1ilw3zj0w6cq7i4pvr8m2kv5l5f2y9aldmv72drlwwns013b1gwy";
-  };
+  version = "3.4.0";
 
-  minimumOCamlVersion = "4.03";
+  useDune2 = true;
 
-  buildInputs = [ bos ];
+  src = fetchurl {
+    url = "https://github.com/mirage/ocaml-base64/releases/download/v${version}/base64-v${version}.tbz";
+    sha256 = "0d0n5gd4nkdsz14jnxq13f1f7rzxmndg5xql039a8wfppmazd70w";
+  };
 
-  # Fix test-suite for alcotest ≥ 1.0
-  patches = [(fetchpatch {
-    url = "https://github.com/mirage/ocaml-base64/commit/8d334d02aa52875158fae3e2fb8fe0a5596598d0.patch";
-    sha256 = "0lvqdp98qavpzis1wgwh3ijajq79hq47898gsrk37fpyjbrdzf5q";
-  })];
+  buildInputs = [ bos dune-configurator ];
 
   doCheck = true;
   checkInputs = [ alcotest ];
diff --git a/pkgs/development/ocaml-modules/biocaml/default.nix b/pkgs/development/ocaml-modules/biocaml/default.nix
index be62a1c6d2cd2..b7cab4cef6d11 100644
--- a/pkgs/development/ocaml-modules/biocaml/default.nix
+++ b/pkgs/development/ocaml-modules/biocaml/default.nix
@@ -6,12 +6,12 @@ buildDunePackage rec {
   pname = "biocaml";
   version = "0.10.1";
 
-  owner = "biocaml";
+  useDune2 = true;
 
   minimumOCamlVersion = "4.07";
 
   src = fetchFromGitHub {
-    inherit owner;
+    owner = "biocaml";
     repo   = pname;
     rev    = "v${version}";
     sha256 = "1f19nc8ld0iv45jjnsvaah3ddj88s2n9wj8mrz726kzg85cfr8xj";
diff --git a/pkgs/development/ocaml-modules/bistro/default.nix b/pkgs/development/ocaml-modules/bistro/default.nix
index 9603f283ee4fa..78ca63ab90c22 100644
--- a/pkgs/development/ocaml-modules/bistro/default.nix
+++ b/pkgs/development/ocaml-modules/bistro/default.nix
@@ -5,6 +5,9 @@
 buildDunePackage rec {
   pname = "bistro";
   version = "0.5.0";
+
+  useDune2 = true;
+
   src = fetchFromGitHub {
     owner = "pveber";
     repo = pname;
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 6cb802e437d7f..3fed7c55d4521 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -7,6 +7,8 @@ buildDunePackage rec {
 	pname = "cohttp";
 	version = "2.5.4";
 
+	useDune2 = true;
+
 	minimumOCamlVersion = "4.04.1";
 
 	src = fetchurl {
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix
index 1f261be62022c..8357d748ce8f9 100644
--- a/pkgs/development/ocaml-modules/cohttp/lwt.nix
+++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -8,7 +8,7 @@ else
 
 buildDunePackage {
 	pname = "cohttp-lwt";
-	inherit (cohttp) version src meta;
+	inherit (cohttp) version src useDune2 meta;
 
 	buildInputs = [ uri ppx_sexp_conv ];
 
diff --git a/pkgs/development/ocaml-modules/curly/default.nix b/pkgs/development/ocaml-modules/curly/default.nix
index a17ea72140ff1..236b9c19c928a 100644
--- a/pkgs/development/ocaml-modules/curly/default.nix
+++ b/pkgs/development/ocaml-modules/curly/default.nix
@@ -1,25 +1,26 @@
-{ lib, buildDunePackage, fetchFromGitHub, ocaml
+{ stdenv, buildDunePackage, fetchurl, ocaml
 , result, alcotest, cohttp-lwt-unix, odoc, curl }:
 
 buildDunePackage rec {
   pname = "curly";
-  version = "unstable-2019-11-14";
+  version = "0.2.0";
 
   minimumOCamlVersion = "4.02";
 
   useDune2 = true;
 
-  src = fetchFromGitHub {
-    owner  = "rgrinberg";
-    repo   = pname;
-    rev    = "33a538c89ef8279d4591454a7f699a4183dde5d0";
-    sha256 = "10pxbvf5xrsajaxrccxh2lqhgp3yaf61z9w03rvb2mq44nc2dggz";
+  src = fetchurl {
+    url = "https://github.com/rgrinberg/curly/releases/download/${version}/curly-${version}.tbz";
+    sha256 = "07vqdrklar0d5i83ip7sjw2c1v18a9m3anw07vmi5ay29pxzal6k";
   };
 
   propagatedBuildInputs = [ result ];
   checkInputs = [ alcotest cohttp-lwt-unix ];
-  # test dependencies are only available for >= 4.05
-  doCheck = lib.versionAtLeast ocaml.version "4.05";
+  # test dependencies are only available for >= 4.08
+  doCheck = stdenv.lib.versionAtLeast ocaml.version "4.08"
+    # Some test fails in macOS sandbox
+    # > Fatal error: exception Unix.Unix_error(Unix.EPERM, "bind", "")
+    && !stdenv.isDarwin;
 
   postPatch = ''
     substituteInPlace src/curly.ml \
diff --git a/pkgs/development/ocaml-modules/fiat-p256/default.nix b/pkgs/development/ocaml-modules/fiat-p256/default.nix
index ac7e6640eeaba..3ebe98ab775d9 100644
--- a/pkgs/development/ocaml-modules/fiat-p256/default.nix
+++ b/pkgs/development/ocaml-modules/fiat-p256/default.nix
@@ -5,6 +5,7 @@
 buildDunePackage rec {
   pname = "fiat-p256";
   version = "0.2.1";
+  useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/fiat/releases/download/v${version}/${pname}-v${version}.tbz";
diff --git a/pkgs/development/ocaml-modules/hex/default.nix b/pkgs/development/ocaml-modules/hex/default.nix
index 8e9dd2db25008..526989734abdc 100644
--- a/pkgs/development/ocaml-modules/hex/default.nix
+++ b/pkgs/development/ocaml-modules/hex/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, fetchurl, buildDunePackage, cstruct }:
+{ stdenv, fetchurl, buildDunePackage, bigarray-compat, cstruct }:
 
 buildDunePackage rec {
   pname = "hex";
-  version = "1.3.0";
+  version = "1.4.0";
+
+  useDune2 = true;
 
   minimumOCamlVersion = "4.02";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-v${version}.tbz";
-    sha256 = "193567pn58df3b824vmfanncdfgf9cxzl7q3rq39zl9szvzhvkja";
+    sha256 = "07b9y0lmnflsslkrm6xilkj40n8sf2hjqkyqghnk7sw5l0plkqsp";
   };
 
-  propagatedBuildInputs = [ cstruct ];
+  propagatedBuildInputs = [ bigarray-compat cstruct ];
   doCheck = true;
 
   meta = {
diff --git a/pkgs/development/ocaml-modules/jwto/default.nix b/pkgs/development/ocaml-modules/jwto/default.nix
index a4cf0aae69188..1c7622f2805ac 100644
--- a/pkgs/development/ocaml-modules/jwto/default.nix
+++ b/pkgs/development/ocaml-modules/jwto/default.nix
@@ -5,6 +5,8 @@ buildDunePackage rec {
   pname = "jwto";
   version = "0.3.0";
 
+  useDune2 = true;
+
   minimumOCamlVersion = "4.05";
 
   src = fetchFromGitHub {
diff --git a/pkgs/development/ocaml-modules/re/default.nix b/pkgs/development/ocaml-modules/re/default.nix
index 8881821490ab1..ca3cf1e826756 100644
--- a/pkgs/development/ocaml-modules/re/default.nix
+++ b/pkgs/development/ocaml-modules/re/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchzip, buildDunePackage, ocaml, ounit, seq }:
+{ lib, fetchurl, buildDunePackage, ocaml, ounit, seq }:
 
 buildDunePackage rec {
   pname = "re";
@@ -6,9 +6,9 @@ buildDunePackage rec {
 
   minimumOCamlVersion = "4.02";
 
-  src = fetchzip {
-    url = "https://github.com/ocaml/ocaml-re/archive/${version}.tar.gz";
-    sha256 = "07ycb103mr4mrkxfd63cwlsn023xvcjp0ra0k7n2gwrg0mwxmfss";
+  src = fetchurl {
+    url = "https://github.com/ocaml/ocaml-re/releases/download/${version}/re-${version}.tbz";
+    sha256 = "1gas4ky49zgxph3870nffzkr6y41kkpqp4nj38pz1gh49zcf12aj";
   };
 
   buildInputs = lib.optional doCheck ounit;
diff --git a/pkgs/development/ocaml-modules/webmachine/default.nix b/pkgs/development/ocaml-modules/webmachine/default.nix
index 3bf163607cd25..afb26cfb354b3 100644
--- a/pkgs/development/ocaml-modules/webmachine/default.nix
+++ b/pkgs/development/ocaml-modules/webmachine/default.nix
@@ -6,6 +6,7 @@
 buildDunePackage rec {
   pname = "webmachine";
   version = "0.6.2";
+  useDune2 = true;
 
   minimumOCamlVersion = "4.04";
 
diff --git a/pkgs/development/python-modules/anyio/default.nix b/pkgs/development/python-modules/anyio/default.nix
new file mode 100644
index 0000000000000..516b8520f00e2
--- /dev/null
+++ b/pkgs/development/python-modules/anyio/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, idna
+, sniffio
+, typing-extensions
+, curio
+, hypothesis
+, pytestCheckHook
+, trio
+, trustme
+, uvloop
+}:
+
+buildPythonPackage rec {
+  pname = "anyio";
+  version = "2.0.2";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "agronholm";
+    repo = pname;
+    rev = version;
+    sha256 = "06nazfrm2sclp3lpgsn9wl8vmqxvx36s3gr2gnqz3zhjpf3glkxv";
+  };
+
+  propagatedBuildInputs = [
+    idna
+    sniffio
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
+  ];
+
+  checkInputs = [
+    curio
+    hypothesis
+    pytestCheckHook
+    trio
+    trustme
+    uvloop
+  ];
+
+  pytestFlagsArray = [
+    # lots of DNS lookups
+    "--ignore=tests/test_sockets.py"
+  ];
+
+  pythonImportsCheck = [ "anyio" ];
+
+  meta = with lib; {
+    description = "High level compatibility layer for multiple asynchronous event loop implementations on Python";
+    homepage = "https://github.com/agronholm/anyio";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/asgi-csrf/default.nix b/pkgs/development/python-modules/asgi-csrf/default.nix
index 12c94aee15737..e838ec787c319 100644
--- a/pkgs/development/python-modules/asgi-csrf/default.nix
+++ b/pkgs/development/python-modules/asgi-csrf/default.nix
@@ -1,8 +1,8 @@
 { stdenv, buildPythonPackage, isPy27, fetchFromGitHub, itsdangerous, python-multipart
-, pytest, starlette, httpx, pytest-asyncio }:
+, pytestCheckHook, starlette, httpx, pytest-asyncio }:
 
 buildPythonPackage rec {
-  version = "0.7";
+  version = "0.7.1";
   pname = "asgi-csrf";
   disabled = isPy27;
 
@@ -11,15 +11,26 @@ buildPythonPackage rec {
     owner = "simonw";
     repo = pname;
     rev = version;
-    sha256 = "1vf4lh007790836cp3hd6wf8wsgj045dcg0w1cm335p08zz6j4k7";
+    sha256 = "1hhqrb9r46y6i3d3w6hc9zm6yyikdyd2k5pcbyw0r9fl959yi4hf";
   };
 
-  propagatedBuildInputs = [ itsdangerous python-multipart ];
+  propagatedBuildInputs = [
+    itsdangerous
+    python-multipart
+  ];
+
+  checkInputs = [
+    httpx
+    pytest-asyncio
+    pytestCheckHook
+    starlette
+  ];
+
+  # tests fail while importing a private module from httpx
+  #  E   ModuleNotFoundError: No module named 'httpx._content_streams'
+  # https://github.com/simonw/asgi-csrf/issues/18
+  doCheck = false;
 
-  checkInputs = [ pytest starlette httpx pytest-asyncio ];
-  checkPhase = ''
-    pytest test_asgi_csrf.py
-  '';
   pythonImportsCheck = [ "asgi_csrf" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/async_stagger/default.nix b/pkgs/development/python-modules/async_stagger/default.nix
new file mode 100644
index 0000000000000..034a8329b121f
--- /dev/null
+++ b/pkgs/development/python-modules/async_stagger/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchpatch
+, pythonOlder
+, pytestCheckHook
+, pytest-asyncio
+, pytest-mock
+}:
+
+buildPythonPackage rec {
+  pname = "async_stagger";
+  version = "0.3.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "007l54fbk2dfzv3vmqz98m1i37mzxkkva5r4fiwq2pg8nb61fy0w";
+  };
+
+  patches = [
+    (fetchpatch {
+      # Fix test failures on Python 3.8
+      # https://github.com/twisteroidambassador/async_stagger/issues/4
+      url = "https://github.com/twisteroidambassador/async_stagger/commit/736ab20ff9c172628d911f1e6f72420399ec9631.patch";
+      sha256 = "1ygqd9n56sj83lvgmv6nrx3m0sp3646s5k7z697qx43xslixj731";
+    })
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-asyncio
+    pytest-mock
+  ];
+
+  pythonImportsCheck = [ "async_stagger" ];
+
+  meta = with lib; {
+    description = "Happy Eyeballs connection algorithm and underlying scheduling logic in asyncio";
+    homepage = "https://github.com/twisteroidambassador/async_stagger";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/asyncio-throttle/default.nix b/pkgs/development/python-modules/asyncio-throttle/default.nix
new file mode 100644
index 0000000000000..bf08aec41a5b5
--- /dev/null
+++ b/pkgs/development/python-modules/asyncio-throttle/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+, pytest-asyncio
+}:
+
+buildPythonPackage rec {
+  pname = "asyncio-throttle";
+  version = "1.0.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "hallazzang";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0raqnrnp42cn1c7whbm7ajbgaczx33k6hbxsj30nh998pqxhh4sj";
+  };
+
+  checkInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "asyncio_throttle" ];
+
+  meta = with lib; {
+    description = "Simple, easy-to-use throttler for asyncio";
+    homepage = "https://github.com/hallazzang/asyncio-throttle";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/beancount/default.nix b/pkgs/development/python-modules/beancount/default.nix
index b3232f8eca547..f1dc7a5349d92 100644
--- a/pkgs/development/python-modules/beancount/default.nix
+++ b/pkgs/development/python-modules/beancount/default.nix
@@ -4,14 +4,14 @@
 , ply, python_magic, pytest, requests }:
 
 buildPythonPackage rec {
-  version = "2.3.2";
+  version = "2.3.3";
   pname = "beancount";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1wfpf2b0sha84rz0qgkanc82wharjqr2nr7xxg1rngrci2h0aqhd";
+    sha256 = "0767ap2n9vk9dz40njndfhaprajr75fvzx7igbd1szc6x8wri8nr";
   };
 
   # Tests require files not included in the PyPI archive.
diff --git a/pkgs/development/python-modules/bids-validator/default.nix b/pkgs/development/python-modules/bids-validator/default.nix
index f97fffe93f053..b139a88820e66 100644
--- a/pkgs/development/python-modules/bids-validator/default.nix
+++ b/pkgs/development/python-modules/bids-validator/default.nix
@@ -4,12 +4,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.5.6";
+  version = "1.5.7";
   pname = "bids-validator";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ef9476ded8226c86fe1d6e6b9f380666ada7a0f4ae39bd5afd7eabbbc6979ab7";
+    sha256 = "624fade609636c64e7829ff072bdf12f93512948a803059b059e5c90df894be2";
   };
 
   # needs packages which are not available in nixpkgs
diff --git a/pkgs/development/python-modules/coordinates/default.nix b/pkgs/development/python-modules/coordinates/default.nix
index 44a41b92c4e57..c7a24a0c3e90a 100644
--- a/pkgs/development/python-modules/coordinates/default.nix
+++ b/pkgs/development/python-modules/coordinates/default.nix
@@ -27,6 +27,6 @@ buildPythonPackage rec {
     description = "Convenience class for doing maths with explicit coordinates";
     homepage = "https://github.com/clbarnes/coordinates";
     license = licenses.mit;
-    maintainers = [ maintainers.mildlyincompetent ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix
index 61c63b28ab607..6ecd915809311 100644
--- a/pkgs/development/python-modules/hass-nabucasa/default.nix
+++ b/pkgs/development/python-modules/hass-nabucasa/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "hass-nabucasa";
-  version = "0.34.6";
+  version = "0.37.1";
 
   src = fetchFromGitHub {
     owner = "nabucasa";
     repo = pname;
     rev = version;
-    sha256 = "1lkqwj58qr0vn7zf5mhrhaz973ahj9wjp4mgzvyja1gcdh6amv34";
+    sha256 = "/GFNrLi1I69gUDIwnHa2q/pxkiRl9PKxpKtb56JrmuA=";
   };
 
   postPatch = ''
@@ -18,24 +18,12 @@ buildPythonPackage rec {
     sed -i 's/"cryptography.*"/"cryptography"/' setup.py
   '';
 
-  patches = [
-    # relax pytz dependency
-    (fetchpatch {
-      url = "https://github.com/NabuCasa/hass-nabucasa/commit/419e80feddc36c68384c032feda0057515b53eaa.patch";
-      sha256 = "14dgwci8615cwcf27hg7b42s7da50xhyjys3yx446q7ipk8zw4x6";
-    })
-  ];
-
   propagatedBuildInputs = [
     acme aiohttp atomicwrites snitun attrs warrant pycognito
   ];
 
   checkInputs = [ pytest pytest-aiohttp asynctest ];
 
-  # Asynctest's mocking is broken with python3.8
-  # https://github.com/Martiusweb/asynctest/issues/132
-  doCheck = pythonOlder "3.8";
-
   checkPhase = ''
     pytest tests/
   '';
diff --git a/pkgs/development/python-modules/httpcore/default.nix b/pkgs/development/python-modules/httpcore/default.nix
index 9ac9b76d2e362..aa15c2555e679 100644
--- a/pkgs/development/python-modules/httpcore/default.nix
+++ b/pkgs/development/python-modules/httpcore/default.nix
@@ -1,34 +1,52 @@
-{ stdenv
+{ lib
 , buildPythonPackage
+, pythonOlder
 , fetchFromGitHub
-, isPy27
 , h11
+, h2
+, pproxy
+, pytestCheckHook
+, pytestcov
 , sniffio
+, uvicorn
 }:
 
 buildPythonPackage rec {
   pname = "httpcore";
-  version = "0.10.2";
-  disabled = isPy27;
+  version = "0.12.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "00gn8nfv814rg6fj7xv97mrra3fvx6fzjcgx9y051ihm6hxljdsi";
+    sha256 = "0bwxn7m7r7h6k41swxj0jqj3nzi76wqxwbnry6y7d4qfh4m26g2j";
   };
 
-  propagatedBuildInputs = [ h11 sniffio ];
+  propagatedBuildInputs = [
+    h11
+    h2
+    sniffio
+  ];
+
+  checkInputs = [
+    pproxy
+    pytestCheckHook
+    pytestcov
+    uvicorn
+  ];
+
+  pytestFlagsArray = [
+    # these tests fail during dns lookups: httpcore.ConnectError: [Errno -2] Name or service not known
+    "--ignore=tests/sync_tests/test_interfaces.py"
+  ];
 
-  # tests require pythonic access to mitmproxy, which isn't (yet?) packaged as
-  # a pythonPackage.
-  doCheck = false;
   pythonImportsCheck = [ "httpcore" ];
 
-  meta = with stdenv.lib; {
-    description = "A minimal HTTP client";
+  meta = with lib; {
+    description = "A minimal low-level HTTP client";
     homepage = "https://github.com/encode/httpcore";
     license = licenses.bsd3;
-    maintainers = [ maintainers.ris ];
+    maintainers = with maintainers; [ ris ];
   };
 }
diff --git a/pkgs/development/python-modules/httpx/default.nix b/pkgs/development/python-modules/httpx/default.nix
index 5361e047207a2..1f527b47ec087 100644
--- a/pkgs/development/python-modules/httpx/default.nix
+++ b/pkgs/development/python-modules/httpx/default.nix
@@ -1,71 +1,61 @@
 { lib
 , buildPythonPackage
+, pythonOlder
 , fetchFromGitHub
-, fetchpatch
+, brotli
 , certifi
-, chardet
-, h11
 , h2
 , httpcore
-, idna
 , rfc3986
 , sniffio
-, isPy27
-, pytest
+, pytestCheckHook
 , pytest-asyncio
 , pytest-trio
 , pytestcov
 , trustme
 , uvicorn
-, brotli
 }:
 
 buildPythonPackage rec {
   pname = "httpx";
-  version = "0.14.2";
-  disabled = isPy27;
+  version = "0.16.1";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "08b6k5g8car3bic90aw4ysb2zvsa5nm8qk3hk4dgamllnnxzl5br";
+    sha256 = "00gmq45fckcqkj910bvd7pyqz1mvgsdvz4s0k7dzbnc5czzq1f4a";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "fix-cookie-test-timestamp.patch";
-      url = "https://github.com/encode/httpx/pull/1270.patch";
-      sha256 = "1hgrynac6226sgnyzmsr1nr15rn49gbfmk4c2kx3dwkbh6vr7jpd";
-    })
-  ];
-
   propagatedBuildInputs = [
+    brotli
     certifi
-    chardet
-    h11
     h2
     httpcore
-    idna
     rfc3986
     sniffio
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     pytest-asyncio
     pytest-trio
     pytestcov
     trustme
     uvicorn
-    brotli
   ];
 
-  checkPhase = ''
-    PYTHONPATH=.:$PYTHONPATH pytest -k 'not (test_connect_timeout or test_elapsed_timer)'
-  '';
   pythonImportsCheck = [ "httpx" ];
 
+  disabledTests = [
+    # httpcore.ConnectError: [Errno 101] Network is unreachable
+    "test_connect_timeout"
+    # httpcore.ConnectError: [Errno -2] Name or service not known
+    "test_async_proxy_close"
+    "test_sync_proxy_close"
+  ];
+
   meta = with lib; {
     description = "The next generation HTTP client";
     homepage = "https://github.com/encode/httpx";
diff --git a/pkgs/development/python-modules/ircrobots/default.nix b/pkgs/development/python-modules/ircrobots/default.nix
new file mode 100644
index 0000000000000..359cf3e6934fc
--- /dev/null
+++ b/pkgs/development/python-modules/ircrobots/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, anyio
+, asyncio-throttle
+, dataclasses
+, ircstates
+, async_stagger
+, async-timeout
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "ircrobots";
+  version = "0.3.3";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "jesopo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0ykn6ch7aazv2cx13q2gr94arh6f96d8hwjwnrcjai3i3x4q2pkq";
+  };
+
+  patches = [
+    ./relax-dependencies.patch
+  ];
+
+  propagatedBuildInputs = [
+    anyio
+    asyncio-throttle
+    ircstates
+    async_stagger
+    async-timeout
+  ] ++ lib.optionals (pythonOlder "3.7") [
+    dataclasses
+  ];
+
+  checkPhase = ''
+    ${python.interpreter} -m unittest test
+  '';
+
+  pythonImportsCheck = [ "ircrobots" ];
+
+  meta = with lib; {
+    description = "Asynchronous bare-bones IRC bot framework for python3";
+    license = licenses.mit;
+    homepage = "https://github.com/jesopo/ircrobots";
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/ircrobots/relax-dependencies.patch b/pkgs/development/python-modules/ircrobots/relax-dependencies.patch
new file mode 100644
index 0000000000000..9aed3577f63d0
--- /dev/null
+++ b/pkgs/development/python-modules/ircrobots/relax-dependencies.patch
@@ -0,0 +1,14 @@
+diff --git a/requirements.txt b/requirements.txt
+index 87a2d31..4e0efb1 100644
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -1,6 +1,6 @@
+-anyio            ==1.3.0
++anyio
+ asyncio-throttle ==1.0.1
+-dataclasses      ==0.6
+-ircstates        ==0.11.2
++dataclasses; python_version < "3.7"
++ircstates        >=0.11.2
+ async_stagger    ==0.3.0
+ async_timeout    ==3.0.1
diff --git a/pkgs/development/python-modules/ircstates/default.nix b/pkgs/development/python-modules/ircstates/default.nix
new file mode 100644
index 0000000000000..857b0358aff2f
--- /dev/null
+++ b/pkgs/development/python-modules/ircstates/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, pythonOlder
+, irctokens
+, pendulum
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "ircstates";
+  version = "0.11.3";
+  disabled = pythonOlder "3.6";  # f-strings
+
+  src = fetchFromGitHub {
+    owner = "jesopo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1v8r6ma8gzvn5ym3xx9qlb0rc4l67pxr3z8njzk1ffxn1x3mxd3i";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "relax-pendulum-version.patch";
+      url = "https://github.com/jesopo/ircstates/commit/f51f1b689e592020d1c91ccab6c03927aadb9f94.patch";
+      sha256 = "0qbp3b9hlqbbx7b474q1mcgnzzzwcm4g89x26iqgmlgxzmv3y5xp";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    irctokens
+    pendulum
+  ];
+
+  checkPhase = ''
+    ${python.interpreter} -m unittest test
+  '';
+
+  pythonImportsCheck = [ "ircstates" ];
+
+  meta = with lib; {
+    description = "sans-I/O IRC session state parsing library";
+    license = licenses.mit;
+    homepage = "https://github.com/jesopo/ircstates";
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/irctokens/default.nix b/pkgs/development/python-modules/irctokens/default.nix
new file mode 100644
index 0000000000000..037a5f0520fd9
--- /dev/null
+++ b/pkgs/development/python-modules/irctokens/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pyyaml
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "irctokens";
+  version = "2.0.0";
+  disabled = pythonOlder "3.6";  # f-strings
+
+  src = fetchFromGitHub {
+    owner = "jesopo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0kpxn5paailm4xpdlnzxrhjrfgvvg5pp327wd8kl41a0wbqkj4zb";
+  };
+
+  checkInputs = [ pyyaml ];
+  checkPhase = ''
+    ${python.interpreter} -m unittest test
+  '';
+
+  pythonImportsCheck = [ "irctokens" ];
+
+  meta = with lib; {
+    description = "RFC1459 and IRCv3 protocol tokeniser library for python3";
+    license = licenses.mit;
+    homepage = "https://github.com/jesopo/irctokens";
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/py_stringmatching/default.nix b/pkgs/development/python-modules/py_stringmatching/default.nix
index fda497b7962b0..79d09daba9cc5 100644
--- a/pkgs/development/python-modules/py_stringmatching/default.nix
+++ b/pkgs/development/python-modules/py_stringmatching/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "py_stringmatching";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c46db1e855cef596dfbbe1bd48fcabb30736479eff602c2bf88af10f998f1532";
+    sha256 = "c87f62698fba1612a18f8f44bd57f0c4e70aac2d7ca6dfb6ed46dabd2194453c";
   };
 
   checkInputs = [ nose ];
diff --git a/pkgs/development/python-modules/pycognito/default.nix b/pkgs/development/python-modules/pycognito/default.nix
index 8101b76b62cf9..a30c1cd344b47 100644
--- a/pkgs/development/python-modules/pycognito/default.nix
+++ b/pkgs/development/python-modules/pycognito/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "pycognito";
-  version = "0.1.3";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "pvizeli";
     repo = "pycognito";
     rev = version;
-    sha256 = "0wy6d274xda7v6dazv10h2vwig2avfyz8mh2lpd1a5k7i06r335r";
+    sha256 = "HLzPrRon+ipcUZlD1l4nYSwSbdDLwOALy4ejGunjK0w=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pysam/default.nix b/pkgs/development/python-modules/pysam/default.nix
index 2802b6d0e0ff0..2f40a29733328 100644
--- a/pkgs/development/python-modules/pysam/default.nix
+++ b/pkgs/development/python-modules/pysam/default.nix
@@ -80,13 +80,19 @@ buildPythonPackage rec {
       --deselect tests/AlignmentFileHeader_test.py::TestHeaderBAM::test_header_content_is_as_expected \
       --deselect tests/AlignmentFileHeader_test.py::TestHeaderCRAM::test_dictionary_access_works \
       --deselect tests/AlignmentFileHeader_test.py::TestHeaderCRAM::test_header_content_is_as_expected \
-      --deselect tests/AlignmentFile_test.py::TestIO::testBAM2SAM \
-      --deselect tests/AlignmentFile_test.py::TestIO::testSAM2BAM \
-      --deselect tests/AlignmentFile_test.py::TestIO::testWriteUncompressedBAMFile \
       --deselect tests/AlignmentFile_test.py::TestDeNovoConstruction::testBAMWholeFile \
       --deselect tests/AlignmentFile_test.py::TestEmptyHeader::testEmptyHeader \
       --deselect tests/AlignmentFile_test.py::TestHeaderWithProgramOptions::testHeader \
+      --deselect tests/AlignmentFile_test.py::TestIO::testBAM2BAM \
+      --deselect tests/AlignmentFile_test.py::TestIO::testBAM2CRAM \
+      --deselect tests/AlignmentFile_test.py::TestIO::testBAM2SAM \
+      --deselect tests/AlignmentFile_test.py::TestIO::testFetchFromClosedFileObject \
+      --deselect tests/AlignmentFile_test.py::TestIO::testOpenFromFilename \
+      --deselect tests/AlignmentFile_test.py::TestIO::testSAM2BAM \
+      --deselect tests/AlignmentFile_test.py::TestIO::testWriteUncompressedBAMFile \
+      --deselect tests/AlignmentFile_test.py::TestIteratorRowAllBAM::testIterate \
       --deselect tests/StreamFiledescriptors_test.py::StreamTest::test_text_processing \
+      --deselect tests/compile_test.py::BAMTest::testCount \
       tests/
   '';
 
diff --git a/pkgs/development/python-modules/python-jose/default.nix b/pkgs/development/python-modules/python-jose/default.nix
index 09a424583110f..6b8104516ea91 100644
--- a/pkgs/development/python-modules/python-jose/default.nix
+++ b/pkgs/development/python-modules/python-jose/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "python-jose";
-  version = "3.1.0";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "mpdavis";
     repo = "python-jose";
     rev = version;
-    sha256 = "1gnn0zy03pywj65ammy3sd07knzhjv8n5jhx1ir9bikgra9v0iqh";
+    sha256 = "cSPIZrps0xFd4pPcQ4w/jFWOk2XYgd3mtE/sDzlytvY=";
   };
 
   checkInputs = [
@@ -23,6 +23,13 @@ buildPythonPackage rec {
     cryptography # optional dependency, but needed in tests
   ];
 
+  # relax ecdsa deps
+  patchPhase = ''
+    substituteInPlace setup.py \
+      --replace 'ecdsa<0.15' 'ecdsa' \
+      --replace 'ecdsa <0.15' 'ecdsa'
+  '';
+
   disabledTests = [
     # https://github.com/mpdavis/python-jose/issues/176
     "test_key_too_short"
diff --git a/pkgs/development/python-modules/python-miio/default.nix b/pkgs/development/python-modules/python-miio/default.nix
index abce18c8841ab..6bd140ae5b4c3 100644
--- a/pkgs/development/python-modules/python-miio/default.nix
+++ b/pkgs/development/python-modules/python-miio/default.nix
@@ -4,8 +4,11 @@
 , appdirs
 , click
 , construct
+, croniter
 , cryptography
+, importlib-metadata
 , pytest
+, pytest-mock
 , zeroconf
 , attrs
 , pytz
@@ -13,6 +16,7 @@
 , netifaces
 }:
 
+
 buildPythonPackage rec {
   pname = "python-miio";
   version = "0.5.3";
@@ -22,8 +26,17 @@ buildPythonPackage rec {
     sha256 = "3be5275b569844dfa267c80a1e23dc0957411dd501cae0ed3cccf43467031ceb";
   };
 
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ appdirs click construct cryptography zeroconf attrs pytz tqdm netifaces ];
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace  "zeroconf>=0.25.1,<0.26.0" "zeroconf"
+    substituteInPlace setup.py \
+      --replace  "pytz>=2019.3,<2020.0" "pytz"
+    substituteInPlace setup.py \
+      --replace  "cryptography>=2.9,<3.0" "cryptography"
+    '';
+
+  checkInputs = [ pytest pytest-mock];
+  propagatedBuildInputs = [ appdirs click construct croniter cryptography importlib-metadata zeroconf attrs pytz tqdm netifaces ];
 
   checkPhase = ''
     pytest
diff --git a/pkgs/development/python-modules/spotipy/default.nix b/pkgs/development/python-modules/spotipy/default.nix
index 1e003be1f5e70..63ec4abcac422 100644
--- a/pkgs/development/python-modules/spotipy/default.nix
+++ b/pkgs/development/python-modules/spotipy/default.nix
@@ -1,28 +1,32 @@
-{ stdenv, buildPythonPackage, fetchPypi, requests, six, mock }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, requests
+, six }:
 
 buildPythonPackage rec {
   pname = "spotipy";
-  version = "2.16.0";
+  version = "2.16.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "315eadd1248053ed336b4d3adbf2e3c32895fdbb0cfcd170542c848c8fd45649";
+    sha256 = "1f50xczv8kgly6wz6zrvqzwdj6nvhdlgx8wnrhmbipjrb6qacr25";
   };
 
   propagatedBuildInputs = [ requests six ];
-  checkInputs = [ mock ];
 
-  preConfigure = ''
-    substituteInPlace setup.py \
-      --replace "mock==2.0.0" "mock"
-  '';
+  # tests want to access the spotify API
+  doCheck = false;
+  pythonImportsCheck = [
+    "spotipy"
+    "spotipy.oauth2"
+  ];
 
-  pythonImportsCheck = [ "spotipy" ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = "https://spotipy.readthedocs.org/";
+    changelog = "https://github.com/plamere/spotipy/blob/${version}/CHANGELOG.md";
     description = "A light weight Python library for the Spotify Web API";
     license = licenses.mit;
-    maintainers = [ maintainers.rvolosatovs ];
+    maintainers = with maintainers; [ rvolosatovs ];
   };
 }
diff --git a/pkgs/development/python-modules/tensorflow/1/default.nix b/pkgs/development/python-modules/tensorflow/1/default.nix
index 5df3ad32afb41..599f809f86468 100644
--- a/pkgs/development/python-modules/tensorflow/1/default.nix
+++ b/pkgs/development/python-modules/tensorflow/1/default.nix
@@ -445,5 +445,7 @@ in buildPythonPackage {
     libtensorflow = bazel-build.out;
   };
 
-  inherit (bazel-build) meta;
+  meta = bazel-build.meta // {
+    broken = gast.version != "0.3.2";
+  };
 }
diff --git a/pkgs/development/python-modules/toolz/2.nix b/pkgs/development/python-modules/toolz/2.nix
new file mode 100644
index 0000000000000..8c8a64db3a5ed
--- /dev/null
+++ b/pkgs/development/python-modules/toolz/2.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "toolz";
+  version = "0.10.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560";
+  };
+
+  checkInputs = [ nose ];
+
+  checkPhase = ''
+    nosetests toolz/tests
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/pytoolz/toolz";
+    description = "List processing tools and functional utilities";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fridh ];
+  };
+}
diff --git a/pkgs/development/python-modules/toolz/default.nix b/pkgs/development/python-modules/toolz/default.nix
index e0039057d828e..6100d2a7c53d3 100644
--- a/pkgs/development/python-modules/toolz/default.nix
+++ b/pkgs/development/python-modules/toolz/default.nix
@@ -6,18 +6,16 @@
 
 buildPythonPackage rec {
   pname = "toolz";
-  version = "0.10.0";
+  version = "0.11.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560";
+    sha256 = "1grz3zvw5ixwqqlbv0n7j11mlcxb66cirh5i9x9zw8kqy0hpk967";
   };
 
   checkInputs = [ nose ];
 
   checkPhase = ''
-    # https://github.com/pytoolz/toolz/issues/357
-    rm toolz/tests/test_serialization.py
     nosetests toolz/tests
   '';
 
diff --git a/pkgs/development/python-modules/trezor/default.nix b/pkgs/development/python-modules/trezor/default.nix
index 0e0c6da021fb1..bb85ca6b6f3c2 100644
--- a/pkgs/development/python-modules/trezor/default.nix
+++ b/pkgs/development/python-modules/trezor/default.nix
@@ -1,4 +1,5 @@
-{ lib
+{ stdenv
+, lib
 , buildPythonPackage
 , fetchPypi
 , isPy3k
@@ -49,6 +50,7 @@ buildPythonPackage rec {
     rlp
     shamir-mnemonic
     typing-extensions
+  ] ++ lib.optionals stdenv.isLinux [
     trezor-udev-rules
   ];
 
diff --git a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index 48805d1680894..099837fbafa25 100644
--- a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tarpaulin";
-  version = "0.14.3";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "xd009642";
     repo = "tarpaulin";
     rev = "${version}";
-    sha256 = "03d8h5b174699yivaamlvaqzck9zs119jk29yf70dvxw7cs0nngv";
+    sha256 = "0ga2zfq4365hxvr3wd3isc146ibivy3bfcy24rb6cq3av3b90a8k";
   };
 
   nativeBuildInputs = [
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   ];
   buildInputs = [ openssl ];
 
-  cargoSha256 = "0zzp2wyq48j6n64fm37qfl65cg4yzf9ysichhkmkc6viq8x0f66d";
+  cargoSha256 = "1ij1bic95315kba7k7igix33kmwr2va0c2hbysjs0bl5kcnai4f7";
   #checkFlags = [ "--test-threads" "1" ];
   doCheck = false;
 
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 44ecfceb8dfef..27675652eb872 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.136.0";
+  version = "0.137.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "1gpf9jk4ny5jps93scfcndzg1r93kz3hq8pijpfk4ab8qray83g6";
+    sha256 = "1bwrm0jab3pjq1md584szdb3vk4r2cka49qn6f9znnb1ji589x5q";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/pev/default.nix b/pkgs/development/tools/analysis/pev/default.nix
index c7e2e27bece4d..42e382c8bcad2 100644
--- a/pkgs/development/tools/analysis/pev/default.nix
+++ b/pkgs/development/tools/analysis/pev/default.nix
@@ -1,24 +1,30 @@
 { stdenv, openssl, fetchFromGitHub }:
+
 stdenv.mkDerivation {
-  name = "pev-unstable-2018-07-22";
-  buildInputs = [ openssl ];
+  pname = "pev";
+  version = "unstable-2020-05-23";
+
   src = fetchFromGitHub {
     owner = "merces";
     repo = "pev";
-    rev = "aa4ef7f";
-    sha256 = "00a3g486343lhqcsf4vrdy5xif6v3cgcf2y8yp5b96x15c0wid36";
+    rev = "beec2b4f09585fea919ed41ce466dee06be0b6bf";
+    sha256 = "sha256-HrMbk9YbuqkoBBM7+rfXpqVEnd1rDl2rMePdcfU1WDg=";
     fetchSubmodules = true;
   };
 
+  buildInputs = [ openssl ];
+
+  enableParallelBuilding = true;
+
   makeFlags = [ "prefix=$(out)" ];
+
   installFlags = [ "prefix=$(out)" ];
 
   meta = with stdenv.lib; {
     description = "A full-featured, open source, multiplatform command line toolkit to work with PE (Portable Executables) binaries";
-    homepage = "http://pev.sourceforge.net/";
+    homepage = "https://pev.sourceforge.net/";
     license = licenses.gpl2;
+    maintainers = with maintainers; [ jeschli ];
     platforms = platforms.linux;
-    maintainers = [ maintainers.jeschli ];
   };
-
 }
diff --git a/pkgs/development/tools/azcopy/default.nix b/pkgs/development/tools/azcopy/default.nix
index 3d0fe8513c8a1..096e321fe7009 100644
--- a/pkgs/development/tools/azcopy/default.nix
+++ b/pkgs/development/tools/azcopy/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "azure-storage-azcopy";
-  version = "10.6.0";
+  version = "10.6.1";
 
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-storage-azcopy";
     rev = "v${version}";
-    sha256 = "0izjnbldgf0597j4rh2ir9jsc2nzp9vwxcgllvkm5lh1xqf6i0nf";
+    sha256 = "1gmpdyc55mkzdkkhyzvy9517znvcj8hd9x3rpkpr86vfzgjv9qyv";
   };
 
   subPackages = [ "." ];
diff --git a/pkgs/development/tools/bazel-kazel/default.nix b/pkgs/development/tools/bazel-kazel/default.nix
index 20b17de0c211d..516ad2a64a09f 100644
--- a/pkgs/development/tools/bazel-kazel/default.nix
+++ b/pkgs/development/tools/bazel-kazel/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "bazel-kazel";
-  version = "0.1.1";
+  version = "0.1.2";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "repo-infra";
     rev = "v${version}";
-    sha256 = "0d59kf0y12sa1bki7gzcb2nzppwj3gxlv133bsnl9gc8vx1d8ldg";
+    sha256 = "1fn6ppyjgg3v80n9rc9712xms5yq3xkkd95zyd64l5gh9mshjn86";
   };
 
   vendorSha256 = "1pzkjh4n9ai8yqi98bkdhicjdr2l8j3fckl5n90c2gdcwqyxvgkf";
diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix
index eba096644a111..2a20888426d07 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.7.3";
+  version = "1.7.4";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l4y8z44hwd6rnhnyk6l9abrvk342w72bah9k9zz6caa5i4xz2vz";
+    sha256 = "1mc1l2g2qrg9djpyyz203a6dpx5fxllisybmhrpmikyza15w935q";
   };
 
   vendorSha256 = "116wy1a7gmi2w8why9hszhcybfvpwp4iq62vshb25cdcma6q4mjh";
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index 5f4f2a4792858..ecd7141763305 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -14,13 +14,13 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.16.5";
+  version = "1.17.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    sha256 = "1d2k7n1d9mpkyjy7hp1svl34ssai62df3mp5awsill092dlwn8p2";
+    sha256 = "1bghi5m1rg42a781sgh194hqmqiflhwdrnxxn7cbb2b6jfiik08l";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/castxml/default.nix b/pkgs/development/tools/castxml/default.nix
index 0a455b4d7cdf5..90be513bd50fb 100644
--- a/pkgs/development/tools/castxml/default.nix
+++ b/pkgs/development/tools/castxml/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub
-, pythonPackages
+, python3Packages
 , cmake
 , llvmPackages
 , libffi, libxml2, zlib
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "0ypj67xrgj228myp7l1gsjw1ja97q68nmj98dsd33srmiayqraj4";
   };
 
-  nativeBuildInputs = [ cmake ] ++ stdenv.lib.optionals withMan [ pythonPackages.sphinx ];
+  nativeBuildInputs = [ cmake ] ++ stdenv.lib.optionals withMan [ python3Packages.sphinx ];
 
   clangVersion = lib.getVersion llvmPackages.clang;
 
diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index ceaa704b565c6..97f75a99c0790 100644
--- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -1,8 +1,8 @@
-{ fetchFromGitHub, stdenv, buildGoPackage,
+{ fetchFromGitHub, stdenv, buildGoModule,
   makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }:
-buildGoPackage rec {
+buildGoModule rec {
   name = "buildkite-agent-${version}";
-  version = "3.17.0";
+  version = "3.25.0";
 
   goPackagePath = "github.com/buildkite/agent";
 
@@ -10,17 +10,18 @@ buildGoPackage rec {
     owner = "buildkite";
     repo = "agent";
     rev = "v${version}";
-    sha256 = "0a7x919kxnpdn0pnhc5ilx1z6ninx8zgjvsd0jcg4qwh0qqp5ppr";
+    sha256 = "VxAGi2NpXpc3U+GNIvGJSkdHGODrX2s8oY+dQ8QXIHQ=";
   };
+
+  vendorSha256 = "X1K6uKiMFXTDT1PcedGQ8HLGox8ePP7Cz0Ihf4m9ts8=";
+
   postPatch = ''
     substituteInPlace bootstrap/shell/shell.go --replace /bin/bash ${bash}/bin/bash
   '';
 
   nativeBuildInputs = [ makeWrapper ];
 
-  # on Linux, the TMPDIR is /build which is the same prefix as this package
-  # remove once #35068 is merged
-  noAuditTmpdir = stdenv.isLinux;
+  doCheck = false;
 
   postInstall = ''
     # Fix binary name
@@ -43,6 +44,6 @@ buildGoPackage rec {
     homepage = "https://buildkite.com/docs/agent";
     license = licenses.mit;
     maintainers = with maintainers; [ pawelpacana zimbatm rvl ];
-    platforms = platforms.unix;
+    platforms = with platforms; unix ++ darwin;
   };
 }
diff --git a/pkgs/development/tools/database/liquibase/default.nix b/pkgs/development/tools/database/liquibase/default.nix
index 75ccca43a6905..93698e8d8e974 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.0.0";
+  version = "4.1.1";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "06wpvqyv7w749l3ndvzg1p774rv1apbmbpwbdlad57pih4nqa7mm";
+    sha256 = "0gq3y2cgqb1dky5baqjydwmnaimczvsfg8dqc55c7aqcgy7hp3pg";
   };
 
   buildInputs = [ jre makeWrapper ];
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index ba42f3914b4a6..b30bd8d299099 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.48.1";
+  version = "1.49.0";
 
   vendorSha256 = null;
 
@@ -32,7 +32,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "1bykvwv1zhiki7c86hycwck78s8gqw4dzd7smfp4iz609wyk1wqb";
+    sha256 = "1z7424am1fb1l9bz8q1lfzmhz84c29v7k5p391m4hhbl8h46x6ca";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index c9df28e5cdeda..1c024ee4e5b5b 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -47,27 +47,27 @@ rec {
     aarch64-linux = "03d06120464c353068e2ac6c40f89eedffd6b5b3c4c96efdb406c96a6136a066";
   };
 
-  electron_8 = mkElectron "8.5.1" {
-    x86_64-linux = "e58bf26ba52e43de77115b6e6844eba8a8cec2ac8aae500cf48fe862014202d9";
-    x86_64-darwin = "cf0d42ecde7ca374ddf1b440aaaf441e16a02890112fcbffc03f37f8ec3b1958";
-    i686-linux = "4c7ff6225b1ac4b710c454072d9fb8c04a66bb0353e7d6cffb89bcf6d4458d81";
-    armv7l-linux = "13afd8b2e36eb8d1582687e16fac5394d6d3b9734d73f94d0d6ef843ba14cec2";
-    aarch64-linux = "ff39e5e0e644cbf4ff1d29fc25e94b9eced7ea45d787d1b86fa4e50513336b7b";
+  electron_8 = mkElectron "8.5.2" {
+    x86_64-linux = "c5b8c95b410436066b06165e9759b31336c907268339433db4f8610ccf644a51";
+    x86_64-darwin = "079d951a28cfb7d1e0d3660e0fcb2dab85bd9e9f6848df5a06a7ac88ab3aa14c";
+    i686-linux = "0d108ac2420a437100f7a8d06aa019cd8138da4372fb94039b6d23c6253a6aea";
+    armv7l-linux = "f06ed475d1b206c3aa31e768add3517a64aabce5e2946e4d9707e615e6f398c0";
+    aarch64-linux = "e9765584bbedad8a806f96ac1381c114a357fdbed8c67573decefde2d15d9cd7";
   };
 
-  electron_9 = mkElectron "9.3.0" {
-    x86_64-linux = "0c34fa1dbf7708bd4a3f08fde50eafb9903b1c467104dca3e3ced5e7f764b302";
-    x86_64-darwin = "25057470c2f3a1c40fa1c25086256041fa70419378fa3d41eeb805ebd3919b20";
-    i686-linux = "ea09d10e496450d2d7bb7a37cab7124cc5484117dd7d7d6c4106586ff675d1d5";
-    armv7l-linux = "a8b46d6c98546d605a02850c906408dc11104e8ee4366c3d8a956896fafdfcd3";
-    aarch64-linux = "791d898d02e45975657ed15f2d83af31d5688e7db0075a6e20021db3420eb320";
+  electron_9 = mkElectron "9.3.3" {
+    x86_64-linux = "17f4db5e040ea20ce89d1d492ac575ed0b9ba451ef9cb0e8cd50918505c85243";
+    x86_64-darwin = "bb6188178ed1250ddaf29a2f232758c0f7878f1541ddb2ae2a0d20298599c7f4";
+    i686-linux = "e413b0879247b32bfbcc114e8d49109267137b2ece97db13eaf0ce3ac6187881";
+    armv7l-linux = "313abeb91efbc29d4f807a01937640580940a5fb2699c70b1c303b184ac7bec4";
+    aarch64-linux = "263eb89ccb47920baef43898d373531d369d2adc8b2f9e5ebc6429fe44b2fd5a";
   };
 
-  electron_10 = mkElectron "10.1.1" {
-    x86_64-linux = "4147e88bdbec6893bf9927f0d4f3dd090d26705f5b7f688223bc65253a8b0220";
-    x86_64-darwin = "5b6814ae1064cc337efcdb2ad01ab9daa003a6a1d6e05d79288ede0a3665b991";
-    i686-linux = "d29682b7ea44dcdca5e7265bd1e28046275295a9ac23982af3d216a7f47a7a57";
-    armv7l-linux = "341a2eacb0381c1f409b8e28cf2c0fe6f75a61410614baf80309f51dd4201a34";
-    aarch64-linux = "d5e5b069f3173ed89f4cca7e9723f28a5f7a720637b7addac02972c5db042b6c";
+  electron_10 = mkElectron "10.1.5" {
+    x86_64-linux = "9db65dfe26d4fa9524b3005c6002d858ab256722cefb6a058de8e72e2d5c4083";
+    x86_64-darwin = "30dc5d5a913c38c6ae7fa6913b1a907545f0230157efc066e2d5a7affd26cd1e";
+    i686-linux = "bf8e1731e8b9b972c9054964b219d9b1b6baae9612afc8a5edf3503b815dd8c3";
+    armv7l-linux = "e270eab1a87283d7ae25c8127d904a52f130d53cc399bd288af7f99563273f33";
+    aarch64-linux = "03fa2418472f762377149fdd45d1e6ff0a324be3eb1b04e58c63d41df3dd0f16";
   };
 }
diff --git a/pkgs/development/tools/electron/print-hashes.sh b/pkgs/development/tools/electron/print-hashes.sh
index 45656a8f7b2b8..de380fd522337 100755
--- a/pkgs/development/tools/electron/print-hashes.sh
+++ b/pkgs/development/tools/electron/print-hashes.sh
@@ -21,8 +21,8 @@ SYSTEMS=(
 
 hashfile="$(nix-prefetch-url --print-path "https://github.com/electron/electron/releases/download/v${VERSION}/SHASUMS256.txt" 2>/dev/null | tail -n1)"
 
-echo "Entry similar to the following goes in default.nix:"
-echo
+# Entry similar to the following goes in default.nix:
+
 echo "  electron_${VERSION%%.*} = mkElectron \"${VERSION}\" {"
 
 for S in "${!SYSTEMS[@]}"; do
diff --git a/pkgs/development/tools/gofumpt/default.nix b/pkgs/development/tools/gofumpt/default.nix
index 080f4bd3305a3..82ae3d4bb7b85 100644
--- a/pkgs/development/tools/gofumpt/default.nix
+++ b/pkgs/development/tools/gofumpt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gofumpt";
-  version = "2019-11-11";
+  version = "2020-10-27";
 
   src = fetchFromGitHub {
     owner = "mvdan";
     repo = pname;
-    rev = "eb442649d62000da5d11671f3beb1afa1b746fd7";
-    sha256 = "1cw9mmavxz8gxzzwsllvf5lwb2wwi19jbc7hcwxsi4ywp7a84gh0";
+    rev = "85d5401eb0f699d87b0d6c949dd4c0d5fb23f2e0";
+    sha256 = "0n72d7p4y89kfilcdx3qb63qy6xm8dyp6q8s8954wrkm2wlhkwiy";
   };
 
-  vendorSha256 = "14a3p163xy861xb6x160wy15hzjc75n36jdyzaxl877i17shba8z";
+  vendorSha256 = "1s546hp4ngzqvfx7dbd43k7b94z0mvndgdkndh4ypkkl3rpd9kkz";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/gopls/default.nix b/pkgs/development/tools/gopls/default.nix
index 66582969714f5..290500376e858 100644
--- a/pkgs/development/tools/gopls/default.nix
+++ b/pkgs/development/tools/gopls/default.nix
@@ -15,6 +15,9 @@ buildGoModule rec {
 
   doCheck = false;
 
+  # Only build gopls, and not the integration tests or documentation generator.
+  subPackages = [ "." ];
+
   meta = with stdenv.lib; {
     description = "Official language server for the Go language";
     homepage = "https://github.com/golang/tools/tree/master/gopls";
diff --git a/pkgs/development/tools/gosec/default.nix b/pkgs/development/tools/gosec/default.nix
index ffbd98a45772f..44862bb3311dd 100644
--- a/pkgs/development/tools/gosec/default.nix
+++ b/pkgs/development/tools/gosec/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "gosec";
-  version = "2.4.0";
+  version = "2.5.0";
 
   subPackages = [ "cmd/gosec" ];
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "securego";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0mqijzr3vj4wycykqpjz9xw9fhpbnzz988z2q3nldb5ax0pyrxca";
+    sha256 = "0hwa4sxw9sqzivg80nqsi9g1hz8apnnck73x5dvnn1zbwvycx3g9";
   };
 
-  vendorSha256 = "063dpq1k5lykp18gshlgg098yvppicv3cz8gjn1mvfhac2rl9yqr";
+  vendorSha256 = "1lldi56kah689xf8n1hfpk9qy0gbci62xnjs5jrh54kbgka23gvw";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/gotestsum/default.nix b/pkgs/development/tools/gotestsum/default.nix
index bc0b331c54dab..8ccc1b593fd79 100644
--- a/pkgs/development/tools/gotestsum/default.nix
+++ b/pkgs/development/tools/gotestsum/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gotestsum";
-  version = "0.5.4";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "gotestyourself";
     repo = "gotestsum";
     rev = "v${version}";
-    sha256 = "1nmx91a5faixj1pzg9wbmxn8z1mphmdcvd6lajqy1ds21fzn2g1i";
+    sha256 = "0w0s2qvwnb69s18gvkkbwsx9zh7yi8ksnnrfpl8az8sybk6m1iaz";
   };
 
-  vendorSha256 = "02av4z3lxfb6xrv3ij1alf5k8xhxz0dasnf2farbcszz021bzfrq";
+  vendorSha256 = "09cifc69z1ashjw1mqgbi0gh90h2sypqyl0jswxxcqk89ibgy3am";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/gotools/default.nix b/pkgs/development/tools/gotools/default.nix
index 11926b3b0c663..606092e8cdcb2 100644
--- a/pkgs/development/tools/gotools/default.nix
+++ b/pkgs/development/tools/gotools/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gotools-unstable";
-  version = "2020-04-21";
-  rev = "72e4a01eba4315301fd9ce00c8c2f492580ded8a";
+  version = "2020-10-27";
+  rev = "eafbe7b904eb2418efc832e36ac634dc09084f10";
 
   src = fetchgit {
     inherit rev;
     url = "https://go.googlesource.com/tools";
-    sha256 = "0a8c7j4w784w441j3j3bh640vy1g6g214641qv485wyi0xj49anf";
+    sha256 = "0884znfbm44f4ddjkm0g7qg2a257kwzv1ismd2m225f3c69n3mdg";
   };
 
   # The gopls folder contains a Go submodule which causes a build failure.
@@ -25,7 +25,7 @@ buildGoModule rec {
     rm -rf gopls
   '';
 
-  vendorSha256 = "0pplmqxrnc8qnr5708igx4dm7rb0hicvhg6lh5hj8zkx38nb19s0";
+  vendorSha256 = "18qpjmmjpk322fvf81cafkpl3spv7hpdpymhympmld9isgzggfyz";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/ocaml/ocp-build/default.nix b/pkgs/development/tools/ocaml/ocp-build/default.nix
index 4ebea6766211c..57db516122453 100644
--- a/pkgs/development/tools/ocaml/ocp-build/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-build/default.nix
@@ -1,24 +1,19 @@
-{ stdenv, fetchpatch, fetchFromGitHub, ocaml, findlib, ncurses }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, ncurses, cmdliner, re }:
 let
-  version = "1.99.19-beta";
+  version = "1.99.21";
 in
 stdenv.mkDerivation {
 
-  name = "ocaml${ocaml.version}-ocp-build-${version}";
+  name = "ocaml${ocaml.version}-ocp-build-${version}-beta";
 
   src = fetchFromGitHub {
     owner = "OCamlPro";
     repo = "ocp-build";
-    rev = version;
-    sha256 = "162k5l0cxyqanxlml5v8mqapdq5qbqc9m4b8wdjq7mf523b3h2zj";
+    rev = "v${version}";
+    sha256 = "1641xzik98c7xnjwxpacijd6d9jzx340fmdn6i372z8h554jjlg9";
   };
 
-  patches = stdenv.lib.optional (stdenv.lib.versionAtLeast ocaml.version "4.08") (fetchpatch {
-    url = "https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/ocp-pp/ocp-pp.1.99.19-beta/files/0001-Fix-ocp-pp-for-changes-in-compiler-libs.patch";
-    sha256 = "0s0s2hh4d7cmwd6i7ixjgb79vij0r1v54m0vwwi26b3fips09qyn";
-  });
-
-  buildInputs = [ ocaml findlib ];
+  buildInputs = [ ocaml findlib cmdliner re ];
   propagatedBuildInputs = [ ncurses ];
   preInstall = "mkdir -p $out/bin";
   preConfigure = ''
diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix
index d6df39e7a23ab..b44f50a37ad83 100644
--- a/pkgs/development/tools/packer/default.nix
+++ b/pkgs/development/tools/packer/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "packer";
-  version = "1.6.4";
+  version = "1.6.5";
 
   goPackagePath = "github.com/hashicorp/packer";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    sha256 = "0nkbm5iamkzi5x64107apnwmqxs4a75pxw935pwpm69ry4535r7w";
+    sha256 = "sha256-M4PZnqdU5+w/B821cs1bJYzeilqdZ93fh5PErVgqBOQ=";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/purescript/spago/spago.nix b/pkgs/development/tools/purescript/spago/spago.nix
index b36bc26433d3e..4a5ad361e9fd2 100644
--- a/pkgs/development/tools/purescript/spago/spago.nix
+++ b/pkgs/development/tools/purescript/spago/spago.nix
@@ -2,20 +2,20 @@
 , base, bower-json, bytestring, Cabal, containers, dhall, directory
 , either, exceptions, extra, fetchgit, file-embed, filepath, foldl
 , fsnotify, github, Glob, hpack, hspec, hspec-discover
-, hspec-megaparsec, http-client, http-conduit, lens-family-core
-, megaparsec, mtl, network-uri, open-browser, optparse-applicative
-, prettyprinter, process, QuickCheck, retry, rio, rio-orphans, safe
-, semver-range, stdenv, stm, tar, template-haskell, temporary, text
-, time, transformers, turtle, unliftio, unordered-containers
-, vector, versions, with-utf8, zlib
+, hspec-megaparsec, http-client, http-conduit, http-types
+, lens-family-core, megaparsec, mtl, network-uri, open-browser
+, optparse-applicative, prettyprinter, process, QuickCheck, retry
+, rio, rio-orphans, safe, semver-range, stdenv, stm, tar
+, template-haskell, temporary, text, time, transformers, turtle
+, unliftio, unordered-containers, vector, versions, with-utf8, zlib
 }:
 mkDerivation {
   pname = "spago";
-  version = "0.16.0";
+  version = "0.17.0";
   src = fetchgit {
     url = "https://github.com/purescript/spago.git";
-    sha256 = "0z4s0z14n1v9wajs7mj2b295rrrw24gdca79drzlv6x1y6dj7sxh";
-    rev = "71b093cdf5e48ded645303281ab4a3ea5b730f5d";
+    sha256 = "1w9y1gvk307f92gixs5g02zbg0xwhrshwmc5j97pxhbzzg9qjidy";
+    rev = "3309afdef25e3e77f991a079eed78ff2f750e463";
     fetchSubmodules = true;
   };
   isLibrary = true;
@@ -24,7 +24,7 @@ mkDerivation {
     aeson aeson-pretty ansi-terminal async-pool base bower-json
     bytestring Cabal containers dhall directory either exceptions
     file-embed filepath foldl fsnotify github Glob http-client
-    http-conduit lens-family-core megaparsec mtl network-uri
+    http-conduit http-types lens-family-core megaparsec mtl network-uri
     open-browser optparse-applicative prettyprinter process retry rio
     rio-orphans safe semver-range stm tar template-haskell temporary
     text time transformers turtle unliftio unordered-containers vector
diff --git a/pkgs/development/tools/rubocop/Gemfile.lock b/pkgs/development/tools/rubocop/Gemfile.lock
index 0e6e3a7f3610d..6b6a3a9959184 100644
--- a/pkgs/development/tools/rubocop/Gemfile.lock
+++ b/pkgs/development/tools/rubocop/Gemfile.lock
@@ -1,21 +1,26 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    ast (2.4.0)
-    jaro_winkler (1.5.4)
-    parallel (1.19.1)
-    parser (2.6.5.0)
-      ast (~> 2.4.0)
+    ast (2.4.1)
+    parallel (1.19.2)
+    parser (2.7.2.0)
+      ast (~> 2.4.1)
     rainbow (3.0.0)
-    rubocop (0.77.0)
-      jaro_winkler (~> 1.5.1)
+    regexp_parser (1.8.2)
+    rexml (3.2.4)
+    rubocop (1.1.0)
       parallel (~> 1.10)
-      parser (>= 2.6)
+      parser (>= 2.7.1.5)
       rainbow (>= 2.2.2, < 4.0)
+      regexp_parser (>= 1.8)
+      rexml
+      rubocop-ast (>= 1.0.1)
       ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 1.7)
+      unicode-display_width (>= 1.4.0, < 2.0)
+    rubocop-ast (1.1.0)
+      parser (>= 2.7.1.5)
     ruby-progressbar (1.10.1)
-    unicode-display_width (1.6.0)
+    unicode-display_width (1.7.0)
 
 PLATFORMS
   ruby
diff --git a/pkgs/development/tools/rubocop/gemset.nix b/pkgs/development/tools/rubocop/gemset.nix
index d7e1b9328dc1e..c1f55f7aca27f 100644
--- a/pkgs/development/tools/rubocop/gemset.nix
+++ b/pkgs/development/tools/rubocop/gemset.nix
@@ -4,62 +4,83 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
+      sha256 = "1l3468czzjmxl93ap40hp7z94yxp4nbag0bxqs789bm30md90m2a";
       type = "gem";
     };
-    version = "2.4.0";
+    version = "2.4.1";
   };
-  jaro_winkler = {
+  parallel = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
+      sha256 = "17b127xxmm2yqdz146qwbs57046kn0js1h8synv01dwqz2z1kp2l";
       type = "gem";
     };
-    version = "1.5.4";
+    version = "1.19.2";
   };
-  parallel = {
+  parser = {
+    dependencies = ["ast"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
+      sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z";
       type = "gem";
     };
-    version = "1.19.1";
+    version = "2.7.2.0";
   };
-  parser = {
-    dependencies = ["ast"];
+  rainbow = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw";
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
       type = "gem";
     };
-    version = "2.6.5.0";
+    version = "3.0.0";
   };
-  rainbow = {
+  regexp_parser = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      sha256 = "0x4s82lgf0l71y3xc9gp4qxkrgx1kv8f6avdqd68l46ijbyvicdm";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "1.8.2";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
+      type = "gem";
+    };
+    version = "3.2.4";
   };
   rubocop = {
-    dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nw87ngw4a9r3dpgykb872zcm640m7k0nk17qv537fmss2hl8shl";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  rubocop-ast = {
+    dependencies = ["parser"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m88b1bgbhmmbdnz2xv6n0il0j4q5qm9jbc0vf1zsaxmxqp06nx9";
+      sha256 = "0ami6n3vnpm9y5z6wd4c6y2infijajizjjwv8fq0wrcjvr3zivzz";
       type = "gem";
     };
-    version = "0.77.0";
+    version = "1.1.0";
   };
   ruby-progressbar = {
     groups = ["default"];
@@ -76,9 +97,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.7.0";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index 32be24f954afe..dbc6bfb9a0372 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.144";
+  version = "0.0.145";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "1wg8dgz930hj3q448gg5kxri31q078w5nshvlfkga7vzn8pdg3bk";
+    sha256 = "00by00jslj9nkq89iwvc5f0jcn4lv8i6xs9y9l2x044rq525q08q";
   };
 
   preBuild = ''
@@ -17,7 +17,7 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
-  vendorSha256 = "0ryb97cwknxwhascz74filvx3wfwd0dhm6x36n4d7z2kiw7fgmh9";
+  vendorSha256 = "018vffgi85aqzb93hbld2f3lrc01jxb9aj5j5ss5c0a689g83gmq";
 
   doCheck = false;
 
diff --git a/pkgs/games/among-sus/default.nix b/pkgs/games/among-sus/default.nix
new file mode 100644
index 0000000000000..c422ed1c8e52c
--- /dev/null
+++ b/pkgs/games/among-sus/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchgit, port ? "1234" }:
+
+stdenv.mkDerivation {
+  pname = "among-sus-unstable";
+  version = "2020-10-29";
+
+  src = fetchgit {
+    url = "https://git.sr.ht/~martijnbraam/among-sus";
+    rev = "1f4c8d800d025d36ac66826937161be3252fbc57";
+    sha256 = "19jq7ygh9l11dl1h6702bg57m04y35nqd6yqx1rgp1kxwhp45xyh";
+  };
+
+  patchPhase = ''
+    sed -i 's/port = 1234/port = ${port}/g' main.c
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install -Dm755 among-sus $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://git.sr.ht/~martijnbraam/among-sus";
+    description = "Among us, but it's a text adventure";
+    license = licenses.agpl3Plus;
+    maintainers = [ maintainers.eyjhb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 17b1679ed5bab..2b9cb5e6d27e5 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, fetchFromGitHub, fetchFromGitLab, cmake, pkgconfig, makeWrapper, python27, python37, retroarch
+{ stdenv, fetchgit, fetchFromGitHub, fetchFromGitLab, fetchpatch, cmake, pkgconfig, makeWrapper, python27, python37, retroarch
 , alsaLib, fluidsynth, curl, hidapi, libGLU, gettext, glib, gtk2, portaudio, SDL, SDL_net, SDL2, SDL2_image, libGL
 , ffmpeg_3, pcre, libevdev, libpng, libjpeg, libzip, udev, libvorbis, snappy, which, hexdump
 , miniupnpc, sfml, xorg, zlib, nasm, libpcap, boost, icu, openssl
@@ -630,6 +630,13 @@ in with stdenv.lib.licenses;
       rev = "02987af9b81a9c3294af8fb9d5a34f9826a2cf4d";
       sha256 = "0gl7irmn5d8lk7kf484vgw6kb325fq4ghwsni3il4nm5n2a8yglh";
     };
+    patches = [
+      (fetchpatch {
+        name = "fix_mame_build_on_make-4.3.patch";
+        url = "https://github.com/libretro/mame2016-libretro/commit/5874fae3d124f5e7c8a91634f5473a8eac902e47.patch";
+        sha256 = "061f1lcm72glksf475ikl8w10pnbgqa7049ylw06nikis2qdjlfn";
+      })
+    ];
     description = "Port of MAME ~2016 to libretro";
     license = gpl2Plus;
     extraNativeBuildInputs = [ python27 ];
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index 14c05727e9c2a..e3680918fd15c 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -65,12 +65,12 @@ let
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2020-10-01";
+    version = "2020-10-15";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "2d3ed956b944132e1d520446493fa5c9aa8a309f";
-      sha256 = "0mlx6g87h9mcvb5fbpx4j06mx7kpjmi8nh11kzm7bfni7bhyjhx4";
+      rev = "557a1ed5da70cb443a8650766f4e8ea95e8c0da3";
+      sha256 = "105rp35mp6nr79vyz93v36x48yjja38n9n4ngxnpsnm7qf9q8x5n";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -89,12 +89,12 @@ let
 
   ansible-vim = buildVimPluginFrom2Nix {
     pname = "ansible-vim";
-    version = "2020-07-13";
+    version = "2020-10-15";
     src = fetchFromGitHub {
       owner = "pearofducks";
       repo = "ansible-vim";
-      rev = "cfdde31672bce2f60bedc36842ab9bca8d28ba5b";
-      sha256 = "01lpnvdym9izaq29kbgwa7kl303nnzsn0cpqq75bv7glymglbn0m";
+      rev = "7abb04c115742ec9a5f90b86170f0118680cf8ec";
+      sha256 = "185b4dari7y05p99756bqld4kk3d124ry4m4j7an8qm0zmpq648m";
     };
     meta.homepage = "https://github.com/pearofducks/ansible-vim/";
   };
@@ -137,12 +137,12 @@ let
 
   asyncomplete-vim = buildVimPluginFrom2Nix {
     pname = "asyncomplete-vim";
-    version = "2020-09-17";
+    version = "2020-10-21";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "asyncomplete.vim";
-      rev = "20a279b079452dba6e841755f8e9cc5aed75d05e";
-      sha256 = "0fsafx0h3nmsrsscg233cyfhm2vj6n1k0n37l2mg0kbv77pzicga";
+      rev = "2107094f83e58818ec9b8ca033a75eeeb49db163";
+      sha256 = "0bxxl1jj1bigwnvd07wb0ypsp5rn0b5c864m4k44llw7v1r3nrms";
     };
     meta.homepage = "https://github.com/prabirshrestha/asyncomplete.vim/";
   };
@@ -197,12 +197,12 @@ let
 
   awesome-vim-colorschemes = buildVimPluginFrom2Nix {
     pname = "awesome-vim-colorschemes";
-    version = "2020-09-11";
+    version = "2020-10-24";
     src = fetchFromGitHub {
       owner = "rafi";
       repo = "awesome-vim-colorschemes";
-      rev = "41a0d9ea4dac077c2050ceaf144f9ed72d6849d8";
-      sha256 = "12ivlzyw0iq9jsj3ll2wwbya0ssl4vdk1vvjpg7v4xhxgh96s3jr";
+      rev = "6ab7034fde6e6e4307df83d8735643b0fe1ff641";
+      sha256 = "0ds3xxb2w645aspn2d1n5543h9vpn869aihq68z0ajkvvl8mr66z";
     };
     meta.homepage = "https://github.com/rafi/awesome-vim-colorschemes/";
   };
@@ -281,12 +281,12 @@ let
 
   calendar-vim = buildVimPluginFrom2Nix {
     pname = "calendar-vim";
-    version = "2020-08-15";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "calendar.vim";
-      rev = "9b2dcc18ba104820eac1701aaca44dcc24d90eb4";
-      sha256 = "1vy0np1i8whyw9wfkcx564kvlxspwvrp4sznk6iixjln6ha7ngil";
+      rev = "84335b66be1e323002380280f265983dc635fd99";
+      sha256 = "0p9f7hy751ayjh6pna8gi0vi09lk0dwpi69rh21nidiqiph6n5l5";
     };
     meta.homepage = "https://github.com/itchyny/calendar.vim/";
   };
@@ -305,12 +305,12 @@ let
 
   caw-vim = buildVimPluginFrom2Nix {
     pname = "caw-vim";
-    version = "2020-06-01";
+    version = "2020-10-09";
     src = fetchFromGitHub {
       owner = "tyru";
       repo = "caw.vim";
-      rev = "0725e7c273e2c39d8730adc78e0fd20e0d57d173";
-      sha256 = "14rsjy5lllmb84vs5q111cb17c6nwc37zf460kh8ii1ijziyqhy2";
+      rev = "26279f70cdfe5da2226cd15d7dd832ef6242ed26";
+      sha256 = "0sdkcbh0rxx9wf5qa7wwvm8zjk57vvclvss4cadll54zi6q8xq1s";
     };
     meta.homepage = "https://github.com/tyru/caw.vim/";
   };
@@ -389,36 +389,36 @@ let
 
   coc-explorer = buildVimPluginFrom2Nix {
     pname = "coc-explorer";
-    version = "2020-09-28";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "weirongxu";
       repo = "coc-explorer";
-      rev = "c8cc53707a11192ce7b3d6ef62750fea1ea1e9ce";
-      sha256 = "08zq9axfyj4c8wvn09dj6dbw9iq7w4pxgms6yh34p3qf8km6pl91";
+      rev = "a8a3cf41638e5b7b128086888e2dead665407beb";
+      sha256 = "19a3blvfzqjzd5y3l4g03h3c8yxfl9fsdvc6mir0n76krpnk647l";
     };
     meta.homepage = "https://github.com/weirongxu/coc-explorer/";
   };
 
   coc-fzf = buildVimPluginFrom2Nix {
     pname = "coc-fzf";
-    version = "2020-09-03";
+    version = "2020-10-22";
     src = fetchFromGitHub {
       owner = "antoinemadec";
       repo = "coc-fzf";
-      rev = "2047783c1c9f7bcc020612a719d932e848a2d39d";
-      sha256 = "15fxpip9zz5z8np3qrsgadh7p8y8446bxb9vbcr80fcq3j8fmq0v";
+      rev = "ca80d81fdb61d1ea32cfaa498153e1f0cb651994";
+      sha256 = "1p5i415jk6af4yiqzkgghrhs52x491nrz4d3wrdxad8ydlf64jvx";
     };
     meta.homepage = "https://github.com/antoinemadec/coc-fzf/";
   };
 
   coc-markdownlint = buildVimPluginFrom2Nix {
     pname = "coc-markdownlint";
-    version = "2020-09-29";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "fannheyward";
       repo = "coc-markdownlint";
-      rev = "876ce05c7a249f2065f4953ea1bfb0a0dadf764c";
-      sha256 = "0qxbb45djq724yhfna0s9d7m99wcrv8vkw5ilvp1yz2vfg1b78x9";
+      rev = "abdd6450aee119750ddb4dff4a7ab82355a89418";
+      sha256 = "1p0wafvn8xzi4bm9bn2fnp8kavw8s6hchpz81ms9770jrx02z5xi";
     };
     meta.homepage = "https://github.com/fannheyward/coc-markdownlint/";
   };
@@ -461,12 +461,12 @@ let
 
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc-nvim";
-    version = "2020-09-26";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "2b83490cb1228abe4bf2c2557f1407321f6af734";
-      sha256 = "10pgj0kh4vd0wvsb68l3k2af5rhmh249a2cf4mhbl8jb1g76bnrl";
+      rev = "ad1793dce0a59afcf8b324b45a1168c032deb162";
+      sha256 = "1khmmvba6cg0pff37nkbm7zmp3mnvpc889pql6dm6xjqrhpqsda7";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -522,24 +522,24 @@ let
 
   completion-nvim = buildVimPluginFrom2Nix {
     pname = "completion-nvim";
-    version = "2020-10-01";
+    version = "2020-10-23";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "completion-nvim";
-      rev = "52ccd7c344dca90b62de4ea997c4aa328ce7f020";
-      sha256 = "035my2dzahf6svx3f97frv6xx56k4vxxiw0qcwgsbvdp3s4jmb9g";
+      rev = "3b6774ed1c1b4720efe3385f06883483f5e16884";
+      sha256 = "1vldm13lbfmphim946lnyl30276chw4gnnnq2hxnf67k8a9x8ssc";
     };
     meta.homepage = "https://github.com/nvim-lua/completion-nvim/";
   };
 
   completion-tabnine = buildVimPluginFrom2Nix {
     pname = "completion-tabnine";
-    version = "2020-10-01";
+    version = "2020-10-03";
     src = fetchFromGitHub {
       owner = "aca";
       repo = "completion-tabnine";
-      rev = "49771bca86f185c8cd1017f28b025addae82fe09";
-      sha256 = "1kc9ck62k7rj09i3bqhz36661z1501z7ns7q6dr4n07nqylcn5kb";
+      rev = "a7e6e2e249fec79f4260f388cd0c8adb38c0b3ad";
+      sha256 = "1hnbhr4sgl7a8mj2ygma9avc7hfsv18wxrxypik62x7vijsnv9aq";
     };
     meta.homepage = "https://github.com/aca/completion-tabnine/";
   };
@@ -570,12 +570,12 @@ let
 
   conjure = buildVimPluginFrom2Nix {
     pname = "conjure";
-    version = "2020-09-20";
+    version = "2020-10-17";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "conjure";
-      rev = "a9431410d74f2281ae626727342a5d23d4a12552";
-      sha256 = "00b73dxirn3m0rvagskgc00vyrkkcnbxfkn22jnzv84fjvvcj375";
+      rev = "0e63269e176232cdd9f1c20d94dfd3b8ad5702a1";
+      sha256 = "0ixryjfszx09g27awdaqf5xrc7yjb5mlpc57ph3w61hdv65yps7b";
     };
     meta.homepage = "https://github.com/Olical/conjure/";
   };
@@ -594,12 +594,12 @@ let
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2020-09-29";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "3c9d27a1a15da1d0f6128402fa766d9e9feebc1e";
-      sha256 = "064ldkah460azqibc03cj42vbrl6ns4sj439wsbkqb0qxni5cp57";
+      rev = "778f5f5868aec79bb5415f790c8f18b8253fd99c";
+      sha256 = "1p7lg6ln9vkw6ds3bllyf1rlpnlhb5cyly6cab1v9zgjz4xagx80";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -642,12 +642,12 @@ let
 
   csv-vim = buildVimPluginFrom2Nix {
     pname = "csv-vim";
-    version = "2020-09-02";
+    version = "2020-10-07";
     src = fetchFromGitHub {
       owner = "chrisbra";
       repo = "csv.vim";
-      rev = "e23f03632ad2544f0232b824dd5520fd0b58d235";
-      sha256 = "12b127v6yxwik7q2wbyqag4082yzp44sm0x4xwnv55xhlz4w6xws";
+      rev = "350af4840991142230103e4f4fc58581d9c07812";
+      sha256 = "1ibmrz1h51iy5ffvwalfydgjvdsfjvbpz1s1zmsalpv8mlswrhij";
     };
     meta.homepage = "https://github.com/chrisbra/csv.vim/";
   };
@@ -690,12 +690,12 @@ let
 
   ctrlp-vim = buildVimPluginFrom2Nix {
     pname = "ctrlp-vim";
-    version = "2020-09-21";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "ctrlpvim";
       repo = "ctrlp.vim";
-      rev = "ae5237f8eb9bbc1ad7f8903738e0dc2af194f740";
-      sha256 = "18inmxhqzw40sm5ixybbliikbhs10zrqp58qjcd8qc4grj8z6lcp";
+      rev = "3866ae170a342fb40d83e1538c37c81c7977b821";
+      sha256 = "1ksi46g33ghdrp0nff0fyysxnzw0sr1x5b1ln6xzjv4hkdxiz51k";
     };
     meta.homepage = "https://github.com/ctrlpvim/ctrlp.vim/";
   };
@@ -738,12 +738,12 @@ let
 
   defx-nvim = buildVimPluginFrom2Nix {
     pname = "defx-nvim";
-    version = "2020-09-24";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "defx.nvim";
-      rev = "a84cb7f88afc904123858b226240c3339b7ca814";
-      sha256 = "1ryc0ahrjjc20344jbvxz9miyrqdjs7gz6r2awkf0ayyz6nx5gch";
+      rev = "152c61f409d6a58b4c10bbd70b51bedd3db11a3c";
+      sha256 = "02izychnj48gb108a4npk8v1nfhw99x5368jv2yqrxaixqmykkrs";
     };
     meta.homepage = "https://github.com/Shougo/defx.nvim/";
   };
@@ -786,12 +786,12 @@ let
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2020-09-23";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "cb06d89aaded0bc2418d03a8fbb263ca0ef70406";
-      sha256 = "0dk4w6yljnhf4qwhgamnw2bnmqikgqb8nshifn5l767sm3hk7d2h";
+      rev = "48f485e080c2b6a21a374b5b2000c091d30c5f56";
+      sha256 = "0wg1dz57hz0rq14f5lyqh9hbdyw3c1hdwpgwckd7qrncbcfbvbw2";
     };
     meta.homepage = "https://github.com/Shougo/denite.nvim/";
   };
@@ -932,12 +932,12 @@ let
 
   deoplete-lsp = buildVimPluginFrom2Nix {
     pname = "deoplete-lsp";
-    version = "2020-09-18";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete-lsp";
-      rev = "17cd3fae3044eb8148bc22167257d4ae13165eb1";
-      sha256 = "1xag51j71ifjn64xyaz7whml796pdl8vsw0ad22wndwzb95kyxdm";
+      rev = "fb51bfebd8ac57282154d119f80368b4b94199b7";
+      sha256 = "09k2i02vrgn0qc3bhjz3hzaiab3h2cwqvk619a1xp5bpxr9qc78w";
     };
     meta.homepage = "https://github.com/Shougo/deoplete-lsp/";
   };
@@ -1004,11 +1004,11 @@ let
 
   deoplete-vim-lsp = buildVimPluginFrom2Nix {
     pname = "deoplete-vim-lsp";
-    version = "2020-07-24";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "lighttiger2505";
       repo = "deoplete-vim-lsp";
-      rev = "2ea06074dc07c67ccffc24b976b92e17e9d795d1";
+      rev = "cb5af558e892a70648587e673fc251409ac3dc72";
       sha256 = "03rpw1z5fgglba7vymi3ln810nh5x3x9hjqlm41shdik9pgmg867";
     };
     meta.homepage = "https://github.com/lighttiger2505/deoplete-vim-lsp/";
@@ -1028,12 +1028,12 @@ let
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete-nvim";
-    version = "2020-09-12";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "895fafe572585b807a31d4ba2835188d7b38cc41";
-      sha256 = "1irhdp1bdwpyj9g40mb4n1mjw2f1hxswhgf2f1nkv1cx0j8pvkzd";
+      rev = "3c94074f71faac00a7d8f4eef2c4bdea96212cd5";
+      sha256 = "1g5bll38gw1bpmhss398s1lj9jhvszv1xzbi5qc698y2zi5cm87z";
     };
     meta.homepage = "https://github.com/Shougo/deoplete.nvim/";
   };
@@ -1076,12 +1076,12 @@ let
 
   direnv-vim = buildVimPluginFrom2Nix {
     pname = "direnv-vim";
-    version = "2020-09-27";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "direnv";
       repo = "direnv.vim";
-      rev = "c2b9f7834c1a2d28c4e022485b870c19de0c6ada";
-      sha256 = "0qk1kywr4zdhvvpc77868g3aclwbmm5p4zvsxj65qb4bpzddxvrd";
+      rev = "983bbce66b39cd17e4b8348078a41a5782cd73a0";
+      sha256 = "1n144nihbcaljgbxv4kfg8af3dxvf9i4cxdz5qq12rzslwqgdsi1";
     };
     meta.homepage = "https://github.com/direnv/direnv.vim/";
   };
@@ -1100,36 +1100,36 @@ let
 
   dracula-vim = buildVimPluginFrom2Nix {
     pname = "dracula-vim";
-    version = "2020-07-19";
+    version = "2020-10-19";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "b64b22affafca7d3831a20949115b91031d596ec";
-      sha256 = "1f5hwfcrsfq3yk53kkn4syaxmri8wh8h6rpq867468b8rdcnhq01";
+      rev = "80d2667818492e2e7630894f2b3eb7fdae1e240f";
+      sha256 = "1bq52larf3bbhrrzqg2gx737zc1xrg8qa916ny2qh9w7lsjjwf4h";
     };
     meta.homepage = "https://github.com/dracula/vim/";
   };
 
   echodoc-vim = buildVimPluginFrom2Nix {
     pname = "echodoc-vim";
-    version = "2020-06-08";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "echodoc.vim";
-      rev = "4719626bfd477f1189dd9992614ff452d3ea3caf";
-      sha256 = "0bpaav7yf06wlzfiyx6iylxan8a9hici041pnmlw7kgf176h6w7b";
+      rev = "2a6d6bd6255fbfe152da6bb7f2404afa29479941";
+      sha256 = "18nm20ivkcjlh0rgf3c1wdxf1wsc4r95znm2dhgmw1ym4wmh0v4s";
     };
     meta.homepage = "https://github.com/Shougo/echodoc.vim/";
   };
 
   editorconfig-vim = buildVimPluginFrom2Nix {
     pname = "editorconfig-vim";
-    version = "2020-06-02";
+    version = "2020-10-21";
     src = fetchFromGitHub {
       owner = "editorconfig";
       repo = "editorconfig-vim";
-      rev = "0a3c1d8082e38a5ebadcba7bb3a608d88a9ff044";
-      sha256 = "1w60rsij0ag74vjal2l75k4g4xv8438a0izvzpy5xir4bby2g7dz";
+      rev = "8f6eba5fd6c306e0480ea72917902a2bde162d73";
+      sha256 = "057k0fdqgc6m1d6zzql5m1q5lsdsp2s28s9f80h9sgxvrzy36z7y";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/editorconfig/editorconfig-vim/";
@@ -1161,12 +1161,12 @@ let
 
   emmet-vim = buildVimPluginFrom2Nix {
     pname = "emmet-vim";
-    version = "2020-06-20";
+    version = "2020-10-21";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "emmet-vim";
-      rev = "dc6cb4fd074f4c371158eeab0c8e4ce4af33534b";
-      sha256 = "1cy201c5imbw2pw65f1s0nn8p6vwm00nqlvxwygh18dhy2qv4gfa";
+      rev = "60930a968d26fc7abf4f8fd5c3926bdcda2dd787";
+      sha256 = "1sf0518rq9idj0sbyplh7y9a481i3y57wwkvdakqvngbpm4bf6ms";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/mattn/emmet-vim/";
@@ -1258,12 +1258,12 @@ let
 
   flake8-vim = buildVimPluginFrom2Nix {
     pname = "flake8-vim";
-    version = "2017-02-17";
+    version = "2020-10-20";
     src = fetchFromGitHub {
       owner = "andviro";
       repo = "flake8-vim";
-      rev = "01c4af4c68f33b2b3785314bfbf5b3d8d1451795";
-      sha256 = "14rv0p1vx4njlplkc72gz7r8sy9vc6n8x9l00zc777x5zzrhgz3g";
+      rev = "5bc93f7f26ceb18ccbe116830eaf8ff2baa63994";
+      sha256 = "142pgasl0b64a0zxmspdsi636axrgvdx6rh3hwjrb1zlsck19y1a";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/andviro/flake8-vim/";
@@ -1331,36 +1331,36 @@ let
 
   fzf-vim = buildVimPluginFrom2Nix {
     pname = "fzf-vim";
-    version = "2020-09-11";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "fzf.vim";
-      rev = "3348aef05d02828cd8b071ab29476af2029ea3d3";
-      sha256 = "0jyk9c3ksxss8zjk0qqkm95074glbf31a5w78sdzwn352xm8nakp";
+      rev = "bd3a021ec11617c56e6aa95578fee619445b029d";
+      sha256 = "1jd0bs7v28za6sba6f2i49mvjcnicid25ab3jljcax18c4kd6dl1";
     };
     meta.homepage = "https://github.com/junegunn/fzf.vim/";
   };
 
   gen_tags-vim = buildVimPluginFrom2Nix {
     pname = "gen_tags-vim";
-    version = "2019-06-28";
+    version = "2020-10-12";
     src = fetchFromGitHub {
       owner = "jsfaint";
       repo = "gen_tags.vim";
-      rev = "208cd0490547bc8f7615eea1b26e4635d2e60a96";
-      sha256 = "00s1kxi1bsvz06z7x78kls0k6ncnbqdyz14fvdxxq82f6s1kdvdw";
+      rev = "f888a2f8732e08d9f2b638b144c5c826a30953a3";
+      sha256 = "16gkczlaani0c0v3hkklriabhkgcs0mg9mrbn8jzfsap15cnkgk5";
     };
     meta.homepage = "https://github.com/jsfaint/gen_tags.vim/";
   };
 
   gentoo-syntax = buildVimPluginFrom2Nix {
     pname = "gentoo-syntax";
-    version = "2020-06-05";
+    version = "2020-10-07";
     src = fetchFromGitHub {
       owner = "gentoo";
       repo = "gentoo-syntax";
-      rev = "47b6900c425614d4ba22223c13a23920f0618d9f";
-      sha256 = "0agswv1r5nxbnw0nddhw9vqvrfsvsgh18nwrg83c01sj97075qmv";
+      rev = "3d90ee5686e54fb1c3242f10e644a789579a4372";
+      sha256 = "0qvfqw38vk9ijwhgivjwh289vnmzc2p7cp6jiqpj98zsnank0yw2";
     };
     meta.homepage = "https://github.com/gentoo/gentoo-syntax/";
   };
@@ -1475,12 +1475,12 @@ let
 
   gruvbox-community = buildVimPluginFrom2Nix {
     pname = "gruvbox-community";
-    version = "2020-05-23";
+    version = "2020-10-04";
     src = fetchFromGitHub {
       owner = "gruvbox-community";
       repo = "gruvbox";
-      rev = "933b6cc35a0f180ff488ef20c7b534c9c3b6701a";
-      sha256 = "0w10hcz66dgilx6fv07bb3zsf5c0x9gv4vhp15c5fp2rzwxi10bn";
+      rev = "9e71159ffa93be1e772d2cb3c78ee940f7b308ba";
+      sha256 = "0n3jzzjbfrs3r26bagry3pvqcy2asb1jkcfqvabmycs6y6w8sx01";
     };
     meta.homepage = "https://github.com/gruvbox-community/gruvbox/";
   };
@@ -1499,12 +1499,12 @@ let
 
   gv-vim = buildVimPluginFrom2Nix {
     pname = "gv-vim";
-    version = "2020-05-22";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "gv.vim";
-      rev = "61d877d23caaad9009d672f90fe2ab576ab93d2d";
-      sha256 = "00h4d6jah0fdr5m8x9c1gmmm9wskplixnvbbalfbbpc599xhgj83";
+      rev = "486b5c4e960d5ec9e79888939534b7b2fc7453ad";
+      sha256 = "07pj94s5kf8qgwdz73xbb7b2h3w6gkv4sw9faicdb6hla3i19d9b";
     };
     meta.homepage = "https://github.com/junegunn/gv.vim/";
   };
@@ -1547,12 +1547,12 @@ let
 
   hoon-vim = buildVimPluginFrom2Nix {
     pname = "hoon-vim";
-    version = "2020-02-19";
+    version = "2020-10-15";
     src = fetchFromGitHub {
       owner = "urbit";
       repo = "hoon.vim";
-      rev = "116f29971a2fbec8e484daeba8afd9d60f85800f";
-      sha256 = "029rm8njpsa0lhhh504975lmw7yr2bkvxi2gag1l9279r629vp2r";
+      rev = "aeb307427f2ffaf756cb04574f5ed0d77626d51e";
+      sha256 = "11nsws8q54lya6lk51zkwhv47rmidg1wclgd4vq7v4jwc25gw8id";
     };
     meta.homepage = "https://github.com/urbit/hoon.vim/";
   };
@@ -1643,12 +1643,12 @@ let
 
   indentLine = buildVimPluginFrom2Nix {
     pname = "indentLine";
-    version = "2020-09-04";
+    version = "2020-10-12";
     src = fetchFromGitHub {
       owner = "Yggdroot";
       repo = "indentLine";
-      rev = "5bf49035522dea94b72638d039828c6f84b7ae34";
-      sha256 = "098ng8f2dv29pgvai4nsm2d5qyw44gd9dxjmdc3mdznzmn0clvvf";
+      rev = "6107214eff0cac5d9810d29ae8614ddfdfcd986b";
+      sha256 = "1aycs427w9w5hjnif5c13wf3jd872a3i94zzdfisfrispbs3ad2m";
     };
     meta.homepage = "https://github.com/Yggdroot/indentLine/";
   };
@@ -1691,12 +1691,12 @@ let
 
   is-vim = buildVimPluginFrom2Nix {
     pname = "is-vim";
-    version = "2017-10-30";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "haya14busa";
       repo = "is.vim";
-      rev = "61d5029310c69bde700b2d46a454f80859b5af17";
-      sha256 = "1nnf6y62mc0rj7hbrapfkmr91ypsqkzhwgpfx7pahz8m3a2324q6";
+      rev = "d393cb346dcdf733fecd7bbfc45b70b8c05e9eb4";
+      sha256 = "03rvhvqx59c6lp9xh6zry3ynppngqn53swl3v9gmc3ynh3l1jdzq";
     };
     meta.homepage = "https://github.com/haya14busa/is.vim/";
   };
@@ -1764,12 +1764,12 @@ let
 
   julia-vim = buildVimPluginFrom2Nix {
     pname = "julia-vim";
-    version = "2020-09-07";
+    version = "2020-10-14";
     src = fetchFromGitHub {
       owner = "JuliaEditorSupport";
       repo = "julia-vim";
-      rev = "33116e1135ffa0c09997c111785beb5232efc7cf";
-      sha256 = "1qx1xpnnzvb5h86mrywx56yqw5lbma9xmwdgi6dh6x8mzald7agw";
+      rev = "a4bc8a2032e9da4dbfc5f527c2415b68fc09b9bd";
+      sha256 = "1ir0yj0f0ggndxfpg8119vcb1l7qagf5qsl9s94ghbka6qqvlia3";
     };
     meta.homepage = "https://github.com/JuliaEditorSupport/julia-vim/";
   };
@@ -1836,12 +1836,12 @@ let
 
   lean-vim = buildVimPluginFrom2Nix {
     pname = "lean-vim";
-    version = "2019-10-04";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "leanprover";
       repo = "lean.vim";
-      rev = "2ace010eb32603a65af7921954a0594a02523c6b";
-      sha256 = "0wq2lw4xx2qhz1xii9g7i6wz0y43b2icqrm6ypr9jmaac1rhiq7c";
+      rev = "c3a99f34a92af8a86e162134276222309e01e896";
+      sha256 = "09kz4iy0flwdawhd0phy6jl6zkxp3qdyhl8snl0n12sbskzq7i1b";
     };
     meta.homepage = "https://github.com/leanprover/lean.vim/";
   };
@@ -1872,12 +1872,12 @@ let
 
   lf-vim = buildVimPluginFrom2Nix {
     pname = "lf-vim";
-    version = "2020-06-11";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "ptzz";
       repo = "lf.vim";
-      rev = "8eef4095f0ca4ec37b6877b7b01047146e987c6b";
-      sha256 = "17clfc8shmv485r6anpkkcq88x6n2pm54ir1pjy852spzykycika";
+      rev = "e541328a67fe10f1323630a30a37b58c934d7819";
+      sha256 = "09w33f4cyg9wdj8jas5h43cc7byqfmmm9wyc0xjaw9jxcp78ygg9";
     };
     meta.homepage = "https://github.com/ptzz/lf.vim/";
   };
@@ -1896,12 +1896,12 @@ let
 
   lh-vim-lib = buildVimPluginFrom2Nix {
     pname = "lh-vim-lib";
-    version = "2020-09-30";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "LucHermitte";
       repo = "lh-vim-lib";
-      rev = "df2a495aac2dae95e9869c35d79ed26313f0e7c3";
-      sha256 = "1hc4vsyb616qj0irak1c28kgsk7aszk3x94mhrbgy6yxkiv9asgn";
+      rev = "b5959b4fa3635d9a7eac587a5c223effca14a970";
+      sha256 = "0rfl5c2bf0j6kn1knzg4kywi7xvqhr6impwfh5466ncb4p529vlk";
     };
     meta.homepage = "https://github.com/LucHermitte/lh-vim-lib/";
   };
@@ -1920,50 +1920,50 @@ let
 
   lightline-bufferline = buildVimPluginFrom2Nix {
     pname = "lightline-bufferline";
-    version = "2020-09-04";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "mengelbrecht";
       repo = "lightline-bufferline";
-      rev = "6417dd8c864ccd6fb2b79882d30ca0227bfd2204";
-      sha256 = "0aars37arix00l63kn5p4gq3dvzpmrzxz1ap20k1mr2dy7pmval5";
+      rev = "3933dcda3630474ba448cb486e8c630dade7b2ce";
+      sha256 = "09p759i41acyyyqk629sbcp36v66xf5y369xagjy8n2gzczj0mwa";
     };
     meta.homepage = "https://github.com/mengelbrecht/lightline-bufferline/";
   };
 
   lightline-vim = buildVimPluginFrom2Nix {
     pname = "lightline-vim";
-    version = "2020-09-25";
+    version = "2020-10-20";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "lightline.vim";
-      rev = "2afc3ab4dda191c75764d3239d1cf56356759dd4";
-      sha256 = "0yvinwvzhqb87nqg38azd19c9w0yrkl06mx3agji2mvn23p66ab5";
+      rev = "8769bbb84cd22b475275cc4f9f06a25445357a49";
+      sha256 = "1q1pmfvzvdsknw67zi00b3bn8y10mx7wjfc1nxfy1h33vzhl2g2r";
     };
     meta.homepage = "https://github.com/itchyny/lightline.vim/";
   };
 
   limelight-vim = buildVimPluginFrom2Nix {
     pname = "limelight-vim";
-    version = "2020-09-07";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "limelight.vim";
-      rev = "815c6122504361d52e10172601471b416d040ca8";
-      sha256 = "1af9jz05iphp6738vvfchnvhfxw7wx2hxqs0iyjkmi7w43hsw0sy";
+      rev = "4412a84d7fbfd01281bf23d801e95c45c1eacc09";
+      sha256 = "1qab2pd1pyfrw0llxd5j11imzqxa3lnnfhr1w2fjn3yanbsxvlvd";
     };
     meta.homepage = "https://github.com/junegunn/limelight.vim/";
   };
 
   lsp_extensions-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_extensions-nvim";
-    version = "2020-09-06";
+    version = "2020-10-30";
     src = fetchFromGitHub {
-      owner = "tjdevries";
+      owner = "nvim-lua";
       repo = "lsp_extensions.nvim";
-      rev = "7c3f907c3cf94d5797dcdaf5a72c5364a91e6bd2";
-      sha256 = "0c9glx0hn28m5jzz52ny1rcp63s9fdlznvywy4gzwwqi9rscqznz";
+      rev = "8740c4b52dd6f9c2a564209db466ae72a3412dcc";
+      sha256 = "0sakmg4fkzji3rl9qmfx2rphz3ma5b6sysf7h7sag4n4lykinayj";
     };
-    meta.homepage = "https://github.com/tjdevries/lsp_extensions.nvim/";
+    meta.homepage = "https://github.com/nvim-lua/lsp_extensions.nvim/";
   };
 
   lushtags = buildVimPluginFrom2Nix {
@@ -2292,12 +2292,12 @@ let
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2020-09-27";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "78098f6d1e03fd87ca90a522a752106357dfdc6f";
-      sha256 = "0hpml222gj203svm7f9sghzgg0ccjvf0xw9lbnfmn8naxqqqmzw6";
+      rev = "2033ca4fa0a820658f07e6a2ffcfb0434d5be071";
+      sha256 = "0mz237rbymlq6ksmyakc6mqvskic72fgaw88jywg3cmnjjskqvi2";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
@@ -2340,12 +2340,12 @@ let
 
   neosnippet-snippets = buildVimPluginFrom2Nix {
     pname = "neosnippet-snippets";
-    version = "2020-09-24";
+    version = "2020-10-08";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neosnippet-snippets";
-      rev = "886a414e339fe40a47f30da8aa6012a6e0906018";
-      sha256 = "0rnqa2cc7imapizg52r5dxzq2x2m8sxvds2q27ablzcvvghsjh96";
+      rev = "7448233dfd40e7f0a1075fefa76d1d5a84e5d28a";
+      sha256 = "0dy7fgdhkz06720ws4r5gyksqg60hb2v157vkbzii3jqd5fx8mkf";
     };
     meta.homepage = "https://github.com/Shougo/neosnippet-snippets/";
   };
@@ -2424,36 +2424,36 @@ let
 
   nerdcommenter = buildVimPluginFrom2Nix {
     pname = "nerdcommenter";
-    version = "2020-06-08";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdcommenter";
-      rev = "fade3d4b26f5a0d58f256a06ba7b0a04d9fb4f3b";
-      sha256 = "1vb5n4g5x3hpnc013gjf8frxxdrcq1zdcm3mpx90b0cjxi252cn3";
+      rev = "85750560a680907c50c1545abc4dd0e0b2452ff4";
+      sha256 = "1395m95ry4c52bj2zpxryks70c3abfwhb140kpx4rifl2ccpnwwp";
     };
     meta.homepage = "https://github.com/preservim/nerdcommenter/";
   };
 
   nerdtree = buildVimPluginFrom2Nix {
     pname = "nerdtree";
-    version = "2020-08-18";
+    version = "2020-10-14";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdtree";
-      rev = "577ddc73f0a1d2fd6166ed3268ab8536111037e0";
-      sha256 = "0bccr18nr42vwbb4i765yxjw18piyiyd12sm4snbkkxahp9yswf7";
+      rev = "14af89743ac1c31ff9bb43682025eda50333a7d5";
+      sha256 = "1q50cc9z91v809s65w0zq2s0z5smvghy0fbdjn64mr894ndvrmcv";
     };
     meta.homepage = "https://github.com/preservim/nerdtree/";
   };
 
   nerdtree-git-plugin = buildVimPluginFrom2Nix {
     pname = "nerdtree-git-plugin";
-    version = "2020-09-25";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "Xuyuanp";
       repo = "nerdtree-git-plugin";
-      rev = "85c4bed898d2d755a2a2ffbfc2433084ce107cdd";
-      sha256 = "1m8s5x30k875812fbznvbq3pch5jpy29jr5rpzr0pr2ni5wkv6a4";
+      rev = "01b84c63b9ba48628285779fbdfd046dd2bc2970";
+      sha256 = "1bmnm5my7r8ranafanwc33qksic444p47i23qsnkkphxk2hiq5q7";
     };
     meta.homepage = "https://github.com/Xuyuanp/nerdtree-git-plugin/";
   };
@@ -2472,12 +2472,12 @@ let
 
   nim-vim = buildVimPluginFrom2Nix {
     pname = "nim-vim";
-    version = "2019-04-26";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "zah";
       repo = "nim.vim";
-      rev = "88f5e708a739fb26be6364ab2fabadf9fffb8d7b";
-      sha256 = "0ja8qx9c5g7k4phllvk3vz6s62iwpwsn40w6c32sybjs98jkrw7y";
+      rev = "7a8737a4532239c06116ebde0329d8156f3d3b55";
+      sha256 = "05xhac416c8zsgqlchc80f7gbjxbyngi6cxziqagdhr6kccc73gi";
     };
     meta.homepage = "https://github.com/zah/nim.vim/";
   };
@@ -2580,12 +2580,12 @@ let
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2020-10-01";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "5debe931333b20fe2b352dd92c03ded837e3df4b";
-      sha256 = "1mw5v1qpqz7h9vb89bj1m8wrqk7yvfycmal7y1b5wizl45ssx40m";
+      rev = "dd7900fc44b9cc6773bd4f8b5c0175887991520c";
+      sha256 = "0nfdvmlzqfga596n5awdhz9mc6gwnys73ixxkqi49f2g9x215ksd";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -2640,12 +2640,12 @@ let
 
   onehalf = buildVimPluginFrom2Nix {
     pname = "onehalf";
-    version = "2020-06-11";
+    version = "2020-10-14";
     src = fetchFromGitHub {
       owner = "sonph";
       repo = "onehalf";
-      rev = "3aa42a39ed3cddde0c53976a700b81b8a7067890";
-      sha256 = "0x01c7930hlzvjac3r2wbkdha8j6mmhyk7nwgdazh1z4sxqjyj1l";
+      rev = "89923117bc49dd1e0c6b7fdd34bc6dc4d425fe1f";
+      sha256 = "0d3d9sp88b41j8yhkn99b0g1y3jbcm3hhf8dw6kq50scrb84g5y3";
     };
     meta.homepage = "https://github.com/sonph/onehalf/";
   };
@@ -2676,12 +2676,12 @@ let
 
   palenight-vim = buildVimPluginFrom2Nix {
     pname = "palenight-vim";
-    version = "2020-09-08";
+    version = "2020-10-20";
     src = fetchFromGitHub {
       owner = "drewtempelmeyer";
       repo = "palenight.vim";
-      rev = "294f190da3bd50a7c91fed1b94c92fd0930791ec";
-      sha256 = "0s9mna0dcpszz3wyz1qmmrm76rxkjlmyxn7697k5vz4l49zzyi39";
+      rev = "847fcf5b1de2a1f9c28fdcc369d009996c6bf633";
+      sha256 = "0v7jkg6rpwmyq0wl6lymm2j07r0mzab8lbsnxb0jw34hcpx0rfis";
     };
     meta.homepage = "https://github.com/drewtempelmeyer/palenight.vim/";
   };
@@ -2796,12 +2796,12 @@ let
 
   purescript-vim = buildVimPluginFrom2Nix {
     pname = "purescript-vim";
-    version = "2018-12-10";
+    version = "2020-10-08";
     src = fetchFromGitHub {
       owner = "purescript-contrib";
       repo = "purescript-vim";
-      rev = "67ca4dc4a0291e5d8c8da48bffc0f3d2c9739e7f";
-      sha256 = "1insh39hzbynr6qxb215qxhpifl5m8i5i0d09a3b6v679i7s11i8";
+      rev = "5b4fa3e2970be1353f7d77735c0c9b42dc9885f3";
+      sha256 = "11d2jfzimdi6idvs61gjhy7d1g8yk90dfvvw5m8rn9620xrypbgn";
     };
     meta.homepage = "https://github.com/purescript-contrib/purescript-vim/";
   };
@@ -3108,12 +3108,12 @@ let
 
   skim-vim = buildVimPluginFrom2Nix {
     pname = "skim-vim";
-    version = "2019-07-31";
+    version = "2020-10-20";
     src = fetchFromGitHub {
       owner = "lotabout";
       repo = "skim.vim";
-      rev = "4e9d9a3deb2060e2e79fede1c213f13ac7866eb5";
-      sha256 = "0vpfn2zivk8cf2l841jbd78zl1vzdw1wjf9p0dm6pgr84kj9pkx4";
+      rev = "2908249af6b759c79c7834862bd42af3a8bc6d4e";
+      sha256 = "1819niha13yzhk7sya1mx8qigjwacd4mdp6s2hkk03l1s6x84dj7";
     };
     meta.homepage = "https://github.com/lotabout/skim.vim/";
   };
@@ -3228,12 +3228,12 @@ let
 
   splitjoin-vim = buildVimPluginFrom2Nix {
     pname = "splitjoin-vim";
-    version = "2020-09-21";
+    version = "2020-10-25";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "splitjoin.vim";
-      rev = "7148cbc3b9c4f70cea9fdccb72ae246b6d499c20";
-      sha256 = "0smaghrigmr8jmw919pmlcvv6a7w7rw2j12gnbks30pi45y547jm";
+      rev = "1c1b94a6aa218c429421c82bcc56a216301b6e85";
+      sha256 = "1jkny1ag82zvkfjvbzrkkh4s54jcf9hq5n9ak3g691zcddhmrp17";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@@ -3337,12 +3337,12 @@ let
 
   tagbar = buildVimPluginFrom2Nix {
     pname = "tagbar";
-    version = "2020-09-29";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "tagbar";
-      rev = "a1e0e7a57144a0af26e219d16f6f00098b271e25";
-      sha256 = "04c0s7q7gg1znvzgfdyicscfgbpxj7z5ym7v8zpcg9bfhg29nngv";
+      rev = "99c22f1bb209e3393053a4dfb38039534b6b8a8d";
+      sha256 = "1bj7qi36yakxqds43fqp2876za4aq3bbb9444yvna2l0n504iy9j";
     };
     meta.homepage = "https://github.com/preservim/tagbar/";
   };
@@ -3373,16 +3373,28 @@ let
 
   tcomment_vim = buildVimPluginFrom2Nix {
     pname = "tcomment_vim";
-    version = "2020-08-23";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "tomtom";
       repo = "tcomment_vim";
-      rev = "25bdb50a6c5934d4ac9313cef0d7d2168d84803b";
-      sha256 = "04dmdydrc4v055qkjn5gfvibyzd30fg00abnk8ijvabfcmhvlh40";
+      rev = "c28fdd5c59144a4725a31f011738991696896170";
+      sha256 = "03nqhdnq4i4r75ma7gslr5mlfxia7xscykdywc70glrdqfrpsa5g";
     };
     meta.homepage = "https://github.com/tomtom/tcomment_vim/";
   };
 
+  telescope-nvim = buildVimPluginFrom2Nix {
+    pname = "telescope-nvim";
+    version = "2020-10-30";
+    src = fetchFromGitHub {
+      owner = "nvim-lua";
+      repo = "telescope.nvim";
+      rev = "37c4f1b355d843e95ba41f2a73d83de58fb74dae";
+      sha256 = "0ly9vcnmf1b881fh1r5v4231h5n8kld2k9q1bxzvy87p2wsfb5sn";
+    };
+    meta.homepage = "https://github.com/nvim-lua/telescope.nvim/";
+  };
+
   tender-vim = buildVimPluginFrom2Nix {
     pname = "tender-vim";
     version = "2020-06-29";
@@ -3470,12 +3482,12 @@ let
 
   traces-vim = buildVimPluginFrom2Nix {
     pname = "traces-vim";
-    version = "2020-09-24";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "markonm";
       repo = "traces.vim";
-      rev = "8ea8d8b98e61cddaff159b4328310f4096c7bb2b";
-      sha256 = "1fs7j7v72nv5374pqpx68xjc8kl3fyyhwz4hc029kljqlvgg0lrj";
+      rev = "1fb8738cf1e4db06423396dd3576592a94255935";
+      sha256 = "0jl7m04rly8y1kslmcmi9f83a87qb3fbk6isqqqd5xgrxxmcj753";
     };
     meta.homepage = "https://github.com/markonm/traces.vim/";
   };
@@ -3494,12 +3506,12 @@ let
 
   tsuquyomi = buildVimPluginFrom2Nix {
     pname = "tsuquyomi";
-    version = "2020-03-10";
+    version = "2020-10-16";
     src = fetchFromGitHub {
       owner = "Quramy";
       repo = "tsuquyomi";
-      rev = "85fffd5939c8fc5750b35a937b965af2ad5b0b15";
-      sha256 = "1j5wdh0xa5yld4fy2msyjf1qvj8zx0iccc1bw63zzbrcl6rs30gx";
+      rev = "144526df5340d3bd0b413e6127c0393de171889a";
+      sha256 = "1amizvbpv4mwpi39x9xn5aj1kjkgl4sgh54irnhs4ga76zn0s09d";
     };
     meta.homepage = "https://github.com/Quramy/tsuquyomi/";
   };
@@ -3518,12 +3530,12 @@ let
 
   ultisnips = buildVimPluginFrom2Nix {
     pname = "ultisnips";
-    version = "2020-09-08";
+    version = "2020-10-21";
     src = fetchFromGitHub {
       owner = "SirVer";
       repo = "ultisnips";
-      rev = "7941f98337564d4e86cf2b7467b64def4d212794";
-      sha256 = "0miihbj9h3ay6iq1ld13ixij3l4h02yrmc7bq8iarw776l89gin0";
+      rev = "e6478871c04bb75f3c6cb9b90e171fffbf9c8ff3";
+      sha256 = "17f1q0hv89l5mdiv3xrk1l3lnlxj6gbg8pnzcpx5dk4sd14xivd3";
     };
     meta.homepage = "https://github.com/SirVer/ultisnips/";
   };
@@ -3542,12 +3554,12 @@ let
 
   unicode-vim = buildVimPluginFrom2Nix {
     pname = "unicode-vim";
-    version = "2020-08-10";
+    version = "2020-10-07";
     src = fetchFromGitHub {
       owner = "chrisbra";
       repo = "unicode.vim";
-      rev = "e9b21134f4e8bc8cd09fa6145749511ac8800f98";
-      sha256 = "0rfkd11arkmc2z2m9lz5hnqxfcp2b98hmzgf424s44xyhrn98y16";
+      rev = "5f21e3e7e60f6d032daa4769e7ee84885fb0ce4d";
+      sha256 = "0sfbv620zl8lqdzsypxcn9gasaaqpwarsynjxa25c4cd843cz3d2";
     };
     meta.homepage = "https://github.com/chrisbra/unicode.vim/";
   };
@@ -3590,12 +3602,12 @@ let
 
   vCoolor-vim = buildVimPluginFrom2Nix {
     pname = "vCoolor-vim";
-    version = "2018-10-06";
+    version = "2020-10-14";
     src = fetchFromGitHub {
       owner = "KabbAmine";
       repo = "vCoolor.vim";
-      rev = "8fc037e453f4c2274f590bde4f9fb56167b14e57";
-      sha256 = "193cjxfha5xcpfjqqpyfa6xidys1zmmmwlcj7w2cxbr5j5bdnybm";
+      rev = "bc19d684af09b1e146cf72176eea1ecded84882c";
+      sha256 = "03vaghwqr3k0nls365wk4qwzmvdvdvq41q02c3l5qv2vsdikmz5i";
     };
     meta.homepage = "https://github.com/KabbAmine/vCoolor.vim/";
   };
@@ -3614,12 +3626,12 @@ let
 
   vim-abolish = buildVimPluginFrom2Nix {
     pname = "vim-abolish";
-    version = "2020-09-26";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-abolish";
-      rev = "1329f888a777cc1f8228f048a532502a30f1df01";
-      sha256 = "1jxwvqpiliq57mddbdbrspfv60vw0gzvh677mabnryg6wb94adds";
+      rev = "68bc80c88617672fd41da7a6ace87d29cd3fe1e3";
+      sha256 = "1cgaf8nhprm8sligmq4km2p374a2x08fg3isl1k0mac1iz9vz1z8";
     };
     meta.homepage = "https://github.com/tpope/vim-abolish/";
   };
@@ -3866,24 +3878,36 @@ let
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2020-09-26";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "9614105d09ff0d6e1043ab33028615f107fe94a5";
-      sha256 = "11kkzl473l4nrz3k13264sn23pmpr1pdcnmxkzndpx1k0r3f87qy";
+      rev = "44b7b729381738cef0fc28a35fbe78fc2abe4d48";
+      sha256 = "09kvdm8yakqg0pjv1zbq5yy2wzzl3ax639mykk833b7g8hi6115q";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
 
+  vim-airline-clock = buildVimPluginFrom2Nix {
+    pname = "vim-airline-clock";
+    version = "2018-05-08";
+    src = fetchFromGitHub {
+      owner = "enricobacis";
+      repo = "vim-airline-clock";
+      rev = "a752ae89d833ce14f87e303f3f479c01065077ca";
+      sha256 = "0wbaxm1k9j4cl5vw1wppsds0afc0h3n2ipp8xhgdh5jswjhr6wlc";
+    };
+    meta.homepage = "https://github.com/enricobacis/vim-airline-clock/";
+  };
+
   vim-airline-themes = buildVimPluginFrom2Nix {
     pname = "vim-airline-themes";
-    version = "2020-08-27";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline-themes";
-      rev = "155bce6665ab8c83447102e8402cc9d3b7c3b3f3";
-      sha256 = "1qavi386va4wnalaf03b19lfxypbkjcjdiiasbdzfnlqpz7d4rwy";
+      rev = "5307367693f770a6b06d1a498c9bc9bf4cf9a884";
+      sha256 = "14iyfihlirp5adih8v117nz02wskaap4qlbrkgb7w0x87gfa3yqp";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline-themes/";
   };
@@ -3938,12 +3962,12 @@ let
 
   vim-autoformat = buildVimPluginFrom2Nix {
     pname = "vim-autoformat";
-    version = "2020-09-29";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "Chiel92";
       repo = "vim-autoformat";
-      rev = "ed8ea34b649c100c0b60167f8bde12e804627044";
-      sha256 = "0dwql5s2j3bmdz0zfmx2f5fdky72mfa91q7kc301rgd9lr5jhqbg";
+      rev = "ff16950ba5e07353f25ee33732982a67af451eb2";
+      sha256 = "12h6dznfwpifyr6ahk1b45pb59nlm6wkrfhgh65g1clnpzvchkiw";
     };
     meta.homepage = "https://github.com/Chiel92/vim-autoformat/";
   };
@@ -4046,12 +4070,12 @@ let
 
   vim-carbon-now-sh = buildVimPluginFrom2Nix {
     pname = "vim-carbon-now-sh";
-    version = "2019-02-14";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-carbon-now-sh";
-      rev = "789b15d17966a1100ed2889d670923dd6d9ff063";
-      sha256 = "1vfhdqv8mf8w0s4nv8k2rqzvahvh1lxm4zsd3ks1n334f580w8x4";
+      rev = "f4a3e5c9be2e587511f79e46fb0b48d6d646d719";
+      sha256 = "1ldv9l0swh6wk3wpyy0apnmg9gfcdzkgfdv8p0qm7j7pqdz981br";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-carbon-now-sh/";
   };
@@ -4082,12 +4106,12 @@ let
 
   vim-clap = buildVimPluginFrom2Nix {
     pname = "vim-clap";
-    version = "2020-09-30";
+    version = "2020-10-31";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-clap";
-      rev = "c6ed3de48693d754ef47ec9422ecb065200f8a70";
-      sha256 = "1wnz8fx7nkl4maszghl4q0csw3zi26vnavrvzc447il077sff3wq";
+      rev = "f7f800f59bb1e199993c5554f014c7e8e2685165";
+      sha256 = "1ka6q9fqzhjxzi0n803mk9f6rwnlbrjsjzjq52b8dghc9n0359a1";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-clap/";
   };
@@ -4118,12 +4142,12 @@ let
 
   vim-closetag = buildVimPluginFrom2Nix {
     pname = "vim-closetag";
-    version = "2020-04-09";
+    version = "2020-10-09";
     src = fetchFromGitHub {
       owner = "alvan";
       repo = "vim-closetag";
-      rev = "90cf416c03ed841ad7f3d44f4d6f3192f216176a";
-      sha256 = "0kxba7s0s66m2k4j1v8iwq6m5j9843ha67br03dg7d9ya4qiyyw9";
+      rev = "bd6bbc33c7e178673aa1dd17a5d249bbd4e3a6a6";
+      sha256 = "0nqzjma6mqg19cxq0ck2lym51ajb1x97z497zf9pbp47hkg5875j";
     };
     meta.homepage = "https://github.com/alvan/vim-closetag/";
   };
@@ -4274,12 +4298,12 @@ let
 
   vim-cue = buildVimPluginFrom2Nix {
     pname = "vim-cue";
-    version = "2020-09-28";
+    version = "2020-10-26";
     src = fetchFromGitHub {
       owner = "jjo";
       repo = "vim-cue";
-      rev = "1c802d17f86c775d879b2cdebe84efd40dc4bbfd";
-      sha256 = "1gp0s4094prxqyzk39igigjqppha7bmy4j36wxl16ns1v8yq4qp1";
+      rev = "9e8bef1198817b6bae1143fecd965403d65d2466";
+      sha256 = "0rq74znq9mx5p925jd120l5apjqdqp6xy6llzhf2gq5cxpg62hjl";
     };
     meta.homepage = "https://github.com/jjo/vim-cue/";
   };
@@ -4358,12 +4382,12 @@ let
 
   vim-dirdiff = buildVimPluginFrom2Nix {
     pname = "vim-dirdiff";
-    version = "2020-03-31";
+    version = "2020-10-12";
     src = fetchFromGitHub {
       owner = "will133";
       repo = "vim-dirdiff";
-      rev = "5bf29d8a41b4ec93e6c04b9d4a6c626b408c27c5";
-      sha256 = "0nvhsj12gsjgncpmvg8b1qz675ghfcsib5gj22p7j4l4brih563r";
+      rev = "6e4b04c252be6537b888e88e5bef959308a7c993";
+      sha256 = "0n5g78021xzswfnghhzfgv5acaqv6s9k10d8kp84b846bjxc5hb7";
     };
     meta.homepage = "https://github.com/will133/vim-dirdiff/";
   };
@@ -4454,11 +4478,11 @@ let
 
   vim-easymotion = buildVimPluginFrom2Nix {
     pname = "vim-easymotion";
-    version = "2020-09-29";
+    version = "2020-10-25";
     src = fetchFromGitHub {
       owner = "easymotion";
       repo = "vim-easymotion";
-      rev = "6c9c0547bfcca6a059dfaaf39dcac1b8c4e814c4";
+      rev = "41bbb8ce8a3c3acc837895ebd79f8a8bc07b99b3";
       sha256 = "1lbn844pv5pnla3qhc01wyyrx3czmr83gax8pr3w6283jwp4di6y";
     };
     meta.homepage = "https://github.com/easymotion/vim-easymotion/";
@@ -4502,12 +4526,12 @@ let
 
   vim-elm-syntax = buildVimPluginFrom2Nix {
     pname = "vim-elm-syntax";
-    version = "2020-06-10";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "andys8";
       repo = "vim-elm-syntax";
-      rev = "68cd8988fe9eaa190052fadaee0fea2c21338d4c";
-      sha256 = "0yhvx8k83xfzmgy10r9mz0rjagbyzx5rrmn8123vw49ncksvw49q";
+      rev = "998ef67262dcbeadd596458d7ff40079b5bc5cbb";
+      sha256 = "0gja4ifdpl6wfq3n897h1h635kf92v5c44jzr0ixbv3i924xqjhj";
     };
     meta.homepage = "https://github.com/andys8/vim-elm-syntax/";
   };
@@ -4586,12 +4610,12 @@ let
 
   vim-fireplace = buildVimPluginFrom2Nix {
     pname = "vim-fireplace";
-    version = "2020-09-23";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fireplace";
-      rev = "f936a7671888638dec54b86f2e49001a0e5e6005";
-      sha256 = "0yvvwi4kf6frrgdwd86p2bpcgh4x2lrhav1yl58q6mrdp2qjl446";
+      rev = "433ff6468d8ee0be5cbcf5bbd940f9ce2acf0f79";
+      sha256 = "1mjiwzl631v4yxgfbvgc66rxbyn3w1shy7836ksd2xnbd0m6kx8h";
     };
     meta.homepage = "https://github.com/tpope/vim-fireplace/";
   };
@@ -4646,12 +4670,12 @@ let
 
   vim-floaterm = buildVimPluginFrom2Nix {
     pname = "vim-floaterm";
-    version = "2020-09-16";
+    version = "2020-10-19";
     src = fetchFromGitHub {
       owner = "voldikss";
       repo = "vim-floaterm";
-      rev = "dfaecd8d3fede970a1e4c38e2287e0fa5a264253";
-      sha256 = "0wkhib4cawh6hq1ihq851afdj6chkxw4a4dqgjkvz2f6krhpblj5";
+      rev = "f6654e2f9c29bd85039a11f305acd4e5222b03f8";
+      sha256 = "07bh7hkajfg5gchmi0psy0anaz2rdvhii3p09xml9dfkvrapzdrx";
     };
     meta.homepage = "https://github.com/voldikss/vim-floaterm/";
   };
@@ -4694,12 +4718,12 @@ let
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2020-09-30";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "4189bdb580743a92f0e81d0ba9359a1c3b253a3c";
-      sha256 = "0pbmi9p87bqvf2l5jxq1wdkjjgwn0m3r1lswdbxrn070s8c8rg0a";
+      rev = "1a77f1c00e12e8460f39098ec3289c5433d32512";
+      sha256 = "14w43j0gnh10kyshikz4cl6m3f04a6hpiqasn2n71isvdd1p24kp";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -4718,12 +4742,12 @@ let
 
   vim-gist = buildVimPluginFrom2Nix {
     pname = "vim-gist";
-    version = "2020-01-29";
+    version = "2020-10-04";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "vim-gist";
-      rev = "2158eceb210b0a354bc17aa4144554e5d8bb6c79";
-      sha256 = "1dz33c63q7gghz35hyrvbshqw20faccs7bvxlda5w70mkbz9h9c4";
+      rev = "4a210316550577c1b6a5cb13b09ce79fba602b9c";
+      sha256 = "1c3k2yfaxijg0c8fvh70jqmrc6zyhh57hid7rm77v2kymvimvazg";
     };
     meta.homepage = "https://github.com/mattn/vim-gist/";
   };
@@ -4754,12 +4778,12 @@ let
 
   vim-gitgutter = buildVimPluginFrom2Nix {
     pname = "vim-gitgutter";
-    version = "2020-09-11";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "airblade";
       repo = "vim-gitgutter";
-      rev = "ea79bc01c2efc84cf8e71fbe5fd8adbf4242739d";
-      sha256 = "0dv69ganm4rv2909yy9w13y82bik4maa5x1z3kpv0hrd55qay40z";
+      rev = "696a6ed389e5b54c8bf480f44ee4e8fc59e6f903";
+      sha256 = "1x38qi9kzhvhfyrzhfbzj8xvgmi02prqg6zcvpnwdmxcs5asgj39";
     };
     meta.homepage = "https://github.com/airblade/vim-gitgutter/";
   };
@@ -4790,12 +4814,12 @@ let
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2020-09-28";
+    version = "2020-10-19";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "e8da3621d6177e5b0beca318a0f9f5baa44d9350";
-      sha256 = "0q7i7c6d7infybw870qlbdgpqddykzw14142ikz8x0sb30ijigxq";
+      rev = "a5e2535d31aa1d7c0fa8a4e77ee96b92ad185be5";
+      sha256 = "0ixpy4vvvh7kgwq4wvyiw8cm3aj89mql2phf49rmi60d9kli3kn9";
     };
     meta.homepage = "https://github.com/fatih/vim-go/";
   };
@@ -4814,12 +4838,12 @@ let
 
   vim-graphql = buildVimPluginFrom2Nix {
     pname = "vim-graphql";
-    version = "2020-09-14";
+    version = "2020-10-04";
     src = fetchFromGitHub {
       owner = "jparise";
       repo = "vim-graphql";
-      rev = "b06a6e62db170f085aa4af7f2439ae7e453eb1d3";
-      sha256 = "12qwz7m652jgn86210mbbg1glcmshm67wdhrsb36bxqrx39g1ghh";
+      rev = "51c5b178cce145c3aaa22fbc37fd5d64065baebc";
+      sha256 = "0kgnyc94fd5i7456vdnad58yn1qcanfp0lg7xdf5dbs1nbarzywg";
     };
     meta.homepage = "https://github.com/jparise/vim-graphql/";
   };
@@ -5030,12 +5054,12 @@ let
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2020-08-25";
+    version = "2020-10-24";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "56e7df8f402a8302fa7f6cb21760d366a105d94c";
-      sha256 = "0j4986pdh06q5d0bq4k6lq0b6bgi1fazng106ykhg3aaxjqqhs37";
+      rev = "3f8a03701f271c3dc44313fa1254527021afe748";
+      sha256 = "1nwzdp708s5j63qldrmf1vvq2vy6vl89hmlnfygdch9dvmzhbvha";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -5126,12 +5150,12 @@ let
 
   vim-javacomplete2 = buildVimPluginFrom2Nix {
     pname = "vim-javacomplete2";
-    version = "2020-07-29";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "artur-shaik";
       repo = "vim-javacomplete2";
-      rev = "80cf31797a85012b7408701073d743a45a3fbf36";
-      sha256 = "19ci5n8rkf4wf4ivqj2mjig4m6phvy14k0zplkbafccaadnc0k21";
+      rev = "e25876fd386bb2feda519335587c22e493c78541";
+      sha256 = "0g92806r8g243apl0g4i1c9mhmqyy2n10776alii5bgyk6jblh82";
     };
     meta.homepage = "https://github.com/artur-shaik/vim-javacomplete2/";
   };
@@ -5187,12 +5211,12 @@ let
 
   vim-jsdoc = buildVimPluginFrom2Nix {
     pname = "vim-jsdoc";
-    version = "2020-08-31";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "heavenshell";
       repo = "vim-jsdoc";
-      rev = "5bbe872ee41e50bd5b99bf6204d6147dab39cdc5";
-      sha256 = "0jmmkqzan5mkc0j05243f5layqj7fny92rl1vlj32ipv8wgdmczn";
+      rev = "548767343ff221a4efd0c055a43c022d23fcafc5";
+      sha256 = "0scmpjav4zapglybdqilimqb3n805k8gqc46qvkiihprq9j9za4d";
     };
     meta.homepage = "https://github.com/heavenshell/vim-jsdoc/";
   };
@@ -5283,12 +5307,12 @@ let
 
   vim-lawrencium = buildVimPluginFrom2Nix {
     pname = "vim-lawrencium";
-    version = "2019-04-10";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "ludovicchabant";
       repo = "vim-lawrencium";
-      rev = "e0c127cb4e4224453cb88faffd4627b7da499bcb";
-      sha256 = "1gvvr04x17157iz83rv45nlbj1qaz90j0l96q3fki3h1b0fw0099";
+      rev = "4592f24a50386e02870fa8d508cc7ba8454dc102";
+      sha256 = "158hslq4chlqr9mhdpcrbxnygjk4j1pc2caqc3zrwqh9qdk8mvha";
     };
     meta.homepage = "https://github.com/ludovicchabant/vim-lawrencium/";
   };
@@ -5379,24 +5403,24 @@ let
 
   vim-lsc = buildVimPluginFrom2Nix {
     pname = "vim-lsc";
-    version = "2020-09-28";
+    version = "2020-10-17";
     src = fetchFromGitHub {
       owner = "natebosch";
       repo = "vim-lsc";
-      rev = "1f6e440c5485b26a75ca1db90bd793cb9a81d57b";
-      sha256 = "147rvcjq1h03x3bwgg0ii5jvsxvh4j6bk47z1hk349rn4ssi6fmr";
+      rev = "9230c11dfb630ef4a9dadf491f1e1c1b2d86ace8";
+      sha256 = "13w3fjwy3iy6j48f16g3bg956dd0fl9ynywd1nqvk4ba305g6crx";
     };
     meta.homepage = "https://github.com/natebosch/vim-lsc/";
   };
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2020-09-26";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "d2b6922250e2fc8fdf7c94c6ca6f0871fe9be1e1";
-      sha256 = "1kxqafjfl1f32q05xgkmczfcjg8zr87w1r0hyw054fdzf7krcnmp";
+      rev = "eba0839b79b7f036f492b2b8c4a62269f72b3dab";
+      sha256 = "0fbz5yfjcjslpwkw81x1x2i6gd3p5rbssfqw13rbvj6ivf5qgglh";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -5415,12 +5439,12 @@ let
 
   vim-manpager = buildVimPluginFrom2Nix {
     pname = "vim-manpager";
-    version = "2017-05-08";
+    version = "2020-10-28";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "vim-manpager";
-      rev = "25bdd9448651a7669659b1b8d8d7a82acdfbf8af";
-      sha256 = "0d7rg4lvyxr4v34bimxpdkynmvs606fqvv0qpi7g139ng9hv6wqm";
+      rev = "c23c02dd79b0a5cabe140d1f10f9aa2591cf55ed";
+      sha256 = "0g61qbp4vl010isigp6j3jjb3vb2kxalcbb56xzfa6c9k5zap5j9";
     };
     meta.homepage = "https://github.com/lambdalisue/vim-manpager/";
   };
@@ -5511,24 +5535,24 @@ let
 
   vim-monokai = buildVimPluginFrom2Nix {
     pname = "vim-monokai";
-    version = "2020-09-30";
+    version = "2020-10-23";
     src = fetchFromGitHub {
       owner = "crusoexia";
       repo = "vim-monokai";
-      rev = "054194afce3fdafea33cf21fbfc4d6b3c0e30fc8";
-      sha256 = "036w39fwxj75mh9m5nqiakzyhn2ynsxmbq2rp45zf83nr6mm2h5q";
+      rev = "9f8d7de3848e32c592b168f898f82ec4356128af";
+      sha256 = "1xrwx75dq46snjsrrv0yh4p409w1blmqpw4i5vlxwi5vn29qpnvs";
     };
     meta.homepage = "https://github.com/crusoexia/vim-monokai/";
   };
 
   vim-monokai-pro = buildVimPluginFrom2Nix {
     pname = "vim-monokai-pro";
-    version = "2020-05-07";
+    version = "2020-10-02";
     src = fetchFromGitHub {
       owner = "phanviet";
       repo = "vim-monokai-pro";
-      rev = "baf3046bb44cdffe3bf9a571b3ec24039e2c9f88";
-      sha256 = "0rszkf070d8w94dhgjpsl1kyn19j7bqyz434qshz4j88jk7hap6h";
+      rev = "05e534f9fea9a8e4cbf69a1523c785845deabe4e";
+      sha256 = "0hf3iy2ydr6jpraf5zyqg2hl7ma5hn301jyxf6m9ffdsz7722jwm";
     };
     meta.homepage = "https://github.com/phanviet/vim-monokai-pro/";
   };
@@ -5679,12 +5703,12 @@ let
 
   vim-ocaml = buildVimPluginFrom2Nix {
     pname = "vim-ocaml";
-    version = "2020-09-14";
+    version = "2020-10-11";
     src = fetchFromGitHub {
       owner = "ocaml";
       repo = "vim-ocaml";
-      rev = "acee4ad4d65ddaf81895cca9e28baea4c13fa76a";
-      sha256 = "0rrjcc5i1isia74nrrik5avkd0casbjhgyqb2ph2176gywz6h5y5";
+      rev = "023a2a464e7a096779d3e541ee7d1dbe61148f6a";
+      sha256 = "0wj945n3da9bzcj5n8002m4vrzv9cgk6sqcc7nyc1x34y9452z94";
     };
     meta.homepage = "https://github.com/ocaml/vim-ocaml/";
   };
@@ -5739,12 +5763,12 @@ let
 
   vim-orgmode = buildVimPluginFrom2Nix {
     pname = "vim-orgmode";
-    version = "2020-07-14";
+    version = "2020-10-15";
     src = fetchFromGitHub {
       owner = "jceb";
       repo = "vim-orgmode";
-      rev = "ad5f154a5bd9daffb7cf50719f0cc945f445af85";
-      sha256 = "09x3x53vf2fir9jhi38v9sai7dx5i40ylx1yk42459bgig2vv1aa";
+      rev = "b7bce17005cf114b0961d0b5576bf584a2574774";
+      sha256 = "1kpg858qazv465k2w8343hkiz9lzclkcx91vcysip77diandn523";
     };
     meta.homepage = "https://github.com/jceb/vim-orgmode/";
   };
@@ -5823,12 +5847,12 @@ let
 
   vim-pandoc-syntax = buildVimPluginFrom2Nix {
     pname = "vim-pandoc-syntax";
-    version = "2020-08-10";
+    version = "2020-10-24";
     src = fetchFromGitHub {
       owner = "vim-pandoc";
       repo = "vim-pandoc-syntax";
-      rev = "59680708cdc98c3fae9acb6c261374bfd808335a";
-      sha256 = "1yiczv4l2rg8wva2gbjvv7k9s6y9p0gwmlazdd9rnq28nhmxx3gv";
+      rev = "2521e2e9b99a3550e1a20f24e09fa46679cbbbc7";
+      sha256 = "02023bnvc9m98m45krld1b7gy13z335jv88fx4ybz019wc0mv35g";
     };
     meta.homepage = "https://github.com/vim-pandoc/vim-pandoc-syntax/";
   };
@@ -5919,12 +5943,12 @@ let
 
   vim-plug = buildVimPluginFrom2Nix {
     pname = "vim-plug";
-    version = "2020-09-08";
+    version = "2020-10-22";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "vim-plug";
-      rev = "d16273e07231260e02412625f98651bc6ceebb56";
-      sha256 = "0ckglxbnxq50jfigbmgjwaj2vj1g6xjwyipzxbph2b64yi2kklg5";
+      rev = "ab940f624ae1df24605a8ff1bf427de7a76e5911";
+      sha256 = "0v985v9a7kspchfvr2lvj5jqnlkg05agyay0wn0c6mg5bf2mw8q1";
     };
     meta.homepage = "https://github.com/junegunn/vim-plug/";
   };
@@ -5943,12 +5967,12 @@ let
 
   vim-polyglot = buildVimPluginFrom2Nix {
     pname = "vim-polyglot";
-    version = "2020-09-30";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "sheerun";
       repo = "vim-polyglot";
-      rev = "3ad297db5c1cf94660e4297ffa81b6281eab2884";
-      sha256 = "0v7dzidqp24shm00w79xvg912qvdbsn2119j5gw70q1xjsi3sxav";
+      rev = "05e21a9e252b283b2d71568ad3b671d7f28fe0bc";
+      sha256 = "039wha51p2zwnjyjm0qxca63dgrp54l43ba74639gf0hp5h2wvfa";
     };
     meta.homepage = "https://github.com/sheerun/vim-polyglot/";
   };
@@ -5991,12 +6015,12 @@ let
 
   vim-prosession = buildVimPluginFrom2Nix {
     pname = "vim-prosession";
-    version = "2020-04-20";
+    version = "2020-10-12";
     src = fetchFromGitHub {
       owner = "dhruvasagar";
       repo = "vim-prosession";
-      rev = "95f78bd0f719fee96569f30fd5f4199c4461efb7";
-      sha256 = "1ix04f3nxxmxd36kzalx0hrbks30v44ydz15apvl1h8l8663hda2";
+      rev = "e735468710a5cd6037b6d4c0e4c8c2bc1353cf4b";
+      sha256 = "0ava297hpm1cf8j18ypfrziwavqcv982hisvh1d8yjxal521pam1";
     };
     meta.homepage = "https://github.com/dhruvasagar/vim-prosession/";
   };
@@ -6063,12 +6087,12 @@ let
 
   vim-qml = buildVimPluginFrom2Nix {
     pname = "vim-qml";
-    version = "2019-12-20";
+    version = "2020-10-24";
     src = fetchFromGitHub {
       owner = "peterhoeg";
       repo = "vim-qml";
-      rev = "b04de1dadb7dfe372d22f7529a001af1b5e19f4f";
-      sha256 = "1pxl70l0g4i8cbnpjhb9pyjhz982flkrng07y9xwzbdl2jx42i8s";
+      rev = "77853c3ff98a868dcbbdfa4eb8f0e659b57993ff";
+      sha256 = "14v90gchmpl1nkiic3f3kiz8akbw2wmpish794xakvz63iys703y";
     };
     meta.homepage = "https://github.com/peterhoeg/vim-qml/";
   };
@@ -6087,12 +6111,12 @@ let
 
   vim-racer = buildVimPluginFrom2Nix {
     pname = "vim-racer";
-    version = "2020-06-18";
+    version = "2020-10-21";
     src = fetchFromGitHub {
       owner = "racer-rust";
       repo = "vim-racer";
-      rev = "250e9fd496edde1516a5e68e9837ccf5e46cc895";
-      sha256 = "1ar5wv776xslxrs2mmxr5kzz5pp4a4v8jydh9s6cqbfzglgr9kw5";
+      rev = "4c8b8843de2bbf4a6b44a570f284534d5e75a989";
+      sha256 = "1rkp75q0m8w9br35nngdbdlvfpha4x4yilaff40d62mcmb8xmhvj";
     };
     meta.homepage = "https://github.com/racer-rust/vim-racer/";
   };
@@ -6339,12 +6363,12 @@ let
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2020-08-06";
+    version = "2020-10-25";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "db486eaa39f14d130ddf6338aaa02127aa04b272";
-      sha256 = "1x9vflsbdl1b03irkvfpapb0c4mw9lymfghcjy1wxjl2vpq630ia";
+      rev = "4e319f2bde4e65ab2f21719cb5c0371221d19f51";
+      sha256 = "01zjg2r103p543lcyrkssw6agrj58m1ymqhf7fbzhpra9ykdpsp6";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -6399,24 +6423,24 @@ let
 
   vim-snipmate = buildVimPluginFrom2Nix {
     pname = "vim-snipmate";
-    version = "2020-03-27";
+    version = "2020-10-02";
     src = fetchFromGitHub {
       owner = "garbas";
       repo = "vim-snipmate";
-      rev = "b80367fefc2188c9d6c4a9eb1830360b09e13476";
-      sha256 = "0qq81hcavmaq76r38qfy1cxlmhj0aswbd41k2k9fyzilzq4r0bg8";
+      rev = "68eebf9dabe5c1d1964e78dda188765f224bab34";
+      sha256 = "1mxa373ry17zwszd089k99lbgr5pg46x5dlahpk0l68ksxpkbxir";
     };
     meta.homepage = "https://github.com/garbas/vim-snipmate/";
   };
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2020-10-01";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "78a9ca0fa3e4d16b73f5f642ec56298b7fec7803";
-      sha256 = "1k4rvkbfixp1yi5gz8kffnq7k7xd7bc5cb521jb6h0z6f74qrk70";
+      rev = "0161732b61a60a8dc8dd80db7ff678197fc2c2aa";
+      sha256 = "1hyinjg9x80i6zpmf1l6lwnv58amkd5bw26w27xakd74c4am2603";
     };
     meta.homepage = "https://github.com/honza/vim-snippets/";
   };
@@ -6483,12 +6507,12 @@ let
 
   vim-startify = buildVimPluginFrom2Nix {
     pname = "vim-startify";
-    version = "2020-04-18";
+    version = "2020-10-07";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-startify";
-      rev = "593388d3dbe7bfdcc06a714550d3253442b2fc65";
-      sha256 = "1k0sgx8r3gi3k4ira1ilvc1jmj0k5apiv7x71dqnh41gfrz1i12h";
+      rev = "f2fc11844b234479d37bef37faa7ceb2aade788b";
+      sha256 = "18n16hpkqadq18gpgppbr4s516jpc8qwd357vb2c7069q79kfx39";
     };
     meta.homepage = "https://github.com/mhinz/vim-startify/";
   };
@@ -6567,12 +6591,12 @@ let
 
   vim-table-mode = buildVimPluginFrom2Nix {
     pname = "vim-table-mode";
-    version = "2020-08-19";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "dhruvasagar";
       repo = "vim-table-mode";
-      rev = "3476c4e517aa86bc131c707d32f2e508bd5be468";
-      sha256 = "0vglazxlsg7ai4c5znxaddpjnfhz6a9slzs0kzzqvmhd3xr7vfg1";
+      rev = "659ba4f39caa38e6913f88c9f4369c00e852160f";
+      sha256 = "0fqj9l7i052mvw0wlyg30bmihzi937svk3ggsp0rc9wlr30frg2p";
     };
     meta.homepage = "https://github.com/dhruvasagar/vim-table-mode/";
   };
@@ -6603,12 +6627,12 @@ let
 
   vim-terraform = buildVimPluginFrom2Nix {
     pname = "vim-terraform";
-    version = "2020-09-23";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "f77a07617a649684148de97e5a9115e659166f6a";
-      sha256 = "01rgbiddczyx56b6fha6jgxmr0kfhjz8d9rmbfnqlnynmy5545ic";
+      rev = "6fd491d6a2ae40fef3aa6c414e096ce07664f030";
+      sha256 = "0iczgn4ifhlzszgwv1w43w7qzrf1pp8zpfv4vdpm82mli58xlnhc";
     };
     meta.homepage = "https://github.com/hashivim/vim-terraform/";
   };
@@ -6628,12 +6652,12 @@ let
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2020-09-29";
+    version = "2020-10-22";
     src = fetchFromGitHub {
       owner = "vim-test";
       repo = "vim-test";
-      rev = "fd9fb9b29c265d86fa30c672df1fea9a5a757860";
-      sha256 = "0qhjmpamhk89h9hjzwc9j88yngf945fk5jd9015qajfk0l15k8x9";
+      rev = "58dde91c0477fa58d18d5c0fde10b2a60a526b0f";
+      sha256 = "1l23fb1q86ikrz8dg4n23l7bqp1xa68fwdhv0j0by73ymcp4zn1s";
     };
     meta.homepage = "https://github.com/vim-test/vim-test/";
   };
@@ -6748,12 +6772,12 @@ let
 
   vim-tmux-focus-events = buildVimPluginFrom2Nix {
     pname = "vim-tmux-focus-events";
-    version = "2019-12-09";
+    version = "2020-10-05";
     src = fetchFromGitHub {
       owner = "tmux-plugins";
       repo = "vim-tmux-focus-events";
-      rev = "e80960715c09aef8ab9204848ed1683805a93a33";
-      sha256 = "0ds6qw2i1r67jhxh9ff36al45bafsmbxxdc127l6iy2vl5wj0d3d";
+      rev = "a568192ca0de4ca0bd7b3cd0249aad491625c941";
+      sha256 = "130l73v18md95djkc4s9d0fr018f8f183sjcgy7dgldwdaxlqdi1";
     };
     meta.homepage = "https://github.com/tmux-plugins/vim-tmux-focus-events/";
   };
@@ -6832,12 +6856,12 @@ let
 
   vim-twiggy = buildVimPluginFrom2Nix {
     pname = "vim-twiggy";
-    version = "2020-09-07";
+    version = "2020-10-06";
     src = fetchFromGitHub {
       owner = "sodapopcan";
       repo = "vim-twiggy";
-      rev = "c0edb8a684f624d6f177c2625fc9db617a3d539f";
-      sha256 = "13fm3mgnvbhm93cn0jglnqm8hhmwvh5xg088pn5wmwrn9bjj00gz";
+      rev = "efe1d29979bd2b65d22cf49f08524d6e27e5244b";
+      sha256 = "0xqn39apmy6d8vqzbzvv6ic7p2pd5lpdgd4jay1afg2q73yi1rbv";
     };
     meta.homepage = "https://github.com/sodapopcan/vim-twiggy/";
   };
@@ -6892,12 +6916,12 @@ let
 
   vim-visual-multi = buildVimPluginFrom2Nix {
     pname = "vim-visual-multi";
-    version = "2020-09-30";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "mg979";
       repo = "vim-visual-multi";
-      rev = "61855432df721f01e5b64fec07bf7a9077ff32b5";
-      sha256 = "017pydd4yzkz3s8ncpy99mh35f1pdk1ql7v7grm31ccqwsn8h565";
+      rev = "812ca5cff230cc0a21cce6b9d71db3868a6d6f85";
+      sha256 = "1si42l80axlilbr65x8zw2ivyn9f8y9x1yg77xi4rjqpqj7af5ka";
     };
     meta.homepage = "https://github.com/mg979/vim-visual-multi/";
   };
@@ -6916,24 +6940,24 @@ let
 
   vim-vsnip = buildVimPluginFrom2Nix {
     pname = "vim-vsnip";
-    version = "2020-09-23";
+    version = "2020-10-27";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip";
-      rev = "ec25ffcdf793dd5af6d73ce75d21709a60a4689f";
-      sha256 = "07gkygdspxn0fwlgcyhli85nlgg8g4y4v991n80vmk0rhsxqdh90";
+      rev = "562cabf644314c97224a025ad2594a47966e6207";
+      sha256 = "1i1b8la3w9x8lay63kqx958k4csxnqmdw9bfmhyh2vf1p0cdqv6l";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip/";
   };
 
   vim-vsnip-integ = buildVimPluginFrom2Nix {
     pname = "vim-vsnip-integ";
-    version = "2020-08-19";
+    version = "2020-10-25";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip-integ";
-      rev = "4a076bea73e307738ac5d08f60a0936cab391efd";
-      sha256 = "1jx6ijmj48ffymfn20d0syp1ywv19gmjvf3hb6rdwsk421y58chv";
+      rev = "383573b9b07fd37caf98247dfdbb1d4711eecee9";
+      sha256 = "1kavjyr53cbg630snri2x94f7h80p2vl6vlskqfwi3djfdvn68x6";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip-integ/";
   };
@@ -6976,24 +7000,24 @@ let
 
   vim-which-key = buildVimPluginFrom2Nix {
     pname = "vim-which-key";
-    version = "2020-09-29";
+    version = "2020-10-02";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-which-key";
-      rev = "641df563764d68454ab752a6815d783c452274be";
-      sha256 = "00wn2jvjazkjagf4bfpz3fh7xh2w495qn8kilz89lab6pvzx79rp";
+      rev = "30c0810b012a7acdccc6b72f0e99c0388986844f";
+      sha256 = "18rflksd58mwkq0lc64frfimj1l1k8cc0l45jpv0z4w118v92jyv";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-which-key/";
   };
 
   vim-wordy = buildVimPluginFrom2Nix {
     pname = "vim-wordy";
-    version = "2019-11-22";
+    version = "2020-10-24";
     src = fetchFromGitHub {
       owner = "reedes";
       repo = "vim-wordy";
-      rev = "f0391713fa83771d64b065868331ef4754d861ed";
-      sha256 = "0v5cl3rrg2vrdb2al67hbh730rw8m2zvhb1vippv64k65mknkgp5";
+      rev = "667426a0171787b2620dffa5b2d7c01c9040237f";
+      sha256 = "1lcrisv2wcd8iw76prql03wd11jgmknm3rvbcw7vv4v5r2s9rv5z";
     };
     meta.homepage = "https://github.com/reedes/vim-wordy/";
   };
@@ -7012,12 +7036,12 @@ let
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2020-05-22";
+    version = "2020-10-07";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "f54fd6a7357d43a8773313504da72d1bd96d6f1a";
-      sha256 = "0542prcclaw6s4f6dlp0ywz5zp10brb7br7hx4lhhizslcakg09v";
+      rev = "8fb3d07e5c9809f292dddb034db2c02d649b29fb";
+      sha256 = "08j0r68ps4jisgbx6lg2vz3wxyx7yzrklsi112bqjxizxjpjb132";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
@@ -7120,12 +7144,12 @@ let
 
   vimoutliner = buildVimPluginFrom2Nix {
     pname = "vimoutliner";
-    version = "2020-02-09";
+    version = "2020-10-26";
     src = fetchFromGitHub {
       owner = "vimoutliner";
       repo = "vimoutliner";
-      rev = "1031b16e6b0069229fe0f33a66489f81174fa4d9";
-      sha256 = "1gn21b8yr0bjg0y1nidk13zcl4f6z8wkrxncgkd1hlc14d99jkg0";
+      rev = "d198aa72c70270f1330f4237bbf853efaaa79723";
+      sha256 = "05wcqs36qn8f3vcy9xi2cf0yyp7yzawlxqvpjhbad6lm52vzsabs";
     };
     meta.homepage = "https://github.com/vimoutliner/vimoutliner/";
   };
@@ -7180,12 +7204,12 @@ let
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2020-09-27";
+    version = "2020-10-23";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "692a0d8d39bfbd048119df9644e4b2fab2e01abe";
-      sha256 = "1msf62l8bvcgk0g5rknfy44kjfh0r081y78xi15xyyc1mibpvx06";
+      rev = "7b048367f7d4921e4eeea1bb82e6f368b418d89a";
+      sha256 = "0n1kqiki5gag7nd5c5gmnv6czv90kzsfndbb92n3wzvwxhpf1ff6";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -7193,12 +7217,12 @@ let
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2020-09-29";
+    version = "2020-10-29";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "bfdaec19bf236fad1c9c192a0cf43e299cf1682a";
-      sha256 = "12z29gs9h81rv0w3zm49r4b4s3bj0gzqxl5x1gyjk7pijvnnxfbg";
+      rev = "982185bb454942a5c04d41b647ab58fceb4e7683";
+      sha256 = "16vy97k6lgl62pibhdfdigfv2gp16hvzlfywv1i6wx46hycb3swq";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -7241,12 +7265,12 @@ let
 
   vista-vim = buildVimPluginFrom2Nix {
     pname = "vista-vim";
-    version = "2020-09-29";
+    version = "2020-10-10";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vista.vim";
-      rev = "bcb50336188074c9cfc1aad4b463f4c0e698a68c";
-      sha256 = "0kckpj2v0yabp7hz9a6qdh8vspdn6fldk2q1pygyn35bii8x86dh";
+      rev = "27889ff58d4340167bb8dd4abbe9ff4a8869da8f";
+      sha256 = "1asc8fqyv6rfmdd0g5n78mzzssn7rcanzy2d30gddgfa3gr65yms";
     };
     meta.homepage = "https://github.com/liuchengxu/vista.vim/";
   };
@@ -7361,12 +7385,12 @@ let
 
   yats-vim = buildVimPluginFrom2Nix {
     pname = "yats-vim";
-    version = "2020-09-27";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "HerringtonDarkholme";
       repo = "yats.vim";
-      rev = "7c904cf443f5fd4900e1b4aad6dba6af96b4a395";
-      sha256 = "0ap2jh0j5ssv1mv51syvw2y7352ydf4qmk3s7f2rlcq3nba3y6rr";
+      rev = "2c1dce274988814102aafc57c4e0675c2d130e6c";
+      sha256 = "10kzqzm587nz1qgscgwrvjs77vk6grck28g5z1lhrxhpn1jng943";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
@@ -7374,12 +7398,12 @@ let
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2020-09-30";
+    version = "2020-10-30";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "12376a7b179939612f834735f50015436e30c6e7";
-      sha256 = "0caf6xd9gxx136gi92hnw0myfil74wh3qg264ykfd0km34lysf3h";
+      rev = "fa8c985dee864d33e48e3b3e803b541bdc433ffa";
+      sha256 = "1cc9wyp3dbh4fvic9zvh2bxqw0nrb3zwzlfj106cs2qbrpkiqszd";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
@@ -7423,24 +7447,24 @@ let
 
   zig-vim = buildVimPluginFrom2Nix {
     pname = "zig-vim";
-    version = "2020-09-20";
+    version = "2020-10-09";
     src = fetchFromGitHub {
       owner = "ziglang";
       repo = "zig.vim";
-      rev = "9979e503e675b432c55a83891238c631f7f16a01";
-      sha256 = "05cmc3173yscmk2r976280z53z3z7v8ysyy4i0z4v998l804hq5c";
+      rev = "fa5f6d7c5be47bd32dcc69ccf980fc585575cc38";
+      sha256 = "0szrnp27ccl93fbn1j9ybsld1l6j3xdrnx6dsf01gdxidm3w60f3";
     };
     meta.homepage = "https://github.com/ziglang/zig.vim/";
   };
 
   zoomwintab-vim = buildVimPluginFrom2Nix {
     pname = "zoomwintab-vim";
-    version = "2020-04-10";
+    version = "2020-10-13";
     src = fetchFromGitHub {
       owner = "troydm";
       repo = "zoomwintab.vim";
-      rev = "63a70b9e12617d6565a0489c68efe44708d19cf8";
-      sha256 = "1dsi2d6wrv5x6w2hrrjzqivsspxxav0hdj0pymml6gry2jcbj4s9";
+      rev = "3b33368ed2ff6138d07f7ee148306cce7d7f6b7c";
+      sha256 = "0jx6860ajw50fn0l5p3dm3fcfwklqs1lf22yyrb09iljavixj777";
     };
     meta.homepage = "https://github.com/troydm/zoomwintab.vim/";
   };
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index 2b1d6337f6652..de4cd959dee4c 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -98,6 +98,7 @@ elmcast/elm-vim
 elzr/vim-json
 embear/vim-localvimrc
 enomsg/vim-haskellConcealPlus
+enricobacis/vim-airline-clock
 ensime/ensime-vim
 ervandew/supertab
 esneider/YUNOcommit.vim
@@ -369,6 +370,8 @@ numirias/semshi
 nvie/vim-flake8
 nvim-lua/completion-nvim
 nvim-lua/diagnostic-nvim
+nvim-lua/lsp_extensions.nvim
+nvim-lua/telescope.nvim
 nvim-treesitter/completion-treesitter
 nvim-treesitter/nvim-treesitter
 ocaml/vim-ocaml
@@ -494,7 +497,6 @@ thirtythreeforty/lessspace.vim
 thosakwe/vim-flutter
 tiagofumo/vim-nerdtree-syntax-highlight
 tikhomirov/vim-glsl
-tjdevries/lsp_extensions.nvim
 tmhedberg/SimpylFold
 tmsvg/pear-tree
 tmux-plugins/vim-tmux
diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix
index 946aa7beea417..b6fe86d1b26a9 100644
--- a/pkgs/os-specific/linux/android-udev-rules/default.nix
+++ b/pkgs/os-specific/linux/android-udev-rules/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "android-udev-rules";
-  version = "20200613";
+  version = "20201003";
 
   src = fetchFromGitHub {
     owner = "M0Rf30";
     repo = "android-udev-rules";
     rev = version;
-    sha256 = "0cf5br8x6iwxc1cifv0i1klw7skgs8hghdx6qlqby68kyqg81bb2";
+    sha256 = "07s5fdjbk5q4km6gz9759ngdavrqdgbnkd2b7z9z5lqw1q0b2422";
   };
 
   installPhase = ''
diff --git a/pkgs/os-specific/linux/checksec/default.nix b/pkgs/os-specific/linux/checksec/default.nix
index 5a66e536956fe..eb33aedd1d49f 100644
--- a/pkgs/os-specific/linux/checksec/default.nix
+++ b/pkgs/os-specific/linux/checksec/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "checksec";
-  version = "2.2.3";
+  version = "2.4.0";
 
   src = fetchFromGitHub {
     owner = "slimm609";
     repo = "checksec.sh";
     rev = version;
-    sha256 = "0hw8bd7dj71m1ml9zvfab2j87jacs542z7a89nziapckmg6kmh6f";
+    sha256 = "1gbbq85d3g3mnm3xvgvi2085aba7qc3cmsbwn76al50ax1518j2q";
   };
 
   patches = [ ./0001-attempt-to-modprobe-config-before-checking-kernel.patch ];
diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
index 6036eff2d9849..70bcaa15d96ef 100644
--- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
+++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "raspberrypi-firmware";
-  version = "1.20200902";
+  version = "1.20201022";
 
   src = fetchFromGitHub {
     owner = "raspberrypi";
     repo = "firmware";
     rev = version;
-    sha256 = "1dj5vyhz2ljka7hwhl6s14hd017fspix1xp7zbm7lzdyys9jb9ni";
+    sha256 = "0j5m50cmmr11m3h8kk89j1pqkdqr7mzdzg04ayiqvfhvy32qqlg8";
   };
 
   installPhase = ''
diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix
index cab11cc87ae2c..dd3050a93eeff 100644
--- a/pkgs/os-specific/linux/kernel/generic.nix
+++ b/pkgs/os-specific/linux/kernel/generic.nix
@@ -45,6 +45,11 @@
                        stdenv.hostPlatform != stdenv.buildPlatform
 , extraMeta ? {}
 
+, isXen      ? features.xen_dom0 or false
+, isZen      ? false
+, isLibre    ? false
+, isHardened ? false
+
 # easy overrides to stdenv.hostPlatform.platform members
 , autoModules ? stdenv.hostPlatform.platform.kernelAutoModules
 , preferBuiltin ? stdenv.hostPlatform.platform.kernelPreferBuiltin or false
@@ -175,7 +180,9 @@ let
 
   passthru = {
     features = kernelFeatures;
-    inherit commonStructuredConfig;
+    inherit commonStructuredConfig isXen isZen isHardened isLibre;
+    kernelOlder = lib.versionOlder version;
+    kernelAtLeast = lib.versionAtLeast version;
     passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]);
   };
 
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index cdbedb34f8d8a..a28531ee4012c 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 stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.14.202";
+  version = "4.14.203";
 
   # 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,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0a739g3s0lc579zp4478xr645qzvhmrm1w19x0rj7p8bbfmigiwm";
+    sha256 = "0c9r1s83mrn9lzgrr4wzvk4d72q70sbgf7lql6z9ivkf12v3p5mc";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 4c0d7b06ef4d2..7a63297578ba5 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 stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.19.152";
+  version = "4.19.154";
 
   # 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,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0p857b1gmmc2bv8limrdbfb3zsnchvg275sx5fkyy4185jfam9m5";
+    sha256 = "0ik6anz6ly0dl0lp8m5mighlvzkifnk2kljwajxa56vbhj691339";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 539a783e0af23..64d0114618053 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.240";
+  version = "4.4.241";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "131pamgxxmx4ba4gn2qxczv8w3lxrmwlqg0a7pdjzg0sy9lirygk";
+    sha256 = "054jd6jgymxbkjfmk8wbckihl355gjimjg2xi5yr4v2343qi9zij";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 58ae2945427bb..2d81826d6c361 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.240";
+  version = "4.9.241";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0vvpvw5wsvjnwch5ci63x08qc7qyzpyxbiaxx4521nl8d7371r06";
+    sha256 = "0b5k9cwz7vpaybw4nd03pn2z4d8qbhmhd9mx4j2yd0fqj57x1in4";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index 9203321f1f78f..ad3334d7c938c 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 stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.4.72";
+  version = "5.4.73";
 
   # 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,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0whi5kr1ziy9y20p42adnmqks41cavsraa36g9dbbrbgsmdn890f";
+    sha256 = "1cknwnzpimjfacjbb39ay9j4lv3767j2858xz9yvwsvj7d04nhjs";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.8.nix b/pkgs/os-specific/linux/kernel/linux-5.8.nix
index 35bc489c3c559..ee58f02db8760 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.8.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.8.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.8.16";
+  version = "5.8.17";
 
   # 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,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1icxa0pgqhji924ryz37mpjjf4zlkrm8bidanjyn2mzbar7migzx";
+    sha256 = "00rwvsrmklvkzch8bl6z29vch4dyvzxrs97pr1qd13afw7y6912n";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.9.nix b/pkgs/os-specific/linux/kernel/linux-5.9.nix
index d96dd841d8a98..05c594f7efbab 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.9.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.9.1";
+  version = "5.9.2";
 
   # 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,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0dn0xz81pphca5dkg6zh8c78p05f63rrr5ihqqsmhc4n73li2jms";
+    sha256 = "0dh2ciyrm2ac7r4pybxa1cq3pfw3z3ilj50gdaa0clm9j7nyrx2i";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index 4e308d657ac4f..1e8514e9c2c8a 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 = "17724";
-    sha256 = "0aqg8il35a1mda4icqprvriham81vvnsa04rjc86b6x7khxdhiq2";
+    rev = "17744";
+    sha256 = "120jf6d1xrpwf8yfqzfqp8a1189lca0si8fxci16sf4bdg5q1had";
   }
 , ...
 }:
@@ -17,6 +17,7 @@ let
 in linux.override {
   argsOverride = {
     modDirVersion = "${linux.modDirVersion}-gnu";
+    isLibre = true;
 
     src = stdenv.mkDerivation {
       name = "${linux.name}-libre-src";
diff --git a/pkgs/os-specific/linux/kernel/linux-zen.nix b/pkgs/os-specific/linux/kernel/linux-zen.nix
index 947aa7c19ab36..f4b0f3870f29f 100644
--- a/pkgs/os-specific/linux/kernel/linux-zen.nix
+++ b/pkgs/os-specific/linux/kernel/linux-zen.nix
@@ -7,6 +7,7 @@ in
 buildLinux (args // {
   modDirVersion = "${version}-zen1";
   inherit version;
+  isZen = true;
 
   src = fetchFromGitHub {
     owner = "zen-kernel";
diff --git a/pkgs/os-specific/linux/kmscon/default.nix b/pkgs/os-specific/linux/kmscon/default.nix
index 29f99629df87a..8b01fe94d4c7f 100644
--- a/pkgs/os-specific/linux/kmscon/default.nix
+++ b/pkgs/os-specific/linux/kmscon/default.nix
@@ -54,6 +54,7 @@ stdenv.mkDerivation rec {
     description = "KMS/DRM based System Console";
     homepage = "http://www.freedesktop.org/wiki/Software/kmscon/";
     license = licenses.mit;
+    maintainers = with maintainers; [ omasanori ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/usbip/default.nix b/pkgs/os-specific/linux/usbip/default.nix
index ffd33b6ff8545..9a009b74f0832 100644
--- a/pkgs/os-specific/linux/usbip/default.nix
+++ b/pkgs/os-specific/linux/usbip/default.nix
@@ -1,11 +1,11 @@
-{ lib, stdenv, kernel, udev, autoconf, automake, libtool }:
+{ lib, stdenv, kernel, udev, autoconf, automake, libtool, kernelOlder }:
 
 stdenv.mkDerivation {
   name = "usbip-${kernel.name}";
 
   src = kernel.src;
 
-  patches = lib.optionals (lib.versionAtLeast "5.4" kernel.version) [
+  patches = lib.optionals (kernelOlder "5.4") [
     # fixes build with gcc8
     ./fix-snprintf-truncation.patch
     # fixes build with gcc9
@@ -27,5 +27,6 @@ stdenv.mkDerivation {
     description = "allows to pass USB device from server to client over the network";
     license = licenses.gpl2;
     platforms = platforms.linux;
+    broken = kernelOlder "4.10";
   };
 }
diff --git a/pkgs/servers/asterisk/default.nix b/pkgs/servers/asterisk/default.nix
index b0e7d6aec56c1..2cf40f3d026bc 100644
--- a/pkgs/servers/asterisk/default.nix
+++ b/pkgs/servers/asterisk/default.nix
@@ -104,8 +104,8 @@ in rec {
   asterisk = asterisk_17;
 
   asterisk_13 = common {
-    version = "13.36.0";
-    sha256 = "1p41xrxmzpqmjgvrl7f4vbigiqpmg60fd8bqg5rxbf4lxzpvknnp";
+    version = "13.37.0";
+    sha256 = "09wc6cqh4f15wm62drzdppwvh7nwgnbwapvz1kgb0qdgixsshn3v";
     externals = {
       "externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
       "addons/mp3" = mp3-202;
@@ -113,8 +113,8 @@ in rec {
   };
 
   asterisk_16 = common {
-    version = "16.13.0";
-    sha256 = "01nja8hd6jk1966awc2vcz3hl46pvhi797k515q87vzmap1khlp9";
+    version = "16.14.0";
+    sha256 = "1y120p4jlhg4iwihdxlk64y3y3n8w7y785lwqxsyqg6zviz0ghx6";
     externals = {
       "externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
       "addons/mp3" = mp3-202;
@@ -122,8 +122,8 @@ in rec {
   };
 
   asterisk_17 = common {
-    version = "17.7.0";
-    sha256 = "0lsglrh3l823200rmkay3pgy42k0fsij610s3s4vd3zv4jjb1g0s";
+    version = "17.8.0";
+    sha256 = "0xhwh8s8n8xg43gcdkqjj484assva7lm5ah1b306a5nf6j8p9bjy";
     externals = {
       "externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
       "addons/mp3" = mp3-202;
diff --git a/pkgs/servers/consul/default.nix b/pkgs/servers/consul/default.nix
index c153cc3907322..8912ce847883f 100644
--- a/pkgs/servers/consul/default.nix
+++ b/pkgs/servers/consul/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "consul";
-  version = "1.8.4";
+  version = "1.8.5";
   rev = "v${version}";
 
   # Note: Currently only release tags are supported, because they have the Consul UI
@@ -17,7 +17,7 @@ buildGoModule rec {
     owner = "hashicorp";
     repo = pname;
     inherit rev;
-    sha256 = "0rm6qf8jnn6khrx9dy8r4ji1yd89hai52d9zggb5r99k7m9wd291";
+    sha256 = "1cf3zvb3xh97hz5hav9f1q3b22lwryw6a7gcmm7cphk6bdrdiva5";
   };
 
   passthru.tests.consul = nixosTests.consul;
@@ -26,7 +26,7 @@ buildGoModule rec {
   # has a split module structure in one repo
   subPackages = ["." "connect/certgen"];
 
-  vendorSha256 = "1g3a9m6aqarq0rqf7qrp9yxcsc3sjnx0vbypakzmrq1ndgdivk16";
+  vendorSha256 = "1zz3hhngvx7989m73cp5a9j6spg42hgqd9vs8v332fvcr277lyxj";
 
   doCheck = false;
 
diff --git a/pkgs/servers/dns/pdns-recursor/default.nix b/pkgs/servers/dns/pdns-recursor/default.nix
index d3b440f1d09ad..df886ffe9dc9f 100644
--- a/pkgs/servers/dns/pdns-recursor/default.nix
+++ b/pkgs/servers/dns/pdns-recursor/default.nix
@@ -8,11 +8,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "pdns-recursor";
-  version = "4.3.5";
+  version = "4.4.0";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2";
-    sha256 = "0mggqi4588mg6vpgplk9b4ak6msdf279lxkblv563l2vjiyfmfcc";
+    sha256 = "12z59xf63iskid08c3y55h238ma2chgvcbks0zprag7i00p97g06";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index a55b695b45766..326cc480fddc9 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "0.116.4";
+  version = "0.117.0";
   components = {
     "abode" = ps: with ps; [ abodepy ];
     "accuweather" = ps: with ps; [ accuweather ];
@@ -11,6 +11,7 @@
     "actiontec" = ps: with ps; [ ];
     "adguard" = ps: with ps; [ adguardhome ];
     "ads" = ps: with ps; [ pyads ];
+    "advantage_air" = ps: with ps; [ ]; # missing inputs: advantage_air
     "aftership" = ps: with ps; [ pyaftership ];
     "agent_dvr" = ps: with ps; [ ]; # missing inputs: agent-py
     "air_quality" = ps: with ps; [ ];
@@ -91,7 +92,6 @@
     "bme680" = ps: with ps; [ ]; # missing inputs: bme680 smbus-cffi
     "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280
     "bmw_connected_drive" = ps: with ps; [ ]; # missing inputs: bimmer_connected
-    "bom" = ps: with ps; [ ]; # missing inputs: bomradarloop
     "bond" = ps: with ps; [ ]; # missing inputs: bond-api
     "braviatv" = ps: with ps; [ bravia-tv ];
     "broadlink" = ps: with ps; [ broadlink ];
@@ -107,7 +107,7 @@
     "calendar" = ps: with ps; [ aiohttp-cors ];
     "camera" = ps: with ps; [ aiohttp-cors ];
     "canary" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: py-canary
-    "cast" = ps: with ps; [ aiohttp-cors hass-nabucasa mutagen PyChromecast zeroconf ];
+    "cast" = ps: with ps; [ aiohttp-cors hass-nabucasa mutagen plexapi plexauth plexwebsocket PyChromecast pysonos zeroconf ];
     "cert_expiry" = ps: with ps; [ ];
     "channels" = ps: with ps; [ ]; # missing inputs: pychannels
     "circuit" = ps: with ps; [ ]; # missing inputs: circuit-webhook
@@ -163,7 +163,7 @@
     "device_automation" = ps: with ps; [ ];
     "device_sun_light_trigger" = ps: with ps; [ aiohttp-cors pillow ];
     "device_tracker" = ps: with ps; [ ];
-    "devolo_home_control" = ps: with ps; [ ]; # missing inputs: devolo-home-control-api
+    "devolo_home_control" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: devolo-home-control-api
     "dexcom" = ps: with ps; [ ]; # missing inputs: pydexcom
     "dht" = ps: with ps; [ ]; # missing inputs: Adafruit-DHT
     "dialogflow" = ps: with ps; [ aiohttp-cors ];
@@ -301,7 +301,7 @@
     "gitlab_ci" = ps: with ps; [ python-gitlab ];
     "gitter" = ps: with ps; [ ]; # missing inputs: gitterpy
     "glances" = ps: with ps; [ ]; # missing inputs: glances_api
-    "gntp" = ps: with ps; [ ]; # missing inputs: gntp
+    "gntp" = ps: with ps; [ gntp ];
     "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher
     "goalzero" = ps: with ps; [ ]; # missing inputs: goalzero
     "gogogate2" = ps: with ps; [ ]; # missing inputs: gogogate2-api
@@ -318,6 +318,7 @@
     "gpsd" = ps: with ps; [ ]; # missing inputs: gps3
     "gpslogger" = ps: with ps; [ aiohttp-cors ];
     "graphite" = ps: with ps; [ ];
+    "gree" = ps: with ps; [ ]; # missing inputs: greeclimate
     "greeneye_monitor" = ps: with ps; [ ]; # missing inputs: greeneye_monitor
     "greenwave" = ps: with ps; [ ]; # missing inputs: greenwavereality
     "griddy" = ps: with ps; [ ]; # missing inputs: griddypower
@@ -470,7 +471,7 @@
     "mastodon" = ps: with ps; [ ]; # missing inputs: Mastodon.py
     "matrix" = ps: with ps; [ matrix-client ];
     "maxcube" = ps: with ps; [ ]; # missing inputs: maxcube-api
-    "mcp23017" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-blinka adafruit-circuitpython-mcp230xx
+    "mcp23017" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-mcp230xx
     "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ];
     "media_player" = ps: with ps; [ aiohttp-cors ];
     "media_source" = ps: with ps; [ aiohttp-cors ];
@@ -527,7 +528,7 @@
     "nederlandse_spoorwegen" = ps: with ps; [ ]; # missing inputs: nsapi
     "nello" = ps: with ps; [ ]; # missing inputs: pynello
     "ness_alarm" = ps: with ps; [ ]; # missing inputs: nessclient
-    "nest" = ps: with ps; [ python-nest ];
+    "nest" = ps: with ps; [ aiohttp-cors python-nest ]; # missing inputs: google-nest-sdm
     "netatmo" = ps: with ps; [ aiohttp-cors hass-nabucasa pyatmo ];
     "netdata" = ps: with ps; [ ]; # missing inputs: netdata
     "netgear" = ps: with ps; [ ]; # missing inputs: pynetgear
@@ -568,7 +569,7 @@
     "ombi" = ps: with ps; [ ]; # missing inputs: pyombi
     "omnilogic" = ps: with ps; [ ]; # missing inputs: omnilogic
     "onboarding" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend
-    "onewire" = ps: with ps; [ ]; # missing inputs: pyownet
+    "onewire" = ps: with ps; [ ]; # missing inputs: pi1wire pyownet
     "onkyo" = ps: with ps; [ onkyo-eiscp ];
     "onvif" = ps: with ps; [ ha-ffmpeg zeep ]; # missing inputs: WSDiscovery onvif-zeep-async
     "openalpr_cloud" = ps: with ps; [ ];
@@ -622,6 +623,7 @@
     "point" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pypoint
     "poolsense" = ps: with ps; [ ]; # missing inputs: poolsense
     "powerwall" = ps: with ps; [ ]; # missing inputs: tesla-powerwall
+    "profiler" = ps: with ps; [ pyprof2calltree ];
     "progettihwsw" = ps: with ps; [ ]; # missing inputs: progettihwsw
     "proliphix" = ps: with ps; [ ]; # missing inputs: proliphix
     "prometheus" = ps: with ps; [ aiohttp-cors prometheus_client ];
@@ -688,6 +690,7 @@
     "rpi_rf" = ps: with ps; [ ]; # missing inputs: rpi-rf
     "rss_feed_template" = ps: with ps; [ aiohttp-cors ];
     "rtorrent" = ps: with ps; [ ];
+    "ruckus_unleashed" = ps: with ps; [ ]; # missing inputs: pyruckus
     "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio
     "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound
     "sabnzbd" = ps: with ps; [ aiohttp-cors netdisco zeroconf ]; # missing inputs: pysabnzbd
@@ -809,6 +812,7 @@
     "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility
     "tankerkoenig" = ps: with ps; [ ]; # missing inputs: pytankerkoenig
     "tapsaff" = ps: with ps; [ ]; # missing inputs: tapsaff
+    "tasmota" = ps: with ps; [ aiohttp-cors paho-mqtt ]; # missing inputs: hatasmota
     "tautulli" = ps: with ps; [ ]; # missing inputs: pytautulli
     "tcp" = ps: with ps; [ ];
     "ted5000" = ps: with ps; [ xmltodict ];
@@ -932,6 +936,7 @@
     "wunderground" = ps: with ps; [ ];
     "x10" = ps: with ps; [ ];
     "xbee" = ps: with ps; [ ]; # missing inputs: xbee-helper
+    "xbox" = ps: with ps; [ aiohttp-cors ]; # missing inputs: xbox-webapi
     "xbox_live" = ps: with ps; [ ]; # missing inputs: xboxapi
     "xeoma" = ps: with ps; [ ]; # missing inputs: pyxeoma
     "xfinity" = ps: with ps; [ ]; # missing inputs: xfinity-gateway
@@ -950,7 +955,7 @@
     "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower
     "yessssms" = ps: with ps; [ ]; # missing inputs: YesssSMS
     "yi" = ps: with ps; [ aioftp ha-ffmpeg ];
-    "zabbix" = ps: with ps; [ ]; # missing inputs: pyzabbix
+    "zabbix" = ps: with ps; [ ]; # missing inputs: py-zabbix
     "zamg" = ps: with ps; [ ];
     "zengge" = ps: with ps; [ ]; # missing inputs: zengge
     "zeroconf" = ps: with ps; [ aiohttp-cors zeroconf ];
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index e2a7df26efee0..98f5fe9432479 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -67,7 +67,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "0.116.4";
+  hassVersion = "0.117.0";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -83,28 +83,20 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = version;
-    sha256 = "1wcr2afvq1l6xlws3jgzfyh4kx61i0x9n985fiq3ls29w9lpshk4";
+    sha256 = "1f5axspj5hffmaqhpmrrflyd0c62lww36yvd2wr999yix7jhsfnc";
   };
 
-  patches = [
-    (fetchpatch {
-      #  Fix group tests when run in parallel, remove >= 0.117.0
-      url = "https://github.com/home-assistant/core/pull/41446/commits/c79dc478b7136b6df43707bf0ad6b53419c8a909.patch";
-      sha256 = "1cl81swq960vd2f733dcqq60c0jjzrkm0l2sibcblhmyw597b4vj";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace setup.py \
       --replace "bcrypt==3.1.7" "bcrypt>=3.1.7" \
-      --replace "cryptography==2.9.2" "cryptography" \
+      --replace "cryptography==3.2.0" "cryptography" \
       --replace "ruamel.yaml==0.15.100" "ruamel.yaml>=0.15.100"
     substituteInPlace tests/test_config.py --replace '"/usr"' '"/build/media"'
   '';
 
   propagatedBuildInputs = [
     # From setup.py
-    aiohttp astral async-timeout attrs bcrypt certifi ciso8601 jinja2
+    aiohttp astral async-timeout attrs bcrypt certifi ciso8601 httpx jinja2
     pyjwt cryptography pip python-slugify pytz pyyaml requests ruamel_yaml
     setuptools voluptuous voluptuous-serialize yarl
     # From default_config. frontend, http, image, mobile_app and recorder components as well as
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index 8dd99d94ee0f0..2ca94066dbcb2 100644
--- a/pkgs/servers/home-assistant/frontend.nix
+++ b/pkgs/servers/home-assistant/frontend.nix
@@ -4,11 +4,11 @@ buildPythonPackage rec {
   # the frontend version corresponding to a specific home-assistant version can be found here
   # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
   pname = "home-assistant-frontend";
-  version = "20201001.2";
+  version = "20201021.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1wyac980d8j8bk4bzh9y3a5c4xqfn3062wj5m45kwsx1f5rfx26j";
+    sha256 = "04z8rvmnpmy7xx90pvqcr58hsxjsc10mrrjcx7ppspglb91b9cpb";
   };
 
   # no Python tests implemented
diff --git a/pkgs/servers/http/nginx/mainline.nix b/pkgs/servers/http/nginx/mainline.nix
index 934506c45ca9e..7b7de1a00f4ae 100644
--- a/pkgs/servers/http/nginx/mainline.nix
+++ b/pkgs/servers/http/nginx/mainline.nix
@@ -1,6 +1,6 @@
 { callPackage, ... }@args:
 
 callPackage ./generic.nix args {
-  version = "1.19.3";
-  sha256 = "1w4dkq7bl5gyix3x0ap3d9lndh7zyvc3mscl693d4ybql57vgrci";
+  version = "1.19.4";
+  sha256 = "03h0hhrbfy3asla9gki2cp97zjn7idxbp5lk9xi0snlh4xlm9pv1";
 }
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index f18c6f83ffc95..fbdce3a2220ed 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, python3, openssl
 , enableSystemd ? stdenv.isLinux, nixosTests
+, enableRedis ? false
 }:
 
 with python3.pkgs;
@@ -9,11 +10,11 @@ let
 in
 buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.21.2";
+  version = "1.22.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "061b2mpdzqxyks1kj3p7xmw8i4akqfd2s9vb7v8w27k2qpcw7528";
+    sha256 = "1pbxdqpfa7wzdz61p6x58x7841vng1g65qayxgcw73bn1shl50jb";
   };
 
   patches = [
@@ -53,13 +54,15 @@ buildPythonApplication rec {
     typing-extensions
     authlib
     pyjwt
-  ] ++ lib.optional enableSystemd systemd;
+  ] ++ lib.optional enableSystemd systemd
+    ++ lib.optional enableRedis hiredis;
 
   checkInputs = [ mock parameterized openssl ];
 
   doCheck = !stdenv.isDarwin;
 
   checkPhase = ''
+    ${lib.optionalString (!enableRedis) "rm -r tests/replication # these tests need the optional dependency 'hiredis'"}
     PYTHONPATH=".:$PYTHONPATH" ${python3.interpreter} -m twisted.trial tests
   '';
 
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index c29c6cdf08f75..7679cd88649d7 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "7.2.2";
+  version = "7.3.1";
 
   excludedPackages = [ "release_publisher" ];
 
@@ -10,15 +10,15 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "14i1h0v6bwb3y1xqs71dabriyd7gdgihb8wkf3gpjr4gnsywvsgm";
+    sha256 = "02by07d0h07zvws2yj71qa84sgp3x49p5ib0bahh0iyr50xqb3yj";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "03jf5wnf89a3fawdayl5x5rfyc3dsf9wm5dm1ldz9fqk31biq8ky";
+    sha256 = "0rqipwiz8bsqkhiv30k9jmk5szhabk9rgl37n7y8l0yk2avbq895";
   };
 
-  vendorSha256 = "03zvhznzdbi61kd0y0ldhx2n9zh3pwg1ias1shqgqyx46c9ysdzm";
+  vendorSha256 = "0shaxm2y5i29rb0k5bfpcsxbw3ap913l1rb5qbr9hrx7l142dbx8";
 
   postPatch = ''
     substituteInPlace pkg/cmd/grafana-server/main.go \
diff --git a/pkgs/servers/monitoring/loki/default.nix b/pkgs/servers/monitoring/loki/default.nix
index ec9d56f2cbb7f..c4bfeed8c88d8 100644
--- a/pkgs/servers/monitoring/loki/default.nix
+++ b/pkgs/servers/monitoring/loki/default.nix
@@ -1,24 +1,28 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub, makeWrapper, systemd }:
+{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, systemd, fetchpatch }:
 
-buildGoPackage rec {
-  version = "1.6.1";
+buildGoModule rec {
+  version = "2.0.0";
   pname = "grafana-loki";
-  goPackagePath = "github.com/grafana/loki";
-
-  doCheck = true;
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "grafana";
     repo = "loki";
-    sha256 = "0bakskzizazc5cd6km3n6facc5val5567zinnxg3yjy29xdi64ww";
+    sha256 = "09a0mqdmk754vigd1xqijzwazwrmfaqcgdr2c6dz25p7a65568hj";
   };
 
-  postPatch = ''
-    substituteInPlace pkg/distributor/distributor_test.go --replace \
-      '"eth0", "en0", "lo0"' \
-      '"lo"'
-  '';
+  vendorSha256 = null;
+
+  subPackages = [ "..." ];
+
+  patches = [
+    (fetchpatch {
+      # Fix expected return value in Test_validateDropConfig
+      # https://github.com/grafana/loki/issues/2519
+      url = "https://github.com/grafana/loki/commit/1316c0f0c5cda7c272c4873ea910211476fc1db8.patch";
+      sha256 = "06hwga58qpmivbhyjgyqzb75602hy8212a4b5vh99y9pnn6c913h";
+    })
+  ];
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = stdenv.lib.optionals stdenv.isLinux [ systemd.dev ];
@@ -28,6 +32,8 @@ buildGoPackage rec {
       --prefix LD_LIBRARY_PATH : "${lib.getLib systemd}/lib"
   '';
 
+  doCheck = true;
+
   meta = with stdenv.lib; {
     description = "Like Prometheus, but for logs";
     license = licenses.asl20;
diff --git a/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix b/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
index 45d70d47d6e8a..e1fd31c3202f9 100644
--- a/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "blackbox_exporter";
-  version = "0.17.0";
+  version = "0.18.0";
   rev = version;
 
   goPackagePath = "github.com/prometheus/blackbox_exporter";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "prometheus";
     repo = "blackbox_exporter";
-    sha256 = "00ganz6wfwyb9avkp2fr4bwpzvfiffsmpgndl8zp80bk7m1b3mnz";
+    sha256 = "1h4s0ww1drh14slrj9m7mx224qx9c6hyjav8sj959r75902i9491";
   };
 
   # dns-lookup is performed for the tests
diff --git a/pkgs/servers/monitoring/prometheus/promscale.nix b/pkgs/servers/monitoring/prometheus/promscale.nix
index 1bf5d511e2870..37e3ec0375cba 100644
--- a/pkgs/servers/monitoring/prometheus/promscale.nix
+++ b/pkgs/servers/monitoring/prometheus/promscale.nix
@@ -5,20 +5,20 @@
 
 buildGoModule rec {
   pname = "promscale";
-  version = "0.1.0";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "timescale";
     repo = pname;
     rev = "${version}";
-    sha256 = "sha256:0535sq640b9x9vi2sfazi9qs6arwjdn7nff16km2agncvs449dn4";
+    sha256 = "sha256:00mhkp3nf6h2zsvmmwyza1lahvmm05isfi7rqkx24c0dmkmif3x9";
   };
 
   vendorSha256 = "sha256:1ilciwf08678sciwwrjalwvcs5bp7x254nxc3nhdf88cf0bp2nxi";
 
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/timescale/promscale/pkg/version.Version=${version} -X github.com/timescale/promscale/pkg/version.CommitHash=${src.rev}" ];
 
-  doCheck = false;
+  doCheck = false; # Requires access to a docker daemon
 
   meta = with stdenv.lib; {
     description = "An open-source analytical platform for Prometheus metrics";
diff --git a/pkgs/servers/monitoring/prometheus/pushgateway.nix b/pkgs/servers/monitoring/prometheus/pushgateway.nix
index 1425fccdca4b0..d2d59c5e5deda 100644
--- a/pkgs/servers/monitoring/prometheus/pushgateway.nix
+++ b/pkgs/servers/monitoring/prometheus/pushgateway.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "pushgateway";
-  version = "1.2.0";
+  version = "1.3.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/prometheus/pushgateway";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "prometheus";
     repo = "pushgateway";
-    sha256 = "0q57pvdfapi1xx8mw7ykvxs64alypyqbxwvrqjcrgv2jidbcd1mm";
+    sha256 = "0ll6s8yqcx3fgn6gzmfb1bsfykl0ra6383nyw1kjbj260w200gls";
   };
 
   buildUser = "nix@nixpkgs";
diff --git a/pkgs/servers/openbgpd/default.nix b/pkgs/servers/openbgpd/default.nix
index 7ca71c1277543..02c1c607eab86 100644
--- a/pkgs/servers/openbgpd/default.nix
+++ b/pkgs/servers/openbgpd/default.nix
@@ -1,27 +1,27 @@
-{ stdenv, fetchFromGitHub, autoconf, automake
-, libtool, m4, yacc }:
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, m4, yacc }:
 
 let
-  openbsd_version = "OPENBSD_6_7"; # This has to be equal to ${src}/OPENBSD_BRANCH
+  openbsd_version =
+    "OPENBSD_6_8"; # This has to be equal to ${src}/OPENBSD_BRANCH
   openbsd = fetchFromGitHub {
+    name = "portable";
     owner = "openbgpd-portable";
     repo = "openbgpd-openbsd";
     rev = openbsd_version;
-    sha256 = "sha256-YJTHUsn6s4xLcLQuxCLmEkIE8ozxzooj71cJ5Wl+0lI=";
+    sha256 = "sha256-vCVK5k4g6aW2z2fg7Kv0uvkX7f34aRc8K2myb3jjl6w=";
   };
 in stdenv.mkDerivation rec {
   pname = "opengpd";
-  version = "6.7p0";
+  version = "6.8p0";
 
   src = fetchFromGitHub {
     owner = "openbgpd-portable";
     repo = "openbgpd-portable";
     rev = version;
-    sha256 = "sha256-10DfK45BsSHeyANB0OJLKog1mEj0mydXSDAT9G6u1gM";
+    sha256 = "sha256-TKs6tt/SCWes6kYAGIrSShZgOLf7xKh26xG3Zk7wCCw=";
   };
 
-  nativeBuildInputs =
-    [  autoconf automake libtool m4 yacc ];
+  nativeBuildInputs = [ autoconf automake libtool m4 yacc ];
 
   preConfigure = ''
     mkdir ./openbsd
@@ -36,7 +36,8 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "A free implementation of the Border Gateway Protocol, Version 4. It allows ordinary machines to be used as routers exchanging routes with other systems speaking the BGP protocol";
+    description =
+      "A free implementation of the Border Gateway Protocol, Version 4. It allows ordinary machines to be used as routers exchanging routes with other systems speaking the BGP protocol";
     license = licenses.isc;
     homepage = "http://www.openbgpd.org/";
     maintainers = with maintainers; [ kloenk ];
diff --git a/pkgs/servers/plex/raw.nix b/pkgs/servers/plex/raw.nix
index c816f314863a8..f06b0a486985e 100644
--- a/pkgs/servers/plex/raw.nix
+++ b/pkgs/servers/plex/raw.nix
@@ -8,13 +8,13 @@
 # server, and the FHS userenv and corresponding NixOS module should
 # automatically pick up the changes.
 stdenv.mkDerivation rec {
-  version = "1.20.2.3402-0fec14d92";
+  version = "1.20.3.3483-211702a9f";
   pname = "plexmediaserver";
 
   # Fetch the source
   src = fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/redhat/plexmediaserver-${version}.x86_64.rpm";
-    sha256 = "0vylajkk6424cnxx4kg0yl53pg6w271pp71zgg1f4p2nhkbxd91c";
+    sha256 = "0b05mxmvjn2sr0aqy8s2c41gz0vlpmwjwx42jpqddk3qzidvwkbd";
   };
 
   outputs = [ "out" "basedb" ];
diff --git a/pkgs/servers/tarssh/default.nix b/pkgs/servers/tarssh/default.nix
new file mode 100644
index 0000000000000..72e636b303f13
--- /dev/null
+++ b/pkgs/servers/tarssh/default.nix
@@ -0,0 +1,25 @@
+{ fetchFromGitHub, rustPlatform, stdenv }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  pname = "tarssh";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    rev = "v${version}";
+    owner = "Freaky";
+    repo = pname;
+    sha256 = "0fm0rwknhm39nhd6g0pnxby34i5gpmi5ri795d9ylsw0pqwz6kd0";
+  };
+
+  cargoSha256 = "108xdpgfgfd4z455snif0mzbla0rv8gjqxci5qgwjzfyshwkprgv";
+
+  meta = with stdenv.lib; {
+    description = "A simple SSH tarpit inspired by endlessh";
+    homepage = "https://github.com/Freaky/tarssh";
+    license = [ licenses.mit ];
+    maintainers = with maintainers; [ sohalt ];
+    platforms = platforms.unix ;
+  };
+}
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index 0f34b08785d04..e7433e2de0b83 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -4,15 +4,15 @@
 { stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
-  version = "2020-10-27";
+  version = "2020-10-29";
   pname = "oh-my-zsh";
-  rev = "d05544562532fdf4d5f4a4d4eba01f4263e17cc7";
+  rev = "852a44094a3bb4df39f8f778bc7ada2ddda09727";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "ohmyzsh";
     repo = "ohmyzsh";
-    sha256 = "1mzbic14ilka454dyv6ksxpchmswqn7w4d7sa9067ikh1kjb7s86";
+    sha256 = "0021rayw5wiwgjfwy7d6g577xidws58vk7y9xxhidnmk9sr4vri7";
   };
 
   installPhase = ''
diff --git a/pkgs/shells/zsh/zplugin/default.nix b/pkgs/shells/zsh/zplugin/default.nix
new file mode 100644
index 0000000000000..c148f60b2eef2
--- /dev/null
+++ b/pkgs/shells/zsh/zplugin/default.nix
@@ -0,0 +1,40 @@
+{ stdenvNoCC, lib, fetchFromGitHub, installShellFiles }:
+stdenvNoCC.mkDerivation rec {
+  pname = "zplugin";
+  version = "2.3";
+  src = fetchFromGitHub {
+    owner = "zdharma";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0qqv5p19s8jb06d6h55dm4acji9x2rpxb2ni3h7fb0q43iz6y85w";
+  };
+  # adapted from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zsh-zplugin-git
+  dontBuild = true;
+  nativeBuildInputs = [ installShellFiles ];
+  installPhase = ''
+    outdir="$out/share/$pname"
+
+    cd "$src"
+
+    # Zplugin's source files
+    install -dm0755 "$outdir"
+    install -m0644 zplugin{,-side,-install,-autoload}.zsh "$outdir"
+    install -m0755 git-process-output.zsh "$outdir"
+
+    # Zplugin autocompletion
+    installShellCompletion --zsh _zplugin
+
+    #TODO:Zplugin-module files
+    # find zmodules/ -type d -exec install -dm 755 "{}" "$outdir/{}" \;
+    # find zmodules/ -type f -exec install -m 744 "{}" "$outdir/{}" \;
+
+  '';
+  #TODO:doc output
+
+  meta = with lib; {
+    homepage = "https://github.com/zdharma/zplugin";
+    description = "Flexible zsh plugin manager";
+    license = licenses.mit;
+    maintainers = with maintainers; [ pasqui23 ];
+  };
+}
diff --git a/pkgs/shells/zsh/zsh-powerlevel10k/default.nix b/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
index 39cb1f247fcf0..a978ac93a9b05 100644
--- a/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
+++ b/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
@@ -3,6 +3,20 @@
 # To make use of this derivation, use
 # `programs.zsh.promptInit = "source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme";`
 
+let
+  # match gitstatus version with given `gitstatus_version`:
+  # https://github.com/romkatv/powerlevel10k/blob/master/gitstatus/build.info
+  gitstatus = pkgs.gitAndTools.gitstatus.overrideAttrs (oldAtttrs: rec {
+    version = "1.2.0";
+
+    src = fetchFromGitHub {
+      owner = "romkatv";
+      repo = "gitstatus";
+      rev = "v${version}";
+      sha256 = "0xi5ab0rsj6xs4vqgn2j5rih1nncghr83yn395mk1is1f4bsmp0s";
+    };
+  });
+in
 stdenv.mkDerivation rec {
   pname = "powerlevel10k";
   version = "1.13.0";
@@ -17,7 +31,7 @@ stdenv.mkDerivation rec {
   patches = [
     (substituteAll {
       src = ./gitstatusd.patch;
-      gitstatusdPath = "${pkgs.gitAndTools.gitstatus}/bin/gitstatusd";
+      gitstatusdPath = "${gitstatus}/bin/gitstatusd";
     })
   ];
 
diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix
index f6e0df161ad00..b79b81253ad52 100644
--- a/pkgs/stdenv/native/default.nix
+++ b/pkgs/stdenv/native/default.nix
@@ -78,7 +78,7 @@ let
   # A function that builds a "native" stdenv (one that uses tools in
   # /usr etc.).
   makeStdenv =
-    { cc, fetchurl, extraPath ? [], overrides ? (self: super: { }) }:
+    { cc, fetchurl, extraPath ? [], overrides ? (self: super: { }), extraNativeBuildInputs ? [] }:
 
     import ../generic {
       buildPlatform = localSystem;
@@ -94,10 +94,10 @@ let
         if system == "x86_64-cygwin" then prehookCygwin else
         prehookBase;
 
-      extraNativeBuildInputs =
-        if system == "i686-cygwin" then extraNativeBuildInputsCygwin else
+      extraNativeBuildInputs = extraNativeBuildInputs ++
+        (if system == "i686-cygwin" then extraNativeBuildInputsCygwin else
         if system == "x86_64-cygwin" then extraNativeBuildInputsCygwin else
-        [];
+        []);
 
       initialPath = extraPath ++ path;
 
@@ -163,6 +163,7 @@ in
       inherit (prevStage.stdenv) cc fetchurl;
       extraPath = [ prevStage.xz ];
       overrides = self: super: { inherit (prevStage) xz; };
+      extraNativeBuildInputs = if localSystem.isLinux then [ prevStage.patchelf ] else [];
     };
   })
 
diff --git a/pkgs/tools/admin/aws-google-auth/default.nix b/pkgs/tools/admin/aws-google-auth/default.nix
index d96eadf0eab59..a9a49beda2f33 100644
--- a/pkgs/tools/admin/aws-google-auth/default.nix
+++ b/pkgs/tools/admin/aws-google-auth/default.nix
@@ -4,6 +4,7 @@
 , beautifulsoup4
 , boto3
 , configparser
+, filelock
 , keyring
 , keyrings-alt
 , lxml
@@ -19,7 +20,7 @@
 
 buildPythonApplication rec {
   pname = "aws-google-auth";
-  version = "0.0.34";
+  version = "0.0.36";
 
   # Pypi doesn't ship the tests, so we fetch directly from GitHub
   # https://github.com/cevoaustralia/aws-google-auth/issues/120
@@ -27,13 +28,14 @@ buildPythonApplication rec {
     owner = "cevoaustralia";
     repo = "aws-google-auth";
     rev = version;
-    sha256 = "12c5ssdy870szrizhs4d7dzcpq3hvszjvl8ba60qf1ak5jsr1ay4";
+    sha256 = "099r020v33sij2b3816cjp4fpy35c886l559szfxqx6kgy19y9z7";
   };
 
-  propagatedBuildInputs = [ 
+  propagatedBuildInputs = [
     beautifulsoup4
     boto3
     configparser
+    filelock
     keyring
     keyrings-alt
     lxml
@@ -43,10 +45,10 @@ buildPythonApplication rec {
     tabulate
     tzlocal
   ] ++ lib.optional withU2F python-u2flib-host;
-  
-  checkInputs = [ 
+
+  checkInputs = [
     mock
-    nose 
+    nose
   ];
 
   preCheck = ''
diff --git a/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix b/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix
deleted file mode 100644
index a872060ce2127..0000000000000
--- a/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv, fetchFromGitHub, python2Packages  }:
-
-python2Packages.buildPythonApplication rec {
-  pname = "amazon-glacier-cmd-interface";
-  version  = "2016-09-01";
-
-  src = fetchFromGitHub {
-    owner  = "uskudnik";
-    repo   = "amazon-glacier-cmd-interface";
-    rev    = "9f28132f9872e1aad9e956e5613b976504e930c8";
-    sha256 = "1k5z8kda9v6klr4536pf5qbq9zklxvyysv7nc48gllschl09jywc";
-  };
-
-  # argparse is part of the standardlib
-  prePatch = ''
-    substituteInPlace setup.py --replace "'argparse'," ""
-  '';
-
-  propagatedBuildInputs = with python2Packages; [
-    boto
-    dateutil
-    prettytable
-    pytz
-  ];
-
-  meta = {
-    description = "Command line interface for Amazon Glacier";
-    homepage    = "https://github.com/uskudnik/amazon-glacier-cmd-interface";
-    license     = stdenv.lib.licenses.gpl2;
-    maintainers = [ stdenv.lib.maintainers.lovek323 ];
-  };
-
-}
diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix
index 8ce434741a556..c26ca507525fb 100644
--- a/pkgs/tools/compression/zstd/default.nix
+++ b/pkgs/tools/compression/zstd/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ]
    ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
-  buildInputs = [ bash ];
+  buildInputs = stdenv.lib.optional stdenv.hostPlatform.isUnix bash;
 
   patches = [
     ./playtests-darwin.patch
@@ -72,7 +72,9 @@ stdenv.mkDerivation rec {
       --replace "zstdcat" "$bin/bin/zstdcat"
   '';
 
-  outputs = [ "bin" "dev" "man" "out" ];
+  outputs = [ "bin" "dev" ]
+    ++ stdenv.lib.optional stdenv.hostPlatform.isUnix "man"
+    ++ [ "out" ];
 
   meta = with stdenv.lib; {
     description = "Zstandard real-time compression algorithm";
diff --git a/pkgs/tools/filesystems/fatresize/default.nix b/pkgs/tools/filesystems/fatresize/default.nix
index c1d048889c701..79551df00ee91 100644
--- a/pkgs/tools/filesystems/fatresize/default.nix
+++ b/pkgs/tools/filesystems/fatresize/default.nix
@@ -1,38 +1,26 @@
-{ stdenv, fetchurl, parted, utillinux }:
+{ stdenv, fetchFromGitHub, parted, utillinux, pkg-config }:
 
 stdenv.mkDerivation rec {
 
-  version = "1.0.2";
+  version = "1.1.0";
   pname = "fatresize";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/fatresize/fatresize-${version}.tar.bz2";
-    sha256 = "04wp48jpdvq4nn0dgbw5za07g842rnxlh9mig4mslz70zqs0izjm";
+  src = fetchFromGitHub {
+    owner = "ya-mouse";
+    repo = "fatresize";
+    rev = "v${version}";
+    sha256 = "1vhz84kxfyl0q7mkqn68nvzzly0a4xgzv76m6db0bk7xyczv1qr2";
   };
 
   buildInputs = [ parted utillinux ];
-
-  # This patch helps this unmantained piece of software to be built against recent parted
-  # It basically modifies the detection scheme for parted version (the current one has no micro version defined)
-  # The second change is to include a header for a moved function since 1.6+ to current 3.1+ parted
-  # The third change is to modify the call to PED_ASSERT that is no longer defined with 2 params
-  patches = [ ./fatresize_parted_nix.patch ];
-
-  preConfigure = ''
-    echo "Replacing calls to ped_free with free ..."
-    substituteInPlace ./fatresize.c --replace ped_free free
-  '';
-
-  # Filesystem resize functions were reintroduced in parted 3.1 due to no other available free alternatives
-  # but in a sepparate library -> libparted-fs-resize --- that's why the added LDFLAG
-  makeFlags = [ "LDFLAGS=-lparted-fs-resize" ];
+  nativeBuildInputs = [ pkg-config ];
 
   propagatedBuildInputs = [ parted utillinux ];
 
   meta = with stdenv.lib; {
     description = "The FAT16/FAT32 non-destructive resizer";
-    homepage = "https://sourceforge.net/projects/fatresize";
+    homepage = "https://github.com/ya-mouse/fatresize";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/tools/filesystems/fatresize/fatresize_parted_nix.patch b/pkgs/tools/filesystems/fatresize/fatresize_parted_nix.patch
deleted file mode 100644
index e9aa87a2d564f..0000000000000
--- a/pkgs/tools/filesystems/fatresize/fatresize_parted_nix.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-diff --git a/aclocal.m4 b/aclocal.m4
-index 18e8176..2e75592 100644
---- a/aclocal.m4
-+++ b/aclocal.m4
-@@ -88,8 +88,15 @@ int main ()
- 	if ( !(version = ped_get_version ()) )
- 		exit(1);
- 	if (sscanf(version, "%d.%d.%d", &major, &minor, &micro) != 3) {
--		printf("%s, bad version string\n", version);
--		exit(1);
-+		if (sscanf(version, "%d.%d", &major, &minor) != 2)
-+		{
-+		  printf("%s, bad version string\n", version);
-+		  exit(1);
-+		}
-+		else
-+		{
-+		  micro = 0;
-+		}
- 	}
- 	
- 	if ((major > $parted_config_major_version) ||
-diff --git a/configure b/configure
-index ed31457..e5f1705 100755
---- a/configure
-+++ b/configure
-@@ -4793,8 +4793,15 @@ int main ()
- 	if ( !(version = ped_get_version ()) )
- 		exit(1);
- 	if (sscanf(version, "%d.%d.%d", &major, &minor, &micro) != 3) {
--		printf("%s, bad version string\n", version);
--		exit(1);
-+		if (sscanf(version, "%d.%d", &major, &minor) != 2)
-+		{
-+		  printf("%s, bad version string\n", version);
-+		  exit(1);
-+		}
-+		else
-+		{
-+		  micro = 0;
-+		}
- 	}
- 
- 	if ((major > $parted_config_major_version) ||
-diff --git a/fatresize.c b/fatresize.c
-index 424d5d2..e439102 100644
---- a/fatresize.c
-+++ b/fatresize.c
-@@ -30,6 +30,7 @@
- #include <inttypes.h>
- #include <parted/parted.h>
- #include <parted/debug.h>
-+#include <parted/filesys.h>
- #include <parted/unit.h>
- 
- #include "config.h"
-@@ -217,7 +218,7 @@ fatresize_handler(PedException *ex)
- static int
- snap(PedSector* sector, PedSector new_sector, PedGeometry* range)
- {
--    PED_ASSERT(ped_geometry_test_sector_inside (range, *sector), return 0);
-+    PED_ASSERT(ped_geometry_test_sector_inside (range, *sector));
-     if (!ped_geometry_test_sector_inside(range, new_sector))
- 	return 0;
- 
-@@ -281,7 +282,7 @@ snap_to_boundaries (PedGeometry* new_geom, PedGeometry* old_geom,
- 			  end_part->geom.end, end_part->geom.start - 1, -1);
- 	}
- 
--	PED_ASSERT (start <= end, return);
-+	PED_ASSERT (start <= end);
- 	ped_geometry_set (new_geom, start, end - start + 1);
- }
- 
diff --git a/pkgs/tools/misc/aptly/default.nix b/pkgs/tools/misc/aptly/default.nix
index 3c97c16842900..6af3238dbd771 100644
--- a/pkgs/tools/misc/aptly/default.nix
+++ b/pkgs/tools/misc/aptly/default.nix
@@ -2,14 +2,14 @@
 
 let
 
-  version = "1.3.0";
+  version = "1.4.0";
   rev = "v${version}";
 
   aptlySrc = fetchFromGitHub {
     inherit rev;
     owner = "aptly-dev";
     repo = "aptly";
-    sha256 = "032gw8qkxcgc0jyrvzqh7jkbmk4k0gf7j74hyhclfnjmd9548f5l";
+    sha256 = "06cq761r3bxybb9xn58jii0ggp79mcp3810z1r2z3xcvplwhwnhy";
   };
 
   aptlyCompletionSrc = fetchFromGitHub {
diff --git a/pkgs/tools/misc/bdf2psf/default.nix b/pkgs/tools/misc/bdf2psf/default.nix
index 2b3445ac6c33a..0316a9b08a40f 100644
--- a/pkgs/tools/misc/bdf2psf/default.nix
+++ b/pkgs/tools/misc/bdf2psf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bdf2psf";
-  version = "1.197";
+  version = "1.198";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
-    sha256 = "023zj08rk8pmvpr8zybxn2ibrl5qsarkn8rb908mxhhlwpp12f7n";
+    sha256 = "1b57pk10wf667aag3mhh397sfra44gilnyyg7fm532qaw3xapv2i";
   };
 
   nativeBuildInputs = [ dpkg ];
diff --git a/pkgs/tools/misc/broadlink-cli/default.nix b/pkgs/tools/misc/broadlink-cli/default.nix
index c40ccad5e3962..96b13c060e4ba 100644
--- a/pkgs/tools/misc/broadlink-cli/default.nix
+++ b/pkgs/tools/misc/broadlink-cli/default.nix
@@ -1,22 +1,22 @@
-{ stdenv, python2Packages, fetchFromGitHub }:
+{ stdenv, python3Packages, fetchFromGitHub }:
 
-python2Packages.buildPythonApplication {
+python3Packages.buildPythonApplication {
   pname = "broadlink-cli";
-  inherit (python2Packages.broadlink) version;
+  inherit (python3Packages.broadlink) version;
 
   # the tools are available as part of the source distribution from GH but
   # not pypi, so we have to fetch them here.
   src = fetchFromGitHub {
     owner  = "mjg59";
     repo   = "python-broadlink";
-    # this rev is version 0.9
-    rev    = "766b7b00fb1cec868e3d5fca66f1aada208959ce";
-    sha256 = "0j0idzxmpwkb1lbgvi9df2hbxafm5hxjc6mgg5481lq7z4z1r4nb";
+    # this rev is version 0.15.0
+    rev    = "99add9e6feea6e47be4f3a58783556d7838b759c";
+    sha256 = "1q1q62brvfjcb18i0j4ca5cxqzjwv1iywdrdby0yjqa4wm6ywq6b";
   };
 
   format = "other";
 
-  propagatedBuildInputs = with python2Packages; [
+  propagatedBuildInputs = with python3Packages; [
     broadlink
   ];
 
@@ -32,6 +32,6 @@ python2Packages.buildPythonApplication {
   meta = with stdenv.lib; {
     description = "Tools for interfacing with Broadlink RM2/3 (Pro) remote controls, A1 sensor platforms and SP2/3 smartplugs";
     maintainers = with maintainers; [ peterhoeg ];
-    inherit (python2Packages.broadlink.meta) homepage license;
+    inherit (python3Packages.broadlink.meta) homepage license;
   };
 }
diff --git a/pkgs/tools/misc/broot/default.nix b/pkgs/tools/misc/broot/default.nix
index 3027537dd8732..077d5dc777c1b 100644
--- a/pkgs/tools/misc/broot/default.nix
+++ b/pkgs/tools/misc/broot/default.nix
@@ -11,14 +11,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "broot";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "046yg270hnwzhap2rraihywpqjq5s3qxmyfcvfgfayz25216jmvc";
+    sha256 = "06gq7xn9g5wk6d5p732998q7lxbw2g6qb8vsv95jcnybarf88n1v";
   };
 
-  cargoSha256 = "02l6cdfx2sglygsdgnm474vmpbmpm2a1s6srd9cy66k6hjm1m0bn";
+  cargoSha256 = "1cbvi3jgj78gly3xkqbn8ai0ra5hpdphpdy7cphlrym0aj77ck4a";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix
index 8b9f79aaa7fd6..a8c7fce68cc89 100644
--- a/pkgs/tools/misc/ffsend/default.nix
+++ b/pkgs/tools/misc/ffsend/default.nix
@@ -16,16 +16,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   pname = "ffsend";
-  version = "0.2.65";
+  version = "0.2.68";
 
   src = fetchFromGitLab {
     owner = "timvisee";
     repo = "ffsend";
     rev = "v${version}";
-    sha256 = "02yw129rw072jlf36k60jbhfdv9ayx2wb5il61fc0v07h1nd7i0d";
+    sha256 = "0ga1v4s8ks2v632mim8ljya0gi2j8bbwj98yfm3g00p0z1i526qk";
   };
 
-  cargoSha256 = "04waki61b5pjlgznbhbrjpi9rxgdwg9mjbx2apfh9swvfip602r6";
+  cargoSha256 = "1n9pf29xid6jcas5yx94k4cpmqgx0kpqq7gwf83jisjywxzygh6w";
 
   nativeBuildInputs = [ cmake pkgconfig installShellFiles ];
   buildInputs =
diff --git a/pkgs/tools/misc/fsmon/default.nix b/pkgs/tools/misc/fsmon/default.nix
index 668fa463adb31..a3e3eddcda9ea 100644
--- a/pkgs/tools/misc/fsmon/default.nix
+++ b/pkgs/tools/misc/fsmon/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fsmon";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchFromGitHub {
     owner = "nowsecure";
     repo = "fsmon";
     rev = version;
-    sha256 = "0i7irqs4100j0g19jh64p2plbwipl6p3ld6w4sscc7n8lwkxmj03";
+    sha256 = "0y0gqb07girhz3r7gn9yrrysvhj5fapdafim0q8n7krk5y23hmh0";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 86819d77a9e40..6bd7f1ac3ed4d 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fzf";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "junegunn";
     repo = pname;
     rev = version;
-    sha256 = "0a1jhlkv6z5msw8p3wccy3axwpdvpnri6qps9fmvz57gfm9a3jmr";
+    sha256 = "03f9fdqicw1a2hcjiasya0dq72jvdz6fqw7dfig4kv5l14pwf3v9";
   };
 
   vendorSha256 = "0dd0qm1fxp3jnlrhfaas8fw87cj7rygaac35a9nk3xh2xsk7q35p";
@@ -19,7 +19,9 @@ buildGoModule rec {
 
   buildInputs = [ ncurses ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+  buildFlagsArray = [
+    "-ldflags=-s -w -X main.version=${version} -X main.revision=${src.rev}"
+  ];
 
   # The vim plugin expects a relative path to the binary; patch it to abspath.
   patchPhase = ''
diff --git a/pkgs/tools/misc/gif-for-cli/default.nix b/pkgs/tools/misc/gif-for-cli/default.nix
index fed22e518937b..52d3e043ce9cb 100644
--- a/pkgs/tools/misc/gif-for-cli/default.nix
+++ b/pkgs/tools/misc/gif-for-cli/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, python3Packages, ffmpeg_3, zlib, libjpeg }:
+{ stdenv, fetchFromGitHub, python3Packages, ffmpeg, zlib, libjpeg }:
 
 python3Packages.buildPythonApplication {
   pname = "gif-for-cli";
-  version = "unstable-2018-08-14";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "gif-for-cli";
-    rev = "9696f25fea2e38499b7c248a3151030c3c68bb00";
-    sha256 = "1rj8wjfsabn27k1ds7a5fdqgf2r28zpz4lvhbzssjfj1yf0mfh7s";
+    rev = "31f8aa2d617d6d6e941154f60e287c38dd9a74d5";
+    sha256 = "Bl5o492BUAn1KsscnlMIXCzJuy7xWUsdnxIKZKaRM3M=";
   };
 
   checkInputs = [ python3Packages.coverage ];
-  buildInputs = [ ffmpeg_3 zlib libjpeg ];
-  propagatedBuildInputs = with python3Packages; [ pillow requests x256 ];
+  buildInputs = [ zlib libjpeg ];
+  propagatedBuildInputs = with python3Packages; [ ffmpeg pillow requests x256 ];
 
   meta = with stdenv.lib; {
     description = "Render gifs as ASCII art in your cli";
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index 12ea456b9f7e7..7fa33ed82f21d 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -13,15 +13,15 @@ let
   bashCompletion = fetchFromGitHub {
     owner = "imomaliev";
     repo = "tmux-bash-completion";
-    rev = "fcda450d452f07d36d2f9f27e7e863ba5241200d";
-    sha256 = "092jpkhggjqspmknw7h3icm0154rg21mkhbc71j5bxfmfjdxmya8";
+    rev = "f5d53239f7658f8e8fbaf02535cc369009c436d6";
+    sha256 = "0sq2g3w0h3mkfa6qwqdw93chb5f1hgkz5vdl8yw8mxwdqwhsdprr";
   };
 
 in
 
 stdenv.mkDerivation rec {
   pname = "tmux";
-  version = "3.1b";
+  version = "3.1c";
 
   outputs = [ "out" "man" ];
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     owner = "tmux";
     repo = "tmux";
     rev = version;
-    sha256 = "0jvyq4r691bn0wsr8i6c0q0lzss25vm9nx8sv3fhw9cs63ncq04y";
+    sha256 = "1fqgpzfas85dn0sxlvvg6rj488jwgnxs8d3gqcm8lgs211m9qhcf";
   };
 
   nativeBuildInputs = [
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = "http://tmux.github.io/";
+    homepage = "https://tmux.github.io/";
     description = "Terminal multiplexer";
 
     longDescription =
diff --git a/pkgs/tools/misc/topgrade/default.nix b/pkgs/tools/misc/topgrade/default.nix
index b7b38766db383..9da96dd352f5a 100644
--- a/pkgs/tools/misc/topgrade/default.nix
+++ b/pkgs/tools/misc/topgrade/default.nix
@@ -1,21 +1,25 @@
-{ stdenv, lib, fetchFromGitHub, rustPlatform, Foundation }:
+{ stdenv, lib, fetchFromGitHub, rustPlatform, Foundation, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "topgrade";
-  version = "5.7.0";
+  version = "5.8.1";
 
   src = fetchFromGitHub {
     owner = "r-darwish";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0nxqi2rykfxhvn8jzprklsc47iilxp1pmm2f17ikfyf5dgi69whb";
+    sha256 = "0m3kqk0ghlpzysyql777jlk5c0nb36z44vabw6r0484fh5vncwrh";
   };
 
-  cargoSha256 = "05afmz2n006331hc8yi2mq9kj574xi1iq6gr983jj75ix7n40rgg";
+  cargoSha256 = "1h5cyiyhpagdin9a8gfsccbl4jahw33nbkg5m74axyp4qrfc1mkz";
 
   buildInputs = lib.optional stdenv.isDarwin Foundation;
 
-  # TODO: add manpage (topgrade.8) to postInstall on next update
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installManPage topgrade.8
+  '';
 
   meta = with lib; {
     description = "Upgrade all the things";
diff --git a/pkgs/tools/misc/up/default.nix b/pkgs/tools/misc/up/default.nix
index b3d275d3081d3..47c504cd1a71c 100644
--- a/pkgs/tools/misc/up/default.nix
+++ b/pkgs/tools/misc/up/default.nix
@@ -2,18 +2,16 @@
 
 buildGoModule rec {
   pname = "up";
-  version = "0.3.2";
-
-  patches = [ ./gomod.patch ];
+  version = "0.4";
 
   src = fetchFromGitHub {
     owner = "akavel";
     repo = "up";
     rev = "v${version}";
-    sha256 = "1psixyymk98z52yy92lwb75yfins45dw6rif9cxwd7yiascwg2if";
+    sha256 = "1j8fi14fiwjscfzdfjqxgavjadwvcm5mqr8fb7hx3jmxs4kl58bp";
   };
 
-  vendorSha256 = "1h3w4i7dyh6yagqmdclvflfq6fx0z880jdnpf28assv7fxd9rjsx";
+  vendorSha256 = "1q8wfsfl3rz698ck5q5s5z6iw9k134fxxvwipcp2b052n998rcrx";
 
   doCheck = false;
 
diff --git a/pkgs/tools/misc/up/gomod.patch b/pkgs/tools/misc/up/gomod.patch
deleted file mode 100644
index f894f14d21f13..0000000000000
--- a/pkgs/tools/misc/up/gomod.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/go.mod b/go.mod
-index ecbfe90..56a1409 100644
---- a/go.mod
-+++ b/go.mod
-@@ -1,11 +1,14 @@
- module github.com/akavel/up
- 
-+go 1.14
-+
- require (
--	github.com/gdamore/encoding v0.0.0-20151215212835-b23993cbb635
-+	github.com/gdamore/encoding v0.0.0-20151215212835-b23993cbb635 // indirect
- 	github.com/gdamore/tcell v0.0.0-20180924055237-493f3b46b3c2
--	github.com/lucasb-eyer/go-colorful v0.0.0-20170903184257-231272389856
-+	github.com/lucasb-eyer/go-colorful v0.0.0-20170903184257-231272389856 // indirect
- 	github.com/mattn/go-isatty v0.0.3
--	github.com/mattn/go-runewidth v0.0.2
-+	github.com/mattn/go-runewidth v0.0.2 // indirect
- 	github.com/spf13/pflag v1.0.3
--	golang.org/x/text v0.0.0-20171214130843-f21a4dfb5e38
-+	golang.org/x/sys v0.0.0-20200501145240-bc7a7d42d5c3 // indirect
-+	golang.org/x/text v0.0.0-20171214130843-f21a4dfb5e38 // indirect
- )
diff --git a/pkgs/tools/misc/yle-dl/default.nix b/pkgs/tools/misc/yle-dl/default.nix
index 00624a482c8ee..40bf214f4630d 100644
--- a/pkgs/tools/misc/yle-dl/default.nix
+++ b/pkgs/tools/misc/yle-dl/default.nix
@@ -1,29 +1,29 @@
-{ stdenv, fetchFromGitHub, rtmpdump, php, pythonPackages, ffmpeg_3 }:
+{ stdenv, fetchFromGitHub, rtmpdump, php, wget, python3Packages, ffmpeg_3 }:
 
-pythonPackages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "yle-dl";
-  version = "2.31";
+  version = "20201022";
 
   src = fetchFromGitHub {
     owner = "aajanki";
     repo = "yle-dl";
     rev = version;
-    sha256 = "0k93p9csyjm0w33diwl5s22kzs3g78jl3n9k8nxxpqrybfjl912f";
+    sha256 = "0p56pb3wxdzqgs4fsh4hn06xs0mgzgznqqr0bn2vkkkibnkr1asp";
   };
 
-  propagatedBuildInputs = with pythonPackages; [
-    lxml pyamf pycrypto requests future ffmpeg_3 setuptools
+  propagatedBuildInputs = with python3Packages; [
+    attrs ConfigArgParse ffmpeg_3 future lxml requests
   ];
-  pythonPath = [ rtmpdump php ];
+  pythonPath = [ rtmpdump php wget ];
 
   doCheck = false; # tests require network access
-  checkInputs = with pythonPackages; [ pytest pytestrunner ];
+  checkInputs = with python3Packages; [ ffmpeg_3 pytest pytestrunner ];
 
   meta = with stdenv.lib; {
     description = "Downloads videos from Yle (Finnish Broadcasting Company) servers";
     homepage = "https://aajanki.github.io/yle-dl/";
-    license = licenses.gpl3;
-    maintainers = [ maintainers.dezgeg ];
-    platforms = platforms.linux;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dezgeg SuperSandro2000 ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/misc/you-get/default.nix b/pkgs/tools/misc/you-get/default.nix
index 8314dc2c9a35a..155081db36a1b 100644
--- a/pkgs/tools/misc/you-get/default.nix
+++ b/pkgs/tools/misc/you-get/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonApplication rec {
   pname = "you-get";
-  version = "0.4.1456";
+  version = "0.4.1475";
 
   # Tests aren't packaged, but they all hit the real network so
   # probably aren't suitable for a build environment anyway.
@@ -10,7 +10,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "14miw5gmj571584rmdzjxf88icmb1psrsfbwpabn8blz8l5aq6bv";
+    sha256 = "432c04170bb5f4881ca6af9c802b6c90e81759811487b8d7918762dcd674697f";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/zoxide/default.nix b/pkgs/tools/misc/zoxide/default.nix
index 3e4cbfd843346..c5ca2965e9dda 100644
--- a/pkgs/tools/misc/zoxide/default.nix
+++ b/pkgs/tools/misc/zoxide/default.nix
@@ -1,11 +1,20 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , rustPlatform
 , withFzf ? true
 , fzf
+
+  # checkInputs
+, fish
+, powershell
+, shellcheck
+, shfmt
+, xonsh
+, zsh
 }:
 let
-  version = "0.4.3";
+  version = "0.5.0";
 in
 rustPlatform.buildRustPackage {
   pname = "zoxide";
@@ -15,15 +24,32 @@ rustPlatform.buildRustPackage {
     owner = "ajeetdsouza";
     repo = "zoxide";
     rev = "v${version}";
-    sha256 = "1ghdal6pqkp56rqawhj26ch1x4cvnjj032xz3626aiddqgn134zj";
+    sha256 = "143lh94mw31pm9q7ib63h2k842g3h222mdabhf25hpb19lka2w5y";
   };
 
+  # tests are broken on darwin
+  doCheck = !stdenv.isDarwin;
+
+  # fish needs a writable HOME for whatever reason
+  preCheck = ''
+    export HOME=$(mktemp -d)
+  '';
+
+  checkInputs = [
+    fish
+    powershell
+    shellcheck
+    shfmt
+    xonsh
+    zsh
+  ];
+
   postPatch = lib.optionalString withFzf ''
     substituteInPlace src/fzf.rs \
       --replace '"fzf"' '"${fzf}/bin/fzf"'
   '';
 
-  cargoSha256 = "0klnjmda77bq9i9f0rz48jzaw4rcf7hafcjjpb0i570d7hlxnwsr";
+  cargoSha256 = "05mp101yk1zkjj1gwbkldizq6f9f8089gqgvq42c4ngq88pc7v9a";
 
   meta = with lib; {
     description = "A fast cd command that learns your habits";
diff --git a/pkgs/tools/networking/bacnet-stack/default.nix b/pkgs/tools/networking/bacnet-stack/default.nix
new file mode 100644
index 0000000000000..596b30d03e899
--- /dev/null
+++ b/pkgs/tools/networking/bacnet-stack/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "bacnet-stack";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "bacnet-stack";
+    repo = "bacnet-stack";
+    rev = "bacnet-stack-${version}";
+    sha256 = "078p7qsy9v6fl7pzwgcr72pgjqxfxmfxyqajih2zqlb5g5sf88vh";
+  };
+
+  hardeningDisable = [ "all" ];
+
+  buildPhase = ''
+    make BUILD=debug BACNET_PORT=linux BACDL_DEFINE=-DBACDL_BIP=1 BACNET_DEFINES=" -DPRINT_ENABLED=1 -DBACFILE -DBACAPP_ALL -DBACNET_PROPERTY_LISTS"
+  '';
+
+  installPhase = ''
+    mkdir $out
+    cp -r bin $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "BACnet open source protocol stack for embedded systems, Linux, and Windows";
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ WhittlesJr ];
+  };
+}
diff --git a/pkgs/tools/networking/chrony/allow-clock_adjtime.patch b/pkgs/tools/networking/chrony/allow-clock_adjtime.patch
deleted file mode 100644
index 2fa3baca72210..0000000000000
--- a/pkgs/tools/networking/chrony/allow-clock_adjtime.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 0cf506c92967c84f9ed83ba9e1be946a7fda6425 Mon Sep 17 00:00:00 2001
-From: Miroslav Lichvar <mlichvar@redhat.com>
-Date: Mon, 2 Dec 2019 12:47:13 +0100
-Subject: sys_linux: allow clock_adjtime in seccomp filter
-
-The adjtimex() function in glibc was switched to the clock_adjtime
-system call.
-
-diff --git a/sys_linux.c b/sys_linux.c
-index 63eb8f1..fcf89c2 100644
---- a/sys_linux.c
-+++ b/sys_linux.c
-@@ -478,8 +478,8 @@ SYS_Linux_EnableSystemCallFilter(int level)
- {
-   const int syscalls[] = {
-     /* Clock */
--    SCMP_SYS(adjtimex), SCMP_SYS(clock_gettime), SCMP_SYS(gettimeofday),
--    SCMP_SYS(settimeofday), SCMP_SYS(time),
-+    SCMP_SYS(adjtimex), SCMP_SYS(clock_adjtime), SCMP_SYS(clock_gettime),
-+    SCMP_SYS(gettimeofday), SCMP_SYS(settimeofday), SCMP_SYS(time),
-     /* Process */
-     SCMP_SYS(clone), SCMP_SYS(exit), SCMP_SYS(exit_group), SCMP_SYS(getpid),
-     SCMP_SYS(getrlimit), SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
--- 
-cgit v0.10.2
-
diff --git a/pkgs/tools/networking/chrony/default.nix b/pkgs/tools/networking/chrony/default.nix
index 6c8254c797b7b..374036d11a448 100644
--- a/pkgs/tools/networking/chrony/default.nix
+++ b/pkgs/tools/networking/chrony/default.nix
@@ -1,27 +1,22 @@
 { stdenv, fetchurl, pkgconfig, libcap, readline, texinfo, nss, nspr
-, libseccomp, pps-tools }:
+, libseccomp, pps-tools, gnutls }:
 
 assert stdenv.isLinux -> libcap != null;
 
 stdenv.mkDerivation rec {
   pname = "chrony";
-  version = "3.5.1";
+  version = "4.0";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/chrony/${pname}-${version}.tar.gz";
-    sha256 = "19ywl8a3lb2id7lcna5hp2g4pjnfwdc9ihr0fk6i9m45vdq2za0v";
+    sha256 = "09f6w2x5h5kamb4rhcbaz911q1f730qdalgsn8s48yjyqlafl9xy";
   };
 
-  patches = [
-    ./allow-clock_adjtime.patch
-    ./fix-seccomp-build.patch
-  ];
-
   postPatch = ''
     patchShebangs test
   '';
 
-  buildInputs = [ readline texinfo nss nspr ]
+  buildInputs = [ readline texinfo nss nspr gnutls ]
     ++ stdenv.lib.optionals stdenv.isLinux [ libcap libseccomp pps-tools ];
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/tools/networking/chrony/fix-seccomp-build.patch b/pkgs/tools/networking/chrony/fix-seccomp-build.patch
deleted file mode 100644
index 6888e7efeb727..0000000000000
--- a/pkgs/tools/networking/chrony/fix-seccomp-build.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/sys_linux.c b/sys_linux.c
-index 898dc7a7f75..fcd334ecf03 100644
---- a/sys_linux.c
-+++ b/sys_linux.c
-@@ -503,7 +503,7 @@ SYS_Linux_EnableSystemCallFilter(int level)
-     SCMP_SYS(socketcall),
-     /* General I/O */
-     SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(openat), SCMP_SYS(pipe),
--    SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(ppoll), SCMP_SYS(pselect6), SCMP_SYS(read),
-+    SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(pselect6), SCMP_SYS(read),
-     SCMP_SYS(futex), SCMP_SYS(select), SCMP_SYS(set_robust_list), SCMP_SYS(write),
-     /* Miscellaneous */
-     SCMP_SYS(getrandom), SCMP_SYS(sysinfo), SCMP_SYS(uname),
diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix
index 36fc5583439fc..6d6c08a1efe0f 100644
--- a/pkgs/tools/networking/croc/default.nix
+++ b/pkgs/tools/networking/croc/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "croc";
-  version = "8.5.2";
+  version = "8.6.5";
 
   src = fetchFromGitHub {
     owner = "schollz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0i71p3cwm8w3zlw10if3cbpfb65rq407nw4yva1l58ck7sbp61ha";
+    sha256 = "1lzprv4qbmv2jjjp02z87819k54wdlsf8i6zvl3vchkqvygdkk6v";
   };
 
-  vendorSha256 = "0afg645hs7lf3036c2g6sn956zz9s08r747c0czb1aj0jrbf7fs8";
+  vendorSha256 = "02mai9bp9pizbq6b8dj05rngxp3lfm9gh37zs8jknx56gas90j9i";
 
   doCheck = false;
 
diff --git a/pkgs/tools/networking/mozwire/default.nix b/pkgs/tools/networking/mozwire/default.nix
index 3f50ed41f49cf..58afc833ea0ef 100644
--- a/pkgs/tools/networking/mozwire/default.nix
+++ b/pkgs/tools/networking/mozwire/default.nix
@@ -2,18 +2,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "MozWire";
-  version = "0.5.2";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "NilsIrl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0r3x8y1qxxkkac9lqgd0s339zbrm9zmir1f6qs0r5f0bw3ngzqc4";
+    sha256 = "01bj3c34x9ywxygsz4rdyw5gc9cz8x6zzl5fd7db8qy8bx2lhlr9";
   };
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "0hyps2wi4wmpllfams3p59jpccwa0ylgzxq7qdn6g6zvf0cajpc0";
+  cargoSha256 = "0yxnpnxwis46wz4j5rjzyyzrvh94hn8vzxmmrcmrdz3gkakg77hg";
 
   meta = with stdenv.lib; {
     description = "MozillaVPN configuration manager giving Linux, macOS users (among others), access to MozillaVPN";
diff --git a/pkgs/tools/package-management/cargo-audit/default.nix b/pkgs/tools/package-management/cargo-audit/default.nix
index 8fd5c38ed55ad..df492863a1426 100644
--- a/pkgs/tools/package-management/cargo-audit/default.nix
+++ b/pkgs/tools/package-management/cargo-audit/default.nix
@@ -1,16 +1,16 @@
 { stdenv, lib, rustPlatform, fetchFromGitHub, openssl, pkg-config, Security, libiconv }:
 rustPlatform.buildRustPackage rec {
   pname = "cargo-audit";
-  version = "0.12.1";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "RustSec";
     repo = "cargo-audit";
     rev = "v${version}";
-    sha256 = "1rhwr2wp4rl2acx4is8aajxd12haph2mdarr8qiwaimsawndaxrw";
+    sha256 = "1q8i2c3f8ir1pxkvla4dshz7n0cl97mjydc64xis5pph39f69yc1";
   };
 
-  cargoSha256 = "0m8za771b14vj5w3i906qwhcz43233fjsywlikfl0iv9n5m9k1ab";
+  cargoSha256 = "1b62mcj4gjz2arjf3r30k9qcg81i5x0149a4bfj39xdrz55gg0wh";
 
   buildInputs = [ openssl libiconv ] ++ lib.optionals stdenv.isDarwin [ Security ];
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/tools/package-management/emplace/default.nix b/pkgs/tools/package-management/emplace/default.nix
index c794566e19f1a..3356e7cf10219 100644
--- a/pkgs/tools/package-management/emplace/default.nix
+++ b/pkgs/tools/package-management/emplace/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "emplace";
-  version = "0.3.7";
+  version = "0.3.8";
 
   src = fetchFromGitHub {
     owner = "tversteeg";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ihx6hrzs7wkdz9wzgarmm73dz1fb2bhssmxrgv5nzmkhygn4xfy";
+    sha256 = "1g7xrsw0ji3nbrj1a2hywxwy7f33fgbvzp7k4l9ls2icg0xsw9a3";
   };
 
-  cargoSha256 = "0yqg2hagsjaxvrj96qg6k1llkmqdqp792c2844h7fhnhlx6v2wd2";
+  cargoSha256 = "1phr0k05dxwdhj1i71v8lr91qanjvp2zgi9wjpppzixpnpcsrbrb";
 
   meta = with lib; {
     description = "Mirror installed software on multiple machines";
diff --git a/pkgs/tools/security/1password-gui/default.nix b/pkgs/tools/security/1password-gui/default.nix
index c3d406ce3aada..b9e668aaa4035 100644
--- a/pkgs/tools/security/1password-gui/default.nix
+++ b/pkgs/tools/security/1password-gui/default.nix
@@ -13,11 +13,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "1password";
-  version = "0.9.0";
+  version = "0.9.1";
 
   src = fetchurl {
     url = "https://onepassword.s3.amazonaws.com/linux/appimage/${pname}-${version}.AppImage";
-    sha256 = "109jsls4515y78zhhsxqlgms30i5rzhi60p3b9wx6y8v0iq331wp";
+    sha256 = "04hv7hw4s3f65kf3ggh9l0nrx25k5yj2kqv83nl7pvam5lvnv8sz";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/cfssl/default.nix b/pkgs/tools/security/cfssl/default.nix
index 1aef7b5bd5677..d926aaca68fb4 100644
--- a/pkgs/tools/security/cfssl/default.nix
+++ b/pkgs/tools/security/cfssl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cfssl";
-  version = "1.4.1";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cfssl";
     rev = "v${version}";
-    sha256 = "07qacg95mbh94fv64y577zyr4vk986syf8h5l8lbcmpr0zcfk0pd";
+    sha256 = "1yzxz2l7h2d3f8j6l9xlm7g9659gsa17zf4q0883s0jh3l3xgs5n";
   };
 
   subPackages = [
diff --git a/pkgs/tools/security/lynis/default.nix b/pkgs/tools/security/lynis/default.nix
index d7f42479d0b40..9bbbc455b9b33 100644
--- a/pkgs/tools/security/lynis/default.nix
+++ b/pkgs/tools/security/lynis/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lynis";
-  version = "3.0.0";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
     owner = "CISOfy";
     repo = pname;
     rev = version;
-    sha256 = "05p8h2ww4jcc6lgxrm796cbvlfmw26rxq5fmw0xxavbpadiw752j";
+    sha256 = "0lsb455rimr1cjxqcgy819xjxf1faas8wlx2x0pxhn5yha9w9sfs";
   };
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
diff --git a/pkgs/tools/security/nmap/qt.nix b/pkgs/tools/security/nmap/qt.nix
index 2dcd7fed0c4b3..216186daa5be5 100644
--- a/pkgs/tools/security/nmap/qt.nix
+++ b/pkgs/tools/security/nmap/qt.nix
@@ -1,16 +1,24 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, wrapQtAppsHook
-, dnsutils, nmap
-, qtbase, qtscript, qtwebengine }:
+{ stdenv
+, fetchFromGitHub
+, cmake
+, pkgconfig
+, wrapQtAppsHook
+, dnsutils
+, nmap
+, qtbase
+, qtscript
+, qtwebengine
+}:
 
 stdenv.mkDerivation rec {
   pname = "nmapsi4";
-  version = "0.4.80-20180430";
+  version = "0.5-alpha2";
 
   src = fetchFromGitHub {
     owner = "nmapsi4";
     repo = "nmapsi4";
-    rev = "d7f18e4c1e38dcf9c29cb4496fe14f9ff172861a";
-    sha256 = "10wqyrjzmad1g7lqa65rymbkna028xbp4xcpj442skw8gyrs3994";
+    rev = "v${version}";
+    sha256 = "sha256-q3XfwJ4TGK4E58haN0Q0xRH4GDpKD8VZzyxHe/VwBqY=";
   };
 
   nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
@@ -47,7 +55,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Qt frontend for nmap";
-    license     = licenses.gpl2;
+    license = licenses.gpl2;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (src.meta) homepage;
   };
diff --git a/pkgs/tools/system/bpytop/default.nix b/pkgs/tools/system/bpytop/default.nix
index 8788080e998a3..e395b3c5d611e 100644
--- a/pkgs/tools/system/bpytop/default.nix
+++ b/pkgs/tools/system/bpytop/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bpytop";
-  version = "1.0.44";
+  version = "1.0.47";
 
   src = fetchFromGitHub {
     owner = "aristocratos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1fb7n0p364sj8pzsg35lrgl5wga3v4d0b4nynkfs5g8rfnmb0rr0";
+    sha256 = "1zsxqnisb9zyji6xwl4b7r722mr0g4hs3a74xsfghd5kafvgzj24";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/system/ctop/default.nix b/pkgs/tools/system/ctop/default.nix
index 6cb8e48216087..68e7562975f3f 100644
--- a/pkgs/tools/system/ctop/default.nix
+++ b/pkgs/tools/system/ctop/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ctop";
-  version = "0.7.3";
+  version = "0.7.4";
 
   src = fetchFromGitHub {
     owner = "bcicen";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0y72l65xgfqrgghzbm1zcy776l5m31z0gn6vfr689zyi3k3f4kh8";
+    sha256 = "0zslxd00pypn6ri7r420mqxjqy3i6qv944f7899saapsb2m08w7j";
   };
 
-  vendorSha256 = "1x4li44vg0l1x205v9a971cgphplxhsrn59q97gmj9cfy4m7jdfw";
+  vendorSha256 = "0a5rwnf251jbp7jz2ln8z9hqp0112c6kx0y09nncvlcki35qq9sh";
 
   doCheck = false;
 
diff --git a/pkgs/tools/system/hostctl/default.nix b/pkgs/tools/system/hostctl/default.nix
new file mode 100644
index 0000000000000..6f557e05cd122
--- /dev/null
+++ b/pkgs/tools/system/hostctl/default.nix
@@ -0,0 +1,36 @@
+{ buildGoModule, fetchFromGitHub, lib, installShellFiles }:
+
+buildGoModule rec {
+  pname = "hostctl";
+  version = "1.0.14";
+
+  src = fetchFromGitHub {
+    owner = "guumaster";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "02bjii97l4fy43v2rb93m9b0ad8y6mjvbvp4sz6a5n0w9dm1z1q9";
+  };
+
+  vendorSha256 = "1lqk3cda0frqp2vwkqa4b3xkdw814wgkbr7g9r2mwxn85fpdcq5c";
+
+  buildFlagsArray = [ "-ldflags=-s -w -X github.com/guumaster/hostctl/cmd/hostctl/actions.version=${version}" ];
+
+  nativeBuildInputs = [ installShellFiles ];
+  postInstall = ''
+    installShellCompletion --cmd hostctl \
+      --bash <($out/bin/hostctl completion bash) \
+      --zsh <($out/bin/hostctl completion zsh)
+  '';
+
+  meta = with lib; {
+    description = "Your dev tool to manage /etc/hosts like a pro!";
+    longDescription = ''
+      This tool gives you more control over the use of your hosts file.
+      You can have multiple profiles and switch them on/off as you need.
+    '';
+    homepage = "https://guumaster.github.io/hostctl/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ blaggacao ];
+  };
+}
+
diff --git a/pkgs/tools/system/zenith/default.nix b/pkgs/tools/system/zenith/default.nix
index 084dd044febaf..35498c4cb563c 100644
--- a/pkgs/tools/system/zenith/default.nix
+++ b/pkgs/tools/system/zenith/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zenith";
-  version = "0.10.1";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "bvaisvil";
     repo = pname;
     rev = version;
-    sha256 = "0jz0pjibjiyg0rjmpihxxjhg9cbccvqfr5si5rji585l0zrpdwsg";
+    sha256 = "1cxmgpq07q6vfasnkx3grpx1y0f0dg6irb9kdn17nwrypy44l92d";
   };
 
-  cargoSha256 = "1zkx6sr5xlj7pb91bxvqjib5awscy1rmv4g89xb76dahac8fan6z";
+  cargoSha256 = "1kgjj11fwvlk700yp9046b3kiq9ay47fiwqpqfhmlbxw3lsh8qvq";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ IOKit ];
 
diff --git a/pkgs/tools/text/ledger2beancount/default.nix b/pkgs/tools/text/ledger2beancount/default.nix
new file mode 100644
index 0000000000000..00cc996ed60c0
--- /dev/null
+++ b/pkgs/tools/text/ledger2beancount/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchFromGitHub, makeWrapper, perlPackages, beancount }:
+
+with stdenv.lib;
+
+let
+  perlDeps = with perlPackages; [
+    ConfigOnion DateCalc
+    FileBaseDir YAMLLibYAML
+    GetoptLongDescriptive DateTimeFormatStrptime
+    StringInterpolate
+  ];
+
+in stdenv.mkDerivation rec {
+  pname = "ledger2beancount";
+  version = "2.1";
+
+  src = fetchFromGitHub {
+    owner = "zacchiro";
+    repo = "ledger2beancount";
+    rev = "${version}";
+    sha256 = "0w88jb1x0w02jwwf6ipx3cxr89kzffrrdqws3556zrvvs01bh84j";
+  };
+
+  phases = [
+    "unpackPhase"
+    "installPhase"
+    "fixupPhase"
+  ];
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ perlPackages.perl beancount ] ++ perlDeps;
+
+  makeFlags = [ "prefix=$(out)" ];
+  installFlags = [ "INSTALL=install" ];
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r $src/bin $out/bin
+  '';
+
+  postFixup = ''
+    wrapProgram "$out/bin/ledger2beancount" \
+      --set PERL5LIB "${perlPackages.makeFullPerlPath perlDeps}"
+  '';
+
+  meta = {
+    description = "Ledger to Beancount text-based converter";
+    longDescription = ''
+      A script to automatically convert Ledger-based textual ledgers to Beancount ones.
+
+      Conversion is based on (concrete) syntax, so that information that is not meaningful for accounting reasons but still valuable (e.g., comments, formatting, etc.) can be preserved.
+    '';
+    homepage = "https://github.com/zacchiro/ledger2beancount";
+    license = licenses.gpl3Plus;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ pablovsky ];
+  };
+}
diff --git a/pkgs/tools/text/shfmt/default.nix b/pkgs/tools/text/shfmt/default.nix
index ec58cbdd1a945..1d1def43177c5 100644
--- a/pkgs/tools/text/shfmt/default.nix
+++ b/pkgs/tools/text/shfmt/default.nix
@@ -1,29 +1,28 @@
-{ lib, buildGoModule, fetchFromGitHub, fetchpatch }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles, scdoc }:
 
 buildGoModule rec {
   pname = "shfmt";
-  version = "3.1.2";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "mvdan";
     repo = "sh";
     rev = "v${version}";
-    sha256 = "03zgi0rlra3gz8cbqwmhpjxsg5048anfc6ccd2w50fjhx6farsnv";
+    sha256 = "1ybrx82c4djp7izyqhvzk0rcf9ac7nv5g5ahxr0k0jhm752ba5z2";
   };
 
-  vendorSha256 = "1jq2x4yxshsy4ahp7nrry8dc9cyjj46mljs447rq57sgix4ndpq8";
+  vendorSha256 = "1ma7nvyn6ylbi8bd7x900i94pzs877kfy9xh0nf1bbify1vcpd29";
 
   subPackages = [ "cmd/shfmt" ];
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
-  patches = [
-    # fix failing test on go 1.15, remove with > 3.1.2
-    (fetchpatch {
-      url = "https://github.com/mvdan/sh/commit/88956f97dae1f268af6c030bf2ba60762ebb488a.patch";
-      sha256 = "1zg8i7kklr12zjkaxh8djd2bzkdx8klgfj271r2wivkc2x61shgv";
-    })
-  ];
+  nativeBuildInputs = [ installShellFiles scdoc ];
+
+  postBuild = ''
+    scdoc < cmd/shfmt/shfmt.1.scd > shfmt.1
+    installManPage shfmt.1
+  '';
 
   meta = with lib; {
     homepage = "https://github.com/mvdan/sh";
diff --git a/pkgs/tools/text/vgrep/default.nix b/pkgs/tools/text/vgrep/default.nix
index 12880b2e4eca9..c51fce43467ed 100644
--- a/pkgs/tools/text/vgrep/default.nix
+++ b/pkgs/tools/text/vgrep/default.nix
@@ -1,20 +1,28 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, go-md2man, installShellFiles }:
 
 buildGoModule rec {
   pname = "vgrep";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "vrothberg";
     repo = pname;
     rev = "v${version}";
-    sha256 = "109j04my2xib8m52a0337996a27nvfgzackpg20zs3nzn66dmvb7";
+    sha256 = "1waxp66286q325avvsq58s8qkfjqa39s5p8c3z59scpm0244nr80";
   };
 
   vendorSha256 = null;
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
+  nativeBuildInputs = [ go-md2man installShellFiles ];
+
+  postBuild = ''
+    sed -i '/SHELL= /d' Makefile
+    make docs
+    installManPage docs/*.[1-9]
+  '';
+
   meta = with lib; {
     description = "User-friendly pager for grep/git-grep/ripgrep";
     homepage = "https://github.com/vrothberg/vgrep";
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 3538ac56ecfa1..4d5100f5f0cf4 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -41,6 +41,7 @@ mapAliases ({
   ag = silver-searcher; # added 2018-04-25
   aircrackng = aircrack-ng; # added 2016-01-14
   alienfx = throw "alienfx has been removed."; # added 2019-12-08
+  amazon-glacier-cmd-interface = throw "amazon-glacier-cmd-interface has been removed due to it being unmaintained."; # added 2020-10-30
   ammonite-repl = ammonite; # added 2017-05-02
   antimicro = throw "antimicro has been removed as it was broken, see antimicroX instead."; # added 2020-08-06
   arduino_core = arduino-core;  # added 2015-02-04
@@ -224,6 +225,7 @@ mapAliases ({
   kdecoration-viewer = throw "kdecoration-viewer has been removed from nixpkgs, as there is no upstream activity"; # 2020-06-16
   julia_07 = throw "julia_07 is deprecated in favor of julia_10 LTS"; # added 2020-09-15
   julia_11 = throw "julia_11 is deprecated in favor of latest Julia version"; # added 2020-09-15
+  kdeconnect = kdeApplications.kdeconnect-kde; # added 2020-10-28
   kdiff3-qt5 = kdiff3; # added 2017-02-18
   keepass-keefox = keepass-keepassrpc; # backwards compatibility alias, added 2018-02
   keepassx-community = keepassxc; # added 2017-11
@@ -526,6 +528,7 @@ mapAliases ({
   skrooge2 = skrooge; # added 2017-02-18
   sky = throw "sky has been removed from nixpkgs (2020-09-16)";
   skype = skypeforlinux; # added 2017-07-27
+  skype_call_recorder = throw "skype_call_recorder has been removed from nixpkgs, because it stopped working when classic Skype was retired."; # added 2020-10-31
   skydive = throw "skydive has been removed from nixpkgs (2019-09-10)";
   slack-dark = slack; # added 2020-03-27
   slic3r-prusa3d = prusa-slicer; # added 2019-05-21
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9bc2812f7cc90..002acf553a3b2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -140,10 +140,14 @@ in
 
   alda = callPackage ../development/interpreters/alda { };
 
+  among-sus = callPackage ../games/among-sus { };
+
   ankisyncd = callPackage ../servers/ankisyncd { };
 
   avro-tools = callPackage ../development/tools/avro-tools { };
 
+  bacnet-stack = callPackage ../tools/networking/bacnet-stack {};
+
   # Zip file format only allows times after year 1980, which makes e.g. Python wheel building fail with:
   # ValueError: ZIP does not support timestamps before 1980
   ensureNewerSourcesForZipFilesHook = ensureNewerSourcesHook { year = "1980"; };
@@ -669,11 +673,113 @@ in
 
   albert = libsForQt5.callPackage ../applications/misc/albert {};
 
-  alacritty = callPackage ../applications/misc/alacritty {
+  ### APPLICATIONS/TERMINAL-EMULATORS
+
+  alacritty = callPackage ../applications/terminal-emulators/alacritty {
     inherit (xorg) libXcursor libXxf86vm libXi;
     inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices CoreText Foundation OpenGL;
   };
 
+  aminal = callPackage ../applications/terminal-emulators/aminal {
+    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa Kernel;
+  };
+
+  cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
+
+  eterm = callPackage ../applications/terminal-emulators/eterm { };
+
+  evilvte = callPackage ../applications/terminal-emulators/evilvte (config.evilvte or {});
+
+  foot = callPackage ../applications/terminal-emulators/foot { };
+
+  guake = callPackage ../applications/terminal-emulators/guake { };
+
+  havoc = callPackage ../applications/terminal-emulators/havoc { };
+
+  hyper = callPackage ../applications/terminal-emulators/hyper { };
+
+  iterm2 = callPackage ../applications/terminal-emulators/iterm2 {};
+
+  kitty = callPackage ../applications/terminal-emulators/kitty {
+    harfbuzz = harfbuzz.override { withCoreText = stdenv.isDarwin; };
+    inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL;
+  };
+
+  lilyterm = callPackage ../applications/terminal-emulators/lilyterm {
+    inherit (gnome2) vte;
+    gtk = gtk2;
+    flavour = "stable";
+  };
+
+  lilyterm-git = lilyterm.override {
+    flavour = "git";
+  };
+
+  lxterminal = callPackage ../applications/terminal-emulators/lxterminal { };
+
+  microcom = callPackage ../applications/terminal-emulators/microcom { };
+
+  mlterm = callPackage ../applications/terminal-emulators/mlterm {
+    libssh2 = null;
+    openssl = null;
+  };
+
+  mrxvt = callPackage ../applications/terminal-emulators/mrxvt { };
+
+  nimmm = callPackage ../applications/terminal-emulators/nimmm { };
+
+  roxterm = callPackage ../applications/terminal-emulators/roxterm { };
+
+  rxvt = callPackage ../applications/terminal-emulators/rxvt { };
+
+  rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { };
+
+  rxvt-unicode-plugins = import ../applications/terminal-emulators/rxvt-unicode-plugins { inherit callPackage; };
+
+  rxvt-unicode-unwrapped = callPackage ../applications/terminal-emulators/rxvt-unicode { };
+
+  sakura = callPackage ../applications/terminal-emulators/sakura { };
+
+  st = callPackage ../applications/terminal-emulators/st {
+    conf = config.st.conf or null;
+    patches = config.st.patches or [];
+    extraLibs = config.st.extraLibs or [];
+  };
+  xst = callPackage ../applications/terminal-emulators/st/xst.nix { };
+
+  stupidterm = callPackage ../applications/terminal-emulators/stupidterm {
+    gtk = gtk3;
+  };
+
+  terminator = callPackage ../applications/terminal-emulators/terminator { };
+
+  terminus = callPackage ../applications/terminal-emulators/terminus { };
+
+  termite = callPackage ../applications/terminal-emulators/termite/wrapper.nix {
+    termite = termite-unwrapped;
+  };
+  termite-unwrapped = callPackage ../applications/terminal-emulators/termite { };
+
+  termonad-with-packages = callPackage ../applications/terminal-emulators/termonad {
+    inherit (haskellPackages) ghcWithPackages;
+  };
+
+  tilda = callPackage ../applications/terminal-emulators/tilda {
+    gtk = gtk3;
+  };
+
+  tilix = callPackage ../applications/terminal-emulators/tilix { };
+
+  wayst = callPackage ../applications/terminal-emulators/wayst { };
+
+  x3270 = callPackage ../applications/terminal-emulators/x3270 { };
+
+  xterm = callPackage ../applications/terminal-emulators/xterm { };
+
+  xtermcontrol = callPackage ../applications/terminal-emulators/xtermcontrol {};
+
+  yaft = callPackage ../applications/terminal-emulators/yaft { };
+
   aldo = callPackage ../applications/radio/aldo { };
 
   almanah = callPackage ../applications/misc/almanah { };
@@ -682,8 +788,6 @@ in
 
   amazon-ecs-cli = callPackage ../tools/virtualization/amazon-ecs-cli { };
 
-  amazon-glacier-cmd-interface = callPackage ../tools/backup/amazon-glacier-cmd-interface { };
-
   amber = callPackage ../tools/text/amber {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -1108,6 +1212,8 @@ in
 
   hime = callPackage ../tools/inputmethods/hime {};
 
+  hostctl = callPackage ../tools/system/hostctl { };
+
   hpe-ltfs = callPackage ../tools/backup/hpe-ltfs { };
 
   http2tcp = callPackage ../tools/networking/http2tcp { };
@@ -1224,7 +1330,7 @@ in
 
   aria2 = callPackage ../tools/networking/aria2 {
     inherit (darwin.apple_sdk.frameworks) Security;
-    inherit (pythonPackages) sphinx;
+    inherit (python3Packages) sphinx;
   };
   aria = aria2;
 
@@ -2750,16 +2856,13 @@ in
 
   circus = callPackage ../tools/networking/circus { };
 
-  citrix_workspace = citrix_workspace_20_09_0;
+  citrix_workspace = citrix_workspace_20_10_0;
 
   inherit (callPackage ../applications/networking/remote/citrix-workspace { })
-    citrix_workspace_19_6_0
-    citrix_workspace_19_8_0
-    citrix_workspace_19_10_0
-    citrix_workspace_19_12_0
     citrix_workspace_20_04_0
     citrix_workspace_20_06_0
     citrix_workspace_20_09_0
+    citrix_workspace_20_10_0
   ;
 
   citra = libsForQt5.callPackage ../misc/emulators/citra { };
@@ -2978,8 +3081,6 @@ in
 
   cpcfs = callPackage ../tools/filesystems/cpcfs { };
 
-  cool-retro-term = libsForQt5.callPackage ../applications/misc/cool-retro-term { };
-
   coreutils = callPackage ../tools/misc/coreutils { };
   coreutils-full = coreutils.override { minimal = false; };
   coreutils-prefixed = coreutils.override { withPrefix = true; singleBinary = false; };
@@ -3433,8 +3534,6 @@ in
 
   wayland-utils = callPackage ../tools/wayland/wayland-utils { };
 
-  wayst = callPackage ../applications/misc/wayst { };
-
   wev = callPackage ../tools/misc/wev { };
 
   wl-clipboard = callPackage ../tools/misc/wl-clipboard { };
@@ -5482,8 +5581,6 @@ in
 
   mgba = libsForQt5.callPackage ../misc/emulators/mgba { };
 
-  microcom = callPackage ../applications/misc/microcom { };
-
   microserver = callPackage ../servers/microserver { };
 
   midisheetmusic = callPackage ../applications/audio/midisheetmusic { };
@@ -5835,8 +5932,6 @@ in
 
   nilfs-utils = callPackage ../tools/filesystems/nilfs-utils {};
 
-  nimmm = callPackage ../applications/misc/nimmm { };
-
   nitrogen = callPackage ../tools/X11/nitrogen {};
 
   nms = callPackage ../tools/misc/nms { };
@@ -6735,7 +6830,7 @@ in
   rkrlv2 = callPackage ../applications/audio/rkrlv2 {};
 
   rmlint = callPackage ../tools/misc/rmlint {
-    inherit (pythonPackages) sphinx;
+    inherit (python3Packages) sphinx;
   };
 
   rng-tools = callPackage ../tools/security/rng-tools { };
@@ -7354,6 +7449,8 @@ in
 
   tarsnapper = callPackage ../tools/backup/tarsnapper { };
 
+  tarssh = callPackage ../servers/tarssh { };
+
   tartube = callPackage ../applications/video/tartube { };
 
   tayga = callPackage ../tools/networking/tayga { };
@@ -7450,8 +7547,6 @@ in
 
   tikzit = libsForQt5.callPackage ../tools/typesetting/tikzit { };
 
-  tilix = callPackage ../applications/misc/tilix { };
-
   tinc_pre = callPackage ../tools/networking/tinc/pre.nix {};
 
   tinycbor = callPackage ../development/libraries/tinycbor { };
@@ -7967,8 +8062,6 @@ in
 
   udunits = callPackage ../development/libraries/udunits { };
 
-  uemacs = callPackage ../applications/editors/uemacs { };
-
   uftp = callPackage ../servers/uftp {};
 
   uhttpmock = callPackage ../development/libraries/uhttpmock { };
@@ -8165,8 +8258,6 @@ in
 
   clipnotify = callPackage ../tools/misc/clipnotify { };
 
-  x3270 = callPackage ../applications/misc/x3270 { };
-
   xclip = callPackage ../tools/misc/xclip { };
 
   xcur2png = callPackage ../tools/graphics/xcur2png { };
@@ -8253,8 +8344,6 @@ in
 
   yafaray-core = callPackage ../tools/graphics/yafaray-core { };
 
-  yaft = callPackage ../applications/misc/yaft { };
-
   yarn = callPackage ../development/tools/yarn  { };
 
   yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea/yarn2nix { };
@@ -8330,6 +8419,8 @@ in
 
   zplug = callPackage ../shells/zsh/zplug { };
 
+  zplugin = callPackage ../shells/zsh/zplugin {} ;
+
   zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { };
 
   zsh-bd = callPackage ../shells/zsh/zsh-bd { };
@@ -8690,6 +8781,8 @@ in
   flutterPackages =
     recurseIntoAttrs (callPackage ../development/compilers/flutter { });
   flutter = flutterPackages.stable;
+  flutter-beta = flutterPackages.beta;
+  flutter-dev = flutterPackages.dev;
 
   fpc = callPackage ../development/compilers/fpc { };
 
@@ -9613,7 +9706,7 @@ in
   ocsigen-i18n = callPackage ../development/tools/ocaml/ocsigen-i18n { };
 
   opa = callPackage ../development/compilers/opa {
-    ocamlPackages = ocaml-ng.ocamlPackages_4_02;
+    ocamlPackages = ocaml-ng.ocamlPackages_4_03;
   };
 
   opaline = callPackage ../development/tools/ocaml/opaline { };
@@ -11989,8 +12082,6 @@ in
     aspell = aspell.override { searchNixProfiles = false; };
   };
 
-  attica = callPackage ../development/libraries/attica { };
-
   attr = callPackage ../development/libraries/attr { };
 
   at-spi2-core = callPackage ../development/libraries/at-spi2-core { };
@@ -14702,6 +14793,8 @@ in
 
   ntrack = callPackage ../development/libraries/ntrack { };
 
+  nuraft = callPackage ../development/libraries/nuraft { };
+
   nuspell = callPackage ../development/libraries/nuspell { };
   nuspellWithDicts = dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; };
 
@@ -16576,9 +16669,7 @@ in
 
   grafana = callPackage ../servers/monitoring/grafana { };
 
-  grafana-loki = callPackage ../servers/monitoring/loki {
-    buildGoPackage = buildGo114Package;
-  };
+  grafana-loki = callPackage ../servers/monitoring/loki { };
 
   grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { };
 
@@ -16623,6 +16714,8 @@ in
 
   imgproxy = callPackage ../servers/imgproxy { };
 
+  ircdog = callPackage ../applications/networking/irc/ircdog { };
+
   ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
 
   jboss = callPackage ../servers/http/jboss { };
@@ -17931,6 +18024,10 @@ in
     inherit kernel;
     inherit (kernel) stdenv; # in particular, use the same compiler by default
 
+    # to help determine module compatibility
+    inherit (kernel) isXen isZen isHardened isLibre;
+    inherit (kernel) kernelOlder kernelAtLeast;
+
     # Obsolete aliases (these packages do not depend on the kernel).
     inherit (pkgs) odp-dpdk pktgen; # added 2018-05
 
@@ -18194,6 +18291,7 @@ in
         kernelPatches.hardened.${kernel.meta.branch}
       ];
       modDirVersionArg = kernel.modDirVersion + "-hardened";
+      isHardened = true;
   });
 
   linuxPackages_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux { });
@@ -20136,6 +20234,8 @@ in
 
   clipgrab = libsForQt514.callPackage ../applications/video/clipgrab { };
 
+  clipcat = callPackage ../applications/misc/clipcat { };
+
   clipmenu = callPackage ../applications/misc/clipmenu { };
 
   clipit = callPackage ../applications/misc/clipit { };
@@ -20549,16 +20649,12 @@ in
 
   esniper = callPackage ../applications/networking/esniper { };
 
-  eterm = callPackage ../applications/misc/eterm { };
-
   eteroj.lv2 = libsForQt5.callPackage ../applications/audio/eteroj.lv2 { };
 
   etesync-dav = callPackage ../applications/misc/etesync-dav {};
 
   etherape = callPackage ../applications/networking/sniffers/etherape { };
 
-  evilvte = callPackage ../applications/misc/evilvte (config.evilvte or {});
-
   evilpixie = libsForQt514.callPackage ../applications/graphics/evilpixie { };
 
   exercism = callPackage ../applications/misc/exercism { };
@@ -20663,8 +20759,6 @@ in
 
   foo-yc20 = callPackage ../applications/audio/foo-yc20 { };
 
-  foot = callPackage ../applications/misc/foot { };
-
   fossil = callPackage ../applications/version-management/fossil { };
 
   freebayes = callPackage ../applications/science/biology/freebayes { };
@@ -20955,8 +21049,6 @@ in
 
   gcalcli = callPackage ../applications/misc/gcalcli { };
 
-  havoc = callPackage ../applications/misc/havoc { };
-
   vcal = callPackage ../applications/misc/vcal { };
 
   gcolor2 = callPackage ../applications/graphics/gcolor2 { };
@@ -20997,7 +21089,7 @@ in
 
   git-quick-stats = callPackage ../development/tools/git-quick-stats {};
 
-  git-review = callPackage ../applications/version-management/git-review { };
+  git-review = python3Packages.callPackage ../applications/version-management/git-review { };
 
   github-cli = gitAndTools.gh;
 
@@ -21174,8 +21266,6 @@ in
 
   gtk2fontsel = callPackage ../applications/misc/gtk2fontsel { };
 
-  guake = callPackage ../applications/misc/guake { };
-
   guardian-agent = callPackage ../tools/networking/guardian-agent { };
 
   guitone = callPackage ../applications/version-management/guitone {
@@ -21278,8 +21368,6 @@ in
 
   hydroxide = callPackage ../applications/networking/hydroxide { };
 
-  hyper = callPackage ../applications/misc/hyper { };
-
   hyper-haskell-server-with-packages = callPackage ../development/tools/haskell/hyper-haskell/server.nix {
     inherit (haskellPackages) ghcWithPackages;
     packages = self: with self; [];
@@ -21304,6 +21392,8 @@ in
 
   lwm = callPackage ../applications/window-managers/lwm { };
 
+  marker = callPackage ../applications/editors/marker { };
+
   musikcube = callPackage ../applications/audio/musikcube {};
 
   pinboard = with python3Packages; toPythonApplication pinboard;
@@ -21650,7 +21740,7 @@ in
     kaddressbook kalzium kapptemplate kapman kate katomic
     kblackbox kblocks kbounce
     kcachegrind kcalc kcharselect kcolorchooser
-    kdenlive kdf kdialog kdiamond
+    kdeconnect-kde kdenlive kdf kdialog kdiamond
     keditbookmarks
     kfind kfloppy
     kget kgpg
@@ -21675,8 +21765,6 @@ in
 
   k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { };
 
-  kdeconnect = libsForQt512.callPackage ../applications/misc/kdeconnect { };
-
   inherit (kdeFrameworks) kdesu;
 
   kdevelop-pg-qt = libsForQt514.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix { };
@@ -21723,11 +21811,6 @@ in
     ffmpeg = ffmpeg_2;
   };
 
-  kitty = callPackage ../applications/misc/kitty {
-    harfbuzz = harfbuzz.override { withCoreText = stdenv.isDarwin; };
-    inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL;
-  };
-
   kiwix = callPackage ../applications/misc/kiwix { };
 
   klayout = libsForQt5.callPackage ../applications/misc/klayout { };
@@ -21912,6 +21995,8 @@ in
 
   ledger-web = callPackage ../applications/office/ledger-web { };
 
+  ledger2beancount = callPackage ../tools/text/ledger2beancount { };
+
   lightburn = libsForQt5.callPackage ../applications/graphics/lightburn { };
 
   lighthouse = callPackage ../applications/misc/lighthouse { };
@@ -21957,16 +22042,6 @@ in
 
   jftui = callPackage ../applications/video/jftui { };
 
-  lilyterm = callPackage ../applications/misc/lilyterm {
-    inherit (gnome2) vte;
-    gtk = gtk2;
-    flavour = "stable";
-  };
-
-  lilyterm-git = lilyterm.override {
-    flavour = "git";
-  };
-
   lime = callPackage ../development/libraries/lime { };
 
   luakit = callPackage ../applications/networking/browsers/luakit {
@@ -22287,8 +22362,6 @@ in
 
   mrpeach = callPackage ../applications/audio/pd-plugins/mrpeach { };
 
-  mrxvt = callPackage ../applications/misc/mrxvt { };
-
   mtpaint = callPackage ../applications/graphics/mtpaint { };
 
   mu-repo = python3Packages.callPackage ../applications/misc/mu-repo { };
@@ -22787,6 +22860,10 @@ in
     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-libav;
   };
 
+  peaclock = callPackage ../applications/misc/peaclock {
+    stdenv = gccStdenv;
+  };
+
   peek = callPackage ../applications/video/peek { };
 
   pflask = callPackage ../os-specific/linux/pflask {};
@@ -22891,7 +22968,7 @@ in
 
   plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { };
 
-  plover = recurseIntoAttrs (libsForQt514.callPackage ../applications/misc/plover { });
+  plover = recurseIntoAttrs (libsForQt5.callPackage ../applications/misc/plover { });
 
   plugin-torture = callPackage ../applications/audio/plugin-torture { };
 
@@ -23238,14 +23315,6 @@ in
 
   runc = callPackage ../applications/virtualization/runc {};
 
-  rxvt = callPackage ../applications/misc/rxvt { };
-
-  rxvt-unicode = callPackage ../applications/misc/rxvt-unicode/wrapper.nix { };
-
-  rxvt-unicode-unwrapped = callPackage ../applications/misc/rxvt-unicode { };
-
-  rxvt-unicode-plugins = import ../applications/misc/rxvt-unicode-plugins { inherit callPackage; };
-
   uade123 = callPackage ../applications/audio/uade123 {};
 
   udevil = callPackage ../applications/misc/udevil {};
@@ -23254,8 +23323,6 @@ in
 
   sacc = callPackage ../applications/networking/gopher/sacc { };
 
-  sakura = callPackage ../applications/misc/sakura { };
-
   sameboy = callPackage ../misc/emulators/sameboy { };
 
   sayonara = libsForQt514.callPackage ../applications/audio/sayonara { };
@@ -23310,8 +23377,6 @@ in
 
   skype4pidgin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/skype4pidgin { };
 
-  skype_call_recorder = callPackage ../applications/networking/instant-messengers/skype-call-recorder { };
-
   SkypeExport = callPackage ../applications/networking/instant-messengers/SkypeExport { };
 
   slmenu = callPackage ../applications/misc/slmenu {};
@@ -23352,10 +23417,6 @@ in
     ncurses = ncurses5;
   };
 
-  stupidterm = callPackage ../applications/misc/stupidterm {
-    gtk = gtk3;
-  };
-
   styx = callPackage ../applications/misc/styx { };
 
   tecoc = callPackage ../applications/editors/tecoc { };
@@ -23366,21 +23427,13 @@ in
 
   sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { };
 
-  st = callPackage ../applications/misc/st {
-    conf = config.st.conf or null;
-    patches = config.st.patches or [];
-    extraLibs = config.st.extraLibs or [];
-  };
-
-  xst = callPackage ../applications/misc/st/xst.nix { };
-
   stag = callPackage ../applications/misc/stag {
     curses = ncurses;
   };
 
   stella = callPackage ../misc/emulators/stella { };
 
-  linuxstopmotion = callPackage ../applications/video/linuxstopmotion { };
+  linuxstopmotion = libsForQt5.callPackage ../applications/video/linuxstopmotion { };
 
   sweethome3d = recurseIntoAttrs (  (callPackage ../applications/misc/sweethome3d {
     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
@@ -23706,22 +23759,8 @@ in
 
   terminal-notifier = callPackage ../applications/misc/terminal-notifier {};
 
-  terminator = callPackage ../applications/misc/terminator { };
-
-  terminus = callPackage ../applications/misc/terminus { };
-
   tty-solitaire = callPackage ../applications/misc/tty-solitaire { };
 
-  lxterminal = callPackage ../applications/misc/lxterminal { };
-
-  aminal = callPackage ../applications/misc/aminal {
-    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa Kernel;
-  };
-
-  termite-unwrapped = callPackage ../applications/misc/termite { };
-
-  termite = callPackage ../applications/misc/termite/wrapper.nix { termite = termite-unwrapped; };
-
   termtosvg = callPackage ../tools/misc/termtosvg { };
 
   inherit (callPackage ../applications/graphics/tesseract {})
@@ -23765,10 +23804,6 @@ in
 
   tig = gitAndTools.tig;
 
-  tilda = callPackage ../applications/misc/tilda {
-    gtk = gtk3;
-  };
-
   timbreid = callPackage ../applications/audio/pd-plugins/timbreid {
     fftw = fftwSinglePrec;
   };
@@ -23975,8 +24010,11 @@ in
 
   vimpc = callPackage ../applications/audio/vimpc { };
 
-  wrapNeovim = callPackage ../applications/editors/neovim/wrapper.nix { };
-
+  # this is a lower-level alternative to wrapNeovim conceived to handle
+  # more usecases when wrapping neovim. The interface is being actively worked on
+  # so expect breakage. use wrapNeovim instead if you want a stable alternative
+  wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
+  wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
   neovim-unwrapped = callPackage ../applications/editors/neovim {
     lua =
       # neovim doesn't work with luajit on aarch64: https://github.com/neovim/neovim/issues/7879
@@ -23984,6 +24022,7 @@ in
       luajit;
   };
 
+  neovimUtils = callPackage ../applications/editors/neovim/utils.nix { };
   neovim = wrapNeovim neovim-unwrapped { };
 
   neovim-qt = libsForQt5.callPackage ../applications/editors/neovim/qt.nix { };
@@ -24618,19 +24657,6 @@ in
 
   xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { };
 
-  xterm = callPackage ../applications/misc/xterm { };
-
-  mlterm = callPackage ../applications/misc/mlterm {
-    libssh2 = null;
-    openssl = null;
-  };
-
-  roxterm = callPackage ../applications/misc/roxterm { };
-
-  termonad-with-packages = callPackage ../applications/misc/termonad {
-    inherit (haskellPackages) ghcWithPackages;
-  };
-
   xtrace = callPackage ../tools/X11/xtrace { };
 
   xtruss = callPackage ../tools/X11/xtruss { };
@@ -28158,8 +28184,6 @@ in
 
   imatix_gsl = callPackage ../development/tools/imatix_gsl {};
 
-  iterm2 = callPackage ../applications/misc/iterm2 {};
-
   sccache = callPackage ../development/tools/misc/sccache { };
 
   sequeler = callPackage ../applications/misc/sequeler { };
@@ -28223,8 +28247,6 @@ in
 
   houdini = callPackage ../applications/misc/houdini {};
 
-  xtermcontrol = callPackage ../applications/misc/xtermcontrol {};
-
   openfst = callPackage ../development/libraries/openfst {};
 
   opengrm-ngram = callPackage ../development/libraries/opengrm-ngram {};
@@ -28283,7 +28305,7 @@ in
   undervolt = callPackage ../os-specific/linux/undervolt { };
 
   alibuild = callPackage ../development/tools/build-managers/alibuild {
-    python = python27;
+    python = python3;
   };
 
   tsung = callPackage ../applications/networking/tsung {};
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 76e391213c3e5..123f7484a79a7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -14570,6 +14570,27 @@ let
     };
   };
 
+  NetAsyncHTTP = buildPerlModule {
+    pname = "Net-Async-HTTP";
+    version = "0.47";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/P/PE/PEVANS/Net-Async-HTTP-0.47.tar.gz";
+      sha256 = "1lwy1ijrhibi087p3q5zvadhkq0slfrzfhb76cmkx4mpyv5v4l8f";
+    };
+    buildInputs = [ HTTPCookies TestIdentity TestMetricsAny TestRefcount ];
+    propagatedBuildInputs = [ Future HTTPMessage IOAsync MetricsAny StructDumb URI ];
+    preCheck = stdenv.lib.optionalString stdenv.isDarwin ''
+      # network tests fail on Darwin/sandbox, so disable these
+      rm -f t/20local-connect.t t/22local-connect-pipeline.t t/23local-connect-redir.t
+      rm -f t/90rt75615.t t/90rt75616.t t/90rt93232.t
+    '';
+    meta = {
+      description = "Use HTTP with IO::Async";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+      maintainers = [ maintainers.zakame ];
+    };
+  };
+
   NetAsyncPing = buildPerlPackage {
     pname = "Net-Async-Ping";
     version = "0.004001";
@@ -14586,6 +14607,25 @@ let
     };
   };
 
+  NetAsyncWebSocket = buildPerlModule {
+    pname = "Net-Async-WebSocket";
+    version = "0.13";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/P/PE/PEVANS/Net-Async-WebSocket-0.13.tar.gz";
+      sha256 = "000nw7gnj7ks55nib3fiikxx9bfmbla6fimxrbn2z2n7sd187b0d";
+    };
+    propagatedBuildInputs = [ IOAsync ProtocolWebSocket URI ];
+    preCheck = stdenv.lib.optionalString stdenv.isDarwin ''
+      # network tests fail on Darwin/sandbox, so disable these
+      rm -f t/02server.t t/03cross.t
+    '';
+    meta = {
+      description = "Use WebSockets with IO::Async";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+      maintainers = [ maintainers.zakame ];
+    };
+  };
+
   NetAMQP = buildPerlModule {
     pname = "Net-AMQP";
     version = "0.06";
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 41a384579b109..cc9314d8434ae 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -322,6 +322,8 @@ in {
 
   antlr4-python3-runtime = callPackage ../development/python-modules/antlr4-python3-runtime { antlr4 = pkgs.antlr4; };
 
+  anyio = callPackage ../development/python-modules/anyio { };
+
   anyjson = callPackage ../development/python-modules/anyjson { };
 
   anytree = callPackage ../development/python-modules/anytree { inherit (pkgs) graphviz; };
@@ -426,10 +428,14 @@ in {
 
   async_generator = callPackage ../development/python-modules/async_generator { };
 
+  asyncio-throttle = callPackage ../development/python-modules/asyncio-throttle { };
+
   asyncpg = callPackage ../development/python-modules/asyncpg { };
 
   asyncssh = callPackage ../development/python-modules/asyncssh { };
 
+  async_stagger = callPackage ../development/python-modules/async_stagger { };
+
   asynctest = callPackage ../development/python-modules/asynctest { };
 
   async-timeout = callPackage ../development/python-modules/async_timeout { };
@@ -2985,6 +2991,12 @@ in {
 
   irc = callPackage ../development/python-modules/irc { };
 
+  ircrobots = callPackage ../development/python-modules/ircrobots { };
+
+  ircstates = callPackage ../development/python-modules/ircstates { };
+
+  irctokens = callPackage ../development/python-modules/irctokens { };
+
   isbnlib = callPackage ../development/python-modules/isbnlib { };
 
   islpy = callPackage ../development/python-modules/islpy { };
@@ -7177,7 +7189,10 @@ in {
 
   tomlkit = callPackage ../development/python-modules/tomlkit { };
 
-  toolz = callPackage ../development/python-modules/toolz { };
+  toolz = if isPy3k then
+    callPackage ../development/python-modules/toolz { }
+  else
+    callPackage ../development/python-modules/toolz/2.nix { };
 
   toposort = callPackage ../development/python-modules/toposort { };