summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Rammhold <andreas@rammhold.de>2020-10-28 03:00:32 +0100
committerAndreas Rammhold <andreas@rammhold.de>2020-10-28 03:03:27 +0100
commitdb0fe5c3eb1d680fb8c635f8e327c412528eba90 (patch)
treeeb73686ee894bbc2d528824803dacf5bc914f28f
parent5d03fe6ac4b2e5e4132bb6f893380544ae2cf008 (diff)
parentc127653b72574199463a73a56e1809223eaec0df (diff)
downloadnixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar.gz
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar.bz2
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar.lz
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar.xz
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.tar.zst
nixpkgs-db0fe5c3eb1d680fb8c635f8e327c412528eba90.zip
Merge branch master into staging to fix eval error
This fixes the eval error of the small (and "big"?) NixOS test set that
was fixed in 1088f05 & eba8f542.
-rw-r--r--.github/CONTRIBUTING.md4
-rw-r--r--.github/STALE-BOT.md34
-rw-r--r--.github/stale.yml37
-rw-r--r--README.md4
-rw-r--r--lib/debug.nix32
-rw-r--r--lib/default.nix40
-rw-r--r--lib/lists.nix2
-rw-r--r--lib/modules.nix57
-rw-r--r--lib/options.nix41
-rw-r--r--lib/sources.nix40
-rw-r--r--lib/strings-with-deps.nix13
-rw-r--r--lib/strings.nix64
-rw-r--r--lib/types.nix65
-rw-r--r--maintainers/maintainer-list.nix12
-rwxr-xr-xmaintainers/scripts/hydra-eval-failures.py2
-rw-r--r--nixos/doc/manual/configuration/user-mgmt.xml2
-rw-r--r--nixos/doc/manual/installation/upgrading.xml16
-rw-r--r--nixos/doc/manual/release-notes/rl-2009.xml801
-rw-r--r--nixos/lib/test-driver/test-driver.py2
-rw-r--r--nixos/lib/testing-python.nix266
-rw-r--r--nixos/modules/config/system-path.nix1
-rw-r--r--nixos/modules/config/users-groups.nix3
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix9
-rw-r--r--nixos/modules/installer/tools/nixos-build-vms/build-vms.nix9
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/programs/wshowkeys.nix22
-rw-r--r--nixos/modules/security/pam.nix45
-rw-r--r--nixos/modules/services/backup/syncoid.nix52
-rw-r--r--nixos/modules/services/desktops/flatpak.nix14
-rw-r--r--nixos/modules/services/networking/avahi-daemon.nix3
-rw-r--r--nixos/modules/services/networking/dnscrypt-wrapper.nix5
-rw-r--r--nixos/modules/services/networking/mosquitto.nix36
-rw-r--r--nixos/modules/services/web-apps/engelsystem.nix2
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix4
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix25
-rw-r--r--nixos/modules/services/x11/desktop-managers/pantheon.nix1
-rw-r--r--nixos/modules/testing/test-instrumentation.nix24
-rw-r--r--nixos/modules/virtualisation/ec2-amis.nix21
-rw-r--r--nixos/tests/bitcoind.nix8
-rw-r--r--nixos/tests/caddy.nix6
-rw-r--r--nixos/tests/cadvisor.nix6
-rw-r--r--nixos/tests/cfssl.nix2
-rw-r--r--nixos/tests/convos.nix2
-rw-r--r--nixos/tests/corerad.nix2
-rw-r--r--nixos/tests/docker-edge.nix4
-rw-r--r--nixos/tests/docker-tools.nix2
-rw-r--r--nixos/tests/go-neb.nix2
-rw-r--r--nixos/tests/hadoop/hdfs.nix4
-rw-r--r--nixos/tests/hadoop/yarn.nix4
-rw-r--r--nixos/tests/haproxy.nix6
-rw-r--r--nixos/tests/hitch/default.nix2
-rw-r--r--nixos/tests/hound.nix2
-rw-r--r--nixos/tests/leaps.nix2
-rw-r--r--nixos/tests/limesurvey.nix2
-rw-r--r--nixos/tests/mailcatcher.nix2
-rw-r--r--nixos/tests/matrix-synapse.nix4
-rw-r--r--nixos/tests/mediawiki.nix2
-rw-r--r--nixos/tests/metabase.nix2
-rw-r--r--nixos/tests/morty.nix2
-rw-r--r--nixos/tests/neo4j.nix2
-rw-r--r--nixos/tests/nzbget.nix2
-rw-r--r--nixos/tests/oci-containers.nix2
-rw-r--r--nixos/tests/osrm-backend.nix4
-rw-r--r--nixos/tests/paperless.nix6
-rw-r--r--nixos/tests/peerflix.nix2
-rw-r--r--nixos/tests/php/fpm.nix2
-rw-r--r--nixos/tests/php/httpd.nix2
-rw-r--r--nixos/tests/php/pcre.nix2
-rw-r--r--nixos/tests/prometheus.nix4
-rw-r--r--nixos/tests/sanoid.nix9
-rw-r--r--nixos/tests/service-runner.nix2
-rw-r--r--nixos/tests/spacecookie.nix4
-rw-r--r--nixos/tests/sslh.nix2
-rw-r--r--nixos/tests/sympa.nix2
-rw-r--r--nixos/tests/syncthing-relay.nix2
-rw-r--r--nixos/tests/syncthing.nix4
-rw-r--r--nixos/tests/trac.nix2
-rw-r--r--nixos/tests/trezord.nix2
-rw-r--r--nixos/tests/trickster.nix8
-rw-r--r--nixos/tests/upnp.nix2
-rw-r--r--nixos/tests/uwsgi.nix2
-rw-r--r--nixos/tests/victoriametrics.nix6
-rw-r--r--nixos/tests/web-servers/unit-php.nix2
-rw-r--r--nixos/tests/wordpress.nix2
-rw-r--r--pkgs/applications/audio/asunder/default.nix4
-rw-r--r--pkgs/applications/audio/ecasound/default.nix2
-rw-r--r--pkgs/applications/audio/eflite/default.nix2
-rw-r--r--pkgs/applications/audio/geonkick/default.nix20
-rw-r--r--pkgs/applications/audio/ncspot/default.nix6
-rw-r--r--pkgs/applications/audio/picard/default.nix4
-rw-r--r--pkgs/applications/audio/picoloop/default.nix2
-rw-r--r--pkgs/applications/blockchains/exodus/default.nix4
-rw-r--r--pkgs/applications/blockchains/sumokoin.nix2
-rw-r--r--pkgs/applications/editors/geany/default.nix4
-rw-r--r--pkgs/applications/editors/glow/default.nix6
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix40
-rw-r--r--pkgs/applications/editors/kile/default.nix2
-rw-r--r--pkgs/applications/graphics/gnuclad/default.nix2
-rw-r--r--pkgs/applications/graphics/krita/default.nix4
-rw-r--r--pkgs/applications/graphics/lightburn/default.nix2
-rw-r--r--pkgs/applications/graphics/xournalpp/default.nix8
-rw-r--r--pkgs/applications/kde/bomber.nix2
-rw-r--r--pkgs/applications/kde/granatier.nix2
-rw-r--r--pkgs/applications/kde/kalzium.nix2
-rw-r--r--pkgs/applications/kde/kapman.nix2
-rw-r--r--pkgs/applications/kde/katomic.nix2
-rw-r--r--pkgs/applications/kde/kblackbox.nix2
-rw-r--r--pkgs/applications/kde/kblocks.nix2
-rw-r--r--pkgs/applications/kde/kbounce.nix2
-rw-r--r--pkgs/applications/kde/kdiamond.nix2
-rw-r--r--pkgs/applications/kde/kfloppy.nix2
-rw-r--r--pkgs/applications/kde/klettres.nix2
-rw-r--r--pkgs/applications/kde/klines.nix2
-rw-r--r--pkgs/applications/kde/kmag.nix2
-rw-r--r--pkgs/applications/kde/kmines.nix2
-rw-r--r--pkgs/applications/kde/knetwalk.nix2
-rw-r--r--pkgs/applications/kde/knights.nix2
-rw-r--r--pkgs/applications/kde/kollision.nix2
-rw-r--r--pkgs/applications/kde/kreversi.nix2
-rw-r--r--pkgs/applications/kde/kshisen.nix2
-rw-r--r--pkgs/applications/kde/ksquares.nix2
-rw-r--r--pkgs/applications/kde/kteatime.nix2
-rw-r--r--pkgs/applications/kde/ktimer.nix2
-rw-r--r--pkgs/applications/kde/kturtle.nix2
-rw-r--r--pkgs/applications/kde/kwave.nix2
-rw-r--r--pkgs/applications/misc/corectrl/default.nix74
-rw-r--r--pkgs/applications/misc/dockbarx/default.nix2
-rw-r--r--pkgs/applications/misc/electron-cash/default.nix6
-rw-r--r--pkgs/applications/misc/fsv/default.nix4
-rw-r--r--pkgs/applications/misc/grsync/default.nix2
-rw-r--r--pkgs/applications/misc/heimer/default.nix4
-rw-r--r--pkgs/applications/misc/icesl/default.nix2
-rw-r--r--pkgs/applications/misc/j4-dmenu-desktop/default.nix4
-rw-r--r--pkgs/applications/misc/kanboard/default.nix4
-rw-r--r--pkgs/applications/misc/keepassx/community.nix4
-rw-r--r--pkgs/applications/misc/libosmocore/default.nix2
-rw-r--r--pkgs/applications/misc/mapproxy/default.nix2
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix4
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix4
-rw-r--r--pkgs/applications/misc/nwg-launchers/default.nix4
-rw-r--r--pkgs/applications/misc/obsidian/default.nix6
-rw-r--r--pkgs/applications/misc/opentx/default.nix4
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix8
-rw-r--r--pkgs/applications/misc/prusa-slicer/super-slicer.nix4
-rw-r--r--pkgs/applications/misc/rsibreak/default.nix2
-rw-r--r--pkgs/applications/misc/ssw/default.nix4
-rw-r--r--pkgs/applications/misc/xmenu/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helmfile/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helmsman/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/jx/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kops/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/prow/default.nix2
-rw-r--r--pkgs/applications/networking/google-drive-ocamlfuse/default.nix20
-rw-r--r--pkgs/applications/networking/instant-messengers/ferdi/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/gomuks/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/ssh-chat/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/aerc/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/inboxer/default.nix4
-rw-r--r--pkgs/applications/networking/nym/default.nix29
-rw-r--r--pkgs/applications/networking/sync/rclone/default.nix4
-rw-r--r--pkgs/applications/networking/sync/rsync/default.nix10
-rw-r--r--pkgs/applications/office/fava/default.nix4
-rw-r--r--pkgs/applications/office/paperless/python-modules/default.nix2
-rw-r--r--pkgs/applications/radio/gqrx/default.nix4
-rw-r--r--pkgs/applications/radio/urh/default.nix4
-rw-r--r--pkgs/applications/science/biology/dcm2niix/default.nix2
-rw-r--r--pkgs/applications/science/biology/kallisto/default.nix2
-rw-r--r--pkgs/applications/science/electronics/openhantek6022/default.nix4
-rw-r--r--pkgs/applications/science/logic/coq2html/default.nix4
-rw-r--r--pkgs/applications/science/logic/ott/default.nix2
-rw-r--r--pkgs/applications/science/machine-learning/labelimg/default.nix2
-rw-r--r--pkgs/applications/science/math/R/default.nix4
-rw-r--r--pkgs/applications/science/math/bliss/default.nix2
-rw-r--r--pkgs/applications/science/math/maxima/5.41.nix102
-rw-r--r--pkgs/applications/science/math/maxima/known-ecl-failures.patch21
-rw-r--r--pkgs/applications/science/math/rofi-calc/default.nix6
-rw-r--r--pkgs/applications/science/misc/openmodelica/default.nix2
-rw-r--r--pkgs/applications/science/programming/scyther/default.nix2
-rw-r--r--pkgs/applications/system/glances/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-absorb/default.nix6
-rw-r--r--pkgs/applications/video/kodi/default.nix4
-rw-r--r--pkgs/applications/video/lightworks/default.nix4
-rw-r--r--pkgs/applications/video/mjpg-streamer/default.nix2
-rw-r--r--pkgs/applications/video/mkclean/default.nix2
-rw-r--r--pkgs/applications/video/streamlink-twitch-gui/bin.nix4
-rw-r--r--pkgs/applications/virtualization/docker/default.nix16
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix7
-rw-r--r--pkgs/applications/virtualization/virtualbox/extpack.nix2
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix2
-rw-r--r--pkgs/applications/window-managers/i3/wmfocus.nix8
-rw-r--r--pkgs/applications/window-managers/leftwm/default.nix2
-rw-r--r--pkgs/data/fonts/merriweather/default.nix2
-rw-r--r--pkgs/data/themes/matcha/default.nix4
-rw-r--r--pkgs/desktops/cdesktopenv/default.nix1
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix2
-rw-r--r--pkgs/desktops/cinnamon/cjs/default.nix12
-rw-r--r--pkgs/desktops/lxde/core/lxrandr/default.nix2
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard/wrapper.nix5
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix6
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix2
-rw-r--r--pkgs/development/compilers/dtc/default.nix1
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix3
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix2
-rw-r--r--pkgs/development/compilers/miranda/default.nix2
-rw-r--r--pkgs/development/compilers/mlkit/default.nix4
-rw-r--r--pkgs/development/compilers/stalin/default.nix2
-rw-r--r--pkgs/development/compilers/zulu/8.nix6
-rw-r--r--pkgs/development/compilers/zulu/default.nix6
-rw-r--r--pkgs/development/go-modules/generic/default.nix33
-rw-r--r--pkgs/development/java-modules/maven-minimal.nix5
-rw-r--r--pkgs/development/java-modules/maven/compiler-plugin.nix14
-rw-r--r--pkgs/development/java-modules/plexus/compiler-api.nix11
-rw-r--r--pkgs/development/java-modules/plexus/compiler-javac.nix11
-rw-r--r--pkgs/development/java-modules/plexus/compiler-manager.nix11
-rw-r--r--pkgs/development/java-modules/poms.nix40
-rw-r--r--pkgs/development/libraries/belr/default.nix2
-rw-r--r--pkgs/development/libraries/boxfort/default.nix32
-rw-r--r--pkgs/development/libraries/bzrtp/default.nix2
-rw-r--r--pkgs/development/libraries/duckdb/default.nix2
-rw-r--r--pkgs/development/libraries/igraph/default.nix4
-rw-r--r--pkgs/development/libraries/liberfa/default.nix4
-rw-r--r--pkgs/development/libraries/libfishsound/default.nix3
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix4
-rw-r--r--pkgs/development/libraries/libstroke/default.nix2
-rw-r--r--pkgs/development/libraries/libthreadar/default.nix3
-rw-r--r--pkgs/development/libraries/liburing/default.nix3
-rw-r--r--pkgs/development/libraries/libxls/default.nix4
-rw-r--r--pkgs/development/libraries/martyr/default.nix2
-rw-r--r--pkgs/development/libraries/matio/default.nix4
-rw-r--r--pkgs/development/libraries/newt/default.nix12
-rw-r--r--pkgs/development/libraries/noise-suppression-for-voice/default.nix26
-rw-r--r--pkgs/development/libraries/oneDNN/default.nix4
-rw-r--r--pkgs/development/libraries/physics/qcdnum/default.nix2
-rw-r--r--pkgs/development/libraries/pupnp/default.nix2
-rw-r--r--pkgs/development/libraries/redkite/default.nix12
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix16
-rw-r--r--pkgs/development/libraries/science/math/openlibm/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/parmetis/default.nix2
-rw-r--r--pkgs/development/libraries/sope/default.nix2
-rw-r--r--pkgs/development/libraries/symengine/default.nix2
-rw-r--r--pkgs/development/libraries/x265/default.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/access.nix39
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/arnesi.nix34
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dot.nix25
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-locale.nix37
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-qprint.nix28
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-slice.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clunit.nix24
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/djula.nix53
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-csv.nix24
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-mop.nix28
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/gettext.nix30
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/inferior-shell.nix54
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/more-conditions.nix34
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/net-telent-date.nix25
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/parser-combinators.nix30
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/parser_dot_common-rules.nix34
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix48
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix42
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date-time.nix25
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/unix-options.nix25
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix30
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-tree.nix31
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/uuid.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/xml_dot_location.nix47
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix15
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt96
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix.nix2072
-rw-r--r--pkgs/development/mobile/cocoapods/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/janestreet/0.13.nix66
-rw-r--r--pkgs/development/ocaml-modules/janestreet/sexp.patch30
-rw-r--r--pkgs/development/ocaml-modules/mirage-block/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/mirage-net/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/mirage/runtime.nix6
-rw-r--r--pkgs/development/ocaml-modules/parse-argv/default.nix28
-rw-r--r--pkgs/development/python-modules/binwalk/default.nix4
-rw-r--r--pkgs/development/python-modules/buildbot/default.nix2
-rw-r--r--pkgs/development/python-modules/dask/default.nix7
-rw-r--r--pkgs/development/python-modules/debugpy/default.nix11
-rw-r--r--pkgs/development/python-modules/django-oauth-toolkit/default.nix4
-rw-r--r--pkgs/development/python-modules/django/2.nix (renamed from pkgs/development/python-modules/django/2_2.nix)0
-rw-r--r--pkgs/development/python-modules/django/3.nix48
-rw-r--r--pkgs/development/python-modules/django/django_3_set_geos_gdal_lib.patch24
-rw-r--r--pkgs/development/python-modules/docutils/default.nix2
-rw-r--r--pkgs/development/python-modules/graspologic/default.nix (renamed from pkgs/development/python-modules/graspy/default.nix)8
-rw-r--r--pkgs/development/python-modules/myfitnesspal/default.nix17
-rw-r--r--pkgs/development/python-modules/pc-ble-driver-py/default.nix3
-rw-r--r--pkgs/development/python-modules/pinboard/default.nix23
-rw-r--r--pkgs/development/python-modules/protobuf/default.nix12
-rw-r--r--pkgs/development/python-modules/python-rtmidi/default.nix4
-rw-r--r--pkgs/development/python-modules/rich/default.nix4
-rw-r--r--pkgs/development/python-modules/shapely/default.nix4
-rw-r--r--pkgs/development/python-modules/shapely/library-paths.patch10
-rw-r--r--pkgs/development/python-modules/xdot/default.nix2
-rw-r--r--pkgs/development/python-modules/yamale/default.nix2
-rw-r--r--pkgs/development/python-modules/zigpy-cc/default.nix46
-rw-r--r--pkgs/development/python-modules/zigpy-xbee/default.nix44
-rw-r--r--pkgs/development/python-modules/zigpy-zigate/default.nix46
-rw-r--r--pkgs/development/python-modules/zigpy-znp/default.nix55
-rw-r--r--pkgs/development/python-modules/zigpy/default.nix46
-rw-r--r--pkgs/development/tools/analysis/coz/default.nix2
-rw-r--r--pkgs/development/tools/analysis/pev/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bloop/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix10
-rw-r--r--pkgs/development/tools/database/ephemeralpg/default.nix6
-rw-r--r--pkgs/development/tools/deadcode/default.nix2
-rw-r--r--pkgs/development/tools/errcheck/default.nix2
-rw-r--r--pkgs/development/tools/gllvm/default.nix4
-rw-r--r--pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--pkgs/development/tools/impl/default.nix2
-rw-r--r--pkgs/development/tools/jbake/default.nix2
-rw-r--r--pkgs/development/tools/minizinc/default.nix2
-rw-r--r--pkgs/development/tools/misc/cli11/default.nix2
-rw-r--r--pkgs/development/tools/misc/reviewdog/default.nix6
-rw-r--r--pkgs/development/tools/misc/swig/3.x.nix2
-rw-r--r--pkgs/development/tools/nsis/default.nix2
-rw-r--r--pkgs/development/tools/omniorb/default.nix2
-rw-r--r--pkgs/development/tools/pgloader/default.nix2
-rw-r--r--pkgs/development/tools/reftools/default.nix2
-rw-r--r--pkgs/development/tools/sourcetrail/default.nix252
-rw-r--r--pkgs/development/tools/sourcetrail/disable-failing-tests.patch48
-rw-r--r--pkgs/development/tools/sourcetrail/disable-updates.patch13
-rw-r--r--pkgs/development/tools/sourcetrail/java.nix27
-rw-r--r--pkgs/development/tools/sourcetrail/jedi.nix36
-rw-r--r--pkgs/development/tools/sourcetrail/parso.nix29
-rw-r--r--pkgs/development/tools/sourcetrail/python.nix68
-rw-r--r--pkgs/development/tools/xqilla/default.nix2
-rw-r--r--pkgs/development/web/insomnia/default.nix4
-rw-r--r--pkgs/development/web/lucky-cli/default.nix4
-rw-r--r--pkgs/development/web/newman/default.nix2
-rw-r--r--pkgs/games/chessx/default.nix2
-rw-r--r--pkgs/games/easyrpg-player/default.nix4
-rw-r--r--pkgs/games/lugaru/default.nix2
-rw-r--r--pkgs/games/megaglest/default.nix2
-rw-r--r--pkgs/games/minecraft/default.nix4
-rw-r--r--pkgs/games/openxray/default.nix4
-rw-r--r--pkgs/games/pacvim/default.nix2
-rw-r--r--pkgs/games/pro-office-calculator/default.nix2
-rw-r--r--pkgs/games/sgt-puzzles/default.nix4
-rw-r--r--pkgs/games/spring/springlobby.nix17
-rw-r--r--pkgs/games/steam/fhsenv.nix2
-rw-r--r--pkgs/games/tes3cmd/default.nix2
-rw-r--r--pkgs/misc/frescobaldi/default.nix4
-rw-r--r--pkgs/misc/lightspark/default.nix4
-rw-r--r--pkgs/misc/screensavers/betterlockscreen/default.nix2
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix9
-rw-r--r--pkgs/misc/vscode-extensions/default.nix21
-rw-r--r--pkgs/os-specific/linux/cpuset/default.nix2
-rw-r--r--pkgs/os-specific/linux/dstat/default.nix2
-rw-r--r--pkgs/os-specific/linux/dstat/fix_pluginpath.patch15
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/manual-config.nix6
-rw-r--r--pkgs/servers/bazarr/default.nix4
-rw-r--r--pkgs/servers/caddy/default.nix4
-rw-r--r--pkgs/servers/dns/bind/default.nix4
-rw-r--r--pkgs/servers/dns/dnsdist/default.nix4
-rw-r--r--pkgs/servers/hitch/default.nix2
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix4
-rw-r--r--pkgs/servers/icingaweb2/default.nix4
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/livepeer/default.nix6
-rw-r--r--pkgs/servers/monitoring/longview/default.nix2
-rw-r--r--pkgs/servers/monitoring/zabbix/versions.nix8
-rw-r--r--pkgs/servers/mpd/default.nix1
-rw-r--r--pkgs/servers/news/leafnode/default.nix2
-rw-r--r--pkgs/servers/openbgpd/default.nix2
-rw-r--r--pkgs/servers/sql/mariadb/default.nix2
-rw-r--r--pkgs/servers/sql/postgresql/ext/periods.nix4
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_similarity.nix3
-rw-r--r--pkgs/servers/sql/postgresql/ext/pgtap.nix2
-rw-r--r--pkgs/servers/web-apps/engelsystem/default.nix2
-rw-r--r--pkgs/servers/web-apps/jirafeau/default.nix2
-rw-r--r--pkgs/servers/web-apps/sogo/default.nix2
-rw-r--r--pkgs/shells/es/default.nix2
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/tools/X11/x11spice/default.nix5
-rw-r--r--pkgs/tools/admin/chamber/default.nix2
-rw-r--r--pkgs/tools/admin/oxidized/default.nix2
-rw-r--r--pkgs/tools/audio/mpd-mpris/default.nix6
-rw-r--r--pkgs/tools/backup/dar/default.nix4
-rw-r--r--pkgs/tools/backup/dirvish/default.nix2
-rw-r--r--pkgs/tools/bluetooth/blueman/default.nix4
-rw-r--r--pkgs/tools/compression/xz/default.nix2
-rw-r--r--pkgs/tools/filesystems/btrfs-progs/default.nix4
-rw-r--r--pkgs/tools/filesystems/httpfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/moosefs/default.nix4
-rw-r--r--pkgs/tools/graphics/dpic/default.nix4
-rw-r--r--pkgs/tools/graphics/optar/default.nix2
-rw-r--r--pkgs/tools/graphics/pfstools/default.nix8
-rw-r--r--pkgs/tools/misc/bdf2sfd/default.nix4
-rw-r--r--pkgs/tools/misc/birdfont/default.nix4
-rw-r--r--pkgs/tools/misc/byobu/default.nix65
-rw-r--r--pkgs/tools/misc/debianutils/default.nix4
-rw-r--r--pkgs/tools/misc/flameshot/default.nix32
-rw-r--r--pkgs/tools/misc/fzf/default.nix8
-rw-r--r--pkgs/tools/misc/goaccess/default.nix9
-rw-r--r--pkgs/tools/misc/hebcal/default.nix4
-rw-r--r--pkgs/tools/misc/logstash/6.x.nix2
-rw-r--r--pkgs/tools/misc/mongodb-compass/default.nix10
-rw-r--r--pkgs/tools/misc/ostree/default.nix4
-rw-r--r--pkgs/tools/misc/shallot/default.nix2
-rw-r--r--pkgs/tools/misc/slurp/default.nix11
-rw-r--r--pkgs/tools/misc/somafm-cli/default.nix1
-rw-r--r--pkgs/tools/misc/sweep-visualizer/default.nix4
-rw-r--r--pkgs/tools/misc/vimv/default.nix24
-rw-r--r--pkgs/tools/misc/wootility/default.nix2
-rw-r--r--pkgs/tools/misc/zsh-autoenv/default.nix2
-rw-r--r--pkgs/tools/networking/bukubrow/default.nix2
-rw-r--r--pkgs/tools/networking/corerad/default.nix2
-rw-r--r--pkgs/tools/networking/croc/default.nix7
-rw-r--r--pkgs/tools/networking/croc/test-local-relay.nix20
-rw-r--r--pkgs/tools/networking/curlie/default.nix2
-rw-r--r--pkgs/tools/networking/dnstracer/default.nix2
-rw-r--r--pkgs/tools/networking/driftnet/default.nix2
-rw-r--r--pkgs/tools/networking/goreplay/default.nix2
-rw-r--r--pkgs/tools/networking/maxscale/default.nix2
-rw-r--r--pkgs/tools/networking/ngrok-2/default.nix5
-rw-r--r--pkgs/tools/networking/pmacct/default.nix2
-rw-r--r--pkgs/tools/networking/rcon/default.nix30
-rw-r--r--pkgs/tools/networking/ssldump/default.nix2
-rw-r--r--pkgs/tools/package-management/morph/default.nix2
-rw-r--r--pkgs/tools/security/1password-gui/default.nix2
-rw-r--r--pkgs/tools/security/acsccid/default.nix2
-rw-r--r--pkgs/tools/security/bitwarden/default.nix4
-rw-r--r--pkgs/tools/security/fpm2/default.nix2
-rw-r--r--pkgs/tools/security/gobuster/default.nix6
-rw-r--r--pkgs/tools/security/notary/default.nix2
-rw-r--r--pkgs/tools/security/rustscan/default.nix10
-rw-r--r--pkgs/tools/security/sequoia/default.nix9
-rw-r--r--pkgs/tools/security/ssh-audit/default.nix1
-rw-r--r--pkgs/tools/security/sshguard/default.nix2
-rw-r--r--pkgs/tools/system/daemon/default.nix2
-rw-r--r--pkgs/tools/system/jump/default.nix2
-rw-r--r--pkgs/tools/system/netdata/default.nix4
-rw-r--r--pkgs/tools/system/snooze/default.nix3
-rw-r--r--pkgs/tools/system/testdisk/default.nix2
-rw-r--r--pkgs/tools/system/thinkfan/default.nix3
-rw-r--r--pkgs/tools/text/jsawk/default.nix2
-rw-r--r--pkgs/tools/text/mdbook/default.nix6
-rw-r--r--pkgs/tools/text/miller/default.nix2
-rw-r--r--pkgs/tools/text/sift/default.nix2
-rw-r--r--pkgs/tools/text/vale/default.nix4
-rw-r--r--pkgs/tools/typesetting/asciidoctorj/default.nix16
-rw-r--r--pkgs/tools/typesetting/rubber/default.nix18
-rw-r--r--pkgs/tools/typesetting/ted/default.nix2
-rw-r--r--pkgs/tools/virtualization/amazon-ecs-cli/default.nix6
-rw-r--r--pkgs/tools/wayland/wshowkeys/default.nix37
-rw-r--r--pkgs/top-level/all-packages.nix40
-rw-r--r--pkgs/top-level/dotnet-packages.nix27
-rw-r--r--pkgs/top-level/java-packages.nix12
-rw-r--r--pkgs/top-level/ocaml-packages.nix10
-rw-r--r--pkgs/top-level/python-packages.nix20
-rw-r--r--pkgs/top-level/release.nix2
459 files changed, 5630 insertions, 2285 deletions
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index fd2a6073df6..8ec9d535332 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -53,10 +53,10 @@ For package version upgrades and such a one-line commit message is usually suffi
 Follow these steps to backport a change into a release branch in compliance with the [commit policy](https://nixos.org/nixpkgs/manual/#submitting-changes-stable-release-branches).
 
 1. Take note of the commits in which the change was introduced into `master` branch.
-2. Check out the target _release branch_, e.g. `release-20.03`. Do not use a _channel branch_ like `nixos-20.03` or `nixpkgs-20.03`.
+2. Check out the target _release branch_, e.g. `release-20.09`. Do not use a _channel branch_ like `nixos-20.09` or `nixpkgs-20.09`.
 3. Create a branch for your change, e.g. `git checkout -b backport`.
 4. When the reason to backport is not obvious from the original commit message, use `git cherry-pick -xe <original commit>` and add a reason. Otherwise use `git cherry-pick -x <original commit>`. That's fine for minor version updates that only include security and bug fixes, commits that fixes an otherwise broken package or similar. Please also ensure the commits exists on the master branch; in the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the master pull request.
-5. Push to GitHub and open a backport pull request. Make sure to select the release branch (e.g. `release-20.03`) as the target branch of the pull request, and link to the pull request in which the original change was comitted to `master`. The pull request title should be the commit title with the release version as prefix, e.g. `[20.03]`.
+5. Push to GitHub and open a backport pull request. Make sure to select the release branch (e.g. `release-20.09`) as the target branch of the pull request, and link to the pull request in which the original change was comitted to `master`. The pull request title should be the commit title with the release version as prefix, e.g. `[20.09]`.
 
 ## Reviewing contributions
 
diff --git a/.github/STALE-BOT.md b/.github/STALE-BOT.md
new file mode 100644
index 00000000000..3b1599baebf
--- /dev/null
+++ b/.github/STALE-BOT.md
@@ -0,0 +1,34 @@
+# Stale bot information
+
+- Thanks for your contribution!
+- To remove the stale label, just leave a new comment.
+- _How to find the right people to ping?_ &rarr; [`git blame`](https://git-scm.com/docs/git-blame) to the rescue! (or GitHub's history and blame buttons.)
+- You can always ask for help on [our Discourse Forum](https://discourse.nixos.org/) or on the [#nixos IRC channel](https://webchat.freenode.net/#nixos).
+
+## Suggestions for PRs
+
+1. If it is unfinished but you plan to finish it, please mark it as a draft.
+2. If you don't expect to work on it any time soon, closing it with a short comment may encourage someone else to pick up your work.
+3. To get things rolling again, rebase the PR against the target branch and address valid comments.
+4. If you need a review to move forward, ask in [the Discourse thread for PRs that need help](https://discourse.nixos.org/t/prs-in-distress/3604).
+5. If all you need is a merge, check the git history to find and [request reviews](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) from people who usually merge related contributions.
+
+## Suggestions for issues
+
+1. If it is resolved (either for you personally, or in general), please consider closing it.
+2. If this might still be an issue, but you are not interested in promoting its resolution, please consider closing it while encouraging others to take over and reopen an issue if they care enough.
+3. If you still have interest in resolving it, try to ping somebody who you believe might have an interest in the topic. Consider discussing the problem in [our Discourse Forum](https://discourse.nixos.org/).
+4. As with all open source projects, your best option is to submit a Pull Request that addresses this issue. We :heart: this attitude!
+
+**Memorandum on closing issues**
+
+Don't be afraid to close an issue that holds valuable information. Closed issues stay in the system for people to search, read, cross-reference, or even reopen--nothing is lost! Closing obsolete issues is an important way to help maintainers focus their time and effort.
+
+## Useful GitHub search queries
+
+- [Open PRs with any stale-bot interaction](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+)
+- [Open PRs with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22)
+- [Open PRs with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)
+- [Open Issues with any stale-bot interaction](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+)
+- [Open Issues with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22+)
+- [Open Issues with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)
diff --git a/.github/stale.yml b/.github/stale.yml
index 606d5637cc5..b5e6ec93baf 100644
--- a/.github/stale.yml
+++ b/.github/stale.yml
@@ -1,41 +1,10 @@
 # Configuration for probot-stale - https://github.com/probot/stale
-# Number of days of inactivity before an issue becomes stale
 daysUntilStale: 180
-# Number of days of inactivity before a stale issue is closed
 daysUntilClose: false
-# Issues with these labels will never be considered stale
 exemptLabels:
   - "1.severity: security"
-# Label to use when marking an issue as stale
+  - "2.status: never-stale"
 staleLabel: "2.status: stale"
-# Comment to post when marking an issue as stale. Set to `false` to disable
-pulls:
-  markComment: |
-    Hello, I'm a bot and I thank you in the name of the community for your contributions.
-
-    Nixpkgs is a busy repository, and unfortunately sometimes PRs get left behind for too long. Nevertheless, we'd like to help committers reach the PRs that are still important. This PR has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human.
-
-    If this is still important to you and you'd like to remove the stale label, we ask that you leave a comment. Your comment can be as simple as "still important to me".  But there's a bit more you can do:
-
-    If you received an approval by an unprivileged maintainer and you are just waiting for a merge, you can @ mention someone with merge permissions and ask them to help. You might be able to find someone relevant by using [Git blame](https://git-scm.com/docs/git-blame) on the relevant files, or via [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file). You can see if someone's a member of the [nixpkgs-committers](https://github.com/orgs/NixOS/teams/nixpkgs-committers) team, by hovering with the mouse over their username on the web interface, or by searching them directly on [the list](https://github.com/orgs/NixOS/teams/nixpkgs-committers).
-
-    If your PR wasn't reviewed at all, it might help to find someone who's perhaps a user of the package or module you are changing, or alternatively, ask once more for a review by the maintainer of the package/module this is about. If you don't know any, you can use [Git blame](https://git-scm.com/docs/git-blame) on the relevant files, or [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file) to find someone who touched the relevant files in the past.
-
-    If your PR has had reviews and nevertheless got stale, make sure you've responded to all of the reviewer's requests / questions. Usually when PR authors show responsibility and dedication, reviewers (privileged or not) show dedication as well. If you've pushed a change, it's possible the reviewer wasn't notified about your push via email, so you can always [officially request them for a review](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review), or just @ mention them and say you've addressed their comments.
-
-    Lastly, you can always ask for help at [our Discourse Forum](https://discourse.nixos.org/), or more specifically, [at this thread](https://discourse.nixos.org/t/prs-in-distress/3604) or at [#nixos' IRC channel](https://webchat.freenode.net/#nixos).
-
-issues:
-  markComment: |
-    Hello, I'm a bot and I thank you in the name of the community for opening this issue.
-
-    To help our human contributors focus on the most-relevant reports, I check up on old issues to see if they're still relevant. This issue has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human.
-
-    The community would appreciate your effort in checking if the issue is still valid. If it isn't, please close it.
-
-    If the issue persists, and you'd like to remove the stale label, you simply need to leave a comment. Your comment can be as simple as "still important to me". If you'd like it to get more attention, you can ask for help by searching for maintainers and people that previously touched related code and @ mention them in a comment. You can use [Git blame](https://git-scm.com/docs/git-blame) or [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file) on the relevant files to find them.
-
-    Lastly, you can always ask for help at [our Discourse Forum](https://discourse.nixos.org/) or at [#nixos' IRC channel](https://webchat.freenode.net/#nixos).
-
-# Comment to post when closing a stale issue. Set to `false` to disable
+markComment: |
+  I marked this as stale due to inactivity. &rarr; [More info](https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md)
 closeComment: false
diff --git a/README.md b/README.md
index d1187b37280..70d50e5efcd 100644
--- a/README.md
+++ b/README.md
@@ -46,9 +46,9 @@ Nixpkgs and NixOS are built and tested by our continuous integration
 system, [Hydra](https://hydra.nixos.org/).
 
 * [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
-* [Continuous package builds for the NixOS 20.03 release](https://hydra.nixos.org/jobset/nixos/release-20.03)
+* [Continuous package builds for the NixOS 20.09 release](https://hydra.nixos.org/jobset/nixos/release-20.09)
 * [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents)
-* [Tests for the NixOS 20.03 release](https://hydra.nixos.org/job/nixos/release-20.03/tested#tabs-constituents)
+* [Tests for the NixOS 20.09 release](https://hydra.nixos.org/job/nixos/release-20.09/tested#tabs-constituents)
 
 Artifacts successfully built with Hydra are published to cache at
 https://cache.nixos.org/. When successful build and test criteria are
diff --git a/lib/debug.nix b/lib/debug.nix
index 2879f72ed2b..ea6aed60ab4 100644
--- a/lib/debug.nix
+++ b/lib/debug.nix
@@ -14,9 +14,25 @@
 */
 { lib }:
 let
-  inherit (builtins) trace isAttrs isList isInt
-          head substring attrNames;
-  inherit (lib) id elem isFunction;
+  inherit (lib)
+    isInt
+    attrNames
+    isList
+    isAttrs
+    substring
+    addErrorContext
+    attrValues
+    concatLists
+    concatStringsSep
+    const
+    elem
+    generators
+    head
+    id
+    isDerivation
+    isFunction
+    mapAttrs
+    trace;
 in
 
 rec {
@@ -94,7 +110,7 @@ rec {
        trace: { a = { b = {…}; }; }
        => null
    */
-  traceSeqN = depth: x: y: with lib;
+  traceSeqN = depth: x: y:
     let snip = v: if      isList  v then noQuotes "[…]" v
                   else if isAttrs v then noQuotes "{…}" v
                   else v;
@@ -149,7 +165,7 @@ rec {
   */
   runTests =
     # Tests to run
-    tests: lib.concatLists (lib.attrValues (lib.mapAttrs (name: test:
+    tests: concatLists (attrValues (mapAttrs (name: test:
     let testsToRun = if tests ? tests then tests.tests else [];
     in if (substring 0 4 name == "test" ||  elem name testsToRun)
        && ((testsToRun == []) || elem name tests.tests)
@@ -176,9 +192,9 @@ rec {
           + "and will be removed in the next release. "
           + "Please use more specific concatenation "
           + "for your uses (`lib.concat(Map)StringsSep`)." )
-    (lib.concatStringsSep "; " (map (x: "${x}=") (attrNames a)));
+    (concatStringsSep "; " (map (x: "${x}=") (attrNames a)));
 
-  showVal = with lib;
+  showVal =
     trace ( "Warning: `showVal` is deprecated "
           + "and will be removed in the next release, "
           + "please use `traceSeqN`" )
@@ -226,7 +242,7 @@ rec {
     trace ( "Warning: `addErrorContextToAttrs` is deprecated "
           + "and will be removed in the next release. "
           + "Please use `builtins.addErrorContext` directly." )
-    (lib.mapAttrs (a: v: lib.addErrorContext "while evaluating ${a}" v) attrs);
+    (mapAttrs (a: v: addErrorContext "while evaluating ${a}" v) attrs);
 
   # example: (traceCallXml "myfun" id 3) will output something like
   # calling myfun arg 1: 3 result: 3
diff --git a/lib/default.nix b/lib/default.nix
index 44076d29517..d2239d26ead 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -9,7 +9,7 @@ let
 
   lib = makeExtensible (self: let
     callLibs = file: import file { lib = self; };
-  in with self; {
+  in {
 
     # often used, or depending on very little
     trivial = callLibs ./trivial.nix;
@@ -54,7 +54,7 @@ let
     filesystem = callLibs ./filesystem.nix;
 
     # back-compat aliases
-    platforms = systems.doubles;
+    platforms = self.systems.doubles;
 
     # linux kernel configuration
     kernel = callLibs ./kernel.nix;
@@ -63,14 +63,14 @@ let
       deepSeq elem elemAt filter genericClosure genList getAttr
       hasAttr head isAttrs isBool isInt isList isString length
       lessThan listToAttrs pathExists readFile replaceStrings seq
-      stringLength sub substring tail;
-    inherit (trivial) id const pipe concat or and bitAnd bitOr bitXor
-      bitNot boolToString mergeAttrs flip mapNullable inNixShell min max
+      stringLength sub substring tail trace;
+    inherit (self.trivial) id const pipe concat or and bitAnd bitOr bitXor
+      bitNot boolToString mergeAttrs flip mapNullable inNixShell isFloat min max
       importJSON importTOML warn info showWarnings nixpkgsVersion version mod compare
       splitByAndCompare functionArgs setFunctionArgs isFunction toHexString toBaseDigits;
-    inherit (fixedPoints) fix fix' converge extends composeExtensions
+    inherit (self.fixedPoints) fix fix' converge extends composeExtensions
       makeExtensible makeExtensibleWithCustomName;
-    inherit (attrsets) attrByPath hasAttrByPath setAttrByPath
+    inherit (self.attrsets) attrByPath hasAttrByPath setAttrByPath
       getAttrFromPath attrVals attrValues getAttrs catAttrs filterAttrs
       filterAttrsRecursive foldAttrs collect nameValuePair mapAttrs
       mapAttrs' mapAttrsToList mapAttrsRecursive mapAttrsRecursiveCond
@@ -79,13 +79,13 @@ let
       recursiveUpdate matchAttrs overrideExisting getOutput getBin
       getLib getDev getMan chooseDevOutputs zipWithNames zip
       recurseIntoAttrs dontRecurseIntoAttrs;
-    inherit (lists) singleton forEach foldr fold foldl foldl' imap0 imap1
+    inherit (self.lists) singleton forEach foldr fold foldl foldl' imap0 imap1
       concatMap flatten remove findSingle findFirst any all count
       optional optionals toList range partition zipListsWith zipLists
       reverseList listDfs toposort sort naturalSort compareLists take
       drop sublist last init crossLists unique intersectLists
       subtractLists mutuallyExclusive groupBy groupBy';
-    inherit (strings) concatStrings concatMapStrings concatImapStrings
+    inherit (self.strings) concatStrings concatMapStrings concatImapStrings
       intersperse concatStringsSep concatMapStringsSep
       concatImapStringsSep makeSearchPath makeSearchPathOutput
       makeLibraryPath makeBinPath optionalString
@@ -97,19 +97,19 @@ let
       nameFromURL enableFeature enableFeatureAs withFeature
       withFeatureAs fixedWidthString fixedWidthNumber isStorePath
       toInt readPathsFromFile fileContents;
-    inherit (stringsWithDeps) textClosureList textClosureMap
+    inherit (self.stringsWithDeps) textClosureList textClosureMap
       noDepEntry fullDepEntry packEntry stringAfter;
-    inherit (customisation) overrideDerivation makeOverridable
+    inherit (self.customisation) overrideDerivation makeOverridable
       callPackageWith callPackagesWith extendDerivation hydraJob
       makeScope;
-    inherit (meta) addMetaAttrs dontDistribute setName updateName
+    inherit (self.meta) addMetaAttrs dontDistribute setName updateName
       appendToName mapDerivationAttrset setPrio lowPrio lowPrioSet hiPrio
       hiPrioSet;
-    inherit (sources) pathType pathIsDirectory cleanSourceFilter
+    inherit (self.sources) pathType pathIsDirectory cleanSourceFilter
       cleanSource sourceByRegex sourceFilesBySuffices
       commitIdFromGitRepo cleanSourceWith pathHasContext
       canCleanSource pathIsRegularFile pathIsGitRepo;
-    inherit (modules) evalModules unifyModuleSyntax
+    inherit (self.modules) evalModules unifyModuleSyntax
       applyIfFunction mergeModules
       mergeModules' mergeOptionDecls evalOptionValue mergeDefinitions
       pushDownProperties dischargeProperties filterOverrides
@@ -119,21 +119,21 @@ let
       mkAliasAndWrapDefinitions fixMergeModules mkRemovedOptionModule
       mkRenamedOptionModule mkMergedOptionModule mkChangedOptionModule
       mkAliasOptionModule doRename;
-    inherit (options) isOption mkEnableOption mkSinkUndeclaredOptions
+    inherit (self.options) isOption mkEnableOption mkSinkUndeclaredOptions
       mergeDefaultOption mergeOneOption mergeEqualOption getValues
       getFiles optionAttrSetToDocList optionAttrSetToDocList'
       scrubOptionValue literalExample showOption showFiles
       unknownModule mkOption;
-    inherit (types) isType setType defaultTypeMerge defaultFunctor
+    inherit (self.types) isType setType defaultTypeMerge defaultFunctor
       isOptionType mkOptionType;
-    inherit (asserts)
+    inherit (self.asserts)
       assertMsg assertOneOf;
-    inherit (debug) addErrorContextToAttrs traceIf traceVal traceValFn
+    inherit (self.debug) addErrorContextToAttrs traceIf traceVal traceValFn
       traceXMLVal traceXMLValMarked traceSeq traceSeqN traceValSeq
       traceValSeqFn traceValSeqN traceValSeqNFn traceShowVal
       traceShowValMarked showVal traceCall traceCall2 traceCall3
       traceValIfNot runTests testAllTrue traceCallXml attrNamesToStr;
-    inherit (misc) maybeEnv defaultMergeArg defaultMerge foldArgs
+    inherit (self.misc) maybeEnv defaultMergeArg defaultMerge foldArgs
       maybeAttrNullable maybeAttr ifEnable checkFlag getValue
       checkReqs uniqList uniqListExt condConcat lazyGenericClosure
       innerModifySumArgs modifySumArgs innerClosePropagation
@@ -143,7 +143,7 @@ let
       mergeAttrsByFuncDefaultsClean mergeAttrBy
       fakeHash fakeSha256 fakeSha512
       nixType imap;
-    inherit (versions)
+    inherit (self.versions)
       splitVersion;
   });
 in lib
diff --git a/lib/lists.nix b/lib/lists.nix
index f424946c72c..6c97e0686aa 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -1,9 +1,9 @@
 # General list operations.
 
 { lib }:
-with lib.trivial;
 let
   inherit (lib.strings) toInt;
+  inherit (lib.trivial) compare min;
 in
 rec {
 
diff --git a/lib/modules.nix b/lib/modules.nix
index 103a22ed131..d2d35dbaae5 100644
--- a/lib/modules.nix
+++ b/lib/modules.nix
@@ -1,12 +1,53 @@
 { lib }:
 
-with lib.lists;
-with lib.strings;
-with lib.trivial;
-with lib.attrsets;
-with lib.options;
-with lib.debug;
-with lib.types;
+let
+  inherit (lib)
+    all
+    any
+    attrByPath
+    attrNames
+    catAttrs
+    concatLists
+    concatMap
+    count
+    elem
+    filter
+    findFirst
+    flip
+    foldl
+    foldl'
+    getAttrFromPath
+    head
+    id
+    imap1
+    isAttrs
+    isBool
+    isFunction
+    isString
+    length
+    mapAttrs
+    mapAttrsToList
+    mapAttrsRecursiveCond
+    min
+    optional
+    optionalAttrs
+    optionalString
+    recursiveUpdate
+    reverseList sort
+    setAttrByPath
+    toList
+    types
+    warn
+    ;
+  inherit (lib.options)
+    isOption
+    mkOption
+    showDefs
+    showFiles
+    showOption
+    unknownModule
+    ;
+in
 
 rec {
 
@@ -616,7 +657,7 @@ rec {
   fixupOptionType = loc: opt:
     let
       options = opt.options or
-        (throw "Option `${showOption loc'}' has type optionSet but has no option attribute, in ${showFiles opt.declarations}.");
+        (throw "Option `${showOption loc}' has type optionSet but has no option attribute, in ${showFiles opt.declarations}.");
       f = tp:
         let optionSetIn = type: (tp.name == type) && (tp.functor.wrapped.name == "optionSet");
         in
diff --git a/lib/options.nix b/lib/options.nix
index 5b7482c8093..87cd8b79796 100644
--- a/lib/options.nix
+++ b/lib/options.nix
@@ -1,11 +1,40 @@
 # Nixpkgs/NixOS option handling.
 { lib }:
 
-with lib.trivial;
-with lib.lists;
-with lib.attrsets;
-with lib.strings;
-
+let
+  inherit (lib)
+    all
+    collect
+    concatLists
+    concatMap
+    elemAt
+    filter
+    foldl'
+    head
+    isAttrs
+    isBool
+    isDerivation
+    isFunction
+    isInt
+    isList
+    isString
+    length
+    mapAttrs
+    optional
+    optionals
+    take
+    ;
+  inherit (lib.attrsets)
+    optionalAttrs
+    ;
+  inherit (lib.strings)
+    concatMapStrings
+    concatStringsSep
+    ;
+  inherit (lib.types)
+    mkOptionType
+    ;
+in
 rec {
 
   /* Returns true when the given argument is an option
@@ -110,7 +139,7 @@ rec {
     # Return early if we only have one element
     # This also makes it work for functions, because the foldl' below would try
     # to compare the first element with itself, which is false for functions
-    else if length defs == 1 then (elemAt defs 0).value
+    else if length defs == 1 then (head defs).value
     else (foldl' (first: def:
       if def.value != first.value then
         throw "The option `${showOption loc}' has conflicting definition values:${showDefs [ first def ]}"
diff --git a/lib/sources.nix b/lib/sources.nix
index 776fcc32052..702a0ef8892 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -1,16 +1,33 @@
 # Functions for copying sources to the Nix store.
 { lib }:
 
+let
+  inherit (builtins)
+    hasContext
+    match
+    readDir
+    storeDir
+    tryEval
+    ;
+  inherit (lib)
+    filter
+    getAttr
+    isString
+    pathExists
+    readFile
+    split
+    ;
+in
 rec {
 
   # Returns the type of a path: regular (for file), symlink, or directory
-  pathType = p: with builtins; getAttr (baseNameOf p) (readDir (dirOf p));
+  pathType = p: getAttr (baseNameOf p) (readDir (dirOf p));
 
   # Returns true if the path exists and is a directory, false otherwise
-  pathIsDirectory = p: if builtins.pathExists p then (pathType p) == "directory" else false;
+  pathIsDirectory = p: if pathExists p then (pathType p) == "directory" else false;
 
   # Returns true if the path exists and is a regular file, false otherwise
-  pathIsRegularFile = p: if builtins.pathExists p then (pathType p) == "regular" else false;
+  pathIsRegularFile = p: if pathExists p then (pathType p) == "regular" else false;
 
   # Bring in a path as a source, filtering out all Subversion and CVS
   # directories, as well as backup files (*~).
@@ -19,8 +36,8 @@ rec {
     (baseName == ".git" || type == "directory" && (baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
     # Filter out editor backup / swap files.
     lib.hasSuffix "~" baseName ||
-    builtins.match "^\\.sw[a-z]$" baseName != null ||
-    builtins.match "^\\..*\\.sw[a-z]$" baseName != null ||
+    match "^\\.sw[a-z]$" baseName != null ||
+    match "^\\..*\\.sw[a-z]$" baseName != null ||
 
     # Filter out generates files.
     lib.hasSuffix ".o" baseName ||
@@ -89,7 +106,7 @@ rec {
     in lib.cleanSourceWith {
       filter = (path: type:
         let relPath = lib.removePrefix (toString origSrc + "/") (toString path);
-        in lib.any (re: builtins.match re relPath != null) regexes);
+        in lib.any (re: match re relPath != null) regexes);
       inherit src;
     };
 
@@ -102,13 +119,12 @@ rec {
       in type == "directory" || lib.any (ext: lib.hasSuffix ext base) exts;
     in cleanSourceWith { inherit filter; src = path; };
 
-  pathIsGitRepo = path: (builtins.tryEval (commitIdFromGitRepo path)).success;
+  pathIsGitRepo = path: (tryEval (commitIdFromGitRepo path)).success;
 
   # Get the commit id of a git repo
   # Example: commitIdFromGitRepo <nixpkgs/.git>
   commitIdFromGitRepo =
     let readCommitFromFile = file: path:
-      with builtins;
         let fileName       = toString path + "/" + file;
             packedRefsName = toString path + "/packed-refs";
             absolutePath   = base: path:
@@ -145,11 +161,11 @@ rec {
            # packed-refs file, so we have to grep through it:
            then
              let fileContent = readFile packedRefsName;
-                 matchRef = builtins.match "([a-z0-9]+) ${file}";
-                 isRef = s: builtins.isString s && (matchRef s) != null;
+                 matchRef = match "([a-z0-9]+) ${file}";
+                 isRef = s: isString s && (matchRef s) != null;
                  # there is a bug in libstdc++ leading to stackoverflow for long strings:
                  # https://github.com/NixOS/nix/issues/2147#issuecomment-659868795
-                 refs = builtins.filter isRef (builtins.split "\n" fileContent);
+                 refs = filter isRef (split "\n" fileContent);
              in if refs == []
                 then throw ("Could not find " + file + " in " + packedRefsName)
                 else lib.head (matchRef (lib.head refs))
@@ -157,7 +173,7 @@ rec {
            else throw ("Not a .git directory: " + path);
     in readCommitFromFile "HEAD";
 
-  pathHasContext = builtins.hasContext or (lib.hasPrefix builtins.storeDir);
+  pathHasContext = builtins.hasContext or (lib.hasPrefix storeDir);
 
   canCleanSource = src: src ? _isLibCleanSourceWith || !(pathHasContext (toString src));
 }
diff --git a/lib/strings-with-deps.nix b/lib/strings-with-deps.nix
index e3336983428..7b88b018da5 100644
--- a/lib/strings-with-deps.nix
+++ b/lib/strings-with-deps.nix
@@ -41,10 +41,15 @@ Usage:
   [1] maybe this behaviour should be removed to keep things simple (?)
 */
 
-with lib.lists;
-with lib.attrsets;
-with lib.strings;
-
+let
+  inherit (lib)
+    concatStringsSep
+    head
+    isAttrs
+    listToAttrs
+    tail
+    ;
+in
 rec {
 
   /* !!! The interface of this function is kind of messed up, since
diff --git a/lib/strings.nix b/lib/strings.nix
index d81e46a1763..f62ff6679ef 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -8,7 +8,29 @@ in
 
 rec {
 
-  inherit (builtins) stringLength substring head tail isString replaceStrings;
+  inherit (builtins)
+    compareVersions
+    elem
+    elemAt
+    filter
+    fromJSON
+    head
+    isInt
+    isList
+    isString
+    match
+    parseDrvName
+    readFile
+    replaceStrings
+    split
+    storeDir
+    stringLength
+    substring
+    tail
+    toJSON
+    typeOf
+    unsafeDiscardStringContext
+    ;
 
   /* Concatenate a list of strings.
 
@@ -120,7 +142,7 @@ rec {
     subDir:
     # List of base paths
     paths:
-    concatStringsSep ":" (map (path: path + "/" + subDir) (builtins.filter (x: x != null) paths));
+    concatStringsSep ":" (map (path: path + "/" + subDir) (filter (x: x != null) paths));
 
   /* Construct a Unix-style search path by appending the given
      `subDir` to the specified `output` of each of the packages. If no
@@ -313,7 +335,7 @@ rec {
        escapeNixString "hello\${}\n"
        => "\"hello\\\${}\\n\""
   */
-  escapeNixString = s: escape ["$"] (builtins.toJSON s);
+  escapeNixString = s: escape ["$"] (toJSON s);
 
   /* Turn a string into an exact regular expression
 
@@ -337,7 +359,7 @@ rec {
   */
   escapeNixIdentifier = s:
     # Regex from https://github.com/NixOS/nix/blob/d048577909e383439c2549e849c5c2f2016c997e/src/libexpr/lexer.l#L91
-    if builtins.match "[a-zA-Z_][a-zA-Z0-9_'-]*" s != null
+    if match "[a-zA-Z_][a-zA-Z0-9_'-]*" s != null
     then s else escapeNixString s;
 
   # Obsolete - use replaceStrings instead.
@@ -466,7 +488,7 @@ rec {
        versionOlder "1.1" "1.1"
        => false
   */
-  versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;
+  versionOlder = v1: v2: compareVersions v2 v1 == 1;
 
   /* Return true if string v1 denotes a version equal to or newer than v2.
 
@@ -492,7 +514,7 @@ rec {
   */
   getName = x:
    let
-     parse = drv: (builtins.parseDrvName drv).name;
+     parse = drv: (parseDrvName drv).name;
    in if isString x
       then parse x
       else x.pname or (parse x.name);
@@ -509,7 +531,7 @@ rec {
   */
   getVersion = x:
    let
-     parse = drv: (builtins.parseDrvName drv).version;
+     parse = drv: (parseDrvName drv).version;
    in if isString x
       then parse x
       else x.version or (parse x.name);
@@ -527,7 +549,7 @@ rec {
     let
       components = splitString "/" url;
       filename = lib.last components;
-      name = builtins.head (splitString sep filename);
+      name = head (splitString sep filename);
     in assert name != filename; name;
 
   /* Create an --{enable,disable}-<feat> string that can be passed to
@@ -617,14 +639,14 @@ rec {
   */
   floatToString = float: let
     result = toString float;
-    precise = float == builtins.fromJSON result;
+    precise = float == fromJSON result;
   in if precise then result
     else lib.warn "Imprecise conversion from float to string ${result}" result;
 
   /* Check whether a value can be coerced to a string */
   isCoercibleToString = x:
-    builtins.elem (builtins.typeOf x) [ "path" "string" "null" "int" "float" "bool" ] ||
-    (builtins.isList x && lib.all isCoercibleToString x) ||
+    elem (typeOf x) [ "path" "string" "null" "int" "float" "bool" ] ||
+    (isList x && lib.all isCoercibleToString x) ||
     x ? outPath ||
     x ? __toString;
 
@@ -643,8 +665,8 @@ rec {
   isStorePath = x:
     if isCoercibleToString x then
       let str = toString x; in
-      builtins.substring 0 1 str == "/"
-      && dirOf str == builtins.storeDir
+      substring 0 1 str == "/"
+      && dirOf str == storeDir
     else
       false;
 
@@ -662,8 +684,8 @@ rec {
   */
   # Obviously, it is a bit hacky to use fromJSON this way.
   toInt = str:
-    let may_be_int = builtins.fromJSON str; in
-    if builtins.isInt may_be_int
+    let may_be_int = fromJSON str; in
+    if isInt may_be_int
     then may_be_int
     else throw "Could not convert ${str} to int.";
 
@@ -685,10 +707,10 @@ rec {
   readPathsFromFile = lib.warn "lib.readPathsFromFile is deprecated, use a list instead"
     (rootPath: file:
       let
-        lines = lib.splitString "\n" (builtins.readFile file);
+        lines = lib.splitString "\n" (readFile file);
         removeComments = lib.filter (line: line != "" && !(lib.hasPrefix "#" line));
         relativePaths = removeComments lines;
-        absolutePaths = builtins.map (path: rootPath + "/${path}") relativePaths;
+        absolutePaths = map (path: rootPath + "/${path}") relativePaths;
       in
         absolutePaths);
 
@@ -702,7 +724,7 @@ rec {
        fileContents ./version
        => "1.0"
   */
-  fileContents = file: removeSuffix "\n" (builtins.readFile file);
+  fileContents = file: removeSuffix "\n" (readFile file);
 
 
   /* Creates a valid derivation name from a potentially invalid one.
@@ -720,13 +742,13 @@ rec {
   sanitizeDerivationName = string: lib.pipe string [
     # Get rid of string context. This is safe under the assumption that the
     # resulting string is only used as a derivation name
-    builtins.unsafeDiscardStringContext
+    unsafeDiscardStringContext
     # Strip all leading "."
-    (x: builtins.elemAt (builtins.match "\\.*(.*)" x) 0)
+    (x: elemAt (match "\\.*(.*)" x) 0)
     # Split out all invalid characters
     # https://github.com/NixOS/nix/blob/2.3.2/src/libstore/store-api.cc#L85-L112
     # https://github.com/NixOS/nix/blob/2242be83c61788b9c0736a92bb0b5c7bbfc40803/nix-rust/src/store/path.rs#L100-L125
-    (builtins.split "[^[:alnum:]+._?=-]+")
+    (split "[^[:alnum:]+._?=-]+")
     # Replace invalid character ranges with a "-"
     (concatMapStrings (s: if lib.isList s then "-" else s))
     # Limit to 211 characters (minus 4 chars for ".drv")
diff --git a/lib/types.nix b/lib/types.nix
index 30b053db486..ee891f8231b 100644
--- a/lib/types.nix
+++ b/lib/types.nix
@@ -1,12 +1,65 @@
 # Definitions related to run-time type checking.  Used in particular
 # to type-check NixOS configurations.
 { lib }:
-with lib.lists;
-with lib.attrsets;
-with lib.options;
-with lib.trivial;
-with lib.strings;
+
 let
+  inherit (lib)
+    elem
+    flip
+    functionArgs
+    isAttrs
+    isBool
+    isDerivation
+    isFloat
+    isFunction
+    isInt
+    isList
+    isString
+    isStorePath
+    setFunctionArgs
+    toDerivation
+    toList
+    ;
+  inherit (lib.lists)
+    all
+    concatLists
+    count
+    elemAt
+    filter
+    foldl'
+    head
+    imap1
+    last
+    length
+    tail
+    unique
+    ;
+  inherit (lib.attrsets)
+    attrNames
+    filterAttrs
+    hasAttr
+    mapAttrs
+    optionalAttrs
+    zipAttrsWith
+    ;
+  inherit (lib.options)
+    getFiles
+    getValues
+    mergeDefaultOption
+    mergeEqualOption
+    mergeOneOption
+    showFiles
+    showOption
+    ;
+  inherit (lib.strings)
+    concatMapStringsSep
+    concatStringsSep
+    escapeNixString
+    isCoercibleToString
+    ;
+  inherit (lib.trivial)
+    boolToString
+    ;
 
   inherit (lib.modules) mergeDefinitions;
   outer_types =
@@ -270,7 +323,7 @@ rec {
       name = "attrs";
       description = "attribute set";
       check = isAttrs;
-      merge = loc: foldl' (res: def: mergeAttrs res def.value) {};
+      merge = loc: foldl' (res: def: res // def.value) {};
       emptyValue = { value = {}; };
     };
 
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index c5afc7faff9..c0b1ae06abe 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -2169,6 +2169,12 @@
     githubId = 8852888;
     name = "David Izquierdo";
   };
+  djanatyn = {
+    email = "djanatyn@gmail.com";
+    github = "djanatyn";
+    githubId = 523628;
+    name = "Jonathan Strickland";
+  };
   Dje4321 = {
     email = "dje4321@gmail.com";
     github = "dje4321";
@@ -3437,6 +3443,12 @@
     githubId = 2405974;
     name = "Sébastian Méric de Bellefon";
   };
+  henrikolsson = {
+    email = "henrik@fixme.se";
+    github = "henrikolsson";
+    githubId = 982322;
+    name = "Henrik Olsson";
+  };
   henrytill = {
     email = "henrytill@gmail.com";
     github = "henrytill";
diff --git a/maintainers/scripts/hydra-eval-failures.py b/maintainers/scripts/hydra-eval-failures.py
index 0f738c5427b..b7518b12857 100755
--- a/maintainers/scripts/hydra-eval-failures.py
+++ b/maintainers/scripts/hydra-eval-failures.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i python3 -p 'python3.withPackages(ps: with ps; [ requests pyquery click ])'
+#!nix-shell -i python3 -p "python3.withPackages(ps: with ps; [ requests pyquery click ])"
 
 # To use, just execute this script with --help to display help.
 
diff --git a/nixos/doc/manual/configuration/user-mgmt.xml b/nixos/doc/manual/configuration/user-mgmt.xml
index cbec83814c9..e83e7b75ef5 100644
--- a/nixos/doc/manual/configuration/user-mgmt.xml
+++ b/nixos/doc/manual/configuration/user-mgmt.xml
@@ -38,7 +38,7 @@
   assigned by setting the user's
   <link linkend="opt-users.users._name_.hashedPassword">hashedPassword</link>
   option. A hashed password can be generated using <command>mkpasswd -m
-  sha-512</command> after installing the <literal>mkpasswd</literal> package.
+  sha-512</command>.
  </para>
  <para>
   A user ID (uid) is assigned automatically. You can also specify a uid
diff --git a/nixos/doc/manual/installation/upgrading.xml b/nixos/doc/manual/installation/upgrading.xml
index 08780051d5f..15ba5db9a37 100644
--- a/nixos/doc/manual/installation/upgrading.xml
+++ b/nixos/doc/manual/installation/upgrading.xml
@@ -14,7 +14,7 @@
     <para>
      <emphasis>Stable channels</emphasis>, such as
      <literal
-    xlink:href="https://nixos.org/channels/nixos-20.03">nixos-20.03</literal>.
+    xlink:href="https://nixos.org/channels/nixos-20.09">nixos-20.09</literal>.
      These only get conservative bug fixes and package upgrades. For instance,
      a channel update may cause the Linux kernel on your system to be upgraded
      from 4.19.34 to 4.19.38 (a minor bug fix), but not from
@@ -38,7 +38,7 @@
     <para>
      <emphasis>Small channels</emphasis>, such as
      <literal
-    xlink:href="https://nixos.org/channels/nixos-20.03-small">nixos-20.03-small</literal>
+    xlink:href="https://nixos.org/channels/nixos-20.09-small">nixos-20.09-small</literal>
      or
      <literal
     xlink:href="https://nixos.org/channels/nixos-unstable-small">nixos-unstable-small</literal>.
@@ -63,8 +63,8 @@
  <para>
   When you first install NixOS, you’re automatically subscribed to the NixOS
   channel that corresponds to your installation source. For instance, if you
-  installed from a 20.03 ISO, you will be subscribed to the
-  <literal>nixos-20.03</literal> channel. To see which NixOS channel you’re
+  installed from a 20.09 ISO, you will be subscribed to the
+  <literal>nixos-20.09</literal> channel. To see which NixOS channel you’re
   subscribed to, run the following as root:
 <screen>
 <prompt># </prompt>nix-channel --list | grep nixos
@@ -75,13 +75,13 @@ nixos https://nixos.org/channels/nixos-unstable
 <prompt># </prompt>nix-channel --add https://nixos.org/channels/<replaceable>channel-name</replaceable> nixos
 </screen>
   (Be sure to include the <literal>nixos</literal> parameter at the end.) For
-  instance, to use the NixOS 20.03 stable channel:
+  instance, to use the NixOS 20.09 stable channel:
 <screen>
-<prompt># </prompt>nix-channel --add https://nixos.org/channels/nixos-20.03 nixos
+<prompt># </prompt>nix-channel --add https://nixos.org/channels/nixos-20.09 nixos
 </screen>
   If you have a server, you may want to use the “small” channel instead:
 <screen>
-<prompt># </prompt>nix-channel --add https://nixos.org/channels/nixos-20.03-small nixos
+<prompt># </prompt>nix-channel --add https://nixos.org/channels/nixos-20.09-small nixos
 </screen>
   And if you want to live on the bleeding edge:
 <screen>
@@ -132,7 +132,7 @@ nixos https://nixos.org/channels/nixos-unstable
    kernel, initrd or kernel modules.
    You can also specify a channel explicitly, e.g.
 <programlisting>
-<xref linkend="opt-system.autoUpgrade.channel"/> = https://nixos.org/channels/nixos-20.03;
+<xref linkend="opt-system.autoUpgrade.channel"/> = https://nixos.org/channels/nixos-20.09;
 </programlisting>
   </para>
  </section>
diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml
index 782227de06f..c399c22eef5 100644
--- a/nixos/doc/manual/release-notes/rl-2009.xml
+++ b/nixos/doc/manual/release-notes/rl-2009.xml
@@ -3,8 +3,11 @@
          xmlns:xi="http://www.w3.org/2001/XInclude"
          version="5.0"
          xml:id="sec-release-20.09">
- <title>Release 20.09 (“Nightingale”, 2020.09/??)</title>
+ <title>Release 20.09 (“Nightingale”, 2020.10/27)</title>
 
+  <para>
+   Support is planned until the end of April 2021, handing over to 21.03.
+  </para>
  <section xmlns="http://docbook.org/ns/docbook"
          xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:xi="http://www.w3.org/2001/XInclude"
@@ -13,88 +16,601 @@
   <title>Highlights</title>
 
   <para>
-   In addition to numerous new and upgraded packages, this release has the
+   In addition to 7349 new, 14442 updated, and 8181 removed packages, this release has the
    following highlights:
   </para>
 
   <itemizedlist>
    <listitem>
     <para>
-     Support is planned until the end of April 2021, handing over to 21.03.
+     Core version changes:
     </para>
-   </listitem>
-   <listitem>
-    <para>GNOME desktop environment was upgraded to 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>.</para>
-   </listitem>
-   <listitem>
-     <para>
-     The Cinnamon desktop environment (v4.6) has been added. <varname>services.xserver.desktopManager.cinnamon.enable = true;</varname> to try it out!
-     Remember that, with any new feature it's possible you could run into issues, so please send all support requests to <link xlink:href="https://github.com/NixOS/nixpkgs/issues">github.com/NixOS/nixpkgs</link> to notify the maintainers.
-     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       gcc: 9.2.0 -> 9.3.0
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       glibc: 2.30 -> 2.31
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       linux: still defaults to 5.4.x, all supported kernels available
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       mesa: 19.3.5 -> 20.1.7
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
    <listitem>
     <para>
-      Quickly configure a complete, private, self-hosted video
-      conferencing solution with the new Jitsi Meet module.
+     Desktop Environments:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       plasma5: 5.17.5 -> 5.18.5
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       kdeApplications: 19.12.3 -> 20.08.1
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       gnome3: 3.34 -> 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>
+      </para>
+     </listitem>
+      <listitem>
+       <para>
+        cinnamon: added at 4.6
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       NixOS now distributes an official <link xlink:href="https://nixos.org/download.html#nixos-iso">GNOME ISO</link>
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
    <listitem>
     <para>
-    <package>maxx</package> package removed along with <varname>services.xserver.desktopManager.maxx</varname> module.
-    Please migrate to <package>cdesktopenv</package> and <varname>services.xserver.desktopManager.cde</varname> module.
+     Programming Languages and Frameworks:
     </para>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Agda ecosystem was heavily reworked (see more details below)
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       PHP now defaults to PHP 7.4, updated from 7.3
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       PHP 7.2 is no longer supported due to upstream not supporting this version for the entire lifecycle of the 20.09 release
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       Python 3 now defaults to Python 3.8 instead of 3.7
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       Python 3.5 reached its upstream EOL at the end of September 2020: it
+       has been removed from the list of available packages
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
    <listitem>
     <para>
-     We now distribute a GNOME ISO.
+     Databases and Service Monitoring:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       MariaDB has been updated to 10.4, MariaDB Galera to 26.4. Please read the related upgrade instructions under <link linkend="sec-release-20.09-incompatibilities">backwards incompatibilities</link> before upgrading.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+        Zabbix now defaults to 5.0, updated from 4.4. Please read related sections under <link linkend="sec-release-20.09-incompatibilities">backwards compatibilities</link> before upgrading.
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
    <listitem>
     <para>
-     PHP now defaults to PHP 7.4, updated from 7.3.
+     Major module changes:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       Quickly configure a complete, private, self-hosted video
+       conferencing solution with the new Jitsi Meet module.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       Two new options, <link linkend="opt-services.openssh.authorizedKeysCommand">authorizedKeysCommand</link>
+       and <link linkend="opt-services.openssh.authorizedKeysCommandUser">authorizedKeysCommandUser</link>, have
+       been added to the <literal>openssh</literal> module. If you have <literal>AuthorizedKeysCommand</literal>
+       in your <link linkend="opt-services.openssh.extraConfig">services.openssh.extraConfig</link> you should
+       make use of these new options instead.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       There is a new module for Podman (<varname>virtualisation.podman</varname>), a drop-in replacement for the Docker command line.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       The new <varname>virtualisation.containers</varname> module manages configuration shared by the CRI-O and Podman modules.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+        Declarative Docker containers are renamed from <varname>docker-containers</varname> to <varname>virtualisation.oci-containers.containers</varname>.
+        This is to make it possible to use <literal>podman</literal> instead of <literal>docker</literal>.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+        The new option <link linkend="opt-documentation.man.generateCaches">documentation.man.generateCaches</link>
+        has been added to automatically generate the <literal>man-db</literal> caches, which are needed by utilities
+        like <command>whatis</command> and <command>apropos</command>. The caches are generated during the build of
+        the NixOS configuration: since this can be expensive when a large number of packages are installed, the
+        feature is disabled by default.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <varname>services.postfix.sslCACert</varname> was replaced by <varname>services.postfix.tlsTrustedAuthorities</varname> which now defaults to system certificate authorities.
+      </para>
+     </listitem>
+     <listitem>
+       <para>
+         The various documented workarounds to use steam have been converted to a module. <varname>programs.steam.enable</varname> enables steam, controller support and the workarounds.
+       </para>
+     </listitem>
+     <listitem>
+       <para>
+         Support for built-in LCDs in various pieces of Logitech hardware (keyboards and USB speakers). <varname>hardware.logitech.lcd.enable</varname> enables support for all hardware supported by the <link xlink:href="https://sourceforge.net/projects/g15daemon/">g15daemon project</link>.
+       </para>
+     </listitem>
+     <listitem>
+       <para>
+         The GRUB module gained support for basic password protection, which
+         allows to restrict non-default entries in the boot menu to one or more
+         users. The users and passwords are defined via the option
+         <option>boot.loader.grub.users</option>.
+         Note: Password support is only available in GRUB version 2.
+       </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
    <listitem>
     <para>
-     PHP 7.2 is no longer supported due to upstream not supporting this version for the entire lifecycle of the 20.09 release.
+     NixOS module changes:
     </para>
+    <itemizedlist>
+     <listitem>
+       <para>
+        The NixOS module system now supports freeform modules as a mix between <literal>types.attrsOf</literal> and <literal>types.submodule</literal>. These allow you to explicitly declare a subset of options while still permitting definitions without an associated option. See <xref linkend='sec-freeform-modules'/> for how to use them.
+       </para>
+     </listitem>
+     <listitem>
+      <para>
+       Following its deprecation in 20.03, the Perl NixOS test driver has been removed.
+       All remaining tests have been ported to the Python test framework.
+       Code outside nixpkgs using <filename>make-test.nix</filename> or
+       <filename>testing.nix</filename> needs to be ported to
+       <filename>make-test-python.nix</filename> and
+       <filename>testing-python.nix</filename> respectively.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+        Subordinate GID and UID mappings are now set up automatically for all normal users.
+        This will make container tools like Podman work as non-root users out of the box.
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
+  </itemizedlist>
+ </section>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-20.09-new-services">
+  <title>New Services</title>
+
+  <para>
+   In addition to 1119 new, 118 updated, and 476 removed options; 61 new modules were added since the last release:
+  </para>
+
+  <itemizedlist>
    <listitem>
     <para>
-     Python 3 now defaults to Python 3.8 instead of 3.7.
+       Hardware:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-hardware.system76.firmware-daemon.enable" /> adds easy support of system76 firmware
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-hardware.uinput.enable" /> loads uinput kernel module
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-hardware.video.hidpi.enable" /> enable good defaults for HiDPI displays
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-hardware.wooting.enable" /> support for Wooting keyboards
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-hardware.xpadneo.enable" /> xpadneo driver for Xbox One wireless controllers
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
    <listitem>
     <para>
-     Python 3.5 has reached its upstream EOL at the end of September 2020: it
-     has been removed from the list of available packages.
+       Programs:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-programs.hamster.enable" /> enable hamster time tracking
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-programs.steam.enable" /> adds easy enablement of steam and related system configuration
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
    <listitem>
     <para>
-     Two new options, <link linkend="opt-services.openssh.authorizedKeysCommand">authorizedKeysCommand</link>
-     and <link linkend="opt-services.openssh.authorizedKeysCommandUser">authorizedKeysCommandUser</link>, have
-     been added to the <literal>openssh</literal> module. If you have <literal>AuthorizedKeysCommand</literal>
-     in your <link linkend="opt-services.openssh.extraConfig">services.openssh.extraConfig</link> you should
-     make use of these new options instead.
+       Security:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-security.doas.enable" /> alternative to sudo, allows non-root users to execute commands as root
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-security.tpm2.enable" /> add Trusted Platform Module 2 support
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
    <listitem>
     <para>
-     There is a new module for Podman(<varname>virtualisation.podman</varname>), a drop-in replacement for the Docker command line.
+       System:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-boot.initrd.network.openvpn.enable" /> start an OpenVPN client during initrd boot
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
    <listitem>
     <para>
-     The new <varname>virtualisation.containers</varname> module manages configuration shared by the CRI-O and Podman modules.
+       Virtualization:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-boot.enableContainers" /> use nixos-containers
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-virtualisation.oci-containers.containers" /> run OCI (Docker) containers
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-virtualisation.podman.enable" /> daemonless container engine
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
    <listitem>
     <para>
-      Declarative Docker containers are renamed from <varname>docker-containers</varname> to <varname>virtualisation.oci-containers.containers</varname>.
-      This is to make it possible to use <literal>podman</literal> instead of <literal>docker</literal>.
+       Services:
     </para>
+    <itemizedlist>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.ankisyncd.enable" /> Anki sync server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.bazarr.enable" /> Subtitle manager for Sonarr and Radarr
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.biboumi.enable" /> Biboumi XMPP gateway to IRC
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.blockbook-frontend" /> Blockbook-frontend, a service for the Trezor wallet
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.cage.enable" /> Wayland cage service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.convos.enable" /> IRC daemon, which can be accessed throught the browser
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.engelsystem.enable" /> Tool for coordinating volunteers and shifts on large events
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.espanso.enable" /> text-expander written in rust
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.foldingathome.enable" /> Folding@home client
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.gerrit.enable" /> Web-based team code collaboration tool
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.go-neb.enable" /> Matrix bot
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.hardware.xow.enable" /> xow as a systemd service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.hercules-ci-agent.enable" /> Hercules CI build agent
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.jicofo.enable" /> Jitsi Conference Focus, component of Jitsi Meet
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.jirafeau.enable" /> A web file repository
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.jitsi-meet.enable" /> Secure, simple and scalable video conferences
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.jitsi-videobridge.enable" /> Jitsi Videobridge, a WebRTC compatible router
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.jupyterhub.enable" /> Jupyterhub development server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.k3s.enable" /> Lightweight Kubernetes distribution
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.magic-wormhole-mailbox-server.enable" /> Magic Wormhole Mailbox Server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.malcontent.enable" /> Parental Control support
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.matrix-appservice-discord.enable" /> Matrix and Discord bridge
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.mautrix-telegram.enable" /> Matrix-Telegram puppeting/relaybot bridge
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.mirakurun.enable" /> Japanese DTV Tuner Server Service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.molly-brown.enable" /> Molly-Brown Gemini server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.mullvad-vpn.enable" /> Mullvad VPN daemon
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.ncdns.enable" /> Namecoin to DNS bridge
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.nextdns.enable" /> NextDNS to DoH Proxy service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.nix-store-gcs-proxy" /> Google storage bucket to be used as a nix store
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.onedrive.enable" /> OneDrive sync service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.pinnwand.enable" /> Pastebin-like service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.pixiecore.enable" /> Manage network booting of machines
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.privacyidea.enable" /> Privacy authentication server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.quorum.enable" /> Quorum blockchain daemon
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.robustirc-bridge.enable" /> RobustIRC bridge
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.rss-bridge.enable" /> Generate RSS and Atom feeds
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.rtorrent.enable" /> rTorrent service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.smartdns.enable" /> SmartDNS DNS server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.sogo.enable" /> SOGo groupware
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.teeworlds.enable" /> Teeworlds game server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.torque.mom.enable" /> torque computing node
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.torque.server.enable" /> torque server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.tuptime.enable" /> A total uptime service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.urserver.enable" /> X11 remote server
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.wasabibackend.enable" /> Wasabi backend service
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.yubikey-agent.enable" /> Yubikey agent
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       <xref linkend="opt-services.zigbee2mqtt.enable" /> Zigbee to MQTT bridge
+      </para>
+     </listitem>
+    </itemizedlist>
    </listitem>
+
+  </itemizedlist>
+
+ </section>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-20.09-incompatibilities">
+  <title>Backward Incompatibilities</title>
+
+  <para>
+   When upgrading from a previous release, please be aware of the following
+   incompatible changes:
+  </para>
+
+  <itemizedlist>
    <listitem>
     <para>
       MariaDB has been updated to 10.4, MariaDB Galera to 26.4.
@@ -144,36 +660,7 @@ GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost' WITH GRANT OPTION;
       from the default of <literal>mysql</literal> to a different user please change <literal>'mysql'@'localhost'</literal> to the corresponding user instead.
     </para>
    </listitem>
-   <listitem>
-    <para>
-      The new option <link linkend="opt-documentation.man.generateCaches">documentation.man.generateCaches</link>
-      has been added to automatically generate the <literal>man-db</literal> caches, which are needed by utilities
-      like <command>whatis</command> and <command>apropos</command>. The caches are generated during the build of
-      the NixOS configuration: since this can be expensive when a large number of packages are installed, the
-      feature is disabled by default.
-    </para>
-   </listitem>
-   <listitem>
-    <para>
-     <varname>services.postfix.sslCACert</varname> was replaced by <varname>services.postfix.tlsTrustedAuthorities</varname> which now defaults to system certificate authorities.
-    </para>
-   </listitem>
-   <listitem>
-    <para>
-      Subordinate GID and UID mappings are now set up automatically for all normal users.
-      This will make container tools like Podman work as non-root users out of the box.
-    </para>
-   </listitem>
-   <listitem>
-     <para>
-       The various documented workarounds to use steam have been converted to a module. <varname>programs.steam.enable</varname> enables steam, controller support and the workarounds.
-     </para>
-   </listitem>
-   <listitem>
-     <para>
-       Support for built-in LCDs in various pieces of Logitech hardware (keyboards and USB speakers). <varname>hardware.logitech.lcd.enable</varname> enables support for all hardware supported by the g15daemon project.
-     </para>
-   </listitem>
+
    <listitem>
     <para>
       Zabbix now defaults to 5.0, updated from 4.4. Please carefully read through
@@ -208,72 +695,13 @@ GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost' WITH GRANT OPTION;
 </programlisting>
     </para>
    </listitem>
-   <listitem>
-     <para>
-      The NixOS module system now supports freeform modules as a mix between <literal>types.attrsOf</literal> and <literal>types.submodule</literal>. These allow you to explicitly declare a subset of options while still permitting definitions without an associated option. See <xref linkend='sec-freeform-modules'/> for how to use them.
-     </para>
-   </listitem>
-   <listitem>
-     <para>
-       The GRUB module gained support for basic password protection, which
-       allows to restrict non-default entries in the boot menu to one or more
-       users. The users and passwords are defined via the option
-       <option>boot.loader.grub.users</option>.
-       Note: Password support is only avaiable in GRUB version 2.
-     </para>
-   </listitem>
-   <listitem>
-     <para>
-       Following its deprecation in 20.03, the Perl NixOS test driver has been removed.
-       All remaining tests have been ported to the Python test framework.
-       Code outside nixpkgs using <filename>make-test.nix</filename> or
-       <filename>testing.nix</filename> needs to be ported to
-       <filename>make-test-python.nix</filename> and
-       <filename>testing-python.nix</filename> respectively.
-     </para>
-   </listitem>
-  </itemizedlist>
- </section>
-
- <section xmlns="http://docbook.org/ns/docbook"
-         xmlns:xlink="http://www.w3.org/1999/xlink"
-         xmlns:xi="http://www.w3.org/2001/XInclude"
-         version="5.0"
-         xml:id="sec-release-20.09-new-services">
-  <title>New Services</title>
 
-  <para>
-   The following new services were added since the last release:
-  </para>
-
-  <itemizedlist>
    <listitem>
     <para>
-      There is a new <xref linkend="opt-security.doas.enable"/> module that provides <command>doas</command>, a lighter alternative to <command>sudo</command> with many of the same features.
-    </para>
-  </listitem>
-  <listitem>
-    <para>
-      <link xlink:href="https://hercules-ci.com">Hercules CI</link> Agent is a specialized build agent for projects built with Nix. See the <link xlink:href="https://nixos.org/nixos/options.html#services.hercules-ci-agent">options</link> and <link xlink:href="https://docs.hercules-ci.com/hercules-ci/getting-started/#deploy-agent">setup</link>.
+    <package>maxx</package> package removed along with <varname>services.xserver.desktopManager.maxx</varname> module.
+    Please migrate to <package>cdesktopenv</package> and <varname>services.xserver.desktopManager.cde</varname> module.
     </para>
    </listitem>
-  </itemizedlist>
-
- </section>
-
- <section xmlns="http://docbook.org/ns/docbook"
-         xmlns:xlink="http://www.w3.org/1999/xlink"
-         xmlns:xi="http://www.w3.org/2001/XInclude"
-         version="5.0"
-         xml:id="sec-release-20.09-incompatibilities">
-  <title>Backward Incompatibilities</title>
-
-  <para>
-   When upgrading from a previous release, please be aware of the following
-   incompatible changes:
-  </para>
-
-  <itemizedlist>
    <listitem>
     <para>
      The <link linkend="opt-services.matrix-synapse.enable">matrix-synapse</link> module no longer includes optional dependencies by default, they have to be added through the <link linkend="opt-services.matrix-synapse.plugins">plugins</link> option.
@@ -300,7 +728,7 @@ GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost' WITH GRANT OPTION;
      It can still be enabled by providing <literal>phantomJsSupport = true</literal> to the package instantiation:
 <programlisting>{
   services.grafana.package = pkgs.grafana.overrideAttrs (oldAttrs: rec {
-    phantomJsSupport = false;
+    phantomJsSupport = true;
   });
 }</programlisting>
     </para>
@@ -1235,4 +1663,131 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
     </listitem>
   </itemizedlist>
  </section>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-20.09-contributions">
+  <title>Contributions</title>
+  <para>
+        I, Jonathan Ringer, would like to thank the following individuals for their work on nixpkgs. This release could not be done without the hard work of the NixOS community. There were 31282 contributions across 1313 contributors.
+  </para>
+  <orderedlist>
+   <para>
+    Top contributors to NixOS/Nixpkgs from the 20.03 release to the 20.09 release:
+   </para>
+   <listitem>
+    <para>
+  2288  Mario Rodas
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+  1837  Frederik Rietdijk
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   946  Jörg Thalheim
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   925  Maximilian Bosch
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   687  Jonathan Ringer
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   651  Jan Tojnar
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   622  Daniël de Kok
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   605  WORLDofPEACE
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   597  Florian Klink
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   528  José Romildo Malaquias
+    </para>
+   </listitem>
+  </orderedlist>
+
+  <orderedlist>
+   <para>
+    Top contributors to stabilizing this release (Zero Hydra Failures period):
+   </para>
+   <listitem>
+    <para>
+      281  volth
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+   101  Robert Scott
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    86  Tim Steinbach
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    76  WORLDofPEACE
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    49  Maximilian Bosch
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    42  Thomas Tuegel
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    37  Doron Behar
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    36  Vladimír Čunát
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    27  Jonathan Ringer
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+    27  Maciej Krüger
+    </para>
+   </listitem>
+  </orderedlist>
+
+  <para>
+   I, Jonathan Ringer, would also like to personally thank @WORLDofPEACE for their help in mentoring me on the release process. Special thanks also goes to Thomas Tuegel for helping immensely with stabilizing Qt, KDE, and Plasma5; I would also like to thank Robert Scott for his numerous fixes and pull request reviews.
+   </para>
+
+ </section>
 </section>
diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py
index 156392ad1e3..68bd35dd98e 100644
--- a/nixos/lib/test-driver/test-driver.py
+++ b/nixos/lib/test-driver/test-driver.py
@@ -110,7 +110,6 @@ def create_vlan(vlan_nr: str) -> Tuple[str, str, "subprocess.Popen[bytes]", Any]
     pty_master, pty_slave = pty.openpty()
     vde_process = subprocess.Popen(
         ["vde_switch", "-s", vde_socket, "--dirmode", "0700"],
-        bufsize=1,
         stdin=pty_slave,
         stdout=subprocess.PIPE,
         stderr=subprocess.PIPE,
@@ -748,7 +747,6 @@ class Machine:
 
         self.process = subprocess.Popen(
             self.script,
-            bufsize=1,
             stdin=subprocess.DEVNULL,
             stdout=subprocess.PIPE,
             stderr=subprocess.STDOUT,
diff --git a/nixos/lib/testing-python.nix b/nixos/lib/testing-python.nix
index 302c7f78bf8..13abfb9a111 100644
--- a/nixos/lib/testing-python.nix
+++ b/nixos/lib/testing-python.nix
@@ -3,13 +3,13 @@
   # Use a minimal kernel?
 , minimal ? false
   # Ignored
-, config ? {}
+, config ? { }
   # !!! See comment about args in lib/modules.nix
-, specialArgs ? {}
+, specialArgs ? { }
   # Modules to add to each VM
-, extraConfigurations ? [] }:
+, extraConfigurations ? [ ]
+}:
 
-with import ./build-vms.nix { inherit system pkgs minimal specialArgs extraConfigurations; };
 with pkgs;
 
 rec {
@@ -17,42 +17,41 @@ rec {
   inherit pkgs;
 
 
-  mkTestDriver = let
-    testDriverScript = ./test-driver/test-driver.py;
-  in qemu_pkg: stdenv.mkDerivation {
-    name = "nixos-test-driver";
-
-    nativeBuildInputs = [ makeWrapper ];
-    buildInputs = [ (python3.withPackages (p: [ p.ptpython ])) ];
-    checkInputs = with python3Packages; [ pylint black mypy ];
-
-    dontUnpack = true;
+  mkTestDriver =
+    let
+      testDriverScript = ./test-driver/test-driver.py;
+    in
+    qemu_pkg: stdenv.mkDerivation {
+      name = "nixos-test-driver";
 
-    preferLocalBuild = true;
+      nativeBuildInputs = [ makeWrapper ];
+      buildInputs = [ (python3.withPackages (p: [ p.ptpython ])) ];
+      checkInputs = with python3Packages; [ pylint black mypy ];
 
-    doCheck = true;
-    checkPhase = ''
-      mypy --disallow-untyped-defs \
-           --no-implicit-optional \
-           --ignore-missing-imports ${testDriverScript}
-      pylint --errors-only ${testDriverScript}
-      black --check --diff ${testDriverScript}
-    '';
+      dontUnpack = true;
 
-    installPhase =
-      ''
-        mkdir -p $out/bin
-        cp ${testDriverScript} $out/bin/nixos-test-driver
-        chmod u+x $out/bin/nixos-test-driver
-        # TODO: copy user script part into this file (append)
+      preferLocalBuild = true;
 
-        wrapProgram $out/bin/nixos-test-driver \
-          --prefix PATH : "${lib.makeBinPath [ qemu_pkg vde2 netpbm coreutils ]}" \
+      doCheck = true;
+      checkPhase = ''
+        mypy --disallow-untyped-defs \
+             --no-implicit-optional \
+             --ignore-missing-imports ${testDriverScript}
+        pylint --errors-only ${testDriverScript}
+        black --check --diff ${testDriverScript}
       '';
-  };
 
-  testDriver = mkTestDriver qemu_test;
-  testDriverInteractive = mkTestDriver qemu_kvm;
+      installPhase =
+        ''
+          mkdir -p $out/bin
+          cp ${testDriverScript} $out/bin/nixos-test-driver
+          chmod u+x $out/bin/nixos-test-driver
+          # TODO: copy user script part into this file (append)
+
+          wrapProgram $out/bin/nixos-test-driver \
+            --prefix PATH : "${lib.makeBinPath [ qemu_pkg vde2 netpbm coreutils ]}" \
+        '';
+    };
 
   # Run an automated test suite in the given virtual network.
   # `driver' is the script that runs the network.
@@ -75,11 +74,10 @@ rec {
     { testScript
     , enableOCR ? false
     , name ? "unnamed"
-    # Skip linting (mainly intended for faster dev cycles)
+      # Skip linting (mainly intended for faster dev cycles)
     , skipLint ? false
     , ...
     } @ t:
-
     let
       # A standard store path to the vm monitor is built like this:
       #   /tmp/nix-build-vm-test-run-$name.drv-0/vm-state-machine/monitor
@@ -88,25 +86,7 @@ rec {
       maxTestNameLen = 50;
       testNameLen = builtins.stringLength name;
 
-      testDriverName = with builtins;
-        if testNameLen > maxTestNameLen then
-          abort ("The name of the test '${name}' must not be longer than ${toString maxTestNameLen} " +
-            "it's currently ${toString testNameLen} characters long.")
-        else
-          "nixos-test-driver-${name}";
-
-      nodes = buildVirtualNetwork (
-        t.nodes or (if t ? machine then { machine = t.machine; } else { }));
 
-      testScript' =
-        # Call the test script with the computed nodes.
-        if lib.isFunction testScript
-        then testScript { inherit nodes; }
-        else testScript;
-
-      vlans = map (m: m.config.virtualisation.vlans) (lib.attrValues nodes);
-
-      vms = map (m: m.config.system.build.vm) (lib.attrValues nodes);
 
       ocrProg = tesseract4.override { enableLanguages = [ "eng" ]; };
 
@@ -115,78 +95,124 @@ rec {
       # Generate convenience wrappers for running the test driver
       # interactively with the specified network, and for starting the
       # VMs from the command line.
-      driver = testDriver:
+      mkDriver = qemu_pkg:
         let
+          build-vms = import ./build-vms.nix {
+            inherit system pkgs minimal specialArgs;
+            extraConfigurations = extraConfigurations ++ (pkgs.lib.optional (qemu_pkg != null)
+              {
+                virtualisation.qemu.package = qemu_pkg;
+              }
+            );
+          };
+
+          # FIXME: get this pkg from the module system
+          testDriver = mkTestDriver (if qemu_pkg == null then pkgs.qemu_test else qemu_pkg);
+
+          nodes = build-vms.buildVirtualNetwork (
+            t.nodes or (if t ? machine then { machine = t.machine; } else { })
+          );
+          vlans = map (m: m.config.virtualisation.vlans) (lib.attrValues nodes);
+          vms = map (m: m.config.system.build.vm) (lib.attrValues nodes);
+
+          testScript' =
+            # Call the test script with the computed nodes.
+            if lib.isFunction testScript
+            then testScript { inherit nodes; }
+            else testScript;
+
+          testDriverName = with builtins;
+            if testNameLen > maxTestNameLen then
+              abort
+                ("The name of the test '${name}' must not be longer than ${toString maxTestNameLen} " +
+                  "it's currently ${toString testNameLen} characters long.")
+            else
+              "nixos-test-driver-${name}";
+
           warn = if skipLint then lib.warn "Linting is disabled!" else lib.id;
         in
         warn (runCommand testDriverName
-        { buildInputs = [ makeWrapper];
-          testScript = testScript';
-          preferLocalBuild = true;
-          testName = name;
-        }
-        ''
-          mkdir -p $out/bin
-
-          echo -n "$testScript" > $out/test-script
-          ${lib.optionalString (!skipLint) ''
-            ${python3Packages.black}/bin/black --check --diff $out/test-script
-          ''}
-
-          ln -s ${testDriver}/bin/nixos-test-driver $out/bin/
-          vms=($(for i in ${toString vms}; do echo $i/bin/run-*-vm; done))
-          wrapProgram $out/bin/nixos-test-driver \
-            --add-flags "''${vms[*]}" \
-            ${lib.optionalString enableOCR
-              "--prefix PATH : '${ocrProg}/bin:${imagemagick_tiff}/bin'"} \
-            --run "export testScript=\"\$(${coreutils}/bin/cat $out/test-script)\"" \
-            --set VLANS '${toString vlans}'
-          ln -s ${testDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms
-          wrapProgram $out/bin/nixos-run-vms \
-            --add-flags "''${vms[*]}" \
-            ${lib.optionalString enableOCR "--prefix PATH : '${ocrProg}/bin'"} \
-            --set tests 'start_all(); join_all();' \
-            --set VLANS '${toString vlans}' \
-            ${lib.optionalString (builtins.length vms == 1) "--set USE_SERIAL 1"}
-        ''); # "
+          {
+            buildInputs = [ makeWrapper ];
+            testScript = testScript';
+            preferLocalBuild = true;
+            testName = name;
+            passthru = {
+              inherit nodes;
+            };
+          }
+          ''
+            mkdir -p $out/bin
+
+            echo -n "$testScript" > $out/test-script
+            ${lib.optionalString (!skipLint) ''
+              ${python3Packages.black}/bin/black --check --diff $out/test-script
+            ''}
+
+            ln -s ${testDriver}/bin/nixos-test-driver $out/bin/
+            vms=($(for i in ${toString vms}; do echo $i/bin/run-*-vm; done))
+            wrapProgram $out/bin/nixos-test-driver \
+              --add-flags "''${vms[*]}" \
+              ${lib.optionalString enableOCR
+                "--prefix PATH : '${ocrProg}/bin:${imagemagick_tiff}/bin'"} \
+              --run "export testScript=\"\$(${coreutils}/bin/cat $out/test-script)\"" \
+              --set VLANS '${toString vlans}'
+            ln -s ${testDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms
+            wrapProgram $out/bin/nixos-run-vms \
+              --add-flags "''${vms[*]}" \
+              ${lib.optionalString enableOCR "--prefix PATH : '${ocrProg}/bin'"} \
+              --set tests 'start_all(); join_all();' \
+              --set VLANS '${toString vlans}' \
+              ${lib.optionalString (builtins.length vms == 1) "--set USE_SERIAL 1"}
+          ''); # "
 
       passMeta = drv: drv // lib.optionalAttrs (t ? meta) {
-        meta = (drv.meta or {}) // t.meta;
+        meta = (drv.meta or { }) // t.meta;
       };
 
-      test = passMeta (runTests (driver testDriver));
+      driver = mkDriver null;
+      driverInteractive = mkDriver pkgs.qemu;
 
-      nodeNames = builtins.attrNames nodes;
+      test = passMeta (runTests driver);
+
+      nodeNames = builtins.attrNames driver.nodes;
       invalidNodeNames = lib.filter
-        (node: builtins.match "^[A-z_]([A-z0-9_]+)?$" node == null) nodeNames;
+        (node: builtins.match "^[A-z_]([A-z0-9_]+)?$" node == null)
+        nodeNames;
 
     in
-      if lib.length invalidNodeNames > 0 then
-        throw ''
-          Cannot create machines out of (${lib.concatStringsSep ", " invalidNodeNames})!
-          All machines are referenced as python variables in the testing framework which will break the
-          script when special characters are used.
+    if lib.length invalidNodeNames > 0 then
+      throw ''
+        Cannot create machines out of (${lib.concatStringsSep ", " invalidNodeNames})!
+        All machines are referenced as python variables in the testing framework which will break the
+        script when special characters are used.
 
-          Please stick to alphanumeric chars and underscores as separation.
-        ''
-      else
-        test // {
-          inherit nodes test;
-          driver = driver testDriver;
-          driverInteractive = driver testDriverInteractive;
-        };
+        Please stick to alphanumeric chars and underscores as separation.
+      ''
+    else
+      test // {
+        inherit test driver driverInteractive;
+        inherit (driver) nodes;
+      };
 
   runInMachine =
     { drv
     , machine
     , preBuild ? ""
     , postBuild ? ""
+    , qemu ? pkgs.qemu_test
     , ... # ???
     }:
     let
-      vm = buildVM { }
-        [ machine
-          { key = "run-in-machine";
+      build-vms = import ./build-vms.nix {
+        inherit system pkgs minimal specialArgs extraConfigurations;
+      };
+
+      vm = build-vms.buildVM { }
+        [
+          machine
+          {
+            key = "run-in-machine";
             networking.hostName = "client";
             nix.readOnlyStore = false;
             virtualisation.writableStore = false;
@@ -229,20 +255,20 @@ rec {
         unset xchg
 
         export tests='${testScript}'
-        ${testDriver}/bin/nixos-test-driver ${vm.config.system.build.vm}/bin/run-*-vm
+        ${mkTestDriver qemu}/bin/nixos-test-driver --keep-vm-state ${vm.config.system.build.vm}/bin/run-*-vm
       ''; # */
 
     in
-      lib.overrideDerivation drv (attrs: {
-        requiredSystemFeatures = [ "kvm" ];
-        builder = "${bash}/bin/sh";
-        args = ["-e" vmRunCommand];
-        origArgs = attrs.args;
-        origBuilder = attrs.builder;
-      });
+    lib.overrideDerivation drv (attrs: {
+      requiredSystemFeatures = [ "kvm" ];
+      builder = "${bash}/bin/sh";
+      args = [ "-e" vmRunCommand ];
+      origArgs = attrs.args;
+      origBuilder = attrs.builder;
+    });
 
 
-  runInMachineWithX = { require ? [], ... } @ args:
+  runInMachineWithX = { require ? [ ], ... } @ args:
     let
       client =
         { ... }:
@@ -258,13 +284,13 @@ rec {
           services.xserver.windowManager.icewm.enable = true;
         };
     in
-      runInMachine ({
-        machine = client;
-        preBuild =
-          ''
-            client.wait_for_x()
-          '';
-      } // args);
+    runInMachine ({
+      machine = client;
+      preBuild =
+        ''
+          client.wait_for_x()
+        '';
+    } // args);
 
 
   simpleTest = as: (makeTest as).test;
diff --git a/nixos/modules/config/system-path.nix b/nixos/modules/config/system-path.nix
index c46937f8008..c65fa1a684f 100644
--- a/nixos/modules/config/system-path.nix
+++ b/nixos/modules/config/system-path.nix
@@ -33,6 +33,7 @@ let
       pkgs.ncurses
       pkgs.netcat
       config.programs.ssh.package
+      pkgs.mkpasswd
       pkgs.procps
       pkgs.su
       pkgs.time
diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index 5264d5b56fa..72285fe631d 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -35,8 +35,7 @@ let
   '';
 
   hashedPasswordDescription = ''
-    To generate a hashed password install the <literal>mkpasswd</literal>
-    package and run <literal>mkpasswd -m sha-512</literal>.
+    To generate a hashed password run <literal>mkpasswd -m sha-512</literal>.
 
     If set to an empty string (<literal>""</literal>), this user will
     be able to log in without being asked for a password (but not via remote
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
index 8c98691116d..803bae4212e 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
@@ -9,7 +9,14 @@ with lib;
 
   isoImage.edition = "gnome";
 
-  services.xserver.desktopManager.gnome3.enable = true;
+  services.xserver.desktopManager.gnome3 = {
+    # Add firefox to favorite-apps
+    favoriteAppsOverride = ''
+      [org.gnome.shell]
+      favorite-apps=[ 'firefox.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop' ]
+    '';
+    enable = true;
+  };
 
   services.xserver.displayManager = {
     gdm = {
diff --git a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
index 199e5f9206b..e49ceba2424 100644
--- a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
+++ b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
@@ -6,12 +6,7 @@
 let
   nodes = builtins.mapAttrs (vm: module: {
     _file = "${networkExpr}@node-${vm}";
-    imports = [
-      module
-      ({ pkgs, ... }: {
-        virtualisation.qemu.package = pkgs.qemu;
-      })
-    ];
+    imports = [ module ];
   }) (import networkExpr);
 in
 
@@ -20,4 +15,4 @@ with import ../../../../lib/testing-python.nix {
   pkgs = import ../../../../.. { inherit system config; };
 };
 
-(makeTest { inherit nodes; testScript = ""; }).driver
+(makeTest { inherit nodes; testScript = ""; }).driverInteractive
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index cce4e8e74b4..aa3b71a6124 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -173,6 +173,7 @@
   ./programs/wavemon.nix
   ./programs/waybar.nix
   ./programs/wireshark.nix
+  ./programs/wshowkeys.nix
   ./programs/x2goserver.nix
   ./programs/xfs_quota.nix
   ./programs/xonsh.nix
diff --git a/nixos/modules/programs/wshowkeys.nix b/nixos/modules/programs/wshowkeys.nix
new file mode 100644
index 00000000000..09b008af1d5
--- /dev/null
+++ b/nixos/modules/programs/wshowkeys.nix
@@ -0,0 +1,22 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.programs.wshowkeys;
+in {
+  meta.maintainers = with maintainers; [ primeos ];
+
+  options = {
+    programs.wshowkeys = {
+      enable = mkEnableOption ''
+        wshowkeys (displays keypresses on screen on supported Wayland
+        compositors). It requires root permissions to read input events, but
+        these permissions are dropped after startup'';
+    };
+  };
+
+  config = mkIf cfg.enable {
+    security.wrappers.wshowkeys.source = "${pkgs.wshowkeys}/bin/wshowkeys";
+  };
+}
diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix
index a20d0a243a8..a517f9e51ce 100644
--- a/nixos/modules/security/pam.nix
+++ b/nixos/modules/security/pam.nix
@@ -318,6 +318,42 @@ let
         '';
       };
 
+      gnupg = {
+        enable = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            If enabled, pam_gnupg will attempt to automatically unlock the
+            user's GPG keys with the login password via
+            <command>gpg-agent</command>. The keygrips of all keys to be
+            unlocked should be written to <filename>~/.pam-gnupg</filename>,
+            and can be queried with <command>gpg -K --with-keygrip</command>.
+            Presetting passphrases must be enabled by adding
+            <literal>allow-preset-passphrase</literal> in
+            <filename>~/.gnupg/gpg-agent.conf</filename>.
+          '';
+        };
+
+        noAutostart = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Don't start <command>gpg-agent</command> if it is not running.
+            Useful in conjunction with starting <command>gpg-agent</command> as
+            a systemd user service.
+          '';
+        };
+
+        storeOnly = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Don't send the password immediately after login, but store for PAM
+            <literal>session</literal>.
+          '';
+        };
+      };
+
       text = mkOption {
         type = types.nullOr types.lines;
         description = "Contents of the PAM service file.";
@@ -386,6 +422,7 @@ let
             || cfg.enableKwallet
             || cfg.enableGnomeKeyring
             || cfg.googleAuthenticator.enable
+            || cfg.gnupg.enable
             || cfg.duoSecurity.enable)) ''
               auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth
               ${optionalString config.security.pam.enableEcryptfs
@@ -397,6 +434,10 @@ let
                  " kwalletd=${pkgs.kdeFrameworks.kwallet.bin}/bin/kwalletd5")}
               ${optionalString cfg.enableGnomeKeyring
                 "auth optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so"}
+              ${optionalString cfg.gnupg.enable
+                "auth optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so"
+                + optionalString cfg.gnupg.storeOnly " store-only"
+               }
               ${optionalString cfg.googleAuthenticator.enable
                 "auth required ${pkgs.googleAuthenticator}/lib/security/pam_google_authenticator.so no_increment_hotp"}
               ${optionalString cfg.duoSecurity.enable
@@ -472,6 +513,10 @@ let
                " kwalletd=${pkgs.kdeFrameworks.kwallet.bin}/bin/kwalletd5")}
           ${optionalString (cfg.enableGnomeKeyring)
               "session optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start"}
+          ${optionalString cfg.gnupg.enable
+              "session optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so"
+              + optionalString cfg.gnupg.noAutostart " no-autostart"
+           }
           ${optionalString (config.virtualisation.lxc.lxcfs.enable)
                "session optional ${pkgs.lxc}/lib/security/pam_cgfs.so -c all"}
         '');
diff --git a/nixos/modules/services/backup/syncoid.nix b/nixos/modules/services/backup/syncoid.nix
index fff119c2cf0..e72e3fa59cf 100644
--- a/nixos/modules/services/backup/syncoid.nix
+++ b/nixos/modules/services/backup/syncoid.nix
@@ -4,6 +4,15 @@ with lib;
 
 let
   cfg = config.services.syncoid;
+
+  # Extract pool names of local datasets (ones that don't contain "@") that
+  # have the specified type (either "source" or "target")
+  getPools = type: unique (map (d: head (builtins.match "([^/]+).*" d)) (
+    # Filter local datasets
+    filter (d: !hasInfix "@" d)
+    # Get datasets of the specified type
+    (catAttrs type (attrValues cfg.commands))
+  ));
 in {
 
     # Interface
@@ -26,14 +35,25 @@ in {
 
       user = mkOption {
         type = types.str;
-        default = "root";
+        default = "syncoid";
         example = "backup";
         description = ''
-          The user for the service. Sudo or ZFS privilege delegation must be
-          configured to use a user other than root.
+          The user for the service. ZFS privilege delegation will be
+          automatically configured for any local pools used by syncoid if this
+          option is set to a user other than root. The user will be given the
+          "hold" and "send" privileges on any pool that has datasets being sent
+          and the "create", "mount", "receive", and "rollback" privileges on
+          any pool that has datasets being received.
         '';
       };
 
+      group = mkOption {
+        type = types.str;
+        default = "syncoid";
+        example = "backup";
+        description = "The group for the service.";
+      };
+
       sshKey = mkOption {
         type = types.nullOr types.path;
         # Prevent key from being copied to store
@@ -150,6 +170,18 @@ in {
     # Implementation
 
     config = mkIf cfg.enable {
+      users =  {
+        users = mkIf (cfg.user == "syncoid") {
+          syncoid = {
+            group = cfg.group;
+            isSystemUser = true;
+          };
+        };
+        groups = mkIf (cfg.group == "syncoid") {
+          syncoid = {};
+        };
+      };
+
       systemd.services.syncoid = {
         description = "Syncoid ZFS synchronization service";
         script = concatMapStringsSep "\n" (c: lib.escapeShellArgs
@@ -160,10 +192,22 @@ in {
             ++ c.extraArgs
             ++ [ "--sendoptions" c.sendOptions
                  "--recvoptions" c.recvOptions
+                 "--no-privilege-elevation"
                  c.source c.target
                ])) (attrValues cfg.commands);
         after = [ "zfs.target" ];
-        serviceConfig.User = cfg.user;
+        serviceConfig = {
+          ExecStartPre = (map (pool: lib.escapeShellArgs [
+            "+/run/booted-system/sw/bin/zfs" "allow"
+            cfg.user "hold,send" pool
+          ]) (getPools "source")) ++
+          (map (pool: lib.escapeShellArgs [
+            "+/run/booted-system/sw/bin/zfs" "allow"
+            cfg.user "create,mount,receive,rollback" pool
+          ]) (getPools "target"));
+          User = cfg.user;
+          Group = cfg.group;
+        };
         startAt = cfg.interval;
       };
     };
diff --git a/nixos/modules/services/desktops/flatpak.nix b/nixos/modules/services/desktops/flatpak.nix
index 7da92cc9f26..d0f6b66328a 100644
--- a/nixos/modules/services/desktops/flatpak.nix
+++ b/nixos/modules/services/desktops/flatpak.nix
@@ -15,6 +15,18 @@ in {
   options = {
     services.flatpak = {
       enable = mkEnableOption "flatpak";
+
+      guiPackages = mkOption {
+        internal = true;
+        type = types.listOf types.package;
+        default = [];
+        example = literalExample "[ pkgs.gnome3.gnome-software ]";
+        description = ''
+          Packages that provide an interface for flatpak
+          (like gnome-software) that will be automatically available
+          to all users when flatpak is enabled.
+        '';
+      };
     };
   };
 
@@ -28,7 +40,7 @@ in {
       }
     ];
 
-    environment.systemPackages = [ pkgs.flatpak ];
+    environment.systemPackages = [ pkgs.flatpak ] ++ cfg.guiPackages;
 
     services.dbus.packages = [ pkgs.flatpak ];
 
diff --git a/nixos/modules/services/networking/avahi-daemon.nix b/nixos/modules/services/networking/avahi-daemon.nix
index 2900c37f990..0b7d5575c11 100644
--- a/nixos/modules/services/networking/avahi-daemon.nix
+++ b/nixos/modules/services/networking/avahi-daemon.nix
@@ -86,7 +86,8 @@ in
 
     ipv6 = mkOption {
       type = types.bool;
-      default = false;
+      default = config.networking.enableIPv6;
+      defaultText = "config.networking.enableIPv6";
       description = "Whether to use IPv6.";
     };
 
diff --git a/nixos/modules/services/networking/dnscrypt-wrapper.nix b/nixos/modules/services/networking/dnscrypt-wrapper.nix
index b9333cd19a2..ee7e9b0454d 100644
--- a/nixos/modules/services/networking/dnscrypt-wrapper.nix
+++ b/nixos/modules/services/networking/dnscrypt-wrapper.nix
@@ -55,7 +55,10 @@ let
   rotateKeys = ''
     # check if keys are not expired
     keyValid() {
-      fingerprint=$(dnscrypt-wrapper --show-provider-publickey | awk '{print $(NF)}')
+      fingerprint=$(dnscrypt-wrapper \
+        --show-provider-publickey \
+        --provider-publickey-file=${publicKey} \
+        | awk '{print $(NF)}')
       dnscrypt-proxy --test=${toString (cfg.keys.checkInterval + 1)} \
         --resolver-address=127.0.0.1:${toString cfg.port} \
         --provider-name=${cfg.providerName} \
diff --git a/nixos/modules/services/networking/mosquitto.nix b/nixos/modules/services/networking/mosquitto.nix
index d2feb93e2b7..4a85b3956da 100644
--- a/nixos/modules/services/networking/mosquitto.nix
+++ b/nixos/modules/services/networking/mosquitto.nix
@@ -123,12 +123,33 @@ in
               '';
             };
 
+            passwordFile = mkOption {
+              type = with types; uniq (nullOr str);
+              example = "/path/to/file";
+              default = null;
+              description = ''
+                Specifies the path to a file containing the
+                clear text password for the MQTT user.
+              '';
+            };
+
             hashedPassword = mkOption {
               type = with types; uniq (nullOr str);
               default = null;
               description = ''
                 Specifies the hashed password for the MQTT User.
-                <option>hashedPassword</option> overrides <option>password</option>.
+                To generate hashed password install <literal>mosquitto</literal>
+                package and use <literal>mosquitto_passwd</literal>.
+              '';
+            };
+
+            hashedPasswordFile = mkOption {
+              type = with types; uniq (nullOr str);
+              example = "/path/to/file";
+              default = null;
+              description = ''
+                Specifies the path to a file containing the
+                hashed password for the MQTT user.
                 To generate hashed password install <literal>mosquitto</literal>
                 package and use <literal>mosquitto_passwd</literal>.
               '';
@@ -190,6 +211,13 @@ in
 
   config = mkIf cfg.enable {
 
+    assertions = mapAttrsToList (name: cfg: {
+      assertion = length (filter (s: s != null) (with cfg; [
+        password passwordFile hashedPassword hashedPasswordFile
+      ])) <= 1;
+      message = "Cannot set more than one password option";
+    }) cfg.users;
+
     systemd.services.mosquitto = {
       description = "Mosquitto MQTT Broker Daemon";
       wantedBy = [ "multi-user.target" ];
@@ -210,7 +238,11 @@ in
         touch ${cfg.dataDir}/passwd
       '' + concatStringsSep "\n" (
         mapAttrsToList (n: c:
-          if c.hashedPassword != null then
+          if c.hashedPasswordFile != null then
+            "echo '${n}:'$(cat '${c.hashedPasswordFile}') >> ${cfg.dataDir}/passwd"
+          else if c.passwordFile != null then
+            "${pkgs.mosquitto}/bin/mosquitto_passwd -b ${cfg.dataDir}/passwd ${n} $(cat '${c.passwordFile}')"
+          else if c.hashedPassword != null then
             "echo '${n}:${c.hashedPassword}' >> ${cfg.dataDir}/passwd"
           else optionalString (c.password != null)
             "${pkgs.mosquitto}/bin/mosquitto_passwd -b ${cfg.dataDir}/passwd ${n} '${c.password}'"
diff --git a/nixos/modules/services/web-apps/engelsystem.nix b/nixos/modules/services/web-apps/engelsystem.nix
index 899582a2030..2e755ae9d52 100644
--- a/nixos/modules/services/web-apps/engelsystem.nix
+++ b/nixos/modules/services/web-apps/engelsystem.nix
@@ -10,7 +10,7 @@ in {
         default = false;
         example = true;
         description = ''
-          Whether to enable engelsystem, an online tool for coordinating helpers
+          Whether to enable engelsystem, an online tool for coordinating volunteers
           and shifts on large events.
         '';
         type = lib.types.bool;
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 6d2ddea927e..631e92fd6e9 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -86,7 +86,7 @@ let
       ''}
 
       ssl_protocols ${cfg.sslProtocols};
-      ssl_ciphers ${cfg.sslCiphers};
+      ${optionalString (cfg.sslCiphers != null) "ssl_ciphers ${cfg.sslCiphers};"}
       ${optionalString (cfg.sslDhparam != null) "ssl_dhparam ${cfg.sslDhparam};"}
 
       ${optionalString (cfg.recommendedTlsSettings) ''
@@ -487,7 +487,7 @@ in
       };
 
       sslCiphers = mkOption {
-        type = types.str;
+        type = types.nullOr types.str;
         # Keep in sync with https://ssl-config.mozilla.org/#server=nginx&config=intermediate
         default = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
         description = "Ciphers to choose from when negotiating TLS handshakes.";
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 0b16a359c22..68a65d77d62 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -17,6 +17,11 @@ let
     '';
   };
 
+  defaultFavoriteAppsOverride = ''
+    [org.gnome.shell]
+    favorite-apps=[ 'org.gnome.Geary.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop' ]
+  '';
+
   nixos-gsettings-desktop-schemas = let
     defaultPackages = with pkgs; [ gsettings-desktop-schemas gnome3.gnome-shell ];
   in
@@ -42,8 +47,7 @@ let
        [org.gnome.desktop.screensaver]
        picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath}'
 
-       [org.gnome.shell]
-       favorite-apps=[ 'org.gnome.Epiphany.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]
+       ${cfg.favoriteAppsOverride}
 
        ${cfg.extraGSettingsOverrides}
      EOF
@@ -124,6 +128,17 @@ in
         apply = list: list ++ [ pkgs.gnome3.gnome-shell pkgs.gnome3.gnome-shell-extensions ];
       };
 
+      favoriteAppsOverride = mkOption {
+        internal = true; # this is messy
+        default = defaultFavoriteAppsOverride;
+        type = types.lines;
+        example = literalExample ''
+          [org.gnome.shell]
+          favorite-apps=[ 'firefox.desktop', 'org.gnome.Calendar.desktop' ]
+        '';
+        description = "List of desktop files to put as favorite apps into gnome-shell. These need to be installed somehow globally.";
+      };
+
       extraGSettingsOverrides = mkOption {
         default = "";
         type = types.lines;
@@ -216,6 +231,11 @@ in
 
        # If gnome3 is installed, build vim for gtk3 too.
       nixpkgs.config.vim.gui = "gtk3";
+
+      # Install gnome-software if flatpak is enabled
+      services.flatpak.guiPackages = [
+        pkgs.gnome3.gnome-software
+      ];
     })
 
     (mkIf flashbackEnabled {
@@ -404,7 +424,6 @@ in
         gnome-music
         pkgs.gnome-photos
         gnome-screenshot
-        gnome-software
         gnome-system-monitor
         gnome-weather
         nautilus
diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix
index e67e216f90d..cf02a71248b 100644
--- a/nixos/modules/services/x11/desktop-managers/pantheon.nix
+++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix
@@ -180,7 +180,6 @@ in
         gtk3.out
         hicolor-icon-theme
         lightlocker
-        nixos-artwork.wallpapers.simple-dark-gray
         onboard
         qgnomeplatform
         shared-mime-info
diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix
index 2986bd4c4e3..be5fa88b8ad 100644
--- a/nixos/modules/testing/test-instrumentation.nix
+++ b/nixos/modules/testing/test-instrumentation.nix
@@ -45,15 +45,21 @@ with import ../../lib/qemu-flags.nix { inherit pkgs; };
     systemd.services."serial-getty@${qemuSerialDevice}".enable = false;
     systemd.services."serial-getty@hvc0".enable = false;
 
-    # Only use a serial console, no TTY.
-    # NOTE: optionalAttrs
-    #       test-instrumentation.nix appears to be used without qemu-vm.nix, so
-    #       we avoid defining consoles if not possible.
-    # TODO: refactor such that test-instrumentation can import qemu-vm
-    #       or declare virtualisation.qemu.console option in a module that's always imported
-    virtualisation.qemu = {
-      consoles = lib.optional (options ? virtualisation.qemu.consoles) qemuSerialDevice;
-      package  = lib.mkDefault pkgs.qemu_test;
+    # Only set these settings when the options exist. Some tests (e.g. those
+    # that do not specify any nodes, or an empty attr set as nodes) will not
+    # have the QEMU module loaded and thuse these options can't and should not
+    # be set.
+    virtualisation = lib.optionalAttrs (options ? virtualisation.qemu) {
+      qemu = {
+        # Only use a serial console, no TTY.
+        # NOTE: optionalAttrs
+        #       test-instrumentation.nix appears to be used without qemu-vm.nix, so
+        #       we avoid defining consoles if not possible.
+        # TODO: refactor such that test-instrumentation can import qemu-vm
+        #       or declare virtualisation.qemu.console option in a module that's always imported
+        consoles = [ qemuSerialDevice ];
+        package  = lib.mkDefault pkgs.qemu_test;
+      };
     };
 
     boot.initrd.preDeviceCommands =
diff --git a/nixos/modules/virtualisation/ec2-amis.nix b/nixos/modules/virtualisation/ec2-amis.nix
index 24de8cf1afb..4d9c391e046 100644
--- a/nixos/modules/virtualisation/ec2-amis.nix
+++ b/nixos/modules/virtualisation/ec2-amis.nix
@@ -329,5 +329,24 @@ let self = {
   "20.03".ap-east-1.hvm-ebs = "ami-0d18fdd309cdefa86";
   "20.03".sa-east-1.hvm-ebs = "ami-09859378158ae971d";
 
-  latest = self."20.03";
+  # 20.09.1465.9a0b14b097d
+  "20.09".eu-west-1.hvm-ebs = "ami-0d90f16418e3c364c";
+  "20.09".eu-west-2.hvm-ebs = "ami-0635ec0780ea57cfe";
+  "20.09".eu-west-3.hvm-ebs = "ami-0714e94352f2eabb9";
+  "20.09".eu-central-1.hvm-ebs = "ami-0979d39762a4d2a02";
+  "20.09".eu-north-1.hvm-ebs = "ami-0b14e273185c66e9b";
+  "20.09".us-east-1.hvm-ebs = "ami-0f8b063ac3f2d9645";
+  "20.09".us-east-2.hvm-ebs = "ami-0959202a0393fdd0c";
+  "20.09".us-west-1.hvm-ebs = "ami-096d50833b785478b";
+  "20.09".us-west-2.hvm-ebs = "ami-0fc31031df0df6104";
+  "20.09".ca-central-1.hvm-ebs = "ami-0787786a38cde3905";
+  "20.09".ap-southeast-1.hvm-ebs = "ami-0b3f693d3a2a0b9ae";
+  "20.09".ap-southeast-2.hvm-ebs = "ami-02471872bc876b610";
+  "20.09".ap-northeast-1.hvm-ebs = "ami-06505fd2bf44a59a7";
+  "20.09".ap-northeast-2.hvm-ebs = "ami-0754b4c014eea1e8a";
+  "20.09".ap-south-1.hvm-ebs = "ami-05100e32242ae65a6";
+  "20.09".ap-east-1.hvm-ebs = "ami-045288859a39de009";
+  "20.09".sa-east-1.hvm-ebs = "ami-0a937748db48fb00d";
+
+  latest = self."20.09";
 }; in self
diff --git a/nixos/tests/bitcoind.nix b/nixos/tests/bitcoind.nix
index 09f3e4a6ec0..9068b29b8e5 100644
--- a/nixos/tests/bitcoind.nix
+++ b/nixos/tests/bitcoind.nix
@@ -31,16 +31,16 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     machine.wait_for_unit("bitcoind-testnet.service")
 
     machine.wait_until_succeeds(
-        'curl --user rpc:rpc --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:8332 |  grep \'"chain":"main"\' '
+        'curl --fail --user rpc:rpc --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:8332 |  grep \'"chain":"main"\' '
     )
     machine.wait_until_succeeds(
-        'curl --user rpc2:rpc2 --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:8332 |  grep \'"chain":"main"\' '
+        'curl --fail --user rpc2:rpc2 --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:8332 |  grep \'"chain":"main"\' '
     )
     machine.wait_until_succeeds(
-        'curl --user rpc:rpc --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:18332 |  grep \'"chain":"test"\' '
+        'curl --fail --user rpc:rpc --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:18332 |  grep \'"chain":"test"\' '
     )
     machine.wait_until_succeeds(
-        'curl --user rpc2:rpc2 --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:18332 |  grep \'"chain":"test"\' '
+        'curl --fail --user rpc2:rpc2 --data-binary \'{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }\' -H \'content-type: text/plain;\' localhost:18332 |  grep \'"chain":"test"\' '
     )
   '';
 })
diff --git a/nixos/tests/caddy.nix b/nixos/tests/caddy.nix
index 445a7fa6b0b..f2de34ff2da 100644
--- a/nixos/tests/caddy.nix
+++ b/nixos/tests/caddy.nix
@@ -57,11 +57,13 @@ import ./make-test-python.nix ({ pkgs, ... }: {
 
     def check_etag(url):
         etag = webserver.succeed(
-            "curl -v '{}' 2>&1 | sed -n -e \"s/^< [Ee][Tt][Aa][Gg]: *//p\"".format(url)
+            "curl --fail -v '{}' 2>&1 | sed -n -e \"s/^< [Ee][Tt][Aa][Gg]: *//p\"".format(
+                url
+            )
         )
         etag = etag.replace("\r\n", " ")
         http_code = webserver.succeed(
-            "curl --silent --show-error -o /dev/null -w \"%{{http_code}}\" --head -H 'If-None-Match: {}' {}".format(
+            "curl --fail --silent --show-error -o /dev/null -w \"%{{http_code}}\" --head -H 'If-None-Match: {}' {}".format(
                 etag, url
             )
         )
diff --git a/nixos/tests/cadvisor.nix b/nixos/tests/cadvisor.nix
index 60c04f14780..664aa3ad876 100644
--- a/nixos/tests/cadvisor.nix
+++ b/nixos/tests/cadvisor.nix
@@ -19,16 +19,16 @@ import ./make-test-python.nix ({ pkgs, ... } : {
   testScript =  ''
       start_all()
       machine.wait_for_unit("cadvisor.service")
-      machine.succeed("curl http://localhost:8080/containers/")
+      machine.succeed("curl -f http://localhost:8080/containers/")
 
       influxdb.wait_for_unit("influxdb.service")
 
       # create influxdb database
       influxdb.succeed(
-          'curl -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE root"'
+          'curl -f -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE root"'
       )
 
       influxdb.wait_for_unit("cadvisor.service")
-      influxdb.succeed("curl http://localhost:8080/containers/")
+      influxdb.succeed("curl -f http://localhost:8080/containers/")
     '';
 })
diff --git a/nixos/tests/cfssl.nix b/nixos/tests/cfssl.nix
index e291fc285fb..170f09d9b76 100644
--- a/nixos/tests/cfssl.nix
+++ b/nixos/tests/cfssl.nix
@@ -38,7 +38,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
   testScript =
   let
     cfsslrequest = with pkgs; writeScript "cfsslrequest" ''
-      curl -X POST -H "Content-Type: application/json" -d @${csr} \
+      curl -f -X POST -H "Content-Type: application/json" -d @${csr} \
         http://localhost:8888/api/v1/cfssl/newkey | ${cfssl}/bin/cfssljson /tmp/certificate
     '';
     csr = pkgs.writeText "csr.json" (builtins.toJSON {
diff --git a/nixos/tests/convos.nix b/nixos/tests/convos.nix
index b4ff1188fd8..af2758c857d 100644
--- a/nixos/tests/convos.nix
+++ b/nixos/tests/convos.nix
@@ -25,6 +25,6 @@ in
     machine.wait_for_unit("convos")
     machine.wait_for_open_port("${toString port}")
     machine.succeed("journalctl -u convos | grep -q 'Listening at.*${toString port}'")
-    machine.succeed("curl http://localhost:${toString port}/")
+    machine.succeed("curl -f http://localhost:${toString port}/")
   '';
 })
diff --git a/nixos/tests/corerad.nix b/nixos/tests/corerad.nix
index 37a1e90477a..638010f92f4 100644
--- a/nixos/tests/corerad.nix
+++ b/nixos/tests/corerad.nix
@@ -80,7 +80,7 @@ import ./make-test-python.nix (
           ), "SLAAC temporary address was not configured on client after router advertisement"
 
       with subtest("Verify HTTP debug server is configured"):
-          out = router.succeed("curl localhost:9430/metrics")
+          out = router.succeed("curl -f localhost:9430/metrics")
 
           assert (
               "corerad_build_info" in out
diff --git a/nixos/tests/docker-edge.nix b/nixos/tests/docker-edge.nix
index 96de885a554..703179eef19 100644
--- a/nixos/tests/docker-edge.nix
+++ b/nixos/tests/docker-edge.nix
@@ -43,7 +43,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     docker.fail("sudo -u noprivs docker ps")
     docker.succeed("docker stop sleeping")
 
-    # Must match version twice to ensure client and server versions are correct
-    docker.succeed('[ $(docker version | grep ${pkgs.docker-edge.version} | wc -l) = "2" ]')
+    # Must match version 4 times to ensure client and server git commits and versions are correct
+    docker.succeed('[ $(docker version | grep ${pkgs.docker-edge.version} | wc -l) = "4" ]')
   '';
 })
diff --git a/nixos/tests/docker-tools.nix b/nixos/tests/docker-tools.nix
index edb9aec62db..c1c41b0fc11 100644
--- a/nixos/tests/docker-tools.nix
+++ b/nixos/tests/docker-tools.nix
@@ -115,7 +115,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
             "docker load --input='${examples.nginx}'",
             "docker run --name nginx -d -p 8000:80 ${examples.nginx.imageName}",
         )
-        docker.wait_until_succeeds("curl http://localhost:8000/")
+        docker.wait_until_succeeds("curl -f http://localhost:8000/")
         docker.succeed(
             "docker rm --force nginx", "docker rmi '${examples.nginx.imageName}'",
         )
diff --git a/nixos/tests/go-neb.nix b/nixos/tests/go-neb.nix
index d9e5db0b4a5..531ab5a6671 100644
--- a/nixos/tests/go-neb.nix
+++ b/nixos/tests/go-neb.nix
@@ -34,7 +34,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
     start_all()
     server.wait_for_unit("go-neb.service")
     server.wait_until_succeeds(
-        "curl -L http://localhost:4050/services/hooks/d2lraXBlZGlhX3NlcnZpY2U"
+        "curl -fL http://localhost:4050/services/hooks/d2lraXBlZGlhX3NlcnZpY2U"
     )
     server.wait_until_succeeds(
         "journalctl -eu go-neb -o cat | grep -q service_id=wikipedia_service"
diff --git a/nixos/tests/hadoop/hdfs.nix b/nixos/tests/hadoop/hdfs.nix
index 85aaab34b15..f1f98ed42eb 100644
--- a/nixos/tests/hadoop/hdfs.nix
+++ b/nixos/tests/hadoop/hdfs.nix
@@ -48,7 +48,7 @@ import ../make-test-python.nix ({...}: {
     datanode.wait_for_open_port(9866)
     datanode.wait_for_open_port(9867)
 
-    namenode.succeed("curl http://namenode:9870")
-    datanode.succeed("curl http://datanode:9864")
+    namenode.succeed("curl -f http://namenode:9870")
+    datanode.succeed("curl -f http://datanode:9864")
   '';
 })
diff --git a/nixos/tests/hadoop/yarn.nix b/nixos/tests/hadoop/yarn.nix
index 2264ecaff15..01077245d39 100644
--- a/nixos/tests/hadoop/yarn.nix
+++ b/nixos/tests/hadoop/yarn.nix
@@ -40,7 +40,7 @@ import ../make-test-python.nix ({...}: {
     nodemanager.wait_for_open_port(8042)
     nodemanager.wait_for_open_port(8041)
 
-    resourcemanager.succeed("curl http://localhost:8088")
-    nodemanager.succeed("curl http://localhost:8042")
+    resourcemanager.succeed("curl -f http://localhost:8088")
+    nodemanager.succeed("curl -f http://localhost:8042")
   '';
 })
diff --git a/nixos/tests/haproxy.nix b/nixos/tests/haproxy.nix
index ffb77c052a2..2c3878131b6 100644
--- a/nixos/tests/haproxy.nix
+++ b/nixos/tests/haproxy.nix
@@ -39,9 +39,9 @@ import ./make-test-python.nix ({ pkgs, ...}: {
     machine.wait_for_unit("multi-user.target")
     machine.wait_for_unit("haproxy.service")
     machine.wait_for_unit("httpd.service")
-    assert "We are all good!" in machine.succeed("curl -k http://localhost:80/index.txt")
+    assert "We are all good!" in machine.succeed("curl -fk http://localhost:80/index.txt")
     assert "haproxy_process_pool_allocated_bytes" in machine.succeed(
-        "curl -k http://localhost:80/metrics"
+        "curl -fk http://localhost:80/metrics"
     )
 
     with subtest("reload"):
@@ -49,7 +49,7 @@ import ./make-test-python.nix ({ pkgs, ...}: {
         # wait some time to ensure the following request hits the reloaded haproxy
         machine.sleep(5)
         assert "We are all good!" in machine.succeed(
-            "curl -k http://localhost:80/index.txt"
+            "curl -fk http://localhost:80/index.txt"
         )
   '';
 })
diff --git a/nixos/tests/hitch/default.nix b/nixos/tests/hitch/default.nix
index 904d12619d7..8a2193e75f2 100644
--- a/nixos/tests/hitch/default.nix
+++ b/nixos/tests/hitch/default.nix
@@ -28,6 +28,6 @@ import ../make-test-python.nix ({ pkgs, ... }:
       machine.wait_for_unit("multi-user.target")
       machine.wait_for_unit("hitch.service")
       machine.wait_for_open_port(443)
-      assert "We are all good!" in machine.succeed("curl -k https://localhost:443/index.txt")
+      assert "We are all good!" in machine.succeed("curl -fk https://localhost:443/index.txt")
     '';
 })
diff --git a/nixos/tests/hound.nix b/nixos/tests/hound.nix
index 27c65abdf27..b8b10022bd9 100644
--- a/nixos/tests/hound.nix
+++ b/nixos/tests/hound.nix
@@ -53,7 +53,7 @@ import ./make-test-python.nix ({ pkgs, ... } : {
     machine.wait_for_unit("hound.service")
     machine.wait_for_open_port(6080)
     machine.wait_until_succeeds(
-        "curl http://127.0.0.1:6080/api/v1/search\?stats\=fosho\&repos\=\*\&rng=%3A20\&q\=hi\&files\=\&i=nope | grep 'Filename' | grep 'hello'"
+        "curl -f http://127.0.0.1:6080/api/v1/search\?stats\=fosho\&repos\=\*\&rng=%3A20\&q\=hi\&files\=\&i=nope | grep 'Filename' | grep 'hello'"
     )
   '';
 })
diff --git a/nixos/tests/leaps.nix b/nixos/tests/leaps.nix
index ac0c602d445..ec5b69a7629 100644
--- a/nixos/tests/leaps.nix
+++ b/nixos/tests/leaps.nix
@@ -26,7 +26,7 @@ import ./make-test-python.nix ({ pkgs,  ... }:
       server.wait_for_open_port(6666)
       client.wait_for_unit("network.target")
       assert "leaps" in client.succeed(
-          "${pkgs.curl}/bin/curl http://server:6666/leaps/"
+          "${pkgs.curl}/bin/curl -f http://server:6666/leaps/"
       )
     '';
 })
diff --git a/nixos/tests/limesurvey.nix b/nixos/tests/limesurvey.nix
index 7228fcb8331..dad807fb733 100644
--- a/nixos/tests/limesurvey.nix
+++ b/nixos/tests/limesurvey.nix
@@ -20,7 +20,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
 
     machine.wait_for_unit("phpfpm-limesurvey.service")
     assert "The following surveys are available" in machine.succeed(
-        "curl http://example.local/"
+        "curl -f http://example.local/"
     )
   '';
 })
diff --git a/nixos/tests/mailcatcher.nix b/nixos/tests/mailcatcher.nix
index 2ef38544fe0..a55fba8a995 100644
--- a/nixos/tests/mailcatcher.nix
+++ b/nixos/tests/mailcatcher.nix
@@ -24,7 +24,7 @@ import ./make-test-python.nix ({ lib, ... }:
         'echo "this is the body of the email" | mail -s "subject" root@example.org'
     )
     assert "this is the body of the email" in machine.succeed(
-        "curl http://localhost:1080/messages/1.source"
+        "curl -f http://localhost:1080/messages/1.source"
     )
   '';
 })
diff --git a/nixos/tests/matrix-synapse.nix b/nixos/tests/matrix-synapse.nix
index 9ca80872176..6c8f1e188d5 100644
--- a/nixos/tests/matrix-synapse.nix
+++ b/nixos/tests/matrix-synapse.nix
@@ -77,12 +77,12 @@ in {
     start_all()
     serverpostgres.wait_for_unit("matrix-synapse.service")
     serverpostgres.wait_until_succeeds(
-        "curl -L --cacert ${ca_pem} https://localhost:8448/"
+        "curl --fail -L --cacert ${ca_pem} https://localhost:8448/"
     )
     serverpostgres.require_unit_state("postgresql.service")
     serversqlite.wait_for_unit("matrix-synapse.service")
     serversqlite.wait_until_succeeds(
-        "curl -L --cacert ${ca_pem} https://localhost:8448/"
+        "curl --fail -L --cacert ${ca_pem} https://localhost:8448/"
     )
     serversqlite.succeed("[ -e /var/lib/matrix-synapse/homeserver.db ]")
   '';
diff --git a/nixos/tests/mediawiki.nix b/nixos/tests/mediawiki.nix
index 008682310cf..702fefefa16 100644
--- a/nixos/tests/mediawiki.nix
+++ b/nixos/tests/mediawiki.nix
@@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
 
     machine.wait_for_unit("phpfpm-mediawiki.service")
 
-    page = machine.succeed("curl -L http://localhost/")
+    page = machine.succeed("curl -fL http://localhost/")
     assert "MediaWiki has been installed" in page
   '';
 })
diff --git a/nixos/tests/metabase.nix b/nixos/tests/metabase.nix
index 1450a4e9086..65619cc793a 100644
--- a/nixos/tests/metabase.nix
+++ b/nixos/tests/metabase.nix
@@ -15,6 +15,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     start_all()
     machine.wait_for_unit("metabase.service")
     machine.wait_for_open_port(3000)
-    machine.wait_until_succeeds("curl -L http://localhost:3000/setup | grep Metabase")
+    machine.wait_until_succeeds("curl -fL http://localhost:3000/setup | grep Metabase")
   '';
 })
diff --git a/nixos/tests/morty.nix b/nixos/tests/morty.nix
index 64c5a27665d..ff30b7c072b 100644
--- a/nixos/tests/morty.nix
+++ b/nixos/tests/morty.nix
@@ -24,7 +24,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
     ''
       mortyProxyWithKey.wait_for_unit("default.target")
       mortyProxyWithKey.wait_for_open_port(3001)
-      mortyProxyWithKey.succeed("curl -L 127.0.0.1:3001 | grep MortyProxy")
+      mortyProxyWithKey.succeed("curl -fL 127.0.0.1:3001 | grep MortyProxy")
     '';
 
 })
diff --git a/nixos/tests/neo4j.nix b/nixos/tests/neo4j.nix
index 32ee7f501b8..8329e5630d7 100644
--- a/nixos/tests/neo4j.nix
+++ b/nixos/tests/neo4j.nix
@@ -15,6 +15,6 @@ import ./make-test-python.nix {
 
     master.wait_for_unit("neo4j")
     master.wait_for_open_port(7474)
-    master.succeed("curl http://localhost:7474/")
+    master.succeed("curl -f http://localhost:7474/")
   '';
 }
diff --git a/nixos/tests/nzbget.nix b/nixos/tests/nzbget.nix
index 12d8ed6ea8d..b39c9b035e6 100644
--- a/nixos/tests/nzbget.nix
+++ b/nixos/tests/nzbget.nix
@@ -21,7 +21,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     server.wait_for_unit("network.target")
     server.wait_for_open_port(6789)
     assert "This file is part of nzbget" in server.succeed(
-        "curl -s -u nzbget:tegbzn6789 http://127.0.0.1:6789"
+        "curl -f -s -u nzbget:tegbzn6789 http://127.0.0.1:6789"
     )
     server.succeed(
         "${pkgs.nzbget}/bin/nzbget -n -o Control_iP=127.0.0.1 -o Control_port=6789 -o Control_password=tegbzn6789 -V"
diff --git a/nixos/tests/oci-containers.nix b/nixos/tests/oci-containers.nix
index bb6c019f07c..0dfc7ffb276 100644
--- a/nixos/tests/oci-containers.nix
+++ b/nixos/tests/oci-containers.nix
@@ -32,7 +32,7 @@ let
       start_all()
       ${backend}.wait_for_unit("${backend}-nginx.service")
       ${backend}.wait_for_open_port(8181)
-      ${backend}.wait_until_succeeds("curl http://localhost:8181 | grep Hello")
+      ${backend}.wait_until_succeeds("curl -f http://localhost:8181 | grep Hello")
     '';
   };
 
diff --git a/nixos/tests/osrm-backend.nix b/nixos/tests/osrm-backend.nix
index db67a5a589f..4067d5b1a23 100644
--- a/nixos/tests/osrm-backend.nix
+++ b/nixos/tests/osrm-backend.nix
@@ -48,10 +48,10 @@ in {
     machine.wait_for_unit("osrm.service")
     machine.wait_for_open_port(${toString port})
     assert "Boulevard Rainier III" in machine.succeed(
-        "curl --silent '${query}' | jq .waypoints[0].name"
+        "curl --fail --silent '${query}' | jq .waypoints[0].name"
     )
     assert "Avenue de la Costa" in machine.succeed(
-        "curl --silent '${query}' | jq .waypoints[1].name"
+        "curl --fail --silent '${query}' | jq .waypoints[1].name"
     )
   '';
 })
diff --git a/nixos/tests/paperless.nix b/nixos/tests/paperless.nix
index 355e7041d3f..fb83e6f976d 100644
--- a/nixos/tests/paperless.nix
+++ b/nixos/tests/paperless.nix
@@ -23,14 +23,14 @@ import ./make-test-python.nix ({ lib, ... } : {
     with subtest("Service gets ready"):
         machine.wait_for_unit("paperless-server.service")
         # Wait until server accepts connections
-        machine.wait_until_succeeds("curl -s localhost:28981")
+        machine.wait_until_succeeds("curl -fs localhost:28981")
 
     with subtest("Test document is consumed"):
         machine.wait_until_succeeds(
-            "(($(curl -s localhost:28981/api/documents/ | jq .count) == 1))"
+            "(($(curl -fs localhost:28981/api/documents/ | jq .count) == 1))"
         )
         assert "2005-10-16" in machine.succeed(
-            "curl -s localhost:28981/api/documents/ | jq '.results | .[0] | .created'"
+            "curl -fs localhost:28981/api/documents/ | jq '.results | .[0] | .created'"
         )
   '';
 })
diff --git a/nixos/tests/peerflix.nix b/nixos/tests/peerflix.nix
index 37628604d49..6e534dedc47 100644
--- a/nixos/tests/peerflix.nix
+++ b/nixos/tests/peerflix.nix
@@ -18,6 +18,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     start_all()
 
     peerflix.wait_for_unit("peerflix.service")
-    peerflix.wait_until_succeeds("curl localhost:9000")
+    peerflix.wait_until_succeeds("curl -f localhost:9000")
   '';
 })
diff --git a/nixos/tests/php/fpm.nix b/nixos/tests/php/fpm.nix
index 513abd94373..9ad515ebdde 100644
--- a/nixos/tests/php/fpm.nix
+++ b/nixos/tests/php/fpm.nix
@@ -43,7 +43,7 @@ import ../make-test-python.nix ({pkgs, lib, ...}: {
     machine.wait_for_unit("phpfpm-foobar.service")
 
     # Check so we get an evaluated PHP back
-    response = machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    response = machine.succeed("curl -fvvv -s http://127.0.0.1:80/")
     assert "PHP Version ${pkgs.php.version}" in response, "PHP version not detected"
 
     # Check so we have database and some other extensions loaded
diff --git a/nixos/tests/php/httpd.nix b/nixos/tests/php/httpd.nix
index 1092e0ecadd..27ea7a24e3a 100644
--- a/nixos/tests/php/httpd.nix
+++ b/nixos/tests/php/httpd.nix
@@ -21,7 +21,7 @@ import ../make-test-python.nix ({pkgs, lib, ...}: {
     machine.wait_for_unit("httpd.service")
 
     # Check so we get an evaluated PHP back
-    response = machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    response = machine.succeed("curl -fvvv -s http://127.0.0.1:80/")
     assert "PHP Version ${pkgs.php.version}" in response, "PHP version not detected"
 
     # Check so we have database and some other extensions loaded
diff --git a/nixos/tests/php/pcre.nix b/nixos/tests/php/pcre.nix
index 3dd0964e60f..3ea19304bff 100644
--- a/nixos/tests/php/pcre.nix
+++ b/nixos/tests/php/pcre.nix
@@ -32,7 +32,7 @@ in import ../make-test-python.nix ({lib, ...}: {
     ''
       machine.wait_for_unit("httpd.service")
       # Ensure php evaluation by matching on the var_dump syntax
-      response = machine.succeed("curl -vvv -s http://127.0.0.1:80/index.php")
+      response = machine.succeed("curl -fvvv -s http://127.0.0.1:80/index.php")
       expected = 'string(${toString (builtins.stringLength testString)}) "${testString}"'
       assert expected in response, "Does not appear to be able to use subgroups."
     '';
diff --git a/nixos/tests/prometheus.nix b/nixos/tests/prometheus.nix
index af2aa66a552..de1d10aa7ca 100644
--- a/nixos/tests/prometheus.nix
+++ b/nixos/tests/prometheus.nix
@@ -193,13 +193,13 @@ in import ./make-test-python.nix {
     # Check if prometheus responds to requests:
     prometheus.wait_for_unit("prometheus.service")
     prometheus.wait_for_open_port(${toString queryPort})
-    prometheus.succeed("curl -s http://127.0.0.1:${toString queryPort}/metrics")
+    prometheus.succeed("curl -sf http://127.0.0.1:${toString queryPort}/metrics")
 
     # Let's test if pushing a metric to the pushgateway succeeds:
     prometheus.wait_for_unit("pushgateway.service")
     prometheus.succeed(
         "echo 'some_metric 3.14' | "
-        + "curl --data-binary \@- "
+        + "curl -f --data-binary \@- "
         + "http://127.0.0.1:${toString pushgwPort}/metrics/job/some_job"
     )
 
diff --git a/nixos/tests/sanoid.nix b/nixos/tests/sanoid.nix
index 284b38932cc..66ddaad60ea 100644
--- a/nixos/tests/sanoid.nix
+++ b/nixos/tests/sanoid.nix
@@ -38,7 +38,7 @@ in {
 
       services.syncoid = {
         enable = true;
-        sshKey = "/root/.ssh/id_ecdsa";
+        sshKey = "/var/lib/syncoid/id_ecdsa";
         commonArgs = [ "--no-sync-snap" ];
         commands."pool/test".target = "root@target:pool/test";
       };
@@ -69,11 +69,12 @@ in {
         "udevadm settle",
     )
 
-    source.succeed("mkdir -m 700 /root/.ssh")
     source.succeed(
-        "cat '${snakeOilPrivateKey}' > /root/.ssh/id_ecdsa"
+        "mkdir -m 700 -p /var/lib/syncoid",
+        "cat '${snakeOilPrivateKey}' > /var/lib/syncoid/id_ecdsa",
+        "chmod 600 /var/lib/syncoid/id_ecdsa",
+        "chown -R syncoid:syncoid /var/lib/syncoid/",
     )
-    source.succeed("chmod 600 /root/.ssh/id_ecdsa")
 
     source.succeed("touch /tmp/mnt/test.txt")
     source.systemctl("start --wait sanoid.service")
diff --git a/nixos/tests/service-runner.nix b/nixos/tests/service-runner.nix
index 39ae66fe111..55fbbb72934 100644
--- a/nixos/tests/service-runner.nix
+++ b/nixos/tests/service-runner.nix
@@ -29,7 +29,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
             """
         )
         machine.wait_for_open_port(80)
-        machine.succeed(f"curl {url}")
+        machine.succeed(f"curl -f {url}")
         machine.succeed("kill -INT $(cat my-nginx.pid)")
         machine.wait_for_closed_port(80)
   '';
diff --git a/nixos/tests/spacecookie.nix b/nixos/tests/spacecookie.nix
index 6eff32a2e75..5b5022a7427 100644
--- a/nixos/tests/spacecookie.nix
+++ b/nixos/tests/spacecookie.nix
@@ -32,7 +32,7 @@ in
       ${gopherHost}.wait_for_unit("spacecookie.service")
       client.wait_for_unit("network.target")
 
-      fileResponse = client.succeed("curl -s gopher://${gopherHost}//${fileName}")
+      fileResponse = client.succeed("curl -f -s gopher://${gopherHost}//${fileName}")
 
       # the file response should return our created file exactly
       if not (fileResponse == "${fileContent}\n"):
@@ -41,7 +41,7 @@ in
       # sanity check on the directory listing: we serve a directory and a file
       # via gopher, so the directory listing should have exactly two entries,
       # one with gopher file type 0 (file) and one with file type 1 (directory).
-      dirResponse = client.succeed("curl -s gopher://${gopherHost}")
+      dirResponse = client.succeed("curl -f -s gopher://${gopherHost}")
       dirEntries = [l[0] for l in dirResponse.split("\n") if len(l) > 0]
       dirEntries.sort()
 
diff --git a/nixos/tests/sslh.nix b/nixos/tests/sslh.nix
index 2a800aa52d0..17094606e8e 100644
--- a/nixos/tests/sslh.nix
+++ b/nixos/tests/sslh.nix
@@ -78,6 +78,6 @@ import ./make-test-python.nix {
         server.succeed(f"grep '{ip}' /tmp/foo{arg}")
 
         # check that http through sslh works
-        assert client.succeed(f"curl {arg} http://server:443").strip() == "hello world"
+        assert client.succeed(f"curl -f {arg} http://server:443").strip() == "hello world"
   '';
 }
diff --git a/nixos/tests/sympa.nix b/nixos/tests/sympa.nix
index 280691f7cb4..eb38df180a7 100644
--- a/nixos/tests/sympa.nix
+++ b/nixos/tests/sympa.nix
@@ -30,7 +30,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
     machine.wait_for_unit("sympa.service")
     machine.wait_for_unit("wwsympa.service")
     assert "Mailing lists service" in machine.succeed(
-        "curl --insecure -L http://localhost/"
+        "curl --fail --insecure -L http://localhost/"
     )
   '';
 })
diff --git a/nixos/tests/syncthing-relay.nix b/nixos/tests/syncthing-relay.nix
index cd72ef1cbe1..c144bf7fca3 100644
--- a/nixos/tests/syncthing-relay.nix
+++ b/nixos/tests/syncthing-relay.nix
@@ -19,7 +19,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
     machine.wait_for_open_port(12346)
 
     out = machine.succeed(
-        "curl -sS http://localhost:12346/status | jq -r '.options.\"provided-by\"'"
+        "curl -sSf http://localhost:12346/status | jq -r '.options.\"provided-by\"'"
     )
     assert "nixos-test" in out
   '';
diff --git a/nixos/tests/syncthing.nix b/nixos/tests/syncthing.nix
index 9e2a8e01e3f..ac9df5e50c8 100644
--- a/nixos/tests/syncthing.nix
+++ b/nixos/tests/syncthing.nix
@@ -25,7 +25,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
             "xmllint --xpath 'string(configuration/gui/apikey)' %s/config.xml" % confdir
         ).strip()
         oldConf = host.succeed(
-            "curl -Ss -H 'X-API-Key: %s' 127.0.0.1:8384/rest/system/config" % APIKey
+            "curl -Ssf -H 'X-API-Key: %s' 127.0.0.1:8384/rest/system/config" % APIKey
         )
         conf = json.loads(oldConf)
         conf["devices"].append({"deviceID": deviceID, "id": name})
@@ -39,7 +39,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
         )
         newConf = json.dumps(conf)
         host.succeed(
-            "curl -Ss -H 'X-API-Key: %s' 127.0.0.1:8384/rest/system/config -d %s"
+            "curl -Ssf -H 'X-API-Key: %s' 127.0.0.1:8384/rest/system/config -d %s"
             % (APIKey, shlex.quote(newConf))
         )
 
diff --git a/nixos/tests/trac.nix b/nixos/tests/trac.nix
index 7953f8d41f7..af7182d1e18 100644
--- a/nixos/tests/trac.nix
+++ b/nixos/tests/trac.nix
@@ -14,6 +14,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     start_all()
     machine.wait_for_unit("trac.service")
     machine.wait_for_open_port(8000)
-    machine.wait_until_succeeds("curl -L http://localhost:8000/ | grep 'Trac Powered'")
+    machine.wait_until_succeeds("curl -fL http://localhost:8000/ | grep 'Trac Powered'")
   '';
 })
diff --git a/nixos/tests/trezord.nix b/nixos/tests/trezord.nix
index b7b3dd31942..7c8370f409e 100644
--- a/nixos/tests/trezord.nix
+++ b/nixos/tests/trezord.nix
@@ -14,6 +14,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     start_all()
     machine.wait_for_unit("trezord.service")
     machine.wait_for_open_port(21325)
-    machine.wait_until_succeeds("curl -L http://localhost:21325/status/ | grep Version")
+    machine.wait_until_succeeds("curl -fL http://localhost:21325/status/ | grep Version")
   '';
 })
diff --git a/nixos/tests/trickster.nix b/nixos/tests/trickster.nix
index 713ac8f0b2f..e32f919a1ad 100644
--- a/nixos/tests/trickster.nix
+++ b/nixos/tests/trickster.nix
@@ -19,19 +19,19 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     prometheus.wait_for_unit("prometheus.service")
     prometheus.wait_for_open_port(9090)
     prometheus.wait_until_succeeds(
-        "curl -L http://localhost:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
+        "curl -fL http://localhost:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
     )
     trickster.wait_for_unit("trickster.service")
     trickster.wait_for_open_port(8082)
     trickster.wait_for_open_port(9090)
     trickster.wait_until_succeeds(
-        "curl -L http://localhost:8082/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
+        "curl -fL http://localhost:8082/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
     )
     trickster.wait_until_succeeds(
-        "curl -L http://prometheus:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
+        "curl -fL http://prometheus:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
     )
     trickster.wait_until_succeeds(
-        "curl -L http://localhost:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
+        "curl -fL http://localhost:9090/metrics | grep 'promhttp_metric_handler_requests_total{code=\"500\"} 0'"
     )
   '';
 })
diff --git a/nixos/tests/upnp.nix b/nixos/tests/upnp.nix
index a7d837ea070..046c0a56b2a 100644
--- a/nixos/tests/upnp.nix
+++ b/nixos/tests/upnp.nix
@@ -90,7 +90,7 @@ in
       client1.succeed("upnpc -a ${internalClient1Address} 9000 9000 TCP")
 
       client1.wait_for_unit("httpd")
-      client2.wait_until_succeeds("curl http://${externalRouterAddress}:9000/")
+      client2.wait_until_succeeds("curl -f http://${externalRouterAddress}:9000/")
     '';
 
 })
diff --git a/nixos/tests/uwsgi.nix b/nixos/tests/uwsgi.nix
index 78a87147f55..7f4945a8803 100644
--- a/nixos/tests/uwsgi.nix
+++ b/nixos/tests/uwsgi.nix
@@ -33,6 +33,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
       machine.wait_for_unit("multi-user.target")
       machine.wait_for_unit("uwsgi.service")
       machine.wait_for_open_port(8000)
-      assert "Hello World" in machine.succeed("curl -v 127.0.0.1:8000")
+      assert "Hello World" in machine.succeed("curl -fv 127.0.0.1:8000")
     '';
 })
diff --git a/nixos/tests/victoriametrics.nix b/nixos/tests/victoriametrics.nix
index 73ef8b72861..fff8d7005da 100644
--- a/nixos/tests/victoriametrics.nix
+++ b/nixos/tests/victoriametrics.nix
@@ -19,9 +19,11 @@ import ./make-test-python.nix ({ pkgs, ...} : {
 
     # write some points and run simple query
     out = one.succeed(
-        "curl -d 'measurement,tag1=value1,tag2=value2 field1=123,field2=1.23' -X POST 'http://localhost:8428/write'"
+        "curl -f -d 'measurement,tag1=value1,tag2=value2 field1=123,field2=1.23' -X POST 'http://localhost:8428/write'"
+    )
+    cmd = (
+        """curl -f -s -G 'http://localhost:8428/api/v1/export' -d 'match={__name__!=""}'"""
     )
-    cmd = """curl -s -G 'http://localhost:8428/api/v1/export' -d 'match={__name__!=""}'"""
     # data takes a while to appear
     one.wait_until_succeeds(f"[[ $({cmd} | wc -l) -ne 0 ]]")
     out = one.succeed(cmd)
diff --git a/nixos/tests/web-servers/unit-php.nix b/nixos/tests/web-servers/unit-php.nix
index 2a0a5bdaa5d..033036ee766 100644
--- a/nixos/tests/web-servers/unit-php.nix
+++ b/nixos/tests/web-servers/unit-php.nix
@@ -47,7 +47,7 @@ in {
     machine.wait_for_unit("unit.service")
 
     # Check so we get an evaluated PHP back
-    response = machine.succeed("curl -vvv -s http://127.0.0.1:9074/")
+    response = machine.succeed("curl -f -vvv -s http://127.0.0.1:9074/")
     assert "PHP Version ${pkgs.unit.usedPhp74.version}" in response, "PHP version not detected"
 
     # Check so we have database and some other extensions loaded
diff --git a/nixos/tests/wordpress.nix b/nixos/tests/wordpress.nix
index b7449859f7e..5d740502bb5 100644
--- a/nixos/tests/wordpress.nix
+++ b/nixos/tests/wordpress.nix
@@ -40,7 +40,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
 
     with subtest("website returns welcome screen"):
         for site_name in site_names:
-            assert "Welcome to the famous" in machine.succeed(f"curl -L {site_name}")
+            assert "Welcome to the famous" in machine.succeed(f"curl -fL {site_name}")
 
     with subtest("wordpress-init went through"):
         for site_name in site_names:
diff --git a/pkgs/applications/audio/asunder/default.nix b/pkgs/applications/audio/asunder/default.nix
index 998535a8eb0..610085a137a 100644
--- a/pkgs/applications/audio/asunder/default.nix
+++ b/pkgs/applications/audio/asunder/default.nix
@@ -12,11 +12,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "2.9.6";
+  version = "2.9.7";
   pname = "asunder";
   src = fetchurl {
     url = "http://littlesvr.ca/asunder/releases/${pname}-${version}.tar.bz2";
-    sha256 = "1ycnd82lh7qy1pcbngd4b41s16j9hnm2kyfrncg4cwr3bfk7yg7a";
+    sha256 = "1x3l308ss0iqhz90qyjb94gyd8b4piyrm2nzjmg5kf049k9prjf1";
   };
 
   nativeBuildInputs = [ intltool makeWrapper pkgconfig ];
diff --git a/pkgs/applications/audio/ecasound/default.nix b/pkgs/applications/audio/ecasound/default.nix
index 13c48fc12af..adb6f6b7427 100644
--- a/pkgs/applications/audio/ecasound/default.nix
+++ b/pkgs/applications/audio/ecasound/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ alsaLib audiofile libjack2 liblo liboil libsamplerate libsndfile lilv lv2 ];
 
   meta = {
-    description = "Ecasound is a software package designed for multitrack audio processing";
+    description = "Software package designed for multitrack audio processing";
     license = with stdenv.lib.licenses;  [ gpl2 lgpl21 ];
     homepage = "http://nosignal.fi/ecasound/";
   };
diff --git a/pkgs/applications/audio/eflite/default.nix b/pkgs/applications/audio/eflite/default.nix
index f9a579512ca..30a35501771 100644
--- a/pkgs/applications/audio/eflite/default.nix
+++ b/pkgs/applications/audio/eflite/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://eflite.sourceforge.net";
-    description = "EFlite is a speech server for screen readers";
+    description = "Speech server for screen readers";
     longDescription = ''
       EFlite is a speech server for Emacspeak and other screen
       readers that allows them to interface with Festival Lite,
diff --git a/pkgs/applications/audio/geonkick/default.nix b/pkgs/applications/audio/geonkick/default.nix
index e32bef008d9..0da00d31972 100644
--- a/pkgs/applications/audio/geonkick/default.nix
+++ b/pkgs/applications/audio/geonkick/default.nix
@@ -1,14 +1,15 @@
-{ stdenv, fetchFromGitLab, cmake, pkg-config, redkite, libsndfile, rapidjson, libjack2, lv2, libX11, cairo }:
+{ stdenv, fetchFromGitLab, cmake, pkg-config, redkite, libsndfile, rapidjson
+, libjack2, lv2, libX11, cairo }:
 
 stdenv.mkDerivation rec {
   pname = "geonkick";
-  version = "2.3.8";
+  version = "2.4.0";
 
   src = fetchFromGitLab {
     owner = "iurie-sw";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07809yy2q7dd6fcp0yndlg1vw2ca2zisnsplb3xrxvzdvrqlw910";
+    sha256 = "1ibsfyzkvzijv929p91db56gaxm582b7nikbn10wbbjvv4f46mmj";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -16,13 +17,16 @@ stdenv.mkDerivation rec {
   buildInputs = [ redkite libsndfile rapidjson libjack2 lv2 libX11 cairo ];
 
   # https://github.com/iurie-sw/geonkick/issues/120
-  cmakeFlags = [ "-DGKICK_REDKITE_SDK_PATH=${redkite}" "-DCMAKE_INSTALL_LIBDIR=lib" ];
+  cmakeFlags = [
+    "-DGKICK_REDKITE_SDK_PATH=${redkite}"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+  ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "https://gitlab.com/iurie-sw/geonkick";
     description = "A free software percussion synthesizer";
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.magnetophon ];
   };
 }
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 2fcbf82107d..60fb40c5f74 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -14,16 +14,16 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "ncspot";
-  version = "0.2.2";
+  version = "0.2.4";
 
   src = fetchFromGitHub {
     owner = "hrkfdn";
     repo = "ncspot";
     rev = "v${version}";
-    sha256 = "1i17pidw2hylijwfn96f2bnswfxxwdln2ydsq8b1q4hfzfbxlfk2";
+    sha256 = "0vdg1ybzfj7xg8nmrb8q9vr8bpwcs52730v9v0413wjyxb7hcll2";
   };
 
-  cargoSha256 = "1cpy4wrj9dz2crva4p18f8hzym73x4m2mcfds4ppri4ir7qg29dr";
+  cargoSha256 = "0afaxx8dv7jn48934ba0r8kd1h8l3k00sl83v07a1xqmfcmil2qf";
 
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
 
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index d8c927be268..cf8523b4ef7 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -12,13 +12,13 @@ let
   ;
 in pythonPackages.buildPythonApplication rec {
   pname = "picard";
-  version = "2.4.4";
+  version = "2.5";
 
   src = fetchFromGitHub {
     owner = "metabrainz";
     repo = pname;
     rev = "release-${version}";
-    sha256 = "0iw2v37j70881v0a2rjp2miq97nscq04x1ysk1dqmi1b9hi0y17q";
+    sha256 = "02px6r086pyhpf6wia876c73bgr4xa4pyx2yykv6j74zyp5wig3z";
   };
 
   nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ]
diff --git a/pkgs/applications/audio/picoloop/default.nix b/pkgs/applications/audio/picoloop/default.nix
index 7f6773f5e51..69052988f26 100644
--- a/pkgs/applications/audio/picoloop/default.nix
+++ b/pkgs/applications/audio/picoloop/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Picoloop is a synth and a stepsequencer (a clone of the famous nanoloop)";
+    description = "A synth and a stepsequencer (a clone of the famous nanoloop)";
     homepage = "https://github.com/yoyz/picoloop";
     platforms = platforms.linux;
     license = licenses.bsd3;
diff --git a/pkgs/applications/blockchains/exodus/default.nix b/pkgs/applications/blockchains/exodus/default.nix
index af49bb9121f..0c0b6a24301 100644
--- a/pkgs/applications/blockchains/exodus/default.nix
+++ b/pkgs/applications/blockchains/exodus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, unzip, glib, systemd, nss, nspr, gtk3-x11, gnome2,
+{ stdenv, lib, fetchurl, unzip, glib, systemd, nss, nspr, gtk3-x11, pango,
 atk, cairo, gdk-pixbuf, xorg, xorg_sys_opengl, utillinux, alsaLib, dbus, at-spi2-atk,
 cups, vivaldi-ffmpeg-codecs, libpulseaudio, at-spi2-core }:
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       nss
       nspr
       gtk3-x11
-      gnome2.pango
+      pango
       atk
       cairo
       gdk-pixbuf
diff --git a/pkgs/applications/blockchains/sumokoin.nix b/pkgs/applications/blockchains/sumokoin.nix
index ad65da057ae..beb294d2dfe 100644
--- a/pkgs/applications/blockchains/sumokoin.nix
+++ b/pkgs/applications/blockchains/sumokoin.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    description = "Sumokoin is a fork of Monero and a truely fungible cryptocurrency";
+    description = "A fork of Monero and a truely fungible cryptocurrency";
     homepage = "https://www.sumokoin.org/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ fpletz ];
diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index d3cc3624419..d56e5acc71b 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "geany";
-  version = "1.36";
+  version = "1.37";
 
   outputs = [ "out" "dev" "doc" "man" ];
 
   src = fetchurl {
     url = "https://download.geany.org/${pname}-${version}.tar.bz2";
-    sha256 = "0gnm17cr4rf3pmkf0axz4a0fxwnvp55ji0q0lzy88yqbshyxv14i";
+    sha256 = "dde52584823b769c56704c27dbedddb7a6bbaf4eacb9587d10bbc387816e3d51";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/glow/default.nix b/pkgs/applications/editors/glow/default.nix
index 0bb8b4eb18a..1dc140f3e09 100644
--- a/pkgs/applications/editors/glow/default.nix
+++ b/pkgs/applications/editors/glow/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "glow";
-  version = "1.0.2";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "charmbracelet";
     repo = "glow";
     rev = "v${version}";
-    sha256 ="0jyl5ln7c2naawmw7bljzrldr96xyb5rbis6y6blmyghr0vx07zb";
+    sha256 = "016psbm93ni81k87i9gx3cjr59j1fmpq5x8vz0ydabczzdshd1py";
   };
 
-  vendorSha256 = "0z3r8fvpy36ybgb18sr0lril1sg8z7s99xv1a6g1v3zdnj3zimav";
+  vendorSha256 = "0gvlbj8b5sqk93ahg4b2krwrmr8ljz7cah77fxaxcd98apap0pw6";
 
   doCheck = false;
 
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index d54513971a8..9fbab346907 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -268,12 +268,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2020.2.3"; /* updated by script */
+    version = "2020.2.4"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1kdlmdsfxmwks3rk2dzm5q30vwzpxcwzpyjsir122k36xnqvaqxq"; /* updated by script */
+      sha256 = "0xkra8l3ga8qsmzbvfisn99lxm5wxa8c4d4jzljjwn8855bs20a3"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -307,12 +307,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "0kbn9q7fvhrzb1w6l8i2nv4cx8qrj74jp7fidj9yk8vkv9lfijg6"; /* updated by script */
+      sha256 = "092swkz7l1p3asrna6fxj6j324sh7pdbgzrlapdwka8kq9y40ajz"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -320,12 +320,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
-      sha256 = "1196zrcbgrr9271kjrzd2mzvhvxd7hkr1d2a4ij4h8f97qmsd6r6"; /* updated by script */
+      sha256 = "1416ikna169d2hx77yd0bb8hpxkpnf27jgyq5yrgla1w6h1fp1p0"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -333,12 +333,12 @@ in
 
   mps = buildMps rec {
     name = "mps-${version}";
-    version = "2020.2"; /* updated by script */
+    version = "2020.2.2"; /* updated by script */
     description = "Create your own domain-specific language";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/mps/2020.2/MPS-${version}.tar.gz";
-      sha256 = "06c0yv9vvz0y5njh1sghn7ijpn1d81mxsyk5xjpj29bvvg511pjs"; /* updated by script */
+      sha256 = "1a09yahky8ii2dypj69m89c3yh7akn7sa74n0j0mff7r46ad421y"; /* updated by script */
     };
     wmClass = "jetbrains-mps";
     update-channel = "MPS RELEASE";
@@ -346,12 +346,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2020.2.1"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "14hz6w5lgn8ddscicm4s9xhi07j5adsq0bmyr8amzmj5q6jgw4p9"; /* updated by script */
+      sha256 = "0bdxmxml6337cdpb2amhdqlvxicng50cgzlnmiw0wqnmwj5ihpih"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PhpStorm RELEASE";
@@ -359,12 +359,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "1a1vhlc2q5n3dxli0x6ppxx3mgary4gpakcxdp9nylmixjzjph6v"; /* updated by script */
+      sha256 = "0wqhcag32fxqxg6aml2a3d0rpds0d48rgbcl7cp0ah8xj6x72047"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm RELEASE";
@@ -372,12 +372,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "0v64f5sbv1639d6fjg0shfgdy40f1xc2zbn0jqfrx6xmkg7wgsz9"; /* updated by script */
+      sha256 = "0g7bki4bzi3a1w3rlwik2w0ma10xb4g450qxm4fr4fp8dy2xaysc"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm RELEASE";
@@ -385,12 +385,12 @@ in
 
   rider = buildRider rec {
     name = "rider-${version}";
-    version = "2020.2.3"; /* updated by script */
+    version = "2020.2.4"; /* updated by script */
     description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
-      sha256 = "01namzd29chj975w3awanlzf38hh30cfjzyljqfkp6y3djn0if1r"; /* updated by script */
+      sha256 = "1anl48ifv5ayqn876dqckxc1b5fw1271pvamzf1vvk501wv6dpaf"; /* updated by script */
     };
     wmClass = "jetbrains-rider";
     update-channel = "Rider RELEASE";
@@ -398,12 +398,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "11v26hpf891nq5vj8i0ad4shhzpy8b7rvyrkr3l29dwfnd83lgpz"; /* updated by script */
+      sha256 = "03f1z7xhz90j9l8xp3il115yvb15kda0i6ba5ndhby7nf52vnphk"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "RubyMine RELEASE";
@@ -411,12 +411,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2020.2.2"; /* updated by script */
+    version = "2020.2.3"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "1w17cf0qj0vyizkzj1frcmi52q5qxbf31msg8df38wy2l8r0b928"; /* updated by script */
+      sha256 = "1c60k38ai63s4779fs55vaiswfc6bi7ki6p96hrmmkrnpzgsipg5"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WebStorm RELEASE";
diff --git a/pkgs/applications/editors/kile/default.nix b/pkgs/applications/editors/kile/default.nix
index fa25252fc6f..1f1e43d196c 100644
--- a/pkgs/applications/editors/kile/default.nix
+++ b/pkgs/applications/editors/kile/default.nix
@@ -52,7 +52,7 @@ mkDerivation rec {
   propagatedUserEnvPkgs = [ konsole ];
 
   meta = {
-    description = "Kile is a user friendly TeX/LaTeX authoring tool for the KDE desktop environment";
+    description = "User-friendly TeX/LaTeX authoring tool for the KDE desktop environment";
     homepage = "https://www.kde.org/applications/office/kile/";
     maintainers = with lib.maintainers; [ fridh ];
     license = lib.licenses.gpl2Plus;
diff --git a/pkgs/applications/graphics/gnuclad/default.nix b/pkgs/applications/graphics/gnuclad/default.nix
index d27c2636e25..c36d576cc8e 100644
--- a/pkgs/applications/graphics/gnuclad/default.nix
+++ b/pkgs/applications/graphics/gnuclad/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://launchpad.net/gnuclad";
-    description = "gnuclad tries to help the environment by creating trees.  It's primary use will be generating cladogram trees for the GNU/Linux distro timeline project";
+    description = "gnuclad tries to help the environment by creating trees.  Its primary use will be generating cladogram trees for the GNU/Linux distro timeline project";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ mog ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/krita/default.nix b/pkgs/applications/graphics/krita/default.nix
index 95a3e1e0928..6ffe7f3c4fa 100644
--- a/pkgs/applications/graphics/krita/default.nix
+++ b/pkgs/applications/graphics/krita/default.nix
@@ -10,11 +10,11 @@
 
 mkDerivation rec {
   pname = "krita";
-  version = "4.3.0";
+  version = "4.4.0";
 
   src = fetchurl {
     url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz";
-    sha256 = "19qlpp9ds60bab73pwi64dq1zn4zn2hcdkrxhjr1j438mc4pflsd";
+    sha256 = "0ydmxql8iym62q0nqwn9mnb94jz1nh84i6bni0mgzwjk8p4zfzw3";
   };
 
   # *somtimes* fails with can't find ui_manager.h, also see https://github.com/NixOS/nixpkgs/issues/35359
diff --git a/pkgs/applications/graphics/lightburn/default.nix b/pkgs/applications/graphics/lightburn/default.nix
index a5a255338e8..da5caeff3a0 100644
--- a/pkgs/applications/graphics/lightburn/default.nix
+++ b/pkgs/applications/graphics/lightburn/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "LightBurn is layout, editing, and control software for your laser cutter";
+    description = "Layout, editing, and control software for your laser cutter";
     homepage = "https://lightburnsoftware.com/";
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ q3k ];
diff --git a/pkgs/applications/graphics/xournalpp/default.nix b/pkgs/applications/graphics/xournalpp/default.nix
index ba396bfd92c..da453b42678 100644
--- a/pkgs/applications/graphics/xournalpp/default.nix
+++ b/pkgs/applications/graphics/xournalpp/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xournalpp";
-  version = "1.0.18";
+  version = "1.0.19";
 
   src = fetchFromGitHub {
     owner = "xournalpp";
     repo = pname;
     rev = version;
-    sha256 = "0a9ygbmd4dwgck3k8wsrm2grynqa0adb12wwspzmzvpisbadffjy";
+    sha256 = "05nx4cmrka6hwdn7r91yy4h46qpa9k7iy9dkgaq3hrkh9z3fxlkq";
   };
 
   nativeBuildInputs = [ cmake gettext pkgconfig wrapGAppsHook ];
@@ -54,8 +54,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Xournal++ is a handwriting Notetaking software with PDF annotation support";
-    homepage    = "https://github.com/xournalpp/xournalpp";
-    license     = licenses.gpl2;
+    homepage    = "https://xournalpp.github.io/";
+    license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ andrew-d sikmir ];
     platforms   = platforms.linux;
   };
diff --git a/pkgs/applications/kde/bomber.nix b/pkgs/applications/kde/bomber.nix
index c3f47780259..f42a6a01871 100644
--- a/pkgs/applications/kde/bomber.nix
+++ b/pkgs/applications/kde/bomber.nix
@@ -7,7 +7,7 @@ mkDerivation {
   name = "bomber";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.bomber";
-    description = "Bomber is a single player arcade game";
+    description = "A single player arcade game";
     longDescription = ''
       Bomber is a single player arcade game. The player is invading various
       cities in a plane that is decreasing in height.
diff --git a/pkgs/applications/kde/granatier.nix b/pkgs/applications/kde/granatier.nix
index f0b7cde5b2c..c02fa0fef2e 100644
--- a/pkgs/applications/kde/granatier.nix
+++ b/pkgs/applications/kde/granatier.nix
@@ -7,7 +7,7 @@ mkDerivation {
   name = "granatier";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.granatier";
-    description = "Granatier is a clone of the classic Bomberman game";
+    description = "Clone of the classic Bomberman game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kalzium.nix b/pkgs/applications/kde/kalzium.nix
index 5bb51a6b4e1..cf579caa9cc 100644
--- a/pkgs/applications/kde/kalzium.nix
+++ b/pkgs/applications/kde/kalzium.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kalzium";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.kalzium";
-    description = "Kalzium is a program that shows you the Periodic Table of Elements";
+    description = "Program that shows you the Periodic Table of Elements";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kapman.nix b/pkgs/applications/kde/kapman.nix
index 68af796dda4..5f4cc40138c 100644
--- a/pkgs/applications/kde/kapman.nix
+++ b/pkgs/applications/kde/kapman.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kapman";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kapman";
-    description = "Kapman is a clone of the well known game Pac-Man";
+    description = "Clone of the well known game Pac-Man";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/katomic.nix b/pkgs/applications/kde/katomic.nix
index a1d0f12b6a1..2690cfc0589 100644
--- a/pkgs/applications/kde/katomic.nix
+++ b/pkgs/applications/kde/katomic.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "katomic";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.katomic";
-    description = "KAtomic is a fun educational game built around molecular geometry";
+    description = "Fun educational game built around molecular geometry";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kblackbox.nix b/pkgs/applications/kde/kblackbox.nix
index 669c089df80..ce0d8e36b91 100644
--- a/pkgs/applications/kde/kblackbox.nix
+++ b/pkgs/applications/kde/kblackbox.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kblackbox";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kblackbox";
-    description = "KBlackbox is a game of hide and seek played on a grid of boxes";
+    description = "Game of hide and seek played on a grid of boxes";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kblocks.nix b/pkgs/applications/kde/kblocks.nix
index 1dedabb2a08..a11a6e25744 100644
--- a/pkgs/applications/kde/kblocks.nix
+++ b/pkgs/applications/kde/kblocks.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kblocks";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kblocks";
-    description = "KBlocks is the classic falling blocks game";
+    description = "Classic falling blocks game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kbounce.nix b/pkgs/applications/kde/kbounce.nix
index a24d2155180..b67e3ce0217 100644
--- a/pkgs/applications/kde/kbounce.nix
+++ b/pkgs/applications/kde/kbounce.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kbounce";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kbounce";
-    description = "KBounce is a single player arcade game with the elements of puzzle";
+    description = "Single player arcade game with the elements of puzzle";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kdiamond.nix b/pkgs/applications/kde/kdiamond.nix
index 26cd731beaf..6c124f9450e 100644
--- a/pkgs/applications/kde/kdiamond.nix
+++ b/pkgs/applications/kde/kdiamond.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kdiamond";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kdiamond";
-    description = "KDiamond is a single player puzzle game";
+    description = "A single player puzzle game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kfloppy.nix b/pkgs/applications/kde/kfloppy.nix
index 525520c159b..a8747047f42 100644
--- a/pkgs/applications/kde/kfloppy.nix
+++ b/pkgs/applications/kde/kfloppy.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kfloppy";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.kfloppy";
-    description = "KFloppy is a utility to format 3.5\" and 5.25\" floppy disks";
+    description = "Utility to format 3.5\" and 5.25\" floppy disks";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/klettres.nix b/pkgs/applications/kde/klettres.nix
index e8e0a0aa59a..aaddceb7bd6 100644
--- a/pkgs/applications/kde/klettres.nix
+++ b/pkgs/applications/kde/klettres.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "klettres";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.klettres";
-    description = "KLettres is an application specially designed to help the user to learn an alphabet";
+    description = "An application specially designed to help the user to learn an alphabet";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/klines.nix b/pkgs/applications/kde/klines.nix
index c6ad883dd63..7fadf409bd3 100644
--- a/pkgs/applications/kde/klines.nix
+++ b/pkgs/applications/kde/klines.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "klines";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.klines";
-    description = "KLines is a simple but highly addictive one player game";
+    description = "A simple but highly addictive one player game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kmag.nix b/pkgs/applications/kde/kmag.nix
index 701d8dbf130..fdac690cf22 100644
--- a/pkgs/applications/kde/kmag.nix
+++ b/pkgs/applications/kde/kmag.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kmag";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.kmag";
-    description = "KMag is a small utility for Linux to magnify a part of the screen";
+    description = "A small Linux utility to magnify a part of the screen";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kmines.nix b/pkgs/applications/kde/kmines.nix
index 9314cca4a23..edf3114244b 100644
--- a/pkgs/applications/kde/kmines.nix
+++ b/pkgs/applications/kde/kmines.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kmines";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kmines";
-    description = "KMines is a classic Minesweeper game";
+    description = "A classic Minesweeper game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/knetwalk.nix b/pkgs/applications/kde/knetwalk.nix
index 88d08b56bb1..f34bb84f0a0 100644
--- a/pkgs/applications/kde/knetwalk.nix
+++ b/pkgs/applications/kde/knetwalk.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "knetwalk";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.knetwalk";
-    description = "KNetWalk is a single player logic game";
+    description = "A single player logic game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/knights.nix b/pkgs/applications/kde/knights.nix
index ee5c37e2e94..8b71493ff18 100644
--- a/pkgs/applications/kde/knights.nix
+++ b/pkgs/applications/kde/knights.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "knights";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.knights";
-    description = "KNights is a chess game";
+    description = "A chess game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kollision.nix b/pkgs/applications/kde/kollision.nix
index 3c0c814cd15..6cb9995459a 100644
--- a/pkgs/applications/kde/kollision.nix
+++ b/pkgs/applications/kde/kollision.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kollision";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kollision";
-    description = "Kollision is a casual game";
+    description = "A casual game";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kreversi.nix b/pkgs/applications/kde/kreversi.nix
index 77ac4f05c8a..9f4be46738b 100644
--- a/pkgs/applications/kde/kreversi.nix
+++ b/pkgs/applications/kde/kreversi.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kreversi";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kreversi";
-    description = "KReversi is a simple one player strategy game played against the computer";
+    description = "A simple one player strategy game played against the computer";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kshisen.nix b/pkgs/applications/kde/kshisen.nix
index 7909ed8b2a3..5be17bb8ee0 100644
--- a/pkgs/applications/kde/kshisen.nix
+++ b/pkgs/applications/kde/kshisen.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kshisen";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.kshisen";
-    description = "KShisen is a solitaire-like game played using the standard set of Mahjong tiles";
+    description = "A solitaire-like game played using the standard set of Mahjong tiles";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/ksquares.nix b/pkgs/applications/kde/ksquares.nix
index 94a639a0d37..12d989befe1 100644
--- a/pkgs/applications/kde/ksquares.nix
+++ b/pkgs/applications/kde/ksquares.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "ksquares";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/games/org.kde.ksquares";
-    description = "KSquares is a game of Dots and Boxes";
+    description = "A game of Dots and Boxes";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kteatime.nix b/pkgs/applications/kde/kteatime.nix
index a69cb991acc..812a13aa118 100644
--- a/pkgs/applications/kde/kteatime.nix
+++ b/pkgs/applications/kde/kteatime.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kteatime";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.kteatime";
-    description = "KTeaTime is a handy timer for steeping tea";
+    description = "A handy timer for steeping tea";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/ktimer.nix b/pkgs/applications/kde/ktimer.nix
index aa755f35ce4..bdb8f2c687b 100644
--- a/pkgs/applications/kde/ktimer.nix
+++ b/pkgs/applications/kde/ktimer.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "ktimer";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.ktimer";
-    description = "KTimer is a little tool to execute programs after some time";
+    description = "A little tool to execute programs after some time";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kturtle.nix b/pkgs/applications/kde/kturtle.nix
index e16c86dc136..c495b16fef7 100644
--- a/pkgs/applications/kde/kturtle.nix
+++ b/pkgs/applications/kde/kturtle.nix
@@ -4,7 +4,7 @@ mkDerivation {
   name = "kturtle";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/utilities/org.kde.kturtle";
-    description = "KTurtle is an educational programming environment for learning how to program";
+    description = "An educational programming environment for learning how to program";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kwave.nix b/pkgs/applications/kde/kwave.nix
index 349787d000b..78a3d9ab4a5 100644
--- a/pkgs/applications/kde/kwave.nix
+++ b/pkgs/applications/kde/kwave.nix
@@ -5,7 +5,7 @@ mkDerivation {
   name = "kwave";
   meta = with lib; {
     homepage = "https://kde.org/applications/en/multimedia/org.kde.kwave";
-    description = "KWave is a simple media player";
+    description = "A simple media player";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/corectrl/default.nix b/pkgs/applications/misc/corectrl/default.nix
new file mode 100644
index 00000000000..cee390d064d
--- /dev/null
+++ b/pkgs/applications/misc/corectrl/default.nix
@@ -0,0 +1,74 @@
+{ stdenv
+, fetchFromGitLab
+, extra-cmake-modules
+, botan2
+, karchive
+, kauth
+, libdrm
+, mesa-demos
+, procps
+, utillinux
+, vulkan-tools
+, qtbase
+, qtcharts
+, qtquickcontrols2
+, qtsvg
+, qttools
+, qtxmlpatterns
+, wrapQtAppsHook
+} :
+
+stdenv.mkDerivation rec{
+  pname = "corectrl";
+  version = "1.1.1";
+
+  src = fetchFromGitLab {
+    owner = "corectrl";
+    repo = "corectrl";
+    rev = "v${version}";
+    sha256 = "sha256-YQDrxPqCa3OzNKd3UiAffqqvOrgbXmDFJGjYPetolyY=";
+  };
+
+  nativeBuildInputs = [
+    extra-cmake-modules
+    wrapQtAppsHook
+  ];
+  buildInputs = [
+    botan2
+    karchive
+    kauth
+    libdrm
+    mesa-demos
+    procps
+    utillinux
+    vulkan-tools
+    qtbase
+    qtcharts
+    qtquickcontrols2
+    qtsvg
+    qttools
+    qtxmlpatterns
+  ];
+
+  runtimeDeps = [ mesa-demos vulkan-tools ];
+  binPath = stdenv.lib.makeBinPath runtimeDeps;
+
+  dontWrapQtApps = true;
+
+  postInstall = ''
+    wrapQtApp $out/bin/corectrl --prefix PATH ":" ${binPath}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://gitlab.com/corectrl/corectrl/";
+    description = "Control your computer hardware via application profiles";
+    longDescription = ''
+      CoreCtrl is a Free and Open Source GNU/Linux application that allows you
+      to control with ease your computer hardware using application profiles. It
+      aims to be flexible, comfortable and accessible to regular users.
+    '';
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
+# TODO: report upstream that libdrm is not detected at configure time
diff --git a/pkgs/applications/misc/dockbarx/default.nix b/pkgs/applications/misc/dockbarx/default.nix
index 97510bc3b45..463f7db6b0c 100644
--- a/pkgs/applications/misc/dockbarx/default.nix
+++ b/pkgs/applications/misc/dockbarx/default.nix
@@ -30,7 +30,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     homepage = "https://launchpad.net/dockbar/";
-    description = "DockBarX is a lightweight taskbar / panel replacement for Linux which works as a stand-alone dock";
+    description = "Lightweight taskbar / panel replacement for Linux which works as a stand-alone dock";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.volth ];
diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix
index 12362823cc5..fe263dd6692 100644
--- a/pkgs/applications/misc/electron-cash/default.nix
+++ b/pkgs/applications/misc/electron-cash/default.nix
@@ -3,13 +3,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "electron-cash";
-  version = "4.1.1";
+  version = "4.2.0";
 
   src = fetchFromGitHub {
     owner = "Electron-Cash";
     repo = "Electron-Cash";
     rev = version;
-    sha256 = "1fllz2s20lg4hrppzmnlgjy9mrq7gaq66l2apb3vz1avzvsjw3gm";
+    sha256 = "0ixsx4224jilc5zis6wbsbxqxv10mm5sksrzq15xp30zz0bzb6md";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -48,7 +48,7 @@ python3Packages.buildPythonApplication rec {
 
   checkPhase = ''
     unset HOME
-    pytest lib/tests
+    pytest electroncash/tests
   '';
 
   postInstall = ''
diff --git a/pkgs/applications/misc/fsv/default.nix b/pkgs/applications/misc/fsv/default.nix
index 8b6898958d3..ff556621f9a 100644
--- a/pkgs/applications/misc/fsv/default.nix
+++ b/pkgs/applications/misc/fsv/default.nix
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
   version = "0.9-1";
 
   src = fetchFromGitHub {
-    owner  = "mcuelenaere"; 
+    owner  = "mcuelenaere";
     repo   = "fsv";
     rev    = "${pname}-${version}";
     sha256 = "0n09jd7yqj18mx6zqbg7kab4idg5llr15g6avafj74fpg1h7iimj";
@@ -35,7 +35,7 @@ in stdenv.mkDerivation rec {
   buildInputs       = [ file gtk2 libGLU gtkglarea ];
 
   meta = with stdenv.lib; {
-    description     = "fsv is a file system visualizer in cyberspace";
+    description     = "File system visualizer in cyberspace";
     longDescription = ''
       fsv (pronounced eff-ess-vee) is a file system visualizer in cyberspace.
       It lays out files and directories in three dimensions, geometrically
diff --git a/pkgs/applications/misc/grsync/default.nix b/pkgs/applications/misc/grsync/default.nix
index 8d17ff09204..e1c9902c6ae 100644
--- a/pkgs/applications/misc/grsync/default.nix
+++ b/pkgs/applications/misc/grsync/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    description = "Grsync is used to synchronize folders, files and make backups";
+    description = "Synchronize folders, files and make backups";
     homepage = "http://www.opbyte.it/grsync/";
     license = licenses.gpl1;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/heimer/default.nix b/pkgs/applications/misc/heimer/default.nix
index 19034c1dc76..2a443303e20 100644
--- a/pkgs/applications/misc/heimer/default.nix
+++ b/pkgs/applications/misc/heimer/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "heimer";
-  version = "1.19.0";
+  version = "1.20.0";
 
   src = fetchFromGitHub {
     owner = "juzzlin";
     repo = pname;
     rev = version;
-    sha256 = "18paabqfxz49fahdi4fs5z870aynmyfj3xw8q768qffgc26zhl3m";
+    sha256 = "01pgmwq539a0z7xsgx60vz6hmnr0c72xp6apx75qkvjsqbwmzhjh";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/icesl/default.nix b/pkgs/applications/misc/icesl/default.nix
index edcc5a58ad5..b3e7e53774d 100644
--- a/pkgs/applications/misc/icesl/default.nix
+++ b/pkgs/applications/misc/icesl/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "IceSL is a GPU-accelerated procedural modeler and slicer for 3D printing";
+    description = "GPU-accelerated procedural modeler and slicer for 3D printing";
     homepage = "http://shapeforge.loria.fr/icesl/index.html";
     license = licenses.inria-icesl;
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/misc/j4-dmenu-desktop/default.nix b/pkgs/applications/misc/j4-dmenu-desktop/default.nix
index c20fa4ed9d9..2b1b093fd35 100644
--- a/pkgs/applications/misc/j4-dmenu-desktop/default.nix
+++ b/pkgs/applications/misc/j4-dmenu-desktop/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "j4-dmenu-desktop";
-  version = "2.17";
+  version = "2.18";
 
   src = fetchFromGitHub {
     owner = "enkore";
     repo = pname;
     rev = "r${version}";
-    sha256 = "0v23fimkn83dcm5p53y2ymhklff3kwppxhf75sm8xmswrzkixpgc";
+    sha256 = "1gxpgifzy0hnpd0ymw3r32amzr32z3bgb90ldjzl438p6h1q0i26";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/misc/kanboard/default.nix b/pkgs/applications/misc/kanboard/default.nix
index 4f84420330d..ebe31b10c60 100644
--- a/pkgs/applications/misc/kanboard/default.nix
+++ b/pkgs/applications/misc/kanboard/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kanboard";
-  version = "1.2.15";
+  version = "1.2.16";
 
   src = fetchFromGitHub {
     owner = "kanboard";
     repo = "kanboard";
     rev = "v${version}";
-    sha256 = "0lib2qlc8a59i9dak0g1j5hymwbq9vhflp5srhcjislxypfvrizs";
+    sha256 = "1nps7xcw1gp7kfdp13wyj2sprc8hn5iamdb0xj4202qygpzm63wq";
   };
 
   dontBuild = true;
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index f0131712b23..f718ab4d804 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -40,13 +40,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "keepassxc";
-  version = "2.6.1";
+  version = "2.6.2";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = version;
-    sha256 = "0wgn0glmcxaa670bpxh7n7abjlxcx4h1rl1169cmah0ddxnxnxpq";
+    sha256 = "032dzywvwpclhsl3n1pq2m9gyxqpg0gkci6axbvbs7bn82wznc4h";
   };
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [
diff --git a/pkgs/applications/misc/libosmocore/default.nix b/pkgs/applications/misc/libosmocore/default.nix
index 2bd8bfa99bc..8b36d384e15 100644
--- a/pkgs/applications/misc/libosmocore/default.nix
+++ b/pkgs/applications/misc/libosmocore/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    description = "libosmocore";
+    description = "Set of Osmocom core libraries";
     homepage = "https://github.com/osmocom/libosmocore";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/mapproxy/default.nix b/pkgs/applications/misc/mapproxy/default.nix
index 5676aef2360..41ae683548d 100644
--- a/pkgs/applications/misc/mapproxy/default.nix
+++ b/pkgs/applications/misc/mapproxy/default.nix
@@ -56,7 +56,7 @@ buildPythonApplication rec {
   #    https://github.com/NixOS/nixpkgs/pull/56480
   doCheck = false;
   meta = with lib; {
-  description = "MapProxy is an open source proxy for geospatial data";
+  description = "Open source proxy for geospatial data";
   homepage = "https://mapproxy.org/";
   license = licenses.asl20;
   maintainers = with maintainers; [ rakesh4g ];
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index 96833bb25d3..b3e23f2245c 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -2,11 +2,11 @@
 , desktop-file-utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "20.08";
+  version = "20.09";
   pname = "mediainfo-gui";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "1baf2dj5s3g1x4ssqli1b2r1203syk42m09zhp36qcinmfixv11l";
+    sha256 = "0rqg9z7s5bk7vlvjrs4gackzg7ib05a0dffi2ihsjf5a7kw7wcir";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index 09f20a9ba5d..0fd3826f4e5 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "20.08";
+  version = "20.09";
   pname = "mediainfo";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "1baf2dj5s3g1x4ssqli1b2r1203syk42m09zhp36qcinmfixv11l";
+    sha256 = "0rqg9z7s5bk7vlvjrs4gackzg7ib05a0dffi2ihsjf5a7kw7wcir";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/misc/nwg-launchers/default.nix b/pkgs/applications/misc/nwg-launchers/default.nix
index fc8cf3ee02e..d14d4d43e83 100644
--- a/pkgs/applications/misc/nwg-launchers/default.nix
+++ b/pkgs/applications/misc/nwg-launchers/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nwg-launchers";
-  version = "0.3.3";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "nwg-piotr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1p1bwsn7l4vp7y183735pgsfbh7dssdfn0wjzacl4s87arjdcgvb";
+    sha256 = "0r0wj4w3jj3l56z1lx6ypkzz4fsgx4vzqbvs95661l8q362pndzw";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/obsidian/default.nix b/pkgs/applications/misc/obsidian/default.nix
index 4e53657a747..8d6669917e7 100644
--- a/pkgs/applications/misc/obsidian/default.nix
+++ b/pkgs/applications/misc/obsidian/default.nix
@@ -30,12 +30,12 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "obsidian";
-  version = "0.9.1";
+  version = "0.9.4";
 
   src = fetchurl {
     url =
       "https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.asar.gz";
-    sha256 = "1skilcqfawvvyj9dnacsmlls55cqq6a4hzz9is165cwkyab185c5";
+    sha256 = "0qahgm9gf4sap28wy7cxbf41h8zldplbwxnv8shyajbkxn108g5p";
   };
 
   nativeBuildInputs = [ makeWrapper graphicsmagick ];
@@ -65,7 +65,7 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     description =
-      "Obsidian is a powerful knowledge base that works on top of a local folder of plain text Markdown files";
+      "A powerful knowledge base that works on top of a local folder of plain text Markdown files";
     homepage = "https://obsidian.md";
     license = licenses.obsidian;
     maintainers = with maintainers; [ conradmearns zaninime ];
diff --git a/pkgs/applications/misc/opentx/default.nix b/pkgs/applications/misc/opentx/default.nix
index a117ecc06a9..6bdcd0da1fc 100644
--- a/pkgs/applications/misc/opentx/default.nix
+++ b/pkgs/applications/misc/opentx/default.nix
@@ -6,13 +6,13 @@
 
 mkDerivation rec {
   pname = "opentx";
-  version = "2.3.9";
+  version = "2.3.10";
 
   src = fetchFromGitHub {
     owner = "opentx";
     repo = "opentx";
     rev = "release/${version}";
-    sha256 = "0kh3jdy1pgvns8lrncf61ayaq0hmsv41j8xv4r4rf17zyvjl0qph";
+    sha256 = "1pp3k1802gl1rji98clv17wj0619dliq821mpi4446lk22q692yq";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
index 496340e0d75..cd309797aa3 100644
--- a/pkgs/applications/misc/polar-bookshelf/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -1,11 +1,11 @@
 { stdenv, lib, makeWrapper, fetchurl
 , dpkg, wrapGAppsHook, autoPatchelfHook
-, gtk3, cairo, gnome2, atk, gdk-pixbuf, glib
+, gtk3, cairo, pango, atk, gdk-pixbuf, glib
 , at-spi2-atk, dbus, libX11, libxcb, libXi
 , libXcursor, libXdamage, libXrandr, libXcomposite
 , libXext, libXfixes, libXrender, libXtst, libXScrnSaver
 , nss, nspr, alsaLib, cups, fontconfig, expat
-, libudev0-shim, glibc, curl, openssl, libnghttp2, gnome3 }:
+, libudev0-shim, glibc, curl, openssl, libnghttp2, gsettings-desktop-schemas }:
 
 
 stdenv.mkDerivation rec {
@@ -19,11 +19,11 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    gnome3.gsettings_desktop_schemas
+    gsettings-desktop-schemas
     glib
     gtk3
     cairo
-    gnome2.pango
+    pango
     atk
     gdk-pixbuf
     at-spi2-atk
diff --git a/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/pkgs/applications/misc/prusa-slicer/super-slicer.nix
index da8cea8ab02..1e8f9fc9952 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.0";
+  version = "2.2.54.1";
   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-vvuUecysSdBvGBKOariQnsGJ9/Qccwp/lSq8WCED+Uk=";
+      sha256 = "sha256-0NWrck9nqAlc8xX3nTrRlnzjso4MRRjJSW7bUvCX6Y4=";
       rev = version;
     };
 
diff --git a/pkgs/applications/misc/rsibreak/default.nix b/pkgs/applications/misc/rsibreak/default.nix
index 432cbfb9b69..9f765793dc9 100644
--- a/pkgs/applications/misc/rsibreak/default.nix
+++ b/pkgs/applications/misc/rsibreak/default.nix
@@ -20,7 +20,7 @@ in mkDerivation rec {
   propagatedBuildInputs = [ knotifyconfig kidletime kwindowsystem ktextwidgets kcrash ];
 
   meta = with lib; {
-    description = "RSIBreak takes care of your health and regularly breaks your work to avoid repetitive strain injury (RSI)";
+    description = "Takes care of your health and regularly breaks your work to avoid repetitive strain injury (RSI)";
     license = licenses.gpl2;
     homepage = "https://www.kde.org/applications/utilities/rsibreak/";
     maintainers = with maintainers; [ vandenoever ];
diff --git a/pkgs/applications/misc/ssw/default.nix b/pkgs/applications/misc/ssw/default.nix
index 24b7953fe3d..7e1e4025810 100644
--- a/pkgs/applications/misc/ssw/default.nix
+++ b/pkgs/applications/misc/ssw/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ssw";
-  version = "0.3";
+  version = "0.6";
 
   src = fetchurl {
     url = "https://alpha.gnu.org/gnu/ssw/spread-sheet-widget-${version}.tar.gz";
-    sha256 = "1h93yyh2by6yrmkwqg38nd5knids05k5nqzcihc1hdwgzg3c4b8y";
+    sha256 = "08ck9l697xg8vpya5h07raq837i4pqxjqzx30vhscq4xpps2b8kj";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/misc/xmenu/default.nix b/pkgs/applications/misc/xmenu/default.nix
index 0904d1d048f..ecbb205c98e 100644
--- a/pkgs/applications/misc/xmenu/default.nix
+++ b/pkgs/applications/misc/xmenu/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   postPatch = "sed -i \"s:/usr/local:$out:\" config.mk";
 
   meta = with stdenv.lib; {
-    description = "XMenu is a menu utility for X";
+    description = "A menu utility for X";
     homepage = "https://github.com/phillbush/xmenu";
     license = licenses.publicDomain;
     maintainers = with maintainers; [ neonfuz ];
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index 52f2d51fb69..d362e4c9b25 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -91,19 +91,19 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "10.0.1";
+  version = "10.0.2";
 
   lang = "en-US";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
-      sha256 = "0c71dl1afl9dwpry2vshlf87pl1gfb7wrccxgqxf7mlkcir8xjcq";
+      sha256 = "sha256-JBJDMC44VSh1ekXPxsVvFk5nOB8Ro4UGtD32pG1weP8=";
     };
 
     i686-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
-      sha256 = "1cf9z2li4ip0xpfn892icq4415dvp60ncdwfkfpih82jlvyxnhi1";
+      sha256 = "sha256-EanW2Q8TtCPY5FSp8zfgBXMte9+RfKE24fu8ROtArK0=";
     };
   };
 in
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 7a5ecc5c80d..a0daba8d8f2 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "helm";
-  version = "3.3.4";
+  version = "3.4.0";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = "helm";
     rev = "v${version}";
-    sha256 = "1b719kzchgis4imscgf6i7dvc1mq3ymgh5ganpb89kcs88qw3szj";
+    sha256 = "1z5s8c6yrc1v2y54lx2mbyz31schzpaz2r304m0wwxhn06p43sl0";
   };
-  vendorSha256 = "0f8a0psvic923rh13f5041p7hr6w8dy9qxdw3l195yky5cf3fj6w";
+  vendorSha256 = "0vcvmbvfmj0bi5msjhy9qcqabiscjpfqpnb1lxy49mshs902qc14";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix
index 8cd9a230be8..f8c7ce2254e 100644
--- a/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmfile";
-  version = "0.131.0";
+  version = "0.132.1";
 
   src = fetchFromGitHub {
     owner = "roboll";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "1jhmw916acf0i3wji0i1srni90n2rxax95y09h1zszpccw60x4bf";
+    sha256 = "03i9pl3iwqk5az73qm9rxdq8c5nd9l4w3c28yk55bfgpwpnxcwjc";
   };
 
-  vendorSha256 = "1r94yc9b57jvpa2mhnla32nxa01rh9s7zf8qjgcpw63hm20mbbgc";
+  vendorSha256 = "0r4p4nwhmxg06qyf86gd2g61l4r1mlpblh4vhsc1shbz9iigykzi";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/helmsman/default.nix b/pkgs/applications/networking/cluster/helmsman/default.nix
index 19c7234e11b..d4f1e82d511 100644
--- a/pkgs/applications/networking/cluster/helmsman/default.nix
+++ b/pkgs/applications/networking/cluster/helmsman/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "helmsman";
-  version = "3.4.4";
+  version = "3.4.6";
 
   src = fetchFromGitHub {
     owner = "Praqma";
     repo = "helmsman";
     rev = "v${version}";
-    sha256 = "01vjghak2szif0p82kall5jw7mbfh4fg7fcjkblmic7l0vlqhfac";
+    sha256 = "018bkl6q6q8njv9qy87affs0g6c716vmhcqv2czv8qz454hn7i5h";
   };
 
   vendorSha256 = "05vnysr5r3hbayss1pyifgp989kjw81h95iack8ady62k6ys5njl";
diff --git a/pkgs/applications/networking/cluster/jx/default.nix b/pkgs/applications/networking/cluster/jx/default.nix
index 6fbec331802..72b365d01b4 100644
--- a/pkgs/applications/networking/cluster/jx/default.nix
+++ b/pkgs/applications/networking/cluster/jx/default.nix
@@ -35,7 +35,7 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
-    description = "JX is a command line tool for installing and using Jenkins X";
+    description = "Command line tool for installing and using Jenkins X";
     homepage = "https://jenkins-x.io";
     longDescription = ''
       Jenkins X provides automated CI+CD for Kubernetes with Preview
diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix
index baf10e273fb..a81c33a84bb 100644
--- a/pkgs/applications/networking/cluster/kops/default.nix
+++ b/pkgs/applications/networking/cluster/kops/default.nix
@@ -64,8 +64,8 @@ rec {
   };
 
   kops_1_18 = mkKops rec {
-    version = "1.18.1";
-    sha256 = "0jw23vmq2v9czxyansggq4fapz1bcaclmxpw6na4dsn8zcssz320";
+    version = "1.18.2";
+    sha256 = "17na83j6sfhk69w9ssvicc0xd1904z952ad3zzbpha50lcy6nlhp";
     rev = "v${version}";
   };
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index ff6e152a5ff..299c1fb523c 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -11,9 +11,9 @@
 
 buildGoModule rec {
   pname = "minikube";
-  version = "1.14.0";
+  version = "1.14.1";
 
-  vendorSha256 = "03imagmsfj9rv5g2sybpdx9y7vdwag3mrsjibgsbq3jhf7r1ib3g";
+  vendorSha256 = "057mlmja3mygfdf0cp0bcm0chq7s30bjcs5hqacwl6c79ivrjf89";
 
   doCheck = false;
 
@@ -21,7 +21,7 @@ buildGoModule rec {
     owner = "kubernetes";
     repo = "minikube";
     rev = "v${version}";
-    sha256 = "1nwpgfgw3vg8zy3mvjja13vdj12mys4crdm8cfimv9g3ka08dqpx";
+    sha256 = "000i30qsjx1h2x6b8vb5piq9lhjrz5hj9wza7gxsrzsf2z9rhryg";
   };
 
   nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];
diff --git a/pkgs/applications/networking/cluster/prow/default.nix b/pkgs/applications/networking/cluster/prow/default.nix
index 60e79ed6690..b1ea88a11a3 100644
--- a/pkgs/applications/networking/cluster/prow/default.nix
+++ b/pkgs/applications/networking/cluster/prow/default.nix
@@ -52,7 +52,7 @@ buildGoModule rec {
   ];
 
   meta = with lib; {
-    description = "Prow is a Kubernetes based CI/CD system";
+    description = "A Kubernetes based CI/CD system";
     longDescription = ''
       Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various
       types of events and report their status to many different services. In
diff --git a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
index ac6ad4f22fe..b9b1c1f54a9 100644
--- a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
+++ b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
@@ -1,25 +1,27 @@
-{ stdenv, buildDunePackage, fetchFromGitHub
-, ocamlfuse, gapi_ocaml, ocaml_sqlite3
+{ lib, buildDunePackage, fetchFromGitHub
+, ocaml_extlib, ocamlfuse, gapi_ocaml, ocaml_sqlite3
 }:
 
 buildDunePackage rec {
   pname = "google-drive-ocamlfuse";
-  version = "0.7.21";
+  version = "0.7.22";
+
+  useDune2 = true;
 
   src = fetchFromGitHub {
     owner = "astrada";
     repo = "google-drive-ocamlfuse";
     rev = "v${version}";
-    sha256 = "0by3qnjrr1mbxyl2n99zggx8dxnqlicsq2b2hhhxb2d0k8qn47sw";
+    sha256 = "027j1r2iy8vnbqs8bv893f0909yk5312ki5p3zh2pdz6s865h750";
   };
 
-  buildInputs = [ ocamlfuse gapi_ocaml ocaml_sqlite3 ];
+  buildInputs = [ ocaml_extlib ocamlfuse gapi_ocaml ocaml_sqlite3 ];
 
   meta = {
-    homepage = "http://gdfuse.forge.ocamlcore.org/";
+    inherit (src.meta) homepage;
     description = "A FUSE-based file system backed by Google Drive, written in OCaml";
-    license = stdenv.lib.licenses.mit;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ obadz ];
+    license = lib.licenses.mit;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ obadz ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/ferdi/default.nix b/pkgs/applications/networking/instant-messengers/ferdi/default.nix
index e0f56e2783d..190050d8327 100644
--- a/pkgs/applications/networking/instant-messengers/ferdi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ferdi/default.nix
@@ -9,7 +9,7 @@ mkFranzDerivation rec {
     sha256 = "0i24vcnq4iz5amqmn2fgk92ff9x9y7fg8jhc3g6ksvmcfly7af3k";
   };
   meta = with stdenv.lib; {
-    description = "Ferdi allows you to combine your favorite messaging services into one application";
+    description = "Combine your favorite messaging services into one application";
     homepage = "https://getferdi.com/";
     license = licenses.free;
     maintainers = [ maintainers.davidtwco ];
diff --git a/pkgs/applications/networking/instant-messengers/gomuks/default.nix b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
index c98fd9e8040..00134e2597b 100644
--- a/pkgs/applications/networking/instant-messengers/gomuks/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gomuks";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = pname;
     rev = "v" + version;
-    sha256 = "0sf1nqwimxqql8wm6763jyc5rclhd4zxgg9gfi0qvg5ccm1r1z5q";
+    sha256 = "0xa4ch4p48w6sd0f4s1sp0hl1w4fvzhff7w2ar19ki0ydy5g368n";
   };
 
-  vendorSha256 = "sha256:0n9mwbzjkvlljlns7sby8nb9gm4vj0v4idp1zxv5xssqr5qalihf";
+  vendorSha256 = "1rhvwk8bdbbffhx2d03a8p9jc5c8v3pi7kw1dmyyngz6p7wq1g0x";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index c1984a218c8..9f841f50dac 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
   enableParallelBuilding = true;
   meta = with stdenv.lib; {
-    description = "Psi, an XMPP (Jabber) client";
+    description = "An XMPP (Jabber) client";
     maintainers = [ maintainers.raskin ];
     license = licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix b/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
index 5806a269104..e964c654c70 100644
--- a/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "ssh-chat";
-  version = "1.9";
+  version = "1.10";
 
   goPackagePath = "github.com/shazow/ssh-chat";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "shazow";
     repo = "ssh-chat";
     rev = "v${version}";
-    sha256 = "04yszan6a7x9498s80xymf7wd10530yjrxcdw4czbplyhjdigxlg";
+    sha256 = "e4COAyheY+mE5zltR1Ms2OJ3I8iG/N1CZ6D7I9PDW5U=";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/applications/networking/mailreaders/aerc/default.nix b/pkgs/applications/networking/mailreaders/aerc/default.nix
index 9a607b54b9c..45d41839a1c 100644
--- a/pkgs/applications/networking/mailreaders/aerc/default.nix
+++ b/pkgs/applications/networking/mailreaders/aerc/default.nix
@@ -54,7 +54,7 @@ buildGoModule rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "aerc is an email client for your terminal";
+    description = "An email client for your terminal";
     homepage = "https://aerc-mail.org/";
     maintainers = with maintainers; [ tadeokondrak ];
     license = licenses.mit;
diff --git a/pkgs/applications/networking/mailreaders/inboxer/default.nix b/pkgs/applications/networking/mailreaders/inboxer/default.nix
index 189ac1e6aae..a11e5763699 100644
--- a/pkgs/applications/networking/mailreaders/inboxer/default.nix
+++ b/pkgs/applications/networking/mailreaders/inboxer/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, binutils, patchelf, makeWrapper
-, expat, xorg, gdk-pixbuf, glib, gnome2, cairo, atk, freetype
+, expat, xorg, gdk-pixbuf, glib, gnome2, cairo, atk, freetype, pango
 , fontconfig, dbus, nss, nspr, gtk2-x11, alsaLib, cups, libpulseaudio, udev }:
 
 stdenv.mkDerivation rec {
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
       xorg.libxcb
       gdk-pixbuf
       glib
-      gnome2.pango
+      pango
       gnome2.GConf
       expat
       stdenv.cc.cc.lib
diff --git a/pkgs/applications/networking/nym/default.nix b/pkgs/applications/networking/nym/default.nix
index 4dfe1dc5492..d85266f68d6 100644
--- a/pkgs/applications/networking/nym/default.nix
+++ b/pkgs/applications/networking/nym/default.nix
@@ -9,16 +9,25 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nym";
-  version = "0.7.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "nymtech";
     repo = "nym";
     rev = "v${version}";
-    sha256 = "05bxrpqwwf9spydac0q8sly65q8f1nk13i5fy3p5adr1phzxdnr8";
+    sha256 = "0wzk9qzjyax73lfjbbag412vw1fgk2wmhhry5hdlvdbkim42m5bn";
   };
 
-  cargoSha256 = "0mh8cwia86bm68b0wcrmnsq1af5cp6kj1j81nwxb03awnqpxc34n";
+  # fix outdated Cargo.lock
+  cargoPatches = [ (writeText "fix-nym-cargo-lock.patch" ''
+    --- a/Cargo.lock
+    +++ b/Cargo.lock
+    @@ -1826 +1826 @@
+    -version = "0.8.0"
+    +version = "0.8.1"
+  '') ];
+
+  cargoSha256 = "0zr5nzmglmvn6xfqgvipbzy8nw5cl3nf7zjmghkqdwi6zj9p9272";
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -26,20 +35,6 @@ rustPlatform.buildRustPackage rec {
 
   checkType = "debug";
 
-  /*
-  Nym's test presence::converting_mixnode_presence_into_topology_mixnode::it_returns_resolved_ip_on_resolvable_hostname tries to resolve nymtech.net.
-  Since there is no external DNS resolution available in the build sandbox, we point cargo and its children (that's what we remove the 'unsetenv' call for) to a hosts file in which we statically resolve nymtech.net.
-  */
-  preCheck = ''
-    export LD_PRELOAD=${libredirect.overrideAttrs (drv: {
-      postPatch = "sed -i -e /unsetenv/d libredirect.c";
-    })}/lib/libredirect.so
-    export NIX_REDIRECTS=/etc/hosts=${writeText "nym_resolve_test_hosts" "127.0.0.1 nymtech.net"}
-  '';
-
-  postCheck = "unset NIX_REDIRECTS LD_PRELOAD";
-
-
   passthru.updateScript = ./update.sh;
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/sync/rclone/default.nix b/pkgs/applications/networking/sync/rclone/default.nix
index bd68531db19..bf9be1b103d 100644
--- a/pkgs/applications/networking/sync/rclone/default.nix
+++ b/pkgs/applications/networking/sync/rclone/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "rclone";
-  version = "1.53.1";
+  version = "1.53.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "1yi6n5ip680ydqhz8fnd0igr8dy7zzhpx37mdgahsfac7cwf6k0q";
+    sha256 = "0ns55b6s4zdw94jlialps3knclghj9xqx84ff8hyrl9ksq02kd3w";
   };
 
   vendorSha256 = "1l4iz31k1pylvf0zrp4nhxna70s1ma4981x6q1s3dhszjxil5c88";
diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix
index 2728d8484ef..7f384846c96 100644
--- a/pkgs/applications/networking/sync/rsync/default.nix
+++ b/pkgs/applications/networking/sync/rsync/default.nix
@@ -35,7 +35,15 @@ stdenv.mkDerivation rec {
                 ++ stdenv.lib.optional enableXXHash xxHash;
   nativeBuildInputs = [perl];
 
-  configureFlags = ["--with-nobody-group=nogroup"];
+  configureFlags = ["--with-nobody-group=nogroup"]
+    # Work around issue with cross-compilation:
+    #     configure.sh: error: cannot run test program while cross compiling
+    # Remove once 3.2.4 or more recent is released.
+    # The following PR should fix the cross-compilation issue.
+    # Test using `nix-build -A pkgsCross.aarch64-multiplatform.rsync`.
+    # https://github.com/WayneD/rsync/commit/b7fab6f285ff0ff3816b109a8c3131b6ded0b484
+    ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--enable-simd=no"
+  ;
 
   passthru.tests = { inherit (nixosTests) rsyncd; };
 
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index b33d978ee0b..d6b404f9db7 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -5,11 +5,11 @@ let
 in
 buildPythonApplication rec {
   pname = "fava";
-  version = "1.15";
+  version = "1.16";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "037fhimfjiqay28wg7hd5sm7r0935ynw9d905iszn965ihr1qsgz";
+    sha256 = "436b6f9441a638f8028729c2a39c28433f7878c2af6ddb9bfccaeea9ea3086e1";
   };
 
   checkInputs = [ python3.pkgs.pytest ];
diff --git a/pkgs/applications/office/paperless/python-modules/default.nix b/pkgs/applications/office/paperless/python-modules/default.nix
index 40a496312fa..4c5510ebb74 100644
--- a/pkgs/applications/office/paperless/python-modules/default.nix
+++ b/pkgs/applications/office/paperless/python-modules/default.nix
@@ -1,6 +1,6 @@
 pyPkgs: fetchFromGitHub:
 {
-  django_2_0 = pyPkgs.django_2_2.overridePythonAttrs (old: rec {
+  django_2_0 = pyPkgs.django_2.overridePythonAttrs (old: rec {
     version = "2.0.12";
     src = pyPkgs.fetchPypi {
       inherit (old) pname;
diff --git a/pkgs/applications/radio/gqrx/default.nix b/pkgs/applications/radio/gqrx/default.nix
index 413424a5b8b..786e463686f 100644
--- a/pkgs/applications/radio/gqrx/default.nix
+++ b/pkgs/applications/radio/gqrx/default.nix
@@ -9,13 +9,13 @@ assert pulseaudioSupport -> libpulseaudio != null;
 
 mkDerivation rec {
   pname = "gqrx";
-  version = "2.13";
+  version = "2.13.2";
 
   src = fetchFromGitHub {
     owner = "csete";
     repo = "gqrx";
     rev = "v${version}";
-    sha256 = "034y8w2cwv35ibqnqb9bdgscsrcp6rr02fgscbfi3gky3n0qddcy";
+    sha256 = "1lcy9gqb1x9fwq550bywj7h66rdacq5893wsax1p7qvqa27d945b";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/radio/urh/default.nix b/pkgs/applications/radio/urh/default.nix
index 730b679ba61..008697211f7 100644
--- a/pkgs/applications/radio/urh/default.nix
+++ b/pkgs/applications/radio/urh/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "urh";
-  version = "2.8.8";
+  version = "2.8.9";
 
   src = fetchFromGitHub {
     owner = "jopohl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0knymy85n9kxj364jpxjc4v9c238b00nl40rafi1ripkqx36bsfv";
+    sha256 = "0axzqyljbmpc4c9bnqmdrrz5la5r9qynp49fig645xyxs87vq6b0";
   };
 
   nativeBuildInputs = [ qt5.wrapQtAppsHook ];
diff --git a/pkgs/applications/science/biology/dcm2niix/default.nix b/pkgs/applications/science/biology/dcm2niix/default.nix
index 59b173ac98c..cfd1206f231 100644
--- a/pkgs/applications/science/biology/dcm2niix/default.nix
+++ b/pkgs/applications/science/biology/dcm2niix/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libyamlcpp ];
 
   meta = with stdenv.lib; {
-    description = "dcm2niix DICOM to NIfTI converter";
+    description = "DICOM to NIfTI converter";
     longDescription = ''
       dcm2niix is a designed to convert neuroimaging data from the
       DICOM format to the NIfTI format.
diff --git a/pkgs/applications/science/biology/kallisto/default.nix b/pkgs/applications/science/biology/kallisto/default.nix
index 5a1bb187886..014ae14cc79 100644
--- a/pkgs/applications/science/biology/kallisto/default.nix
+++ b/pkgs/applications/science/biology/kallisto/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = false;
 
   meta = with stdenv.lib; {
-    description = "Kallisto is a program for quantifying abundances of transcripts from RNA-Seq data";
+    description = "Program for quantifying abundances of transcripts from RNA-Seq data";
     homepage = "https://pachterlab.github.io/kallisto";
     license = licenses.bsd2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/openhantek6022/default.nix b/pkgs/applications/science/electronics/openhantek6022/default.nix
index ad8fa3c7a7a..acdac346fd3 100644
--- a/pkgs/applications/science/electronics/openhantek6022/default.nix
+++ b/pkgs/applications/science/electronics/openhantek6022/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "openhantek6022";
-  version = "3.1.2";
+  version = "3.1.3";
 
   src = fetchFromGitHub {
     owner = "OpenHantek";
     repo = "OpenHantek6022";
     rev = version;
-    sha256 = "104j7d3i5y6jd20c2z3l10sr6sgdy8iki3g9mlwhddnr8x6nzc03";
+    sha256 = "1n4l8ks5808d99zj1vj0ck0v1lb9s7iv3ahww7ximbf9iha39pbm";
   };
 
   nativeBuildInputs = [ cmake makeWrapper ];
diff --git a/pkgs/applications/science/logic/coq2html/default.nix b/pkgs/applications/science/logic/coq2html/default.nix
index 2e56eda893e..e53e8e7392c 100644
--- a/pkgs/applications/science/logic/coq2html/default.nix
+++ b/pkgs/applications/science/logic/coq2html/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchgit, ocaml }:
 
-let 
+let
   version = "20170720";
 in
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    description = "coq2html is an HTML documentation generator for Coq source files";
+    description = "HTML documentation generator for Coq source files";
     longDescription = ''
       coq2html is an HTML documentation generator for Coq source files. It is
       an alternative to the standard coqdoc documentation generator
diff --git a/pkgs/applications/science/logic/ott/default.nix b/pkgs/applications/science/logic/ott/default.nix
index ecc253a64d9..48ad63eaa99 100644
--- a/pkgs/applications/science/logic/ott/default.nix
+++ b/pkgs/applications/science/logic/ott/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   postInstall = "opaline -prefix $out";
 
   meta = {
-    description = "Ott: tool for the working semanticist";
+    description = "A tool for the working semanticist";
     longDescription = ''
       Ott is a tool for writing definitions of programming languages and
       calculi. It takes as input a definition of a language syntax and
diff --git a/pkgs/applications/science/machine-learning/labelimg/default.nix b/pkgs/applications/science/machine-learning/labelimg/default.nix
index 05c56b0b095..18c304e8316 100644
--- a/pkgs/applications/science/machine-learning/labelimg/default.nix
+++ b/pkgs/applications/science/machine-learning/labelimg/default.nix
@@ -28,7 +28,7 @@
       makeWrapperArgs+=("''${qtWrapperArgs[@]}")
     '';
     meta = with stdenv.lib; {
-      description = "LabelImg is a graphical image annotation tool and label object bounding boxes in images";
+      description = "A graphical image annotation tool and label object bounding boxes in images";
       homepage = "https://github.com/tzutalin/labelImg";
       license = licenses.mit;
       platforms = platforms.linux;
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index 717b240c1cc..25ee66e8f75 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -12,11 +12,11 @@
 assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
-  name = "R-4.0.2";
+  name = "R-4.0.3";
 
   src = fetchurl {
     url = "https://cran.r-project.org/src/base/R-4/${name}.tar.gz";
-    sha256 = "0xdy3dy2bzdiba8z94hjykyra8si8a5q15s0bri7c26scjrymg6k";
+    sha256 = "03cypg2qf7v9mq9mr9alz9w5y9m5kdgwbc97bp26pyymg253m609";
   };
 
   dontUseImakeConfigure = true;
diff --git a/pkgs/applications/science/math/bliss/default.nix b/pkgs/applications/science/math/bliss/default.nix
index 52b05646a70..9ab90134aad 100644
--- a/pkgs/applications/science/math/bliss/default.nix
+++ b/pkgs/applications/science/math/bliss/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "bliss is an open source tool for computing automorphism groups and canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs";
+    description = "An open source tool for computing automorphism groups and canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs";
     homepage = "http://www.tcs.hut.fi/Software/bliss/";
     license = licenses.lgpl3;
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/science/math/maxima/5.41.nix b/pkgs/applications/science/math/maxima/5.41.nix
deleted file mode 100644
index 829dffc6116..00000000000
--- a/pkgs/applications/science/math/maxima/5.41.nix
+++ /dev/null
@@ -1,102 +0,0 @@
-{ stdenv, fetchurl, fetchpatch, sbcl, texinfo, perl, python, makeWrapper, rlwrap ? null
-, tk ? null, gnuplot ? null, ecl ? null, ecl-fasl ? false
-}:
-
-let
-  name    = "maxima";
-  # old version temporarily kept for sage, see discussion at
-  # https://github.com/NixOS/nixpkgs/commit/82254747af35f3e0e0d6f78023ded3a81e25331b
-  version = "5.41.0";
-
-  searchPath =
-    stdenv.lib.makeBinPath
-      (stdenv.lib.filter (x: x != null) [ sbcl ecl rlwrap tk gnuplot ]);
-in
-stdenv.mkDerivation ({
-  inherit version;
-  name = "${name}-${version}";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
-    sha256 = "0x0n81z0s4pl8nwpf7ivlsbvsdphm9w42250g7qdkizl0132by6s";
-  };
-
-  buildInputs = stdenv.lib.filter (x: x != null) [
-    sbcl ecl texinfo perl python makeWrapper
-  ];
-
-  postInstall = ''
-    # Make sure that maxima can find its runtime dependencies.
-    for prog in "$out/bin/"*; do
-      wrapProgram "$prog" --prefix PATH ":" "$out/bin:${searchPath}"
-    done
-    # Move emacs modules and documentation into the right place.
-    mkdir -p $out/share/emacs $out/share/doc
-    ln -s ../maxima/${version}/emacs $out/share/emacs/site-lisp
-    ln -s ../maxima/${version}/doc $out/share/doc/maxima
-  ''
-   + (stdenv.lib.optionalString ecl-fasl ''
-     cp src/binary-ecl/maxima.fas* "$out/lib/maxima/${version}/binary-ecl/"
-   '')
-  ;
-
-  patches = [
-    # fix path to info dir (see https://trac.sagemath.org/ticket/11348)
-    (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/maxima/patches/infodir.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-      sha256 = "09v64n60f7i6frzryrj0zd056lvdpms3ajky4f9p6kankhbiv21x";
-    })
-
-    # fix https://sourceforge.net/p/maxima/bugs/2596/
-    (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/maxima/patches/matrixexp.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-      sha256 = "06961hn66rhjijfvyym21h39wk98sfxhp051da6gz0n9byhwc6zg";
-    })
-
-    # undo https://sourceforge.net/p/maxima/code/ci/f5e9b0f7eb122c4e48ea9df144dd57221e5ea0ca, see see https://trac.sagemath.org/ticket/13364#comment:93
-    (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/maxima/patches/undoing_true_false_printing_patch.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-      sha256 = "0fvi3rcjv6743sqsbgdzazy9jb6r1p1yq63zyj9fx42wd1hgf7yx";
-    })
-
-    # upstream bug https://sourceforge.net/p/maxima/bugs/2520/ (not fixed)
-    # introduced in https://trac.sagemath.org/ticket/13364
-    (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/maxima/patches/0001-taylor2-Avoid-blowing-the-stack-when-diff-expand-isn.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-      sha256 = "0xa0b6cr458zp7lc7qi0flv5ar0r3ivsqhjl0c3clv86di2y522d";
-    })
-  ] ++ stdenv.lib.optionals ecl-fasl [
-    # build fasl, needed for ECL support
-    (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/maxima/patches/maxima.system.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-      sha256 = "18zafig8vflhkr80jq2ivk46k92dkszqlyq8cfmj0b2vcfjwwbar";
-    })
-    # There are some transient test failures. I hope this disables all those tests.
-    # If those test failures ever happen in the non-ecl version, that should be
-    # reportetd upstream.
-    ./known-ecl-failures.patch
-  ];
-
-  # Failures in the regression test suite won't abort the build process. We run
-  # the suite only so that potential errors show up in the build log. See also:
-  # https://sourceforge.net/tracker/?func=detail&aid=3365831&group_id=4933&atid=104933.
-  doCheck = true;
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Computer algebra system";
-    homepage = "http://maxima.sourceforge.net";
-    license = stdenv.lib.licenses.gpl2;
-
-    longDescription = ''
-      Maxima is a fairly complete computer algebra system written in
-      lisp with an emphasis on symbolic computation. It is based on
-      DOE-MACSYMA and licensed under the GPL. Its abilities include
-      symbolic integration, 3D plotting, and an ODE solver.
-    '';
-
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.peti ];
-  };
-})
diff --git a/pkgs/applications/science/math/maxima/known-ecl-failures.patch b/pkgs/applications/science/math/maxima/known-ecl-failures.patch
deleted file mode 100644
index f1d612d993e..00000000000
--- a/pkgs/applications/science/math/maxima/known-ecl-failures.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/tests/testsuite.lisp b/tests/testsuite.lisp
-index 45a81f4..36c35b8 100644
---- a/tests/testsuite.lisp
-+++ b/tests/testsuite.lisp
-@@ -25,13 +25,14 @@
-         ((mlist simp) "rtest10" 24 25)
-         ((mlist) "rtest11" #+(or gcl cmucl ccl64) 158 #+(or gcl cmucl ccl64) 174 #+gcl 175)
-         "rtest13" "rtest13s"
--        "rtest14"
-+        ;; "rtest14" ;; some tests sometimes fail with ecl, hard to reproduce. Observed failing: 250, 267, 297, 307, 310, 312, 315, 319
-         "rtest15"
- 	;; ccl versions 1.11 and earlier fail test 50.  Mark it as a
- 	;; known failure.  Presumably 1.12 will have this fixed.
-         ((mlist simp) "rtest16" #+ccl 50)
-         "rtestode" "rtestode_zp"
--        "rtest3" "rtest8"
-+        "rtest3"
-+        ((mlist simp) "rtest8" 104) ;; fails with ecl
-         ((mlist simp) "rtest12" 76 78)
-         "rexamples"
-         ((mlist simp) "rtesthyp" 105 112 113 123 124 128)
diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix
index 40b2711ff65..ebf2d2f0475 100644
--- a/pkgs/applications/science/math/rofi-calc/default.nix
+++ b/pkgs/applications/science/math/rofi-calc/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rofi-calc";
-  version = "1.8";
+  version = "1.9";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0vwb9c3xvd2cms6cw8j8parg7w4bsxvvrd1wgggr8sz2p8rrvy5p";
+    sha256 = "ZGY4ZtAG/ZnEnC80modZBV4RdRQElbkjeoKCEFVrncE=";
   };
 
   nativeBuildInputs = [
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/svenstaro/rofi-calc";
     license = licenses.mit;
     maintainers = with maintainers; [ luc65r albakham ];
-    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    platforms = with platforms; linux;
   };
 }
 
diff --git a/pkgs/applications/science/misc/openmodelica/default.nix b/pkgs/applications/science/misc/openmodelica/default.nix
index 50d4dcc1a9f..268ae53401f 100644
--- a/pkgs/applications/science/misc/openmodelica/default.nix
+++ b/pkgs/applications/science/misc/openmodelica/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    description = "OpenModelica is an open-source Modelica-based modeling and simulation environment";
+    description = "An open-source Modelica-based modeling and simulation environment";
     homepage    = "https://openmodelica.org";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ smironov ];
diff --git a/pkgs/applications/science/programming/scyther/default.nix b/pkgs/applications/science/programming/scyther/default.nix
index d1e948fe187..ca6b57de611 100644
--- a/pkgs/applications/science/programming/scyther/default.nix
+++ b/pkgs/applications/science/programming/scyther/default.nix
@@ -13,7 +13,7 @@ let
   };
 
   meta = with lib; {
-    description = "Scyther is a tool for the automatic verification of security protocols";
+    description = "A tool for the automatic verification of security protocols";
     homepage = "https://www.cs.ox.ac.uk/people/cas.cremers/scyther/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ infinisil ];
diff --git a/pkgs/applications/system/glances/default.nix b/pkgs/applications/system/glances/default.nix
index 6b77914539c..b0bd5cc8b15 100644
--- a/pkgs/applications/system/glances/default.nix
+++ b/pkgs/applications/system/glances/default.nix
@@ -4,6 +4,7 @@
 , bottle, pysnmp
 , hddtemp
 , netifaces # IP module
+, py-cpuinfo
 }:
 
 buildPythonApplication rec {
@@ -41,6 +42,7 @@ buildPythonApplication rec {
     psutil
     pysnmp
     setuptools
+    py-cpuinfo
   ] ++ lib.optional stdenv.isLinux hddtemp;
 
   preConfigure = ''
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index e59ca6ac899..4fe805f752c 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "1jf1y6135p30dlr42fnl0w7782fczizq8yya4bsd6xf66bcq0zzn";
+    sha256 = "17hbgi1jh4p07r4p5mr7w7p01i6zzr28mn5i4jaki7p0jwfqbvvi";
   };
 
-  vendorSha256 = "12ka5x5m4h8dfpcdhfjc5lz6bm8pzfqkbhs9j3a8w08xsi93dvdz";
+  vendorSha256 = "0ybbwbw4vdsxdq4w75s1i0dqad844sfgs69b3vlscwfm6g3i9h51";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/version-management/git-and-tools/git-absorb/default.nix b/pkgs/applications/version-management/git-and-tools/git-absorb/default.nix
index 18703403138..46a6f817417 100644
--- a/pkgs/applications/version-management/git-and-tools/git-absorb/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-absorb/default.nix
@@ -2,20 +2,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-absorb";
-  version = "0.6.4";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
     owner  = "tummychow";
     repo   = pname;
     rev    = "refs/tags/${version}";
-    sha256 = "01hf9hbrigqn4qcz6jmprp7by9nh55k1r2d11g7sil5fpw6m2j9k";
+    sha256 = "12ih0gm07ddi86jy612f029nzav345v57pjajyy9lw017g6n6mjb";
   };
 
   nativeBuildInputs = [ installShellFiles ];
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
 
-  cargoSha256 = "04dkfjb6pxqaalw2y6yli9q58g8x8ppfmibivpvqifk8r8dhkdqp";
+  cargoSha256 = "0x2zcw0bpwqimvbb5xj8xawvl4jcvk5lj0y2mm5ncbdapzyqdsb2";
 
   postInstall = ''
     installManPage Documentation/git-absorb.1
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index 56788ae4f10..fcbb546a1fa 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -3,7 +3,7 @@
 , libgcrypt, libgpgerror, libunistring
 , boost, avahi, lame, autoreconfHook
 , gettext, pcre-cpp, yajl, fribidi, which
-, openssl, gperf, tinyxml2, taglib, libssh, swig, jre
+, openssl, gperf, tinyxml2, taglib, libssh, swig, jre_headless
 , libxml2, systemd
 , alsaLib, libGLU, libGL, glew, fontconfig, freetype, ftgl
 , libjpeg, libpng, libtiff
@@ -211,7 +211,7 @@ in stdenv.mkDerivation {
       which
       pkgconfig gnumake
       autoconf automake libtool # still needed for some components. Check if that is the case with 19.0
-      jre yasm gettext python2Packages.python flatbuffers
+      jre_headless yasm gettext python2Packages.python flatbuffers
 
       # for TexturePacker
       giflib zlib libpng libjpeg lzo
diff --git a/pkgs/applications/video/lightworks/default.nix b/pkgs/applications/video/lightworks/default.nix
index da413915e37..97e5e67aaec 100644
--- a/pkgs/applications/video/lightworks/default.nix
+++ b/pkgs/applications/video/lightworks/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, dpkg, makeWrapper, buildFHSUserEnv
-, gtk3, gdk-pixbuf, cairo, libjpeg_original, glib, gnome2, libGLU
+, gtk3, gdk-pixbuf, cairo, libjpeg_original, glib, pango, libGLU
 , nvidia_cg_toolkit, zlib, openssl, portaudio
 }:
 let
@@ -10,7 +10,7 @@ let
     cairo
     libjpeg_original
     glib
-    gnome2.pango
+    pango
     libGLU
     nvidia_cg_toolkit
     zlib
diff --git a/pkgs/applications/video/mjpg-streamer/default.nix b/pkgs/applications/video/mjpg-streamer/default.nix
index d1efae4a924..b6856f1a18e 100644
--- a/pkgs/applications/video/mjpg-streamer/default.nix
+++ b/pkgs/applications/video/mjpg-streamer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/jacksonliam/mjpg-streamer";
-    description = "MJPG-streamer takes JPGs from Linux-UVC compatible webcams, filesystem or other input plugins and streams them as M-JPEG via HTTP to webbrowsers, VLC and other software";
+    description = "Takes JPGs from Linux-UVC compatible webcams, filesystem or other input plugins and streams them as M-JPEG via HTTP to webbrowsers, VLC and other software";
     platforms = platforms.linux;
     license = licenses.gpl2;
     maintainers = with maintainers; [ gebner ];
diff --git a/pkgs/applications/video/mkclean/default.nix b/pkgs/applications/video/mkclean/default.nix
index 6bb1bcc5d8a..36cd2206070 100644
--- a/pkgs/applications/video/mkclean/default.nix
+++ b/pkgs/applications/video/mkclean/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "mkclean is a command line tool to clean and optimize Matroska (.mkv / .mka / .mks / .mk3d) and WebM (.webm / .weba) files that have already been muxed";
+    description = "Command line tool to clean and optimize Matroska (.mkv / .mka / .mks / .mk3d) and WebM (.webm / .weba) files that have already been muxed";
     homepage = "https://www.matroska.org";
     license = licenses.bsdOriginal;
     maintainers = with maintainers; [ chrisaw ];
diff --git a/pkgs/applications/video/streamlink-twitch-gui/bin.nix b/pkgs/applications/video/streamlink-twitch-gui/bin.nix
index 251f495b7e1..1c955a36f34 100644
--- a/pkgs/applications/video/streamlink-twitch-gui/bin.nix
+++ b/pkgs/applications/video/streamlink-twitch-gui/bin.nix
@@ -1,6 +1,6 @@
 { autoPatchelfHook, fetchurl, lib, makeDesktopItem, makeWrapper, stdenv, wrapGAppsHook
 , at-spi2-core, atk, alsaLib, cairo, cups, dbus, expat, gcc-unwrapped
-, gdk-pixbuf, glib, gnome2, gtk3-x11, libudev0-shim, libuuid, nss, nspr, xorg
+, gdk-pixbuf, glib, pango, gtk3-x11, libudev0-shim, libuuid, nss, nspr, xorg
 , streamlink }:
 
 let
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     gcc-unwrapped
     gdk-pixbuf
     glib
-    gnome2.pango
+    pango
     gtk3-x11
     nss
     nspr
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index 3dbfd8f5bb1..4d6f53ceb5d 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -29,7 +29,9 @@ rec {
       patches = [];
     });
 
-    docker-containerd = containerd.overrideAttrs (oldAttrs: {
+    docker-containerd = let
+      withlibseccomp = lib.versionAtLeast version "19.03";
+    in containerd.overrideAttrs (oldAttrs: {
       name = "docker-containerd-${version}";
       inherit version;
       src = fetchFromGitHub {
@@ -38,6 +40,9 @@ rec {
         rev = containerdRev;
         sha256 = containerdSha256;
       };
+      # This should be removed once Docker uses containerd >=1.4
+      nativeBuildInputs = oldAttrs.nativeBuildInputs ++ lib.optional withlibseccomp pkgconfig;
+      buildInputs = oldAttrs.buildInputs ++ lib.optional withlibseccomp libseccomp;
     });
 
     docker-tini = tini.overrideAttrs  (oldAttrs: {
@@ -210,13 +215,14 @@ rec {
   };
 
   docker_19_03 = makeOverridable dockerGen rec {
-    version = "19.03.12";
+    version = "19.03.13";
     rev = "v${version}";
-    sha256 = "0i5xr8q3yjrz5zsjcq63v4g1mzqpingjr1hbf9amk14484i2wkw7";
+    sha256 = "139qqy8jiz1phnngknpa7c1nk9iqwd3hcc9as8x50p1vnycwzr3f";
     runcRev = "dc9208a3303feef5b3839f4323d9beb36df0a9dd"; # v1.0.0-rc10
     runcSha256 = "0pi3rvj585997m4z9ljkxz2z9yxf9p2jr0pmqbqrc7bc95f5hagk";
-    containerdRev = "7ad184331fa3e55e52b890ea95e65ba581ae3429"; # v1.2.13
-    containerdSha256 = "1rac3iak3jpz57yarxc72bxgxvravwrl0j6s6w2nxrmh2m3kxqzn";
+    # Note: Once all packaged Docker versions use containerd <=1.2 or >=1.4 remove the libseccomp and pkgconfig inputs above
+    containerdRev = "8fba4e9a7d01810a393d5d25a3621dc101981175"; # v1.3.7
+    containerdSha256 = "10zy507ajslizicagb64dvbs7wmw0j4x3hdhygbdh4g2nv3mgjb7";
     tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662"; # v0.18.0
     tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
   };
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index c320eca0bbe..e80edf72677 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -23,8 +23,7 @@ let
   buildType = "release";
   # Use maintainers/scripts/update.nix to update the version and all related hashes or
   # change the hashes in extpack.nix and guest-additions/default.nix as well manually.
-  version = "6.1.14";
-  tarballVersion = "${version}a";
+  version = "6.1.16";
 
   iasl' = iasl.overrideAttrs (old: rec {
     inherit (old) pname;
@@ -40,8 +39,8 @@ in stdenv.mkDerivation {
   inherit version;
 
   src = fetchurl {
-    url = "https://download.virtualbox.org/virtualbox/${version}/VirtualBox-${tarballVersion}.tar.bz2";
-    sha256 = "16f3cb83ab3c4dacf2a9d3cc638cbd18db23767828bba6b8ba1c1b57abeb6aef";
+    url = "https://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
+    sha256 = "49c1990da16d8a3d5bda8cdb961ec8195a901e67e4c79aea44c1521a5fc2f9f1";
   };
 
   outputs = [ "out" "modsrc" ];
diff --git a/pkgs/applications/virtualization/virtualbox/extpack.nix b/pkgs/applications/virtualization/virtualbox/extpack.nix
index 03b3be7e96e..302f2b5945a 100644
--- a/pkgs/applications/virtualization/virtualbox/extpack.nix
+++ b/pkgs/applications/virtualization/virtualbox/extpack.nix
@@ -12,7 +12,7 @@ fetchurl rec {
     # Manually sha256sum the extensionPack file, must be hex!
     # Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
     # Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS
-    let value = "b224e796e886b19bce69f0aaedf6ca82bad0ca29c61fb0ed86166efb84356942";
+    let value = "9802482b77b95a954cb5111793da10d009009a4e9a9c4eaa4bd1ae5dafe9db46";
     in assert (builtins.stringLength value) == 64; value;
 
   meta = {
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index 3937d70e869..180970d51da 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "dd9f176abb89043c01cea7ec7e20130e76db71bd83beafeb2dc5858d4c9c86cd";
+    sha256 = "88db771a5efd7c048228e5c1e0b8fba56542e9d8c1b75f7af5b0c4cf334f0584";
   };
 
   KERN_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
diff --git a/pkgs/applications/window-managers/i3/wmfocus.nix b/pkgs/applications/window-managers/i3/wmfocus.nix
index c4e22546d1c..5c9f2b77953 100644
--- a/pkgs/applications/window-managers/i3/wmfocus.nix
+++ b/pkgs/applications/window-managers/i3/wmfocus.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wmfocus";
-  version = "1.1.3";
+  version = "1.1.5";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = pname;
-    rev = version;
-    sha256 = "17qdsqp9072yr7rcm6g1h620rff95ldawr8ldpkbjmkh0rc86skn";
+    rev = "v${version}";
+    sha256 = "09xffklpz62h6yiksxdlv3a9s1z0wr3ax9syl399avwdmq3c0y49";
   };
 
-  cargoSha256 = "1nsdvzrsgprwq7lsvfpymqslhggdzfk3840y8x92qjb0l2g4jhw1";
+  cargoSha256 = "0rczas6sgcppacz48xx7sarkvc4s2sgcdz6c661d7vcry1y46xms";
 
   nativeBuildInputs = [ python3 pkgconfig ];
   buildInputs = [ cairo libxkbcommon xorg.xcbutilkeysyms ];
diff --git a/pkgs/applications/window-managers/leftwm/default.nix b/pkgs/applications/window-managers/leftwm/default.nix
index 06ebd7e0e92..e2b3e4a55a4 100644
--- a/pkgs/applications/window-managers/leftwm/default.nix
+++ b/pkgs/applications/window-managers/leftwm/default.nix
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Leftwm - A tiling window manager for the adventurer";
+    description = "A tiling window manager for the adventurer";
     homepage = "https://github.com/leftwm/leftwm";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/data/fonts/merriweather/default.nix b/pkgs/data/fonts/merriweather/default.nix
index 1768c44bc03..d1b3359df26 100644
--- a/pkgs/data/fonts/merriweather/default.nix
+++ b/pkgs/data/fonts/merriweather/default.nix
@@ -27,7 +27,7 @@ stdenvNoCC.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/SorkinType/Merriweather";
-    description = "Merriweather was designed to be a text face that is pleasant to read on screens";
+    description = "A text face designed to be pleasant to read on screens";
     license = licenses.ofl;
     platforms = platforms.all;
     maintainers = with maintainers; [ emily ];
diff --git a/pkgs/data/themes/matcha/default.nix b/pkgs/data/themes/matcha/default.nix
index bc077669550..7ed6acb2800 100644
--- a/pkgs/data/themes/matcha/default.nix
+++ b/pkgs/data/themes/matcha/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "matcha-gtk-theme";
-  version = "2020-10-05";
+  version = "2020-10-23";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "0pkgpipffwxphn16p6r911mbhqhjyk60svirxzm2phlhxl0ddwpj";
+    sha256 = "125wcvr457lbs8zxp8r18q7gzagp0wbg518iynzmbax8gsjds8w3";
   };
 
   buildInputs = [ gdk-pixbuf librsvg ];
diff --git a/pkgs/desktops/cdesktopenv/default.nix b/pkgs/desktops/cdesktopenv/default.nix
index 60ea33ca6ba..7e6b49957b8 100644
--- a/pkgs/desktops/cdesktopenv/default.nix
+++ b/pkgs/desktops/cdesktopenv/default.nix
@@ -74,5 +74,6 @@ EOF
     license = licenses.lgpl2;
     maintainers = [ maintainers.gnidorah ];
     platforms = [ "i686-linux" "x86_64-linux" ];
+    broken = true; # not compatible with glibc 2.32
   };
 }
diff --git a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
index 418107673a3..4788af89731 100644
--- a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
@@ -28,6 +28,7 @@
 , fontconfig
 , tzdata
 , nss
+, libgudev
 }:
 
 stdenv.mkDerivation rec {
@@ -83,6 +84,7 @@ stdenv.mkDerivation rec {
     xorg.libXfixes
     fontconfig
     nss
+    libgudev
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/cinnamon/cjs/default.nix b/pkgs/desktops/cinnamon/cjs/default.nix
index a810bdcc03e..6471d06cd51 100644
--- a/pkgs/desktops/cinnamon/cjs/default.nix
+++ b/pkgs/desktops/cinnamon/cjs/default.nix
@@ -27,14 +27,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  pname = "cjs";
-  version = "4.6.0-gjs-1.66.0";
+  pname = "cjs-unstable";
+  version = "2020-10-19";
 
   src = fetchFromGitHub {
-    owner = "leigh123linux";
-    repo = pname;
-    rev = "gjs-1.66.0";
-    sha256 = "1pccz7h8mwljziflhn04gmfnbl99pvcj1byz1c6zn947v5gqskj1";
+    owner = "linuxmint";
+    repo = "cjs";
+    rev = "befc11adb5ba10681464e6fa81b1a79f108ce61c";
+    hash = "sha256-F2t8uKV2r29NxX2+3mYp5x1bug2lwihJZTK1dSS8rPg=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/desktops/lxde/core/lxrandr/default.nix b/pkgs/desktops/lxde/core/lxrandr/default.nix
index 9df84b6b1e2..ab109f3c6d4 100644
--- a/pkgs/desktops/lxde/core/lxrandr/default.nix
+++ b/pkgs/desktops/lxde/core/lxrandr/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libX11 (if withGtk3 then gtk3 else gtk2) xrandr ];
 
   meta = with stdenv.lib; {
-    description = "LXRandR is the standard screen manager of LXDE";
+    description = "Standard screen manager of LXDE";
     homepage = "https://lxde.org/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with maintainers; [ rawkode ];
diff --git a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
index 67f4105ff3d..7953105951c 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
@@ -8,15 +8,18 @@
 , plugs
   # Only useful to disable for development testing.
 , useDefaultPlugs ? true
+, testName ? null
 }:
 
 let
   selectedPlugs =
     if plugs == null then switchboardPlugs
     else plugs ++ (lib.optionals useDefaultPlugs switchboardPlugs);
+
+  testingName = lib.optionalString (testName != null) "${testName}-";
 in
 stdenv.mkDerivation rec {
-  name = "${switchboard.name}-with-plugs";
+  name = "${testingName}${switchboard.name}-with-plugs";
 
   src = null;
 
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
index 51c87d5f34b..995577b80d0 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-bluetooth";
-  version = "2.1.5";
+  version = "unstable-2020-10-01";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-txEjChutJCse/WjgQEfo+MSeeGWdpHUABGCsAqK6i3o=";
+    rev = "2b59d646ea0d66ae45dafc851374f24dcd98c064";
+    sha256 = "sha256-selp70P+7RhbdHF6iiNmcNbMf/c+B9zZ6nlxwRSZGn4=";
   };
 
   passthru = {
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix
index 8d258220175..4ee50a07a34 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix
@@ -11,6 +11,6 @@ mkXfceDerivation {
   buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ];
 
   meta = {
-    description = "Battery plugin for Xfce panel";
+    description = "Internet load speed plugin for Xfce4 panel";
   };
 }
diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix
index b7fcbe1c611..0a694e29ee8 100644
--- a/pkgs/development/compilers/dtc/default.nix
+++ b/pkgs/development/compilers/dtc/default.nix
@@ -13,7 +13,6 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ flex bison pkgconfig which ] ++ lib.optionals pythonSupport [ python swig ];
-  buildInputs = lib.optionals pythonSupport [ python ];
 
   postPatch = ''
     patchShebangs pylibfdt/
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
index fad2a646a16..e9b60253cda 100644
--- a/pkgs/development/compilers/flutter/flutter.nix
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -110,8 +110,7 @@ in runCommand drvName {
   allowSubstitutes = false;
   passthru = { unwrapped = flutter; };
   meta = with stdenv.lib; {
-    description =
-      "Flutter is Google's SDK for building mobile, web and desktop with Dart.";
+    description = "Flutter is Google's SDK for building mobile, web and desktop with Dart";
     longDescription = ''
       Flutter is Google’s UI toolkit for building beautiful,
       natively compiled applications for mobile, web, and desktop from a single codebase.
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index 9f50ea9abba..71303305791 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -98,7 +98,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Lazarus graphical IDE for the FreePascal language";
+    description = "Graphical IDE for the FreePascal language";
     homepage = "https://www.lazarus.freepascal.org";
     license = licenses.gpl2Plus ;
     maintainers = with maintainers; [ raskin ];
diff --git a/pkgs/development/compilers/miranda/default.nix b/pkgs/development/compilers/miranda/default.nix
index c3cb854cdf4..55d3976858b 100644
--- a/pkgs/development/compilers/miranda/default.nix
+++ b/pkgs/development/compilers/miranda/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchzip, fetchpatch, gcc }:
+{ stdenv, lib, fetchzip, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "miranda";
diff --git a/pkgs/development/compilers/mlkit/default.nix b/pkgs/development/compilers/mlkit/default.nix
index 6fa58145250..ecb3362e77a 100644
--- a/pkgs/development/compilers/mlkit/default.nix
+++ b/pkgs/development/compilers/mlkit/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mlkit";
-  version = "4.5.0";
+  version = "4.5.1";
 
   src = fetchFromGitHub {
     owner = "melsman";
     repo = "mlkit";
     rev = "v${version}";
-    sha256 = "0fc0y40qphn02857fv2dvhwzzsvgixzchx9i6i0x80xfv7z68fbh";
+    sha256 = "1zigigp168737vjrw5vijgyw4k1bgz4sr7j3rwlibw52snsh4y1c";
   };
 
   nativeBuildInputs = [ autoreconfHook mlton ];
diff --git a/pkgs/development/compilers/stalin/default.nix b/pkgs/development/compilers/stalin/default.nix
index 430bc251b4b..e37b207b4f2 100644
--- a/pkgs/development/compilers/stalin/default.nix
+++ b/pkgs/development/compilers/stalin/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "http://www.ece.purdue.edu/~qobi/software.html";
     license = stdenv.lib.licenses.gpl2Plus;
-    description = "Stalin, an optimizing Scheme compiler";
+    description = "An optimizing Scheme compiler";
 
     maintainers = [ ];
     platforms = ["i686-linux"];  # doesn't want to work on 64-bit platforms
diff --git a/pkgs/development/compilers/zulu/8.nix b/pkgs/development/compilers/zulu/8.nix
index 8df1c05d8b8..bea32475f9a 100644
--- a/pkgs/development/compilers/zulu/8.nix
+++ b/pkgs/development/compilers/zulu/8.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, unzip, makeWrapper, setJavaClassPath
 , zulu, glib, libxml2, libav_0_8, ffmpeg_3, libxslt, libGL, alsaLib
-, fontconfig, freetype, gnome2, cairo, gdk-pixbuf, atk, xorg
+, fontconfig, freetype, pango, gtk2, cairo, gdk-pixbuf, atk, xorg
 , swingSupport ? true }:
 
 let
@@ -16,8 +16,8 @@ let
 
   libraries = [
     stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg_3 libxslt libGL
-    xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango
-    gnome2.gtk cairo gdk-pixbuf atk
+    xorg.libXxf86vm alsaLib fontconfig freetype pango
+    gtk2 cairo gdk-pixbuf atk
   ] ++ (lib.optionals swingSupport (with xorg; [
     xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp
     xorg.libXt xorg.libXrender stdenv.cc.cc
diff --git a/pkgs/development/compilers/zulu/default.nix b/pkgs/development/compilers/zulu/default.nix
index 151a9e5f1d2..73e7bd7d338 100644
--- a/pkgs/development/compilers/zulu/default.nix
+++ b/pkgs/development/compilers/zulu/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, unzip, makeWrapper, setJavaClassPath
 , zulu, glib, libxml2, libav_0_8, ffmpeg_3, libxslt, libGL, alsaLib
-, fontconfig, freetype, gnome2, cairo, gdk-pixbuf, atk, xorg, zlib
+, fontconfig, freetype, pango, gtk2, cairo, gdk-pixbuf, atk, xorg, zlib
 , swingSupport ? true }:
 
 let
@@ -16,8 +16,8 @@ let
 
   libraries = [
     stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg_3 libxslt libGL
-    xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango
-    gnome2.gtk cairo gdk-pixbuf atk zlib
+    xorg.libXxf86vm alsaLib fontconfig freetype pango
+    gtk2 cairo gdk-pixbuf atk zlib
   ] ++ (lib.optionals swingSupport (with xorg; [
     xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp
     xorg.libXt xorg.libXrender stdenv.cc.cc
diff --git a/pkgs/development/go-modules/generic/default.nix b/pkgs/development/go-modules/generic/default.nix
index 9efaa860832..1549c83234a 100644
--- a/pkgs/development/go-modules/generic/default.nix
+++ b/pkgs/development/go-modules/generic/default.nix
@@ -47,10 +47,6 @@ let
 
   removeExpr = refs: ''remove-references-to ${lib.concatMapStrings (ref: " -t ${ref}") refs}'';
 
-  deleteFlag = lib.boolToString deleteVendor;
-
-  vendCommand = if runVend then "${vend}/bin/vend" else "false";
-
   go-modules = if vendorSha256 != null then go.stdenv.mkDerivation (let modArgs = {
 
     name = "${name}-go-modules";
@@ -81,27 +77,26 @@ let
 
     buildPhase = args.modBuildPhase or ''
       runHook preBuild
-
-      if [ ${deleteFlag} == "true" ]; then
-        if [ ! -d vendor ]; then
-          echo "vendor folder does not exist, 'deleteVendor' is not needed"
-          exit 10
-        else
-          rm -rf vendor
-        fi
+    '' + lib.optionalString (deleteVendor == true) ''
+      if [ ! -d vendor ]; then
+        echo "vendor folder does not exist, 'deleteVendor' is not needed"
+        exit 10
+      else
+        rm -rf vendor
       fi
-
+    '' + ''
       if [ -d vendor ]; then
         echo "vendor folder exists, please set 'vendorSha256 = null;' in your expression"
         exit 10
       fi
 
-      if [ ${vendCommand} != "false" ]; then
-        echo running vend to rewrite vendor folder
-        ${vendCommand}
-      else
-        go mod vendor
-      fi
+    ${if runVend then ''
+      echo "running 'vend' to rewrite vendor folder"
+      ${vend}/bin/vend
+    '' else ''
+      go mod vendor
+    ''}
+
       mkdir -p vendor
 
       runHook postBuild
diff --git a/pkgs/development/java-modules/maven-minimal.nix b/pkgs/development/java-modules/maven-minimal.nix
index c1fab1e9bc9..52edcd2104f 100644
--- a/pkgs/development/java-modules/maven-minimal.nix
+++ b/pkgs/development/java-modules/maven-minimal.nix
@@ -83,6 +83,7 @@ in {
       apache_10
       apache_11
       apache_13
+      apache_14
       backportUtilConcurrent_3_1
       commonsParent_22
       doxia_1_0_alpha7
@@ -98,9 +99,11 @@ in {
       mavenParent_21
       mavenParent_22
       mavenParent_23
+      mavenParent_24
       mavenPlugins_22
       mavenPlugins_23
       mavenPlugins_24
+      mavenPlugins_25
       mavenPluginTools_3_1
       mavenReporting_2_0_6
       mavenReporting_2_0_9
@@ -121,7 +124,9 @@ in {
       plexus_3_3_1
       plexusCipher_1_4
       plexusCompiler_2_2
+      plexusCompiler_2_4
       plexusCompilers_2_2
+      plexusCompilers_2_4
       plexusComponents_1_1_7
       plexusComponents_1_1_14
       plexusComponents_1_1_15
diff --git a/pkgs/development/java-modules/maven/compiler-plugin.nix b/pkgs/development/java-modules/maven/compiler-plugin.nix
new file mode 100644
index 00000000000..b35b5660e80
--- /dev/null
+++ b/pkgs/development/java-modules/maven/compiler-plugin.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+{
+  mavenCompiler_3_2 = map (obj: fetchMaven {
+    version = "3.2";
+    artifactId = "maven-compiler-plugin";
+    groupId = "org.apache.maven.plugins";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "15lncacbgsbkp6m4fb1hv41nxn0w8lxgpjcpghw3znbh909d2y5h70q2nw3fyhd7kqsjwpvwpilkgyd5b35vi1smj5hhapmakqjk28r"; }
+    { type = "pom"; sha512 = "0a9pnb9rscsc32gpjr257k1pnydpskcs4jx8bs88vikxbdgc5sppllmqhi7k00i19azy2vjj59b3m9dcklcspmy9caxv2l7vjyr2lm0"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/plexus/compiler-api.nix b/pkgs/development/java-modules/plexus/compiler-api.nix
index a1c6556a769..f778e7cf29a 100644
--- a/pkgs/development/java-modules/plexus/compiler-api.nix
+++ b/pkgs/development/java-modules/plexus/compiler-api.nix
@@ -11,4 +11,15 @@
     { type = "jar"; sha512 = "3by7icjfiymp7g2v1ci5dqwml6ibzh2njyg2w43kvaz3ydcxkzmfg5s97wsdqjsii7vdgqyhr16ydsn6mr90wbjvsi6wasaq1rqa812"; }
     { type = "pom"; sha512 = "0pdl78hp921lgkfya54wl8hxgm1c5474j1p921q5ix1knx1rlr4klpjwx212wy2m7b6bxq0bkf8n66mqjr72rh2rh308qij00ymrga8"; }
   ];
+
+  plexusCompilerApi_2_4 = map (obj: fetchMaven {
+    version = "2.4";
+    artifactId = "plexus-compiler-api";
+    groupId = "org.codehaus.plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1xm0lv43dbg33prr0vc7g3vv0r07qc7kxjjbpqkxyh60vryd9q2wj3r656z4x8fwwqjrpr9xb4lmn4nm0c1cn85xzhfpxiq13rnl8cr"; }
+    { type = "pom"; sha512 = "0mqghnfagrmws585bvdwbpf1c719jvbmhwb318vw661cjfzj1b55nvjxza49bx5y38kwnwk0cqk9f26pv323ng09iifyjxgzafqq479"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/plexus/compiler-javac.nix b/pkgs/development/java-modules/plexus/compiler-javac.nix
index d86240b6d45..0e73caf5872 100644
--- a/pkgs/development/java-modules/plexus/compiler-javac.nix
+++ b/pkgs/development/java-modules/plexus/compiler-javac.nix
@@ -11,4 +11,15 @@
     { type = "jar"; sha512 = "12xsiaqd1q6mmmkcsxf4nr4wdjl8fa1nwz32yqwrrbj9cgakph0368cnk1apjzngsmnl6bws87nlxcz64sg0rb7i2vdzggplj0a41br"; }
     { type = "pom"; sha512 = "1fv2ij4h9xmzv3f5mvs0ilhkw7khkw5v8n1d97a2canfn254fipz7pd9nkmkqzjvy3cqwiczyh2nzibvcii624p8ggwl4s3yjw92jx4"; }
   ];
+
+  plexusCompilerJavac_2_4 = map (obj: fetchMaven {
+    version = "2.4";
+    artifactId = "plexus-compiler-javac";
+    groupId = "org.codehaus.plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "272iaf7mgmhjssj0k4a9r8rzb3c8pskb4aqypcdvj217l8hbih6rsqhh9nd2xmwrwa1ifvc336b8ihz6f419lj74gp4p1za6mp0nps3"; }
+    { type = "pom"; sha512 = "1g16i5w610nsh9h0yyhw25fpr2lx562c4v8y17lw53imi4rhm0m709ysrbrh71rhv6f8g4i5d6wgps77jmdb5kn2h5k1n4n644wrd12"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/plexus/compiler-manager.nix b/pkgs/development/java-modules/plexus/compiler-manager.nix
index 3f27981b154..c639780ca0b 100644
--- a/pkgs/development/java-modules/plexus/compiler-manager.nix
+++ b/pkgs/development/java-modules/plexus/compiler-manager.nix
@@ -11,4 +11,15 @@
     { type = "jar"; sha512 = "1r1sdj784x4zcnkaz840vsz36jn1p2j98c21nia56kcdl1njydjn714bsmdy816l6sdinkz4s196mm3hshmxhq8mkmf16wgxx8jnq94"; }
     { type = "pom"; sha512 = "3cpfnbgil6g0bgq0cjbq2ysfjdpl05fh72d9l9cnwbilcsaxcmzn1hgmmkvam2ih222nl82dy7n5020is3y05kiv0i4n4lcs5m0ia48"; }
   ];
+
+  plexusCompilerManager_2_4 = map (obj: fetchMaven {
+    version = "2.4";
+    artifactId = "plexus-compiler-manager";
+    groupId = "org.codehaus.plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "2al10188nwrdmi9zk3bid4ijjfsa8ymh6m9hin5jsja7hx7anbvs3i2y7kall56h4qn7j1rj73f8499x3i2k6x53kszmksvd2a1pkd4"; }
+    { type = "pom"; sha512 = "2bb2yrvjxci7wx7ira5cnnzdmlzdx4fk59fddpnmvdgh06dmg7fbnjlyx73pn6b13ajjrjl7rgj26mqs2hid3c0p3ni6x1qsg9w3ip0"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/poms.nix b/pkgs/development/java-modules/poms.nix
index d93edb7aa4f..4e314605b79 100644
--- a/pkgs/development/java-modules/poms.nix
+++ b/pkgs/development/java-modules/poms.nix
@@ -105,6 +105,14 @@
     type = "pom";
   };
 
+  apache_14 = fetchMaven {
+    version = "14";
+    artifactId = "apache";
+    groupId = "org.apache";
+    sha512 = "08y5k9lny2z171c78l4j70miylj2xy8w48amqwcghy3p9pc1p19qx6146s4mxc2z4wx4z9gpi9agham46m5hqa6k6v2s16v80phi7xi";
+    type = "pom";
+  };
+
   asmParent_4_0 = fetchMaven {
     version = "4.0";
     artifactId = "asm-parent";
@@ -345,6 +353,14 @@
     type = "pom";
   };
 
+  mavenParent_24 = fetchMaven {
+    version = "24";
+    artifactId = "maven-parent";
+    groupId = "org.apache.maven";
+    sha512 = "0w1v36qx53xv5m8kag6wakzy7rjrp4gzfp7zfmrp5kw13ik6k42fnfkknslqc2g2c5dyxra2vpbvz1z9bcqslyaljd4r1rj3qbh5vl7";
+    type = "pom";
+  };
+
   mavenPlugins_22 = fetchMaven {
     version = "22";
     artifactId = "maven-plugins";
@@ -369,6 +385,14 @@
     type = "pom";
   };
 
+  mavenPlugins_25 = fetchMaven {
+    version = "25";
+    artifactId = "maven-plugins";
+    groupId = "org.apache.maven.plugins";
+    sha512 = "38zx1im9qnblr5p9r4ln91d2280x48n9a11j4476skrgh97l3iqxs5ggqc22wis7r53g4j8ya4dvzqhxx6gymfbz3cn6a6hcmdqbng5";
+    type = "pom";
+  };
+
   mavenPluginTools_3_1 = fetchMaven {
     version = "3.1";
     artifactId = "maven-plugin-tools";
@@ -593,6 +617,14 @@
     type = "pom";
   };
 
+  plexusCompiler_2_4 = fetchMaven {
+    version = "2.4";
+    artifactId = "plexus-compiler";
+    groupId = "org.codehaus.plexus";
+    sha512 = "0v89a5kbgyphmvgmdf6kb7zi4fvq16l435cxsp7grc5jy4ir9d0dv5g7xwhsk9ajp1lcy9kp4l4bk2h93g4kvj3bhk548wv284y36bf";
+    type = "pom";
+  };
+
   plexusCompilers_2_2 = fetchMaven {
     version = "2.2";
     artifactId = "plexus-compilers";
@@ -601,6 +633,14 @@
     type = "pom";
   };
 
+  plexusCompilers_2_4 = fetchMaven {
+    version = "2.4";
+    artifactId = "plexus-compilers";
+    groupId = "org.codehaus.plexus";
+    sha512 = "1zalxaqycaykdn6q6pnxki6yvlpaf5qap1903hcylhbi1gcwmpqys39xg4pah9giy9iis350w2dmsab2prib9lihz4s9z6s6adqcss2";
+    type = "pom";
+  };
+
   plexusComponents_1_1_4 = fetchMaven {
     version = "1.1.4";
     artifactId = "plexus-components";
diff --git a/pkgs/development/libraries/belr/default.nix b/pkgs/development/libraries/belr/default.nix
index 90067e493a1..546949d9f21 100644
--- a/pkgs/development/libraries/belr/default.nix
+++ b/pkgs/development/libraries/belr/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DENABLE_STATIC=NO" ];
 
   meta = with stdenv.lib; {
-    description = "Belr is Belledonne Communications' language recognition library";
+    description = "Belledonne Communications' language recognition library";
     homepage = "https://gitlab.linphone.org/BC/public/belr";
     license = licenses.gpl3;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/boxfort/default.nix b/pkgs/development/libraries/boxfort/default.nix
index fb6e735c46e..9a4e2c23356 100644
--- a/pkgs/development/libraries/boxfort/default.nix
+++ b/pkgs/development/libraries/boxfort/default.nix
@@ -1,36 +1,25 @@
-{ stdenv, fetchFromGitHub, cmake, pkg-config, gettext, libcsptr, dyncall
-, nanomsg, python37Packages }:
+{ stdenv, fetchFromGitHub, meson, ninja, python37Packages }:
 
 stdenv.mkDerivation rec {
-  version = "unstable-2019-09-19";
+  version = "unstable-2019-10-09";
   pname = "boxfort";
 
   src = fetchFromGitHub {
     owner = "Snaipe";
     repo = "BoxFort";
-    rev = "926bd4ce968592dbbba97ec1bb9aeca3edf29b0d";
-    sha256 = "0mzy4f8qij6ckn5578y3l4rni2470pdkjy5xww7ak99l1kh3p3v6";
+    rev = "356f047db08b7344ea7980576b705e65b9fc8772";
+    sha256 = "1p0llz7n0p5gzpvqszmra9p88vnr0j88sp5ixhgbfz89bswg62ss";
   };
 
-  enableParallelBuilding = true;
+  nativeBuildInputs = [ meson ninja ];
 
-  nativeBuildInputs = [ cmake pkg-config ];
-
-  buildInputs = [
-    dyncall
-    gettext
-    libcsptr
-    nanomsg
-  ];
+  preConfigure = ''
+    patchShebangs ci/isdir.py
+  '';
 
   checkInputs = with python37Packages; [ cram ];
 
-  cmakeFlags = [ "-DBXF_FORK_RESILIENCE=OFF" ];
-
   doCheck = true;
-  preCheck = ''
-    export LD_LIBRARY_PATH=`pwd`''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH
-  '';
 
   outputs = [ "dev" "out" ];
 
@@ -38,10 +27,7 @@ stdenv.mkDerivation rec {
     description = "Convenient & cross-platform sandboxing C library";
     homepage = "https://github.com/Snaipe/BoxFort";
     license = licenses.mit;
-    maintainers = with maintainers; [
-      thesola10
-      Yumasi
-    ];
+    maintainers = with maintainers; [ thesola10 Yumasi ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix
index d54539d9f25..4fe53a5d629 100644
--- a/pkgs/development/libraries/bzrtp/default.nix
+++ b/pkgs/development/libraries/bzrtp/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-Wno-error=cast-function-type";
 
   meta = with stdenv.lib; {
-    description = "BZRTP is an opensource implementation of ZRTP keys exchange protocol";
+    description = "An opensource implementation of ZRTP keys exchange protocol";
     homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
     # They have switched to GPLv3 on git HEAD so probably the next release will
     # be GPL3.
diff --git a/pkgs/development/libraries/duckdb/default.nix b/pkgs/development/libraries/duckdb/default.nix
index dde0806add4..9b1adb7e235 100644
--- a/pkgs/development/libraries/duckdb/default.nix
+++ b/pkgs/development/libraries/duckdb/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/cwida/duckdb";
-    description = "DuckDB is an embeddable SQL OLAP Database Management System";
+    description = "Embeddable SQL OLAP Database Management System";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ costrouc ];
diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix
index 6a55359e168..70b3d7e767c 100644
--- a/pkgs/development/libraries/igraph/default.nix
+++ b/pkgs/development/libraries/igraph/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "igraph";
-  version = "0.8.2";
+  version = "0.8.3";
 
   src = fetchFromGitHub {
     owner = "igraph";
     repo = pname;
     rev = version;
-    sha256 = "015yh9s19lmxm7l1ld8adlsqh1lrmzicl801saixdwl9w05hfva4";
+    sha256 = "05k5ws1qgbfkxf6y923r61m42gy45l9awqqbfjqgrb3ricfr4wha";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/pkgs/development/libraries/liberfa/default.nix b/pkgs/development/libraries/liberfa/default.nix
index 097b0b85e3e..a1ca15536da 100644
--- a/pkgs/development/libraries/liberfa/default.nix
+++ b/pkgs/development/libraries/liberfa/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "erfa";
-  version = "1.7.0";
+  version = "1.7.1";
 
   buildInputs = [ autoreconfHook ];
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     owner = "liberfa";
     repo = "erfa";
     rev = "v${version}";
-    sha256 = "1z4k2phrw6wwi0kax6ac80jk9c036gi7pmhmg6gaf3lk81k6xz2r";
+    sha256 = "0j7v9y7jsw9vjmhdpksq44ah2af10b9gl1vfm8riw178lvf246wg";
   };
 
   configureFlags = [ "--enable-shared" ];
diff --git a/pkgs/development/libraries/libfishsound/default.nix b/pkgs/development/libraries/libfishsound/default.nix
index 3843f4a97ce..23d828033e3 100644
--- a/pkgs/development/libraries/libfishsound/default.nix
+++ b/pkgs/development/libraries/libfishsound/default.nix
@@ -14,7 +14,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://xiph.org/fishsound/";
-    description = ''libfishsound by itself is designed to handle raw codec streams from a lower level layer such as UDP datagrams. When these codecs are used in files, they are commonly encapsulated in Ogg to produce Ogg FLAC, Speex and Ogg Vorbis files.
+    description = "A simple programming interface for decoding and encoding audio data using Xiph.org codecs (FLAC, Speex and Vorbis)";
+    longDescription = ''libfishsound by itself is designed to handle raw codec streams from a lower level layer such as UDP datagrams. When these codecs are used in files, they are commonly encapsulated in Ogg to produce Ogg FLAC, Speex and Ogg Vorbis files.
 
 libfishsound is a wrapper around the existing codec libraries and provides a consistent, higher-level programming interface. It has been designed for use in a wide variety of applications; it has no direct dependencies on Ogg encapsulation, though it is most commonly used in conjunction with liboggz to decode or encode FLAC, Speex or Vorbis audio tracks in Ogg files, including Ogg Theora and Annodex.
 
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index e6650db85cc..31d64101e6b 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "20.08";
+  version = "20.09";
   pname = "libmediainfo";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    sha256 = "19n8h9jq42b6r3dbag77fzwfksfywszmzpi636w87fvc1nqldlqj";
+    sha256 = "15ni9pnch6688m72swwax109a7mg4a08yx75qknrx7qa6dbyhz6h";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/development/libraries/libstroke/default.nix b/pkgs/development/libraries/libstroke/default.nix
index 534ad7afc71..e97b96d71d0 100644
--- a/pkgs/development/libraries/libstroke/default.nix
+++ b/pkgs/development/libraries/libstroke/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
     '';
 
   meta = {
-    description = "Libstroke, a library for simple gesture recognition";
+    description = "A library for simple gesture recognition";
     homepage = "https://web.archive.org/web/20161204100704/http://etla.net/libstroke/";
     license = stdenv.lib.licenses.gpl2;
 
diff --git a/pkgs/development/libraries/libthreadar/default.nix b/pkgs/development/libraries/libthreadar/default.nix
index ed19fab6d99..96c0418f74c 100644
--- a/pkgs/development/libraries/libthreadar/default.nix
+++ b/pkgs/development/libraries/libthreadar/default.nix
@@ -24,7 +24,8 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://libthreadar.sourceforge.net/";
-    description = ''
+    description = "A C++ library that provides several classes to manipulate threads";
+    longDescription = ''
       Libthreadar is a C++ library providing a small set of C++ classes to manipulate
       threads in a very simple and efficient way from your C++ code.
     '';
diff --git a/pkgs/development/libraries/liburing/default.nix b/pkgs/development/libraries/liburing/default.nix
index 1839c0ec187..938846ace54 100644
--- a/pkgs/development/libraries/liburing/default.nix
+++ b/pkgs/development/libraries/liburing/default.nix
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
     )
   '';
 
+  # Doesn't recognize platform flags
+  configurePlatforms = [];
+
   outputs = [ "out" "bin" "dev" "man" ];
 
   postInstall =
diff --git a/pkgs/development/libraries/libxls/default.nix b/pkgs/development/libraries/libxls/default.nix
index 192e732b5c0..00300899589 100644
--- a/pkgs/development/libraries/libxls/default.nix
+++ b/pkgs/development/libraries/libxls/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libxls";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://github.com/libxls/libxls/releases/download/v${version}/libxls-${version}.tar.gz";
-    sha256 = "1m3acryv0l4zkj0w3h8vf23rfklschqcbaf484qms2lrx8gakvws";
+    sha256 = "1y7wk55blk16hmvf9dz5ci84hlhv6pw6mnr1mfnibfw3gsxmzhyv";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/libraries/martyr/default.nix b/pkgs/development/libraries/martyr/default.nix
index 4254bfe82ea..51fd6962e70 100644
--- a/pkgs/development/libraries/martyr/default.nix
+++ b/pkgs/development/libraries/martyr/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Martyr is a Java framework around the IRC protocol to allow application writers easy manipulation of the protocol and client state";
+    description = "Java framework around the IRC protocol to allow application writers easy manipulation of the protocol and client state";
     homepage = "http://martyr.sourceforge.net/";
     license = stdenv.lib.licenses.lgpl21;
   };
diff --git a/pkgs/development/libraries/matio/default.nix b/pkgs/development/libraries/matio/default.nix
index e12280a088b..7bcef2b6553 100644
--- a/pkgs/development/libraries/matio/default.nix
+++ b/pkgs/development/libraries/matio/default.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "matio-1.5.17";
+  name = "matio-1.5.18";
   src = fetchurl {
     url = "mirror://sourceforge/matio/${name}.tar.gz";
-    sha256 = "00644612zhn53j25vj50q73kmjcrsns2lnmy99y2kavhsckmaiay";
+    sha256 = "09gy507zm1gxxyxf5qapzgars51pm16wis7lqqf84kc57ak73baz";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/newt/default.nix b/pkgs/development/libraries/newt/default.nix
index 0dade017d08..41d9671b204 100644
--- a/pkgs/development/libraries/newt/default.nix
+++ b/pkgs/development/libraries/newt/default.nix
@@ -1,5 +1,8 @@
-{ fetchurl, stdenv, slang, popt }:
+{ lib, fetchurl, stdenv, slang, popt, python }:
 
+let
+  pythonIncludePath = "${lib.getDev python}/include/python";
+in
 stdenv.mkDerivation rec {
   pname = "newt";
   version = "0.52.21";
@@ -11,9 +14,14 @@ stdenv.mkDerivation rec {
 
   patchPhase = ''
     sed -i -e s,/usr/bin/install,install, -e s,-I/usr/include/slang,, Makefile.in po/Makefile
+
+    substituteInPlace configure \
+      --replace "/usr/include/python" "${pythonIncludePath}"
+    substituteInPlace configure.ac \
+      --replace "/usr/include/python" "${pythonIncludePath}"
   '';
 
-  buildInputs = [ slang popt ];
+  buildInputs = [ slang popt python ];
 
   NIX_LDFLAGS = "-lncurses";
 
diff --git a/pkgs/development/libraries/noise-suppression-for-voice/default.nix b/pkgs/development/libraries/noise-suppression-for-voice/default.nix
new file mode 100644
index 00000000000..27b77a3bd32
--- /dev/null
+++ b/pkgs/development/libraries/noise-suppression-for-voice/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "noise-suppression-for-voice-unstable";
+  version = "2020-10-10";
+
+  src = fetchFromGitHub {
+    owner = "werman";
+    repo = "noise-suppression-for-voice";
+    rev = "15bac8f34018184d7d4de1b3b2ba98c433705f6c";
+    sha256 = "11pwisbcks7g0mdgcrrv49v3ci1l6m26bbb7f67xz4pr1hai5dwc";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "A real-time noise suppression plugin for voice";
+    longDescription = ''
+The plugin is meant to suppress a wide range of noise origins (from original paper): computer fans, office, crowd, airplane, car, train, construction.
+    '';
+    homepage = "https://github.com/werman/noise-suppression-for-voice";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.henrikolsson ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/oneDNN/default.nix b/pkgs/development/libraries/oneDNN/default.nix
index ad311daf1db..b780b9f4e39 100644
--- a/pkgs/development/libraries/oneDNN/default.nix
+++ b/pkgs/development/libraries/oneDNN/default.nix
@@ -5,13 +5,13 @@
 # https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn
 stdenv.mkDerivation rec {
   pname = "oneDNN";
-  version = "1.6.3";
+  version = "1.6.4";
 
   src = fetchFromGitHub {
     owner = "oneapi-src";
     repo = "oneDNN";
     rev = "v${version}";
-    sha256 = "1cskqpa14jjgw409wbxw03kpm9a1g6lmmc2fs2916if6xd70xdj3";
+    sha256 = "0y4lpx24k08wydv4aprfn2icg6ixk0iprk8pmbvyaa6gyab70vjy";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/pkgs/development/libraries/physics/qcdnum/default.nix b/pkgs/development/libraries/physics/qcdnum/default.nix
index c1252622393..1c17b318c9d 100644
--- a/pkgs/development/libraries/physics/qcdnum/default.nix
+++ b/pkgs/development/libraries/physics/qcdnum/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    description = "QCDNUM is a very fast QCD evolution program written in FORTRAN77";
+    description = "A very fast QCD evolution program written in FORTRAN77";
     license     = stdenv.lib.licenses.gpl3;
     homepage    = "https://www.nikhef.nl/~h24/qcdnum/index.html";
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/libraries/pupnp/default.nix b/pkgs/development/libraries/pupnp/default.nix
index 192ed56d456..4930b222d03 100644
--- a/pkgs/development/libraries/pupnp/default.nix
+++ b/pkgs/development/libraries/pupnp/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "fortify" ];
 
   meta = {
-    description = "libupnp, an open source UPnP development kit for Linux";
+    description = "An open source UPnP development kit for Linux";
 
     longDescription = ''
       The Linux SDK for UPnP Devices (libupnp) provides developers
diff --git a/pkgs/development/libraries/redkite/default.nix b/pkgs/development/libraries/redkite/default.nix
index b5202658352..af8a1a914e4 100644
--- a/pkgs/development/libraries/redkite/default.nix
+++ b/pkgs/development/libraries/redkite/default.nix
@@ -2,24 +2,24 @@
 
 stdenv.mkDerivation rec {
   pname = "redkite";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitLab {
     owner = "iurie-sw";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0bim1ifyslwvaf885klmf9hpszqq5k9bm2y4l7gcgl6cljfzi04y";
+    sha256 = "0c5k0a6ydb8szdgniqsva8l9j2sishlhsww13b3a9grvr7hb2bpq";
   };
 
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ cairo ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "https://gitlab.com/iurie-sw/redkite";
     description = "A small GUI toolkit";
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.magnetophon ];
   };
 }
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index 5f023da49f3..0cb36fd0260 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -15,28 +15,20 @@
 
 stdenv.mkDerivation rec {
   pname = "rocksdb";
-  version = "6.10.2";
+  version = "6.12.7";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1f2wqb6px812ijcivq3rsknqgkv01wblc6sd8wavhrw8qljgr3s1";
+    sha256 = "0cpi0v691xsh20hj5x2y2z7dmjvhd3brr0swszv0xqjg2q0f7zdb";
   };
 
   nativeBuildInputs = [ cmake ninja ];
 
-  buildInputs = [ bzip2 lz4 snappy zlib zstd ] ++ stdenv.lib.optional enableJemalloc jemalloc;
+  propagatedBuildInputs = [ bzip2 lz4 snappy zlib zstd ];
 
-  patches = [
-    # Without this change private dependencies are exported.
-    # Can be removed after the next release.
-    # https://github.com/facebook/rocksdb/pull/6790
-    (fetchpatch {
-      url = "https://github.com/facebook/rocksdb/commit/07204837ce8d66e1e6e4893178f3fd040f9c1044.patch";
-      sha256 = "17097ybkhy0i089zzkpvcj65c7g5skvjvdzi1k09x4i1d719wm39";
-    })
-  ];
+  buildInputs = stdenv.lib.optional enableJemalloc jemalloc;
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isGNU "-Wno-error=deprecated-copy -Wno-error=pessimizing-move";
 
diff --git a/pkgs/development/libraries/science/math/openlibm/default.nix b/pkgs/development/libraries/science/math/openlibm/default.nix
index 560f39e4e99..3553833443f 100644
--- a/pkgs/development/libraries/science/math/openlibm/default.nix
+++ b/pkgs/development/libraries/science/math/openlibm/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "openlibm";
-  version = "0.7.1";
+  version = "0.7.2";
   src = fetchurl {
     url = "https://github.com/JuliaLang/openlibm/archive/v${version}.tar.gz";
-    sha256 = "0yg8sfibr38hpb4s5ri7i0ivp96c7khdwhlxngjiymvl3jvm5cnl";
+    sha256 = "09fl7ij0p0js2sydjvmm9k4d0c83iwpb2sad9d9hin8sjdfyp4vp";
   };
 
   makeFlags = [ "prefix=$(out)" ];
diff --git a/pkgs/development/libraries/science/math/parmetis/default.nix b/pkgs/development/libraries/science/math/parmetis/default.nix
index 97023d07c7f..8f24356c733 100644
--- a/pkgs/development/libraries/science/math/parmetis/default.nix
+++ b/pkgs/development/libraries/science/math/parmetis/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices";
+    description = "An MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices";
     homepage = "http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview";
     platforms = platforms.all;
     license = licenses.unfree;
diff --git a/pkgs/development/libraries/sope/default.nix b/pkgs/development/libraries/sope/default.nix
index 59205a949e4..b24b0b9bcd4 100644
--- a/pkgs/development/libraries/sope/default.nix
+++ b/pkgs/development/libraries/sope/default.nix
@@ -41,7 +41,7 @@ gnustep.stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "SOPE is an extensive set of frameworks which form a complete Web application server environment";
+    description = "An extensive set of frameworks which form a complete Web application server environment";
     license = licenses.publicDomain;
     homepage = "https://github.com/inverse-inc/sope";
     platforms = platforms.linux;
diff --git a/pkgs/development/libraries/symengine/default.nix b/pkgs/development/libraries/symengine/default.nix
index 524958e51a2..6ab463bea1d 100644
--- a/pkgs/development/libraries/symengine/default.nix
+++ b/pkgs/development/libraries/symengine/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "SymEngine is a fast symbolic manipulation library";
+    description = "A fast symbolic manipulation library";
     homepage = "https://github.com/symengine/symengine";
     platforms = platforms.unix ++ platforms.windows;
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/x265/default.nix b/pkgs/development/libraries/x265/default.nix
index ad43ac96d7d..9d501f47c3b 100644
--- a/pkgs/development/libraries/x265/default.nix
+++ b/pkgs/development/libraries/x265/default.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
     "-DENABLE_SHARED=ON"
     "-DHIGH_BIT_DEPTH=OFF"
     "-DENABLE_HDR10_PLUS=OFF"
-  ] ++ stdenv.lib.optionals is64bit [
+  ] ++ stdenv.lib.optionals (is64bit && !(stdenv.isAarch64 && stdenv.isLinux)) [
     "-DEXTRA_LIB=${libx265-10}/lib/libx265.a;${libx265-12}/lib/libx265.a"
     "-DLINKED_10BIT=ON"
     "-DLINKED_12BIT=ON"
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/access.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/access.nix
new file mode 100644
index 00000000000..deb0c7f89cb
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/access.nix
@@ -0,0 +1,39 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''access'';
+  version = ''20151218-git'';
+
+  parasites = [ "access-test" ];
+
+  description = ''A library providing functions that unify data-structure access for Common Lisp:
+      access and (setf access)'';
+
+  deps = [ args."alexandria" args."anaphora" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/access/2015-12-18/access-20151218-git.tgz'';
+    sha256 = ''0f4257cxd1rpp46wm2qbnk0ynlc3dli9ib4qbn45hglh8zy7snfl'';
+  };
+
+  packageName = "access";
+
+  asdFilesToKeep = ["access.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM access DESCRIPTION
+    A library providing functions that unify data-structure access for Common Lisp:
+      access and (setf access)
+    SHA256 0f4257cxd1rpp46wm2qbnk0ynlc3dli9ib4qbn45hglh8zy7snfl URL
+    http://beta.quicklisp.org/archive/access/2015-12-18/access-20151218-git.tgz
+    MD5 a6f1eb4a1823b04c6db4fa2dc16d648f NAME access FILENAME access DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME cl-unicode FILENAME cl-unicode)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME flexi-streams FILENAME flexi-streams)
+     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
+     (NAME named-readtables FILENAME named-readtables))
+    DEPENDENCIES
+    (alexandria anaphora cl-interpol cl-ppcre cl-unicode closer-mop
+     flexi-streams iterate lisp-unit2 named-readtables)
+    VERSION 20151218-git SIBLINGS NIL PARASITES (access-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/arnesi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/arnesi.nix
new file mode 100644
index 00000000000..97ae196c0f5
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/arnesi.nix
@@ -0,0 +1,34 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''arnesi'';
+  version = ''20170403-git'';
+
+  parasites = [ "arnesi/cl-ppcre-extras" "arnesi/slime-extras" ];
+
+  description = ''A bag-of-tools utilities library used to aid in implementing the bese.it toolkit'';
+
+  deps = [ args."alexandria" args."cl-ppcre" args."closer-mop" args."collectors" args."iterate" args."swank" args."symbol-munger" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz'';
+    sha256 = ''01kirjpgv5pgbcdxjrnw3ld4jw7wrqm3rgqnxwac4gxaphr2s6q4'';
+  };
+
+  packageName = "arnesi";
+
+  asdFilesToKeep = ["arnesi.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM arnesi DESCRIPTION
+    A bag-of-tools utilities library used to aid in implementing the bese.it toolkit
+    SHA256 01kirjpgv5pgbcdxjrnw3ld4jw7wrqm3rgqnxwac4gxaphr2s6q4 URL
+    http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz
+    MD5 bbb34e1a646b2cc489766690c741d964 NAME arnesi FILENAME arnesi DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors) (NAME iterate FILENAME iterate)
+     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger))
+    DEPENDENCIES
+    (alexandria cl-ppcre closer-mop collectors iterate swank symbol-munger)
+    VERSION 20170403-git SIBLINGS NIL PARASITES
+    (arnesi/cl-ppcre-extras arnesi/slime-extras)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dot.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dot.nix
new file mode 100644
index 00000000000..53cf2214ed2
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dot.nix
@@ -0,0 +1,25 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''cl-dot'';
+  version = ''20200925-git'';
+
+  description = ''Generate Dot Output from Arbitrary Lisp Data'';
+
+  deps = [ args."uiop" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-dot/2020-09-25/cl-dot-20200925-git.tgz'';
+    sha256 = ''01vx4yzasmgswrlyagjr2cz76g906jsijdwikdf8wvxyyq77gkla'';
+  };
+
+  packageName = "cl-dot";
+
+  asdFilesToKeep = ["cl-dot.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-dot DESCRIPTION Generate Dot Output from Arbitrary Lisp Data
+    SHA256 01vx4yzasmgswrlyagjr2cz76g906jsijdwikdf8wvxyyq77gkla URL
+    http://beta.quicklisp.org/archive/cl-dot/2020-09-25/cl-dot-20200925-git.tgz
+    MD5 35c68f431f188d4c1c7604b4b1af220f NAME cl-dot FILENAME cl-dot DEPS
+    ((NAME uiop FILENAME uiop)) DEPENDENCIES (uiop) VERSION 20200925-git
+    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-locale.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-locale.nix
new file mode 100644
index 00000000000..f0d727a633f
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-locale.nix
@@ -0,0 +1,37 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''cl-locale'';
+  version = ''20151031-git'';
+
+  description = ''Simple i18n library for Common Lisp'';
+
+  deps = [ args."alexandria" args."anaphora" args."arnesi" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."collectors" args."iterate" args."named-readtables" args."symbol-munger" args."trivial-types" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz'';
+    sha256 = ''14j4xazrx2v5cj4q4irfwra0ksvl2l0s7073fimpwc0xqjfsnjpg'';
+  };
+
+  packageName = "cl-locale";
+
+  asdFilesToKeep = ["cl-locale.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-locale DESCRIPTION Simple i18n library for Common Lisp SHA256
+    14j4xazrx2v5cj4q4irfwra0ksvl2l0s7073fimpwc0xqjfsnjpg URL
+    http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz
+    MD5 7a8fb3678938af6dc5c9fd6431428aff NAME cl-locale FILENAME cl-locale DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME arnesi FILENAME arnesi) (NAME cl-annot FILENAME cl-annot)
+     (NAME cl-syntax FILENAME cl-syntax)
+     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors) (NAME iterate FILENAME iterate)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME symbol-munger FILENAME symbol-munger)
+     (NAME trivial-types FILENAME trivial-types))
+    DEPENDENCIES
+    (alexandria anaphora arnesi cl-annot cl-syntax cl-syntax-annot closer-mop
+     collectors iterate named-readtables symbol-munger trivial-types)
+    VERSION 20151031-git SIBLINGS (cl-locale-syntax cl-locale-test) PARASITES
+    NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-qprint.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-qprint.nix
new file mode 100644
index 00000000000..1ccf6af5cba
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-qprint.nix
@@ -0,0 +1,28 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''cl-qprint'';
+  version = ''20150804-git'';
+
+  description = ''Encode and decode quoted-printable encoded strings.'';
+
+  deps = [ args."flexi-streams" args."trivial-gray-streams" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-qprint/2015-08-04/cl-qprint-20150804-git.tgz'';
+    sha256 = ''042nq9airkc4yaqzpmly5iszmkbwfn38wsgi9k361ldf1y54lq28'';
+  };
+
+  packageName = "cl-qprint";
+
+  asdFilesToKeep = ["cl-qprint.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-qprint DESCRIPTION
+    Encode and decode quoted-printable encoded strings. SHA256
+    042nq9airkc4yaqzpmly5iszmkbwfn38wsgi9k361ldf1y54lq28 URL
+    http://beta.quicklisp.org/archive/cl-qprint/2015-08-04/cl-qprint-20150804-git.tgz
+    MD5 74376a69e0b078724c94cc268f69e0f7 NAME cl-qprint FILENAME cl-qprint DEPS
+    ((NAME flexi-streams FILENAME flexi-streams)
+     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
+    DEPENDENCIES (flexi-streams trivial-gray-streams) VERSION 20150804-git
+    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-slice.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-slice.nix
new file mode 100644
index 00000000000..2c4fd03f94d
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-slice.nix
@@ -0,0 +1,29 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''cl-slice'';
+  version = ''20171130-git'';
+
+  parasites = [ "cl-slice-tests" ];
+
+  description = ''DSL for array slices in Common Lisp.'';
+
+  deps = [ args."alexandria" args."anaphora" args."clunit" args."let-plus" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-slice/2017-11-30/cl-slice-20171130-git.tgz'';
+    sha256 = ''0nay95qsnck40kdxjgjdii5rcgrdhf880pg9ajmbxilgw84xb2zn'';
+  };
+
+  packageName = "cl-slice";
+
+  asdFilesToKeep = ["cl-slice.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-slice DESCRIPTION DSL for array slices in Common Lisp. SHA256
+    0nay95qsnck40kdxjgjdii5rcgrdhf880pg9ajmbxilgw84xb2zn URL
+    http://beta.quicklisp.org/archive/cl-slice/2017-11-30/cl-slice-20171130-git.tgz
+    MD5 b83a7a9aa503dc01cba43cf1e494e67d NAME cl-slice FILENAME cl-slice DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME clunit FILENAME clunit) (NAME let-plus FILENAME let-plus))
+    DEPENDENCIES (alexandria anaphora clunit let-plus) VERSION 20171130-git
+    SIBLINGS NIL PARASITES (cl-slice-tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clunit.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clunit.nix
new file mode 100644
index 00000000000..7ab00c03446
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clunit.nix
@@ -0,0 +1,24 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''clunit'';
+  version = ''20171019-git'';
+
+  description = ''CLUnit is a Common Lisp unit testing framework.'';
+
+  deps = [ ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/clunit/2017-10-19/clunit-20171019-git.tgz'';
+    sha256 = ''1rapyh0fbjnksj8j3y6imzya1kw80882w18j0fv9iq1hlp718zs5'';
+  };
+
+  packageName = "clunit";
+
+  asdFilesToKeep = ["clunit.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM clunit DESCRIPTION CLUnit is a Common Lisp unit testing framework.
+    SHA256 1rapyh0fbjnksj8j3y6imzya1kw80882w18j0fv9iq1hlp718zs5 URL
+    http://beta.quicklisp.org/archive/clunit/2017-10-19/clunit-20171019-git.tgz
+    MD5 389017f2f05a6287078ddacd0471817e NAME clunit FILENAME clunit DEPS NIL
+    DEPENDENCIES NIL VERSION 20171019-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/djula.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/djula.nix
new file mode 100644
index 00000000000..1b919e63a5f
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/djula.nix
@@ -0,0 +1,53 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''djula'';
+  version = ''20201016-git'';
+
+  description = ''An implementation of Django templates for Common Lisp.'';
+
+  deps = [ args."access" args."alexandria" args."anaphora" args."arnesi" args."babel" args."cl-annot" args."cl-interpol" args."cl-locale" args."cl-ppcre" args."cl-slice" args."cl-syntax" args."cl-syntax-annot" args."cl-unicode" args."closer-mop" args."collectors" args."flexi-streams" args."gettext" args."iterate" args."let-plus" args."local-time" args."named-readtables" args."parser-combinators" args."split-sequence" args."symbol-munger" args."trivial-backtrace" args."trivial-features" args."trivial-gray-streams" args."trivial-types" args."yacc" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/djula/2020-10-16/djula-20201016-git.tgz'';
+    sha256 = ''09j9wmvs3vgx291p11dclrpwx0dqknazzadikg2320nv7a29zgiy'';
+  };
+
+  packageName = "djula";
+
+  asdFilesToKeep = ["djula.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM djula DESCRIPTION
+    An implementation of Django templates for Common Lisp. SHA256
+    09j9wmvs3vgx291p11dclrpwx0dqknazzadikg2320nv7a29zgiy URL
+    http://beta.quicklisp.org/archive/djula/2020-10-16/djula-20201016-git.tgz
+    MD5 524843c7ff05d01dcb19a10eb793e967 NAME djula FILENAME djula DEPS
+    ((NAME access FILENAME access) (NAME alexandria FILENAME alexandria)
+     (NAME anaphora FILENAME anaphora) (NAME arnesi FILENAME arnesi)
+     (NAME babel FILENAME babel) (NAME cl-annot FILENAME cl-annot)
+     (NAME cl-interpol FILENAME cl-interpol)
+     (NAME cl-locale FILENAME cl-locale) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME cl-slice FILENAME cl-slice) (NAME cl-syntax FILENAME cl-syntax)
+     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
+     (NAME cl-unicode FILENAME cl-unicode)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors)
+     (NAME flexi-streams FILENAME flexi-streams)
+     (NAME gettext FILENAME gettext) (NAME iterate FILENAME iterate)
+     (NAME let-plus FILENAME let-plus) (NAME local-time FILENAME local-time)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME parser-combinators FILENAME parser-combinators)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME symbol-munger FILENAME symbol-munger)
+     (NAME trivial-backtrace FILENAME trivial-backtrace)
+     (NAME trivial-features FILENAME trivial-features)
+     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
+     (NAME trivial-types FILENAME trivial-types) (NAME yacc FILENAME yacc))
+    DEPENDENCIES
+    (access alexandria anaphora arnesi babel cl-annot cl-interpol cl-locale
+     cl-ppcre cl-slice cl-syntax cl-syntax-annot cl-unicode closer-mop
+     collectors flexi-streams gettext iterate let-plus local-time
+     named-readtables parser-combinators split-sequence symbol-munger
+     trivial-backtrace trivial-features trivial-gray-streams trivial-types
+     yacc)
+    VERSION 20201016-git SIBLINGS (djula-demo djula-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-csv.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-csv.nix
new file mode 100644
index 00000000000..67d75b89dbd
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-csv.nix
@@ -0,0 +1,24 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''fare-csv'';
+  version = ''20171227-git'';
+
+  description = ''Robust CSV parser and printer'';
+
+  deps = [ ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/fare-csv/2017-12-27/fare-csv-20171227-git.tgz'';
+    sha256 = ''1hkzg05kq2c4xihsfx4wk1k6mmjq2fw40id8vy0315rpa47a5i7x'';
+  };
+
+  packageName = "fare-csv";
+
+  asdFilesToKeep = ["fare-csv.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM fare-csv DESCRIPTION Robust CSV parser and printer SHA256
+    1hkzg05kq2c4xihsfx4wk1k6mmjq2fw40id8vy0315rpa47a5i7x URL
+    http://beta.quicklisp.org/archive/fare-csv/2017-12-27/fare-csv-20171227-git.tgz
+    MD5 1d73aaac9fcd86cc5ddb72019722bc2a NAME fare-csv FILENAME fare-csv DEPS
+    NIL DEPENDENCIES NIL VERSION 20171227-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-mop.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-mop.nix
new file mode 100644
index 00000000000..a5cec39c15f
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fare-mop.nix
@@ -0,0 +1,28 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''fare-mop'';
+  version = ''20151218-git'';
+
+  description = ''Utilities using the MOP; notably make informative pretty-printing trivial'';
+
+  deps = [ args."closer-mop" args."fare-utils" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/fare-mop/2015-12-18/fare-mop-20151218-git.tgz'';
+    sha256 = ''0bvrwqvacy114xsblrk2w28qk6b484a3p0w14mzl264b3wjrdna9'';
+  };
+
+  packageName = "fare-mop";
+
+  asdFilesToKeep = ["fare-mop.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM fare-mop DESCRIPTION
+    Utilities using the MOP; notably make informative pretty-printing trivial
+    SHA256 0bvrwqvacy114xsblrk2w28qk6b484a3p0w14mzl264b3wjrdna9 URL
+    http://beta.quicklisp.org/archive/fare-mop/2015-12-18/fare-mop-20151218-git.tgz
+    MD5 4721ff62e2ac2c55079cdd4f2a0f6d4a NAME fare-mop FILENAME fare-mop DEPS
+    ((NAME closer-mop FILENAME closer-mop)
+     (NAME fare-utils FILENAME fare-utils))
+    DEPENDENCIES (closer-mop fare-utils) VERSION 20151218-git SIBLINGS NIL
+    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/gettext.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/gettext.nix
new file mode 100644
index 00000000000..ffc517973d5
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/gettext.nix
@@ -0,0 +1,30 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''gettext'';
+  version = ''20171130-git'';
+
+  description = ''An pure Common Lisp implementation of gettext runtime. gettext is an internationalization and localization (i18n) system commonly used for writing multilingual programs on Unix-like computer operating systems.'';
+
+  deps = [ args."flexi-streams" args."split-sequence" args."trivial-gray-streams" args."yacc" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz'';
+    sha256 = ''0nb8i66sb5qmpnk6rk2adlr87m322bra0xpirp63872mybd3y6yd'';
+  };
+
+  packageName = "gettext";
+
+  asdFilesToKeep = ["gettext.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM gettext DESCRIPTION
+    An pure Common Lisp implementation of gettext runtime. gettext is an internationalization and localization (i18n) system commonly used for writing multilingual programs on Unix-like computer operating systems.
+    SHA256 0nb8i66sb5qmpnk6rk2adlr87m322bra0xpirp63872mybd3y6yd URL
+    http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz
+    MD5 d162cb5310db5011c82ef6343fd280ed NAME gettext FILENAME gettext DEPS
+    ((NAME flexi-streams FILENAME flexi-streams)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
+     (NAME yacc FILENAME yacc))
+    DEPENDENCIES (flexi-streams split-sequence trivial-gray-streams yacc)
+    VERSION 20171130-git SIBLINGS (gettext-example gettext-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/inferior-shell.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/inferior-shell.nix
new file mode 100644
index 00000000000..2072945f264
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/inferior-shell.nix
@@ -0,0 +1,54 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''inferior-shell'';
+  version = ''20200925-git'';
+
+  parasites = [ "inferior-shell/test" ];
+
+  description = ''spawn local or remote processes and shell pipes'';
+
+  deps = [ args."alexandria" args."closer-mop" args."fare-mop" args."fare-quasiquote" args."fare-quasiquote-extras" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."hu_dot_dwim_dot_stefil" args."introspect-environment" args."iterate" args."lisp-namespace" args."named-readtables" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz'';
+    sha256 = ''1hykybcmdpcjk0irl4f1lmqc4aawpp1zfvh27qp6mldsibra7l80'';
+  };
+
+  packageName = "inferior-shell";
+
+  asdFilesToKeep = ["inferior-shell.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM inferior-shell DESCRIPTION
+    spawn local or remote processes and shell pipes SHA256
+    1hykybcmdpcjk0irl4f1lmqc4aawpp1zfvh27qp6mldsibra7l80 URL
+    http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz
+    MD5 7ca5f15446ef80715758610a930bccba NAME inferior-shell FILENAME
+    inferior-shell DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME closer-mop FILENAME closer-mop) (NAME fare-mop FILENAME fare-mop)
+     (NAME fare-quasiquote FILENAME fare-quasiquote)
+     (NAME fare-quasiquote-extras FILENAME fare-quasiquote-extras)
+     (NAME fare-quasiquote-optima FILENAME fare-quasiquote-optima)
+     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
+     (NAME fare-utils FILENAME fare-utils)
+     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
+     (NAME introspect-environment FILENAME introspect-environment)
+     (NAME iterate FILENAME iterate)
+     (NAME lisp-namespace FILENAME lisp-namespace)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME trivia FILENAME trivia)
+     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
+     (NAME trivia.level0 FILENAME trivia_dot_level0)
+     (NAME trivia.level1 FILENAME trivia_dot_level1)
+     (NAME trivia.level2 FILENAME trivia_dot_level2)
+     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
+     (NAME trivia.trivial FILENAME trivia_dot_trivial)
+     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
+    DEPENDENCIES
+    (alexandria closer-mop fare-mop fare-quasiquote fare-quasiquote-extras
+     fare-quasiquote-optima fare-quasiquote-readtable fare-utils hu.dwim.stefil
+     introspect-environment iterate lisp-namespace named-readtables trivia
+     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
+     trivia.quasiquote trivia.trivial trivial-cltl2 type-i)
+    VERSION 20200925-git SIBLINGS NIL PARASITES (inferior-shell/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/more-conditions.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/more-conditions.nix
new file mode 100644
index 00000000000..9a014c41603
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/more-conditions.nix
@@ -0,0 +1,34 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''more-conditions'';
+  version = ''20180831-git'';
+
+  parasites = [ "more-conditions/test" ];
+
+  description = ''This system provides some generic condition classes in
+                conjunction with support functions and macros.'';
+
+  deps = [ args."alexandria" args."closer-mop" args."fiveam" args."let-plus" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz'';
+    sha256 = ''0wa989kv3sl977g9szxkx52fdnww6aj2a9i77363f90iq02vj97x'';
+  };
+
+  packageName = "more-conditions";
+
+  asdFilesToKeep = ["more-conditions.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM more-conditions DESCRIPTION
+    This system provides some generic condition classes in
+                conjunction with support functions and macros.
+    SHA256 0wa989kv3sl977g9szxkx52fdnww6aj2a9i77363f90iq02vj97x URL
+    http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz
+    MD5 c4797bd3c6c50fba02a6e8164ddafe28 NAME more-conditions FILENAME
+    more-conditions DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME closer-mop FILENAME closer-mop) (NAME fiveam FILENAME fiveam)
+     (NAME let-plus FILENAME let-plus))
+    DEPENDENCIES (alexandria closer-mop fiveam let-plus) VERSION 20180831-git
+    SIBLINGS NIL PARASITES (more-conditions/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/net-telent-date.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/net-telent-date.nix
new file mode 100644
index 00000000000..a9c49279563
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/net-telent-date.nix
@@ -0,0 +1,25 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''net-telent-date'';
+  version = ''net-telent-date_0.42'';
+
+  description = ''System lacks description'';
+
+  deps = [ ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/net-telent-date/2010-10-06/net-telent-date_0.42.tgz'';
+    sha256 = ''06vdlddwi6kx999n1093chwgw0ksbys4j4w9i9zqvw768wxp4li1'';
+  };
+
+  packageName = "net-telent-date";
+
+  asdFilesToKeep = ["net-telent-date.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM net-telent-date DESCRIPTION System lacks description SHA256
+    06vdlddwi6kx999n1093chwgw0ksbys4j4w9i9zqvw768wxp4li1 URL
+    http://beta.quicklisp.org/archive/net-telent-date/2010-10-06/net-telent-date_0.42.tgz
+    MD5 6fedf40113b2462f7bd273d07950066b NAME net-telent-date FILENAME
+    net-telent-date DEPS NIL DEPENDENCIES NIL VERSION net-telent-date_0.42
+    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser-combinators.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser-combinators.nix
new file mode 100644
index 00000000000..5105ec99235
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser-combinators.nix
@@ -0,0 +1,30 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''parser-combinators'';
+  version = ''cl-20131111-git'';
+
+  description = ''An implementation of parser combinators for Common Lisp'';
+
+  deps = [ args."alexandria" args."iterate" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz'';
+    sha256 = ''0wg1a7favbwqcxyqcy2zxi4l11qsp4ar9fvddmx960grf2d72lds'';
+  };
+
+  packageName = "parser-combinators";
+
+  asdFilesToKeep = ["parser-combinators.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM parser-combinators DESCRIPTION
+    An implementation of parser combinators for Common Lisp SHA256
+    0wg1a7favbwqcxyqcy2zxi4l11qsp4ar9fvddmx960grf2d72lds URL
+    http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz
+    MD5 25ad9b1459901738a6394422a41b8fec NAME parser-combinators FILENAME
+    parser-combinators DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME iterate FILENAME iterate))
+    DEPENDENCIES (alexandria iterate) VERSION cl-20131111-git SIBLINGS
+    (parser-combinators-cl-ppcre parser-combinators-debug
+     parser-combinators-tests)
+    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser_dot_common-rules.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser_dot_common-rules.nix
new file mode 100644
index 00000000000..ee6532261c0
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parser_dot_common-rules.nix
@@ -0,0 +1,34 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''parser_dot_common-rules'';
+  version = ''20200715-git'';
+
+  parasites = [ "parser.common-rules/test" ];
+
+  description = ''Provides common parsing rules that are useful in many grammars.'';
+
+  deps = [ args."alexandria" args."anaphora" args."esrap" args."fiveam" args."let-plus" args."split-sequence" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz'';
+    sha256 = ''17nw0shhb8079b26ldwpfxggkzs6ysfqm4s4nr1rfhba9mkvxdxy'';
+  };
+
+  packageName = "parser.common-rules";
+
+  asdFilesToKeep = ["parser.common-rules.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM parser.common-rules DESCRIPTION
+    Provides common parsing rules that are useful in many grammars. SHA256
+    17nw0shhb8079b26ldwpfxggkzs6ysfqm4s4nr1rfhba9mkvxdxy URL
+    http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz
+    MD5 6391d962ae6fc13cc57312de013504c5 NAME parser.common-rules FILENAME
+    parser_dot_common-rules DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME esrap FILENAME esrap) (NAME fiveam FILENAME fiveam)
+     (NAME let-plus FILENAME let-plus)
+     (NAME split-sequence FILENAME split-sequence))
+    DEPENDENCIES (alexandria anaphora esrap fiveam let-plus split-sequence)
+    VERSION 20200715-git SIBLINGS (parser.common-rules.operators) PARASITES
+    (parser.common-rules/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix
new file mode 100644
index 00000000000..7dc27566bca
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix
@@ -0,0 +1,48 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''postmodern'';
+  version = ''20201016-git'';
+
+  parasites = [ "postmodern/tests" ];
+
+  description = ''PostgreSQL programming API'';
+
+  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_slash_tests" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."fiveam" args."flexi-streams" args."global-vars" args."ironclad" args."md5" args."s-sql" args."s-sql_slash_tests" args."simple-date" args."simple-date_slash_postgres-glue" args."split-sequence" args."uax-15" args."usocket" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/postmodern/2020-10-16/postmodern-20201016-git.tgz'';
+    sha256 = ''1svaiksbqcaq8sh7q6sj9kzazdfl360zqr2nzhwbgy4xnaj4vf3n'';
+  };
+
+  packageName = "postmodern";
+
+  asdFilesToKeep = ["postmodern.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM postmodern DESCRIPTION PostgreSQL programming API SHA256
+    1svaiksbqcaq8sh7q6sj9kzazdfl360zqr2nzhwbgy4xnaj4vf3n URL
+    http://beta.quicklisp.org/archive/postmodern/2020-10-16/postmodern-20201016-git.tgz
+    MD5 f61e827d7e7ba023f6fbc7c2667de4c8 NAME postmodern FILENAME postmodern
+    DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME bordeaux-threads FILENAME bordeaux-threads)
+     (NAME cl-base64 FILENAME cl-base64)
+     (NAME cl-postgres FILENAME cl-postgres)
+     (NAME cl-postgres/tests FILENAME cl-postgres_slash_tests)
+     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-unicode FILENAME cl-unicode)
+     (NAME closer-mop FILENAME closer-mop) (NAME fiveam FILENAME fiveam)
+     (NAME flexi-streams FILENAME flexi-streams)
+     (NAME global-vars FILENAME global-vars) (NAME ironclad FILENAME ironclad)
+     (NAME md5 FILENAME md5) (NAME s-sql FILENAME s-sql)
+     (NAME s-sql/tests FILENAME s-sql_slash_tests)
+     (NAME simple-date FILENAME simple-date)
+     (NAME simple-date/postgres-glue FILENAME simple-date_slash_postgres-glue)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME uax-15 FILENAME uax-15) (NAME usocket FILENAME usocket))
+    DEPENDENCIES
+    (alexandria bordeaux-threads cl-base64 cl-postgres cl-postgres/tests
+     cl-ppcre cl-unicode closer-mop fiveam flexi-streams global-vars ironclad
+     md5 s-sql s-sql/tests simple-date simple-date/postgres-glue split-sequence
+     uax-15 usocket)
+    VERSION 20201016-git SIBLINGS (cl-postgres s-sql simple-date) PARASITES
+    (postmodern/tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix
new file mode 100644
index 00000000000..1f896dc4158
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix
@@ -0,0 +1,42 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''s-sql'';
+  version = ''postmodern-20201016-git'';
+
+  parasites = [ "s-sql/tests" ];
+
+  description = ''Lispy DSL for SQL'';
+
+  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_slash_tests" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."fiveam" args."global-vars" args."ironclad" args."md5" args."postmodern" args."split-sequence" args."uax-15" args."usocket" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/postmodern/2020-10-16/postmodern-20201016-git.tgz'';
+    sha256 = ''1svaiksbqcaq8sh7q6sj9kzazdfl360zqr2nzhwbgy4xnaj4vf3n'';
+  };
+
+  packageName = "s-sql";
+
+  asdFilesToKeep = ["s-sql.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM s-sql DESCRIPTION Lispy DSL for SQL SHA256
+    1svaiksbqcaq8sh7q6sj9kzazdfl360zqr2nzhwbgy4xnaj4vf3n URL
+    http://beta.quicklisp.org/archive/postmodern/2020-10-16/postmodern-20201016-git.tgz
+    MD5 f61e827d7e7ba023f6fbc7c2667de4c8 NAME s-sql FILENAME s-sql DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME bordeaux-threads FILENAME bordeaux-threads)
+     (NAME cl-base64 FILENAME cl-base64)
+     (NAME cl-postgres FILENAME cl-postgres)
+     (NAME cl-postgres/tests FILENAME cl-postgres_slash_tests)
+     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-unicode FILENAME cl-unicode)
+     (NAME closer-mop FILENAME closer-mop) (NAME fiveam FILENAME fiveam)
+     (NAME global-vars FILENAME global-vars) (NAME ironclad FILENAME ironclad)
+     (NAME md5 FILENAME md5) (NAME postmodern FILENAME postmodern)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME uax-15 FILENAME uax-15) (NAME usocket FILENAME usocket))
+    DEPENDENCIES
+    (alexandria bordeaux-threads cl-base64 cl-postgres cl-postgres/tests
+     cl-ppcre cl-unicode closer-mop fiveam global-vars ironclad md5 postmodern
+     split-sequence uax-15 usocket)
+    VERSION postmodern-20201016-git SIBLINGS
+    (cl-postgres postmodern simple-date) PARASITES (s-sql/tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date-time.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date-time.nix
new file mode 100644
index 00000000000..1f2759cf388
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date-time.nix
@@ -0,0 +1,25 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''simple-date-time'';
+  version = ''20160421-git'';
+
+  description = ''date and time library for common lisp'';
+
+  deps = [ args."cl-ppcre" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/simple-date-time/2016-04-21/simple-date-time-20160421-git.tgz'';
+    sha256 = ''1db9n7pspxkqkzz12829a1lp7v4ghrnlb7g3wh04yz6m224d3i4h'';
+  };
+
+  packageName = "simple-date-time";
+
+  asdFilesToKeep = ["simple-date-time.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM simple-date-time DESCRIPTION date and time library for common lisp
+    SHA256 1db9n7pspxkqkzz12829a1lp7v4ghrnlb7g3wh04yz6m224d3i4h URL
+    http://beta.quicklisp.org/archive/simple-date-time/2016-04-21/simple-date-time-20160421-git.tgz
+    MD5 a5b1e4af539646723dafacbc8cf732a0 NAME simple-date-time FILENAME
+    simple-date-time DEPS ((NAME cl-ppcre FILENAME cl-ppcre)) DEPENDENCIES
+    (cl-ppcre) VERSION 20160421-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/unix-options.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/unix-options.nix
new file mode 100644
index 00000000000..7243d5a17ed
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/unix-options.nix
@@ -0,0 +1,25 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''unix-options'';
+  version = ''20151031-git'';
+
+  description = ''Easy to use command line option parser'';
+
+  deps = [ ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/unix-options/2015-10-31/unix-options-20151031-git.tgz'';
+    sha256 = ''0c9vbvvyx5qwvns87624gzxjcbdkbkcwssg29cxjfv3ci3qwqcd5'';
+  };
+
+  packageName = "unix-options";
+
+  asdFilesToKeep = ["unix-options.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM unix-options DESCRIPTION Easy to use command line option parser
+    SHA256 0c9vbvvyx5qwvns87624gzxjcbdkbkcwssg29cxjfv3ci3qwqcd5 URL
+    http://beta.quicklisp.org/archive/unix-options/2015-10-31/unix-options-20151031-git.tgz
+    MD5 3bbdeafbef3e7a2e94b9756bf173f636 NAME unix-options FILENAME
+    unix-options DEPS NIL DEPENDENCIES NIL VERSION 20151031-git SIBLINGS NIL
+    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix
new file mode 100644
index 00000000000..b672d0c2ec5
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix
@@ -0,0 +1,30 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''utilities_dot_print-items'';
+  version = ''20190813-git'';
+
+  parasites = [ "utilities.print-items/test" ];
+
+  description = ''A protocol for flexible and composable printing.'';
+
+  deps = [ args."alexandria" args."fiveam" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/utilities.print-items/2019-08-13/utilities.print-items-20190813-git.tgz'';
+    sha256 = ''12l4kzz621qfcg8p5qzyxp4n4hh9wdlpiziykwb4c80g32rdwkc2'';
+  };
+
+  packageName = "utilities.print-items";
+
+  asdFilesToKeep = ["utilities.print-items.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM utilities.print-items DESCRIPTION
+    A protocol for flexible and composable printing. SHA256
+    12l4kzz621qfcg8p5qzyxp4n4hh9wdlpiziykwb4c80g32rdwkc2 URL
+    http://beta.quicklisp.org/archive/utilities.print-items/2019-08-13/utilities.print-items-20190813-git.tgz
+    MD5 0f26580bb5d3587ed1815f70976b2a0a NAME utilities.print-items FILENAME
+    utilities_dot_print-items DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam))
+    DEPENDENCIES (alexandria fiveam) VERSION 20190813-git SIBLINGS NIL
+    PARASITES (utilities.print-items/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-tree.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-tree.nix
new file mode 100644
index 00000000000..80ff6d9ff76
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-tree.nix
@@ -0,0 +1,31 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''utilities_dot_print-tree'';
+  version = ''20200325-git'';
+
+  parasites = [ "utilities.print-tree/test" ];
+
+  description = ''This system provides simple facilities for printing tree structures.'';
+
+  deps = [ args."alexandria" args."fiveam" args."uiop" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/utilities.print-tree/2020-03-25/utilities.print-tree-20200325-git.tgz'';
+    sha256 = ''1nam8g2ppzkzpkwwhmil9y68is43ljpvc7hd64zxp4zsaqab5dww'';
+  };
+
+  packageName = "utilities.print-tree";
+
+  asdFilesToKeep = ["utilities.print-tree.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM utilities.print-tree DESCRIPTION
+    This system provides simple facilities for printing tree structures. SHA256
+    1nam8g2ppzkzpkwwhmil9y68is43ljpvc7hd64zxp4zsaqab5dww URL
+    http://beta.quicklisp.org/archive/utilities.print-tree/2020-03-25/utilities.print-tree-20200325-git.tgz
+    MD5 618bf5b42c415a44a1566f4f96a2c69a NAME utilities.print-tree FILENAME
+    utilities_dot_print-tree DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam)
+     (NAME uiop FILENAME uiop))
+    DEPENDENCIES (alexandria fiveam uiop) VERSION 20200325-git SIBLINGS NIL
+    PARASITES (utilities.print-tree/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uuid.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uuid.nix
new file mode 100644
index 00000000000..43ae799961d
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uuid.nix
@@ -0,0 +1,29 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''uuid'';
+  version = ''20200715-git'';
+
+  description = ''UUID Generation'';
+
+  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."trivial-utf-8" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/uuid/2020-07-15/uuid-20200715-git.tgz'';
+    sha256 = ''1ymir6hgax1vbbcgyprnwbsx224ih03a55v10l35xridwyzhzrx0'';
+  };
+
+  packageName = "uuid";
+
+  asdFilesToKeep = ["uuid.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM uuid DESCRIPTION UUID Generation SHA256
+    1ymir6hgax1vbbcgyprnwbsx224ih03a55v10l35xridwyzhzrx0 URL
+    http://beta.quicklisp.org/archive/uuid/2020-07-15/uuid-20200715-git.tgz MD5
+    e550de5e4e0f8cc9dc92aff0b488a991 NAME uuid FILENAME uuid DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME bordeaux-threads FILENAME bordeaux-threads)
+     (NAME ironclad FILENAME ironclad)
+     (NAME trivial-utf-8 FILENAME trivial-utf-8))
+    DEPENDENCIES (alexandria bordeaux-threads ironclad trivial-utf-8) VERSION
+    20200715-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xml_dot_location.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xml_dot_location.nix
new file mode 100644
index 00000000000..35854cd6b96
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xml_dot_location.nix
@@ -0,0 +1,47 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''xml_dot_location'';
+  version = ''20200325-git'';
+
+  parasites = [ "xml.location/test" ];
+
+  description = ''This system provides a convenient interface for
+ manipulating XML data. It is inspired by the xmltio library.'';
+
+  deps = [ args."alexandria" args."anaphora" args."babel" args."cl-ppcre" args."closer-mop" args."closure-common" args."cxml" args."cxml-stp" args."iterate" args."let-plus" args."lift" args."more-conditions" args."parse-number" args."puri" args."split-sequence" args."trivial-features" args."trivial-gray-streams" args."xpath" args."yacc" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz'';
+    sha256 = ''0wfccj1p1al0w9pc5rhxpsvm3wb2lr5fc4cfjyg751pwsasjikwx'';
+  };
+
+  packageName = "xml.location";
+
+  asdFilesToKeep = ["xml.location.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM xml.location DESCRIPTION
+    This system provides a convenient interface for
+ manipulating XML data. It is inspired by the xmltio library.
+    SHA256 0wfccj1p1al0w9pc5rhxpsvm3wb2lr5fc4cfjyg751pwsasjikwx URL
+    http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz
+    MD5 90cf4fd2450ba562c7f9657391dacb1d NAME xml.location FILENAME
+    xml_dot_location DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME babel FILENAME babel) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
+     (NAME cxml-stp FILENAME cxml-stp) (NAME iterate FILENAME iterate)
+     (NAME let-plus FILENAME let-plus) (NAME lift FILENAME lift)
+     (NAME more-conditions FILENAME more-conditions)
+     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME trivial-features FILENAME trivial-features)
+     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
+     (NAME xpath FILENAME xpath) (NAME yacc FILENAME yacc))
+    DEPENDENCIES
+    (alexandria anaphora babel cl-ppcre closer-mop closure-common cxml cxml-stp
+     iterate let-plus lift more-conditions parse-number puri split-sequence
+     trivial-features trivial-gray-streams xpath yacc)
+    VERSION 20200325-git SIBLINGS (xml.location-and-local-time) PARASITES
+    (xml.location/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
index 3a92bd26714..96d5867a3b3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
@@ -185,9 +185,18 @@ $out/lib/common-lisp/query-fs"
     parasites = pkgs.lib.filter (x: x!= "buildnode-test") x.parasites;
   };
   postmodern = x: {
-    overrides = y : (x.overrides y) // {
-      meta.broken = true; # 2018-04-10
-    };
+    asdFilesToKeep = (x.asdFilesToKeep or []) ++ ["postmodern.asd" "simple-date.asd"];
+    parasites = (pkgs.lib.filter (x: x!= "postmodern/tests") x.parasites) ++
+      ["simple-date/postgres-glue"];
+    deps = pkgs.lib.filter
+      (x: x.name != quicklisp-to-nix-packages.simple-date.name)
+      x.deps;
+  };
+  s-sql = x: {
+    parasites = pkgs.lib.filter (x: x!= "s-sql/tests") x.parasites;
+    deps = pkgs.lib.filter
+      (x: x.name != quicklisp-to-nix-packages.postmodern.name)
+      x.deps;
   };
   split-sequence = x: {
     overrides = y: (x.overrides y) // {
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
index bec69e3a05d..52d626888a3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
@@ -1,6 +1,9 @@
-cl-prevalence
 3bmd
+access
+acclimation
 alexandria
+anaphora
+arnesi
 array-utils
 asdf-system-connections
 babel
@@ -9,119 +12,163 @@ bordeaux-threads
 caveman
 cffi
 cffi-grovel
+chanl
 chipz
+chunga
 circular-streams
-cl+ssl
+clack
+clack-v1-compat
+cl-annot
 cl-ansi-text
 cl-async
 cl-async-base
 cl-async-repl
 cl-async-ssl
 cl-base64
+cl-cffi-gtk
 cl-cli
 cl-colors
+cl-containers
 cl-cookie
 cl-css
 cl-csv
 cl-dbi
+cl-dot
 cl-emb
+cl-fad
 cl-fuse
 cl-fuse-meta-fs
 cl-hooks
-cl-html-parse
 cl-html5-parser
+cl-html-parse
+cl-interpol
 cl-jpeg
 cl-json
 cl-l10n
 cl-libuv
+cl-locale
 cl-mysql
+closer-mop
+closure-common
+closure-html
 cl-paths-ttf
 cl-pdf
 cl-ppcre
 cl-ppcre-template
 cl-ppcre-unicode
+cl-prevalence
 cl-protobufs
+cl-qprint
 cl-reexport
+cl-slice
 cl-smtp
+clsql
+clsql-postgresql
+clsql-postgresql-socket
+clsql-sqlite3
+clss
+cl+ssl
+cl-store
+cl-syntax
 cl-syntax-annot
 cl-syntax-anonfun
 cl-syntax-markup
 cl-test-more
 cl-typesetting
+clump
 cl-unicode
 cl-unification
 cl-utilities
 cl-vectors
+cl-webkit2
 cl-who
-clack
-clack-v1-compat
-closer-mop
-closure-html
-clsql
-clsql-postgresql
-clsql-postgresql-socket
-clsql-sqlite3
-clss
 clx
+collectors
 command-line-arguments
 css-lite
 css-selectors
 css-selectors-simple-tree
 css-selectors-stp
 cxml
+cxml-stp
 dbd-mysql
 dbd-postgres
 dbd-sqlite3
 dbus
 dexador
+djula
 documentation-utils
 drakma
+enchant
 esrap
 esrap-peg
 external-program
+fare-csv
+fare-mop
+fare-quasiquote
+fare-utils
 fast-http
 fast-io
 fiveam
 flexi-streams
 form-fiddle
 fset
+gettext
 http-body
 hu.dwim.asdf
+hu.dwim.defclass-star
 hunchentoot
 idna
 ieee-floats
+inferior-shell
 iolib
 ironclad
 iterate
+jonathan
 lack
 let-plus
 lev
 lfarm-client
 lfarm-server
 lfarm-ssl
+lift
 lisp-namespace
 local-time
 log4cl
 lparallel
 lquery
 marshal
+md5
+metabang-bind
+metatilities-base
 misc-extensions
 mk-string-metrics
+moptilities
+more-conditions
 mt19937
+named-readtables
+net-telent-date
 nibbles
 optima
+osicat
 parenscript
+parse-number
+parser-combinators
+parser.common-rules
 pcall
 plump
+postmodern
 proc-parse
 prove
-prove
 prove-asdf
+puri
 query-fs
 quri
+rfc2388
 salza2
 serapeum
 simple-date
+simple-date-time
 smart-buffer
 split-sequence
 sqlite
@@ -130,32 +177,31 @@ str
 stumpwm
 swank
 swap-bytes
+symbol-munger
 trivia
 trivial-backtrace
 trivial-clipboard
+trivial-features
+trivial-garbage
+trivial-gray-streams
 trivial-indent
+trivial-main-thread
 trivial-mimes
+trivial-package-local-nicknames
 trivial-types
 trivial-utf-8
 uffi
+unix-options
 unix-opts
 usocket
+utilities.print-items
+utilities.print-tree
+uuid
 woo
 wookie
 xembed
 xkeyboard
+xml.location
 xmls
 xsubseq
 yason
-chanl
-cl-containers
-moptilities
-osicat
-trivial-package-local-nicknames
-cl-cffi-gtk
-enchant
-trivial-main-thread
-cl-webkit2
-acclimation
-clump
-hu.dwim.defclass-star
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix.nix b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
index 7fcd2d6a355..11244ec84a6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
@@ -48,15 +48,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date";
-
-
-  "xpath_slash_test" = quicklisp-to-nix-packages."xpath";
-
-
-  "cxml_slash_test" = quicklisp-to-nix-packages."cxml";
-
-
   "dbi-test" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."dbi-test" or (x: {}))
@@ -74,14 +65,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "unit-test" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."unit-test" or (x: {}))
-       (import ./quicklisp-to-nix-output/unit-test.nix {
-         inherit fetchurl;
-       }));
-
-
   "clunit2" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."clunit2" or (x: {}))
@@ -90,21 +73,26 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "clump-binary-tree" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clump-binary-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump-binary-tree.nix {
-         inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
-       }));
-
-
-  "clump-2-3-tree" = buildLispPackage
+  "mgl-pax" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."clump-2-3-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump-2-3-tree.nix {
+       (qlOverrides."mgl-pax" or (x: {}))
+       (import ./quicklisp-to-nix-output/mgl-pax.nix {
          inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
+           "_3bmd" = quicklisp-to-nix-packages."_3bmd";
+           "_3bmd-ext-code-blocks" = quicklisp-to-nix-packages."_3bmd-ext-code-blocks";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
+           "colorize" = quicklisp-to-nix-packages."colorize";
+           "esrap" = quicklisp-to-nix-packages."esrap";
+           "html-encode" = quicklisp-to-nix-packages."html-encode";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "pythonic-string-reader" = quicklisp-to-nix-packages."pythonic-string-reader";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "swank" = quicklisp-to-nix-packages."swank";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
@@ -120,169 +108,170 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-cffi-gtk-pango" = buildLispPackage
+  "cl-change-case" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-pango" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-pango.nix {
+       (qlOverrides."cl-change-case" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-change-case.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-ppcre-unicode" = quicklisp-to-nix-packages."cl-ppcre-unicode";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
        }));
 
 
-  "cl-cffi-gtk-gobject" = buildLispPackage
+  "trivial-macroexpand-all" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gobject" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix {
+       (qlOverrides."trivial-macroexpand-all" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-macroexpand-all.nix {
+         inherit fetchurl;
+       }));
+
+
+  "trivial-file-size" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-file-size" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-file-size.nix {
+         inherit fetchurl;
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "uiop" = quicklisp-to-nix-packages."uiop";
+       }));
+
+
+  "parse-declarations-1_dot_0" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."parse-declarations-1_dot_0" or (x: {}))
+       (import ./quicklisp-to-nix-output/parse-declarations-1_dot_0.nix {
+         inherit fetchurl;
+       }));
+
+
+  "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date";
+
+
+  "s-sql_slash_tests" = quicklisp-to-nix-packages."s-sql";
+
+
+  "s-sql" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."s-sql" or (x: {}))
+       (import ./quicklisp-to-nix-output/s-sql.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
            "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
+           "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres_slash_tests";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
            "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "global-vars" = quicklisp-to-nix-packages."global-vars";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "md5" = quicklisp-to-nix-packages."md5";
+           "postmodern" = quicklisp-to-nix-packages."postmodern";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "uax-15" = quicklisp-to-nix-packages."uax-15";
+           "usocket" = quicklisp-to-nix-packages."usocket";
        }));
 
 
-  "cl-cffi-gtk-glib" = buildLispPackage
+  "global-vars" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-glib" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-glib.nix {
+       (qlOverrides."global-vars" or (x: {}))
+       (import ./quicklisp-to-nix-output/global-vars.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
-  "cl-cffi-gtk-gio" = buildLispPackage
+  "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres";
+
+
+  "stefil" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gio" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gio.nix {
+       (qlOverrides."stefil" or (x: {}))
+       (import ./quicklisp-to-nix-output/stefil.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
            "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
+           "swank" = quicklisp-to-nix-packages."swank";
        }));
 
 
-  "cl-cffi-gtk-gdk-pixbuf" = buildLispPackage
+  "lfarm-common" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gdk-pixbuf" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix {
+       (qlOverrides."lfarm-common" or (x: {}))
+       (import ./quicklisp-to-nix-output/lfarm-common.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
            "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "cl-store" = quicklisp-to-nix-packages."cl-store";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "usocket" = quicklisp-to-nix-packages."usocket";
        }));
 
 
-  "cl-cffi-gtk-gdk" = buildLispPackage
+  "iolib_dot_grovel" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gdk" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix {
+       (qlOverrides."iolib_dot_grovel" or (x: {}))
+       (import ./quicklisp-to-nix-output/iolib_dot_grovel.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
            "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
+           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
+           "iolib_dot_base" = quicklisp-to-nix-packages."iolib_dot_base";
+           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
+           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "uiop" = quicklisp-to-nix-packages."uiop";
        }));
 
 
-  "cl-cffi-gtk-cairo" = buildLispPackage
+  "iolib_dot_conf" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-cairo" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix {
+       (qlOverrides."iolib_dot_conf" or (x: {}))
+       (import ./quicklisp-to-nix-output/iolib_dot_conf.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
        }));
 
 
-  "metatilities-base" = buildLispPackage
+  "iolib_dot_common-lisp" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."metatilities-base" or (x: {}))
-       (import ./quicklisp-to-nix-output/metatilities-base.nix {
+       (qlOverrides."iolib_dot_common-lisp" or (x: {}))
+       (import ./quicklisp-to-nix-output/iolib_dot_common-lisp.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
+           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
        }));
 
 
-  "mgl-pax" = buildLispPackage
+  "iolib_dot_base" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."mgl-pax" or (x: {}))
-       (import ./quicklisp-to-nix-output/mgl-pax.nix {
+       (qlOverrides."iolib_dot_base" or (x: {}))
+       (import ./quicklisp-to-nix-output/iolib_dot_base.nix {
          inherit fetchurl;
-           "_3bmd" = quicklisp-to-nix-packages."_3bmd";
-           "_3bmd-ext-code-blocks" = quicklisp-to-nix-packages."_3bmd-ext-code-blocks";
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "colorize" = quicklisp-to-nix-packages."colorize";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "html-encode" = quicklisp-to-nix-packages."html-encode";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "pythonic-string-reader" = quicklisp-to-nix-packages."pythonic-string-reader";
+           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
+           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
+           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
-  "cl-change-case" = buildLispPackage
+  "iolib_dot_asdf" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-change-case" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-change-case.nix {
+       (qlOverrides."iolib_dot_asdf" or (x: {}))
+       (import ./quicklisp-to-nix-output/iolib_dot_asdf.nix {
          inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-ppcre-unicode" = quicklisp-to-nix-packages."cl-ppcre-unicode";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
        }));
 
 
@@ -303,24 +292,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "trivial-macroexpand-all" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-macroexpand-all" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-macroexpand-all.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-file-size" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-file-size" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-file-size.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
   "trivial-cltl2" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivial-cltl2" or (x: {}))
@@ -416,14 +387,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "parse-declarations-1_dot_0" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parse-declarations-1_dot_0" or (x: {}))
-       (import ./quicklisp-to-nix-output/parse-declarations-1_dot_0.nix {
-         inherit fetchurl;
-       }));
-
-
   "introspect-environment" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."introspect-environment" or (x: {}))
@@ -432,22 +395,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "global-vars" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."global-vars" or (x: {}))
-       (import ./quicklisp-to-nix-output/global-vars.nix {
-         inherit fetchurl;
-       }));
-
-
-  "fare-utils" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-utils" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-utils.nix {
-         inherit fetchurl;
-       }));
-
-
   "fare-quasiquote-readtable" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."fare-quasiquote-readtable" or (x: {}))
@@ -502,120 +449,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "fare-quasiquote" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote.nix {
-         inherit fetchurl;
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-       }));
-
-
-  "stefil" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."stefil" or (x: {}))
-       (import ./quicklisp-to-nix-output/stefil.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "lfarm-common" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lfarm-common" or (x: {}))
-       (import ./quicklisp-to-nix-output/lfarm-common.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-store" = quicklisp-to-nix-packages."cl-store";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "cl-store" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-store" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-store.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "rt" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."rt" or (x: {}))
-       (import ./quicklisp-to-nix-output/rt.nix {
-         inherit fetchurl;
-       }));
-
-
-  "iolib_dot_grovel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_grovel" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_grovel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_base" = quicklisp-to-nix-packages."iolib_dot_base";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "iolib_dot_conf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_conf" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_conf.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-       }));
-
-
-  "iolib_dot_common-lisp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_common-lisp" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_common-lisp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-       }));
-
-
-  "iolib_dot_base" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_base" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_base.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "iolib_dot_asdf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_asdf" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_asdf.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
   "net_dot_didierverna_dot_asdf-flv" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."net_dot_didierverna_dot_asdf-flv" or (x: {}))
@@ -680,6 +513,12 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "xpath_slash_test" = quicklisp-to-nix-packages."xpath";
+
+
+  "cxml_slash_test" = quicklisp-to-nix-packages."cxml";
+
+
   "xpath" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."xpath" or (x: {}))
@@ -698,28 +537,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cxml-stp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml-stp" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-stp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "cxml_slash_test" = quicklisp-to-nix-packages."cxml_slash_test";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "rt" = quicklisp-to-nix-packages."rt";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "xpath" = quicklisp-to-nix-packages."xpath";
-           "xpath_slash_test" = quicklisp-to-nix-packages."xpath_slash_test";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
   "yacc" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."yacc" or (x: {}))
@@ -728,29 +545,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "symbol-munger" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."symbol-munger" or (x: {}))
-       (import ./quicklisp-to-nix-output/symbol-munger.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-       }));
-
-
-  "collectors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."collectors" or (x: {}))
-       (import ./quicklisp-to-nix-output/collectors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
   "buildnode-xhtml" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."buildnode-xhtml" or (x: {}))
@@ -818,21 +612,29 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "clsql-uffi" = buildLispPackage
+  "cl-aa" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."clsql-uffi" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-uffi.nix {
+       (qlOverrides."cl-aa" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-aa.nix {
          inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "uffi" = quicklisp-to-nix-packages."uffi";
        }));
 
 
-  "cl-aa" = buildLispPackage
+  "clump-binary-tree" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-aa" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-aa.nix {
+       (qlOverrides."clump-binary-tree" or (x: {}))
+       (import ./quicklisp-to-nix-output/clump-binary-tree.nix {
+         inherit fetchurl;
+           "acclimation" = quicklisp-to-nix-packages."acclimation";
+       }));
+
+
+  "clump-2-3-tree" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clump-2-3-tree" or (x: {}))
+       (import ./quicklisp-to-nix-output/clump-2-3-tree.nix {
          inherit fetchurl;
+           "acclimation" = quicklisp-to-nix-packages."acclimation";
        }));
 
 
@@ -852,68 +654,82 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-ppcre-test" = quicklisp-to-nix-packages."cl-ppcre";
+  "clsql-uffi" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clsql-uffi" or (x: {}))
+       (import ./quicklisp-to-nix-output/clsql-uffi.nix {
+         inherit fetchurl;
+           "clsql" = quicklisp-to-nix-packages."clsql";
+           "uffi" = quicklisp-to-nix-packages."uffi";
+       }));
 
 
-  "zpb-ttf" = buildLispPackage
+  "clunit" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."zpb-ttf" or (x: {}))
-       (import ./quicklisp-to-nix-output/zpb-ttf.nix {
+       (qlOverrides."clunit" or (x: {}))
+       (import ./quicklisp-to-nix-output/clunit.nix {
          inherit fetchurl;
        }));
 
 
-  "cl-paths" = buildLispPackage
+  "usocket-server" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-paths" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-paths.nix {
+       (qlOverrides."usocket-server" or (x: {}))
+       (import ./quicklisp-to-nix-output/usocket-server.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "usocket" = quicklisp-to-nix-packages."usocket";
        }));
 
 
-  "puri" = buildLispPackage
+  "s-xml" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."puri" or (x: {}))
-       (import ./quicklisp-to-nix-output/puri.nix {
+       (qlOverrides."s-xml" or (x: {}))
+       (import ./quicklisp-to-nix-output/s-xml.nix {
          inherit fetchurl;
-           "ptester" = quicklisp-to-nix-packages."ptester";
        }));
 
 
-  "parse-number" = buildLispPackage
+  "s-sysdeps" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."parse-number" or (x: {}))
-       (import ./quicklisp-to-nix-output/parse-number.nix {
+       (qlOverrides."s-sysdeps" or (x: {}))
+       (import ./quicklisp-to-nix-output/s-sysdeps.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "usocket" = quicklisp-to-nix-packages."usocket";
+           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
        }));
 
 
-  "metabang-bind" = buildLispPackage
+  "cl-ppcre-test" = quicklisp-to-nix-packages."cl-ppcre";
+
+
+  "zpb-ttf" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."metabang-bind" or (x: {}))
-       (import ./quicklisp-to-nix-output/metabang-bind.nix {
+       (qlOverrides."zpb-ttf" or (x: {}))
+       (import ./quicklisp-to-nix-output/zpb-ttf.nix {
          inherit fetchurl;
        }));
 
 
-  "hu_dot_dwim_dot_stefil" = buildLispPackage
+  "cl-paths" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_stefil" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix {
+       (qlOverrides."cl-paths" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-paths.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
        }));
 
 
-  "closure-common" = buildLispPackage
+  "hu_dot_dwim_dot_stefil" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."closure-common" or (x: {}))
-       (import ./quicklisp-to-nix-output/closure-common.nix {
+       (qlOverrides."hu_dot_dwim_dot_stefil" or (x: {}))
+       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
        }));
 
 
@@ -943,6 +759,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "unit-test" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."unit-test" or (x: {}))
+       (import ./quicklisp-to-nix-output/unit-test.nix {
+         inherit fetchurl;
+       }));
+
+
   "dbi" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."dbi" or (x: {}))
@@ -965,111 +789,165 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "lisp-unit2" = buildLispPackage
+  "cl-cffi-gtk-pango" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."lisp-unit2" or (x: {}))
-       (import ./quicklisp-to-nix-output/lisp-unit2.nix {
+       (qlOverrides."cl-cffi-gtk-pango" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-pango.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
            "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
        }));
 
 
-  "cl-interpol" = buildLispPackage
+  "cl-cffi-gtk-gobject" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-interpol" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-interpol.nix {
+       (qlOverrides."cl-cffi-gtk-gobject" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix {
          inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
        }));
 
 
-  "lift" = buildLispPackage
+  "cl-cffi-gtk-glib" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."lift" or (x: {}))
-       (import ./quicklisp-to-nix-output/lift.nix {
+       (qlOverrides."cl-cffi-gtk-glib" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-glib.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
-  "ptester" = buildLispPackage
+  "cl-cffi-gtk-gio" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."ptester" or (x: {}))
-       (import ./quicklisp-to-nix-output/ptester.nix {
+       (qlOverrides."cl-cffi-gtk-gio" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gio.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
        }));
 
 
-  "kmrcl" = buildLispPackage
+  "cl-cffi-gtk-gdk-pixbuf" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."kmrcl" or (x: {}))
-       (import ./quicklisp-to-nix-output/kmrcl.nix {
+       (qlOverrides."cl-cffi-gtk-gdk-pixbuf" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix {
          inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
        }));
 
 
-  "cl-async-util" = quicklisp-to-nix-packages."cl-async";
-
-
-  "uiop" = buildLispPackage
+  "cl-cffi-gtk-gdk" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."uiop" or (x: {}))
-       (import ./quicklisp-to-nix-output/uiop.nix {
+       (qlOverrides."cl-cffi-gtk-gdk" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
+           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
+           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
        }));
 
 
-  "trivial-gray-streams" = buildLispPackage
+  "cl-cffi-gtk-cairo" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."trivial-gray-streams" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-gray-streams.nix {
+       (qlOverrides."cl-cffi-gtk-cairo" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
-  "trivial-garbage" = buildLispPackage
+  "ptester" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."trivial-garbage" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-garbage.nix {
+       (qlOverrides."ptester" or (x: {}))
+       (import ./quicklisp-to-nix-output/ptester.nix {
          inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
        }));
 
 
-  "rove" = buildLispPackage
+  "kmrcl" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."rove" or (x: {}))
-       (import ./quicklisp-to-nix-output/rove.nix {
+       (qlOverrides."kmrcl" or (x: {}))
+       (import ./quicklisp-to-nix-output/kmrcl.nix {
          inherit fetchurl;
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "rt" = quicklisp-to-nix-packages."rt";
        }));
 
 
-  "rfc2388" = buildLispPackage
+  "cl-async-util" = quicklisp-to-nix-packages."cl-async";
+
+
+  "uiop" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."rfc2388" or (x: {}))
-       (import ./quicklisp-to-nix-output/rfc2388.nix {
+       (qlOverrides."uiop" or (x: {}))
+       (import ./quicklisp-to-nix-output/uiop.nix {
          inherit fetchurl;
        }));
 
 
-  "named-readtables" = buildLispPackage
+  "rove" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."named-readtables" or (x: {}))
-       (import ./quicklisp-to-nix-output/named-readtables.nix {
+       (qlOverrides."rove" or (x: {}))
+       (import ./quicklisp-to-nix-output/rove.nix {
          inherit fetchurl;
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "dissect" = quicklisp-to-nix-packages."dissect";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
        }));
 
 
@@ -1089,14 +967,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "md5" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."md5" or (x: {}))
-       (import ./quicklisp-to-nix-output/md5.nix {
-         inherit fetchurl;
-       }));
-
-
   "map-set" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."map-set" or (x: {}))
@@ -1133,30 +1003,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "jonathan" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."jonathan" or (x: {}))
-       (import ./quicklisp-to-nix-output/jonathan.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
   "do-urlencode" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."do-urlencode" or (x: {}))
@@ -1272,16 +1118,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-syntax" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syntax" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syntax.nix {
-         inherit fetchurl;
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
   "cl-project" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-project" or (x: {}))
@@ -1301,18 +1137,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-fad" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-fad" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-fad.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "unit-test" = quicklisp-to-nix-packages."unit-test";
-       }));
-
-
   "cl-colors2" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-colors2" or (x: {}))
@@ -1324,24 +1148,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-annot" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-annot" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-annot.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "chunga" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."chunga" or (x: {}))
-       (import ./quicklisp-to-nix-output/chunga.nix {
-         inherit fetchurl;
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
   "cffi-toolchain" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cffi-toolchain" or (x: {}))
@@ -1354,15 +1160,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "anaphora" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."anaphora" or (x: {}))
-       (import ./quicklisp-to-nix-output/anaphora.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
   "vom" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."vom" or (x: {}))
@@ -1371,199 +1168,27 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "trivial-features" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-features" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-features.nix {
-         inherit fetchurl;
-       }));
-
-
-  "usocket-server" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."usocket-server" or (x: {}))
-       (import ./quicklisp-to-nix-output/usocket-server.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "s-xml" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."s-xml" or (x: {}))
-       (import ./quicklisp-to-nix-output/s-xml.nix {
-         inherit fetchurl;
-       }));
-
-
-  "s-sysdeps" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."s-sysdeps" or (x: {}))
-       (import ./quicklisp-to-nix-output/s-sysdeps.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
-       }));
-
-
-  "hu_dot_dwim_dot_defclass-star" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_defclass-star" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix {
-         inherit fetchurl;
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-       }));
-
-
-  "clump" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clump" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump.nix {
-         inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
-           "clump-2-3-tree" = quicklisp-to-nix-packages."clump-2-3-tree";
-           "clump-binary-tree" = quicklisp-to-nix-packages."clump-binary-tree";
-       }));
-
-
-  "acclimation" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."acclimation" or (x: {}))
-       (import ./quicklisp-to-nix-output/acclimation.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-webkit2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-webkit2" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-webkit2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk" = quicklisp-to-nix-packages."cl-cffi-gtk";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "trivial-main-thread" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-main-thread" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-main-thread.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "simple-tasks" = quicklisp-to-nix-packages."simple-tasks";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "enchant" = buildLispPackage
+  "rt" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."enchant" or (x: {}))
-       (import ./quicklisp-to-nix-output/enchant.nix {
+       (qlOverrides."rt" or (x: {}))
+       (import ./quicklisp-to-nix-output/rt.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
        }));
 
 
-  "cl-cffi-gtk" = buildLispPackage
+  "lisp-unit2" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk.nix {
+       (qlOverrides."lisp-unit2" or (x: {}))
+       (import ./quicklisp-to-nix-output/lisp-unit2.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "trivial-package-local-nicknames" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-package-local-nicknames" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-package-local-nicknames.nix {
-         inherit fetchurl;
-       }));
-
-
-  "osicat" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."osicat" or (x: {}))
-       (import ./quicklisp-to-nix-output/osicat.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "rt" = quicklisp-to-nix-packages."rt";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "moptilities" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."moptilities" or (x: {}))
-       (import ./quicklisp-to-nix-output/moptilities.nix {
-         inherit fetchurl;
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-       }));
-
-
-  "cl-containers" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-containers" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-containers.nix {
-         inherit fetchurl;
-           "asdf-system-connections" = quicklisp-to-nix-packages."asdf-system-connections";
-           "metatilities-base" = quicklisp-to-nix-packages."metatilities-base";
-           "moptilities" = quicklisp-to-nix-packages."moptilities";
-       }));
-
-
-  "chanl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."chanl" or (x: {}))
-       (import ./quicklisp-to-nix-output/chanl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
        }));
 
 
@@ -1594,6 +1219,33 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "xml_dot_location" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."xml_dot_location" or (x: {}))
+       (import ./quicklisp-to-nix-output/xml_dot_location.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "closure-common" = quicklisp-to-nix-packages."closure-common";
+           "cxml" = quicklisp-to-nix-packages."cxml";
+           "cxml-stp" = quicklisp-to-nix-packages."cxml-stp";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "let-plus" = quicklisp-to-nix-packages."let-plus";
+           "lift" = quicklisp-to-nix-packages."lift";
+           "more-conditions" = quicklisp-to-nix-packages."more-conditions";
+           "parse-number" = quicklisp-to-nix-packages."parse-number";
+           "puri" = quicklisp-to-nix-packages."puri";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "xpath" = quicklisp-to-nix-packages."xpath";
+           "yacc" = quicklisp-to-nix-packages."yacc";
+       }));
+
+
   "xkeyboard" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."xkeyboard" or (x: {}))
@@ -1680,6 +1332,39 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "uuid" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."uuid" or (x: {}))
+       (import ./quicklisp-to-nix-output/uuid.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
+       }));
+
+
+  "utilities_dot_print-tree" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."utilities_dot_print-tree" or (x: {}))
+       (import ./quicklisp-to-nix-output/utilities_dot_print-tree.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "uiop" = quicklisp-to-nix-packages."uiop";
+       }));
+
+
+  "utilities_dot_print-items" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."utilities_dot_print-items" or (x: {}))
+       (import ./quicklisp-to-nix-output/utilities_dot_print-items.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+       }));
+
+
   "usocket" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."usocket" or (x: {}))
@@ -1697,6 +1382,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "unix-options" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."unix-options" or (x: {}))
+       (import ./quicklisp-to-nix-output/unix-options.nix {
+         inherit fetchurl;
+       }));
+
+
   "uffi" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."uffi" or (x: {}))
@@ -1722,6 +1415,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "trivial-package-local-nicknames" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-package-local-nicknames" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-package-local-nicknames.nix {
+         inherit fetchurl;
+       }));
+
+
   "trivial-mimes" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivial-mimes" or (x: {}))
@@ -1730,6 +1431,20 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "trivial-main-thread" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-main-thread" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-main-thread.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "array-utils" = quicklisp-to-nix-packages."array-utils";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "dissect" = quicklisp-to-nix-packages."dissect";
+           "simple-tasks" = quicklisp-to-nix-packages."simple-tasks";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+       }));
+
+
   "trivial-indent" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivial-indent" or (x: {}))
@@ -1738,6 +1453,31 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "trivial-gray-streams" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-gray-streams" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-gray-streams.nix {
+         inherit fetchurl;
+       }));
+
+
+  "trivial-garbage" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-garbage" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-garbage.nix {
+         inherit fetchurl;
+           "rt" = quicklisp-to-nix-packages."rt";
+       }));
+
+
+  "trivial-features" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-features" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-features.nix {
+         inherit fetchurl;
+       }));
+
+
   "trivial-clipboard" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivial-clipboard" or (x: {}))
@@ -1775,6 +1515,16 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "symbol-munger" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."symbol-munger" or (x: {}))
+       (import ./quicklisp-to-nix-output/symbol-munger.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+       }));
+
+
   "swap-bytes" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."swap-bytes" or (x: {}))
@@ -1866,6 +1616,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "simple-date-time" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."simple-date-time" or (x: {}))
+       (import ./quicklisp-to-nix-output/simple-date-time.nix {
+         inherit fetchurl;
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+       }));
+
+
   "simple-date" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."simple-date" or (x: {}))
@@ -1921,6 +1680,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "rfc2388" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."rfc2388" or (x: {}))
+       (import ./quicklisp-to-nix-output/rfc2388.nix {
+         inherit fetchurl;
+       }));
+
+
   "quri" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."quri" or (x: {}))
@@ -1959,6 +1726,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "puri" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."puri" or (x: {}))
+       (import ./quicklisp-to-nix-output/puri.nix {
+         inherit fetchurl;
+           "ptester" = quicklisp-to-nix-packages."ptester";
+       }));
+
+
   "prove-asdf" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."prove-asdf" or (x: {}))
@@ -1994,6 +1770,34 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "postmodern" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."postmodern" or (x: {}))
+       (import ./quicklisp-to-nix-output/postmodern.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
+           "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres_slash_tests";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "global-vars" = quicklisp-to-nix-packages."global-vars";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "md5" = quicklisp-to-nix-packages."md5";
+           "s-sql" = quicklisp-to-nix-packages."s-sql";
+           "s-sql_slash_tests" = quicklisp-to-nix-packages."s-sql_slash_tests";
+           "simple-date" = quicklisp-to-nix-packages."simple-date";
+           "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date_slash_postgres-glue";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "uax-15" = quicklisp-to-nix-packages."uax-15";
+           "usocket" = quicklisp-to-nix-packages."usocket";
+       }));
+
+
   "plump" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."plump" or (x: {}))
@@ -2017,6 +1821,38 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "parser_dot_common-rules" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."parser_dot_common-rules" or (x: {}))
+       (import ./quicklisp-to-nix-output/parser_dot_common-rules.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "esrap" = quicklisp-to-nix-packages."esrap";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "let-plus" = quicklisp-to-nix-packages."let-plus";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+       }));
+
+
+  "parser-combinators" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."parser-combinators" or (x: {}))
+       (import ./quicklisp-to-nix-output/parser-combinators.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+       }));
+
+
+  "parse-number" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."parse-number" or (x: {}))
+       (import ./quicklisp-to-nix-output/parse-number.nix {
+         inherit fetchurl;
+       }));
+
+
   "parenscript" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."parenscript" or (x: {}))
@@ -2028,6 +1864,21 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "osicat" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."osicat" or (x: {}))
+       (import ./quicklisp-to-nix-output/osicat.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
+           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
+           "rt" = quicklisp-to-nix-packages."rt";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+       }));
+
+
   "optima" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."optima" or (x: {}))
@@ -2047,6 +1898,22 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "net-telent-date" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."net-telent-date" or (x: {}))
+       (import ./quicklisp-to-nix-output/net-telent-date.nix {
+         inherit fetchurl;
+       }));
+
+
+  "named-readtables" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."named-readtables" or (x: {}))
+       (import ./quicklisp-to-nix-output/named-readtables.nix {
+         inherit fetchurl;
+       }));
+
+
   "mt19937" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."mt19937" or (x: {}))
@@ -2055,6 +1922,27 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "more-conditions" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."more-conditions" or (x: {}))
+       (import ./quicklisp-to-nix-output/more-conditions.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+           "let-plus" = quicklisp-to-nix-packages."let-plus";
+       }));
+
+
+  "moptilities" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."moptilities" or (x: {}))
+       (import ./quicklisp-to-nix-output/moptilities.nix {
+         inherit fetchurl;
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+       }));
+
+
   "mk-string-metrics" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."mk-string-metrics" or (x: {}))
@@ -2071,6 +1959,30 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "metatilities-base" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."metatilities-base" or (x: {}))
+       (import ./quicklisp-to-nix-output/metatilities-base.nix {
+         inherit fetchurl;
+       }));
+
+
+  "metabang-bind" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."metabang-bind" or (x: {}))
+       (import ./quicklisp-to-nix-output/metabang-bind.nix {
+         inherit fetchurl;
+       }));
+
+
+  "md5" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."md5" or (x: {}))
+       (import ./quicklisp-to-nix-output/md5.nix {
+         inherit fetchurl;
+       }));
+
+
   "marshal" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."marshal" or (x: {}))
@@ -2133,6 +2045,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "lift" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."lift" or (x: {}))
+       (import ./quicklisp-to-nix-output/lift.nix {
+         inherit fetchurl;
+       }));
+
+
   "lfarm-ssl" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."lfarm-ssl" or (x: {}))
@@ -2223,6 +2143,30 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "jonathan" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."jonathan" or (x: {}))
+       (import ./quicklisp-to-nix-output/jonathan.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
+           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
+           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
+           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
+           "fast-io" = quicklisp-to-nix-packages."fast-io";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
+           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+       }));
+
+
   "iterate" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."iterate" or (x: {}))
@@ -2263,6 +2207,36 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "inferior-shell" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."inferior-shell" or (x: {}))
+       (import ./quicklisp-to-nix-output/inferior-shell.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "fare-mop" = quicklisp-to-nix-packages."fare-mop";
+           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
+           "fare-quasiquote-extras" = quicklisp-to-nix-packages."fare-quasiquote-extras";
+           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
+           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
+           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
+           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "trivia" = quicklisp-to-nix-packages."trivia";
+           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
+           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
+           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
+           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
+           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
+           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+           "type-i" = quicklisp-to-nix-packages."type-i";
+       }));
+
+
   "ieee-floats" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."ieee-floats" or (x: {}))
@@ -2309,6 +2283,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "hu_dot_dwim_dot_defclass-star" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."hu_dot_dwim_dot_defclass-star" or (x: {}))
+       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix {
+         inherit fetchurl;
+           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
+       }));
+
+
   "hu_dot_dwim_dot_asdf" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."hu_dot_dwim_dot_asdf" or (x: {}))
@@ -2350,6 +2333,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "gettext" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."gettext" or (x: {}))
+       (import ./quicklisp-to-nix-output/gettext.nix {
+         inherit fetchurl;
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "yacc" = quicklisp-to-nix-packages."yacc";
+       }));
+
+
   "fset" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."fset" or (x: {}))
@@ -2424,6 +2419,41 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "fare-utils" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."fare-utils" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-utils.nix {
+         inherit fetchurl;
+       }));
+
+
+  "fare-quasiquote" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."fare-quasiquote" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-quasiquote.nix {
+         inherit fetchurl;
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
+       }));
+
+
+  "fare-mop" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."fare-mop" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-mop.nix {
+         inherit fetchurl;
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
+       }));
+
+
+  "fare-csv" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."fare-csv" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-csv.nix {
+         inherit fetchurl;
+       }));
+
+
   "external-program" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."external-program" or (x: {}))
@@ -2456,6 +2486,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "enchant" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."enchant" or (x: {}))
+       (import ./quicklisp-to-nix-output/enchant.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+       }));
+
+
   "drakma" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."drakma" or (x: {}))
@@ -2489,6 +2531,43 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "djula" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."djula" or (x: {}))
+       (import ./quicklisp-to-nix-output/djula.nix {
+         inherit fetchurl;
+           "access" = quicklisp-to-nix-packages."access";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "arnesi" = quicklisp-to-nix-packages."arnesi";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
+           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
+           "cl-locale" = quicklisp-to-nix-packages."cl-locale";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-slice" = quicklisp-to-nix-packages."cl-slice";
+           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
+           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "gettext" = quicklisp-to-nix-packages."gettext";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "let-plus" = quicklisp-to-nix-packages."let-plus";
+           "local-time" = quicklisp-to-nix-packages."local-time";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "parser-combinators" = quicklisp-to-nix-packages."parser-combinators";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+           "yacc" = quicklisp-to-nix-packages."yacc";
+       }));
+
+
   "dexador" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."dexador" or (x: {}))
@@ -2600,6 +2679,28 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cxml-stp" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cxml-stp" or (x: {}))
+       (import ./quicklisp-to-nix-output/cxml-stp.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "closure-common" = quicklisp-to-nix-packages."closure-common";
+           "cxml" = quicklisp-to-nix-packages."cxml";
+           "cxml_slash_test" = quicklisp-to-nix-packages."cxml_slash_test";
+           "parse-number" = quicklisp-to-nix-packages."parse-number";
+           "puri" = quicklisp-to-nix-packages."puri";
+           "rt" = quicklisp-to-nix-packages."rt";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "xpath" = quicklisp-to-nix-packages."xpath";
+           "xpath_slash_test" = quicklisp-to-nix-packages."xpath_slash_test";
+           "yacc" = quicklisp-to-nix-packages."yacc";
+       }));
+
+
   "cxml" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cxml" or (x: {}))
@@ -2726,177 +2827,58 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "clx" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clx" or (x: {}))
-       (import ./quicklisp-to-nix-output/clx.nix {
-         inherit fetchurl;
-           "fiasco" = quicklisp-to-nix-packages."fiasco";
-       }));
-
-
-  "clss" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clss" or (x: {}))
-       (import ./quicklisp-to-nix-output/clss.nix {
-         inherit fetchurl;
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "plump" = quicklisp-to-nix-packages."plump";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "clsql-sqlite3" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-sqlite3" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-sqlite3.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "clsql-postgresql-socket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-postgresql-socket" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-postgresql-socket.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "clsql-postgresql" = buildLispPackage
+  "collectors" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."clsql-postgresql" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-postgresql.nix {
+       (qlOverrides."collectors" or (x: {}))
+       (import ./quicklisp-to-nix-output/collectors.nix {
          inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
-           "uffi" = quicklisp-to-nix-packages."uffi";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
        }));
 
 
-  "clsql" = buildLispPackage
+  "clx" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."clsql" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql.nix {
+       (qlOverrides."clx" or (x: {}))
+       (import ./quicklisp-to-nix-output/clx.nix {
          inherit fetchurl;
-           "uffi" = quicklisp-to-nix-packages."uffi";
+           "fiasco" = quicklisp-to-nix-packages."fiasco";
        }));
 
 
-  "closure-html" = buildLispPackage
+  "cl-who" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."closure-html" or (x: {}))
-       (import ./quicklisp-to-nix-output/closure-html.nix {
+       (qlOverrides."cl-who" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-who.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
        }));
 
 
-  "closer-mop" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."closer-mop" or (x: {}))
-       (import ./quicklisp-to-nix-output/closer-mop.nix {
-         inherit fetchurl;
-       }));
-
-
-  "clack-v1-compat" = buildLispPackage
+  "cl-webkit2" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."clack-v1-compat" or (x: {}))
-       (import ./quicklisp-to-nix-output/clack-v1-compat.nix {
+       (qlOverrides."cl-webkit2" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-webkit2.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "babel" = quicklisp-to-nix-packages."babel";
            "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
            "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "chipz" = quicklisp-to-nix-packages."chipz";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "circular-streams" = quicklisp-to-nix-packages."circular-streams";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-cookie" = quicklisp-to-nix-packages."cl-cookie";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-reexport" = quicklisp-to-nix-packages."cl-reexport";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "clack" = quicklisp-to-nix-packages."clack";
-           "clack-handler-hunchentoot" = quicklisp-to-nix-packages."clack-handler-hunchentoot";
-           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
-           "clack-test" = quicklisp-to-nix-packages."clack-test";
-           "dexador" = quicklisp-to-nix-packages."dexador";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "fast-http" = quicklisp-to-nix-packages."fast-http";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "http-body" = quicklisp-to-nix-packages."http-body";
-           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "jonathan" = quicklisp-to-nix-packages."jonathan";
-           "lack" = quicklisp-to-nix-packages."lack";
-           "lack-component" = quicklisp-to-nix-packages."lack-component";
-           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
-           "lack-util" = quicklisp-to-nix-packages."lack-util";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "marshal" = quicklisp-to-nix-packages."marshal";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
-           "rove" = quicklisp-to-nix-packages."rove";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
+           "cl-cffi-gtk" = quicklisp-to-nix-packages."cl-cffi-gtk";
+           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
+           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
+           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
+           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
            "trivial-features" = quicklisp-to-nix-packages."trivial-features";
            "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-mimes" = quicklisp-to-nix-packages."trivial-mimes";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "clack" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clack" or (x: {}))
-       (import ./quicklisp-to-nix-output/clack.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "lack" = quicklisp-to-nix-packages."lack";
-           "lack-component" = quicklisp-to-nix-packages."lack-component";
-           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
-           "lack-util" = quicklisp-to-nix-packages."lack-util";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "cl-who" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-who" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-who.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
        }));
 
 
@@ -2936,6 +2918,17 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "clump" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clump" or (x: {}))
+       (import ./quicklisp-to-nix-output/clump.nix {
+         inherit fetchurl;
+           "acclimation" = quicklisp-to-nix-packages."acclimation";
+           "clump-2-3-tree" = quicklisp-to-nix-packages."clump-2-3-tree";
+           "clump-binary-tree" = quicklisp-to-nix-packages."clump-binary-tree";
+       }));
+
+
   "cl-typesetting" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-typesetting" or (x: {}))
@@ -3000,6 +2993,96 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-syntax" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-syntax" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-syntax.nix {
+         inherit fetchurl;
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+       }));
+
+
+  "cl-store" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-store" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-store.nix {
+         inherit fetchurl;
+           "rt" = quicklisp-to-nix-packages."rt";
+       }));
+
+
+  "cl_plus_ssl" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl_plus_ssl" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl_plus_ssl.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "uiop" = quicklisp-to-nix-packages."uiop";
+       }));
+
+
+  "clss" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clss" or (x: {}))
+       (import ./quicklisp-to-nix-output/clss.nix {
+         inherit fetchurl;
+           "array-utils" = quicklisp-to-nix-packages."array-utils";
+           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
+           "plump" = quicklisp-to-nix-packages."plump";
+           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
+       }));
+
+
+  "clsql-sqlite3" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clsql-sqlite3" or (x: {}))
+       (import ./quicklisp-to-nix-output/clsql-sqlite3.nix {
+         inherit fetchurl;
+           "clsql" = quicklisp-to-nix-packages."clsql";
+           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
+           "uffi" = quicklisp-to-nix-packages."uffi";
+       }));
+
+
+  "clsql-postgresql-socket" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clsql-postgresql-socket" or (x: {}))
+       (import ./quicklisp-to-nix-output/clsql-postgresql-socket.nix {
+         inherit fetchurl;
+           "clsql" = quicklisp-to-nix-packages."clsql";
+           "md5" = quicklisp-to-nix-packages."md5";
+           "uffi" = quicklisp-to-nix-packages."uffi";
+       }));
+
+
+  "clsql-postgresql" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clsql-postgresql" or (x: {}))
+       (import ./quicklisp-to-nix-output/clsql-postgresql.nix {
+         inherit fetchurl;
+           "clsql" = quicklisp-to-nix-packages."clsql";
+           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
+           "uffi" = quicklisp-to-nix-packages."uffi";
+       }));
+
+
+  "clsql" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clsql" or (x: {}))
+       (import ./quicklisp-to-nix-output/clsql.nix {
+         inherit fetchurl;
+           "uffi" = quicklisp-to-nix-packages."uffi";
+       }));
+
+
   "cl-smtp" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-smtp" or (x: {}))
@@ -3020,6 +3103,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-slice" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-slice" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-slice.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "clunit" = quicklisp-to-nix-packages."clunit";
+           "let-plus" = quicklisp-to-nix-packages."let-plus";
+       }));
+
+
   "cl-reexport" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-reexport" or (x: {}))
@@ -3029,6 +3124,16 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-qprint" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-qprint" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-qprint.nix {
+         inherit fetchurl;
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
   "cl-protobufs" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-protobufs" or (x: {}))
@@ -3042,6 +3147,21 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-prevalence" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-prevalence" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-prevalence.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "s-sysdeps" = quicklisp-to-nix-packages."s-sysdeps";
+           "s-xml" = quicklisp-to-nix-packages."s-xml";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "usocket" = quicklisp-to-nix-packages."usocket";
+           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
+       }));
+
+
   "cl-ppcre-unicode" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-ppcre-unicode" or (x: {}))
@@ -3094,6 +3214,40 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "closure-html" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."closure-html" or (x: {}))
+       (import ./quicklisp-to-nix-output/closure-html.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "closure-common" = quicklisp-to-nix-packages."closure-common";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
+  "closure-common" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."closure-common" or (x: {}))
+       (import ./quicklisp-to-nix-output/closure-common.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
+  "closer-mop" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."closer-mop" or (x: {}))
+       (import ./quicklisp-to-nix-output/closer-mop.nix {
+         inherit fetchurl;
+       }));
+
+
   "cl-mysql" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-mysql" or (x: {}))
@@ -3106,6 +3260,26 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-locale" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-locale" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-locale.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "arnesi" = quicklisp-to-nix-packages."arnesi";
+           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
+           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
+           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+       }));
+
+
   "cl-libuv" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-libuv" or (x: {}))
@@ -3163,15 +3337,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl-html5-parser" = buildLispPackage
+  "cl-interpol" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-html5-parser" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-html5-parser.nix {
+       (qlOverrides."cl-interpol" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-interpol.nix {
          inherit fetchurl;
            "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "string-case" = quicklisp-to-nix-packages."string-case";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
        }));
 
 
@@ -3183,6 +3357,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-html5-parser" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-html5-parser" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-html5-parser.nix {
+         inherit fetchurl;
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "string-case" = quicklisp-to-nix-packages."string-case";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
   "cl-hooks" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-hooks" or (x: {}))
@@ -3238,6 +3424,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-fad" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-fad" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-fad.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "unit-test" = quicklisp-to-nix-packages."unit-test";
+       }));
+
+
   "cl-emb" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-emb" or (x: {}))
@@ -3247,6 +3445,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-dot" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-dot" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-dot.nix {
+         inherit fetchurl;
+           "uiop" = quicklisp-to-nix-packages."uiop";
+       }));
+
+
   "cl-dbi" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-dbi" or (x: {}))
@@ -3301,6 +3508,17 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-containers" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-containers" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-containers.nix {
+         inherit fetchurl;
+           "asdf-system-connections" = quicklisp-to-nix-packages."asdf-system-connections";
+           "metatilities-base" = quicklisp-to-nix-packages."metatilities-base";
+           "moptilities" = quicklisp-to-nix-packages."moptilities";
+       }));
+
+
   "cl-colors" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-colors" or (x: {}))
@@ -3322,6 +3540,29 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-cffi-gtk" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-cffi-gtk" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-cffi-gtk.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
+           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
+           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
+           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
+           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
+           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
+           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+       }));
+
+
   "cl-base64" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-base64" or (x: {}))
@@ -3416,19 +3657,91 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cl_plus_ssl" = buildLispPackage
+  "cl-annot" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl_plus_ssl" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl_plus_ssl.nix {
+       (qlOverrides."cl-annot" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-annot.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+       }));
+
+
+  "clack-v1-compat" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clack-v1-compat" or (x: {}))
+       (import ./quicklisp-to-nix-output/clack-v1-compat.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "babel" = quicklisp-to-nix-packages."babel";
            "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
            "cffi" = quicklisp-to-nix-packages."cffi";
+           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
+           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
+           "chipz" = quicklisp-to-nix-packages."chipz";
+           "chunga" = quicklisp-to-nix-packages."chunga";
+           "circular-streams" = quicklisp-to-nix-packages."circular-streams";
+           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
+           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "cl-cookie" = quicklisp-to-nix-packages."cl-cookie";
+           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-reexport" = quicklisp-to-nix-packages."cl-reexport";
+           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
+           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
+           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
+           "clack" = quicklisp-to-nix-packages."clack";
+           "clack-handler-hunchentoot" = quicklisp-to-nix-packages."clack-handler-hunchentoot";
+           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
+           "clack-test" = quicklisp-to-nix-packages."clack-test";
+           "dexador" = quicklisp-to-nix-packages."dexador";
+           "dissect" = quicklisp-to-nix-packages."dissect";
+           "fast-http" = quicklisp-to-nix-packages."fast-http";
+           "fast-io" = quicklisp-to-nix-packages."fast-io";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "http-body" = quicklisp-to-nix-packages."http-body";
+           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "jonathan" = quicklisp-to-nix-packages."jonathan";
+           "lack" = quicklisp-to-nix-packages."lack";
+           "lack-component" = quicklisp-to-nix-packages."lack-component";
+           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
+           "lack-util" = quicklisp-to-nix-packages."lack-util";
+           "local-time" = quicklisp-to-nix-packages."local-time";
+           "marshal" = quicklisp-to-nix-packages."marshal";
+           "md5" = quicklisp-to-nix-packages."md5";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
+           "quri" = quicklisp-to-nix-packages."quri";
+           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
+           "rove" = quicklisp-to-nix-packages."rove";
+           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
+           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
            "trivial-features" = quicklisp-to-nix-packages."trivial-features";
            "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
            "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "trivial-mimes" = quicklisp-to-nix-packages."trivial-mimes";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+           "uiop" = quicklisp-to-nix-packages."uiop";
+           "usocket" = quicklisp-to-nix-packages."usocket";
+           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
+       }));
+
+
+  "clack" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clack" or (x: {}))
+       (import ./quicklisp-to-nix-output/clack.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "lack" = quicklisp-to-nix-packages."lack";
+           "lack-component" = quicklisp-to-nix-packages."lack-component";
+           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
+           "lack-util" = quicklisp-to-nix-packages."lack-util";
            "uiop" = quicklisp-to-nix-packages."uiop";
        }));
 
@@ -3450,6 +3763,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "chunga" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."chunga" or (x: {}))
+       (import ./quicklisp-to-nix-output/chunga.nix {
+         inherit fetchurl;
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
   "chipz" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."chipz" or (x: {}))
@@ -3458,6 +3780,17 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "chanl" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."chanl" or (x: {}))
+       (import ./quicklisp-to-nix-output/chanl.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "fiveam" = quicklisp-to-nix-packages."fiveam";
+       }));
+
+
   "cffi-grovel" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cffi-grovel" or (x: {}))
@@ -3605,6 +3938,30 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "arnesi" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."arnesi" or (x: {}))
+       (import ./quicklisp-to-nix-output/arnesi.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "swank" = quicklisp-to-nix-packages."swank";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+       }));
+
+
+  "anaphora" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."anaphora" or (x: {}))
+       (import ./quicklisp-to-nix-output/anaphora.nix {
+         inherit fetchurl;
+           "rt" = quicklisp-to-nix-packages."rt";
+       }));
+
+
   "alexandria" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."alexandria" or (x: {}))
@@ -3613,29 +3970,40 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "_3bmd" = buildLispPackage
+  "acclimation" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."_3bmd" or (x: {}))
-       (import ./quicklisp-to-nix-output/_3bmd.nix {
+       (qlOverrides."acclimation" or (x: {}))
+       (import ./quicklisp-to-nix-output/acclimation.nix {
+         inherit fetchurl;
+       }));
+
+
+  "access" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."access" or (x: {}))
+       (import ./quicklisp-to-nix-output/access.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
        }));
 
 
-  "cl-prevalence" = buildLispPackage
+  "_3bmd" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cl-prevalence" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-prevalence.nix {
+       (qlOverrides."_3bmd" or (x: {}))
+       (import ./quicklisp-to-nix-output/_3bmd.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "s-sysdeps" = quicklisp-to-nix-packages."s-sysdeps";
-           "s-xml" = quicklisp-to-nix-packages."s-xml";
+           "esrap" = quicklisp-to-nix-packages."esrap";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
        }));
 
 
diff --git a/pkgs/development/mobile/cocoapods/default.nix b/pkgs/development/mobile/cocoapods/default.nix
index 2ab285b1730..8559ff5c74c 100644
--- a/pkgs/development/mobile/cocoapods/default.nix
+++ b/pkgs/development/mobile/cocoapods/default.nix
@@ -13,7 +13,7 @@ bundlerApp {
   passthru.updateScript = toString ./update;
 
   meta = with lib; {
-    description     = "CocoaPods manages dependencies for your Xcode projects";
+    description     = "Manages dependencies for your Xcode projects";
     homepage        = "https://github.com/CocoaPods/CocoaPods";
     license         = licenses.mit;
     platforms       = platforms.darwin;
diff --git a/pkgs/development/ocaml-modules/janestreet/0.13.nix b/pkgs/development/ocaml-modules/janestreet/0.13.nix
index 175651f6960..9ab45aa5b30 100644
--- a/pkgs/development/ocaml-modules/janestreet/0.13.nix
+++ b/pkgs/development/ocaml-modules/janestreet/0.13.nix
@@ -6,6 +6,7 @@
 , ppxlib
 , re
 , openssl
+, zarith
 }:
 
 rec {
@@ -498,6 +499,71 @@ rec {
     meta.description = "Process library and s-expression based shell";
   };
 
+  csvfields = janePackage {
+    pname = "csvfields";
+    hash = "19pnq9m9lkdgqfy9l21w779d6c8djr1dvvjq7r9kbgfwb04symmr";
+    propagatedBuildInputs = [ core expect_test_helpers ];
+    meta.description = "Runtime support for ppx_xml_conv and ppx_csv_conv";
+  };
+
+  sexp_diff_kernel = janePackage {
+    pname = "sexp_diff_kernel";
+    hash = "125gssd24vfcfbkpjlqbxijlc4jyw2n0wv1cnddcfvpn1f7cghzb";
+    propagatedBuildInputs = [ core_kernel ];
+    meta.description = "Code for computing the diff of two sexps";
+  };
+
+  sexp_macro = janePackage {
+    pname = "sexp_macro";
+    hash = "1rqs2r2ihwsqzgnqsdr0db6dqzz4q6s9hi1hvnwf0cb2vnkhsjln";
+    propagatedBuildInputs = [ async sexplib ];
+    meta.description = "Sexp macros";
+  };
+
+  sexp_select = janePackage {
+    pname = "sexp_select";
+    hash = "02yckmin937scqs2i45r2qqp56rqa6j2q04nfhnnxvn3bkb0qnb1";
+    propagatedBuildInputs = [ base ppx_jane ];
+    meta.description = "A library to use CSS-style selectors to traverse sexp trees";
+  };
+
+  sexp = janePackage {
+    pname = "sexp";
+    hash = "0cqp6syc4ap2nxgg1mvwwz2pmib48kp3gigzpjwh20wr38qq0p1r";
+    propagatedBuildInputs = [
+      async
+      core
+      csvfields
+      re2
+      sexp_diff_kernel
+      sexp_macro
+      sexp_pretty
+      sexp_select
+    ];
+    patches = ./sexp.patch;
+    meta.description = "S-expression swiss knife";
+  };
+
+  zarith_stubs_js = janePackage {
+    pname = "zarith_stubs_js";
+    hash = "0dldnf85rfyx8z63qjly9n8plj8nnkw4i5zrj5vbm7s2wjcfjzj1";
+    meta.description = "Javascripts stubs for the Zarith library";
+  };
+
+  bignum = janePackage {
+    pname = "bignum";
+    hash = "0qldyl5mhlffnyps7n9y8qykm0ylrdiw5ii8zlww82zmmpp8zv5x";
+    propagatedBuildInputs = [ core_kernel zarith zarith_stubs_js ];
+    meta.description = "Core-flavoured wrapper around zarith's arbitrary-precision rationals";
+  };
+
+  delimited_parsing = janePackage {
+    pname = "delimited_parsing";
+    hash = "0siz746q28241wk0sv435lfvvips7sl151z5a1sbqanr3lm4s17w";
+    propagatedBuildInputs = [ async core_extended ];
+    meta.description = "Parsing of character (e.g., comma) separated and fixed-width values";
+  };
+
   ### Packages at version 0.11, with dependencies at version 0.12
 
   configurator = janePackage {
diff --git a/pkgs/development/ocaml-modules/janestreet/sexp.patch b/pkgs/development/ocaml-modules/janestreet/sexp.patch
new file mode 100644
index 00000000000..e56ce6508db
--- /dev/null
+++ b/pkgs/development/ocaml-modules/janestreet/sexp.patch
@@ -0,0 +1,30 @@
+diff --git a/lazy_list/src/dune b/lazy_list/src/dune
+index f1650ad..df90914 100644
+--- a/lazy_list/src/dune
++++ b/lazy_list/src/dune
+@@ -1,2 +1,3 @@
+ (library (name lazy_list) (libraries core_kernel)
++ (public_name sexp.lazy_list)
+  (preprocess (pps ppx_jane)))
+\ No newline at end of file
+diff --git a/sexp_app/pattern/dune b/sexp_app/pattern/dune
+index b7d2c3b..baf136b 100644
+--- a/sexp_app/pattern/dune
++++ b/sexp_app/pattern/dune
+@@ -1,4 +1,5 @@
+ (library (name sexp_app_pattern) (libraries core re2 sexplib str)
++ (public_name sexp.sexp_app_pattern)
+  (preprocess (pps ppx_jane)))
+ 
+ (ocamllex lexer)
+diff --git a/sexp_app/src/dune b/sexp_app/src/dune
+index b91ff40..a07a4e7 100644
+--- a/sexp_app/src/dune
++++ b/sexp_app/src/dune
+@@ -1,4 +1,5 @@
+ (library (name sexp_app) (libraries core lazy_list re2 sexplib str)
++ (public_name sexp.sexp_app)
+  (preprocess (pps ppx_jane -allow-unannotated-ignores)))
+ 
+ (ocamllex csv_lexeme)
+\ No newline at end of file
diff --git a/pkgs/development/ocaml-modules/mirage-block/default.nix b/pkgs/development/ocaml-modules/mirage-block/default.nix
new file mode 100644
index 00000000000..28eb4d6b28e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-block/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchurl, buildDunePackage
+, cstruct, lwt, mirage-device
+}:
+
+buildDunePackage rec {
+  pname = "mirage-block";
+  version = "2.0.1";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-block/releases/download/v${version}/mirage-block-v${version}.tbz";
+    sha256 = "1wp8wmixaz9i2sbvq6nkx903lbnpdgb2w404pz1wk8kcg9p3ilcc";
+  };
+
+  propagatedBuildInputs = [ cstruct lwt mirage-device ];
+
+  meta = with lib; {
+    description = "Block signatures and implementations for MirageOS";
+    homepage = "https://github.com/mirage/mirage-block";
+    license = licenses.isc;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix b/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix
new file mode 100644
index 00000000000..9b9a1ae185e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchurl, buildDunePackage
+, lwt, parse-argv
+}:
+
+buildDunePackage rec {
+  pname = "mirage-bootvar-unix";
+  version = "0.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-bootvar-unix/releases/download/${version}/mirage-bootvar-unix-${version}.tbz";
+    sha256 = "0r92s6y7nxg0ci330a7p0hii4if51iq0sixn20cnm5j4a2clprbf";
+  };
+
+  propagatedBuildInputs = [ lwt parse-argv ];
+
+  meta = {
+    description = "Unix implementation of MirageOS Bootvar interface";
+    homepage = "https://github.com/mirage/mirage-bootvar-unix";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage-net/default.nix b/pkgs/development/ocaml-modules/mirage-net/default.nix
new file mode 100644
index 00000000000..a29727d7ee1
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-net/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchurl, buildDunePackage
+, cstruct, fmt, lwt, macaddr, mirage-device
+}:
+
+buildDunePackage rec {
+  pname = "mirage-net";
+  version = "3.0.1";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-net/releases/download/v${version}/mirage-net-v${version}.tbz";
+    sha256 = "0yfvl0fgs7xy5i7kkparaa7a315a2h7kb1z24fmmnwnyaji57dg3";
+  };
+
+  propagatedBuildInputs = [ cstruct fmt lwt macaddr mirage-device ];
+
+  meta = {
+    description = "Network signatures for MirageOS";
+    homepage = "https://github.com/mirage/mirage-net";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage/runtime.nix b/pkgs/development/ocaml-modules/mirage/runtime.nix
index 816e85d3c9a..b3f308979f4 100644
--- a/pkgs/development/ocaml-modules/mirage/runtime.nix
+++ b/pkgs/development/ocaml-modules/mirage/runtime.nix
@@ -3,13 +3,13 @@
 
 buildDunePackage rec {
   pname = "mirage-runtime";
-  version = "3.8.1";
+  version = "3.9.0";
 
-  minimumOCamlVersion = "4.06";
+  minimumOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage/releases/download/v${version}/mirage-v${version}.tbz";
-    sha256 = "1sx9df041jb2rdrsibybifhml6h6kpzw9d2bw6vvv0ml500070ww";
+    sha256 = "1hznh49v1jlkwww6xi9f2f4yjzlh9qfvdrrdzvddnwsh3g00flla";
   };
 
   propagatedBuildInputs = [ ipaddr functoria-runtime fmt logs ocaml_lwt ];
diff --git a/pkgs/development/ocaml-modules/parse-argv/default.nix b/pkgs/development/ocaml-modules/parse-argv/default.nix
new file mode 100644
index 00000000000..64cc7c0c6b7
--- /dev/null
+++ b/pkgs/development/ocaml-modules/parse-argv/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchurl, buildDunePackage, ocaml
+, astring
+, ounit
+}:
+
+buildDunePackage rec {
+  pname = "parse-argv";
+  version = "0.2.0";
+
+  minimumOCamlVersion = "4.03";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/parse-argv/releases/download/v${version}/parse-argv-v${version}.tbz";
+    sha256 = "06dl04fcmwpkydzni2fzwrhk0bqypd55mgxfax9v82x65xrgj5gw";
+  };
+
+  propagatedBuildInputs = [ astring ];
+
+  doCheck = lib.versionAtLeast ocaml.version "4.04";
+  checkInputs = [ ounit ];
+
+  meta = {
+    description = "Process strings into sets of command-line arguments";
+    homepage = "https://github.com/mirage/parse-argv";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/python-modules/binwalk/default.nix b/pkgs/development/python-modules/binwalk/default.nix
index 0970cc18249..c6fbbc13c43 100644
--- a/pkgs/development/python-modules/binwalk/default.nix
+++ b/pkgs/development/python-modules/binwalk/default.nix
@@ -11,6 +11,8 @@
 , cabextract
 , cramfsprogs
 , cramfsswap
+, sasquatch
+, squashfsTools
 , lzma
 , matplotlib
 , nose
@@ -32,7 +34,7 @@ buildPythonPackage {
     sha256 = "1bxgj569fzwv6jhcbl864nmlsi9x1k1r20aywjxc8b9b1zgqrlvc";
   };
 
-  propagatedBuildInputs = [ zlib xz ncompress gzip bzip2 gnutar p7zip cabextract cramfsswap cramfsprogs lzma pycrypto ]
+  propagatedBuildInputs = [ zlib xz ncompress gzip bzip2 gnutar p7zip cabextract cramfsswap cramfsprogs sasquatch squashfsTools lzma pycrypto ]
   ++ stdenv.lib.optionals visualizationSupport [ matplotlib pyqtgraph ];
 
   # setup.py only installs version.py during install, not test
diff --git a/pkgs/development/python-modules/buildbot/default.nix b/pkgs/development/python-modules/buildbot/default.nix
index 595f97bcb8f..55ff34b2520 100644
--- a/pkgs/development/python-modules/buildbot/default.nix
+++ b/pkgs/development/python-modules/buildbot/default.nix
@@ -103,7 +103,7 @@ let
 
     meta = with lib; {
       homepage = "https://buildbot.net/";
-      description = "Buildbot is an open-source continuous integration framework for automating software build, test, and release processes";
+      description = "An open-source continuous integration framework for automating software build, test, and release processes";
       maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
       license = licenses.gpl2;
     };
diff --git a/pkgs/development/python-modules/dask/default.nix b/pkgs/development/python-modules/dask/default.nix
index 2a088706f6c..59ea588851e 100644
--- a/pkgs/development/python-modules/dask/default.nix
+++ b/pkgs/development/python-modules/dask/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "dask";
-  version = "2.22.0";
+  version = "2.25.0";
 
   disabled = pythonOlder "3.5";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "dask";
     repo = pname;
     rev = version;
-    sha256 = "08nvxj81cz9x92dh2gbmm4imkr8cfljfi2hxkballv2ygwcbzg8g";
+    sha256 = "1irp6s577yyjvrvkg00hh1wnl8vrv7pbnbr09mk67z9y7s6xhiw3";
   };
 
   checkInputs = [
@@ -70,7 +70,8 @@ buildPythonPackage rec {
 
   meta = {
     description = "Minimal task scheduling abstraction";
-    homepage = "https://github.com/ContinuumIO/dask/";
+    homepage = "https://dask.org/";
+    changelog = "https://docs.dask.org/en/latest/changelog.html";
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [ fridh ];
   };
diff --git a/pkgs/development/python-modules/debugpy/default.nix b/pkgs/development/python-modules/debugpy/default.nix
index 52f23f437a6..5f10b7897e9 100644
--- a/pkgs/development/python-modules/debugpy/default.nix
+++ b/pkgs/development/python-modules/debugpy/default.nix
@@ -18,13 +18,13 @@
 
 buildPythonPackage rec {
   pname = "debugpy";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1cxwbq97n5pfmq0hji1ybbc6i1jg5bjy830dq23zqxbwxxwjx98m";
+    sha256 = "1f6a62hg82fn9ddrl6g11x2h27zng8jmrlfbnnra6q590i5v1ixr";
   };
 
   patches = [
@@ -45,6 +45,13 @@ buildPythonPackage rec {
     ./fix-test-pythonpath.patch
   ];
 
+  postPatch = ''
+    # Use nixpkgs version instead of versioneer
+    substituteInPlace setup.py \
+      --replace "cmds = versioneer.get_cmdclass()" "cmds = {}" \
+      --replace "version=versioneer.get_version()" "version='${version}'"
+  '';
+
   # Remove pre-compiled "attach" libraries and recompile for host platform
   # Compile flags taken from linux_and_mac/compile_linux.sh & linux_and_mac/compile_mac.sh
   preBuild = ''(
diff --git a/pkgs/development/python-modules/django-oauth-toolkit/default.nix b/pkgs/development/python-modules/django-oauth-toolkit/default.nix
index 700fc3ae4e8..83f1049a2e5 100644
--- a/pkgs/development/python-modules/django-oauth-toolkit/default.nix
+++ b/pkgs/development/python-modules/django-oauth-toolkit/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchFromGitHub
-, django_2_2, requests, oauthlib
+, django, requests, oauthlib
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "1zbksxrcxlqnapmlvx4rgvpqc4plgnq0xnf45cjwzwi1626zs8g6";
   };
 
-  propagatedBuildInputs = [ django_2_2 requests oauthlib ];
+  propagatedBuildInputs = [ django requests oauthlib ];
 
   # django.core.exceptions.ImproperlyConfigured: Requested setting OAUTH2_PROVIDER, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings
   doCheck = false;
diff --git a/pkgs/development/python-modules/django/2_2.nix b/pkgs/development/python-modules/django/2.nix
index 3a88f0703d0..3a88f0703d0 100644
--- a/pkgs/development/python-modules/django/2_2.nix
+++ b/pkgs/development/python-modules/django/2.nix
diff --git a/pkgs/development/python-modules/django/3.nix b/pkgs/development/python-modules/django/3.nix
new file mode 100644
index 00000000000..0648552b6f1
--- /dev/null
+++ b/pkgs/development/python-modules/django/3.nix
@@ -0,0 +1,48 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, substituteAll
+, geos
+, gdal
+, asgiref
+, pytz
+, sqlparse
+, pythonOlder
+, withGdal ? false
+}:
+
+buildPythonPackage rec {
+  pname = "Django";
+  version = "3.1.2";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "a2127ad0150ec6966655bedf15dbbff9697cc86d61653db2da1afa506c0b04cc";
+  };
+
+  patches = stdenv.lib.optional withGdal
+    (substituteAll {
+      src = ./django_3_set_geos_gdal_lib.patch;
+      geos = geos;
+      gdal = gdal;
+      extension = stdenv.hostPlatform.extensions.sharedLibrary;
+    });
+
+  propagatedBuildInputs = [
+    asgiref
+    pytz
+    sqlparse
+  ];
+
+  # too complicated to setup
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A high-level Python Web framework";
+    homepage = "https://www.djangoproject.com/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ georgewhewell lsix ];
+  };
+}
diff --git a/pkgs/development/python-modules/django/django_3_set_geos_gdal_lib.patch b/pkgs/development/python-modules/django/django_3_set_geos_gdal_lib.patch
new file mode 100644
index 00000000000..6b853f8d85f
--- /dev/null
+++ b/pkgs/development/python-modules/django/django_3_set_geos_gdal_lib.patch
@@ -0,0 +1,24 @@
+diff -Nur a/django/contrib/gis/gdal/libgdal.py b/django/contrib/gis/gdal/libgdal.py
+--- a/django/contrib/gis/gdal/libgdal.py	2020-07-09 22:34:05.330568948 +0100
++++ b/django/contrib/gis/gdal/libgdal.py	2020-07-09 22:35:08.679095615 +0100
+@@ -14,7 +14,7 @@
+     from django.conf import settings
+     lib_path = settings.GDAL_LIBRARY_PATH
+ except (AttributeError, ImportError, ImproperlyConfigured, OSError):
+-    lib_path = None
++    lib_path = "@gdal@/lib/libgdal@extension@"
+
+ if lib_path:
+     lib_names = None
+diff -Nur a/django/contrib/gis/geos/libgeos.py b/django/contrib/gis/geos/libgeos.py
+--- a/django/contrib/gis/geos/libgeos.py	2020-07-09 22:34:05.331568941 +0100
++++ b/django/contrib/gis/geos/libgeos.py	2020-07-09 22:36:24.863526276 +0100
+@@ -24,7 +24,7 @@
+         from django.conf import settings
+         lib_path = settings.GEOS_LIBRARY_PATH
+     except (AttributeError, ImportError, ImproperlyConfigured, OSError):
+-        lib_path = None
++        lib_path = "@geos@/lib/libgeos_c@extension@"
+
+     # Setting the appropriate names for the GEOS-C library.
+     if lib_path:
diff --git a/pkgs/development/python-modules/docutils/default.nix b/pkgs/development/python-modules/docutils/default.nix
index 8c1fb3720ca..e24a00564be 100644
--- a/pkgs/development/python-modules/docutils/default.nix
+++ b/pkgs/development/python-modules/docutils/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   '';
 
   meta = {
-    description = "Docutils -- Python Documentation Utilities";
+    description = "Python Documentation Utilities";
     homepage = "http://docutils.sourceforge.net/";
     maintainers = with lib.maintainers; [ AndersonTorres ];
   };
diff --git a/pkgs/development/python-modules/graspy/default.nix b/pkgs/development/python-modules/graspologic/default.nix
index 0281e6a9734..4fd6ccf19c5 100644
--- a/pkgs/development/python-modules/graspy/default.nix
+++ b/pkgs/development/python-modules/graspologic/default.nix
@@ -14,14 +14,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "graspy";
+  pname = "graspologic";
   version = "0.3";
 
   disabled = isPy27;
 
   src = fetchFromGitHub {
-    owner = "neurodata";
-    repo = pname;
+    owner = "microsoft";
+    repo = "graspologic";
     rev = "v${version}";
     sha256 = "0lab76qiryxvwl6zrcikhnxil1xywl0wkkm2vzi4v9mdzpa7w29r";
   };
@@ -43,7 +43,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://graspy.neurodata.io";
     description = "A package for graph statistical algorithms";
-    license = licenses.asl20;
+    license = licenses.asl20;  # changing to `licenses.mit` in next release
     maintainers = with maintainers; [ bcdarwin ];
   };
 }
diff --git a/pkgs/development/python-modules/myfitnesspal/default.nix b/pkgs/development/python-modules/myfitnesspal/default.nix
index 53e5f825344..0638ce5d1ee 100644
--- a/pkgs/development/python-modules/myfitnesspal/default.nix
+++ b/pkgs/development/python-modules/myfitnesspal/default.nix
@@ -1,6 +1,9 @@
 { lib, fetchPypi, buildPythonPackage
-, blessed, keyring, keyrings-alt, lxml, measurement, python-dateutil, requests, six
-, mock, nose }:
+, blessed, keyring, keyrings-alt, lxml, measurement, python-dateutil, requests, six, rich
+, pytestCheckHook, mock, nose }:
+
+# TODO: Define this package in "all-packages.nix" using "toPythonApplication".
+# This currently errors out, complaining about not being able to find "etree" from "lxml" even though "lxml" is defined in "propagatedBuildInputs".
 
 buildPythonPackage rec {
   pname = "myfitnesspal";
@@ -11,14 +14,18 @@ buildPythonPackage rec {
     sha256 = "c2275e91c794a3569a76c47c78cf2ff04d7f569a98558227e899ead7b30af0d6";
   };
 
-  # Remove overly restrictive version constraints on keyring and keyrings.alt
+  # Remove overly restrictive version constraints
   postPatch = ''
     sed -i 's/keyring>=.*/keyring/' requirements.txt
     sed -i 's/keyrings.alt>=.*/keyrings.alt/' requirements.txt
+    sed -i 's/rich>=.*/rich/' requirements.txt
   '';
 
-  checkInputs = [ mock nose ];
-  propagatedBuildInputs = [ blessed keyring keyrings-alt lxml measurement python-dateutil requests six ];
+  propagatedBuildInputs = [ blessed keyring keyrings-alt lxml measurement python-dateutil requests six rich ];
+
+  # Integration tests require an account to be set
+  disabledTests = [ "test_integration" ];
+  checkInputs = [ pytestCheckHook mock nose ];
 
   meta = with lib; {
     description = "Access your meal tracking data stored in MyFitnessPal programatically";
diff --git a/pkgs/development/python-modules/pc-ble-driver-py/default.nix b/pkgs/development/python-modules/pc-ble-driver-py/default.nix
index 6250b5a2202..64430ca7e1f 100644
--- a/pkgs/development/python-modules/pc-ble-driver-py/default.nix
+++ b/pkgs/development/python-modules/pc-ble-driver-py/default.nix
@@ -1,9 +1,10 @@
-{ stdenv, fetchFromGitHub, cmake, git, swig, boost, udev, pc-ble-driver
+{ stdenv, fetchFromGitHub, cmake, git, swig, boost, udev, pc-ble-driver, pythonOlder
 , buildPythonPackage, enum34, wrapt, future, setuptools, scikit-build }:
 
 buildPythonPackage rec {
   pname = "pc-ble-driver-py";
   version = "0.14.2";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "NordicSemiconductor";
diff --git a/pkgs/development/python-modules/pinboard/default.nix b/pkgs/development/python-modules/pinboard/default.nix
new file mode 100644
index 00000000000..af144e0a866
--- /dev/null
+++ b/pkgs/development/python-modules/pinboard/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchFromGitHub }:
+
+buildPythonPackage rec {
+  pname = "pinboard";
+  version = "2.1.8";
+
+  src = fetchFromGitHub {
+    owner = "lionheart";
+    repo = pname;
+    rev = version;
+    sha256 = "0ppc3vwv48ahqx6n5c7d7066zhi31cjdik0ma9chq6fscq2idgdf";
+  };
+
+  # tests require an API key
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A Python wrapper for Pinboard.in";
+    maintainers = with maintainers; [ djanatyn ];
+    license = licenses.asl20;
+    homepage = "http://github.com/lionheart/pinboard.py";
+  };
+}
diff --git a/pkgs/development/python-modules/protobuf/default.nix b/pkgs/development/python-modules/protobuf/default.nix
index 7f66549893b..ab95eeb51f9 100644
--- a/pkgs/development/python-modules/protobuf/default.nix
+++ b/pkgs/development/python-modules/protobuf/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchpatch, python, buildPythonPackage, isPy37
+{ buildPackages, stdenv, fetchpatch, python, buildPythonPackage, isPy37
 , protobuf, google_apputils, pyext, libcxx, isPy27
 , disabled, doCheck ? true }:
 
 with stdenv.lib;
 
 buildPythonPackage {
-  inherit (protobuf) name src version;
+  inherit (protobuf) pname src version;
   inherit disabled;
   doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2
 
@@ -15,8 +15,10 @@ buildPythonPackage {
     ++ optional (versionOlder protobuf.version "2.7.0") "-std=c++98"
   );
 
+  outputs = [ "out" "dev" ];
+
   propagatedBuildInputs = [ google_apputils ];
-  propagatedNativeBuildInputs = [ protobuf ];  # For protoc.
+  propagatedNativeBuildInputs = [ buildPackages.protobuf ];  # For protoc.
   nativeBuildInputs = [ google_apputils pyext ];
   buildInputs = [ protobuf ];
 
@@ -43,9 +45,9 @@ buildPythonPackage {
 
   preBuild = ''
     # Workaround for https://github.com/google/protobuf/issues/2895
-    ${python.interpreter} setup.py build
+    ${python.pythonForBuild.interpreter} setup.py build
   '' + optionalString (versionAtLeast protobuf.version "2.6.0") ''
-    ${python.interpreter} setup.py build_ext --cpp_implementation
+    ${python.pythonForBuild.interpreter} setup.py build_ext --cpp_implementation
   '';
 
   installFlags = optional (versionAtLeast protobuf.version "2.6.0")
diff --git a/pkgs/development/python-modules/python-rtmidi/default.nix b/pkgs/development/python-modules/python-rtmidi/default.nix
index c2cced83509..2b65a658f98 100644
--- a/pkgs/development/python-modules/python-rtmidi/default.nix
+++ b/pkgs/development/python-modules/python-rtmidi/default.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "python-rtmidi";
-  version = "1.4.5";
+  version = "1.4.6";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3dd1909d0f44f03a4191131f1829cac2ee6a94f5a4be2a9606354748e594e704";
+    sha256 = "1aqhsl9w3h0rwf3mhr8parjbxm2sb6sn5mac6725cvm535pqqyhz";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/python-modules/rich/default.nix b/pkgs/development/python-modules/rich/default.nix
index 71166b86f18..6284ed7b649 100644
--- a/pkgs/development/python-modules/rich/default.nix
+++ b/pkgs/development/python-modules/rich/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "rich";
-  version = "8.0.0";
+  version = "9.1.0";
 
   # tests not included in pypi tarball
   src = fetchFromGitHub {
     owner = "willmcgugan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0hv27b22x7dbx1i7nzsd8y8fymmvdak2hcx9242jwk4c1a7jr151";
+    sha256 = "18iha0fs8vm0j11k39yxj26h8qxrp27ijhx6h1yyizbygmr5b5nk";
   };
   format = "pyproject";
 
diff --git a/pkgs/development/python-modules/shapely/default.nix b/pkgs/development/python-modules/shapely/default.nix
index d895f00285d..d4d52a9bf03 100644
--- a/pkgs/development/python-modules/shapely/default.nix
+++ b/pkgs/development/python-modules/shapely/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "Shapely";
-  version = "1.7.0";
+  version = "1.7.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "07lmrihj6pa7f99m97hbf2anqlhhwippcdz03bqkyihnlkhry6p2";
+    sha256 = "0adiz4jwmwxk7k1awqifb1a9bj5x4nx4gglb5dz9liam21674h8n";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/shapely/library-paths.patch b/pkgs/development/python-modules/shapely/library-paths.patch
index 4081936abe3..319eb8a72db 100644
--- a/pkgs/development/python-modules/shapely/library-paths.patch
+++ b/pkgs/development/python-modules/shapely/library-paths.patch
@@ -2,7 +2,7 @@ diff --git a/shapely/geos.py b/shapely/geos.py
 index d5a67d2..19b7ffc 100644
 --- a/shapely/geos.py
 +++ b/shapely/geos.py
-@@ -61,123 +61,11 @@ def load_dll(libname, fallbacks=None, mode=DEFAULT_MODE):
+@@ -61,127 +61,10 @@ def load_dll(libname, fallbacks=None, mode=DEFAULT_MODE):
              "Could not find lib {} or load any of its variants {}.".format(
                  libname, fallbacks or []))
  
@@ -80,7 +80,11 @@ index d5a67d2..19b7ffc 100644
 -            ]
 -        _lgeos = load_dll('geos_c', fallbacks=alt_paths)
 -
--    free = load_dll('c').free
+-    # ctypes.CDLL(None) internally calls dlopen(NULL), and as the dlopen
+-    # manpage says, "If filename is NULL, then the returned handle is for the
+-    # main program". This way we can let the linker do the work to figure out
+-    # which libc Python is actually using.
+-    free = CDLL(None).free
 -    free.argtypes = [c_void_p]
 -    free.restype = None
 -
@@ -112,7 +116,7 @@ index d5a67d2..19b7ffc 100644
 -            except WindowsError:
 -                # XXX: See http://trac.gispython.org/projects/PCL/ticket/149
 -                pass
- 
+-
 -elif sys.platform == 'sunos5':
 -    _lgeos = load_dll('geos_c', fallbacks=['libgeos_c.so.1', 'libgeos_c.so'])
 -    free = CDLL('libc.so.1').free
diff --git a/pkgs/development/python-modules/xdot/default.nix b/pkgs/development/python-modules/xdot/default.nix
index 990e74d2549..6a4d7f01cc1 100644
--- a/pkgs/development/python-modules/xdot/default.nix
+++ b/pkgs/development/python-modules/xdot/default.nix
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 ];
 
   meta = with lib; {
-    description = "xdot.py is an interactive viewer for graphs written in Graphviz's dot";
+    description = "An interactive viewer for graphs written in Graphviz's dot";
     homepage = "https://github.com/jrfonseca/xdot.py";
     license = licenses.lgpl3Plus;
   };
diff --git a/pkgs/development/python-modules/yamale/default.nix b/pkgs/development/python-modules/yamale/default.nix
index d6fb713185d..9b2c7b116c6 100644
--- a/pkgs/development/python-modules/yamale/default.nix
+++ b/pkgs/development/python-modules/yamale/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A schema and validator for YAML.";
+    description = "A schema and validator for YAML";
     homepage = "https://github.com/23andMe/Yamale";
     license = licenses.mit;
     maintainers = with maintainers; [ rtburns-jpl ];
diff --git a/pkgs/development/python-modules/zigpy-cc/default.nix b/pkgs/development/python-modules/zigpy-cc/default.nix
index 76887e39920..79b9d910053 100644
--- a/pkgs/development/python-modules/zigpy-cc/default.nix
+++ b/pkgs/development/python-modules/zigpy-cc/default.nix
@@ -1,22 +1,44 @@
-{ stdenv, buildPythonPackage, fetchPypi
-, pyserial, pyserial-asyncio, zigpy
-, asynctest, pytest, pytest-asyncio }:
+{ lib
+, asynctest
+, buildPythonPackage
+, fetchFromGitHub
+, pyserial
+, pyserial-asyncio
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, zigpy }:
 
 buildPythonPackage rec {
   pname = "zigpy-cc";
-  version = "0.5.1";
+  version = "0.5.2";
+  # https://github.com/Martiusweb/asynctest/issues/152
+  # broken by upstream python bug with asynctest and
+  # is used exclusively by home-assistant with python 3.8
+  disabled = pythonOlder "3.8";
 
-  propagatedBuildInputs = [ pyserial pyserial-asyncio zigpy ];
-  checkInputs = [ asynctest pytest pytest-asyncio ];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "06759615b28c45beaa5f03e594769a373d41674b96aeafefccd5c4e1c67e25ca";
+  src = fetchFromGitHub {
+    owner = "zigpy";
+    repo = "zigpy-cc";
+    rev = version;
+    sha256 = "U3S8tQ3zPlexZDt5GvCd+rOv7CBVeXJJM1NGe7nRl2o=";
   };
 
-  meta = with stdenv.lib; {
+  propagatedBuildInputs = [
+    pyserial
+    pyserial-asyncio
+    zigpy
+  ];
+
+  checkInputs = [
+    asynctest
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
     description = "A library which communicates with Texas Instruments CC2531 radios for zigpy";
-    homepage = "http://github.com/sanyatuning/zigpy-cc";
+    homepage = "https://github.com/zigpy/zigpy-cc";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ etu mvnetbiz ];
     platforms = platforms.linux;
diff --git a/pkgs/development/python-modules/zigpy-xbee/default.nix b/pkgs/development/python-modules/zigpy-xbee/default.nix
index 70266644801..697ae5bb92d 100644
--- a/pkgs/development/python-modules/zigpy-xbee/default.nix
+++ b/pkgs/development/python-modules/zigpy-xbee/default.nix
@@ -1,20 +1,42 @@
-{ stdenv, buildPythonPackage, fetchPypi
-, pyserial, pyserial-asyncio, zigpy
-, pytest }:
+{ lib
+, asynctest
+, buildPythonPackage
+, fetchFromGitHub
+, pyserial
+, pyserial-asyncio
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, zigpy }:
 
 buildPythonPackage rec {
   pname = "zigpy-xbee";
-  version = "0.12.1";
+  version = "0.13.0";
+  # https://github.com/Martiusweb/asynctest/issues/152
+  # broken by upstream python bug with asynctest and
+  # is used exclusively by home-assistant with python 3.8
+  disabled = pythonOlder "3.8";
 
-  buildInputs = [ pyserial pyserial-asyncio zigpy ];
-  checkInputs = [ pytest ];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "09488hl27qjv8shw38iiyzvzwcjkc0k4n00l2bfn1ac443xzw0vh";
+  src = fetchFromGitHub {
+    owner = "zigpy";
+    repo = "zigpy-xbee";
+    rev = version;
+    sha256 = "Krdqb9bYKwUC2cdNppB2+tLwWjzmzIHhXnQ1KRduofU=";
   };
 
-  meta = with stdenv.lib; {
+  buildInputs = [
+    pyserial
+    pyserial-asyncio
+    zigpy
+  ];
+
+  checkInputs = [
+    asynctest
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
     description = "A library which communicates with XBee radios for zigpy";
     homepage = "http://github.com/zigpy/zigpy-xbee";
     license = licenses.gpl3Plus;
diff --git a/pkgs/development/python-modules/zigpy-zigate/default.nix b/pkgs/development/python-modules/zigpy-zigate/default.nix
index 43f291841ff..a906ff4f419 100644
--- a/pkgs/development/python-modules/zigpy-zigate/default.nix
+++ b/pkgs/development/python-modules/zigpy-zigate/default.nix
@@ -1,22 +1,44 @@
-{ stdenv, buildPythonPackage, fetchPypi
-, pyserial, pyserial-asyncio, zigpy
-, pytest }:
+{ lib
+, asynctest
+, buildPythonPackage
+, fetchFromGitHub
+, pyserial
+, pyserial-asyncio
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, zigpy }:
 
 buildPythonPackage rec {
   pname = "zigpy-zigate";
-  version = "0.6.1";
+  version = "0.6.2";
+  # https://github.com/Martiusweb/asynctest/issues/152
+  # broken by upstream python bug with asynctest and
+  # is used exclusively by home-assistant with python 3.8
+  disabled = pythonOlder "3.8";
 
-  buildInputs = [ pyserial pyserial-asyncio zigpy ];
-  checkInputs = [ pytest ];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0xxqv65drrr96b9ncwsx9ayd369lpwimj1jjb0d7j6l9lil0wmf5";
+  src = fetchFromGitHub {
+    owner = "zigpy";
+    repo = "zigpy-zigate";
+    rev = version;
+    sha256 = "EV6DV+BytUcPMtzYVKDnq/Uv2efg3stjL5uVlL62II4=";
   };
 
-  meta = with stdenv.lib; {
+  buildInputs = [
+    pyserial
+    pyserial-asyncio
+    zigpy
+  ];
+
+  checkInputs = [
+    asynctest
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
     description = "A library which communicates with ZiGate radios for zigpy";
-    homepage = "http://github.com/doudz/zigpy-zigate";
+    homepage = "https://github.com/zigpy/zigpy-zigate";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ etu mvnetbiz ];
     platforms = platforms.linux;
diff --git a/pkgs/development/python-modules/zigpy-znp/default.nix b/pkgs/development/python-modules/zigpy-znp/default.nix
new file mode 100644
index 00000000000..7a942a21372
--- /dev/null
+++ b/pkgs/development/python-modules/zigpy-znp/default.nix
@@ -0,0 +1,55 @@
+{ stdenv
+, async-timeout
+, asynctest
+, buildPythonPackage
+, coloredlogs
+, coveralls
+, fetchFromGitHub
+, pyserial
+, pyserial-asyncio
+, pytest-asyncio
+, pytest-mock
+, pytest-timeout
+, pytestcov
+, pytestCheckHook
+, voluptuous
+, zigpy }:
+
+buildPythonPackage rec {
+  pname = "zigpy-znp";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "zha-ng";
+    repo = "zigpy-znp";
+    rev = "v${version}";
+    sha256 = "a98RYPvcYE1NPERmPo1jPwMf86N+0297u4pOKuaB6u4=";
+  };
+
+  propagatedBuildInputs = [
+    async-timeout
+    coloredlogs
+    pyserial
+    pyserial-asyncio
+    voluptuous
+    zigpy
+  ];
+
+  checkInputs = [
+    asynctest
+    coveralls
+    pytest-asyncio
+    pytest-mock
+    pytest-timeout
+    pytestcov
+    pytestCheckHook
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A library for zigpy which communicates with TI ZNP radios";
+    homepage = "https://github.com/zha-ng/zigpy-znp";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ mvnetbiz ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix
index e85784e51ad..54f0df34016 100644
--- a/pkgs/development/python-modules/zigpy/default.nix
+++ b/pkgs/development/python-modules/zigpy/default.nix
@@ -1,20 +1,44 @@
-{ stdenv, buildPythonPackage, fetchPypi
-, aiohttp, crccheck, pycryptodome, pycrypto, voluptuous
-, pytest, pytest-asyncio, asynctest }:
+{ lib
+, aiohttp
+, asynctest
+, buildPythonPackage
+, crccheck
+, fetchFromGitHub
+, pycrypto
+, pycryptodome
+, pytest-aiohttp
+, pytest-asyncio
+, pytestCheckHook
+, tox
+, voluptuous }:
 
 buildPythonPackage rec {
   pname = "zigpy";
-  version = "0.22.2";
+  version = "0.26.0";
 
-  propagatedBuildInputs = [ aiohttp crccheck pycrypto pycryptodome voluptuous ];
-  checkInputs = [ pytest pytest-asyncio asynctest ];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "a43129932c6e4af0d2d57542218faf7695e2424ce18a5a8915d016e1303f5e44";
+  src = fetchFromGitHub {
+    owner = "zigpy";
+    repo = "zigpy";
+    rev = version;
+    sha256 = "ba8Ru6RCbFOHhctFtklnrxVD3uEpxF4XDvO5RMgXPBs=";
   };
 
-  meta = with stdenv.lib; {
+  propagatedBuildInputs = [
+    aiohttp
+    crccheck
+    pycrypto
+    pycryptodome
+    voluptuous
+  ];
+
+  checkInputs = [
+    asynctest
+    pytest-aiohttp
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
     description = "Library implementing a ZigBee stack";
     homepage = "https://github.com/zigpy/zigpy";
     license = licenses.gpl3Plus;
diff --git a/pkgs/development/tools/analysis/coz/default.nix b/pkgs/development/tools/analysis/coz/default.nix
index 09bb44dc55f..42b47a9a8fd 100644
--- a/pkgs/development/tools/analysis/coz/default.nix
+++ b/pkgs/development/tools/analysis/coz/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "https://github.com/plasma-umass/coz";
-    description = "Coz: Causal Profiling";
+    description = "Profiler based on casual profiling";
     license = stdenv.lib.licenses.bsd2;
     maintainers = with stdenv.lib.maintainers; [ zimbatm ];
   };
diff --git a/pkgs/development/tools/analysis/pev/default.nix b/pkgs/development/tools/analysis/pev/default.nix
index cf09d249a9a..c7e2e27bece 100644
--- a/pkgs/development/tools/analysis/pev/default.nix
+++ b/pkgs/development/tools/analysis/pev/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   installFlags = [ "prefix=$(out)" ];
 
   meta = with stdenv.lib; {
-    description = "pev is a full-featured, open source, multiplatform command line toolkit to work with PE (Portable Executables) binaries";
+    description = "A full-featured, open source, multiplatform command line toolkit to work with PE (Portable Executables) binaries";
     homepage = "http://pev.sourceforge.net/";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/development/tools/build-managers/bloop/default.nix b/pkgs/development/tools/build-managers/bloop/default.nix
index 45612182ed9..61a6b4bed4c 100644
--- a/pkgs/development/tools/build-managers/bloop/default.nix
+++ b/pkgs/development/tools/build-managers/bloop/default.nix
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = "https://scalacenter.github.io/bloop/";
     license = licenses.asl20;
-    description = "Bloop is a Scala build server and command-line tool to make the compile and test developer workflows fast and productive in a build-tool-agnostic way";
+    description = "A Scala build server and command-line tool to make the compile and test developer workflows fast and productive in a build-tool-agnostic way";
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = with maintainers; [ tomahna ];
   };
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index 73e9bc7b560..d06282739af 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -51,15 +51,15 @@ rec {
     };
   };
 
-  gradle_latest = gradle_6_6;
+  gradle_latest = gradle_6_7;
 
-  gradle_6_6 = gradleGen rec {
-    name = "gradle-6.6";
-    nativeVersion = "0.22-milestone-4";
+  gradle_6_7 = gradleGen rec {
+    name = "gradle-6.7";
+    nativeVersion = "0.22-milestone-8";
 
     src = fetchurl {
       url = "https://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "09a0fnz6fn8yaxm3q3iwyjm3nnaz7k8i1xlpc7sm414py043by76";
+      sha256 = "1i6zm55wzy13wvvmf3804b0rs47yrqqablf4gpf374ls05cpgmca";
     };
   };
 
diff --git a/pkgs/development/tools/database/ephemeralpg/default.nix b/pkgs/development/tools/database/ephemeralpg/default.nix
index 53f3c1df628..b2599cce430 100644
--- a/pkgs/development/tools/database/ephemeralpg/default.nix
+++ b/pkgs/development/tools/database/ephemeralpg/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, postgresql, getopt, makeWrapper }:
 stdenv.mkDerivation rec {
   pname = "ephemeralpg";
-  version = "3.0";
+  version = "3.1";
   src = fetchurl {
     url = "http://ephemeralpg.org/code/${pname}-${version}.tar.gz";
-    sha256 = "1j0g7g114ma7y7sadbng5p1ss1zsm9zpicm77qspym6565733vvh";
+    sha256 = "1ap22ki8yz6agd0qybcjgs4b9izw1rwwcgpxn3jah2ccfyax34s6";
   };
   buildInputs = [ makeWrapper ];
   installPhase = ''
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     wrapProgram $out/bin/pg_tmp --prefix PATH : ${stdenv.lib.makeBinPath [ postgresql getopt ]}
   '';
   meta = with stdenv.lib; {
-    description = ''Run tests on an isolated, temporary PostgreSQL database.'';
+    description = "Run tests on an isolated, temporary PostgreSQL database";
     license = licenses.isc;
     homepage = "http://ephemeralpg.org/";
     platforms = platforms.all;
diff --git a/pkgs/development/tools/deadcode/default.nix b/pkgs/development/tools/deadcode/default.nix
index 516eeff2091..014acc89e1f 100644
--- a/pkgs/development/tools/deadcode/default.nix
+++ b/pkgs/development/tools/deadcode/default.nix
@@ -22,7 +22,7 @@ buildGoPackage rec {
   };
 
   meta = with lib; {
-    description = "deadcode is a very simple utility which detects unused declarations in a Go package";
+    description = "Very simple utility which detects unused declarations in a Go package";
     homepage = "https://github.com/remyoudompheng/go-misc/tree/master/deadcode";
     license = licenses.bsd3;
     maintainers = with maintainers; [ kalbasit ];
diff --git a/pkgs/development/tools/errcheck/default.nix b/pkgs/development/tools/errcheck/default.nix
index 01dc924c811..2df473ac596 100644
--- a/pkgs/development/tools/errcheck/default.nix
+++ b/pkgs/development/tools/errcheck/default.nix
@@ -20,7 +20,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   meta = with lib; {
-    description = "errcheck is a program for checking for unchecked errors in go programs";
+    description = "Program for checking for unchecked errors in go programs";
     homepage = "https://github.com/kisielk/errcheck";
     license = licenses.mit;
     maintainers = with maintainers; [ kalbasit ];
diff --git a/pkgs/development/tools/gllvm/default.nix b/pkgs/development/tools/gllvm/default.nix
index 7c4213b4cc0..58416e30a8c 100644
--- a/pkgs/development/tools/gllvm/default.nix
+++ b/pkgs/development/tools/gllvm/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "gllvm";
-  version = "1.2.7";
+  version = "1.2.8";
 
   goPackagePath = "github.com/SRI-CSL/gllvm";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "SRI-CSL";
     repo = "gllvm";
     rev = "v${version}";
-    sha256 = "13cmmgbcdfgyxnxqfrn4m6vf0bhpday8lmrr3sm6rk48g77cq203";
+    sha256 = "090ghg7ivf6snkabba00pn8a9x5wj8dgpdq7qjhmw1lpijd0mq0y";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix
index 1eaa00e8086..743247d6014 100644
--- a/pkgs/development/tools/golangci-lint/default.nix
+++ b/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.31.0";
+  version = "1.32.0";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    sha256 = "10divgsc095jiw7n3gwzikbgvsd0hdwjyv469vq939zm7rqq3acy";
+    sha256 = "157sqpwhb2984yri7w6x6pzp53ql56svv8bvbigcih3syrngxspr";
   };
 
-  vendorSha256 = "1pa99jfz6i696x6v06aq56r0kmxmz4khb1hw7pvxds0bn16a4swr";
+  vendorSha256 = "1caf0flmq032azxwyfq6dvhw757nncxigfkf32s2a6g3jmqr1g3y";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/impl/default.nix b/pkgs/development/tools/impl/default.nix
index 327226fe7a1..825aa0c1fa6 100644
--- a/pkgs/development/tools/impl/default.nix
+++ b/pkgs/development/tools/impl/default.nix
@@ -20,7 +20,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   meta = with lib; {
-    description = "impl generates method stubs for implementing an interface";
+    description = "Generate method stubs for implementing an interface";
     homepage = "https://github.com/josharian/impl";
     license = licenses.mit;
     maintainers = with maintainers; [ kalbasit ];
diff --git a/pkgs/development/tools/jbake/default.nix b/pkgs/development/tools/jbake/default.nix
index ad127b94960..44d537f9762 100644
--- a/pkgs/development/tools/jbake/default.nix
+++ b/pkgs/development/tools/jbake/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    description = "JBake is a Java based, open source, static site/blog generator for developers & designers";
+    description = "Java based, open source, static site/blog generator for developers & designers";
     homepage = "https://jbake.org/";
     license = licenses.mit;
     maintainers = with maintainers; [ moaxcp ];
diff --git a/pkgs/development/tools/minizinc/default.nix b/pkgs/development/tools/minizinc/default.nix
index bf182a1ae41..1d01ef97f40 100644
--- a/pkgs/development/tools/minizinc/default.nix
+++ b/pkgs/development/tools/minizinc/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     homepage = "https://www.minizinc.org/";
-    description = "MiniZinc is a medium-level constraint modelling language";
+    description = "A medium-level constraint modelling language";
 
     longDescription = ''
       MiniZinc is a medium-level constraint modelling
diff --git a/pkgs/development/tools/misc/cli11/default.nix b/pkgs/development/tools/misc/cli11/default.nix
index 0d058ef1f88..25ec42eac8e 100644
--- a/pkgs/development/tools/misc/cli11/default.nix
+++ b/pkgs/development/tools/misc/cli11/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    description = "CLI11 is a command line parser for C++11";
+    description = "Command line parser for C++11";
     homepage = "https://github.com/CLIUtils/CLI11";
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ nand0p ];
diff --git a/pkgs/development/tools/misc/reviewdog/default.nix b/pkgs/development/tools/misc/reviewdog/default.nix
index de8a113d101..fccee0ede2b 100644
--- a/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/pkgs/development/tools/misc/reviewdog/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "reviewdog";
-  version = "0.10.2";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "1xi5dfdy66qa6xvy60fk2lmp9gxyi0nfkyvybcazn8mrd99hfh6l";
+    sha256 = "0n7hk3va25ym8sb900i1s1hjszgwrfl7gfsjbj1m330fidh3q6jc";
   };
 
-  vendorSha256 = "0cxi01jxg89lsk91dv782746i8g9ksanx8igmgafq9vq25lld7yg";
+  vendorSha256 = "0xscirzi0gqww33ngwh29jiylarj0w5snn9kvv43wfrphb6c79s5";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/misc/swig/3.x.nix b/pkgs/development/tools/misc/swig/3.x.nix
index 75b0113b497..853a240ffc3 100644
--- a/pkgs/development/tools/misc/swig/3.x.nix
+++ b/pkgs/development/tools/misc/swig/3.x.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "SWIG, an interface compiler that connects C/C++ code to higher-level languages";
+    description = "An interface compiler that connects C/C++ code to higher-level languages";
     homepage = "http://swig.org/";
     # Different types of licenses available: http://www.swig.org/Release/LICENSE .
     license = licenses.gpl3Plus;
diff --git a/pkgs/development/tools/nsis/default.nix b/pkgs/development/tools/nsis/default.nix
index 33be56c539d..303ea6a00fe 100644
--- a/pkgs/development/tools/nsis/default.nix
+++ b/pkgs/development/tools/nsis/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
   installTargets = [ "install-compiler" ];
 
   meta = with stdenv.lib; {
-    description = "NSIS is a free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge";
+    description = "A free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge";
     homepage = "https://nsis.sourceforge.io/";
     license = licenses.zlib;
     platforms = platforms.linux;
diff --git a/pkgs/development/tools/omniorb/default.nix b/pkgs/development/tools/omniorb/default.nix
index 350407098a4..2ab8fa23dde 100644
--- a/pkgs/development/tools/omniorb/default.nix
+++ b/pkgs/development/tools/omniorb/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   meta = with stdenv.lib; {
-    description = "omniORB is a robust high performance CORBA ORB for C++ and Python. It is freely available under the terms of the GNU Lesser General Public License (for the libraries), and GNU General Public License (for the tools). omniORB is largely CORBA 2.6 compliant";
+    description = "A robust high performance CORBA ORB for C++ and Python. It is freely available under the terms of the GNU Lesser General Public License (for the libraries), and GNU General Public License (for the tools). omniORB is largely CORBA 2.6 compliant";
     homepage    = "http://omniorb.sourceforge.net/";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ smironov ];
diff --git a/pkgs/development/tools/pgloader/default.nix b/pkgs/development/tools/pgloader/default.nix
index 94ba95b2d92..6d4bcaadd11 100644
--- a/pkgs/development/tools/pgloader/default.nix
+++ b/pkgs/development/tools/pgloader/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://pgloader.io/";
-    description = "pgloader loads data into PostgreSQL and allows you to implement Continuous Migration from your current database to PostgreSQL";
+    description = "Loads data into PostgreSQL and allows you to implement Continuous Migration from your current database to PostgreSQL";
     maintainers = with maintainers; [ mguentner ];
     license = licenses.postgresql;
     platforms = platforms.all;
diff --git a/pkgs/development/tools/reftools/default.nix b/pkgs/development/tools/reftools/default.nix
index 440d2f96133..a31108f3381 100644
--- a/pkgs/development/tools/reftools/default.nix
+++ b/pkgs/development/tools/reftools/default.nix
@@ -23,7 +23,7 @@ buildGoModule rec {
   };
 
   meta = with lib; {
-    description = "reftools - refactoring tools for Go";
+    description = "Refactoring tools for Go";
     homepage = "https://github.com/davidrjenni/reftools";
     license = licenses.bsd2;
     maintainers = with maintainers; [ kalbasit ];
diff --git a/pkgs/development/tools/sourcetrail/default.nix b/pkgs/development/tools/sourcetrail/default.nix
index 9e41f209cfd..e6b86e4a85c 100644
--- a/pkgs/development/tools/sourcetrail/default.nix
+++ b/pkgs/development/tools/sourcetrail/default.nix
@@ -1,77 +1,213 @@
-{ stdenv, fetchurl, autoPatchelfHook
-, zlib, expat, dbus, openssl, python3 }:
+{ stdenv, fetchFromGitHub, callPackage, writeScript, cmake, wrapQtAppsHook
+, boost, qt5, llvmPackages, gcc, jdk, pythonPackages, desktop-file-utils
+, shared-mime-info, imagemagick, which, coreutils, maven, fetchpatch }:
+
+let
+  # TODO: remove when version incompatibility issue with python3Packages.jedi is
+  # resolved
+  parso = pythonPackages.callPackage ./parso.nix {};
+  jedi = pythonPackages.callPackage ./jedi.nix { inherit parso; };
+
+  pythonIndexer = pythonPackages.callPackage ./python.nix { inherit jedi parso; };
+  javaIndexer = callPackage ./java.nix {};
+
+  # Upstream script:
+  # https://github.com/CoatiSoftware/Sourcetrail/blob/master/script/update_java_indexer.sh
+  installJavaIndexer = writeScript "update_java_indexer.sh" ''
+    #!${stdenv.shell}
+
+    cd "$(dirname "$0")/.."
+    dst="$out/opt/sourcetrail/share/data/java/lib"
+
+    mkdir -p "$dst"
+    cp "${javaIndexer}/target/java-indexer-1.0.jar" "$dst/java-indexer.jar"
+    cp -r java_indexer/lib/*.jar "$dst"
+  '';
+
+  # Upstream script:
+  # https://github.com/CoatiSoftware/Sourcetrail/blob/master/script/download_python_indexer.sh
+  installPythonIndexer = writeScript "download_python_indexer.sh" ''
+    #!${stdenv.shell}
 
+    mkdir -p $out/opt/sourcetrail/share/data
+    ln -s "${pythonIndexer}/bin" "$out/opt/sourcetrail/share/data/python"
+  '';
+in
 stdenv.mkDerivation rec {
   pname = "sourcetrail";
-  version = "2019.3.46";
+  version = "2020.2.43";
 
-  src = fetchurl {
-    name = "sourtrail.tar.gz";
-    url = "https://www.sourcetrail.com/downloads/${version}/linux/64bit";
-    sha256 = "0dnkxr3fijcsbn6pd20lyxhr9ns6ji1c4dffly9s16yq4x9ad5r4";
+  src = fetchFromGitHub {
+    owner = "CoatiSoftware";
+    repo = "Sourcetrail";
+    rev = "${version}";
+    sha256 = "0jp9y86xzkcxikc1cn4f6gqgg6zdssck08677ldagw25p1zadvzw";
   };
 
-  nativeBuildInputs = [ autoPatchelfHook ];
-  buildInputs = [ zlib expat dbus stdenv.cc.cc openssl python3 ];
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out/bin $out/opt
-
-    mv -v setup/share $out
-    mv -v data/gui/icon/logo_1024_1024.png $out/share/icons/sourcetrail.png
-    mv -v data/gui/icon/project_256_256.png $out/share/icons/project-sourcetrail.png
-
-    mkdir -p $out/share/sourcetrail/doc
-    mv -v README EULA.txt $out/share/sourcetrail/doc
-    mv -v plugin $out/share/sourcetrail
-
-    cp -rv . $out/opt
-
-    rm $out/opt/lib/libssl.so
-    rm $out/opt/lib/platforms/{libqeglfs.so,libqwebgl.so}
-    ln -s ${openssl}/lib/libssl.so $out/opt/lib/libssl.so
-
-    substituteInPlace \
-      $out/share/applications/sourcetrail.desktop \
-      --replace /usr/bin/ $out/bin/
-
-    cat <<EOF > $out/bin/sourcetrail
-    #! ${stdenv.shell} -e
+  patches = let
+    url = commit: "https://github.com/CoatiSoftware/Sourcetrail/commit/${commit}.patch";
+  in [
+    ./disable-updates.patch
+    ./disable-failing-tests.patch # FIXME: 5 test cases failing due to sandbox
+    # TODO: remove on next release
+    (fetchpatch {
+      name = "fix-filecopy.patch";
+      url = url "d079d1787c9e5cadcf41a003666dc0746cc1cda0";
+      sha256 = "0mixy2a4s16kv2q89k7y4dv21wnv2zd86i4gdwn3xz977y8hf92b";
+    })
+    (fetchpatch {
+      name = "fix-broken-test.patch";
+      url = url "85329174bac8a301733100dc4540258f977e2c5a";
+      sha256 = "17l4417sbmkrgr6v3fbazlmkzl9774zrpjv2n9zwfrz52y30f7b9";
+    })
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    jdk
+    wrapQtAppsHook
+    desktop-file-utils
+    imagemagick
+    javaIndexer # the resulting jar file is copied by our install script
+  ] ++ stdenv.lib.optionals doCheck testBinPath;
+  buildInputs = [
+    boost pythonIndexer shared-mime-info
+  ] ++ (with qt5; [ qtbase qtsvg ])
+    ++ (with llvmPackages; [ libclang llvm ]);
+  binPath = [ gcc jdk.jre maven which ];
+  testBinPath = binPath ++ [ coreutils ];
+
+  cmakeFlags = [
+    "-DBoost_USE_STATIC_LIBS=OFF"
+    "-DBUILD_CXX_LANGUAGE_PACKAGE=ON"
+    "-DCMAKE_PREFIX_PATH=${llvmPackages.clang-unwrapped}"
+    "-DBUILD_JAVA_LANGUAGE_PACKAGE=ON"
+    "-DBUILD_PYTHON_LANGUAGE_PACKAGE=ON"
+  ];
+
+  postPatch = let
+    major = stdenv.lib.versions.major version;
+    minor = stdenv.lib.versions.minor version;
+    patch = stdenv.lib.versions.patch version;
+  in ''
+    # Upstream script obtains it's version from git:
+    # https://github.com/CoatiSoftware/Sourcetrail/blob/master/cmake/version.cmake
+    cat > cmake/version.cmake <<EOF
+    set(GIT_BRANCH "")
+    set(GIT_COMMIT_HASH "")
+    set(GIT_VERSION_NUMBER "")
+    set(VERSION_YEAR "${major}")
+    set(VERSION_MINOR "${minor}")
+    set(VERSION_COMMIT "${patch}")
+    set(BUILD_TYPE "Release")
+    set(VERSION_STRING "${major}.${minor}.${patch}")
+    EOF
 
-    # XXX: Sourcetrail somehow copies the initial config files into the home
-    # directory without write permissions. We currently just copy them
-    # ourselves to work around this problem.
-    setup_config() {
-      local src dst
+    # Sourcetrail attempts to copy clang headers from the LLVM store path
+    substituteInPlace CMakeLists.txt \
+      --replace "\''${LLVM_BINARY_DIR}" '${llvmPackages.clang-unwrapped}'
 
-      [ ! -d ~/.config/sourcetrail ] && mkdir -p ~/.config/sourcetrail
-      for src in $out/opt/data/fallback/*; do
-        dst=~/.config/sourcetrail/"\$(basename "\$src")"
-        if [ ! -e "\$dst" ]; then
-          cp -r "\$src" "\$dst"
-        fi
-      done
+    patchShebangs script
+    ln -sf ${installJavaIndexer} script/update_java_indexer.sh
+    ln -sf ${installPythonIndexer} script/download_python_indexer.sh
+  '';
 
-      chmod -R u+w ~/.config/sourcetrail
-    }
+  # Sourcetrail doesn't use the usual cmake install() commands and instead uses
+  # its own bash script for packaging. Since we're not able to reuse the script,
+  # we'll have to roll our own in nixpkgs.
+  #
+  # Sourcetrail currently assumes one of the following two layouts for the
+  # placement of its files:
+  #
+  # AppImage Layout       Traditional Layout
+  # ├── bin/              ├── sourcetrail*
+  # │   └── sourcetrail*  └── data/
+  # └── share/
+  #     └── data/         sourcetrail: application executable
+  #                       data: contains assets exlusive to Sourcetrail
+  #
+  # The AppImage layout is the one currently used by the upstream project for
+  # packaging its Linux port. We can't use this layout as-is for nixpkgs,
+  # because Sourcetrail treating $out/share/data as its own might lead to
+  # conflicts with other packages when linked into a Nix profile.
+  #
+  # On the other hand, the traditional layout isn't used by the upstream project
+  # anymore so there's a risk that it might become unusable at any time in the
+  # future. Since it's hard to detect these problems at build time, it's not a
+  # good idea to use this layout for packaging in nixpkgs.
+  #
+  # Considering the problems with the above layouts, we go with the third
+  # option, a slight variation of the AppImage layout:
+  #
+  # nixpkgs
+  # ├── bin/
+  # │   └── sourcetrail* (wrapper for opt/sourcetrail/bin/sourcetrail)
+  # └── opt/sourcetrail/
+  #     ├── bin/
+  #     │   └── sourcetrail*
+  #     └── share/
+  #         └── data/
+  #
+  # Upstream install script:
+  # https://github.com/CoatiSoftware/Sourcetrail/blob/master/setup/Linux/createPackages.sh
+  installPhase = ''
+    mkdir -p $out/opt/sourcetrail/bin
+    cp app/Sourcetrail $out/opt/sourcetrail/bin/sourcetrail
+    cp app/sourcetrail_indexer $out/opt/sourcetrail/bin/sourcetrail_indexer
+
+    desktop-file-install --dir=$out/share/applications \
+      --set-key Exec --set-value $out/bin/sourcetrail \
+      ../setup/Linux/data/sourcetrail.desktop
+
+    mkdir -p $out/share/mime/packages
+    cp ../setup/Linux/data/sourcetrail-mime.xml $out/share/mime/packages/
+
+    mkdir -p $out/opt/sourcetrail/share
+    cp -R ../bin/app/data $out/opt/sourcetrail/share
+    cp -R ../bin/app/user/projects $out/opt/sourcetrail/share/data/fallback
+    rm $out/opt/sourcetrail/share/data/*_template.xml
+    rm -r $out/opt/sourcetrail/share/data/install
+
+    for size in 48 64 128 256 512; do
+      mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps/
+      convert app/data/gui/icon/logo_1024_1024.png -resize ''${size}x''${size} \
+        $out/share/icons/hicolor/''${size}x''${size}/apps/sourcetrail.png
+    done
+
+    mkdir -p $out/bin
+    makeQtWrapper $out/opt/sourcetrail/bin/sourcetrail $out/bin/sourcetrail \
+      --prefix PATH : ${stdenv.lib.makeBinPath binPath}
+  '';
 
-    [ -d "\$HOME" ] && setup_config
-    export PATH="\$PATH:${python3}/bin"
-    exec "$out/opt/Sourcetrail.sh" "\$@"
-    EOF
+  checkPhase = ''
+    rm -rf ../bin/app/data/{python,java/lib}
+    ln -s $out/opt/sourcetrail/share/data/python ../bin/app/data/python
+    ln -s $out/opt/sourcetrail/share/data/java/lib ../bin/app/data/java/lib
+
+    pushd test
+    # shorten PATH to prevent build failures
+    wrapQtApp ./Sourcetrail_test \
+      --set PATH "" \
+      --prefix PATH : ${stdenv.lib.makeBinPath testBinPath} \
+      --set MAVEN_OPTS "-Dmaven.repo.local=$TMPDIR/m2repo"
+    ./Sourcetrail_test
+    popd
+
+    rm ../bin/app/data/{python,java/lib}
+  '';
 
-    chmod +x $out/bin/sourcetrail
+  # This has to be done manually in the installPhase because the actual binary
+  # lives in $out/opt/sourcetrail/bin, which isn't covered by wrapQtAppsHook
+  dontWrapQtApps = true;
 
-    runHook postInstall
-  '';
+  # FIXME: some test cases are disabled in the patch phase
+  doCheck = true;
 
   meta = with stdenv.lib; {
     homepage = "https://www.sourcetrail.com";
     description = "A cross-platform source explorer for C/C++ and Java";
-    platforms = [ "x86_64-linux" ];
-    license = licenses.unfree;
+    platforms = platforms.all;
+    license = licenses.gpl3;
     maintainers = with maintainers; [ midchildan ];
   };
 }
diff --git a/pkgs/development/tools/sourcetrail/disable-failing-tests.patch b/pkgs/development/tools/sourcetrail/disable-failing-tests.patch
new file mode 100644
index 00000000000..7903642ef58
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/disable-failing-tests.patch
@@ -0,0 +1,48 @@
+diff --git a/src/test/SourceGroupTestSuite.cpp b/src/test/SourceGroupTestSuite.cpp
+index b5c5562a..d56b83bb 100644
+--- a/src/test/SourceGroupTestSuite.cpp
++++ b/src/test/SourceGroupTestSuite.cpp
+@@ -522,6 +522,7 @@ TEST_CASE("sourcegroup java gradle generates expected output")
+ 
+ TEST_CASE("sourcegroup java maven generates expected output")
+ {
++	return;
+ 	std::vector<FilePath> mavenPaths = utility::getMavenExecutablePathDetector()->getPaths();
+ 
+ 	REQUIRE(!mavenPaths.empty());
+diff --git a/src/test/UtilityMavenTestSuite.cpp b/src/test/UtilityMavenTestSuite.cpp
+index f48fe2b6..363ef64a 100644
+--- a/src/test/UtilityMavenTestSuite.cpp
++++ b/src/test/UtilityMavenTestSuite.cpp
+@@ -17,6 +17,7 @@ TEST_CASE("maven path detector is working")
+ 
+ TEST_CASE("maven wrapper detects source directories of simple projects")
+ {
++	return;
+ 	std::shared_ptr<PathDetector> mavenPathDetector = utility::getMavenExecutablePathDetector();
+ 	REQUIRE(!mavenPathDetector->getPaths().empty());
+ 
+@@ -41,6 +42,7 @@ TEST_CASE("maven wrapper detects source directories of simple projects")
+ 
+ TEST_CASE("maven wrapper detects source and test directories of simple projects")
+ {
++	return;
+ 	std::shared_ptr<PathDetector> mavenPathDetector = utility::getMavenExecutablePathDetector();
+ 	REQUIRE(!mavenPathDetector->getPaths().empty());
+ 
+@@ -65,6 +67,7 @@ TEST_CASE("maven wrapper detects source and test directories of simple projects"
+ 
+ TEST_CASE("maven wrapper detects source directories of nested modules")
+ {
++	return;
+ 	std::shared_ptr<PathDetector> mavenPathDetector = utility::getMavenExecutablePathDetector();
+ 	REQUIRE(!mavenPathDetector->getPaths().empty());
+ 
+@@ -101,6 +104,7 @@ TEST_CASE("maven wrapper detects source directories of nested modules")
+ 
+ TEST_CASE("maven wrapper detects source and test directories of nested modules")
+ {
++	return;
+ 	std::shared_ptr<PathDetector> mavenPathDetector = utility::getMavenExecutablePathDetector();
+ 	REQUIRE(!mavenPathDetector->getPaths().empty());
+ 
diff --git a/pkgs/development/tools/sourcetrail/disable-updates.patch b/pkgs/development/tools/sourcetrail/disable-updates.patch
new file mode 100644
index 00000000000..112af857c59
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/disable-updates.patch
@@ -0,0 +1,13 @@
+diff --git a/src/lib/settings/ApplicationSettings.cpp b/src/lib/settings/ApplicationSettings.cpp
+index 1be13ccd..db6098e1 100644
+--- a/src/lib/settings/ApplicationSettings.cpp
++++ b/src/lib/settings/ApplicationSettings.cpp
+@@ -593,7 +593,7 @@ void ApplicationSettings::setUserToken(std::string token)
+ 
+ bool ApplicationSettings::getAutomaticUpdateCheck() const
+ {
+-	return getValue<bool>("user/update_check/automatic", true);
++	return false;
+ }
+ 
+ void ApplicationSettings::setAutomaticUpdateCheck(bool automaticUpdates)
diff --git a/pkgs/development/tools/sourcetrail/java.nix b/pkgs/development/tools/sourcetrail/java.nix
new file mode 100644
index 00000000000..7056dca447f
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/java.nix
@@ -0,0 +1,27 @@
+{ pkgs, javaPackages }:
+
+let
+  javaIndexer = javaPackages.mavenbuild {
+    name = "sourcetrail-java-indexer-${pkgs.sourcetrail.version}";
+    src = pkgs.sourcetrail.src;
+    m2Path = "com/sourcetrail/java-indexer";
+
+    # This doesn't include all required dependencies. We still rely on binary
+    # copies of maven packages included in the source repo for building.
+    mavenDeps = with javaPackages; [
+      mavenCompiler_3_2
+      plexusCompilerApi_2_4
+      plexusCompilerJavac_2_4
+      plexusCompilerManager_2_4
+    ];
+
+    meta = {
+      description = "Java indexer for Sourcetrail";
+    };
+  };
+in
+javaIndexer.overrideAttrs (drv: {
+  postUnpack = ''
+    export sourceRoot=''${sourceRoot}/java_indexer
+  '';
+})
diff --git a/pkgs/development/tools/sourcetrail/jedi.nix b/pkgs/development/tools/sourcetrail/jedi.nix
new file mode 100644
index 00000000000..14a40a6e6db
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/jedi.nix
@@ -0,0 +1,36 @@
+# Taken from a past commit of nixpkgs
+
+{ stdenv, buildPythonPackage, fetchPypi, pytest, glibcLocales, tox, pytestcov, parso }:
+
+buildPythonPackage rec {
+  pname = "jedi";
+
+  # TODO: Remove this package when version incompatibility issue with
+  # python3Packages.jedi is resolved.
+  #
+  # Upstream requirements:
+  # https://github.com/CoatiSoftware/SourcetrailPythonIndexer#requirements
+  version = "0.17.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "86ed7d9b750603e4ba582ea8edc678657fb4007894a12bcf6f4bb97892f31d20";
+  };
+
+  checkInputs = [ pytest glibcLocales tox pytestcov ];
+
+  propagatedBuildInputs = [ parso ];
+
+  checkPhase = ''
+    LC_ALL="en_US.UTF-8" py.test test
+  '';
+
+  # tox required for tests: https://github.com/davidhalter/jedi/issues/808
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/davidhalter/jedi";
+    description = "An autocompletion tool for Python that can be used for text editors";
+    license = licenses.lgpl3Plus;
+  };
+}
diff --git a/pkgs/development/tools/sourcetrail/parso.nix b/pkgs/development/tools/sourcetrail/parso.nix
new file mode 100644
index 00000000000..bd5d5b86ac5
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/parso.nix
@@ -0,0 +1,29 @@
+# Taken from a past commit of nixpkgs
+
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytest
+}:
+
+buildPythonPackage rec {
+  pname = "parso";
+
+  # TODO: Remove along with ./jedi.nix when version compatiblity issue is
+  # resolved.
+  version = "0.7.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "908e9fae2144a076d72ae4e25539143d40b8e3eafbaeae03c1bfe226f4cdf12c";
+  };
+
+  checkInputs = [ pytest ];
+
+  meta = {
+    description = "A Python Parser";
+    homepage = "https://github.com/davidhalter/parso";
+    license = lib.licenses.mit;
+  };
+
+}
diff --git a/pkgs/development/tools/sourcetrail/python.nix b/pkgs/development/tools/sourcetrail/python.nix
new file mode 100644
index 00000000000..113abb77d61
--- /dev/null
+++ b/pkgs/development/tools/sourcetrail/python.nix
@@ -0,0 +1,68 @@
+{ stdenv, lib, fetchFromGitHub, wrapPython, python, jedi, parso, cmake, swig }:
+
+stdenv.mkDerivation rec {
+  pname = "SourcetrailPythonIndexer";
+  version = "v1_db25_p5";
+
+  src = fetchFromGitHub {
+    owner = "CoatiSoftware";
+    repo = pname;
+    rev = version;
+    sha256 = "05hlpd3am029pv1wi6mys3q0ggp64axmg8bdf1fabl9cl9jffscq";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ wrapPython cmake swig ];
+  buildInputs = [ python ];
+  pythonPath = [ jedi parso ];
+
+  dontUseCmakeConfigure = true;
+  cmakeFlags = [
+    "-DBUILD_BINDINGS_PYTHON=1"
+    "-DPYTHON_VERSION=${lib.versions.majorMinor python.version}"
+  ];
+
+  buildPhase = ''
+    pushd SourcetrailDB
+    cmake -Bbuild $cmakeFlags .
+    pushd build
+    make -j $NIX_BUILD_CORES
+    popd
+    popd
+  '';
+
+  checkPhase = ''
+    buildPythonPath "$pythonPath"
+
+    # FIXME: some tests are failing
+    # PYTHONPATH="$program_PYTHONPATH:SourcetrailDB/build/bindings_python" \
+    #   ${python}/bin/python test.py
+    PYTHONPATH="$program_PYTHONPATH:SourcetrailDB/build/bindings_python" \
+      ${python}/bin/python test_shallow.py
+  '';
+
+  installPhase = ''
+    shopt -s extglob
+    mkdir -p $out/{bin,libexec}
+
+    cp !(run).py $out/libexec # copy *.py excluding run.py (needs extglob)
+    cat <(echo '#!/usr/bin/env python') run.py > $out/libexec/run.py
+    chmod +x $out/libexec/run.py
+    ln -s $out/libexec/run.py $out/bin/SourcetrailPythonIndexer
+
+    pushd SourcetrailDB/build/bindings_python
+    cp sourcetraildb.py $out/libexec
+    cp _sourcetraildb* $out/libexec/_sourcetraildb.so
+    popd
+
+    wrapPythonProgramsIn "$out/libexec" "$pythonPath"
+  '';
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Python indexer for Sourcetrail";
+    homepage = "https://github.com/CoatiSoftware/SourcetrailPythonIndexer";
+    license = licenses.gpl3;
+  };
+}
diff --git a/pkgs/development/tools/xqilla/default.nix b/pkgs/development/tools/xqilla/default.nix
index 7d8029ee1f1..e97a6f1cdb7 100644
--- a/pkgs/development/tools/xqilla/default.nix
+++ b/pkgs/development/tools/xqilla/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--with-xerces=${xercesc}" ];
 
   meta = with stdenv.lib; {
-    description = "XQilla is an XQuery and XPath 2 library and command line utility written in C++, implemented on top of the Xerces-C library";
+    description = "An XQuery and XPath 2 library and command line utility written in C++, implemented on top of the Xerces-C library";
     license     = licenses.asl20 ;
     maintainers = with maintainers; [ obadz ];
     platforms   = platforms.all;
diff --git a/pkgs/development/web/insomnia/default.nix b/pkgs/development/web/insomnia/default.nix
index d877aa5331d..0640e099341 100644
--- a/pkgs/development/web/insomnia/default.nix
+++ b/pkgs/development/web/insomnia/default.nix
@@ -1,5 +1,5 @@
 { stdenv, makeWrapper, fetchurl, dpkg, alsaLib, atk, cairo, cups, dbus, expat
-, fontconfig, freetype, gdk-pixbuf, glib, gnome2, nspr, nss, gtk3, gtk2
+, fontconfig, freetype, gdk-pixbuf, glib, gnome2, pango, nspr, nss, gtk3, gtk2
 , at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
 , libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, nghttp2
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
     gdk-pixbuf
     glib
     gnome2.GConf
-    gnome2.pango
+    pango
     gtk2
     gtk3
     gsettings-desktop-schemas
diff --git a/pkgs/development/web/lucky-cli/default.nix b/pkgs/development/web/lucky-cli/default.nix
index 8add66bf998..ffa6fba778a 100644
--- a/pkgs/development/web/lucky-cli/default.nix
+++ b/pkgs/development/web/lucky-cli/default.nix
@@ -2,13 +2,13 @@
 
 crystal.buildCrystalPackage rec {
   pname = "lucky-cli";
-  version = "0.23.1";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     owner = "luckyframework";
     repo = "lucky_cli";
     rev = "v${version}";
-    sha256 = "0xj7mcmz1rxv3ff530q8c5y1y7hccsmr8azk9nhmrk1q355vnxfw";
+    sha256 = "1z1ns6lx5v6nd5s78brpx7jarc9aldca5yrqjrdb14iyw0jlxig4";
   };
 
   # the integration tests will try to clone a remote repos
diff --git a/pkgs/development/web/newman/default.nix b/pkgs/development/web/newman/default.nix
index ed4041ab76f..6aa2413677c 100644
--- a/pkgs/development/web/newman/default.nix
+++ b/pkgs/development/web/newman/default.nix
@@ -12,7 +12,7 @@ in
 nodePackages.newman.override {
   meta = with lib; {
     homepage = "https://www.getpostman.com";
-    description = "Newman is a command-line collection runner for Postman";
+    description = "A command-line collection runner for Postman";
     maintainers = with maintainers; [ freezeboy ];
     license = licenses.asl20;
   };
diff --git a/pkgs/games/chessx/default.nix b/pkgs/games/chessx/default.nix
index 0ff05556cdb..5b3be969cf1 100644
--- a/pkgs/games/chessx/default.nix
+++ b/pkgs/games/chessx/default.nix
@@ -48,7 +48,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "http://chessx.sourceforge.net/";
-    description = "ChessX allows you to browse and analyse chess games";
+    description = "Browse and analyse chess games";
     license = licenses.gpl2;
     maintainers = [ maintainers.luispedro ];
     platforms = platforms.linux;
diff --git a/pkgs/games/easyrpg-player/default.nix b/pkgs/games/easyrpg-player/default.nix
index 79628d0d2ae..f3f039fe78b 100644
--- a/pkgs/games/easyrpg-player/default.nix
+++ b/pkgs/games/easyrpg-player/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "easyrpg-player";
-  version = "0.6.2.1";
+  version = "0.6.2.3";
 
   src = fetchFromGitHub {
     owner = "EasyRPG";
     repo = "Player";
     rev = version;
-    sha256 = "19wpjvlkjmjhdv1dbph6i2da1xx479zhr532x0ili1aphw1j9hi6";
+    sha256 = "103ywad12dcfjpf97kyx22smilqrw1f20xcfvjjr4mm3walc2mdp";
   };
 
   nativeBuildInputs = [ cmake doxygen pkgconfig ];
diff --git a/pkgs/games/lugaru/default.nix b/pkgs/games/lugaru/default.nix
index 6620074418d..d938c031652 100644
--- a/pkgs/games/lugaru/default.nix
+++ b/pkgs/games/lugaru/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DSYSTEM_INSTALL=ON" ];
 
   meta = {
-    description = "Lugaru HD: Third person ninja rabbit fighting game";
+    description = "Third person ninja rabbit fighting game";
     homepage = "https://osslugaru.gitlab.io";
     maintainers = [ maintainers.genesis ];
     platforms = platforms.linux;
diff --git a/pkgs/games/megaglest/default.nix b/pkgs/games/megaglest/default.nix
index c34ca5dee95..b7ab42ed730 100644
--- a/pkgs/games/megaglest/default.nix
+++ b/pkgs/games/megaglest/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "MegaGlest is an entertaining free (freeware and free software) and open source cross-platform 3D real-time strategy (RTS) game";
+    description = "An entertaining free (freeware and free software) and open source cross-platform 3D real-time strategy (RTS) game";
     license = stdenv.lib.licenses.gpl3;
     homepage = "http://megaglest.org/";
     maintainers = [ stdenv.lib.maintainers.matejc ];
diff --git a/pkgs/games/minecraft/default.nix b/pkgs/games/minecraft/default.nix
index 8052b11fb6f..60f89bea0e8 100644
--- a/pkgs/games/minecraft/default.nix
+++ b/pkgs/games/minecraft/default.nix
@@ -10,7 +10,7 @@
 , nss
 , nspr
 , fontconfig
-, gnome2
+, pango
 , cairo
 , expat
 , alsaLib
@@ -59,7 +59,7 @@ let
     freetype
     gdk-pixbuf
     glib
-    gnome2.pango
+    pango
     gtk3-x11
     gtk2-x11
     nspr
diff --git a/pkgs/games/openxray/default.nix b/pkgs/games/openxray/default.nix
index fe2e978c4cc..394edcf1953 100644
--- a/pkgs/games/openxray/default.nix
+++ b/pkgs/games/openxray/default.nix
@@ -50,6 +50,10 @@ in stdenv.mkDerivation rec {
   preConfigure = ''
     substituteInPlace src/xrCore/xrCore.cpp \
       --replace /usr/share $out/share
+
+    # https://github.com/OpenXRay/xray-16/issues/667
+    echo "inline const char* xr_sys_errlist[100] = {};" >> src/Common/PlatformLinux.inl
+    echo "#define _sys_errlist xr_sys_errlist" >> src/Common/PlatformLinux.inl
   '';
 
   postInstall = ''
diff --git a/pkgs/games/pacvim/default.nix b/pkgs/games/pacvim/default.nix
index 4692c360378..6e28753b4f3 100644
--- a/pkgs/games/pacvim/default.nix
+++ b/pkgs/games/pacvim/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/jmoon018/PacVim";
-    description = "PacVim is a game that teaches you vim commands";
+    description = "A game that teaches you vim commands";
     maintainers = with maintainers; [ infinisil ];
     license = licenses.lgpl3;
     platforms = platforms.unix;
diff --git a/pkgs/games/pro-office-calculator/default.nix b/pkgs/games/pro-office-calculator/default.nix
index 7a0e3bec78d..35571ff149a 100644
--- a/pkgs/games/pro-office-calculator/default.nix
+++ b/pkgs/games/pro-office-calculator/default.nix
@@ -15,7 +15,7 @@ mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   meta = with stdenv.lib; {
-    description = "Just an ordinary calculator. Nothing to see here...";
+    description = "A completely normal office calculator";
     homepage = "https://proofficecalculator.com/";
     maintainers = [ maintainers.pmiddend ];
     platforms = platforms.linux;
diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix
index c17439b5e3e..ba6a3601328 100644
--- a/pkgs/games/sgt-puzzles/default.nix
+++ b/pkgs/games/sgt-puzzles/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "sgt-puzzles-r${version}";
-  version = "20191114.1c0c49d";
+  version = "20200610.9aa7b7c";
 
   src = fetchurl {
     url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz";
-    sha256 = "01fi2f3w71bfbgcfr6gxdp5a9cxh4dshbflv83q2j5rxxs2ll870";
+    sha256 = "0rrd1c77ar91zqy4rr4xp1z7x3ywnshlac99cga4hnrgwb7vwl3f";
   };
 
   sgt-puzzles-menu = fetchurl {
diff --git a/pkgs/games/spring/springlobby.nix b/pkgs/games/spring/springlobby.nix
index 9912675ee67..33dc364c5b7 100644
--- a/pkgs/games/spring/springlobby.nix
+++ b/pkgs/games/spring/springlobby.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, cmake, wxGTK30, openal, pkgconfig, curl, libtorrentRasterbar
+{ stdenv, fetchurl, fetchpatch, cmake, wxGTK30, openal, pkgconfig, curl, libtorrentRasterbar
 , libpng, libX11, gettext, boost, libnotify, gtk2, doxygen, spring
 , makeWrapper, glib, minizip, alure, pcre, jsoncpp }:
 
@@ -11,13 +11,20 @@ stdenv.mkDerivation rec {
     sha256 = "1r1g2hw9ipsmsmzbhsi7bxqra1za6x7j1kw12qzl5psqyq8rqbgs";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ cmake pkgconfig gettext doxygen makeWrapper ];
   buildInputs = [
-    cmake wxGTK30 openal curl gettext libtorrentRasterbar pcre jsoncpp
-    boost libpng libX11 libnotify gtk2 doxygen makeWrapper glib minizip alure
+    wxGTK30 openal curl libtorrentRasterbar pcre jsoncpp
+    boost libpng libX11 libnotify gtk2 glib minizip alure
   ];
 
-  patches = [ ./revert_58b423e.patch ./fix-certs.patch ]; # Allows springLobby to continue using system installed spring until #707 is fixed
+  patches = [
+    ./revert_58b423e.patch # Allows springLobby to continue using system installed spring until #707 is fixed
+    ./fix-certs.patch
+    (fetchpatch {
+      url = "https://github.com/springlobby/springlobby/commit/252c4cb156c1442ed9b4faec3f26265bc7c295ff.patch";
+      sha256 = "sha256-Nq1F5fRPnCkZwl9KgrfuUmpIMK3hUOyZQYIKElWpmzU=";
+    })
+  ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix
index 32acef9757b..ecd318e64c6 100644
--- a/pkgs/games/steam/fhsenv.nix
+++ b/pkgs/games/steam/fhsenv.nix
@@ -223,7 +223,7 @@ in buildFHSUserEnv rec {
     mkdir -p $out/share/applications
     ln -s ${steam}/share/icons $out/share
     ln -s ${steam}/share/pixmaps $out/share
-    sed "s,/usr/bin/steam,$out/bin/steam,g" ${steam}/share/applications/steam.desktop > $out/share/applications/steam.desktop
+    sed "s,/usr/bin/steam,steam,g" ${steam}/share/applications/steam.desktop > $out/share/applications/steam.desktop
   '';
 
   profile = ''
diff --git a/pkgs/games/tes3cmd/default.nix b/pkgs/games/tes3cmd/default.nix
index b71f9930cad..3778aadda9c 100644
--- a/pkgs/games/tes3cmd/default.nix
+++ b/pkgs/games/tes3cmd/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "A command line tool for examining and modifying plugins for the Elder Scrolls game Morrowind by Bethesda Softworks.";
+    description = "A command line tool for examining and modifying plugins for the Elder Scrolls game Morrowind by Bethesda Softworks";
     homepage = "https://github.com/john-moonsugar/tes3cmd";
     license = licenses.mit;
     maintainers = [ maintainers.marius851000 ];
diff --git a/pkgs/misc/frescobaldi/default.nix b/pkgs/misc/frescobaldi/default.nix
index 830d5bea36a..82a3aa8c7be 100644
--- a/pkgs/misc/frescobaldi/default.nix
+++ b/pkgs/misc/frescobaldi/default.nix
@@ -29,9 +29,9 @@ buildPythonApplication rec {
 
   meta = with lib; {
     homepage = "https://frescobaldi.org/";
-    description = ''Frescobaldi is a LilyPond sheet music text editor'';
+    description = "A LilyPond sheet music text editor";
     longDescription = ''
-      Powerful text editor with syntax highlighting and automatic completion, 
+      Powerful text editor with syntax highlighting and automatic completion,
       Music view with advanced Point & Click, Midi player to proof-listen
       LilyPond-generated MIDI files, Midi capturing to enter music,
       Powerful Score Wizard to quickly setup a music score, Snippet Manager
diff --git a/pkgs/misc/lightspark/default.nix b/pkgs/misc/lightspark/default.nix
index 833d8a82990..86177892f43 100644
--- a/pkgs/misc/lightspark/default.nix
+++ b/pkgs/misc/lightspark/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, pkgconfig, cmake, curl, zlib, ffmpeg_3, glew, pcre
-, rtmpdump, cairo, boost, SDL2, SDL2_mixer, libjpeg, gnome2, lzma, nasm
+, rtmpdump, cairo, boost, SDL2, SDL2_mixer, libjpeg, pango, lzma, nasm
 , llvm, glibmm
 }:
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     curl zlib ffmpeg_3 glew pcre rtmpdump cairo boost SDL2 SDL2_mixer libjpeg
-    gnome2.pango lzma nasm llvm glibmm
+    pango lzma nasm llvm glibmm
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/misc/screensavers/betterlockscreen/default.nix b/pkgs/misc/screensavers/betterlockscreen/default.nix
index 735a2cd3b76..f090156a85c 100644
--- a/pkgs/misc/screensavers/betterlockscreen/default.nix
+++ b/pkgs/misc/screensavers/betterlockscreen/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = with stdenv.lib; {
-    description = "Betterlockscreen is a simple minimal lock screen which allows you to cache images with different filters and lockscreen with blazing speed";
+    description = "A simple minimal lock screen which allows you to cache images with different filters and lockscreen with blazing speed";
     homepage = "https://github.com/pavanjadhaw/betterlockscreen";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index 98c52a5a0af..88e535da5b0 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -60,18 +60,19 @@ self: super: {
   };
 
   LanguageClient-neovim = let
-    version = "0.1.158";
+    version = "0.1.160";
     LanguageClient-neovim-src = fetchFromGitHub {
       owner = "autozimu";
       repo = "LanguageClient-neovim";
       rev = version;
-      sha256 = "14xggdgp5qw4yj4gdsgr8s2nxm098m88q8rx6fzd2j20njv308ki";
+      sha256 = "143cifahav1pfmpx3j1ihx433jrwxf6z27s0wxndgjkd2plkks58";
     };
     LanguageClient-neovim-bin = rustPlatform.buildRustPackage {
-      name = "LanguageClient-neovim-bin";
+      pname = "LanguageClient-neovim-bin";
+      inherit version;
       src = LanguageClient-neovim-src;
 
-      cargoSha256 = "0nin1gydf6q4mmxljm2xbd1jfl3wpzx3pvlqwspahblv9j2bf5ck";
+      cargoSha256 = "0mf94j85awdcqa6cyb89bipny9xg13ldkznjf002fq747f55my2a";
       buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
       # FIXME: Use impure version of CoreFoundation because of missing symbols.
diff --git a/pkgs/misc/vscode-extensions/default.nix b/pkgs/misc/vscode-extensions/default.nix
index 70c68abe313..53796981e59 100644
--- a/pkgs/misc/vscode-extensions/default.nix
+++ b/pkgs/misc/vscode-extensions/default.nix
@@ -10,6 +10,7 @@ in
 # So an extension's attribute name should be of the form:
 # "${mktplcRef.publisher}.${mktplcRef.name}".
 #
+stdenv.lib.mapAttrs (_n: stdenv.lib.recurseIntoAttrs)
 {
 
   alanz.vscode-hie-server = buildVscodeMarketplaceExtension {
@@ -48,6 +49,26 @@ in
     };
   };
 
+  dhall.dhall-lang = buildVscodeMarketplaceExtension {
+    mktplcRef = {
+      name = "dhall-lang";
+      publisher = "dhall";
+      version = "0.0.4";
+      sha256 = "0sa04srhqmngmw71slnrapi2xay0arj42j4gkan8i11n7bfi1xpf";
+    };
+    meta = { license = stdenv.lib.licenses.mit; };
+  };
+
+  dhall.vscode-dhall-lsp-server = buildVscodeMarketplaceExtension {
+    mktplcRef = {
+      name = "vscode-dhall-lsp-server";
+      publisher = "dhall";
+      version = "0.0.4";
+      sha256 = "1zin7s827bpf9yvzpxpr5n6mv0b5rhh3civsqzmj52mdq365d2js";
+    };
+    meta = { license = stdenv.lib.licenses.mit; };
+  };
+
   formulahendry.auto-close-tag = buildVscodeMarketplaceExtension {
     mktplcRef = {
       name = "auto-close-tag";
diff --git a/pkgs/os-specific/linux/cpuset/default.nix b/pkgs/os-specific/linux/cpuset/default.nix
index 57cffe5f9e0..90352a944d5 100644
--- a/pkgs/os-specific/linux/cpuset/default.nix
+++ b/pkgs/os-specific/linux/cpuset/default.nix
@@ -19,7 +19,7 @@ python2Packages.buildPythonApplication rec {
   };
 
   meta = with stdenv.lib; {
-    description = "Cpuset is a Python application that forms a wrapper around the standard Linux filesystem calls to make using the cpusets facilities in the Linux kernel easier";
+    description = "Python application that forms a wrapper around the standard Linux filesystem calls to make using the cpusets facilities in the Linux kernel easier";
     homepage    = "https://github.com/wykurz/cpuset";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ wykurz ];
diff --git a/pkgs/os-specific/linux/dstat/default.nix b/pkgs/os-specific/linux/dstat/default.nix
index 2e235e27f36..6d2d8eb75b0 100644
--- a/pkgs/os-specific/linux/dstat/default.nix
+++ b/pkgs/os-specific/linux/dstat/default.nix
@@ -12,6 +12,8 @@ python2Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python2Packages; [ python-wifi ];
 
+  patches = [ ./fix_pluginpath.patch ];
+
   makeFlags = [ "prefix=$(out)" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/linux/dstat/fix_pluginpath.patch b/pkgs/os-specific/linux/dstat/fix_pluginpath.patch
new file mode 100644
index 00000000000..06d7793da47
--- /dev/null
+++ b/pkgs/os-specific/linux/dstat/fix_pluginpath.patch
@@ -0,0 +1,15 @@
+diff --git a/dstat b/dstat
+index 3ac7087..c5f089d 100755
+--- a/dstat
++++ b/dstat
+@@ -66,9 +66,7 @@ if sys.version_info < (2, 3):
+ 
+ pluginpath = [
+     os.path.expanduser('~/.dstat/'),                                # home + /.dstat/
+-    os.path.abspath(os.path.dirname(sys.argv[0])) + '/plugins/',    # binary path + /plugins/
+-    '/usr/share/dstat/',
+-    '/usr/local/share/dstat/',
++    os.path.abspath(os.path.dirname(sys.argv[0])) + '/../share/dstat/', # binary path + /../share/dstat/
+ ]
+ 
+ class Options:
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index b056568b166..29f1aad2e48 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -3,15 +3,15 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.9-rc8";
-  extraMeta.branch = "5.9";
+  version = "5.10-rc1";
+  extraMeta.branch = "5.10";
 
   # modDirVersion needs to be x.y.z, will always add .0
   modDirVersion = if (modDirVersionArg == null) then builtins.replaceStrings ["-"] [".0-"] version else modDirVersionArg;
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "0yhjanmrg0cjmdn7yq8nx0h7q3aq9cimqhn9k4nis1a976p8wpgw";
+    sha256 = "1s4ywf93xrlkjjq3c4142qhmsvx3kl0xwkbc09ss6gln8lwqnga8";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index 92dc334135a..7a91705b617 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -233,10 +233,10 @@ let
         rm -fR drivers
 
         # Keep all headers
-        find .  -type f -name '*.h' -print0 | xargs -0 chmod u-w
+        find .  -type f -name '*.h' -print0 | xargs -0 -r chmod u-w
 
         # Keep linker scripts (they are required for out-of-tree modules on aarch64)
-        find .  -type f -name '*.lds' -print0 | xargs -0 chmod u-w
+        find .  -type f -name '*.lds' -print0 | xargs -0 -r chmod u-w
 
         # Keep root and arch-specific Makefiles
         chmod u-w Makefile
@@ -246,7 +246,7 @@ let
         chmod u-w -R scripts
 
         # Delete everything not kept
-        find . -type f -perm -u=w -print0 | xargs -0 rm
+        find . -type f -perm -u=w -print0 | xargs -0 -r rm
 
         # Delete empty directories
         find -empty -type d -delete
diff --git a/pkgs/servers/bazarr/default.nix b/pkgs/servers/bazarr/default.nix
index 92ca263f46f..f220f4002a0 100644
--- a/pkgs/servers/bazarr/default.nix
+++ b/pkgs/servers/bazarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bazarr";
-  version = "0.9.0.2";
+  version = "0.9.0.5";
 
   src = fetchurl {
     url = "https://github.com/morpheus65535/bazarr/archive/v${version}.tar.gz";
-    sha256 = "1lvldklj61hg9h1m0ixaa4zcf4ggdj6wf4myhwwampq4bmr2havj";
+    sha256 = "1mm8qghkif48jr7fq28kp7zk5x71zm43isf0a96crpi9qi91sdd5";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/caddy/default.nix b/pkgs/servers/caddy/default.nix
index a4e787db739..37f3f1082ec 100644
--- a/pkgs/servers/caddy/default.nix
+++ b/pkgs/servers/caddy/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "caddy";
-  version = "2.2.0";
+  version = "2.2.1";
 
   subPackages = [ "cmd/caddy" ];
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     owner = "caddyserver";
     repo = pname;
     rev = "v${version}";
-    sha256 = "086zgbwb3v11gik2w024p7m7ywkzn0w27y6hrngd4rxylj7jq7c8";
+    sha256 = "065kxnyapjk4r07qrr55zs5w72p8rb8mapq3dh9lr1y13b8sgka9";
   };
 
   vendorSha256 = "1rm7v03v6rf9fdqrrl639z8a46cdzswjp8rdpygcsndqfznn5w7b";
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index 2afc5da51f5..16d031d49fe 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -10,11 +10,11 @@ assert enablePython -> python3 != null;
 
 stdenv.mkDerivation rec {
   pname = "bind";
-  version = "9.16.7";
+  version = "9.16.8";
 
   src = fetchurl {
     url = "https://downloads.isc.org/isc/bind9/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz";
+    sha256 = "0ccdbqmpvnxlbrxjsx2w8ir4xh961svzcw7n87n8dglj6rb9r6wy";
   };
 
   outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ];
diff --git a/pkgs/servers/dns/dnsdist/default.nix b/pkgs/servers/dns/dnsdist/default.nix
index 3f81ecdf6a9..b15b0bcd19f 100644
--- a/pkgs/servers/dns/dnsdist/default.nix
+++ b/pkgs/servers/dns/dnsdist/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dnsdist";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/dnsdist-${version}.tar.bz2";
-    sha256 = "0n3vy84kczvbwbzmr1d2c9lh3im77gz83wczj0im4zs91kpw81rc";
+    sha256 = "1wgv19b6y4fp5x1z54psaaialji2rckl5vdh156kyw47k9r5krya";
   };
 
   nativeBuildInputs = [ pkgconfig protobuf ];
diff --git a/pkgs/servers/hitch/default.nix b/pkgs/servers/hitch/default.nix
index 89aa63f35bd..d049317c031 100644
--- a/pkgs/servers/hitch/default.nix
+++ b/pkgs/servers/hitch/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   passthru.tests.hitch = nixosTests.hitch;
 
   meta = with stdenv.lib; {
-    description = "Hitch is a libev-based high performance SSL/TLS proxy by Varnish Software";
+    description = "Libev-based high performance SSL/TLS proxy by Varnish Software";
     homepage = "https://hitch-tls.org/";
     license = licenses.bsd2;
     maintainers = [ maintainers.jflanglois ];
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index d6f08ffd918..a55b695b457 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -36,7 +36,7 @@
     "apcupsd" = ps: with ps; [ ]; # missing inputs: apcaccess
     "api" = ps: with ps; [ aiohttp-cors ];
     "apns" = ps: with ps; [ ]; # missing inputs: apns2
-    "apple_tv" = ps: with ps; [ aiohttp-cors netdisco zeroconf ]; # missing inputs: pyatv
+    "apple_tv" = ps: with ps; [ aiohttp-cors netdisco pyatv zeroconf ];
     "apprise" = ps: with ps; [ apprise ];
     "aprs" = ps: with ps; [ ]; # missing inputs: aprslib geopy
     "aqualogic" = ps: with ps; [ ]; # missing inputs: aqualogic
@@ -956,7 +956,7 @@
     "zeroconf" = ps: with ps; [ aiohttp-cors zeroconf ];
     "zerproc" = ps: with ps; [ ]; # missing inputs: pyzerproc
     "zestimate" = ps: with ps; [ xmltodict ];
-    "zha" = ps: with ps; [ bellows pyserial zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy ]; # missing inputs: zigpy-znp
+    "zha" = ps: with ps; [ bellows pyserial zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ];
     "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac
     "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl
     "zodiac" = ps: with ps; [ ];
diff --git a/pkgs/servers/icingaweb2/default.nix b/pkgs/servers/icingaweb2/default.nix
index 6414d445a00..eaf16e38804 100644
--- a/pkgs/servers/icingaweb2/default.nix
+++ b/pkgs/servers/icingaweb2/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, fetchFromGitHub, makeWrapper, php }: with lib; stdenv.mkDerivation rec {
   pname = "icingaweb2";
-  version = "2.8.1";
+  version = "2.8.2";
 
   src = fetchFromGitHub {
     owner = "Icinga";
     repo = "icingaweb2";
     rev = "v${version}";
-    sha256 = "1hmw681a2qv578npr389szkxpbhcfqzq9c1wzkbjjm3avnvi37mf";
+    sha256 = "1zrni1hzblaangiqm7iqbvg2h9rdc2l3pzzymz52r7mri4qnr4s8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 89bf306fefa..3058ef5a4a6 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jackett";
-  version = "0.16.1757";
+  version = "0.16.1883";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "1scf7sh4cpq0drz6jn60l6163g0dcqvp6ifq5gyj3484zwpxmnsf";
+    sha256 = "1l16zzjyvwq6rd4q6dg4m0a81fiw50c7naksa43g3yhv7wg7wfll";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/livepeer/default.nix b/pkgs/servers/livepeer/default.nix
index 60122d6b451..5430c7ddf06 100644
--- a/pkgs/servers/livepeer/default.nix
+++ b/pkgs/servers/livepeer/default.nix
@@ -4,16 +4,16 @@
 
 buildGoModule rec {
   pname = "livepeer";
-  version = "0.5.10";
+  version = "0.5.11";
 
   runVend = true;
-  vendorSha256 = "0i5977skw4b209zvdvgvzfnhqb574067mmfk2gf9y590lgnr86f7";
+  vendorSha256 = "13cgwpf3v4vlvb0mgdxsdybpghx1cp3fzkdwmq8b193a8dcl8s63";
 
   src = fetchFromGitHub {
     owner = "livepeer";
     repo = "go-livepeer";
     rev = "v${version}";
-    sha256 = "0qccvnk2yyly7ha9lkcpd6zj5n9xnhdjkl3nllb9xziidsq6p65h";
+    sha256 = "12vbnl74z6jk77bnws8a5z5n7bnhkbb4ngzxfir5l3g9zrpsc5p3";
   };
 
   # livepeer_cli has a vendoring problem
diff --git a/pkgs/servers/monitoring/longview/default.nix b/pkgs/servers/monitoring/longview/default.nix
index c5c284b7f02..10f0f248a80 100644
--- a/pkgs/servers/monitoring/longview/default.nix
+++ b/pkgs/servers/monitoring/longview/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://www.linode.com/longview";
-    description = "Longview collects all of your system-level metrics and sends them to Linode";
+    description = "Collects all of your system-level metrics and sends them to Linode";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rvl ];
     inherit version;
diff --git a/pkgs/servers/monitoring/zabbix/versions.nix b/pkgs/servers/monitoring/zabbix/versions.nix
index 79d2916c05a..a19b2432bec 100644
--- a/pkgs/servers/monitoring/zabbix/versions.nix
+++ b/pkgs/servers/monitoring/zabbix/versions.nix
@@ -1,12 +1,12 @@
 generic: {
   v50 = generic {
-    version = "5.0.4";
-    sha256 = "0ivigwqcdfzx58vx5crixjsr4fh8l4bcf1wvnpf6xg46p0zninn1";
+    version = "5.0.5";
+    sha256 = "104jxyaclx92pyas7kqz357da7qjcw44yx3yi7vqlc7h5ch3avgc";
   };
 
   v40 = generic {
-    version = "4.0.25";
-    sha256 = "1w9k0pw3w0klpzw7ny8igv5a97icv2jl4xicbgyr5464if8sw9ck";
+    version = "4.0.26";
+    sha256 = "0mbk8afkwv208hwyl0zr2l4sib65z7n9ykisznk6pjzb9kdl73s1";
   };
 
   v30 = generic {
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index f7cc688dc56..d994ba99dfc 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -24,7 +24,6 @@
 , python3Packages # for sphinx-build
 # For tests
 , gtest
-, fetchpatch # used to fetch an upstream patch fixing a failing test
 , zip
 }:
 
diff --git a/pkgs/servers/news/leafnode/default.nix b/pkgs/servers/news/leafnode/default.nix
index 76ce8d2d573..4095b95ad96 100644
--- a/pkgs/servers/news/leafnode/default.nix
+++ b/pkgs/servers/news/leafnode/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://leafnode.sourceforge.net/";
-    description = "Leafnode implements a store & forward NNTP proxy";
+    description = "Implementation of a store & forward NNTP proxy";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/servers/openbgpd/default.nix b/pkgs/servers/openbgpd/default.nix
index d753cb47a68..7ca71c12775 100644
--- a/pkgs/servers/openbgpd/default.nix
+++ b/pkgs/servers/openbgpd/default.nix
@@ -36,7 +36,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "OpenBGPD is 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/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 3b86d8a7394..cbfae1d5e6e 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -15,7 +15,7 @@ let # in mariadb # spans the whole file
 
 libExt = stdenv.hostPlatform.extensions.sharedLibrary;
 
-mytopEnv = perl.withPackages (p: with p; [ DataDumper DBDmysql DBI TermReadKey ]);
+mytopEnv = perl.withPackages (p: with p; [ DBDmysql DBI TermReadKey ]);
 
 mariadb = server // {
   inherit client; # MariaDB Client
diff --git a/pkgs/servers/sql/postgresql/ext/periods.nix b/pkgs/servers/sql/postgresql/ext/periods.nix
index cf859a4bde0..c2277019f89 100644
--- a/pkgs/servers/sql/postgresql/ext/periods.nix
+++ b/pkgs/servers/sql/postgresql/ext/periods.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "periods";
-  version = "1.1";
+  version = "1.2";
 
   src = fetchFromGitHub {
     owner = "xocolatl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0gdnlbh7kp7c0kvsrri2kxdbmm2qgib1qqpl37203z6c3fk45kfh";
+    sha256 = "13aix61qzlb7cs042dz4x0z4sc2xayg4nzi2cks46zibxm5i4gzm";
   };
 
   buildInputs = [ postgresql ];
diff --git a/pkgs/servers/sql/postgresql/ext/pg_similarity.nix b/pkgs/servers/sql/postgresql/ext/pg_similarity.nix
index 301160ce132..70cbb656e0a 100644
--- a/pkgs/servers/sql/postgresql/ext/pg_similarity.nix
+++ b/pkgs/servers/sql/postgresql/ext/pg_similarity.nix
@@ -18,7 +18,8 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = ''
+    description = "An extension to support similarity queries on PostgreSQL";
+    longDescription = ''
        pg_similarity is an extension to support similarity queries on PostgreSQL. The implementation
        is tightly integrated in the RDBMS in the sense that it defines operators so instead of the traditional
        operators (= and <>) you can use ~~~ and ~!~ (any of these operators represents a similarity function).
diff --git a/pkgs/servers/sql/postgresql/ext/pgtap.nix b/pkgs/servers/sql/postgresql/ext/pgtap.nix
index d86c7098401..69f46ba3e90 100644
--- a/pkgs/servers/sql/postgresql/ext/pgtap.nix
+++ b/pkgs/servers/sql/postgresql/ext/pgtap.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "pgTAP is a unit testing framework for PostgreSQL";
+    description = "A unit testing framework for PostgreSQL";
     longDescription = ''
       pgTAP is a unit testing framework for PostgreSQL written in PL/pgSQL and PL/SQL.
       It includes a comprehensive collection of TAP-emitting assertion functions,
diff --git a/pkgs/servers/web-apps/engelsystem/default.nix b/pkgs/servers/web-apps/engelsystem/default.nix
index 8ef6a9afa0e..ad3a6995800 100644
--- a/pkgs/servers/web-apps/engelsystem/default.nix
+++ b/pkgs/servers/web-apps/engelsystem/default.nix
@@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description =
-      "Coordinate your helpers in teams, assign them to work shifts or let them decide for themselves when and where they want to help with what";
+      "Coordinate your volunteers in teams, assign them to work shifts or let them decide for themselves when and where they want to help with what";
     license = licenses.gpl2;
     homepage = "https://engelsystem.de";
     maintainers = with maintainers; [ kloenk ];
diff --git a/pkgs/servers/web-apps/jirafeau/default.nix b/pkgs/servers/web-apps/jirafeau/default.nix
index e0b119da6d8..1f3dd2e9012 100644
--- a/pkgs/servers/web-apps/jirafeau/default.nix
+++ b/pkgs/servers/web-apps/jirafeau/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Jirafeau is a web site permitting to upload a file in a simple way and give an unique link to it";
+    description = "Website permitting upload of a file in a simple way and giving a unique link to it";
     license = licenses.agpl3;
     homepage = "https://gitlab.com/mojo42/Jirafeau";
     platforms = platforms.all;
diff --git a/pkgs/servers/web-apps/sogo/default.nix b/pkgs/servers/web-apps/sogo/default.nix
index 2e97ab31725..aa2a9fc9258 100644
--- a/pkgs/servers/web-apps/sogo/default.nix
+++ b/pkgs/servers/web-apps/sogo/default.nix
@@ -67,7 +67,7 @@ with lib; gnustep.stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "SOGo is a very fast and scalable modern collaboration suite (groupware)";
+    description = "A very fast and scalable modern collaboration suite (groupware)";
     license = with licenses; [ gpl2 lgpl21 ];
     homepage = "https://sogo.nu/";
     platforms = platforms.linux;
diff --git a/pkgs/shells/es/default.nix b/pkgs/shells/es/default.nix
index 761846843fe..992fdc93dcb 100644
--- a/pkgs/shells/es/default.nix
+++ b/pkgs/shells/es/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   configureFlags = [ "--with-readline" ];
 
   meta = with stdenv.lib; {
-    description = "Es is an extensible shell";
+    description = "An extensible shell with higher order functions";
     longDescription =
       ''
         Es is an extensible shell. The language was derived
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index d02e6267940..0f34b08785d 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-18";
+  version = "2020-10-27";
   pname = "oh-my-zsh";
-  rev = "7525b1d533b927bc40e3cfb29e399e5f2e0828d4";
+  rev = "d05544562532fdf4d5f4a4d4eba01f4263e17cc7";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "ohmyzsh";
     repo = "ohmyzsh";
-    sha256 = "1a92k8yv7zs830z33v9f4aqq1cv2gmvib1x05vb0kzynwv7p3gmd";
+    sha256 = "1mzbic14ilka454dyv6ksxpchmswqn7w4d7sa9067ikh1kjb7s86";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/X11/x11spice/default.nix b/pkgs/tools/X11/x11spice/default.nix
index 23af2ac44ca..33bc9110848 100644
--- a/pkgs/tools/X11/x11spice/default.nix
+++ b/pkgs/tools/X11/x11spice/default.nix
@@ -24,10 +24,7 @@ stdenv.mkDerivation rec {
   NIX_LDFLAGS = "-lpthread";
 
   meta = with stdenv.lib; {
-    description = ''
-      x11spice will enable a running X11 desktop to be available
-      via a Spice server
-    '';
+    description = "Enable a running X11 desktop to be available via a Spice server";
     homepage = "https://gitlab.freedesktop.org/spice/x11spice";
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/tools/admin/chamber/default.nix b/pkgs/tools/admin/chamber/default.nix
index fb21bda4150..7a80ed37188 100644
--- a/pkgs/tools/admin/chamber/default.nix
+++ b/pkgs/tools/admin/chamber/default.nix
@@ -20,7 +20,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description =
-      "Chamber is a tool for managing secrets by storing them in AWS SSM Parameter Store.";
+      "A tool for managing secrets by storing them in AWS SSM Parameter Store";
     homepage = "https://github.com/segmentio/chamber";
     license = licenses.mit;
     maintainers = with maintainers; [ kalekseev ];
diff --git a/pkgs/tools/admin/oxidized/default.nix b/pkgs/tools/admin/oxidized/default.nix
index 01129c5afb1..022b304a845 100644
--- a/pkgs/tools/admin/oxidized/default.nix
+++ b/pkgs/tools/admin/oxidized/default.nix
@@ -11,7 +11,7 @@ bundlerApp {
   passthru.updateScript = bundlerUpdateScript "oxidized";
 
   meta = with lib; {
-    description = "Oxidized is a network device configuration backup tool. It's a RANCID replacement!";
+    description = "A network device configuration backup tool. It's a RANCID replacement!";
     homepage    = "https://github.com/ytti/oxidized";
     license     = licenses.asl20;
     maintainers = with maintainers; [ willibutz nicknovitski ];
diff --git a/pkgs/tools/audio/mpd-mpris/default.nix b/pkgs/tools/audio/mpd-mpris/default.nix
index 79387d9ad1f..c66a12dadd3 100644
--- a/pkgs/tools/audio/mpd-mpris/default.nix
+++ b/pkgs/tools/audio/mpd-mpris/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "mpd-mpris";
-  version = "0.2.4";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "natsukagami";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1cr5j2z2ynj1hwkjzi5amcg59vmgazsci41v6vpsj119g7psjmzm";
+    sha256 = "1kzjbv04b2garb99l64wdq8yksnm4pbhkgyzh89j5j3gb9k55zal";
   };
 
-  vendorSha256 = "108yjymp64iqx1b2wqjbkmbm2w199wq46g7hrmqhcziv6f4aqljp";
+  vendorSha256 = "1ggrqwd3h602rav1dc3amsf4wxsq8mdq4ijkdsg759sqhpzl6rqs";
 
   doCheck = false;
 
diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix
index 1f379feece4..8689bc9cd86 100644
--- a/pkgs/tools/backup/dar/default.nix
+++ b/pkgs/tools/backup/dar/default.nix
@@ -8,12 +8,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "2.6.10";
+  version = "2.6.12";
   pname = "dar";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${pname}-${version}.tar.gz";
-    sha256 = "1ryj4xxar18hshg38j1ljhplypgmfprwqn72k1jwxi28qravg80n";
+    sha256 = "0jwgaim2p93skdpjwiz5qgibd3j9965ycqn47wrrjlcvzk93mvyk";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/tools/backup/dirvish/default.nix b/pkgs/tools/backup/dirvish/default.nix
index 9b138d48f21..c762da1a5fc 100644
--- a/pkgs/tools/backup/dirvish/default.nix
+++ b/pkgs/tools/backup/dirvish/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Dirvish is a fast, disk based, rotating network backup system";
+    description = "Fast, disk based, rotating network backup system";
     homepage = "http://dirvish.org/";
     license = stdenv.lib.licenses.osl2;
     platforms = platforms.linux;
diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix
index aa8693b365a..ac50f3667c4 100644
--- a/pkgs/tools/bluetooth/blueman/default.nix
+++ b/pkgs/tools/bluetooth/blueman/default.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "blueman";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchurl {
     url = "https://github.com/blueman-project/blueman/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1pngqbwapbvywhkmflapqvs0wa0af7d1a87wy56l5hg2r462xl1v";
+    sha256 = "1nk46s1s8yrlqv37sc7la05nnn7sdgqhkrcdm98qin34llwkv70x";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix
index 5cf88288d81..0b6082bb578 100644
--- a/pkgs/tools/compression/xz/default.nix
+++ b/pkgs/tools/compression/xz/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = "https://tukaani.org/xz/";
-    description = "XZ, general-purpose data compression software, successor of LZMA";
+    description = "A general-purpose data compression software, successor of LZMA";
 
     longDescription =
       '' XZ Utils is free general-purpose data compression software with high
diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix
index 8ff72421a59..3358d1c0277 100644
--- a/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "btrfs-progs";
-  version = "5.7";
+  version = "5.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "0p6ycbr8sw5bq3mj84gh9rvh5sk8sjr2l9hb9dhm4j41ij5h8bsw";
+    sha256 = "14d7hz07kfczfgmy1ixkgccjn393gpkjn7givz5kwxddcnk5i4xq";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/httpfs/default.nix b/pkgs/tools/filesystems/httpfs/default.nix
index d97b05abb6c..23edb817579 100644
--- a/pkgs/tools/filesystems/httpfs/default.nix
+++ b/pkgs/tools/filesystems/httpfs/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = {
-    description = "HTTPFS2, a FUSE-based HTTP file system for Linux";
+    description = "FUSE-based HTTP filesystem for Linux";
 
     homepage = "http://httpfs.sourceforge.net/";
 
diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix
index df3dd661d75..2be21cea3a5 100644
--- a/pkgs/tools/filesystems/moosefs/default.nix
+++ b/pkgs/tools/filesystems/moosefs/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "moosefs";
-  version = "3.0.114";
+  version = "3.0.115";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0bilrzzlg599xy21cm7r0xb2sanngr74j3z03xgybcm10kl97i7j";
+    sha256 = "0dap9dqwwx8adma6arxg015riqc86cmjv2m44hk0kz7s24h79ipq";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
diff --git a/pkgs/tools/graphics/dpic/default.nix b/pkgs/tools/graphics/dpic/default.nix
index 7b7eea3d509..ea65f3dbb55 100644
--- a/pkgs/tools/graphics/dpic/default.nix
+++ b/pkgs/tools/graphics/dpic/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dpic";
-  version = "2020.06.01";
+  version = "2020.09.15";
 
   src = fetchurl {
     url = "https://ece.uwaterloo.ca/~aplevich/dpic/${pname}-${version}.tar.gz";
-    sha256 = "1gbkpbjwjaaifxff8amm9b47dynq4l4698snjdgnn4flndw62q88";
+    sha256 = "0gmmp4dlir3bn892nm55a3q8cfsj8yg7fp1dixmhsdhsrgmg1b83";
   };
 
   # The prefix passed to configure is not used.
diff --git a/pkgs/tools/graphics/optar/default.nix b/pkgs/tools/graphics/optar/default.nix
index 4eee8acb979..3061a5cebaf 100644
--- a/pkgs/tools/graphics/optar/default.nix
+++ b/pkgs/tools/graphics/optar/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    description = "Optar stands for OPTical ARchiver - it's a codec for encoding data on paper";
+    description = "OPTical ARchiver - it's a codec for encoding data on paper";
     homepage = "http://ronja.twibright.com/optar/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/tools/graphics/pfstools/default.nix b/pkgs/tools/graphics/pfstools/default.nix
index 1c437a3f05c..f570251374c 100644
--- a/pkgs/tools/graphics/pfstools/default.nix
+++ b/pkgs/tools/graphics/pfstools/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, cmake, pkgconfig, darwin
+{ stdenv, mkDerivation, fetchurl, cmake, pkgconfig, darwin
 , openexr, zlib, imagemagick, libGLU, libGL, freeglut, fftwFloat
-, fftw, gsl, libexif, perl, opencv2, qt5, netpbm
+, fftw, gsl, libexif, perl, opencv2, qtbase, netpbm
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "pfstools";
   version = "2.1.0";
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [
     openexr zlib imagemagick fftwFloat
-    fftw gsl libexif perl opencv2 qt5.qtbase netpbm
+    fftw gsl libexif perl opencv2 qtbase netpbm
   ] ++ (if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [
     OpenGL GLUT
   ]) else [
diff --git a/pkgs/tools/misc/bdf2sfd/default.nix b/pkgs/tools/misc/bdf2sfd/default.nix
index e7a9d98aaf2..09616499045 100644
--- a/pkgs/tools/misc/bdf2sfd/default.nix
+++ b/pkgs/tools/misc/bdf2sfd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bdf2sfd";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "fcambus";
     repo = pname;
     rev = version;
-    sha256 = "0v1kkds35qfyv1h5kxc2m7f2gsprg9c7jzpsm3p4f71qn982wry6";
+    sha256 = "1lg3yabnf26lghlrmhpq7hbhydmw85q0k64246b8fwv1dnxc7afd";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/tools/misc/birdfont/default.nix b/pkgs/tools/misc/birdfont/default.nix
index 7cec0cab996..c3361739f0b 100644
--- a/pkgs/tools/misc/birdfont/default.nix
+++ b/pkgs/tools/misc/birdfont/default.nix
@@ -4,11 +4,11 @@ gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "birdfont";
-  version = "2.29.0";
+  version = "2.29.1";
 
   src = fetchurl {
     url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "18z3qbrsbfpn00c4xq3ck1mnmvrnqgl9g1s7m4dgc1871fi6sv8w";
+    sha256 = "0620bppcbm9pb8l0d4sc56gfwkr97gw4zjirjz5ikk5lj0m801yi";
   };
 
   nativeBuildInputs = [ python3 pkgconfig vala_0_44 gobject-introspection wrapGAppsHook ];
diff --git a/pkgs/tools/misc/byobu/default.nix b/pkgs/tools/misc/byobu/default.nix
index ad17c5edd6e..695ae54d876 100644
--- a/pkgs/tools/misc/byobu/default.nix
+++ b/pkgs/tools/misc/byobu/default.nix
@@ -1,5 +1,11 @@
-{ stdenv, fetchurl, python3, perl, textual-window-manager }:
+{ stdenv, fetchurl, makeWrapper
+, ncurses, python3, perl, textual-window-manager
+, gettext, vim, bc, screen }:
 
+let
+  inherit (stdenv) lib;
+  pythonEnv = python3.withPackages (ps: with ps; [ snack ]);
+in
 stdenv.mkDerivation rec {
   version = "5.133";
   name = "byobu-" + version;
@@ -11,26 +17,59 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  buildInputs = [ python3 perl ];
-  propagatedBuildInputs = [ textual-window-manager ];
+  buildInputs = [ perl makeWrapper gettext ];
+  propagatedBuildInputs = [ textual-window-manager screen ];
 
-  meta = {
+  postPatch = ''
+    substituteInPlace usr/bin/byobu-export.in \
+      --replace "gettext" "${gettext}/bin/gettext"
+    substituteInPlace usr/lib/byobu/menu \
+      --replace "gettext" "${gettext}/bin/gettext"
+  '';
+
+  postInstall = ''
+    # Byobu does not compile its po files for some reason
+    for po in po/*.po; do
+      lang=''${po#po/}
+      lang=''${lang%.po}
+      # Path where byobu looks for translations as observed in the source code and strace
+      mkdir -p $out/share/byobu/po/$lang/LC_MESSAGES/
+      msgfmt $po -o $out/share/byobu/po/$lang/LC_MESSAGES/byobu.mo
+    done
+
+    # Override the symlinks otherwise they mess with the wrapping
+    cp --remove-destination $out/bin/byobu $out/bin/byobu-screen
+    cp --remove-destination $out/bin/byobu $out/bin/byobu-tmux
+
+    for i in $out/bin/byobu*; do
+      # We don't use the usual ".$package-wrapped" because arg0 within the shebang scripts
+      # points to the filename and byobu matches against this to know which backend
+      # to start with
+      file=".$(basename $i)"
+      mv $i $out/bin/$file
+      makeWrapper "$out/bin/$file" "$out/bin/$(basename $i)" --argv0 $(basename $i) \
+        --set BYOBU_PATH ${lib.escapeShellArg (lib.makeBinPath [ vim bc ])} \
+        --set BYOBU_PYTHON "${pythonEnv}/bin/python"
+    done
+  '';
+
+  meta = with stdenv.lib; {
     homepage = "https://launchpad.net/byobu/";
     description = "Text-based window manager and terminal multiplexer";
 
     longDescription =
-      ''Byobu is a GPLv3 open source text-based window manager and terminal multiplexer. 
-        It was originally designed to provide elegant enhancements to the otherwise functional, 
-        plain, practical GNU Screen, for the Ubuntu server distribution. 
-        Byobu now includes an enhanced profiles, convenient keybindings, 
-        configuration utilities, and toggle-able system status notifications for both 
-        the GNU Screen window manager and the more modern Tmux terminal multiplexer, 
+      ''Byobu is a GPLv3 open source text-based window manager and terminal multiplexer.
+        It was originally designed to provide elegant enhancements to the otherwise functional,
+        plain, practical GNU Screen, for the Ubuntu server distribution.
+        Byobu now includes an enhanced profiles, convenient keybindings,
+        configuration utilities, and toggle-able system status notifications for both
+        the GNU Screen window manager and the more modern Tmux terminal multiplexer,
         and works on most Linux, BSD, and Mac distributions.
       '';
 
-    license = stdenv.lib.licenses.gpl3;
+    license = licenses.gpl3;
 
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.qknight ];
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ qknight berbiche ];
   };
 }
diff --git a/pkgs/tools/misc/debianutils/default.nix b/pkgs/tools/misc/debianutils/default.nix
index 141df333222..42deec9dc5d 100644
--- a/pkgs/tools/misc/debianutils/default.nix
+++ b/pkgs/tools/misc/debianutils/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "debianutils";
-  version = "4.11.1";
+  version = "4.11.2";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/d/${pname}/${pname}_${version}.tar.xz";
-    sha256 = "0g4qmzb2ff0rqszzpsal465hcslnpdl4nhghv59qvhamkkqnks4b";
+    sha256 = "1pjh2s5f8qp8jaky2x08yvf125np0s48zb2z6f3h6x4vf20hws1v";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/flameshot/default.nix b/pkgs/tools/misc/flameshot/default.nix
index afca2e3007e..de7d56e5584 100644
--- a/pkgs/tools/misc/flameshot/default.nix
+++ b/pkgs/tools/misc/flameshot/default.nix
@@ -1,44 +1,26 @@
-{ mkDerivation, lib, fetchFromGitHub, qtbase, qmake, qttools, qtsvg }:
+{ mkDerivation, lib, fetchFromGitHub, qtbase, cmake, qttools, qtsvg }:
 
-# To use `flameshot gui`, you will also need to put flameshot in `services.dbus.packages`
-# in configuration.nix so that the daemon gets launched properly:
-#
-#   services.dbus.packages = [ pkgs.flameshot ];
-#   environment.systemPackages = [ pkgs.flameshot ];
 mkDerivation rec {
   pname = "flameshot";
-  version = "0.6.0";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
-    owner = "lupoDharkael";
+    owner = "flameshot-org";
     repo = "flameshot";
     rev = "v${version}";
-    sha256 = "193szslh55v44jzxzx5g9kxhl8p8di7vbcnxlid4acfidhnvgazm";
+    sha256 = "0nr50ma8l612drl2br084kb3xac7jqkqr41b26d4p9y7ylwk05yq";
   };
 
-  nativeBuildInputs = [ qmake qttools qtsvg ];
+  nativeBuildInputs = [ cmake qttools qtsvg ];
   buildInputs = [ qtbase ];
 
-  qmakeFlags = [ "PREFIX=${placeholder "out"}" ];
-
-  preConfigure = ''
-    # flameshot.pro assumes qmake is being run in a git checkout.
-    git() { echo ${version}; }
-    export -f git
-  '';
-
-  postFixup = ''
-    substituteInPlace $out/share/dbus-1/services/org.dharkael.Flameshot.service \
-      --replace "/usr/local" "$out"
-  '';
-
   enableParallelBuilding = true;
 
   meta = with lib; {
     description = "Powerful yet simple to use screenshot software";
-    homepage = "https://github.com/lupoDharkael/flameshot";
+    homepage = "https://flameshot.js.org";
     maintainers = [ maintainers.scode ];
-    license = lib.licenses.gpl3;
+    license = lib.licenses.gpl3Plus;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 88000c0ba2c..86819d77a9e 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "fzf";
-  version = "0.23.1";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     owner = "junegunn";
     repo = pname;
     rev = version;
-    sha256 = "1x55y96i4b3gk9l2zlwb6ifsk8nxzfny3b73ly89g7kifwkb543k";
+    sha256 = "0a1jhlkv6z5msw8p3wccy3axwpdvpnri6qps9fmvz57gfm9a3jmr";
   };
 
-  vendorSha256 = "0bd4fk15i292377mv5w57gzxjp21f0rcf1py9gd6v99rx1pviq66";
+  vendorSha256 = "0dd0qm1fxp3jnlrhfaas8fw87cj7rygaac35a9nk3xh2xsk7q35p";
 
   outputs = [ "out" "man" ];
 
@@ -19,6 +19,8 @@ buildGoModule rec {
 
   buildInputs = [ ncurses ];
 
+  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+
   # The vim plugin expects a relative path to the binary; patch it to abspath.
   patchPhase = ''
     sed -i -e "s|expand('<sfile>:h:h')|'$out'|" plugin/fzf.vim
diff --git a/pkgs/tools/misc/goaccess/default.nix b/pkgs/tools/misc/goaccess/default.nix
index 1906c9d5665..d14ef9d526a 100644
--- a/pkgs/tools/misc/goaccess/default.nix
+++ b/pkgs/tools/misc/goaccess/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, ncurses, glib, libmaxminddb }:
+{ stdenv, fetchurl, pkgconfig, ncurses, glib, libmaxminddb, fetchpatch }:
 
 stdenv.mkDerivation rec {
   version = "1.4";
@@ -9,6 +9,13 @@ stdenv.mkDerivation rec {
     sha256 = "1gkpjg39f3afdwm9128jqjsfap07p8s027czzlnxfmi5hpzvkyz8";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/allinurl/goaccess/commit/514618cdd69453497fbf67913ccb37a0a0b07391.patch";
+      sha256 = "11lp7mabfl6ibgzsd9nw10k2xvcm0hrimrwidl06r8dqn2jzjxf6";
+    })
+  ];
+
   configureFlags = [
     "--enable-geoip=mmdb"
     "--enable-utf8"
diff --git a/pkgs/tools/misc/hebcal/default.nix b/pkgs/tools/misc/hebcal/default.nix
index 96c95848440..049a79fa757 100644
--- a/pkgs/tools/misc/hebcal/default.nix
+++ b/pkgs/tools/misc/hebcal/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version = "4.21";
+  version = "4.22";
   pname = "hebcal";
 
   src = fetchFromGitHub {
     owner = "hebcal";
     repo = "hebcal";
     rev = "v${version}";
-    sha256 = "0gqjhl5i0hvnpvsg6cfc2z5ckrs66h3jlrdgim62azn3hh5bday2";
+    sha256 = "0bm29n51qi9q4vx4qsz3l9l1wvpvsk138zixfl5f5yz4kngzbx24";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/tools/misc/logstash/6.x.nix b/pkgs/tools/misc/logstash/6.x.nix
index ec8106e922a..52e74e5babf 100644
--- a/pkgs/tools/misc/logstash/6.x.nix
+++ b/pkgs/tools/misc/logstash/6.x.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Logstash is a data pipeline that helps you process logs and other event data from a variety of systems";
+    description = "A data pipeline that helps you process logs and other event data from a variety of systems";
     homepage    = "https://www.elastic.co/products/logstash";
     license     = if enableUnfree then licenses.elastic else licenses.asl20;
     platforms   = platforms.unix;
diff --git a/pkgs/tools/misc/mongodb-compass/default.nix b/pkgs/tools/misc/mongodb-compass/default.nix
index ec6be6eba28..93fca738dc4 100644
--- a/pkgs/tools/misc/mongodb-compass/default.nix
+++ b/pkgs/tools/misc/mongodb-compass/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, dpkg
 , alsaLib, at-spi2-atk, at-spi2-core, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, glib
-, gnome2, gnome3, libnotify, libsecret, libuuid, libxcb, nspr, nss, systemd, xorg, wrapGAppsHook }:
+, gnome2, gdk-pixbuf, gtk3, pango, libnotify, libsecret, libuuid, libxcb, nspr, nss, systemd, xorg, wrapGAppsHook }:
 
 let
   version = "1.22.1";
@@ -19,9 +19,9 @@ let
     freetype
     glib
     gnome2.GConf
-    gnome2.gdk_pixbuf
-    gnome3.gtk
-    gnome2.pango
+    gdk-pixbuf
+    gtk3
+    pango
     libnotify
     libsecret
     libuuid
@@ -60,7 +60,7 @@ in stdenv.mkDerivation {
 
   inherit src;
 
-  buildInputs = [ dpkg wrapGAppsHook gnome3.gtk ];
+  buildInputs = [ dpkg wrapGAppsHook gtk3 ];
   dontUnpack = true;
 
   buildCommand = ''
diff --git a/pkgs/tools/misc/ostree/default.nix b/pkgs/tools/misc/ostree/default.nix
index fd1bfc7f8c7..56262d8171e 100644
--- a/pkgs/tools/misc/ostree/default.nix
+++ b/pkgs/tools/misc/ostree/default.nix
@@ -39,13 +39,13 @@ let
   ]));
 in stdenv.mkDerivation rec {
   pname = "ostree";
-  version = "2020.5";
+  version = "2020.7";
 
   outputs = [ "out" "dev" "man" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/ostreedev/ostree/releases/download/v${version}/libostree-${version}.tar.xz";
-    sha256 = "1k92177hjalbdpmg45ymwwrni68vh9rs5x9zvy5fzl9lng12fgpb";
+    sha256 = "0clriq2ypz1fycd6mpjyrhzid44svzpzw0amnank593h69b216ax";
   };
 
   patches = [
diff --git a/pkgs/tools/misc/shallot/default.nix b/pkgs/tools/misc/shallot/default.nix
index e8ab6168541..84e241b7a2c 100644
--- a/pkgs/tools/misc/shallot/default.nix
+++ b/pkgs/tools/misc/shallot/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Shallot allows you to create customized .onion addresses for your hidden service";
+    description = "Allows you to create customized .onion addresses for your hidden service";
 
     license = stdenv.lib.licenses.mit;
     homepage = "https://github.com/katmagic/Shallot";
diff --git a/pkgs/tools/misc/slurp/default.nix b/pkgs/tools/misc/slurp/default.nix
index dbec2324674..bdbea7367b8 100644
--- a/pkgs/tools/misc/slurp/default.nix
+++ b/pkgs/tools/misc/slurp/default.nix
@@ -1,27 +1,28 @@
-{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig
-, cairo, wayland, wayland-protocols
+{ stdenv, fetchFromGitHub, meson, ninja, pkg-config
+, cairo, libxkbcommon, wayland, wayland-protocols
 , buildDocs ? true, scdoc
 }:
 
 stdenv.mkDerivation rec {
   pname = "slurp";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = "slurp";
     rev = "v${version}";
-    sha256 = "0580m6kaiilgsrcj608r837r37sl6a25y7w21p7d6ij20fs3gvg1";
+    sha256 = "191yjn909dax8z66ks58wjadrycpbwryirkfjcy99dhq7dijg9fh";
   };
 
   nativeBuildInputs = [
     meson
     ninja
-    pkgconfig
+    pkg-config
   ] ++ stdenv.lib.optional buildDocs scdoc;
 
   buildInputs = [
     cairo
+    libxkbcommon
     wayland
     wayland-protocols
   ];
diff --git a/pkgs/tools/misc/somafm-cli/default.nix b/pkgs/tools/misc/somafm-cli/default.nix
index 312b402ae66..3ce3f62a9e2 100644
--- a/pkgs/tools/misc/somafm-cli/default.nix
+++ b/pkgs/tools/misc/somafm-cli/default.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
     description = "Listen to SomaFM in your terminal via pure bash";
     homepage = "https://github.com/rockymadden/somafm-cli";
     license = licenses.mit;
+    platforms = platforms.all;
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/pkgs/tools/misc/sweep-visualizer/default.nix b/pkgs/tools/misc/sweep-visualizer/default.nix
index 21e6f49df1f..fdd3c5f628d 100644
--- a/pkgs/tools/misc/sweep-visualizer/default.nix
+++ b/pkgs/tools/misc/sweep-visualizer/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, makeWrapper, fetchurl,
   alsaLib, atk, cairo, cups, dbus, expat, fontconfig, freetype, gdk-pixbuf, glib,
-  gnome2, gtk2-x11, nspr, nss,
+  gnome2, pango, gtk2-x11, nspr, nss,
   libX11, libxcb, libXcomposite, libXcursor, libXdamage, libXext, libXfixes,
   libXi, libXrandr, libXrender, libXScrnSaver, libXtst,
   libudev0-shim
@@ -33,7 +33,7 @@
     preFixup = let
       libPath = lib.makeLibraryPath [
         alsaLib atk cairo cups.lib dbus.lib expat fontconfig.lib freetype
-        gdk-pixbuf glib gnome2.GConf gnome2.pango gtk2-x11 nspr nss stdenv.cc.cc.lib
+        gdk-pixbuf glib gnome2.GConf pango gtk2-x11 nspr nss stdenv.cc.cc.lib
         libX11 libxcb libXcomposite libXcursor libXdamage libXext libXfixes
         libXi libXrandr libXrender libXScrnSaver libXtst
       ];
diff --git a/pkgs/tools/misc/vimv/default.nix b/pkgs/tools/misc/vimv/default.nix
new file mode 100644
index 00000000000..023d3384ed6
--- /dev/null
+++ b/pkgs/tools/misc/vimv/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, bash, fetchFromGitHub }:
+stdenv.mkDerivation {
+  pname = "vimv";
+  version = "unstable-2019-10-31";
+  src = fetchFromGitHub {
+    owner = "thameera";
+    repo = "vimv";
+    rev = "4152496c1946f68a13c648fb7e583ef23dac4eb8";
+    sha256 = "1fsrfx2gs6bqx7wk7pgcji2i2x4alqpsi66aif4kqvnpqfhcfzjd";
+  };
+  phases = [ "installPhase" ];
+  installPhase = ''
+    install -d $out/bin
+    install $src/vimv $out/bin/vimv
+    patchShebangs $out/bin/vimv
+  '';
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/thameera/vimv";
+    description = "Batch-rename files using Vim";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.kmein ];
+  };
+}
diff --git a/pkgs/tools/misc/wootility/default.nix b/pkgs/tools/misc/wootility/default.nix
index cc192951ca8..a79f414a359 100644
--- a/pkgs/tools/misc/wootility/default.nix
+++ b/pkgs/tools/misc/wootility/default.nix
@@ -35,7 +35,7 @@ appimageTools.wrapType2 rec {
 
   meta = with lib; {
     homepage = "https://wooting.io/wootility";
-    description = "Wootility is customization and management software for Wooting keyboards";
+    description = "A customization and management software for Wooting keyboards";
     platforms = [ "x86_64-linux" ];
     license = "unknown";
     maintainers = with maintainers; [ davidtwco ];
diff --git a/pkgs/tools/misc/zsh-autoenv/default.nix b/pkgs/tools/misc/zsh-autoenv/default.nix
index c44837b877d..f4295443f69 100644
--- a/pkgs/tools/misc/zsh-autoenv/default.nix
+++ b/pkgs/tools/misc/zsh-autoenv/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
     cat <<SCRIPT > $out/bin/zsh-autoenv-share
     #!${runtimeShell}
-    # Run this script to find the fzf shared folder where all the shell
+    # Run this script to find the zsh-autoenv shared folder where all the shell
     # integration scripts are living.
     echo $out/share/zsh-autoenv
     SCRIPT
diff --git a/pkgs/tools/networking/bukubrow/default.nix b/pkgs/tools/networking/bukubrow/default.nix
index b8f2d70848d..ed8a6088db0 100644
--- a/pkgs/tools/networking/bukubrow/default.nix
+++ b/pkgs/tools/networking/bukubrow/default.nix
@@ -39,7 +39,7 @@ in rustPlatform.buildRustPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Bukubrow is a WebExtension for Buku, a command-line bookmark manager";
+    description = "A WebExtension for Buku, a command-line bookmark manager";
     homepage = "https://github.com/SamHH/bukubrow-host";
     license = licenses.gpl3;
     maintainers = with maintainers; [ infinisil ];
diff --git a/pkgs/tools/networking/corerad/default.nix b/pkgs/tools/networking/corerad/default.nix
index 4ab266e5495..38331163c12 100644
--- a/pkgs/tools/networking/corerad/default.nix
+++ b/pkgs/tools/networking/corerad/default.nix
@@ -33,7 +33,7 @@ buildGoModule rec {
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/mdlayher/corerad";
-    description = "CoreRAD extensible and observable IPv6 NDP RA daemon";
+    description = "Extensible and observable IPv6 NDP RA daemon";
     license = licenses.asl20;
     maintainers = with maintainers; [ mdlayher ];
   };
diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix
index f1137904187..36fc5583439 100644
--- a/pkgs/tools/networking/croc/default.nix
+++ b/pkgs/tools/networking/croc/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub, callPackage}:
 
 buildGoModule rec {
   pname = "croc";
@@ -17,6 +17,11 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
+  passthru = {
+    tests = {
+      local-relay = callPackage ./test-local-relay.nix {};
+    };
+  };
   meta = with stdenv.lib; {
     description =
       "Easily and securely send things from one computer to another";
diff --git a/pkgs/tools/networking/croc/test-local-relay.nix b/pkgs/tools/networking/croc/test-local-relay.nix
new file mode 100644
index 00000000000..bde05d6deb0
--- /dev/null
+++ b/pkgs/tools/networking/croc/test-local-relay.nix
@@ -0,0 +1,20 @@
+{ stdenv, croc }:
+
+stdenv.mkDerivation {
+  name = "croc-test-local-relay";
+  meta.timeout = 300;
+  buildCommand = ''
+          HOME=$(mktemp -d)
+          # start a local relay
+          ${croc}/bin/croc relay --ports 11111,11112 &
+          # start sender in background
+          MSG="See you later, alligator!"
+          ${croc}/bin/croc --relay localhost:11111 send --code correct-horse-battery-staple --text "$MSG" &
+          # wait for things to settle
+          sleep 1
+          # receive
+          MSG2=$(${croc}/bin/croc --relay localhost:11111 --yes correct-horse-battery-staple)
+          # compare
+          [ "$MSG" = "$MSG2" ] && touch $out
+  '';
+}
diff --git a/pkgs/tools/networking/curlie/default.nix b/pkgs/tools/networking/curlie/default.nix
index f8147cb1611..542bb888bfe 100644
--- a/pkgs/tools/networking/curlie/default.nix
+++ b/pkgs/tools/networking/curlie/default.nix
@@ -16,7 +16,7 @@ buildGoModule rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Curlie is a frontend to curl that adds the ease of use of httpie, without compromising on features and performance";
+    description = "Frontend to curl that adds the ease of use of httpie, without compromising on features and performance";
     homepage = "https://curlie.io/";
     maintainers = with maintainers; [ ma27 ];
     license = licenses.mit;
diff --git a/pkgs/tools/networking/dnstracer/default.nix b/pkgs/tools/networking/dnstracer/default.nix
index b0369ec80bd..558e0dca903 100644
--- a/pkgs/tools/networking/dnstracer/default.nix
+++ b/pkgs/tools/networking/dnstracer/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lresolv";
 
   meta = with stdenv.lib; {
-    description = "Dnstracer determines where a given Domain Name Server (DNS) gets its information from, and follows the chain of DNS servers back to the servers which know the data";
+    description = "Determines where a given Domain Name Server (DNS) gets its information from, and follows the chain of DNS servers back to the servers which know the data";
     homepage = "http://www.mavetju.org/unix/general.php";
     license = licenses.bsd2;
     maintainers = with maintainers; [ andir ];
diff --git a/pkgs/tools/networking/driftnet/default.nix b/pkgs/tools/networking/driftnet/default.nix
index 44101910371..7a5ceda9669 100644
--- a/pkgs/tools/networking/driftnet/default.nix
+++ b/pkgs/tools/networking/driftnet/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "Driftnet watches network traffic, and picks out and displays JPEG and GIF images for display";
+    description = "Watches network traffic, and picks out and displays JPEG and GIF images for display";
     homepage = "https://github.com/deiv/driftnet";
     maintainers = with maintainers; [ offline ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/goreplay/default.nix b/pkgs/tools/networking/goreplay/default.nix
index 86548bf9959..0859472a446 100644
--- a/pkgs/tools/networking/goreplay/default.nix
+++ b/pkgs/tools/networking/goreplay/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   meta = {
     homepage = "https://github.com/buger/goreplay";
     license = stdenv.lib.licenses.lgpl3Only;
-    description = "GoReplay is an open-source tool for capturing and replaying live HTTP traffic";
+    description = "Open-source tool for capturing and replaying live HTTP traffic";
     platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ lovek323 ];
   };
diff --git a/pkgs/tools/networking/maxscale/default.nix b/pkgs/tools/networking/maxscale/default.nix
index 48590a9e305..9036e07e7f3 100644
--- a/pkgs/tools/networking/maxscale/default.nix
+++ b/pkgs/tools/networking/maxscale/default.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-     description = ''MaxScale database proxy extends MariaDB Server's high availability'';
+     description = "MaxScale database proxy extends MariaDB Server's high availability";
      homepage = "https://mariadb.com/products/technology/maxscale";
      license = licenses.bsl11;
      platforms = platforms.linux;
diff --git a/pkgs/tools/networking/ngrok-2/default.nix b/pkgs/tools/networking/ngrok-2/default.nix
index d9c1acc374c..3c1e0f498fb 100644
--- a/pkgs/tools/networking/ngrok-2/default.nix
+++ b/pkgs/tools/networking/ngrok-2/default.nix
@@ -35,10 +35,7 @@ stdenv.mkDerivation {
   passthru.updateScript = ./update.sh;
 
   meta = {
-    description = "ngrok";
-    longDescription = ''
-      Allows you to expose a web server running on your local machine to the internet.
-    '';
+    description = "Allows you to expose a web server running on your local machine to the internet";
     homepage = "https://ngrok.com/";
     license = licenses.unfree;
     platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
diff --git a/pkgs/tools/networking/pmacct/default.nix b/pkgs/tools/networking/pmacct/default.nix
index 2bb6f373727..4ef3cd6345e 100644
--- a/pkgs/tools/networking/pmacct/default.nix
+++ b/pkgs/tools/networking/pmacct/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     ++ optional withMysql "--enable-mysql";
 
   meta = with stdenv.lib; {
-    description = "pmacct is a small set of multi-purpose passive network monitoring tools";
+    description = "A small set of multi-purpose passive network monitoring tools";
     longDescription = ''
       pmacct is a small set of multi-purpose passive network monitoring tools
       [NetFlow IPFIX sFlow libpcap BGP BMP RPKI IGP Streaming Telemetry]
diff --git a/pkgs/tools/networking/rcon/default.nix b/pkgs/tools/networking/rcon/default.nix
new file mode 100644
index 00000000000..f7cd08e197e
--- /dev/null
+++ b/pkgs/tools/networking/rcon/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, cmake, pkg-config, glib, libbsd, check, pcre }:
+
+stdenv.mkDerivation rec {
+  pname = "rcon";
+  version = "0.5";
+
+  src = fetchFromGitHub {
+    owner = "n0la";
+    repo = "rcon";
+    rev = version;
+    sha256 = "1jsnmsm2qkiv8dan1yncx0qp6zfkcbyvf81c7xwpv6r499ijw1nb";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  buildInputs = [
+    glib
+    libbsd
+    check
+    pcre
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/n0la/rcon";
+    description = "Source RCON client for command line";
+    maintainers = with maintainers; [ f4814n ];
+    platforms = with platforms; linux ++ darwin;
+    license = licenses.bsd2;
+  };
+}
diff --git a/pkgs/tools/networking/ssldump/default.nix b/pkgs/tools/networking/ssldump/default.nix
index b492b5a226b..d7578c4adda 100644
--- a/pkgs/tools/networking/ssldump/default.nix
+++ b/pkgs/tools/networking/ssldump/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
                      "--with-openssl-lib=${openssl}/lib"
                      "--with-openssl-inc=${openssl}/include" ];
   meta = {
-    description = "ssldump is an SSLv3/TLS network protocol analyzer";
+    description = "An SSLv3/TLS network protocol analyzer";
     homepage = "http://ssldump.sourceforge.net";
     license = "BSD-style";
     maintainers = with stdenv.lib.maintainers; [ aycanirican ];
diff --git a/pkgs/tools/package-management/morph/default.nix b/pkgs/tools/package-management/morph/default.nix
index 1a75fa43d4e..61e4a897f48 100644
--- a/pkgs/tools/package-management/morph/default.nix
+++ b/pkgs/tools/package-management/morph/default.nix
@@ -35,7 +35,7 @@ buildGoPackage rec {
   outputs = [ "out" "lib" ];
 
   meta = with lib; {
-    description = "Morph is a NixOS host manager written in Golang";
+    description = "A NixOS host manager written in Golang";
     license = licenses.mit;
     homepage = "https://github.com/dbcdk/morph";
     maintainers = with maintainers; [adamt johanot];
diff --git a/pkgs/tools/security/1password-gui/default.nix b/pkgs/tools/security/1password-gui/default.nix
index 7d52311b398..c3d406ce3aa 100644
--- a/pkgs/tools/security/1password-gui/default.nix
+++ b/pkgs/tools/security/1password-gui/default.nix
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://1password.com/";
     license = licenses.unfree;
-    maintainers = with maintainers; [ danieldk ];
+    maintainers = with maintainers; [ danieldk timstott ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/tools/security/acsccid/default.nix b/pkgs/tools/security/acsccid/default.nix
index 3e61b124fef..53842cbb1fc 100644
--- a/pkgs/tools/security/acsccid/default.nix
+++ b/pkgs/tools/security/acsccid/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card readers";
+    description = "A PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card readers";
     longDescription = ''
       acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card
       readers. This library provides a PC/SC IFD handler implementation and
diff --git a/pkgs/tools/security/bitwarden/default.nix b/pkgs/tools/security/bitwarden/default.nix
index d10a938ea02..113c00b8888 100644
--- a/pkgs/tools/security/bitwarden/default.nix
+++ b/pkgs/tools/security/bitwarden/default.nix
@@ -17,11 +17,11 @@ let
   pname = "bitwarden";
 
   version = {
-    x86_64-linux = "1.22.1";
+    x86_64-linux = "1.22.2";
   }.${system} or "";
 
   sha256 = {
-    x86_64-linux = "1pbcrkafyjjcsd27s99g511llkz05d9qkny7g15wp6piyyv89k3n";
+    x86_64-linux = "1yx550whld0dg3b10x57r2nzizydla4i40zqqm6dzd3wic8yi365";
   }.${system} or "";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/security/fpm2/default.nix b/pkgs/tools/security/fpm2/default.nix
index aff4e1ee1ec..2f297ffd6b7 100644
--- a/pkgs/tools/security/fpm2/default.nix
+++ b/pkgs/tools/security/fpm2/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gnupg gtk2 libxml2 intltool ];
 
   meta = {
-    description = "FPM2 is GTK2 port from Figaro's Password Manager originally developed by John Conneely, with some new enhancements";
+    description = "GTK2 port from Figaro's Password Manager originally developed by John Conneely, with some new enhancements";
     homepage    = "https://als.regnet.cz/fpm2/";
     license     = licenses.gpl2;
     platforms   = platforms.linux;
diff --git a/pkgs/tools/security/gobuster/default.nix b/pkgs/tools/security/gobuster/default.nix
index 6e049917de2..cc436a16b58 100644
--- a/pkgs/tools/security/gobuster/default.nix
+++ b/pkgs/tools/security/gobuster/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "gobuster";
-  version = "3.0.1";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "OJ";
     repo = "gobuster";
     rev = "v${version}";
-    sha256 = "0q8ighqykh8qyvidnm6az6dc9mp32bbmhkmkqzl1ybbw6paa8pym";
+    sha256 = "0nal2g5c6z46x6337yh0s6mqgnsigp91i7mp1l3sa91p5ihk71wr";
   };
 
-  vendorSha256 = "0kr9i2nm5csf3070hwaiss137pfa3088xbw2zigp7aqb2naky036";
+  vendorSha256 = "1isp2jd6k4ppns5zi9irj09090imnc0xp6vcps135ymgp8qg4163";
 
   doCheck = false;
 
diff --git a/pkgs/tools/security/notary/default.nix b/pkgs/tools/security/notary/default.nix
index 15797fc8665..020f37c836b 100644
--- a/pkgs/tools/security/notary/default.nix
+++ b/pkgs/tools/security/notary/default.nix
@@ -36,7 +36,7 @@ buildGoPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Notary is a project that allows anyone to have trust over arbitrary collections of data";
+    description = "A project that allows anyone to have trust over arbitrary collections of data";
     longDescription = ''
       The Notary project comprises a server and a client for running and
       interacting with trusted collections. See the service architecture
diff --git a/pkgs/tools/security/rustscan/default.nix b/pkgs/tools/security/rustscan/default.nix
index 773711d1f30..4d154bbc96f 100644
--- a/pkgs/tools/security/rustscan/default.nix
+++ b/pkgs/tools/security/rustscan/default.nix
@@ -1,8 +1,4 @@
-{ lib
-, fetchFromGitHub
-, rustPlatform
-, nmap
-}:
+{ stdenv, fetchFromGitHub, rustPlatform, nmap, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "rustscan";
@@ -22,6 +18,8 @@ rustPlatform.buildRustPackage rec {
       --replace 'Command::new("nmap")' 'Command::new("${nmap}/bin/nmap")'
   '';
 
+  buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
+
   checkFlags = [
     "--skip=infer_ulimit_lowering_no_panic"
     "--skip=google_dns_runs"
@@ -29,7 +27,7 @@ rustPlatform.buildRustPackage rec {
     "--skip=parse_hosts_file_and_incorrect_hosts"
   ];
 
-  meta = with lib; {
+  meta = with stdenv.lib; {
     description = "Faster Nmap Scanning with Rust";
     homepage = "https://github.com/RustScan/RustScan";
     license = licenses.gpl3Only;
diff --git a/pkgs/tools/security/sequoia/default.nix b/pkgs/tools/security/sequoia/default.nix
index a54433b92c9..aa2a12fc351 100644
--- a/pkgs/tools/security/sequoia/default.nix
+++ b/pkgs/tools/security/sequoia/default.nix
@@ -23,16 +23,16 @@ assert pythonSupport -> pythonPackages != null;
 
 rustPlatform.buildRustPackage rec {
   pname = "sequoia";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchFromGitLab {
     owner = "sequoia-pgp";
     repo = "sequoia";
     rev = "v${version}";
-    sha256 = "1870wd03c3x0da9p3jmkvfx8am87ak0dcsvp2qkjvglbl396kd8y";
+    sha256 = "sha256-br5GRzWprQTixNrE0WpNIB7Ayj5oEfyCg5JY4MnX5rA=";
   };
 
-  cargoSha256 = "0bb51vdppdjhsxbfy3lyqvw5r5j58r3wi0qb68m2a45k3za7liss";
+  cargoSha256 = "sha256-SpCdoLCtvU9jpG/ivB/+4KhRdKZxN3/+7P/RlR6n9/c=";
 
   nativeBuildInputs = [
     pkg-config
@@ -62,6 +62,8 @@ rustPlatform.buildRustPackage rec {
 
   makeFlags = [
     "PREFIX=${placeholder "out"}"
+    # Defaults to "ginstall" from some reason, although upstream's Makefiles check uname
+    "INSTALL=install"
   ];
 
   buildFlags = [
@@ -100,6 +102,5 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://sequoia-pgp.org/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ minijackson doronbehar ];
-    broken = stdenv.targetPlatform.isDarwin;
   };
 }
diff --git a/pkgs/tools/security/ssh-audit/default.nix b/pkgs/tools/security/ssh-audit/default.nix
index 9dbb0ce5fcf..6a3dbfb615b 100644
--- a/pkgs/tools/security/ssh-audit/default.nix
+++ b/pkgs/tools/security/ssh-audit/default.nix
@@ -39,6 +39,7 @@ python3Packages.buildPythonApplication rec {
     description = "Tool for ssh server auditing";
     homepage = "https://github.com/jtesta/ssh-audit";
     license = licenses.mit;
+    platforms = platforms.all;
     maintainers = with maintainers; [ tv SuperSandro2000 ];
   };
 }
diff --git a/pkgs/tools/security/sshguard/default.nix b/pkgs/tools/security/sshguard/default.nix
index 6c2298f6729..6bae0fddc23 100644
--- a/pkgs/tools/security/sshguard/default.nix
+++ b/pkgs/tools/security/sshguard/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--sysconfdir=/etc" ];
 
   meta = with stdenv.lib; {
-    description = "SSHGuard protects hosts from brute-force attacks";
+    description = "Protects hosts from brute-force attacks";
     longDescription = ''
       SSHGuard can read log messages from various input sources. Log messages are parsed, line-by-line, for recognized patterns.
       If an attack, such as several login failures within a few seconds, is detected, the offending IP is blocked.
diff --git a/pkgs/tools/system/daemon/default.nix b/pkgs/tools/system/daemon/default.nix
index fb06247f984..6763b476f30 100644
--- a/pkgs/tools/system/daemon/default.nix
+++ b/pkgs/tools/system/daemon/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   buildInputs = [ perl ];
 
   meta = {
-    description = "Daemon turns other process into daemons";
+    description = "Turns other processes into daemons";
     longDescription = ''
       Daemon turns other process into daemons. There are many tasks that need
       to be performed to correctly set up a daemon process. This can be tedious.
diff --git a/pkgs/tools/system/jump/default.nix b/pkgs/tools/system/jump/default.nix
index d8e838dd360..d91df3232c8 100644
--- a/pkgs/tools/system/jump/default.nix
+++ b/pkgs/tools/system/jump/default.nix
@@ -28,7 +28,7 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
-    description = "Jump helps you navigate faster by learning your habits";
+    description = "Navigate directories faster by learning your habits";
     longDescription = ''
       Jump integrates with the shell and learns about your
       navigational habits by keeping track of the directories you visit. It
diff --git a/pkgs/tools/system/netdata/default.nix b/pkgs/tools/system/netdata/default.nix
index f1bb1f9d62d..8192dfe6c14 100644
--- a/pkgs/tools/system/netdata/default.nix
+++ b/pkgs/tools/system/netdata/default.nix
@@ -15,14 +15,14 @@ with stdenv.lib;
 let
   go-d-plugin = callPackage ./go.d.plugin.nix {};
 in stdenv.mkDerivation rec {
-  version = "1.25.0";
+  version = "1.26.0";
   pname = "netdata";
 
   src = fetchFromGitHub {
     owner = "netdata";
     repo = "netdata";
     rev = "v${version}";
-    sha256 = "0wsgs0slqmj9q5prwlx7d4692lc4c42g0sv35r33vlxnfdwimfh5";
+    sha256 = "0pvl1y1qscwp1chrbmk43xf9ddjxgfm0hcslbdbljjis7ng4gacg";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/tools/system/snooze/default.nix b/pkgs/tools/system/snooze/default.nix
index a82db1dbd42..fb1ceaf897b 100644
--- a/pkgs/tools/system/snooze/default.nix
+++ b/pkgs/tools/system/snooze/default.nix
@@ -11,8 +11,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "DESTDIR=$(out)" "PREFIX=/" ];
 
   meta = with stdenv.lib; {
-    description =
-      "Tool for waiting until a particular time and then running a command.";
+    description = "Tool for waiting until a particular time and then running a command";
     maintainers = with maintainers; [ kaction ];
     license = licenses.cc0;
     platforms = platforms.linux;
diff --git a/pkgs/tools/system/testdisk/default.nix b/pkgs/tools/system/testdisk/default.nix
index 223d1102e0d..bbece24bf65 100644
--- a/pkgs/tools/system/testdisk/default.nix
+++ b/pkgs/tools/system/testdisk/default.nix
@@ -46,7 +46,7 @@ assert enableQt -> qwt != null;
   meta = with stdenv.lib; {
     homepage = "https://www.cgsecurity.org/wiki/Main_Page";
     downloadPage = "https://www.cgsecurity.org/wiki/TestDisk_Download";
-    description = "Testdisk / Photorec - Data recovery utilities";
+    description = "Data recovery utilities";
     longDescription = ''
       TestDisk is a powerful free data recovery software. It was primarily
       designed to help recover lost partitions and/or make non-booting disks
diff --git a/pkgs/tools/system/thinkfan/default.nix b/pkgs/tools/system/thinkfan/default.nix
index 4edcfb63fe5..62c299cce7a 100644
--- a/pkgs/tools/system/thinkfan/default.nix
+++ b/pkgs/tools/system/thinkfan/default.nix
@@ -35,7 +35,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "A minimalist fan control program. Originally designed
+    description  = "A minimalist fan control program";
+    longDescription = "A minimalist fan control program. Originally designed
 specifically for IBM/Lenovo Thinkpads, it now supports any kind of system via
 the sysfs hwmon interface (/sys/class/hwmon).";
     license = licenses.gpl3;
diff --git a/pkgs/tools/text/jsawk/default.nix b/pkgs/tools/text/jsawk/default.nix
index 51075c2ce17..a9b9e788402 100644
--- a/pkgs/tools/text/jsawk/default.nix
+++ b/pkgs/tools/text/jsawk/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "Jsawk is like awk, but for JSON";
+    description = "Like awk, but for JSON";
     homepage = "https://github.com/micha/jsawk";
     license = stdenv.lib.licenses.publicDomain;
     maintainers = with stdenv.lib.maintainers; [ puffnfresh ];
diff --git a/pkgs/tools/text/mdbook/default.nix b/pkgs/tools/text/mdbook/default.nix
index 0a5eae90473..8e035017742 100644
--- a/pkgs/tools/text/mdbook/default.nix
+++ b/pkgs/tools/text/mdbook/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook";
-  version = "0.4.3";
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner = "rust-lang-nursery";
     repo = "mdBook";
     rev = "v${version}";
-    sha256 = "1566jabmvafv6aiw5nvb6y2zcnxc7pbb9dl3s4vi6mx21kqp68ag";
+    sha256 = "0nqr5a27i91m71fhpycf60q54qplc920y1fmk9hav3pbb9wcc5dl";
   };
 
-  cargoSha256 = "0sa1h3qzdhgk2h3wrc0kg0ajq6zbkvn1ry4672gfn3j9gpgvy2bb";
+  cargoSha256 = "1p72iwl9ca7a92nf6wyjjbn0qns0xxb4xrbz2r2nmd83cxs0fplg";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/miller/default.nix b/pkgs/tools/text/miller/default.nix
index bf082abadbc..3bacd53c713 100644
--- a/pkgs/tools/text/miller/default.nix
+++ b/pkgs/tools/text/miller/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook flex libtool ];
 
   meta = with stdenv.lib; {
-    description = "Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON";
+    description = "Like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON";
     homepage    = "http://johnkerl.org/miller/";
     license     = licenses.bsd2;
     maintainers = with maintainers; [ mstarzyk ];
diff --git a/pkgs/tools/text/sift/default.nix b/pkgs/tools/text/sift/default.nix
index 5a36de5f720..dc025f17a78 100644
--- a/pkgs/tools/text/sift/default.nix
+++ b/pkgs/tools/text/sift/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   meta = with lib; {
-    description = "sift is a fast and powerful alternative to grep";
+    description = "A fast and powerful alternative to grep";
     homepage = "https://sift-tool.org";
     maintainers = [ maintainers.carlsverre ];
     license = licenses.gpl3;
diff --git a/pkgs/tools/text/vale/default.nix b/pkgs/tools/text/vale/default.nix
index e2fb6b71ead..4011df99706 100644
--- a/pkgs/tools/text/vale/default.nix
+++ b/pkgs/tools/text/vale/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "vale";
-  version = "2.4.3";
+  version = "2.5.0";
 
   subPackages = [ "." ];
   outputs = [ "out" "data" ];
@@ -11,7 +11,7 @@ buildGoModule rec {
     owner  = "errata-ai";
     repo   = "vale";
     rev    = "v${version}";
-    sha256 = "1qjsrwabqg9brr5q46dl0zrhy5m5qqp68m5v0kskwkykd3r97qwn";
+    sha256 = "0favaijdddm0lajlv0a277mg286jh12kwfndf98zdp0vfq9lv00d";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/tools/typesetting/asciidoctorj/default.nix b/pkgs/tools/typesetting/asciidoctorj/default.nix
index c518ddeaf39..08351dd6f3e 100644
--- a/pkgs/tools/typesetting/asciidoctorj/default.nix
+++ b/pkgs/tools/typesetting/asciidoctorj/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "asciidoctorj";
-  version = "2.4.0";
+  version = "2.4.1";
 
   src = fetchzip {
     url = "http://dl.bintray.com/asciidoctor/maven/org/asciidoctor/${pname}/${version}/${pname}-${version}-bin.zip";
-    sha256 = "1bp26x5mhbl25s9djlq6yani1vaqrgbi5mjljhwhj97iapwsd0yb";
+    sha256 = "1m00cdg1520ampg3i2j64si8gmwph7j4189agjlimx3fjjsp3xrh";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -19,13 +19,11 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = ''
-      AsciidoctorJ is the official library for running Asciidoctor on the JVM.
-    '';
+    description = "Official library for running Asciidoctor on the JVM";
     longDescription = ''
-      AsciidoctorJ is the official library for running Asciidoctor on the JVM. 
-      Using AsciidoctorJ, you can convert AsciiDoc content or analyze the 
-      structure of a parsed AsciiDoc document from Java and other JVM 
+      AsciidoctorJ is the official library for running Asciidoctor on the JVM.
+      Using AsciidoctorJ, you can convert AsciiDoc content or analyze the
+      structure of a parsed AsciiDoc document from Java and other JVM
       languages.
     '';
     homepage = "https://asciidoctor.org/docs/asciidoctorj/";
@@ -33,4 +31,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     maintainers = with maintainers; [ moaxcp ];
   };
-} 
+}
diff --git a/pkgs/tools/typesetting/rubber/default.nix b/pkgs/tools/typesetting/rubber/default.nix
index a9ac2690b66..f3f036ce50e 100644
--- a/pkgs/tools/typesetting/rubber/default.nix
+++ b/pkgs/tools/typesetting/rubber/default.nix
@@ -9,18 +9,18 @@ python3Packages.buildPythonApplication rec {
     sha256 = "178dmrp0mza5gqjiqgk6dqs0c10s0c517pk6k9pjbam86vf47a1p";
   };
 
-  nativeBuildInputs = [ texinfo ];
-
-  # I couldn't figure out how to pass the proper parameter to disable pdf generation, so we
-  # use sed to change the default
-  preBuild = ''
-    sed -i -r 's/pdf\s+= True/pdf = False/g' setup.py
+  # I'm sure there is a better way to pass these parameters to the build script...
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'pdf  = True' 'pdf = False' \
+      --replace '$base/man'   'share/man' \
+      --replace '$base/info'  'share/info' \
+      --replace '$base/share' 'share'
   '';
 
-  # the check scripts forces python2. If we need to use python3 at some point, we should use
-  # the correct python
+  nativeBuildInputs = [ texinfo ];
+
   checkPhase = ''
-    sed -i 's|python=python3|python=${python3Packages.python.interpreter}|' tests/run.sh
     cd tests && ${stdenv.shell} run.sh
   '';
 
diff --git a/pkgs/tools/typesetting/ted/default.nix b/pkgs/tools/typesetting/ted/default.nix
index 25e9dce242f..6d7ef334861 100644
--- a/pkgs/tools/typesetting/ted/default.nix
+++ b/pkgs/tools/typesetting/ted/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig zlib pcre xorg.xlibsWrapper xorg.libXpm libjpeg libtiff libpng gtk2 libpaper makeWrapper ];
 
   meta = with stdenv.lib; {
-    description = "Ted, an easy rich text processor";
+    description = "An easy rich text processor";
     longDescription = ''
       Ted is a text processor running under X Windows on Unix/Linux systems.
       Ted was developed as a standard easy light weight word processor, having
diff --git a/pkgs/tools/virtualization/amazon-ecs-cli/default.nix b/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
index 19766fb5ba9..4c37054f4a0 100644
--- a/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
+++ b/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
@@ -2,18 +2,18 @@
 
 stdenv.mkDerivation rec {
   pname = "amazon-ecs-cli";
-  version = "1.18.1";
+  version = "1.20.0";
 
   src =
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-v${version}";
-        sha256 = "1q0qsvxwz6mgslwzwslddxxv45v9wmlbbkxgyfz3dfkw6n6d1a2s";
+        sha256 = "11cw2hk48x66wlsg5bzay95l2pgncwnawzj4xmqmbchhhvphrvxr";
       }
     else if stdenv.hostPlatform.system == "x86_64-darwin" then
       fetchurl {
         url = "https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-darwin-amd64-v${version}";
-        sha256 = "0hik88z5xm1pw6a3mxa6zpghdv47s6bg56srxv4azjinzdi59s3b";
+        sha256 = "1f4yq04sgwkj2p0j598a8vc54dzihmqvg9daa6mxnqj403ln0rg1";
       }
     else throw "Architecture not supported";
 
diff --git a/pkgs/tools/wayland/wshowkeys/default.nix b/pkgs/tools/wayland/wshowkeys/default.nix
new file mode 100644
index 00000000000..0db02990c03
--- /dev/null
+++ b/pkgs/tools/wayland/wshowkeys/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl
+, meson, pkg-config, wayland, ninja
+, cairo, libinput, pango, wayland-protocols, libxkbcommon
+}:
+
+let
+  version = "2020-03-29";
+  commit = "6388a49e0f431d6d5fcbd152b8ae4fa8e87884ee";
+in stdenv.mkDerivation rec {
+  pname = "wshowkeys-unstable";
+  inherit version;
+
+  src = fetchurl {
+    url = "https://git.sr.ht/~sircmpwn/wshowkeys/archive/${commit}.tar.gz";
+    sha256 = "0iplmw13jmc8d3m307kc047zq8yqwm42kw9fpm270562i3p0qk4d";
+  };
+
+  nativeBuildInputs = [ meson pkg-config wayland ninja ];
+  buildInputs = [ cairo libinput pango wayland-protocols libxkbcommon ];
+
+  meta = with stdenv.lib; {
+    description = "Displays keys being pressed on a Wayland session";
+    longDescription = ''
+      Displays keypresses on screen on supported Wayland compositors (requires
+      wlr_layer_shell_v1 support).
+      Note: This tool requires root permissions to read input events, but these
+      permissions are dropped after startup. The NixOS module provides such a
+      setuid binary (use "programs.wshowkeys.enable = true;").
+    '';
+    homepage = "https://git.sr.ht/~sircmpwn/wshowkeys";
+    license = with licenses; [ gpl3Only mit ];
+    # Some portions of the code are taken from Sway which is MIT licensed.
+    # TODO: gpl3Only or gpl3Plus (ask upstream)?
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ primeos berbiche ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1838908b1dd..9b932d1e770 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1389,7 +1389,7 @@ in
   tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
 
   libtensorflow-bin = callPackage ../development/libraries/science/math/tensorflow/bin.nix {
-    cudaSupport = pkgs.config.cudaSupport or false;
+    cudaSupport = config.cudaSupport or false;
     inherit (linuxPackages) nvidia_x11;
     cudatoolkit = cudatoolkit_10_0;
     cudnn = cudnn_cudatoolkit_10_0;
@@ -1402,7 +1402,7 @@ in
 
   libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix {
     inherit (linuxPackages) nvidia_x11;
-    cudaSupport = pkgs.config.cudaSupport or false;
+    cudaSupport = config.cudaSupport or false;
   };
 
   behdad-fonts = callPackage ../data/fonts/behdad-fonts { };
@@ -3443,6 +3443,8 @@ in
 
   wrangler = callPackage ../development/tools/wrangler { };
 
+  wshowkeys = callPackage ../tools/wayland/wshowkeys { };
+
   xkcdpass = with pythonPackages; toPythonApplication xkcdpass;
 
   xob = callPackage ../tools/X11/xob { };
@@ -6287,7 +6289,7 @@ in
 
   pfetch = callPackage ../tools/misc/pfetch { };
 
-  pfstools = callPackage ../tools/graphics/pfstools { };
+  pfstools = libsForQt5.callPackage ../tools/graphics/pfstools { };
 
   philter = callPackage ../tools/networking/philter { };
 
@@ -6620,6 +6622,8 @@ in
 
   rc = callPackage ../shells/rc { };
 
+  rcon = callPackage ../tools/networking/rcon { };
+
   rdbtools = callPackage ../development/tools/rdbtools { python = python3; };
 
   rdma-core = callPackage ../os-specific/linux/rdma-core { };
@@ -6806,7 +6810,9 @@ in
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  rustscan = callPackage ../tools/security/rustscan { };
+  rustscan = callPackage ../tools/security/rustscan {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   rw = callPackage ../tools/misc/rw { };
 
@@ -11176,7 +11182,7 @@ in
   gradle_4_10 = res.gradleGen.gradle_4_10;
   gradle_4 = gradle_4_10;
   gradle_5 = res.gradleGen.gradle_5_6;
-  gradle_6 = res.gradleGen.gradle_6_6;
+  gradle_6 = res.gradleGen.gradle_6_7;
 
   gperf = callPackage ../development/tools/misc/gperf { };
   # 3.1 changed some parameters from int to size_t, leading to mismatches.
@@ -14664,6 +14670,8 @@ in
 
   non = callPackage ../applications/audio/non { };
 
+  noise-suppression-for-voice = callPackage ../development/libraries/noise-suppression-for-voice { };
+
   ntl = callPackage ../development/libraries/ntl { };
 
   nspr = callPackage ../development/libraries/nspr {
@@ -20149,6 +20157,8 @@ in
 
   copyq = libsForQt514.callPackage ../applications/misc/copyq { };
 
+  corectrl = libsForQt5.callPackage ../applications/misc/corectrl { };
+
   coriander = callPackage ../applications/video/coriander {
     inherit (gnome2) libgnomeui GConf;
   };
@@ -21286,6 +21296,8 @@ in
 
   musikcube = callPackage ../applications/audio/musikcube {};
 
+  pinboard = with python3Packages; toPythonApplication pinboard;
+
   pinboard-notes-backup = haskell.lib.overrideCabal
     (haskell.lib.generateOptparseApplicativeCompletion "pnbackup"
       haskellPackages.pinboard-notes-backup)
@@ -23490,7 +23502,11 @@ in
 
   libspotify = callPackage ../development/libraries/libspotify (config.libspotify or {});
 
-  sourcetrail = callPackage ../development/tools/sourcetrail { };
+  sourcetrail = libsForQt5.callPackage ../development/tools/sourcetrail {
+    jdk = jdk8;
+    llvmPackages = llvmPackages_10;
+    pythonPackages = python3Packages;
+  };
 
   spotifywm = callPackage ../applications/audio/spotifywm { };
 
@@ -23939,6 +23955,8 @@ in
 
   vimacs = callPackage ../applications/editors/vim/vimacs.nix { };
 
+  vimv = callPackage ../tools/misc/vimv/default.nix { };
+
   qpdfview = libsForQt514.callPackage ../applications/misc/qpdfview {};
 
   qtile = callPackage ../applications/window-managers/qtile {
@@ -24405,18 +24423,14 @@ in
     gtk = gtk2;
   };
 
-  kodiPlain = callPackage ../applications/video/kodi {
-    jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
-  };
+  kodiPlain = callPackage ../applications/video/kodi { };
 
   kodiPlainWayland = callPackage ../applications/video/kodi {
     useWayland = true;
-    jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
   };
 
   kodiGBM = callPackage ../applications/video/kodi {
     useGbm = true;
-    jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
   };
 
   kodiPlugins = recurseIntoAttrs (callPackage ../applications/video/kodi/plugins.nix {});
@@ -25526,7 +25540,7 @@ in
 
   sfrotz = callPackage ../games/sfrotz { };
 
-  sgtpuzzles = callPackage (callPackage ../games/sgt-puzzles) { };
+  sgtpuzzles = callPackage ../games/sgt-puzzles { };
 
   shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { };
 
@@ -26718,7 +26732,7 @@ in
     stdenv = gcc7Stdenv;
     inherit (linuxPackages) nvidia_x11;
     opencv3 = opencv3WithoutCuda; # Used only for image loading.
-    cudaSupport = pkgs.config.cudaSupport or false;
+    cudaSupport = config.cudaSupport or false;
   };
 
   ecm = callPackage ../applications/science/math/ecm { };
diff --git a/pkgs/top-level/dotnet-packages.nix b/pkgs/top-level/dotnet-packages.nix
index f14ae3133b8..9c659e655e9 100644
--- a/pkgs/top-level/dotnet-packages.nix
+++ b/pkgs/top-level/dotnet-packages.nix
@@ -327,14 +327,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
 
   Boogie = buildDotnetPackage rec {
     baseName = "Boogie";
-    version = "2019-06-20";
-    name = "${baseName}-unstable-${version}";
+    version = "2.4.1";
 
     src = fetchFromGitHub {
       owner = "boogie-org";
       repo = "boogie";
-      rev = "2e8fae4dc1724d8f9e7b1f877116e56b0773337e";
-      sha256 = "01wjps3yfx8q0qy0zrmmfd1ixjxi2dhkn1wfazb5qm2slav39dp2";
+      rev = "v${version}";
+      sha256 = "13f6ifkh6gpy4bvx5zhgwmk3wd5rfxzl9wxwfhcj1c90fdrhwh1b";
     };
 
     # emulate `nuget restore Source/Boogie.sln`
@@ -379,7 +378,23 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     };
   };
 
-  Dafny = buildDotnetPackage rec {
+  Dafny = let
+    z3 = pkgs.z3.overrideAttrs (oldAttrs: rec {
+      version = "4.8.4";
+      name = "z3-${version}";
+
+      src = fetchFromGitHub {
+        owner = "Z3Prover";
+        repo = "z3";
+        rev = "z3-${version}";
+        sha256 = "014igqm5vwswz0yhz0cdxsj3a6dh7i79hvhgc3jmmmz3z0xm1gyn";
+      };
+    });
+    self' = pkgs.dotnetPackages.override ({
+      pkgs = pkgs // { inherit z3; };
+    });
+    Boogie = assert self'.Boogie.version == "2.4.1"; self'.Boogie;
+  in buildDotnetPackage rec {
     baseName = "Dafny";
     version = "2.3.0";
 
@@ -396,7 +411,7 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     '';
 
     preBuild = ''
-      ln -s ${pkgs.z3} Binaries/z3
+      ln -s ${z3} Binaries/z3
     '';
 
     buildInputs = [ Boogie ];
diff --git a/pkgs/top-level/java-packages.nix b/pkgs/top-level/java-packages.nix
index 73ed6bf9162..7f1bb6e89a7 100644
--- a/pkgs/top-level/java-packages.nix
+++ b/pkgs/top-level/java-packages.nix
@@ -89,6 +89,9 @@ in {
     mavenCommonArtifactFilters_1_3
     mavenCommonArtifactFilters_1_4;
 
+  inherit (callPackage ../development/java-modules/maven/compiler-plugin.nix { inherit fetchMaven; })
+    mavenCompiler_3_2;
+
   inherit (callPackage ../development/java-modules/maven/core.nix { inherit fetchMaven; })
     mavenCore_2_0_1
     mavenCore_2_0_6
@@ -243,13 +246,16 @@ in {
     plexusClassworlds_2_4;
 
   inherit (callPackage ../development/java-modules/plexus/compiler-api.nix { inherit fetchMaven; })
-    plexusCompilerApi_2_2;
+    plexusCompilerApi_2_2
+    plexusCompilerApi_2_4;
 
   inherit (callPackage ../development/java-modules/plexus/compiler-javac.nix { inherit fetchMaven; })
-    plexusCompilerJavac_2_2;
+    plexusCompilerJavac_2_2
+    plexusCompilerJavac_2_4;
 
   inherit (callPackage ../development/java-modules/plexus/compiler-manager.nix { inherit fetchMaven; })
-    plexusCompilerManager_2_2;
+    plexusCompilerManager_2_2
+    plexusCompilerManager_2_4;
 
   inherit (callPackage ../development/java-modules/plexus/component-annotations.nix { inherit fetchMaven; })
     plexusComponentAnnotations_1_5_5;
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index bad6c505d7b..55658e70af9 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -539,6 +539,10 @@ let
 
     minisat = callPackage ../development/ocaml-modules/minisat { };
 
+    mirage-block = callPackage ../development/ocaml-modules/mirage-block { };
+
+    mirage-bootvar-unix = callPackage ../development/ocaml-modules/mirage-bootvar-unix { };
+
     mirage-clock = callPackage ../development/ocaml-modules/mirage-clock { };
 
     mirage-clock-unix = callPackage ../development/ocaml-modules/mirage-clock/unix.nix { };
@@ -563,6 +567,8 @@ let
 
     mirage-kv = callPackage ../development/ocaml-modules/mirage-kv { };
 
+    mirage-net = callPackage ../development/ocaml-modules/mirage-net { };
+
     mirage-protocols = callPackage ../development/ocaml-modules/mirage-protocols { };
 
     mirage-random = callPackage ../development/ocaml-modules/mirage-random { };
@@ -750,6 +756,8 @@ let
 
     ounit2 = callPackage ../development/ocaml-modules/ounit2 { };
 
+    parse-argv = callPackage ../development/ocaml-modules/parse-argv { };
+
     pgsolver = callPackage ../development/ocaml-modules/pgsolver { };
 
     phylogenetics = callPackage ../development/ocaml-modules/phylogenetics { };
@@ -1023,7 +1031,7 @@ let
     janeStreet =
     if lib.versionOlder "4.08" ocaml.version
     then import ../development/ocaml-modules/janestreet/0.13.nix {
-      inherit ctypes dune-configurator janePackage num octavius ppxlib re;
+      inherit ctypes dune-configurator janePackage num octavius ppxlib re zarith;
       inherit (pkgs) openssl;
     }
     else if lib.versionOlder "4.07" ocaml.version
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 7181025f6d0..eb9083a8a47 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1597,7 +1597,13 @@ in {
 
   distutils_extra = callPackage ../development/python-modules/distutils_extra { };
 
-  django_2_2 = callPackage ../development/python-modules/django/2_2.nix { };
+  django = self.django_2;
+
+  # Current LTS
+  django_2 = callPackage ../development/python-modules/django/2.nix { };
+
+  # Current latest
+  django_3 = callPackage ../development/python-modules/django/3.nix { };
 
   django-allauth = callPackage ../development/python-modules/django-allauth { };
 
@@ -1656,8 +1662,6 @@ in {
 
   django-logentry-admin = callPackage ../development/python-modules/django-logentry-admin { };
 
-  django_lts = self.django_2_2;
-
   django-mailman3 = callPackage ../development/python-modules/django-mailman3 { };
 
   django_modelcluster = callPackage ../development/python-modules/django_modelcluster { };
@@ -1704,8 +1708,6 @@ in {
 
   django-sampledatahelper = callPackage ../development/python-modules/django-sampledatahelper { };
 
-  django = self.django_lts;
-
   django-sesame = callPackage ../development/python-modules/django-sesame { };
 
   django_silk = callPackage ../development/python-modules/django_silk { };
@@ -2570,7 +2572,7 @@ in {
 
   grappelli_safe = callPackage ../development/python-modules/grappelli_safe { };
 
-  graspy = callPackage ../development/python-modules/graspy { };
+  graspologic = callPackage ../development/python-modules/graspologic { };
 
   greatfet = callPackage ../development/python-modules/greatfet { };
 
@@ -4498,6 +4500,8 @@ in {
 
   pims = callPackage ../development/python-modules/pims { };
 
+  pinboard = callPackage ../development/python-modules/pinboard { };
+
   pint = callPackage ../development/python-modules/pint { };
 
   pip = callPackage ../development/python-modules/pip { };
@@ -6636,6 +6640,8 @@ in {
 
   smugpy = callPackage ../development/python-modules/smugpy { };
 
+  snack = toPythonModule (pkgs.newt.override { inherit (self) python; });
+
   snakebite = callPackage ../development/python-modules/snakebite { };
 
   snakeviz = callPackage ../development/python-modules/snakeviz { };
@@ -7810,6 +7816,8 @@ in {
 
   zigpy-zigate = callPackage ../development/python-modules/zigpy-zigate { };
 
+  zigpy-znp = callPackage ../development/python-modules/zigpy-znp { };
+
   zimports = callPackage ../development/python-modules/zimports { };
 
   zipfile36 = callPackage ../development/python-modules/zipfile36 { };
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 5fc6e91b311..eacd2f5904c 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -30,7 +30,7 @@ let
   jobs =
     { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease; };
 
-      metrics = import ./metrics.nix { inherit pkgs nixpkgs; };
+      #metrics = import ./metrics.nix { inherit pkgs nixpkgs; };
 
       manual = import ../../doc { inherit pkgs nixpkgs; };
       lib-tests = import ../../lib/tests/release.nix { inherit pkgs; };