summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/languages-frameworks/gnome.section.md4
-rw-r--r--nixos/modules/system/boot/systemd/initrd.nix29
-rw-r--r--nixos/modules/tasks/filesystems.nix48
-rw-r--r--nixos/modules/virtualisation/qemu-vm.nix16
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/fsck.nix12
-rw-r--r--nixos/tests/openldap.nix2
-rw-r--r--pkgs/applications/audio/blanket/default.nix5
-rw-r--r--pkgs/applications/audio/cozy/default.nix5
-rw-r--r--pkgs/applications/audio/gpodder/default.nix7
-rw-r--r--pkgs/applications/audio/pulseaudio-dlna/default.nix2
-rw-r--r--pkgs/applications/audio/sonata/default.nix4
-rw-r--r--pkgs/applications/audio/sublime-music/default.nix6
-rw-r--r--pkgs/applications/audio/tauon/default.nix2
-rw-r--r--pkgs/applications/blockchains/clightning/default.nix2
-rw-r--r--pkgs/applications/editors/rednotebook/default.nix4
-rw-r--r--pkgs/applications/finance/odoo/default.nix2
-rw-r--r--pkgs/applications/graphics/cq-editor/default.nix2
-rw-r--r--pkgs/applications/graphics/curtail/default.nix20
-rw-r--r--pkgs/applications/graphics/eddy/default.nix2
-rw-r--r--pkgs/applications/graphics/mcomix/default.nix8
-rw-r--r--pkgs/applications/graphics/pick-colour-picker/default.nix4
-rw-r--r--pkgs/applications/misc/cobang/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-secrets/default.nix1
-rw-r--r--pkgs/applications/misc/hamster/default.nix7
-rw-r--r--pkgs/applications/misc/kupfer/default.nix10
-rw-r--r--pkgs/applications/misc/lutris/default.nix6
-rw-r--r--pkgs/applications/misc/minigalaxy/default.nix7
-rw-r--r--pkgs/applications/misc/onboard/default.nix3
-rw-r--r--pkgs/applications/misc/openlp/lib.nix4
-rw-r--r--pkgs/applications/misc/printrun/default.nix2
-rw-r--r--pkgs/applications/misc/privacyidea/default.nix2
-rw-r--r--pkgs/applications/misc/wike/default.nix1
-rw-r--r--pkgs/applications/networking/feedreaders/gnome-feeds/default.nix3
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/giara/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/pantalaimon/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/bubblemail/default.nix5
-rw-r--r--pkgs/applications/networking/mkchromecast/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/deluge/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/tremc/default.nix2
-rw-r--r--pkgs/applications/networking/protonvpn-gui/default.nix2
-rw-r--r--pkgs/applications/office/gtg/default.nix1
-rw-r--r--pkgs/applications/office/zim/default.nix3
-rw-r--r--pkgs/applications/radio/gnss-sdr/default.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/3.8.nix4
-rw-r--r--pkgs/applications/radio/gnuradio/3.9.nix4
-rw-r--r--pkgs/applications/radio/gnuradio/default.nix4
-rw-r--r--pkgs/applications/radio/uhd/3.5.nix4
-rw-r--r--pkgs/applications/radio/uhd/default.nix4
-rw-r--r--pkgs/applications/science/biology/eggnog-mapper/default.nix2
-rw-r--r--pkgs/applications/science/electronics/flatcam/default.nix2
-rw-r--r--pkgs/applications/science/engineering/strictdoc/default.nix4
-rw-r--r--pkgs/applications/science/misc/bada-bib/default.nix1
-rw-r--r--pkgs/applications/terminal-emulators/guake/default.nix5
-rw-r--r--pkgs/applications/terminal-emulators/xterm/default.nix4
-rw-r--r--pkgs/applications/version-management/meld/default.nix4
-rw-r--r--pkgs/applications/video/catt/default.nix4
-rw-r--r--pkgs/applications/video/devede/default.nix9
-rw-r--r--pkgs/applications/video/gnomecast/default.nix2
-rw-r--r--pkgs/applications/video/kazam/default.nix3
-rw-r--r--pkgs/applications/video/pitivi/default.nix8
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix1
-rw-r--r--pkgs/build-support/bintools-wrapper/default.nix16
-rw-r--r--pkgs/build-support/bintools-wrapper/ld-wrapper.sh16
-rw-r--r--pkgs/build-support/cc-wrapper/add-hardening.sh27
-rw-r--r--pkgs/build-support/cc-wrapper/default.nix6
-rw-r--r--pkgs/build-support/setup-hooks/patch-shebangs.sh14
-rw-r--r--pkgs/build-support/setup-hooks/reproducible-builds.sh3
-rw-r--r--pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix32
-rw-r--r--pkgs/data/misc/publicsuffix-list/default.nix6
-rw-r--r--pkgs/desktops/gnome/apps/accerciser/default.nix6
-rw-r--r--pkgs/desktops/gnome/misc/gnome-tweaks/default.nix1
-rw-r--r--pkgs/desktops/xfce/applications/catfish/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/10/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/11/default.nix5
-rw-r--r--pkgs/development/compilers/gcc/12/default.nix4
-rw-r--r--pkgs/development/compilers/gcc/4.8/default.nix2
-rw-r--r--pkgs/development/compilers/gcc/4.9/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/6/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/7/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/8/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/9/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/common/configure-flags.nix11
-rw-r--r--pkgs/development/compilers/llvm/10/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/11/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/12/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/13/clang/add-nostdlibinc-flag.patch18
-rw-r--r--pkgs/development/compilers/llvm/13/clang/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/14/clang/add-nostdlibinc-flag.patch18
-rw-r--r--pkgs/development/compilers/llvm/14/clang/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/15/clang/default.nix5
-rw-r--r--pkgs/development/compilers/llvm/5/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/6/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/7/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/8/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/9/clang/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/common/clang/add-nostdlibinc-flag.patch (renamed from pkgs/development/compilers/llvm/git/clang/add-nostdlibinc-flag.patch)0
-rw-r--r--pkgs/development/compilers/llvm/git/clang/default.nix5
-rw-r--r--pkgs/development/compilers/rust/rustc.nix4
-rw-r--r--pkgs/development/compilers/vala/default.nix4
-rw-r--r--pkgs/development/gnuradio-modules/osmosdr/default.nix2
-rw-r--r--pkgs/development/libraries/acl/default.nix3
-rw-r--r--pkgs/development/libraries/c-ares/default.nix15
-rw-r--r--pkgs/development/libraries/cracklib/default.nix6
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix2
-rw-r--r--pkgs/development/libraries/gpgme/python-find-version-string-above-310.patch4
-rw-r--r--pkgs/development/libraries/gsm/default.nix4
-rw-r--r--pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--pkgs/development/libraries/libffi/default.nix1
-rw-r--r--pkgs/development/libraries/liblc3/default.nix4
-rw-r--r--pkgs/development/libraries/libomxil-bellagio/default.nix11
-rw-r--r--pkgs/development/libraries/libplacebo/default.nix2
-rw-r--r--pkgs/development/libraries/librsvg/default.nix20
-rw-r--r--pkgs/development/libraries/mesa/default.nix6
-rw-r--r--pkgs/development/libraries/openldap/default.nix11
-rw-r--r--pkgs/development/libraries/serd/default.nix52
-rw-r--r--pkgs/development/libraries/srtp/default.nix4
-rw-r--r--pkgs/development/libraries/volk/default.nix2
-rw-r--r--pkgs/development/perl-modules/strip-nondeterminism/default.nix14
-rw-r--r--pkgs/development/python-modules/alembic/default.nix4
-rw-r--r--pkgs/development/python-modules/apache-airflow/providers.nix4
-rw-r--r--pkgs/development/python-modules/apscheduler/default.nix (renamed from pkgs/development/python-modules/APScheduler/default.nix)0
-rw-r--r--pkgs/development/python-modules/automate-home/default.nix4
-rw-r--r--pkgs/development/python-modules/blinkstick/default.nix2
-rw-r--r--pkgs/development/python-modules/brelpy/default.nix2
-rw-r--r--pkgs/development/python-modules/bundlewrap/default.nix4
-rw-r--r--pkgs/development/python-modules/cachetools/default.nix4
-rw-r--r--pkgs/development/python-modules/canmatrix/default.nix4
-rw-r--r--pkgs/development/python-modules/colanderalchemy/default.nix2
-rw-r--r--pkgs/development/python-modules/criticality-score/default.nix4
-rw-r--r--pkgs/development/python-modules/cypherpunkpay/default.nix4
-rw-r--r--pkgs/development/python-modules/dogpile-cache/default.nix4
-rw-r--r--pkgs/development/python-modules/dogtail/default.nix7
-rw-r--r--pkgs/development/python-modules/easyprocess/default.nix5
-rw-r--r--pkgs/development/python-modules/elastic-apm/default.nix4
-rw-r--r--pkgs/development/python-modules/email-validator/default.nix18
-rw-r--r--pkgs/development/python-modules/entrypoint2/default.nix4
-rw-r--r--pkgs/development/python-modules/fabric/default.nix (renamed from pkgs/development/python-modules/Fabric/default.nix)0
-rw-r--r--pkgs/development/python-modules/formencode/default.nix (renamed from pkgs/development/python-modules/FormEncode/default.nix)5
-rw-r--r--pkgs/development/python-modules/geoip/default.nix (renamed from pkgs/development/python-modules/GeoIP/default.nix)9
-rw-r--r--pkgs/development/python-modules/geopandas/default.nix4
-rw-r--r--pkgs/development/python-modules/ghrepo-stats/default.nix4
-rw-r--r--pkgs/development/python-modules/htseq/default.nix (renamed from pkgs/development/python-modules/HTSeq/default.nix)2
-rw-r--r--pkgs/development/python-modules/ihatemoney/default.nix4
-rw-r--r--pkgs/development/python-modules/jaydebeapi/default.nix (renamed from pkgs/development/python-modules/JayDeBeApi/default.nix)9
-rw-r--r--pkgs/development/python-modules/jpype1/default.nix (renamed from pkgs/development/python-modules/JPype1/default.nix)5
-rw-r--r--pkgs/development/python-modules/keep/default.nix4
-rw-r--r--pkgs/development/python-modules/kombu/default.nix4
-rw-r--r--pkgs/development/python-modules/libgpuarray/default.nix4
-rw-r--r--pkgs/development/python-modules/logbook/default.nix (renamed from pkgs/development/python-modules/Logbook/default.nix)5
-rw-r--r--pkgs/development/python-modules/ludios_wpull/default.nix4
-rw-r--r--pkgs/development/python-modules/maestral/default.nix4
-rw-r--r--pkgs/development/python-modules/mako/default.nix (renamed from pkgs/development/python-modules/Mako/default.nix)5
-rw-r--r--pkgs/development/python-modules/markdown-it-py/default.nix4
-rw-r--r--pkgs/development/python-modules/mathlibtools/default.nix4
-rw-r--r--pkgs/development/python-modules/matrix-nio/default.nix4
-rw-r--r--pkgs/development/python-modules/nikola/default.nix (renamed from pkgs/development/python-modules/Nikola/default.nix)14
-rw-r--r--pkgs/development/python-modules/nocturne/default.nix6
-rw-r--r--pkgs/development/python-modules/nuitka/default.nix2
-rwxr-xr-xpkgs/development/python-modules/osmnx/default.nix4
-rw-r--r--pkgs/development/python-modules/pandas-stubs/default.nix4
-rw-r--r--pkgs/development/python-modules/pandas/default.nix7
-rw-r--r--pkgs/development/python-modules/papermill/default.nix4
-rw-r--r--pkgs/development/python-modules/pdoc3/default.nix4
-rw-r--r--pkgs/development/python-modules/pecan/default.nix4
-rw-r--r--pkgs/development/python-modules/pmw/default.nix (renamed from pkgs/development/python-modules/Pmw/default.nix)5
-rw-r--r--pkgs/development/python-modules/pweave/default.nix5
-rw-r--r--pkgs/development/python-modules/pwntools/default.nix4
-rw-r--r--pkgs/development/python-modules/pycuda/default.nix4
-rw-r--r--pkgs/development/python-modules/pygithub/default.nix (renamed from pkgs/development/python-modules/pyGithub/default.nix)2
-rw-r--r--pkgs/development/python-modules/pygments/default.nix4
-rw-r--r--pkgs/development/python-modules/pylti/default.nix5
-rw-r--r--pkgs/development/python-modules/pymvglive/default.nix5
-rw-r--r--pkgs/development/python-modules/pyopencl/default.nix4
-rw-r--r--pkgs/development/python-modules/pypugjs/default.nix4
-rw-r--r--pkgs/development/python-modules/pyramid_mako/default.nix4
-rw-r--r--pkgs/development/python-modules/pyrss2gen/default.nix5
-rw-r--r--pkgs/development/python-modules/pyscreenshot/default.nix4
-rw-r--r--pkgs/development/python-modules/pystemmer/default.nix11
-rw-r--r--pkgs/development/python-modules/pytest-bdd/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-xvfb/default.nix4
-rw-r--r--pkgs/development/python-modules/python-telegram-bot/default.nix4
-rw-r--r--pkgs/development/python-modules/pyvirtualdisplay/default.nix (renamed from pkgs/development/python-modules/PyVirtualDisplay/default.nix)5
-rw-r--r--pkgs/development/python-modules/pywbem/default.nix4
-rw-r--r--pkgs/development/python-modules/recommonmark/default.nix4
-rw-r--r--pkgs/development/python-modules/reikna/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-cache/default.nix7
-rw-r--r--pkgs/development/python-modules/rich/default.nix8
-rw-r--r--pkgs/development/python-modules/rtree/default.nix (renamed from pkgs/development/python-modules/Rtree/default.nix)0
-rw-r--r--pkgs/development/python-modules/shodan/default.nix4
-rw-r--r--pkgs/development/python-modules/snowballstemmer/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx-markdown-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx/default.nix6
-rw-r--r--pkgs/development/python-modules/spyder/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlobject/default.nix4
-rw-r--r--pkgs/development/python-modules/textual/default.nix24
-rw-r--r--pkgs/development/python-modules/theano/default.nix (renamed from pkgs/development/python-modules/Theano/default.nix)2
-rw-r--r--pkgs/development/python-modules/txtorcon/default.nix4
-rw-r--r--pkgs/development/python-modules/wsme/default.nix (renamed from pkgs/development/python-modules/WSME/default.nix)5
-rw-r--r--pkgs/development/python-modules/xlsxwriter/default.nix (renamed from pkgs/development/python-modules/XlsxWriter/default.nix)0
-rw-r--r--pkgs/development/python-modules/yapsy/default.nix5
-rw-r--r--pkgs/development/python-modules/zodb/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix4
-rw-r--r--pkgs/development/tools/cambalache/default.nix9
-rw-r--r--pkgs/development/tools/github/cligh/default.nix4
-rw-r--r--pkgs/development/tools/misc/d-feet/default.nix4
-rw-r--r--pkgs/development/tools/misc/gdb/default.nix12
-rw-r--r--pkgs/development/tools/misc/texinfo/7.0.nix4
-rw-r--r--pkgs/development/tools/misc/texinfo/common.nix9
-rw-r--r--pkgs/development/tools/ocaml/findlib/default.nix1
-rw-r--r--pkgs/misc/drivers/sc-controller/default.nix7
-rw-r--r--pkgs/misc/solfege/default.nix2
-rw-r--r--pkgs/os-specific/darwin/binutils/default.nix1
-rw-r--r--pkgs/os-specific/darwin/cctools/port.nix9
-rw-r--r--pkgs/os-specific/linux/cryptsetup/default.nix7
-rw-r--r--pkgs/os-specific/linux/ell/default.nix4
-rw-r--r--pkgs/os-specific/linux/iwd/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel-headers/default.nix4
-rwxr-xr-xpkgs/os-specific/linux/kernel/hardened/update.py2
-rw-r--r--pkgs/os-specific/linux/kernel/manual-config.nix2
-rw-r--r--pkgs/os-specific/linux/lvm2/2_02.nix4
-rw-r--r--pkgs/os-specific/linux/lvm2/2_03.nix4
-rw-r--r--pkgs/os-specific/linux/lvm2/common.nix39
-rw-r--r--pkgs/os-specific/linux/lvm2/fix-stdio-usage.patch31
-rw-r--r--pkgs/os-specific/linux/lvm2/no-shared.diff25
-rw-r--r--pkgs/os-specific/linux/lvm2/no-shared.patch46
-rw-r--r--pkgs/os-specific/linux/piper/default.nix4
-rw-r--r--pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch21
-rw-r--r--pkgs/servers/calibre-web/default.nix2
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix6
-rw-r--r--pkgs/servers/home-assistant/default.nix2
-rw-r--r--pkgs/servers/home-assistant/tests.nix2
-rw-r--r--pkgs/servers/mautrix-facebook/default.nix2
-rw-r--r--pkgs/servers/mautrix-googlechat/default.nix2
-rw-r--r--pkgs/servers/mautrix-signal/default.nix2
-rw-r--r--pkgs/servers/mautrix-telegram/default.nix4
-rw-r--r--pkgs/servers/x11/xorg/default.nix12
-rw-r--r--pkgs/servers/x11/xorg/tarballs.list4
-rw-r--r--pkgs/stdenv/adapters.nix22
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix28
-rw-r--r--pkgs/stdenv/linux/bootstrap-tools-musl/default.nix1
-rw-r--r--pkgs/stdenv/linux/bootstrap-tools/default.nix1
-rw-r--r--pkgs/stdenv/linux/default.nix124
-rw-r--r--pkgs/test/default.nix2
-rw-r--r--pkgs/test/patch-shebangs/default.nix70
-rw-r--r--pkgs/test/stdenv/default.nix4
-rw-r--r--pkgs/test/stdenv/hooks.nix4
-rw-r--r--pkgs/test/stdenv/patch-shebangs.nix98
-rw-r--r--pkgs/tools/X11/arandr/default.nix4
-rw-r--r--pkgs/tools/admin/azure-cli/default.nix4
-rw-r--r--pkgs/tools/audio/beets/common.nix2
-rw-r--r--pkgs/tools/audio/mpdris2/default.nix1
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix2
-rw-r--r--pkgs/tools/graphics/graphviz/default.nix4
-rw-r--r--pkgs/tools/graphics/mangohud/default.nix4
-rw-r--r--pkgs/tools/graphics/piglit/default.nix2
-rw-r--r--pkgs/tools/inputmethods/input-remapper/default.nix5
-rw-r--r--pkgs/tools/misc/gaphor/default.nix4
-rw-r--r--pkgs/tools/misc/online-judge-template-generator/default.nix4
-rw-r--r--pkgs/tools/misc/trackma/default.nix7
-rw-r--r--pkgs/tools/networking/curl/7.88.0-http2-breakage.patch101
-rw-r--r--pkgs/tools/networking/curl/default.nix6
-rw-r--r--pkgs/tools/networking/dnstwist/default.nix2
-rw-r--r--pkgs/tools/security/gnome-keysign/default.nix3
-rw-r--r--pkgs/tools/security/wapiti/default.nix2
-rw-r--r--pkgs/tools/security/xsser/default.nix4
-rw-r--r--pkgs/tools/text/diffutils/default.nix16
-rw-r--r--pkgs/tools/text/diffutils/fix-diff-D.patch15
-rw-r--r--pkgs/top-level/all-packages.nix13
-rw-r--r--pkgs/top-level/python-aliases.nix33
-rw-r--r--pkgs/top-level/python-packages.nix75
-rw-r--r--pkgs/top-level/release.nix6
274 files changed, 1135 insertions, 983 deletions
diff --git a/doc/languages-frameworks/gnome.section.md b/doc/languages-frameworks/gnome.section.md
index 0d4865b7af1..3c8539ac424 100644
--- a/doc/languages-frameworks/gnome.section.md
+++ b/doc/languages-frameworks/gnome.section.md
@@ -116,10 +116,6 @@ For convenience, it also adds `dconf.lib` for a GIO module implementing a GSetti
 
 - []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGAppsHook`. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGAppsHook`.
 
-  ::: {.warning}
-  The setup hook [currently](https://github.com/NixOS/nixpkgs/issues/56943) does not work in expressions with `strictDeps` enabled, like Python packages. In those cases, you will need to disable it with `strictDeps = false;`.
-  :::
-
 - []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGAppsHook`.
 
 You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook:
diff --git a/nixos/modules/system/boot/systemd/initrd.nix b/nixos/modules/system/boot/systemd/initrd.nix
index 1189be3738f..0c78eec8fde 100644
--- a/nixos/modules/system/boot/systemd/initrd.nix
+++ b/nixos/modules/system/boot/systemd/initrd.nix
@@ -158,6 +158,16 @@ in {
       '';
     };
 
+    managerEnvironment = mkOption {
+      type = with types; attrsOf (nullOr (oneOf [ str path package ]));
+      default = {};
+      example = { SYSTEMD_LOG_LEVEL = "debug"; };
+      description = lib.mdDoc ''
+        Environment variables of PID 1. These variables are
+        *not* passed to started units.
+      '';
+    };
+
     contents = mkOption {
       description = lib.mdDoc "Set of files that have to be linked into the initrd";
       example = literalExpression ''
@@ -355,8 +365,11 @@ in {
         less = "${pkgs.less}/bin/less";
         mount = "${cfg.package.util-linux}/bin/mount";
         umount = "${cfg.package.util-linux}/bin/umount";
+        fsck = "${cfg.package.util-linux}/bin/fsck";
       };
 
+      managerEnvironment.PATH = "/bin:/sbin";
+
       contents = {
         "/init".source = "${cfg.package}/lib/systemd/systemd";
         "/etc/systemd/system".source = stage1Units;
@@ -365,6 +378,7 @@ in {
           [Manager]
           DefaultEnvironment=PATH=/bin:/sbin ${optionalString (isBool cfg.emergencyAccess && cfg.emergencyAccess) "SYSTEMD_SULOGIN_FORCE=1"}
           ${cfg.extraConfig}
+          ManagerEnvironment=${lib.concatStringsSep " " (lib.mapAttrsToList (n: v: "${n}=${lib.escapeShellArg v}") cfg.managerEnvironment)}
         '';
 
         "/lib/modules".source = "${modulesClosure}/lib/modules";
@@ -444,21 +458,6 @@ in {
                      (v: let n = escapeSystemdPath v.where;
                          in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
 
-      # The unit in /run/systemd/generator shadows the unit in
-      # /etc/systemd/system, but will still apply drop-ins from
-      # /etc/systemd/system/foo.service.d/
-      #
-      # We need IgnoreOnIsolate, otherwise the Requires dependency of
-      # a mount unit on its makefs unit causes it to be unmounted when
-      # we isolate for switch-root. Use a dummy package so that
-      # generateUnits will generate drop-ins instead of unit files.
-      packages = [(pkgs.runCommand "dummy" {} ''
-        mkdir -p $out/etc/systemd/system
-        touch $out/etc/systemd/system/systemd-{makefs,growfs}@.service
-      '')];
-      services."systemd-makefs@" = lib.mkIf needMakefs { unitConfig.IgnoreOnIsolate = true; };
-      services."systemd-growfs@" = lib.mkIf needGrowfs { unitConfig.IgnoreOnIsolate = true; };
-
       # make sure all the /dev nodes are set up
       services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"];
 
diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix
index 7f2c8a41b20..822f1593474 100644
--- a/nixos/modules/tasks/filesystems.nix
+++ b/nixos/modules/tasks/filesystems.nix
@@ -140,7 +140,10 @@ let
         else if config.fsType == "reiserfs" then "-q"
         else null;
     in {
-      options = mkIf config.autoResize [ "x-nixos.autoresize" ];
+      options = mkMerge [
+        (mkIf config.autoResize [ "x-nixos.autoresize" ])
+        (mkIf (utils.fsNeededForBoot config) [ "x-initrd.mount" ])
+      ];
       formatOptions = mkIf (defaultFormatOptions != null) (mkDefault defaultFormatOptions);
     };
 
@@ -155,27 +158,54 @@ let
 
   makeFstabEntries =
     let
-      fsToSkipCheck = [ "none" "bindfs" "btrfs" "zfs" "tmpfs" "nfs" "nfs4" "vboxsf" "glusterfs" "apfs" "9p" "cifs" "prl_fs" "vmhgfs" ];
+      fsToSkipCheck = [
+        "none"
+        "auto"
+        "overlay"
+        "iso9660"
+        "bindfs"
+        "udf"
+        "btrfs"
+        "zfs"
+        "tmpfs"
+        "bcachefs"
+        "nfs"
+        "nfs4"
+        "nilfs2"
+        "vboxsf"
+        "squashfs"
+        "glusterfs"
+        "apfs"
+        "9p"
+        "cifs"
+        "prl_fs"
+        "vmhgfs"
+      ] ++ lib.optionals (!config.boot.initrd.checkJournalingFS) [
+        "ext3"
+        "ext4"
+        "reiserfs"
+        "xfs"
+        "jfs"
+        "f2fs"
+      ];
       isBindMount = fs: builtins.elem "bind" fs.options;
       skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck || isBindMount fs;
       # https://wiki.archlinux.org/index.php/fstab#Filepath_spaces
       escape = string: builtins.replaceStrings [ " " "\t" ] [ "\\040" "\\011" ] string;
-    in fstabFileSystems: { rootPrefix ? "", excludeChecks ? false, extraOpts ? (fs: []) }: concatMapStrings (fs:
+    in fstabFileSystems: { rootPrefix ? "", extraOpts ? (fs: []) }: concatMapStrings (fs:
       (optionalString (isBindMount fs) (escape rootPrefix))
       + (if fs.device != null then escape fs.device
          else if fs.label != null then "/dev/disk/by-label/${escape fs.label}"
          else throw "No device specified for mount point ‘${fs.mountPoint}’.")
-      + " " + escape (rootPrefix + fs.mountPoint)
+      + " " + escape fs.mountPoint
       + " " + fs.fsType
       + " " + escape (builtins.concatStringsSep "," (fs.options ++ (extraOpts fs)))
-      + " " + (optionalString (!excludeChecks)
-        ("0 " + (if skipCheck fs then "0" else if fs.mountPoint == "/" then "1" else "2")))
+      + " 0 " + (if skipCheck fs then "0" else if fs.mountPoint == "/" then "1" else "2")
       + "\n"
     ) fstabFileSystems;
 
     initrdFstab = pkgs.writeText "initrd-fstab" (makeFstabEntries (filter utils.fsNeededForBoot fileSystems) {
       rootPrefix = "/sysroot";
-      excludeChecks = true;
       extraOpts = fs:
         (optional fs.autoResize "x-systemd.growfs")
         ++ (optional fs.autoFormat "x-systemd.makefs");
@@ -328,7 +358,9 @@ in
         )}
       '';
 
-    boot.initrd.systemd.contents."/etc/fstab".source = initrdFstab;
+    boot.initrd.systemd.storePaths = [initrdFstab];
+    boot.initrd.systemd.managerEnvironment.SYSTEMD_SYSROOT_FSTAB = initrdFstab;
+    boot.initrd.systemd.services.initrd-parse-etc.environment.SYSTEMD_SYSROOT_FSTAB = initrdFstab;
 
     # Provide a target that pulls in all filesystems.
     systemd.targets.fs =
diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix
index 06210529eb8..700fccb5ebd 100644
--- a/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixos/modules/virtualisation/qemu-vm.nix
@@ -1084,15 +1084,17 @@ in
         what = "overlay";
         type = "overlay";
         options = "lowerdir=/sysroot/nix/.ro-store,upperdir=/sysroot/nix/.rw-store/store,workdir=/sysroot/nix/.rw-store/work";
-        wantedBy = ["local-fs.target"];
-        before = ["local-fs.target"];
-        requires = ["sysroot-nix-.ro\\x2dstore.mount" "sysroot-nix-.rw\\x2dstore.mount" "rw-store.service"];
-        after = ["sysroot-nix-.ro\\x2dstore.mount" "sysroot-nix-.rw\\x2dstore.mount" "rw-store.service"];
-        unitConfig.IgnoreOnIsolate = true;
+        wantedBy = ["initrd-fs.target"];
+        before = ["initrd-fs.target"];
+        requires = ["rw-store.service"];
+        after = ["rw-store.service"];
+        unitConfig.RequiresMountsFor = "/sysroot/nix/.ro-store";
       }];
       services.rw-store = {
-        after = ["sysroot-nix-.rw\\x2dstore.mount"];
-        unitConfig.DefaultDependencies = false;
+        unitConfig = {
+          DefaultDependencies = false;
+          RequiresMountsFor = "/sysroot/nix/.rw-store";
+        };
         serviceConfig = {
           Type = "oneshot";
           ExecStart = "/bin/mkdir -p 0755 /sysroot/nix/.rw-store/store /sysroot/nix/.rw-store/work /sysroot/nix/store";
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 785a5621f57..58e495fa0f9 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -235,6 +235,7 @@ in {
   freshrss-pgsql = handleTest ./freshrss-pgsql.nix {};
   frr = handleTest ./frr.nix {};
   fsck = handleTest ./fsck.nix {};
+  fsck-systemd-stage-1 = handleTest ./fsck.nix { systemdStage1 = true; };
   ft2-clone = handleTest ./ft2-clone.nix {};
   mimir = handleTest ./mimir.nix {};
   garage = handleTest ./garage {};
diff --git a/nixos/tests/fsck.nix b/nixos/tests/fsck.nix
index 5b8b09f433a..ccb664be080 100644
--- a/nixos/tests/fsck.nix
+++ b/nixos/tests/fsck.nix
@@ -1,3 +1,9 @@
+{ system ? builtins.currentSystem
+, config ? {}
+, pkgs ? import ../.. { inherit system config; }
+, systemdStage1 ? false
+}:
+
 import ./make-test-python.nix {
   name = "fsck";
 
@@ -11,13 +17,17 @@ import ./make-test-python.nix {
         autoFormat = true;
       };
     };
+
+    boot.initrd.systemd.enable = systemdStage1;
   };
 
   testScript = ''
     machine.wait_for_unit("default.target")
 
     with subtest("root fs is fsckd"):
-        machine.succeed("journalctl -b | grep 'fsck.ext4.*/dev/vda'")
+        machine.succeed("journalctl -b | grep '${if systemdStage1
+          then "fsck.*vda.*clean"
+          else "fsck.ext4.*/dev/vda"}'")
 
     with subtest("mnt fs is fsckd"):
         machine.succeed("journalctl -b | grep 'fsck.*/dev/vdb.*clean'")
diff --git a/nixos/tests/openldap.nix b/nixos/tests/openldap.nix
index 075bb5d1f64..47d6a91843f 100644
--- a/nixos/tests/openldap.nix
+++ b/nixos/tests/openldap.nix
@@ -118,7 +118,7 @@ in {
     };
   };
   testScript = { nodes, ... }: let
-    specializations = "${nodes.machine.config.system.build.toplevel}/specialisation";
+    specializations = "${nodes.machine.system.build.toplevel}/specialisation";
     changeRootPw = ''
       dn: olcDatabase={1}mdb,cn=config
       changetype: modify
diff --git a/pkgs/applications/audio/blanket/default.nix b/pkgs/applications/audio/blanket/default.nix
index 4662002c95e..5a3d9949f8c 100644
--- a/pkgs/applications/audio/blanket/default.nix
+++ b/pkgs/applications/audio/blanket/default.nix
@@ -31,13 +31,13 @@ python3Packages.buildPythonApplication rec {
     pkg-config
     wrapGAppsHook4
     desktop-file-utils
+    gobject-introspection
   ];
 
   buildInputs = [
     glib
     gtk4
     libadwaita
-    gobject-introspection
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-good
@@ -48,9 +48,6 @@ python3Packages.buildPythonApplication rec {
     pygobject3
   ];
 
-  # Broken with gobject-introspection setup hook
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
   format = "other";
 
   postPatch = ''
diff --git a/pkgs/applications/audio/cozy/default.nix b/pkgs/applications/audio/cozy/default.nix
index 6398141c86d..8f7461683be 100644
--- a/pkgs/applications/audio/cozy/default.nix
+++ b/pkgs/applications/audio/cozy/default.nix
@@ -24,11 +24,6 @@ python3Packages.buildPythonApplication rec {
   pname = "cozy";
   version = "1.2.1";
 
-  # Temporary fix
-  # See https://github.com/NixOS/nixpkgs/issues/57029
-  # and https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   src = fetchFromGitHub {
     owner = "geigi";
     repo = pname;
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index a6164189c1d..d79aa713f08 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -27,17 +27,12 @@ python3Packages.buildPythonApplication rec {
     intltool
     wrapGAppsHook
     glibcLocales
+    gobject-introspection
   ];
 
-  # as of 2021-07, the gobject-introspection setup hook does not
-  # work with `strictDeps` enabled, thus for proper `wrapGAppsHook`
-  # it needs to be disabled explicitly. https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   buildInputs = [
     python3
     gtk3
-    gobject-introspection
     gnome.adwaita-icon-theme
   ];
 
diff --git a/pkgs/applications/audio/pulseaudio-dlna/default.nix b/pkgs/applications/audio/pulseaudio-dlna/default.nix
index 384718f1db5..5358750b13e 100644
--- a/pkgs/applications/audio/pulseaudio-dlna/default.nix
+++ b/pkgs/applications/audio/pulseaudio-dlna/default.nix
@@ -43,7 +43,7 @@ python3Packages.buildPythonApplication {
     notify2
     pyroute2
     pygobject3
-    PyChromecast
+    pychromecast
     lxml
     setuptools
     zeroconf
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
index 9eae394488e..78c17d09e0d 100644
--- a/pkgs/applications/audio/sonata/default.nix
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -39,10 +39,6 @@ in buildPythonApplication rec {
     setuptools
   ];
 
-  # Otherwise the setup hook for gobject-introspection is not run:
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   postPatch = ''
     # Remove "Local MPD" tab which is not suitable for NixOS.
     sed -i '/localmpd/d' sonata/consts.py
diff --git a/pkgs/applications/audio/sublime-music/default.nix b/pkgs/applications/audio/sublime-music/default.nix
index d469c9689a5..39de4728f3d 100644
--- a/pkgs/applications/audio/sublime-music/default.nix
+++ b/pkgs/applications/audio/sublime-music/default.nix
@@ -70,15 +70,11 @@ python3Packages.buildPythonApplication rec {
     requests
     semver
   ]
-  ++ lib.optional chromecastSupport PyChromecast
+  ++ lib.optional chromecastSupport pychromecast
   ++ lib.optional keyringSupport keyring
   ++ lib.optional serverSupport bottle
   ;
 
-  # hook for gobject-introspection doesn't like strictDeps
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   nativeCheckInputs = with python3Packages; [
     pytest
   ];
diff --git a/pkgs/applications/audio/tauon/default.nix b/pkgs/applications/audio/tauon/default.nix
index db7851d9e15..984938a7b4e 100644
--- a/pkgs/applications/audio/tauon/default.nix
+++ b/pkgs/applications/audio/tauon/default.nix
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
     plexapi
     pulsectl
     pycairo
-    PyChromecast
+    pychromecast
     pylast
     pygobject3
     pylyrics
diff --git a/pkgs/applications/blockchains/clightning/default.nix b/pkgs/applications/blockchains/clightning/default.nix
index 45854ddcd63..ba23789c4b5 100644
--- a/pkgs/applications/blockchains/clightning/default.nix
+++ b/pkgs/applications/blockchains/clightning/default.nix
@@ -18,7 +18,7 @@
 , zlib
 }:
 let
-  py3 = python3.withPackages (p: [ p.Mako ]);
+  py3 = python3.withPackages (p: [ p.mako ]);
 in
 stdenv.mkDerivation rec {
   pname = "clightning";
diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix
index 2018e1d5e2a..abbfefce529 100644
--- a/pkgs/applications/editors/rednotebook/default.nix
+++ b/pkgs/applications/editors/rednotebook/default.nix
@@ -30,10 +30,6 @@ buildPythonApplication rec {
     "--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   ];
 
-  # Until gobject-introspection in nativeBuildInputs is supported.
-  # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-472568643
-  strictDeps = false;
-
   meta = with lib; {
     homepage = "https://rednotebook.sourceforge.io/";
     changelog = "https://github.com/jendrikseipp/rednotebook/blob/v${version}/CHANGELOG.md";
diff --git a/pkgs/applications/finance/odoo/default.nix b/pkgs/applications/finance/odoo/default.nix
index 51aa407b04a..33b9182a480 100644
--- a/pkgs/applications/finance/odoo/default.nix
+++ b/pkgs/applications/finance/odoo/default.nix
@@ -130,7 +130,7 @@ in python.pkgs.buildPythonApplication rec {
     vobject
     werkzeug
     xlrd
-    XlsxWriter
+    xlsxwriter
     xlwt
     zeep
   ];
diff --git a/pkgs/applications/graphics/cq-editor/default.nix b/pkgs/applications/graphics/cq-editor/default.nix
index f63b3b1709c..13a8ef1a02b 100644
--- a/pkgs/applications/graphics/cq-editor/default.nix
+++ b/pkgs/applications/graphics/cq-editor/default.nix
@@ -22,7 +22,7 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [
     cadquery
-    Logbook
+    logbook
     pyqt5
     pyparsing
     pyqtgraph
diff --git a/pkgs/applications/graphics/curtail/default.nix b/pkgs/applications/graphics/curtail/default.nix
index 118703afc60..1d7df76c214 100644
--- a/pkgs/applications/graphics/curtail/default.nix
+++ b/pkgs/applications/graphics/curtail/default.nix
@@ -37,24 +37,30 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
+    gobject-introspection
   ];
 
-  propagatedBuildInputs = [
+  buildInputs = [
     appstream-glib
-    python3.pkgs.pygobject3
-    gobject-introspection
     gettext
+    gtk3
   ];
 
-  # Currently still required for the gobject-introspection setup hook
-  strictDeps = false;
+  propagatedBuildInputs = [
+    python3.pkgs.pygobject3
+  ];
 
   preInstall = ''
     patchShebangs ../build-aux/meson/postinstall.py
   '';
 
-  postInstall = ''
-    wrapProgram $out/bin/curtail --prefix PATH : ${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]}
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=(
+      "''${gappsWrapperArgs[@]}"
+      "--prefix" "PATH" ":" "${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]}"
+    )
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/graphics/eddy/default.nix b/pkgs/applications/graphics/eddy/default.nix
index 6b8f465a106..58b8777bb22 100644
--- a/pkgs/applications/graphics/eddy/default.nix
+++ b/pkgs/applications/graphics/eddy/default.nix
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
     wrapQtAppsHook
     python3Packages.setuptools
     python3Packages.rfc3987
-    python3Packages.JPype1
+    python3Packages.jpype1
     python3Packages.pyqt5
   ];
 
diff --git a/pkgs/applications/graphics/mcomix/default.nix b/pkgs/applications/graphics/mcomix/default.nix
index fbc80d0da6d..2cec147fb30 100644
--- a/pkgs/applications/graphics/mcomix/default.nix
+++ b/pkgs/applications/graphics/mcomix/default.nix
@@ -25,17 +25,13 @@ python3.pkgs.buildPythonApplication rec {
     hash = "sha256-Nok4oqTezO84q9IDZvgi33ZeKfRL+tpg7QEDmp2ZZpU=";
   };
 
-  buildInputs = [ gobject-introspection gtk3 gdk-pixbuf ];
-  nativeBuildInputs = [ wrapGAppsHook ];
+  buildInputs = [ gtk3 gdk-pixbuf ];
+  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
   propagatedBuildInputs = (with python3.pkgs; [ pillow pygobject3 pycairo ]);
 
   # Tests are broken
   doCheck = false;
 
-  # Correct wrapper behavior, see https://github.com/NixOS/nixpkgs/issues/56943
-  # until https://github.com/NixOS/nixpkgs/pull/102613
-  strictDeps = false;
-
   # prevent double wrapping
   dontWrapGApps = true;
 
diff --git a/pkgs/applications/graphics/pick-colour-picker/default.nix b/pkgs/applications/graphics/pick-colour-picker/default.nix
index 0d3a86663b3..774a8b19dd3 100644
--- a/pkgs/applications/graphics/pick-colour-picker/default.nix
+++ b/pkgs/applications/graphics/pick-colour-picker/default.nix
@@ -37,10 +37,6 @@ buildPythonPackage rec {
     gtk3
   ];
 
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  # this must be false, otherwise the gobject-introspection hook doesn't run
-  strictDeps = false;
-
   preDistPhases = [ "fixupIconPath" ];
 
   fixupIconPath = ''
diff --git a/pkgs/applications/misc/cobang/default.nix b/pkgs/applications/misc/cobang/default.nix
index 55bca8aa805..a1430a8b5e3 100644
--- a/pkgs/applications/misc/cobang/default.nix
+++ b/pkgs/applications/misc/cobang/default.nix
@@ -13,7 +13,7 @@
 , pango
 , gst-python
 , kiss-headers
-, Logbook
+, logbook
 , pillow
 , poetry-core
 , pygobject3
@@ -47,7 +47,7 @@ buildPythonApplication rec {
   propagatedBuildInputs = [
     gst-python
     kiss-headers
-    Logbook
+    logbook
     pillow
     poetry-core
     pygobject3
diff --git a/pkgs/applications/misc/gnome-secrets/default.nix b/pkgs/applications/misc/gnome-secrets/default.nix
index 1b8a7e706dd..676a19641bd 100644
--- a/pkgs/applications/misc/gnome-secrets/default.nix
+++ b/pkgs/applications/misc/gnome-secrets/default.nix
@@ -18,7 +18,6 @@ python3Packages.buildPythonApplication rec {
   pname = "gnome-secrets";
   version = "7.2";
   format = "other";
-  strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
diff --git a/pkgs/applications/misc/hamster/default.nix b/pkgs/applications/misc/hamster/default.nix
index dbf7e1aee74..925d246ba84 100644
--- a/pkgs/applications/misc/hamster/default.nix
+++ b/pkgs/applications/misc/hamster/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool
+{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3
 , wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }:
 
 python3Packages.buildPythonApplication rec {
@@ -28,6 +28,7 @@ python3Packages.buildPythonApplication rec {
     pango
     gdk-pixbuf
     atk
+    gtk3
   ];
 
   propagatedBuildInputs = with python3Packages; [
@@ -37,10 +38,6 @@ python3Packages.buildPythonApplication rec {
     dbus-python
   ];
 
-  # Setup hooks have trouble with strict deps.
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   dontWrapGApps = true;
 
   # Arguments to be passed to `makeWrapper`, only used by buildPython*
diff --git a/pkgs/applications/misc/kupfer/default.nix b/pkgs/applications/misc/kupfer/default.nix
index 47e310fb765..fbb33c7e096 100644
--- a/pkgs/applications/misc/kupfer/default.nix
+++ b/pkgs/applications/misc/kupfer/default.nix
@@ -11,6 +11,8 @@
 , shared-mime-info
 , wrapGAppsHook
 , wafHook
+, bash
+, dbus
 }:
 
 with python3Packages;
@@ -33,14 +35,12 @@ buildPythonApplication rec {
     itstool            # for help pages
     desktop-file-utils # for update-desktop-database
     shared-mime-info   # for update-mime-info
+    docutils # for rst2man
+    dbus # for detection of dbus-send during build
   ];
-  buildInputs = [ docutils libwnck keybinder3 ];
+  buildInputs = [ libwnck keybinder3 bash ];
   propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ];
 
-  # without strictDeps kupfer fails to build: Could not find the python module 'gi.repository.Gtk'
-  # see https://github.com/NixOS/nixpkgs/issues/56943 for details
-  strictDeps = false;
-
   postInstall = ''
     gappsWrapperArgs+=(
       "--prefix" "PYTHONPATH" : "${makePythonPath propagatedBuildInputs}"
diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix
index d476024553b..35dbf1fcb44 100644
--- a/pkgs/applications/misc/lutris/default.nix
+++ b/pkgs/applications/misc/lutris/default.nix
@@ -84,13 +84,12 @@ buildPythonApplication rec {
     sha256 = "sha256-rsiXm7L/M85ot6NrTyy//lMRFlLPJYve9y6Erg9Ugxg=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
   buildInputs = [
     atk
     gdk-pixbuf
     glib-networking
     gnome-desktop
-    gobject-introspection
     gtk3
     libnotify
     pango
@@ -139,9 +138,6 @@ buildPythonApplication rec {
     "--prefix PATH : ${lib.makeBinPath requiredTools}"
     "\${gappsWrapperArgs[@]}"
   ];
-  # needed for glib-schemas to work correctly (will crash on dialogues otherwise)
-  # see https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
 
   meta = with lib; {
     homepage = "https://lutris.net";
diff --git a/pkgs/applications/misc/minigalaxy/default.nix b/pkgs/applications/misc/minigalaxy/default.nix
index 743c92407e7..4dffe9e08eb 100644
--- a/pkgs/applications/misc/minigalaxy/default.nix
+++ b/pkgs/applications/misc/minigalaxy/default.nix
@@ -31,18 +31,14 @@ python3Packages.buildPythonApplication rec {
     runHook postCheck
   '';
 
-  # Cannot find GSettings schemas when opening settings,
-  # probably https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   nativeBuildInputs = [
     gettext
     wrapGAppsHook
+    gobject-introspection
   ];
 
   buildInputs = [
     glib-networking
-    gobject-introspection
     gtk3
   ];
 
@@ -64,6 +60,7 @@ python3Packages.buildPythonApplication rec {
   ];
 
   # Run Linux games using the Steam Runtime by using steam-run in the wrapper
+  # FIXME: not working with makeBinaryWrapper
   postFixup = ''
     sed -e 's#exec -a "$0"#exec -a "$0" ${steam-run}/bin/steam-run#' -i $out/bin/minigalaxy
   '';
diff --git a/pkgs/applications/misc/onboard/default.nix b/pkgs/applications/misc/onboard/default.nix
index 472af0caf48..9d88d6331c1 100644
--- a/pkgs/applications/misc/onboard/default.nix
+++ b/pkgs/applications/misc/onboard/default.nix
@@ -108,9 +108,6 @@ python3.pkgs.buildPythonApplication rec {
     python3.pkgs.nose
   ];
 
-  # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   doCheck = false;
 
   preBuild = ''
diff --git a/pkgs/applications/misc/openlp/lib.nix b/pkgs/applications/misc/openlp/lib.nix
index 4a61ab65376..045211c3af6 100644
--- a/pkgs/applications/misc/openlp/lib.nix
+++ b/pkgs/applications/misc/openlp/lib.nix
@@ -4,7 +4,7 @@
 
 # python deps
 , python, buildPythonPackage
-, alembic, beautifulsoup4, chardet, lxml, Mako, pyenchant
+, alembic, beautifulsoup4, chardet, lxml, mako, pyenchant
 , pyqt5_with_qtwebkit, pyxdg, sip_4, sqlalchemy, sqlalchemy-migrate
 }:
 
@@ -37,7 +37,7 @@ buildPythonPackage rec {
     beautifulsoup4
     chardet
     lxml
-    Mako
+    mako
     pyenchant
     pyqt5_with_qtwebkit
     pyxdg
diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix
index 7ae8662e2c1..546c0544cff 100644
--- a/pkgs/applications/misc/printrun/default.nix
+++ b/pkgs/applications/misc/printrun/default.nix
@@ -32,8 +32,6 @@ python3Packages.buildPythonApplication rec {
   '';
 
   dontWrapGApps = true;
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
 
   preFixup = ''
     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
diff --git a/pkgs/applications/misc/privacyidea/default.nix b/pkgs/applications/misc/privacyidea/default.nix
index 2af5e9d692d..61c9e2a1681 100644
--- a/pkgs/applications/misc/privacyidea/default.nix
+++ b/pkgs/applications/misc/privacyidea/default.nix
@@ -106,7 +106,7 @@ let
       # Now requires `lingua` as check input that requires a newer `click`,
       # however `click-7` is needed by the older flask we need here. Since it's just
       # for the test-suite apparently, let's skip it for now.
-      Mako = super.Mako.overridePythonAttrs (lib.const {
+      mako = super.mako.overridePythonAttrs (lib.const {
         nativeCheckInputs = [];
         doCheck = false;
       });
diff --git a/pkgs/applications/misc/wike/default.nix b/pkgs/applications/misc/wike/default.nix
index c3e5a505722..00cd8dcf051 100644
--- a/pkgs/applications/misc/wike/default.nix
+++ b/pkgs/applications/misc/wike/default.nix
@@ -12,7 +12,6 @@ python3.pkgs.buildPythonApplication rec {
   pname = "wike";
   version = "1.7.1";
   format = "other";
-  strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchFromGitHub {
     owner = "hugolabe";
diff --git a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
index f80be45ebd1..7563e8c22d7 100644
--- a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
+++ b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
@@ -66,9 +66,6 @@ python3.pkgs.buildPythonApplication rec {
     requests
   ];
 
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   dontWrapGApps = true;
 
   preFixup = ''
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index fbb73dbd968..7cca113fde9 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -30,7 +30,7 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [
     # See https://github.com/Flexget/Flexget/blob/master/requirements.txt
-    APScheduler
+    apscheduler
     beautifulsoup4
     click
     colorama
@@ -44,7 +44,7 @@ python3Packages.buildPythonApplication rec {
     packaging
     psutil
     pynzb
-    PyRSS2Gen
+    pyrss2gen
     python-dateutil
     pyyaml
     rebulk
diff --git a/pkgs/applications/networking/giara/default.nix b/pkgs/applications/networking/giara/default.nix
index 60c2ad8262c..3e10a61a63f 100644
--- a/pkgs/applications/networking/giara/default.nix
+++ b/pkgs/applications/networking/giara/default.nix
@@ -64,9 +64,6 @@ python3.pkgs.buildPythonApplication rec {
       --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
   '';
 
-  # Fix setup-hooks https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   meta = with lib; {
     description = "A Reddit app, built with Python, GTK and Handy; Created with mobile Linux in mind";
     maintainers = with maintainers; [ dasj19 ];
diff --git a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
index 10d2cb87f8b..6699764f227 100644
--- a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder,
-  attrs, aiohttp, appdirs, click, keyring, Logbook, peewee, janus,
+  attrs, aiohttp, appdirs, click, keyring, logbook, peewee, janus,
   prompt-toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3,
   setuptools, installShellFiles, nixosTests,
 
@@ -29,7 +29,7 @@ buildPythonApplication rec {
     click
     janus
     keyring
-    Logbook
+    logbook
     matrix-nio
     peewee
     prompt-toolkit
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
index 1342e0f7e98..f7a9067c2d1 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
@@ -8,7 +8,7 @@
 , future
 , atomicwrites
 , attrs
-, Logbook
+, logbook
 , pygments
 , matrix-nio
 , aiohttp
@@ -45,7 +45,7 @@ in buildPythonPackage {
     future
     atomicwrites
     attrs
-    Logbook
+    logbook
     pygments
     matrix-nio
     aiohttp
diff --git a/pkgs/applications/networking/mailreaders/bubblemail/default.nix b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
index 61276220756..bd5783a5c65 100644
--- a/pkgs/applications/networking/mailreaders/bubblemail/default.nix
+++ b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
@@ -13,6 +13,7 @@
 , glib
 , gobject-introspection
 , folks
+, bash
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -39,6 +40,7 @@ python3Packages.buildPythonApplication rec {
     libsecret
     gnome-online-accounts
     folks
+    bash
   ];
 
   nativeBuildInputs = [
@@ -59,9 +61,6 @@ python3Packages.buildPythonApplication rec {
   # See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped
   dontWrapGApps = true;
 
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   preFixup = ''
     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
diff --git a/pkgs/applications/networking/mkchromecast/default.nix b/pkgs/applications/networking/mkchromecast/default.nix
index 58f381f7a4e..de08620cf8a 100644
--- a/pkgs/applications/networking/mkchromecast/default.nix
+++ b/pkgs/applications/networking/mkchromecast/default.nix
@@ -39,7 +39,7 @@ python3Packages.buildPythonApplication rec {
   };
 
   propagatedBuildInputs = with python3Packages; ([
-    PyChromecast
+    pychromecast
     psutil
     mutagen
     flask
diff --git a/pkgs/applications/networking/p2p/deluge/default.nix b/pkgs/applications/networking/p2p/deluge/default.nix
index 507d2a282e4..dee7cde6fd3 100644
--- a/pkgs/applications/networking/p2p/deluge/default.nix
+++ b/pkgs/applications/networking/p2p/deluge/default.nix
@@ -27,7 +27,7 @@ let
 
       propagatedBuildInputs = with pypkgs; [
         twisted
-        Mako
+        mako
         chardet
         pyxdg
         pyopenssl
diff --git a/pkgs/applications/networking/p2p/tremc/default.nix b/pkgs/applications/networking/p2p/tremc/default.nix
index a4b78e250d5..016ff2aa5e0 100644
--- a/pkgs/applications/networking/p2p/tremc/default.nix
+++ b/pkgs/applications/networking/p2p/tremc/default.nix
@@ -40,7 +40,7 @@ python3Packages.buildPythonApplication rec {
     ipy
     pyperclip
   ] ++
-  lib.optional useGeoIP GeoIP;
+  lib.optional useGeoIP geoip;
 
   dontBuild = true;
   doCheck = false;
diff --git a/pkgs/applications/networking/protonvpn-gui/default.nix b/pkgs/applications/networking/protonvpn-gui/default.nix
index 98f7ac541a7..14844161d18 100644
--- a/pkgs/applications/networking/protonvpn-gui/default.nix
+++ b/pkgs/applications/networking/protonvpn-gui/default.nix
@@ -41,8 +41,6 @@ buildPythonApplication rec {
   ];
 
   buildInputs = [
-    # To avoid enabling strictDeps = false (#56943)
-    gobject-introspection
     librsvg
     pango
     webkitgtk
diff --git a/pkgs/applications/office/gtg/default.nix b/pkgs/applications/office/gtg/default.nix
index 8165cc381c1..44aaa6c7146 100644
--- a/pkgs/applications/office/gtg/default.nix
+++ b/pkgs/applications/office/gtg/default.nix
@@ -67,7 +67,6 @@ python3Packages.buildPythonApplication rec {
   '';
 
   format = "other";
-  strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943)
 
   checkPhase = "xvfb-run pytest ../tests/";
 
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 73c94f7339c..c20c9449ae8 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -14,9 +14,8 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-iOF11/fhQYlvnpWJidJS1yJVavF7xLxvBl59VCh9A4U=";
   };
 
-  buildInputs = [ gtk3 gobject-introspection gnome.adwaita-icon-theme ];
+  buildInputs = [ gtk3 gnome.adwaita-icon-theme ];
   propagatedBuildInputs = with python3Packages; [ pyxdg pygobject3 ];
-  # see https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
   nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/radio/gnss-sdr/default.nix b/pkgs/applications/radio/gnss-sdr/default.nix
index e6461c92448..725f531dd07 100644
--- a/pkgs/applications/radio/gnss-sdr/default.nix
+++ b/pkgs/applications/radio/gnss-sdr/default.nix
@@ -41,7 +41,7 @@ gnuradio.pkgs.mkDerivation rec {
     cmake
     pkg-config
     gnuradio.unwrapped.python
-    gnuradio.unwrapped.python.pkgs.Mako
+    gnuradio.unwrapped.python.pkgs.mako
     gnuradio.unwrapped.python.pkgs.six
   ];
   nativeCheckInputs = [
diff --git a/pkgs/applications/radio/gnuradio/3.8.nix b/pkgs/applications/radio/gnuradio/3.8.nix
index 1dbdbaa7225..6220d36980c 100644
--- a/pkgs/applications/radio/gnuradio/3.8.nix
+++ b/pkgs/applications/radio/gnuradio/3.8.nix
@@ -67,7 +67,7 @@ let
         # building with boost 1.7x fails
         ++ lib.optionals (!(hasFeature "gr-qtgui")) [ icu ];
       pythonNative = with python.pkgs; [
-        Mako
+        mako
         six
       ];
     };
@@ -118,7 +118,7 @@ let
     gnuradio-companion = {
       pythonRuntime = with python.pkgs; [
         pyyaml
-        Mako
+        mako
         numpy
         pygobject3
       ];
diff --git a/pkgs/applications/radio/gnuradio/3.9.nix b/pkgs/applications/radio/gnuradio/3.9.nix
index baf86ca4342..12b8ef003d9 100644
--- a/pkgs/applications/radio/gnuradio/3.9.nix
+++ b/pkgs/applications/radio/gnuradio/3.9.nix
@@ -71,7 +71,7 @@ let
         # building with boost 1.7x fails
         ++ lib.optionals (!(hasFeature "gr-qtgui")) [ icu ];
       pythonNative = with python.pkgs; [
-        Mako
+        mako
         six
       ];
     };
@@ -118,7 +118,7 @@ let
     gnuradio-companion = {
       pythonRuntime = with python.pkgs; [
         pyyaml
-        Mako
+        mako
         numpy
         pygobject3
       ];
diff --git a/pkgs/applications/radio/gnuradio/default.nix b/pkgs/applications/radio/gnuradio/default.nix
index e06e3437281..80d534a351a 100644
--- a/pkgs/applications/radio/gnuradio/default.nix
+++ b/pkgs/applications/radio/gnuradio/default.nix
@@ -73,7 +73,7 @@ let
         # building with boost 1.7x fails
         ++ lib.optionals (!(hasFeature "gr-qtgui")) [ icu ];
       pythonNative = with python.pkgs; [
-        Mako
+        mako
         six
       ];
     };
@@ -120,7 +120,7 @@ let
     gnuradio-companion = {
       pythonRuntime = with python.pkgs; [
         pyyaml
-        Mako
+        mako
         numpy
         pygobject3
       ];
diff --git a/pkgs/applications/radio/uhd/3.5.nix b/pkgs/applications/radio/uhd/3.5.nix
index c0cb7b62aac..5f34597ea27 100644
--- a/pkgs/applications/radio/uhd/3.5.nix
+++ b/pkgs/applications/radio/uhd/3.5.nix
@@ -85,8 +85,8 @@ stdenv.mkDerivation rec {
     ++ [ (lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ]
   ;
 
-  # Python + Mako are always required for the build itself but not necessary for runtime.
-  pythonEnv = python3.withPackages (ps: with ps; [ Mako ]
+  # Python + mako are always required for the build itself but not necessary for runtime.
+  pythonEnv = python3.withPackages (ps: with ps; [ mako ]
     ++ optionals (enableLibuhd_Python_api) [ numpy setuptools ]
     ++ optionals (enableUtils) [ requests six ]
   );
diff --git a/pkgs/applications/radio/uhd/default.nix b/pkgs/applications/radio/uhd/default.nix
index 6fa8462ec10..a7b88707eb2 100644
--- a/pkgs/applications/radio/uhd/default.nix
+++ b/pkgs/applications/radio/uhd/default.nix
@@ -83,8 +83,8 @@ stdenv.mkDerivation rec {
     ++ [ (lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ]
   ;
 
-  # Python + Mako are always required for the build itself but not necessary for runtime.
-  pythonEnv = python3.withPackages (ps: with ps; [ Mako ]
+  # Python + mako are always required for the build itself but not necessary for runtime.
+  pythonEnv = python3.withPackages (ps: with ps; [ mako ]
     ++ optionals (enablePythonApi) [ numpy setuptools ]
     ++ optionals (enableUtils) [ requests six ]
   );
diff --git a/pkgs/applications/science/biology/eggnog-mapper/default.nix b/pkgs/applications/science/biology/eggnog-mapper/default.nix
index c555a30b15a..05c445b6cd0 100644
--- a/pkgs/applications/science/biology/eggnog-mapper/default.nix
+++ b/pkgs/applications/science/biology/eggnog-mapper/default.nix
@@ -36,7 +36,7 @@ python3Packages.buildPythonApplication rec {
   ] ++ (with python3Packages; [
     biopython
     psutil
-    XlsxWriter
+    xlsxwriter
   ]);
 
   # Tests rely on some of the databases being available, which is not bundled
diff --git a/pkgs/applications/science/electronics/flatcam/default.nix b/pkgs/applications/science/electronics/flatcam/default.nix
index 25efbd754b2..02b2d2d61ac 100644
--- a/pkgs/applications/science/electronics/flatcam/default.nix
+++ b/pkgs/applications/science/electronics/flatcam/default.nix
@@ -46,7 +46,7 @@ in python.pkgs.buildPythonApplication rec {
     numpy
     packaging
     pyqt4
-    Rtree
+    rtree
     scipy
     setuptools
     shapely
diff --git a/pkgs/applications/science/engineering/strictdoc/default.nix b/pkgs/applications/science/engineering/strictdoc/default.nix
index c81652c5ae7..aaf944fdd01 100644
--- a/pkgs/applications/science/engineering/strictdoc/default.nix
+++ b/pkgs/applications/science/engineering/strictdoc/default.nix
@@ -19,7 +19,7 @@
 , setuptools
 , textx
 , xlrd
-, XlsxWriter
+, xlsxwriter
 , pytestCheckHook
 }:
 
@@ -70,7 +70,7 @@ buildPythonApplication rec {
     setuptools
     textx
     xlrd
-    XlsxWriter
+    xlsxwriter
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/applications/science/misc/bada-bib/default.nix b/pkgs/applications/science/misc/bada-bib/default.nix
index 76495f5cae1..7ad542402b5 100644
--- a/pkgs/applications/science/misc/bada-bib/default.nix
+++ b/pkgs/applications/science/misc/bada-bib/default.nix
@@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec {
   pname = "bada-bib";
   version = "0.8.0";
   format = "other";
-  strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchFromGitHub {
     owner = "RogerCrocker";
diff --git a/pkgs/applications/terminal-emulators/guake/default.nix b/pkgs/applications/terminal-emulators/guake/default.nix
index ee28a250478..d030c7add96 100644
--- a/pkgs/applications/terminal-emulators/guake/default.nix
+++ b/pkgs/applications/terminal-emulators/guake/default.nix
@@ -26,11 +26,6 @@ python3.pkgs.buildPythonApplication rec {
     sha256 = "sha256-BW13fBH26UqMPMjV8JC4QkpgzyoPfCpAfSkJD68uOZU=";
   };
 
-  # Strict deps breaks guake
-  # See https://github.com/NixOS/nixpkgs/issues/59930
-  # and https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   nativeBuildInputs = [
     gobject-introspection
     wrapGAppsHook
diff --git a/pkgs/applications/terminal-emulators/xterm/default.nix b/pkgs/applications/terminal-emulators/xterm/default.nix
index a5c98cb7df8..5eb565227a9 100644
--- a/pkgs/applications/terminal-emulators/xterm/default.nix
+++ b/pkgs/applications/terminal-emulators/xterm/default.nix
@@ -4,14 +4,14 @@
 
 stdenv.mkDerivation rec {
   pname = "xterm";
-  version = "378";
+  version = "379";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
     ];
-    hash = "sha256-ZJ37/V7dDtnkfPjk2VO0sNPDC8KAFm38T/0Ulz/sPpI=";
+    hash = "sha256-p93ydO6EuX+xKDZ1AJ1Tyi0CoP/VzlpRGNr8NiPrsxA=";
   };
 
   strictDeps = true;
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index 121a0cdf773..224efe8c1ac 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -52,10 +52,6 @@ python3.pkgs.buildPythonApplication rec {
     pycairo
   ];
 
-  # gobject-introspection and some other similar setup hooks do not currently work with strictDeps.
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   postPatch = ''
     patchShebangs meson_shebang_normalisation.py
   '';
diff --git a/pkgs/applications/video/catt/default.nix b/pkgs/applications/video/catt/default.nix
index 7e1157fc4a6..dd5ca85e766 100644
--- a/pkgs/applications/video/catt/default.nix
+++ b/pkgs/applications/video/catt/default.nix
@@ -25,7 +25,7 @@ let
         };
       });
 
-      PyChromecast = super.PyChromecast.overridePythonAttrs (oldAttrs: rec {
+      pychromecast = super.pychromecast.overridePythonAttrs (oldAttrs: rec {
         version = "9.2.0";
         src = oldAttrs.src.override {
           inherit version;
@@ -49,7 +49,7 @@ buildPythonApplication rec {
   propagatedBuildInputs = [
     click
     ifaddr
-    PyChromecast
+    pychromecast
     protobuf
     requests
     yt-dlp
diff --git a/pkgs/applications/video/devede/default.nix b/pkgs/applications/video/devede/default.nix
index e8fa11c9147..800edd4792c 100644
--- a/pkgs/applications/video/devede/default.nix
+++ b/pkgs/applications/video/devede/default.nix
@@ -15,17 +15,8 @@ in buildPythonApplication rec {
     sha256 = "1xb7acjphvn4ya8fgjsvag5gzi9a6c2famfl0ffr8nhb9y8ig9mg";
   };
 
-  # Temporary fix
-  # See https://github.com/NixOS/nixpkgs/issues/61578
-  # and https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   nativeBuildInputs = [
     gettext wrapGAppsHook
-
-    # Temporary fix
-    # See https://github.com/NixOS/nixpkgs/issues/61578
-    # and https://github.com/NixOS/nixpkgs/issues/56943
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/gnomecast/default.nix b/pkgs/applications/video/gnomecast/default.nix
index 335b8c19172..635d91ca54e 100644
--- a/pkgs/applications/video/gnomecast/default.nix
+++ b/pkgs/applications/video/gnomecast/default.nix
@@ -12,7 +12,7 @@ buildPythonApplication rec {
 
   nativeBuildInputs = [ wrapGAppsHook ];
   propagatedBuildInputs = [
-    PyChromecast bottle pycaption paste html5lib pygobject3 dbus-python
+    pychromecast bottle pycaption paste html5lib pygobject3 dbus-python
     gtk3 gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix
index 4ba0fe98df0..e44949f54ba 100644
--- a/pkgs/applications/video/kazam/default.nix
+++ b/pkgs/applications/video/kazam/default.nix
@@ -40,9 +40,6 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [ pygobject3 pyxdg pycairo dbus-python xlib ];
 
-  # workaround https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   patches = [
     # Fix paths
     (substituteAll {
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index 5406b7dfa8a..7e6f89855ed 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -44,10 +44,10 @@ python3.pkgs.buildPythonApplication rec {
     itstool
     python3
     wrapGAppsHook
+    gobject-introspection
   ];
 
   buildInputs = [
-    gobject-introspection
     gtk3
     libpeas
     librsvg
@@ -78,12 +78,6 @@ python3.pkgs.buildPythonApplication rec {
     patchShebangs ./getenvvar.py
   '';
 
-  # Fixes error
-  #     Couldn’t recognize the image file format for file ".../share/pitivi/pixmaps/asset-proxied.svg"
-  # at startup, see https://github.com/NixOS/nixpkgs/issues/56943
-  # and https://github.com/NixOS/nixpkgs/issues/89691#issuecomment-714398705.
-  strictDeps = false;
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "pitivi";
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index e5d5a1fbfe7..1a9fe490af8 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -26,7 +26,6 @@ python3.pkgs.buildPythonApplication rec {
     wrapGAppsHook
     libvirt-glib vte dconf gtk-vnc gnome.adwaita-icon-theme avahi
     gsettings-desktop-schemas libosinfo gtksourceview4
-    gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
   ] ++ lib.optional spiceSupport spice-gtk;
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix
index 6e33f6189a4..00375db220f 100644
--- a/pkgs/build-support/bintools-wrapper/default.nix
+++ b/pkgs/build-support/bintools-wrapper/default.nix
@@ -25,7 +25,9 @@
 , nativeTools, noLibc ? false, nativeLibc, nativePrefix ? ""
 , propagateDoc ? bintools != null && bintools ? man
 , extraPackages ? [], extraBuildCommands ? ""
-, isGNU ? bintools.isGNU or false, isLLVM ? bintools.isLLVM or false
+, isGNU ? bintools.isGNU or false
+, isLLVM ? bintools.isLLVM or false
+, isCCTools ? bintools.isCCTools or false
 , buildPackages ? {}
 , targetPackages ? {}
 , useMacosReexportHack ? false
@@ -139,6 +141,7 @@ stdenv.mkDerivation {
         local dst="$1"
         local wrapper="$2"
         export prog="$3"
+        export use_response_file_by_default=${if isCCTools then "1" else "0"}
         substituteAll "$wrapper" "$out/bin/$dst"
         chmod +x "$out/bin/$dst"
       }
@@ -183,7 +186,9 @@ stdenv.mkDerivation {
       done
 
     '' + (if !useMacosReexportHack then ''
-      wrap ${targetPrefix}ld ${./ld-wrapper.sh} ''${ld:-$ldPath/${targetPrefix}ld}
+      if [ -e ''${ld:-$ldPath/${targetPrefix}ld} ]; then
+        wrap ${targetPrefix}ld ${./ld-wrapper.sh} ''${ld:-$ldPath/${targetPrefix}ld}
+      fi
     '' else ''
       ldInner="${targetPrefix}ld-reexport-delegate"
       wrap "$ldInner" ${./macos-sierra-reexport-hack.bash} ''${ld:-$ldPath/${targetPrefix}ld}
@@ -191,10 +196,9 @@ stdenv.mkDerivation {
       unset ldInner
     '') + ''
 
-      for variant in ld.gold ld.bfd ld.lld; do
-        local underlying=$ldPath/${targetPrefix}$variant
-        [[ -e "$underlying" ]] || continue
-        wrap ${targetPrefix}$variant ${./ld-wrapper.sh} $underlying
+      for variant in $ldPath/${targetPrefix}ld.*; do
+        basename=$(basename "$variant")
+        wrap $basename ${./ld-wrapper.sh} $variant
       done
     '';
 
diff --git a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh
index 86a74160220..cb1160f9bbf 100644
--- a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh
+++ b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh
@@ -250,10 +250,18 @@ fi
 
 PATH="$path_backup"
 # Old bash workaround, see above.
-@prog@ \
-    ${extraBefore+"${extraBefore[@]}"} \
-    ${params+"${params[@]}"} \
-    ${extraAfter+"${extraAfter[@]}"}
+
+if (( "${NIX_LD_USE_RESPONSE_FILE:-@use_response_file_by_default@}" >= 1 )); then
+    @prog@ @<(printf "%q\n" \
+        ${extraBefore+"${extraBefore[@]}"} \
+        ${params+"${params[@]}"} \
+        ${extraAfter+"${extraAfter[@]}"})
+else
+    @prog@ \
+        ${extraBefore+"${extraBefore[@]}"} \
+        ${params+"${params[@]}"} \
+        ${extraAfter+"${extraAfter[@]}"}
+fi
 
 if [ -e "@out@/nix-support/post-link-hook" ]; then
     source @out@/nix-support/post-link-hook
diff --git a/pkgs/build-support/cc-wrapper/add-hardening.sh b/pkgs/build-support/cc-wrapper/add-hardening.sh
index b23fda1fed7..b1aa01355b1 100644
--- a/pkgs/build-support/cc-wrapper/add-hardening.sh
+++ b/pkgs/build-support/cc-wrapper/add-hardening.sh
@@ -12,8 +12,17 @@ done
 # Remove unsupported flags.
 for flag in @hardening_unsupported_flags@; do
   unset -v "hardeningEnableMap[$flag]"
+  # fortify being unsupported implies fortify3 is unsupported
+  if [[ "$flag" = 'fortify' ]] ; then
+    unset -v "hardeningEnableMap['fortify3']"
+  fi
 done
 
+# make fortify and fortify3 mutually exclusive
+if [[ -n "${hardeningEnableMap[fortify3]-}" ]]; then
+  unset -v "hardeningEnableMap['fortify']"
+fi
+
 if (( "${NIX_DEBUG:-0}" >= 1 )); then
   declare -a allHardeningFlags=(fortify stackprotector pie pic strictoverflow format)
   declare -A hardeningDisableMap=()
@@ -36,11 +45,23 @@ fi
 
 for flag in "${!hardeningEnableMap[@]}"; do
   case $flag in
-    fortify)
-      if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling fortify >&2; fi
+    fortify | fortify3)
       # Use -U_FORTIFY_SOURCE to avoid warnings on toolchains that explicitly
       # set -D_FORTIFY_SOURCE=0 (like 'clang -fsanitize=address').
-      hardeningCFlags+=('-O2' '-U_FORTIFY_SOURCE' '-D_FORTIFY_SOURCE=2')
+      hardeningCFlags+=('-O2' '-U_FORTIFY_SOURCE')
+      case $flag in
+        fortify)
+          if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling fortify >&2; fi
+          hardeningCFlags+=('-D_FORTIFY_SOURCE=2')
+        ;;
+        fortify3)
+          if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling fortify3 >&2; fi
+          hardeningCFlags+=('-D_FORTIFY_SOURCE=3')
+        ;;
+        *)
+          # Ignore unsupported.
+          ;;
+      esac
       ;;
     stackprotector)
       if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling stackprotector >&2; fi
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index 6520c04f5e8..96fd8b66bb4 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -9,7 +9,6 @@
 , lib
 , stdenvNoCC
 , cc ? null, libc ? null, bintools, coreutils ? null, shell ? stdenvNoCC.shell
-, gccForLibs ? null
 , zlib ? null
 , nativeTools, noLibc ? false, nativeLibc, nativePrefix ? ""
 , propagateDoc ? cc != null && cc ? man
@@ -18,6 +17,9 @@
 , isGNU ? false, isClang ? cc.isClang or false, gnugrep ? null
 , buildPackages ? {}
 , libcxx ? null
+, gccForLibs ? if useCcForLibs then cc else null
+# same as `gccForLibs`, but generalized beyond clang
+, useCcForLibs ? isClang
 }:
 
 with lib;
@@ -61,7 +63,7 @@ let
   expand-response-params =
     lib.optionalString ((buildPackages.stdenv.hasCC or false) && buildPackages.stdenv.cc != "/dev/null") (import ../expand-response-params { inherit (buildPackages) stdenv; });
 
-  useGccForLibs = isClang
+  useGccForLibs = useCcForLibs
     && libcxx == null
     && !stdenv.targetPlatform.isDarwin
     && !(stdenv.targetPlatform.useLLVM or false)
diff --git a/pkgs/build-support/setup-hooks/patch-shebangs.sh b/pkgs/build-support/setup-hooks/patch-shebangs.sh
index a26113abea8..9a48440debe 100644
--- a/pkgs/build-support/setup-hooks/patch-shebangs.sh
+++ b/pkgs/build-support/setup-hooks/patch-shebangs.sh
@@ -62,15 +62,21 @@ patchShebangs() {
         fi
 
         if [[ "$oldPath" == *"/bin/env" ]]; then
+            if [[ $arg0 == "-S" ]]; then
+                arg0=${args%% *}
+                args=${args#* }
+                newPath="$(PATH="${!pathName}" command -v "env" || true)"
+                args="-S $(PATH="${!pathName}" command -v "$arg0" || true) $args"
+
             # Check for unsupported 'env' functionality:
-            # - options: something starting with a '-'
+            # - options: something starting with a '-' besides '-S'
             # - environment variables: foo=bar
-            if [[ $arg0 == "-"* || $arg0 == *"="* ]]; then
+            elif [[ $arg0 == "-"* || $arg0 == *"="* ]]; then
                 echo "$f: unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" >&2
                 exit 1
+            else
+                newPath="$(PATH="${!pathName}" command -v "$arg0" || true)"
             fi
-
-            newPath="$(PATH="${!pathName}" command -v "$arg0" || true)"
         else
             if [[ -z $oldPath ]]; then
                 # If no interpreter is specified linux will use /bin/sh. Set
diff --git a/pkgs/build-support/setup-hooks/reproducible-builds.sh b/pkgs/build-support/setup-hooks/reproducible-builds.sh
index 7b52f84df67..5e27ce8a25f 100644
--- a/pkgs/build-support/setup-hooks/reproducible-builds.sh
+++ b/pkgs/build-support/setup-hooks/reproducible-builds.sh
@@ -3,7 +3,8 @@
 # derivation and not easily collide with other builds.
 # We also truncate the hash so that it cannot cause reference cycles.
 NIX_CFLAGS_COMPILE="${NIX_CFLAGS_COMPILE:-} -frandom-seed=$(
-    outbase="${out##*/}"
+    randSeed=${NIX_OUTPATH_USED_AS_RANDOM_SEED:-$out}
+    outbase="${randSeed##*/}"
     randomseed="${outbase:0:10}"
     echo $randomseed
 )"
diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
index 99633a3c7c9..3c5199be313 100644
--- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
+++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
@@ -17,16 +17,6 @@ makeSetupHook {
   propagatedBuildInputs = [
     # We use the wrapProgram function.
     makeWrapper
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    # It is highly probable that a program will use GSettings,
-    # at minimum through GTK file chooser dialogue.
-    # Let’s add a GIO module for “dconf” GSettings backend
-    # to avoid falling back to “memory” backend. This is
-    # required for GSettings-based settings to be persisted.
-    # Unfortunately, it also requires the user to have dconf
-    # D-Bus service enabled globally (e.g. through a NixOS module).
-    dconf.lib
-
   ] ++ lib.optionals isGraphical [
     # TODO: remove this, packages should depend on GTK explicitly.
     gtk3
@@ -35,13 +25,25 @@ makeSetupHook {
   ];
 
   # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs
-  # the librsvg above should be removed but kept to not break anything that implicitly depended on its binaries
+  # the librsvg and gtk3 above should be removed but kept to not break anything that implicitly depended on its binaries
   depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [
     # librsvg provides a module for gdk-pixbuf to allow rendering
     # SVG icons. Most icon themes are SVG-based and so are some
     # graphics in GTK (e.g. cross for closing window in window title bar)
     # so it is pretty much required for applications using GTK.
     librsvg
+
+    # TODO: remove this, packages should depend on GTK explicitly.
+    gtk3
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    # It is highly probable that a program will use GSettings,
+    # at minimum through GTK file chooser dialogue.
+    # Let’s add a GIO module for “dconf” GSettings backend
+    # to avoid falling back to “memory” backend. This is
+    # required for GSettings-based settings to be persisted.
+    # Unfortunately, it also requires the user to have dconf
+    # D-Bus service enabled globally (e.g. through a NixOS module).
+    dconf.lib
   ];
   passthru = {
     tests = let
@@ -56,6 +58,7 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
         nativeBuildInputs = [ wrapGAppsHook ];
 
         installFlags = [ "bin-foo" "libexec-bar" ];
@@ -86,6 +89,8 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
+
         installFlags = [ "typelib-Mahjong" ];
       };
 
@@ -95,6 +100,7 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
           wrapGAppsHook
@@ -126,6 +132,8 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
+
         makeFlags = [
           "LIBDIR=${placeholder "lib"}/lib"
         ];
@@ -139,6 +147,7 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
           wrapGAppsHook
@@ -169,6 +178,7 @@ makeSetupHook {
 
         src = sample-project;
 
+        strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
           wrapGAppsHook
diff --git a/pkgs/data/misc/publicsuffix-list/default.nix b/pkgs/data/misc/publicsuffix-list/default.nix
index 02b0ba0b439..d5608036b5e 100644
--- a/pkgs/data/misc/publicsuffix-list/default.nix
+++ b/pkgs/data/misc/publicsuffix-list/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation {
   pname = "publicsuffix-list";
-  version = "unstable-2021-09-03";
+  version = "unstable-2023-02-16";
 
   src = fetchFromGitHub {
     owner = "publicsuffix";
     repo = "list";
-    rev = "2533d032871e1ef1f410fc0754b848d4587c8021";
-    hash = "sha256-moibTN9KovABcg+ubKUgMXg4b8sMrTVo6Itmiati/Vk=";
+    rev = "8ec4d3049fe139f92937b6137155c33b81dcaf18";
+    hash = "sha256-wA8zk0iADFNP33veIf+Mfx22zdMzHsMNWEizMp1SnuA=";
   };
 
   dontBuild = true;
diff --git a/pkgs/desktops/gnome/apps/accerciser/default.nix b/pkgs/desktops/gnome/apps/accerciser/default.nix
index 7d4f5969d0d..d21d1c20061 100644
--- a/pkgs/desktops/gnome/apps/accerciser/default.nix
+++ b/pkgs/desktops/gnome/apps/accerciser/default.nix
@@ -13,6 +13,7 @@
 , gettext
 , libwnck
 , adwaita-icon-theme
+, librsvg
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -41,6 +42,7 @@ python3.pkgs.buildPythonApplication rec {
     at-spi2-core
     gtk3
     libwnck
+    librsvg
   ];
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -52,10 +54,6 @@ python3.pkgs.buildPythonApplication rec {
     xlib
   ];
 
-  # Strict deps breaks accerciser
-  # and https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "accerciser";
diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
index efad1cc14db..dbf3dbd9be3 100644
--- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
@@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec {
   pname = "gnome-tweaks";
   version = "42.beta";
   format = "other";
-  strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
diff --git a/pkgs/desktops/xfce/applications/catfish/default.nix b/pkgs/desktops/xfce/applications/catfish/default.nix
index f78f420cabc..2f16352f8ca 100644
--- a/pkgs/desktops/xfce/applications/catfish/default.nix
+++ b/pkgs/desktops/xfce/applications/catfish/default.nix
@@ -41,7 +41,6 @@ python3Packages.buildPythonApplication rec {
     python3Packages.pyxdg
     python3Packages.ptyprocess
     python3Packages.pycairo
-    gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix
index 4df0872688b..f470cb120de 100644
--- a/pkgs/development/compilers/gcc/10/default.nix
+++ b/pkgs/development/compilers/gcc/10/default.nix
@@ -271,6 +271,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langAda langFortran langGo langD version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix
index 4b91e059830..3919fbe89f3 100644
--- a/pkgs/development/compilers/gcc/11/default.nix
+++ b/pkgs/development/compilers/gcc/11/default.nix
@@ -27,6 +27,7 @@
 , cloog # unused; just for compat with gcc4, as we override the parameter on some places
 , buildPackages
 , libxcrypt
+, disableGdbPlugin ? !enablePlugin
 }:
 
 # Make sure we get GNU sed.
@@ -48,6 +49,7 @@ with builtins;
 
 let majorVersion = "11";
     version = "${majorVersion}.3.0";
+    disableBootstrap = !(with stdenv; targetPlatform == hostPlatform && hostPlatform == buildPlatform);
 
     inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -114,7 +116,9 @@ let majorVersion = "11";
         enableLTO
         enableMultilib
         enablePlugin
+        disableGdbPlugin
         enableShared
+        disableBootstrap
         fetchpatch
         fetchurl
         gettext
@@ -280,6 +284,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langAda langFortran langGo langD version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/12/default.nix b/pkgs/development/compilers/gcc/12/default.nix
index 375c098eec6..baa8351830e 100644
--- a/pkgs/development/compilers/gcc/12/default.nix
+++ b/pkgs/development/compilers/gcc/12/default.nix
@@ -28,6 +28,7 @@
 , cloog # unused; just for compat with gcc4, as we override the parameter on some places
 , buildPackages
 , libxcrypt
+, disableGdbPlugin ? !enablePlugin
 }:
 
 # Make sure we get GNU sed.
@@ -53,6 +54,7 @@ with builtins;
 
 let majorVersion = "12";
     version = "${majorVersion}.2.0";
+    disableBootstrap = !(with stdenv; targetPlatform == hostPlatform && hostPlatform == buildPlatform);
 
     inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -145,6 +147,8 @@ let majorVersion = "12";
         buildPackages
         cloog
         crossStageStatic
+        disableBootstrap
+        disableGdbPlugin
         enableLTO
         enableMultilib
         enablePlugin
diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix
index 7e6d4eb1223..99c8ef399b5 100644
--- a/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/pkgs/development/compilers/gcc/4.8/default.nix
@@ -297,7 +297,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langFortran langGo version;
     isGNU = true;
-    hardeningUnsupportedFlags = [ "stackprotector" ];
+    hardeningUnsupportedFlags = [ "stackprotector" "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index 4ea63d7c12e..d966b75d377 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -317,6 +317,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langFortran langGo version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 7e5e2c6b10b..953f931fa81 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -338,6 +338,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langFortran langAda langGo version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix
index ffe5b721b4f..ab80d318937 100644
--- a/pkgs/development/compilers/gcc/7/default.nix
+++ b/pkgs/development/compilers/gcc/7/default.nix
@@ -278,6 +278,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langFortran langGo version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix
index e0b1a1e24ad..a929663dca2 100644
--- a/pkgs/development/compilers/gcc/8/default.nix
+++ b/pkgs/development/compilers/gcc/8/default.nix
@@ -254,6 +254,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langFortran langGo version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix
index bcfd1c7dd38..6da17fb0945 100644
--- a/pkgs/development/compilers/gcc/9/default.nix
+++ b/pkgs/development/compilers/gcc/9/default.nix
@@ -268,6 +268,7 @@ stdenv.mkDerivation ({
   passthru = {
     inherit langC langCC langObjC langObjCpp langAda langFortran langGo langD version;
     isGNU = true;
+    hardeningUnsupportedFlags = [ "fortify3" ];
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/gcc/common/configure-flags.nix b/pkgs/development/compilers/gcc/common/configure-flags.nix
index 78d13cb941e..eadc6967acf 100644
--- a/pkgs/development/compilers/gcc/common/configure-flags.nix
+++ b/pkgs/development/compilers/gcc/common/configure-flags.nix
@@ -11,6 +11,7 @@
 , enableLTO
 , enableMultilib
 , enablePlugin
+, disableGdbPlugin ? !enablePlugin
 , enableShared
 
 , langC
@@ -23,8 +24,10 @@
 , langObjC
 , langObjCpp
 , langJit
+, disableBootstrap ? stdenv.targetPlatform != stdenv.hostPlatform
 }:
 
+assert !enablePlugin -> disableGdbPlugin;
 assert langJava -> lib.versionOlder version "7";
 
 # Note [Windows Exception Handling]
@@ -171,9 +174,9 @@ let
       then ["--enable-multilib" "--disable-libquadmath"]
       else ["--disable-multilib"])
     ++ lib.optional (!enableShared) "--disable-shared"
-    ++ [
-      (lib.enableFeature enablePlugin "plugin")
-    ]
+    ++ lib.singleton (lib.enableFeature enablePlugin "plugin")
+    # Libcc1 is the GCC cc1 plugin for the GDB debugger which is only used by gdb
+    ++ lib.optional disableGdbPlugin "--disable-libcc1"
 
     # Support -m32 on powerpc64le/be
     ++ lib.optional (targetPlatform.system == "powerpc64le-linux")
@@ -214,7 +217,7 @@ let
     # TODO: aarch64-darwin has clang stdenv and its arch and cpu flag values are incompatible with gcc
     ++ lib.optionals (!(stdenv.isDarwin && stdenv.isAarch64)) (import ../common/platform-flags.nix { inherit (stdenv)  targetPlatform; inherit lib; })
     ++ lib.optionals (targetPlatform != hostPlatform) crossConfigureFlags
-    ++ lib.optional (targetPlatform != hostPlatform) "--disable-bootstrap"
+    ++ lib.optional disableBootstrap "--disable-bootstrap"
 
     # Platform-specific flags
     ++ lib.optional (targetPlatform == hostPlatform && targetPlatform.isx86_32) "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}"
diff --git a/pkgs/development/compilers/llvm/10/clang/default.nix b/pkgs/development/compilers/llvm/10/clang/default.nix
index 0f3c943b527..37292e04052 100644
--- a/pkgs/development/compilers/llvm/10/clang/default.nix
+++ b/pkgs/development/compilers/llvm/10/clang/default.nix
@@ -91,8 +91,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/11/clang/default.nix b/pkgs/development/compilers/llvm/11/clang/default.nix
index fa8080c998f..9108392129d 100644
--- a/pkgs/development/compilers/llvm/11/clang/default.nix
+++ b/pkgs/development/compilers/llvm/11/clang/default.nix
@@ -96,8 +96,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/12/clang/default.nix b/pkgs/development/compilers/llvm/12/clang/default.nix
index ed99f4fe7bc..5fa4f2e920c 100644
--- a/pkgs/development/compilers/llvm/12/clang/default.nix
+++ b/pkgs/development/compilers/llvm/12/clang/default.nix
@@ -90,8 +90,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/13/clang/add-nostdlibinc-flag.patch b/pkgs/development/compilers/llvm/13/clang/add-nostdlibinc-flag.patch
deleted file mode 100644
index 8007ba05f6e..00000000000
--- a/pkgs/development/compilers/llvm/13/clang/add-nostdlibinc-flag.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp
-index 94a7553e273b..8a1d455950b2 100644
---- a/lib/Driver/Driver.cpp
-+++ b/lib/Driver/Driver.cpp
-@@ -412,6 +412,13 @@ DerivedArgList *Driver::TranslateInputArgs(const InputArgList &Args) const {
-   }
- #endif
- 
-+  {
-+    Arg *A = DAL->MakeFlagArg(/*BaseArg=*/nullptr,
-+                              Opts.getOption(options::OPT_nostdlibinc));
-+    A->claim();
-+    DAL->append(A);
-+  }
-+
-   return DAL;
- }
- 
diff --git a/pkgs/development/compilers/llvm/13/clang/default.nix b/pkgs/development/compilers/llvm/13/clang/default.nix
index 056a1b7e0f0..a2cacc7cd89 100644
--- a/pkgs/development/compilers/llvm/13/clang/default.nix
+++ b/pkgs/development/compilers/llvm/13/clang/default.nix
@@ -42,7 +42,7 @@ let
       # mis-compilation in firefox.
       # See: https://bugzilla.mozilla.org/show_bug.cgi?id=1741454
       ./revert-malloc-alignment-assumption.patch
-      ./add-nostdlibinc-flag.patch
+      ../../common/clang/add-nostdlibinc-flag.patch
       (substituteAll {
         src = ../../clang-11-12-LLVMgold-path.patch;
         libllvmLibdir = "${libllvm.lib}/lib";
@@ -84,8 +84,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/14/clang/add-nostdlibinc-flag.patch b/pkgs/development/compilers/llvm/14/clang/add-nostdlibinc-flag.patch
deleted file mode 100644
index b73cd0185eb..00000000000
--- a/pkgs/development/compilers/llvm/14/clang/add-nostdlibinc-flag.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp
-index 3bfddeefc7b2..05b11d9e562d 100644
---- a/lib/Driver/Driver.cpp
-+++ b/lib/Driver/Driver.cpp
-@@ -482,6 +482,13 @@ DerivedArgList *Driver::TranslateInputArgs(const InputArgList &Args) const {
-   }
- #endif
- 
-+  {
-+    Arg *A = DAL->MakeFlagArg(/*BaseArg=*/nullptr,
-+                              Opts.getOption(options::OPT_nostdlibinc));
-+    A->claim();
-+    DAL->append(A);
-+  }
-+
-   return DAL;
- }
- 
diff --git a/pkgs/development/compilers/llvm/14/clang/default.nix b/pkgs/development/compilers/llvm/14/clang/default.nix
index 55d879fb76e..82f2543f0b5 100644
--- a/pkgs/development/compilers/llvm/14/clang/default.nix
+++ b/pkgs/development/compilers/llvm/14/clang/default.nix
@@ -45,7 +45,7 @@ let
       ./purity.patch
       # https://reviews.llvm.org/D51899
       ./gnu-install-dirs.patch
-      ./add-nostdlibinc-flag.patch
+      ../../common/clang/add-nostdlibinc-flag.patch
       (substituteAll {
         src = ../../clang-11-12-LLVMgold-path.patch;
         libllvmLibdir = "${libllvm.lib}/lib";
@@ -87,8 +87,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/15/clang/default.nix b/pkgs/development/compilers/llvm/15/clang/default.nix
index b0671150a7b..5c1aef6eb3a 100644
--- a/pkgs/development/compilers/llvm/15/clang/default.nix
+++ b/pkgs/development/compilers/llvm/15/clang/default.nix
@@ -45,6 +45,7 @@ let
       ./purity.patch
       # https://reviews.llvm.org/D51899
       ./gnu-install-dirs.patch
+      ../../common/clang/add-nostdlibinc-flag.patch
       (substituteAll {
         src = ../../clang-11-12-LLVMgold-path.patch;
         libllvmLibdir = "${libllvm.lib}/lib";
@@ -53,10 +54,6 @@ let
 
     postPatch = ''
       (cd tools && ln -s ../../clang-tools-extra extra)
-
-      sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
-             -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
-             lib/Driver/ToolChains/*.cpp
     '' + lib.optionalString stdenv.hostPlatform.isMusl ''
       sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
     '';
diff --git a/pkgs/development/compilers/llvm/5/clang/default.nix b/pkgs/development/compilers/llvm/5/clang/default.nix
index 57d6fe6ae7f..5cccbc44cb4 100644
--- a/pkgs/development/compilers/llvm/5/clang/default.nix
+++ b/pkgs/development/compilers/llvm/5/clang/default.nix
@@ -84,8 +84,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/6/clang/default.nix b/pkgs/development/compilers/llvm/6/clang/default.nix
index 1b37efe3f08..104baeafd10 100644
--- a/pkgs/development/compilers/llvm/6/clang/default.nix
+++ b/pkgs/development/compilers/llvm/6/clang/default.nix
@@ -84,8 +84,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/7/clang/default.nix b/pkgs/development/compilers/llvm/7/clang/default.nix
index d146e5b5f81..5c40ba14396 100644
--- a/pkgs/development/compilers/llvm/7/clang/default.nix
+++ b/pkgs/development/compilers/llvm/7/clang/default.nix
@@ -96,8 +96,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/8/clang/default.nix b/pkgs/development/compilers/llvm/8/clang/default.nix
index bc2ed03eed9..e00bc1c319a 100644
--- a/pkgs/development/compilers/llvm/8/clang/default.nix
+++ b/pkgs/development/compilers/llvm/8/clang/default.nix
@@ -102,8 +102,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/9/clang/default.nix b/pkgs/development/compilers/llvm/9/clang/default.nix
index 7819676e33a..fa9cabf3671 100644
--- a/pkgs/development/compilers/llvm/9/clang/default.nix
+++ b/pkgs/development/compilers/llvm/9/clang/default.nix
@@ -97,8 +97,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/llvm/git/clang/add-nostdlibinc-flag.patch b/pkgs/development/compilers/llvm/common/clang/add-nostdlibinc-flag.patch
index 80c2eb36238..80c2eb36238 100644
--- a/pkgs/development/compilers/llvm/git/clang/add-nostdlibinc-flag.patch
+++ b/pkgs/development/compilers/llvm/common/clang/add-nostdlibinc-flag.patch
diff --git a/pkgs/development/compilers/llvm/git/clang/default.nix b/pkgs/development/compilers/llvm/git/clang/default.nix
index 8f2663b7e89..bf4a03a490b 100644
--- a/pkgs/development/compilers/llvm/git/clang/default.nix
+++ b/pkgs/development/compilers/llvm/git/clang/default.nix
@@ -46,7 +46,7 @@ let
       ./purity.patch
       # https://reviews.llvm.org/D51899
       ./gnu-install-dirs.patch
-      ./add-nostdlibinc-flag.patch
+      ../../common/clang/add-nostdlibinc-flag.patch
       (substituteAll {
         src = ../../clang-11-12-LLVMgold-path.patch;
         libllvmLibdir = "${libllvm.lib}/lib";
@@ -88,8 +88,9 @@ let
     '';
 
     passthru = {
-      isClang = true;
       inherit libllvm;
+      isClang = true;
+      hardeningUnsupportedFlags = [ "fortify3" ];
     };
 
     meta = llvm_meta // {
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index 130cb832611..722d963c477 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -195,9 +195,7 @@ in stdenv.mkDerivation rec {
 
   configurePlatforms = [];
 
-  # https://github.com/NixOS/nixpkgs/pull/21742#issuecomment-272305764
-  # https://github.com/rust-lang/rust/issues/30181
-  # enableParallelBuilding = false;
+  enableParallelBuilding = true;
 
   setupHooks = ./setup-hook.sh;
 
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix
index 6db4b9c959b..fd3007cc15e 100644
--- a/pkgs/development/compilers/vala/default.nix
+++ b/pkgs/development/compilers/vala/default.nix
@@ -103,8 +103,8 @@ in rec {
   };
 
   vala_0_56 = generic {
-    version = "0.56.3";
-    sha256 = "4QZiIb97icsfpzJ6OIhkXLM7YE3jv0WqgRMv0EC2mb8=";
+    version = "0.56.4";
+    sha256 = "hixB2ThUPtPY2GyCGaYQh3lxk97+6NoMUMr0mZPGa2o=";
   };
 
   vala = vala_0_56;
diff --git a/pkgs/development/gnuradio-modules/osmosdr/default.nix b/pkgs/development/gnuradio-modules/osmosdr/default.nix
index 20fe1282667..a9a47e4d50a 100644
--- a/pkgs/development/gnuradio-modules/osmosdr/default.nix
+++ b/pkgs/development/gnuradio-modules/osmosdr/default.nix
@@ -79,7 +79,7 @@ in mkDerivation {
       (if (gnuradio.versionAttr.major == "3.7") then
         python.pkgs.cheetah
       else
-        python.pkgs.Mako
+        python.pkgs.mako
       )
       python
     ]
diff --git a/pkgs/development/libraries/acl/default.nix b/pkgs/development/libraries/acl/default.nix
index 1ac577e19cd..5b31ba3a1c8 100644
--- a/pkgs/development/libraries/acl/default.nix
+++ b/pkgs/development/libraries/acl/default.nix
@@ -19,6 +19,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ gettext ];
   buildInputs = [ attr ];
 
+  # causes failures in coreutils test suite
+  hardeningDisable = [ "fortify3" ];
+
   # Upstream use C++-style comments in C code. Remove them.
   # This comment breaks compilation if too strict gcc flags are used.
   patchPhase = ''
diff --git a/pkgs/development/libraries/c-ares/default.nix b/pkgs/development/libraries/c-ares/default.nix
index 20ec00f4a8f..9c024211a71 100644
--- a/pkgs/development/libraries/c-ares/default.nix
+++ b/pkgs/development/libraries/c-ares/default.nix
@@ -1,5 +1,4 @@
 { lib, stdenv, fetchurl, writeTextDir
-, fetchpatch
 , withCMake ? true, cmake
 
 # sensitive downstream packages
@@ -14,23 +13,14 @@
 
 stdenv.mkDerivation rec {
   pname = "c-ares";
-  version = "1.18.1";
+  version = "1.19.0";
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://c-ares.haxx.se/download/${pname}-${version}.tar.gz";
-    sha256 = "sha256-Gn1SqKhKn7/7G+kTPA9uFyF9kepab6Yfa0cpzaeOu88=";
+    sha256 = "sha256-v866N+I/1TEpOCkALKwEAe9JptxVkj9/kiNlhbetHdM=";
   };
 
-  # c-ares is used for fetchpatch, so avoid using it for c-aresMinimal
-  patches = lib.optionals withCMake [
-    # fix .pc paths created by cmake build
-    (fetchpatch {
-      url = "https://github.com/jonringer/c-ares/commit/9806a8a2f999a8a3efa3c893f2854dce6919d5bb.patch";
-      sha256 = "sha256-nh/ZKdan2/FTrouApRQA7O8KGZrLEUuWhxGOktiiGwU=";
-    })
-  ];
-
   nativeBuildInputs = lib.optionals withCMake [ cmake ];
 
   cmakeFlags = [] ++ lib.optionals stdenv.hostPlatform.isStatic [
@@ -47,6 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A C library for asynchronous DNS requests";
     homepage = "https://c-ares.haxx.se";
+    changelog = "https://c-ares.org/changelog.html#${lib.replaceStrings [ "." ] [ "_" ] version}";
     license = licenses.mit;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/cracklib/default.nix b/pkgs/development/libraries/cracklib/default.nix
index 13029f7739c..484af3337a0 100644
--- a/pkgs/development/libraries/cracklib/default.nix
+++ b/pkgs/development/libraries/cracklib/default.nix
@@ -1,8 +1,8 @@
-let version = "2.9.7"; in
+let version = "2.9.8"; in
 { stdenv, lib, buildPackages, fetchurl, zlib, gettext
 , wordlists ? [ (fetchurl {
   url = "https://github.com/cracklib/cracklib/releases/download/v${version}/cracklib-words-${version}.gz";
-  sha256 = "12fk8w06q628v754l357cf8kfjna98wj09qybpqr892az3x4a33z";
+  hash = "sha256-WLOCTIDdO6kIsMytUdbhZx4woj/u1gf7jmORR2i8T4U=";
 }) ]
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    sha256 = "1rimpjsdnmw8f5b7k558cic41p2qy2n2yrlqp5vh7mp4162hk0py";
+    hash = "sha256-H500OF6jqnzXwH+jiNwlgQrqnTwz4mDHE6Olhz1w44Y=";
   };
 
   nativeBuildInputs = lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.cracklib;
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index f83b7c10819..02d2dbb6a53 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -30,7 +30,7 @@
 
 let
   pythonModules = pp: [
-    pp.Mako
+    pp.mako
     pp.markdown
   ];
 in
diff --git a/pkgs/development/libraries/gpgme/python-find-version-string-above-310.patch b/pkgs/development/libraries/gpgme/python-find-version-string-above-310.patch
index 3d8191c9929..ef2f563e459 100644
--- a/pkgs/development/libraries/gpgme/python-find-version-string-above-310.patch
+++ b/pkgs/development/libraries/gpgme/python-find-version-string-above-310.patch
@@ -6,7 +6,7 @@ diff --git a/configure.ac b/configure.ac
  	  # Reset everything, so that we can look for another Python.
            m4_foreach([mym4pythonver],
 -                     [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[all]],
-+                     [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],[all]],
++                     [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],[3.11],[all]],
             [unset PYTHON
  	    unset PYTHON_VERSION
  	    unset PYTHON_CPPFLAGS
@@ -45,7 +45,7 @@ diff --git a/m4/python.m4 b/m4/python.m4
  [python2 python2.7 dnl
   python dnl
 - python3 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
-+ python3 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
++ python3 python3.10 python3.11, python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
   ])
  
    AC_ARG_VAR([PYTHON], [the Python interpreter])
diff --git a/pkgs/development/libraries/gsm/default.nix b/pkgs/development/libraries/gsm/default.nix
index ff2217b6e36..ae2c489fe83 100644
--- a/pkgs/development/libraries/gsm/default.nix
+++ b/pkgs/development/libraries/gsm/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gsm";
-  version = "1.0.20";
+  version = "1.0.22";
 
   src = fetchurl {
     url = "https://www.quut.com/gsm/${pname}-${version}.tar.gz";
-    sha256 = "sha256-YxXDhRi4HomcP8LtRjzGI68pxcIxpIwTeyQwIjSukL8=";
+    sha256 = "sha256-8Acukfa7hah4svbb9KC3yFDE3rgEnVVMZTQLO/ad8Kw=";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index b34282dd37b..e3f9d82d1a8 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdrm";
-  version = "2.4.114";
+  version = "2.4.115";
 
   src = fetchurl {
     url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-MEnPhDpH0S5e7vvDvjSW14L6CfQjRr8Lfe/j0eWY0CY=";
+    sha256 = "sha256-VUz7/gVCvds5G04+Bb+7/D4oK5Vb1WIY0hwGFkgfZes=";
   };
 
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix
index 2031f175eab..681f9cbfb22 100644
--- a/pkgs/development/libraries/libffi/default.nix
+++ b/pkgs/development/libraries/libffi/default.nix
@@ -44,6 +44,7 @@ stdenv.mkDerivation rec {
 
   preCheck = ''
     # The tests use -O0 which is not compatible with -D_FORTIFY_SOURCE.
+    NIX_HARDENING_ENABLE=''${NIX_HARDENING_ENABLE/fortify3/}
     NIX_HARDENING_ENABLE=''${NIX_HARDENING_ENABLE/fortify/}
   '';
 
diff --git a/pkgs/development/libraries/liblc3/default.nix b/pkgs/development/libraries/liblc3/default.nix
index d0d95fd47da..13ef2169e3b 100644
--- a/pkgs/development/libraries/liblc3/default.nix
+++ b/pkgs/development/libraries/liblc3/default.nix
@@ -7,7 +7,7 @@
 
 let
   name = "liblc3";
-  version = "1.0.1";
+  version = "1.0.2";
 in
 stdenv.mkDerivation {
   pname = name;
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     owner = "google";
     repo = "liblc3";
     rev = "v${version}";
-    sha256 = "sha256-W0pCfFmM+6N6+HdGdQ/GBNHjBspkwtlxZC2m2noKGx0=";
+    sha256 = "sha256-Be+dPUnxC2+cHzqL2FAqXOU7NjEAHiPBKh7spuYkvhc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libomxil-bellagio/default.nix b/pkgs/development/libraries/libomxil-bellagio/default.nix
index 3cfec00b132..694625c8af8 100644
--- a/pkgs/development/libraries/libomxil-bellagio/default.nix
+++ b/pkgs/development/libraries/libomxil-bellagio/default.nix
@@ -1,4 +1,7 @@
-{ lib, stdenv, fetchurl }:
+{ lib
+, stdenv
+, fetchurl
+}:
 
 stdenv.mkDerivation rec {
   pname = "libomxil-bellagio";
@@ -15,6 +18,12 @@ stdenv.mkDerivation rec {
   patches = [
     ./fedora-fixes.patch
     ./fno-common.patch
+    # Fix stack overread: https://sourceforge.net/p/omxil/patches/8/
+    (fetchurl {
+      name = "no-overread.patch";
+      url = "https://sourceforge.net/p/omxil/patches/8/attachment/0001-src-base-omx_base_component.c-fix-stack-overread.patch";
+      hash = "sha256-ElpiDxU0Ii4Ou8ebVx4Ne9UnB6mesC8cRj77N7LdovA=";
+    })
   ];
 
   # Disable parallel build as it fails as:
diff --git a/pkgs/development/libraries/libplacebo/default.nix b/pkgs/development/libraries/libplacebo/default.nix
index 754ac2097b9..3b56ab079bb 100644
--- a/pkgs/development/libraries/libplacebo/default.nix
+++ b/pkgs/development/libraries/libplacebo/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    python3Packages.Mako
+    python3Packages.mako
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index a78bf86a18c..57ed620fbf8 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -20,7 +20,9 @@
 , python3Packages
 , gnome
 , vala
-, withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform
+, writeScript
+, withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages
+, buildPackages
 , gobject-introspection
 , _experimental-update-script-combinators
 , common-updater-scripts
@@ -71,6 +73,7 @@ stdenv.mkDerivation rec {
     bzip2
     pango
     libintl
+    vala # for share/vala/Makefile.vapigen
   ] ++ lib.optionals stdenv.isDarwin [
     ApplicationServices
     Foundation
@@ -93,6 +96,15 @@ stdenv.mkDerivation rec {
 
   doCheck = false; # all tests fail on libtool-generated rsvg-convert not being able to find coreutils
 
+  GDK_PIXBUF_QUERYLOADERS = writeScript "gdk-pixbuf-loader-loaders-wrapped" ''
+    ${lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) (stdenv.hostPlatform.emulator buildPackages)} ${lib.getDev gdk-pixbuf}/bin/gdk-pixbuf-query-loaders
+  '';
+
+  preConfigure = ''
+    PKG_CONFIG_VAPIGEN_VAPIGEN="$(type -p vapigen)"
+    export PKG_CONFIG_VAPIGEN_VAPIGEN
+  '';
+
   # It wants to add loaders and update the loaders.cache in gdk-pixbuf
   # Patching the Makefiles to it creates rsvg specific loaders and the
   # relevant loader.cache here.
@@ -114,10 +126,14 @@ stdenv.mkDerivation rec {
 
     # 'error: linker `cc` not found' when cross-compiling
     export RUSTFLAGS="-Clinker=$CC"
+  '' + lib.optionalString ((stdenv.buildPlatform != stdenv.hostPlatform) && (stdenv.hostPlatform.emulatorAvailable buildPackages)) ''
+    # the replacement is the native conditional
+    substituteInPlace gdk-pixbuf-loader/Makefile \
+      --replace 'RUN_QUERY_LOADER_TEST = false' 'RUN_QUERY_LOADER_TEST = test -z "$(DESTDIR)"' \
   '';
 
   # Not generated when cross compiling.
-  postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
+  postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
     # Merge gdkpixbuf and librsvg loaders
     cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp
     mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 480c2d8c858..44b396b7b33 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -88,7 +88,7 @@
 let
   # Release calendar: https://www.mesa3d.org/release-calendar.html
   # Release frequency: https://www.mesa3d.org/releasing.html#schedule
-  version = "22.3.5";
+  version = "22.3.6";
   branch  = lib.versions.major version;
 
   withLibdrm = lib.meta.availableOn stdenv.hostPlatform libdrm;
@@ -120,7 +120,7 @@ self = stdenv.mkDerivation {
       "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz"
       "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
     ];
-    sha256 = "3eed2ecae2bc674494566faab9fcc9beb21cd804c7ba2b59a1694f3d7236e6a9";
+    hash = "sha256-TsjsZdvbHulETbpylwiQEooZVDpYzwWTG9b1TxJOEX8=";
   };
 
   # TODO:
@@ -227,7 +227,7 @@ self = stdenv.mkDerivation {
   nativeBuildInputs = [
     meson pkg-config ninja
     intltool bison flex file
-    python3Packages.python python3Packages.Mako python3Packages.ply
+    python3Packages.python python3Packages.mako python3Packages.ply
     jdupes glslang
   ] ++ lib.optional haveWayland wayland-scanner;
 
diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index c89a8eb5db7..69c33169866 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -12,15 +12,18 @@
 , openssl
 , systemdMinimal
 , libxcrypt
+
+# passthru
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
   pname = "openldap";
-  version = "2.6.3";
+  version = "2.6.4";
 
   src = fetchurl {
     url = "https://www.openldap.org/software/download/OpenLDAP/openldap-release/${pname}-${version}.tgz";
-    hash = "sha256-0qKh1x3z13OWscFq11AuZ030RuBgcrDlpOlBw9BsDUY=";
+    hash = "sha256-1RcE5QF4QwwGzz2KoXTaZrrfVZdHpH2SC7VLLUqkCZE=";
   };
 
   # TODO: separate "out" and "bin"
@@ -117,6 +120,10 @@ stdenv.mkDerivation rec {
     chmod +x "$out"/lib/*.{so,dylib}
   '';
 
+  passthru.tests = {
+    inherit (nixosTests) openldap;
+  };
+
   meta = with lib; {
     homepage = "https://www.openldap.org/";
     description = "An open source implementation of the Lightweight Directory Access Protocol";
diff --git a/pkgs/development/libraries/serd/default.nix b/pkgs/development/libraries/serd/default.nix
index 1a1f3475c35..8bb82d48094 100644
--- a/pkgs/development/libraries/serd/default.nix
+++ b/pkgs/development/libraries/serd/default.nix
@@ -1,21 +1,59 @@
-{ lib, stdenv, fetchurl, pkg-config, python3, wafHook }:
+{ lib
+, stdenv
+, fetchurl
+, doxygen
+, mandoc
+, meson
+, ninja
+, pkg-config
+, python3
+, sphinx
+, writeScript
+}:
 
 stdenv.mkDerivation rec {
   pname = "serd";
-  version = "0.30.10";
+  version = "0.30.16";
+
+  outputs = [ "out" "dev" "doc" "man" ];
 
   src = fetchurl {
-    url = "https://download.drobilla.net/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-r/qA3ux4kh+GM15vw/GLgK7+z0JPaldV6fL6DrBxDt8=";
+    url = "https://download.drobilla.net/${pname}-${version}.tar.xz";
+    hash = "sha256-9Q9IbaUZzdjQOyDJ5CQU5FkTP1okRBHY5jyu+NmskUY=";
   };
 
-  dontAddWafCrossFlags = true;
+  nativeBuildInputs = [
+    doxygen
+    mandoc
+    meson
+    ninja
+    pkg-config
+    python3
+    sphinx
+  ];
+
+  postPatch = ''
+    patchShebangs .
+  '';
+
+  passthru = {
+    updateScript = writeScript "update-poke" ''
+      #!/usr/bin/env nix-shell
+      #!nix-shell -i bash -p curl pcre common-updater-scripts
 
-  nativeBuildInputs = [ pkg-config python3 wafHook ];
+      set -eu -o pipefail
+
+      # Expect the text in format of 'download.drobilla.net/serd-0.30.16.tar.xz">'
+      new_version="$(curl -s https://drobilla.net/category/serd/ |
+          pcregrep -o1 'download.drobilla.net/serd-([0-9.]+).tar.xz' |
+          head -n1)"
+      update-source-version ${pname} "$new_version"
+    '';
+  };
 
   meta = with lib; {
     description = "A lightweight C library for RDF syntax which supports reading and writing Turtle and NTriples";
-    homepage = "http://drobilla.net/software/serd";
+    homepage = "https://drobilla.net/software/serd";
     license = licenses.mit;
     maintainers = [ maintainers.goibhniu ];
     mainProgram = "serdi";
diff --git a/pkgs/development/libraries/srtp/default.nix b/pkgs/development/libraries/srtp/default.nix
index 6c903805175..8bcd854f368 100644
--- a/pkgs/development/libraries/srtp/default.nix
+++ b/pkgs/development/libraries/srtp/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libsrtp";
-  version = "2.4.2";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "cisco";
     repo = "libsrtp";
     rev = "v${version}";
-    sha256 = "sha256-6FAkfxC7Tg7uIAmTmRt5Sn8/YofILfpe7Y4pSaq8XL8=";
+    sha256 = "sha256-OvCw7oF1OuamP3qO2BsimeBSHq1rcXFLfK8KnbbgkMU=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/volk/default.nix b/pkgs/development/libraries/volk/default.nix
index 50361592643..970d6fe4a1d 100644
--- a/pkgs/development/libraries/volk/default.nix
+++ b/pkgs/development/libraries/volk/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     python3
-    python3.pkgs.Mako
+    python3.pkgs.mako
   ];
 
   doCheck = true;
diff --git a/pkgs/development/perl-modules/strip-nondeterminism/default.nix b/pkgs/development/perl-modules/strip-nondeterminism/default.nix
index 806ad65b737..f867e843743 100644
--- a/pkgs/development/perl-modules/strip-nondeterminism/default.nix
+++ b/pkgs/development/perl-modules/strip-nondeterminism/default.nix
@@ -40,17 +40,25 @@ buildPerlPackage rec {
 
   postBuild = ''
     patchShebangs ./bin
-  '' + lib.optionalString stdenv.isDarwin ''
-    shortenPerlShebang bin/strip-nondeterminism
   '';
 
   postInstall = ''
     # we don’t need the debhelper script
     rm $out/bin/dh_strip_nondeterminism
     rm $out/share/man/man1/dh_strip_nondeterminism.1
+  '' + lib.optionalString stdenv.isDarwin ''
+    shortenPerlShebang $out/bin/strip-nondeterminism
+  '';
+
+  installCheckPhase = ''
+    runHook preInstallCheck
+    ($out/bin/strip-nondeterminism --help 2>&1 | grep -q "verbose") || (echo "'$out/bin/strip-nondeterminism --help' failed" && exit 1)
+    runHook postInstallCheck
   '';
 
-  doCheck = true;
+  # running shortenPerlShebang in postBuild results in non-functioning binary 'exec format error'
+  doCheck = !stdenv.isDarwin;
+  doInstallCheck = true;
 
   meta = with lib; {
     description = "A Perl module for stripping bits of non-deterministic information";
diff --git a/pkgs/development/python-modules/alembic/default.nix b/pkgs/development/python-modules/alembic/default.nix
index a759dc226f3..2b766e2f2ef 100644
--- a/pkgs/development/python-modules/alembic/default.nix
+++ b/pkgs/development/python-modules/alembic/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, Mako
+, mako
 , python-dateutil
 , sqlalchemy
 , importlib-metadata
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    Mako
+    mako
     python-dateutil
     sqlalchemy
   ] ++ lib.optionals (pythonOlder "3.9") [
diff --git a/pkgs/development/python-modules/apache-airflow/providers.nix b/pkgs/development/python-modules/apache-airflow/providers.nix
index ca9d291c917..5a7a464be78 100644
--- a/pkgs/development/python-modules/apache-airflow/providers.nix
+++ b/pkgs/development/python-modules/apache-airflow/providers.nix
@@ -129,7 +129,7 @@
     imports = [ "airflow.providers.ftp.hooks.ftp" ];
   };
   github = {
-    deps = [ "PyGithub" ];
+    deps = [ "pygithub" ];
     imports = [ "airflow.providers.github.hooks.github" "airflow.providers.github.operators.github" ];
   };
   google = {
@@ -157,7 +157,7 @@
     imports = [ "airflow.providers.influxdb.hooks.influxdb" "airflow.providers.influxdb.operators.influxdb" ];
   };
   jdbc = {
-    deps = [ "JayDeBeApi" ];
+    deps = [ "jaydebeapi" ];
     imports = [ "airflow.providers.jdbc.hooks.jdbc" "airflow.providers.jdbc.operators.jdbc" ];
   };
   jenkins = {
diff --git a/pkgs/development/python-modules/APScheduler/default.nix b/pkgs/development/python-modules/apscheduler/default.nix
index 2359eea7a04..2359eea7a04 100644
--- a/pkgs/development/python-modules/APScheduler/default.nix
+++ b/pkgs/development/python-modules/apscheduler/default.nix
diff --git a/pkgs/development/python-modules/automate-home/default.nix b/pkgs/development/python-modules/automate-home/default.nix
index c51283f4b76..ea6380bb553 100644
--- a/pkgs/development/python-modules/automate-home/default.nix
+++ b/pkgs/development/python-modules/automate-home/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pytestCheckHook
 , pythonOlder
-, APScheduler
+, apscheduler
 , hiredis
 , aioredis
 , ephem
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    APScheduler
+    apscheduler
     hiredis
     aioredis
     ephem
diff --git a/pkgs/development/python-modules/blinkstick/default.nix b/pkgs/development/python-modules/blinkstick/default.nix
index 8e7dd0b11fb..d3de7561bec 100644
--- a/pkgs/development/python-modules/blinkstick/default.nix
+++ b/pkgs/development/python-modules/blinkstick/default.nix
@@ -5,7 +5,7 @@
 }:
 
 buildPythonPackage rec {
-  pname = "BlinkStick";
+  pname = "blinkstick";
   version = "1.2.0";
 
   src = fetchPypi {
diff --git a/pkgs/development/python-modules/brelpy/default.nix b/pkgs/development/python-modules/brelpy/default.nix
index 66d611f5e93..26af53f10dd 100644
--- a/pkgs/development/python-modules/brelpy/default.nix
+++ b/pkgs/development/python-modules/brelpy/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pycryptodome
-, PyGithub
+, pygithub
 , pythonOlder
 }:
 
diff --git a/pkgs/development/python-modules/bundlewrap/default.nix b/pkgs/development/python-modules/bundlewrap/default.nix
index 1a0ef99e749..a8616c908bc 100644
--- a/pkgs/development/python-modules/bundlewrap/default.nix
+++ b/pkgs/development/python-modules/bundlewrap/default.nix
@@ -4,7 +4,7 @@
 , pythonOlder
 , cryptography
 , jinja2
-, Mako
+, mako
 , passlib
 , pytest
 , pyyaml
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ setuptools ];
   propagatedBuildInputs = [
-    setuptools cryptography jinja2 Mako passlib pyyaml requests tomlkit librouteros
+    setuptools cryptography jinja2 mako passlib pyyaml requests tomlkit librouteros
   ] ++ lib.optionals (pythonOlder "3.11") [ rtoml ];
 
   pythonImportsCheck = [ "bundlewrap" ];
diff --git a/pkgs/development/python-modules/cachetools/default.nix b/pkgs/development/python-modules/cachetools/default.nix
index 08e0b559b0f..14682f23001 100644
--- a/pkgs/development/python-modules/cachetools/default.nix
+++ b/pkgs/development/python-modules/cachetools/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "cachetools";
-  version = "5.2.1";
+  version = "5.3.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "tkem";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-1B/vAfGroGABijMWuiKmIkMyjNSp2B3VkH7s1NMlbw0=";
+    hash = "sha256-7MbP3jz17lGwjAeWo8QmS5v1vGqIQmYLbKVcK/q89Z4=";
   };
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/canmatrix/default.nix b/pkgs/development/python-modules/canmatrix/default.nix
index 79dbbf9d442..dbc7bd764ba 100644
--- a/pkgs/development/python-modules/canmatrix/default.nix
+++ b/pkgs/development/python-modules/canmatrix/default.nix
@@ -11,7 +11,7 @@
 , lxml
 , xlwt
 , xlrd
-, XlsxWriter
+, xlsxwriter
 , pyyaml
 , pytestCheckHook
 }:
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     lxml
     xlwt
     xlrd
-    XlsxWriter
+    xlsxwriter
     pyyaml
   ] ++ lib.optional (pythonOlder "3.5") typing;
 
diff --git a/pkgs/development/python-modules/colanderalchemy/default.nix b/pkgs/development/python-modules/colanderalchemy/default.nix
index 20f45f1fa75..1c45b6b619e 100644
--- a/pkgs/development/python-modules/colanderalchemy/default.nix
+++ b/pkgs/development/python-modules/colanderalchemy/default.nix
@@ -6,7 +6,7 @@
 }:
 
 buildPythonPackage rec {
-  pname = "ColanderAlchemy";
+  pname = "colanderclchemy";
   version = "0.3.4";
 
   src = fetchPypi {
diff --git a/pkgs/development/python-modules/criticality-score/default.nix b/pkgs/development/python-modules/criticality-score/default.nix
index d7e4ac4619b..a5e739e2e4d 100644
--- a/pkgs/development/python-modules/criticality-score/default.nix
+++ b/pkgs/development/python-modules/criticality-score/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, PyGithub, python-gitlab }:
+{ lib, buildPythonPackage, fetchPypi, pygithub, python-gitlab }:
 
 buildPythonPackage rec {
   pname = "criticality_score";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "sha256-5XkVT0blnLG158a01jDfQl1Rx9U1LMsqaMjTdN7Q4QQ=";
   };
 
-  propagatedBuildInputs = [ PyGithub python-gitlab ];
+  propagatedBuildInputs = [ pygithub python-gitlab ];
 
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/cypherpunkpay/default.nix b/pkgs/development/python-modules/cypherpunkpay/default.nix
index 77b7031db35..852a4ea52fd 100644
--- a/pkgs/development/python-modules/cypherpunkpay/default.nix
+++ b/pkgs/development/python-modules/cypherpunkpay/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , poetry-core
-, APScheduler
+, apscheduler
 , bitstring
 , cffi
 , ecdsa
@@ -48,7 +48,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    APScheduler
+    apscheduler
     bitstring
     cffi
     ecdsa
diff --git a/pkgs/development/python-modules/dogpile-cache/default.nix b/pkgs/development/python-modules/dogpile-cache/default.nix
index a47dc6246a5..ebba9a2b271 100644
--- a/pkgs/development/python-modules/dogpile-cache/default.nix
+++ b/pkgs/development/python-modules/dogpile-cache/default.nix
@@ -4,7 +4,7 @@
 , pythonOlder
 , pytestCheckHook
 , mock
-, Mako
+, mako
 , decorator
 , stevedore
 }:
@@ -30,7 +30,7 @@ buildPythonPackage rec {
 
   dontUseSetuptoolsCheck = true;
 
-  nativeCheckInputs = [ pytestCheckHook mock Mako ];
+  nativeCheckInputs = [ pytestCheckHook mock mako ];
 
   propagatedBuildInputs = [ decorator stevedore ];
 
diff --git a/pkgs/development/python-modules/dogtail/default.nix b/pkgs/development/python-modules/dogtail/default.nix
index cc4430ddb39..2f8a02dc3ec 100644
--- a/pkgs/development/python-modules/dogtail/default.nix
+++ b/pkgs/development/python-modules/dogtail/default.nix
@@ -37,7 +37,6 @@ buildPythonPackage {
 
   nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks
   propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ];
-  strictDeps = false; # issue 56943
 
   checkPhase = ''
     runHook preCheck
@@ -50,6 +49,12 @@ buildPythonPackage {
     runHook postCheck
   '';
 
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   # TODO: Tests require accessibility
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/easyprocess/default.nix b/pkgs/development/python-modules/easyprocess/default.nix
index 97707e0e9fd..502c0f64e6b 100644
--- a/pkgs/development/python-modules/easyprocess/default.nix
+++ b/pkgs/development/python-modules/easyprocess/default.nix
@@ -1,11 +1,12 @@
 { lib, buildPythonPackage, fetchPypi }:
 
 buildPythonPackage rec {
-  pname = "EasyProcess";
+  pname = "easyprocess";
   version = "1.1";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "EasyProcess";
+    inherit version;
     sha256 = "sha256-iFiYMCpXqrlIlz6LXTKkIpOSufstmGqx1P/VkOW6kOw=";
   };
 
diff --git a/pkgs/development/python-modules/elastic-apm/default.nix b/pkgs/development/python-modules/elastic-apm/default.nix
index b7286ad39c2..5e7f76cee0b 100644
--- a/pkgs/development/python-modules/elastic-apm/default.nix
+++ b/pkgs/development/python-modules/elastic-apm/default.nix
@@ -8,7 +8,7 @@
 , httpx
 , jinja2
 , jsonschema
-, Logbook
+, logbook
 , mock
 , pytest-asyncio
 , pytest-bdd
@@ -57,7 +57,7 @@ buildPythonPackage rec {
     httpx
     jinja2
     jsonschema
-    Logbook
+    logbook
     mock
     pytest-asyncio
     pytest-bdd
diff --git a/pkgs/development/python-modules/email-validator/default.nix b/pkgs/development/python-modules/email-validator/default.nix
index bf106a26dad..76b5b6fbe34 100644
--- a/pkgs/development/python-modules/email-validator/default.nix
+++ b/pkgs/development/python-modules/email-validator/default.nix
@@ -1,20 +1,24 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
 , dnspython
+, fetchFromGitHub
 , idna
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "email-validator";
-  version = "1.3.0";
+  version = "1.3.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "JoshData";
     repo = "python-${pname}";
     rev = "refs/tags/v${version}";
-    hash = "sha256-mflUF2ZKYhCiQEoG+fKI+K266dukuSzG9cyg6gwBcTo=";
+    hash = "sha256-JW6Yrotm3HjUOUtNFxRorkrJKjzuwIXwjpUuMWEyLV0=";
   };
 
   propagatedBuildInputs = [
@@ -45,10 +49,10 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A robust email syntax and deliverability validation library";
-    homepage    = "https://github.com/JoshData/python-email-validator";
-    changelog   = "https://github.com/JoshData/python-email-validator/releases/tag/v${version}";
-    license     = licenses.cc0;
+    description = "Email syntax and deliverability validation library";
+    homepage = "https://github.com/JoshData/python-email-validator";
+    changelog = "https://github.com/JoshData/python-email-validator/releases/tag/v${version}";
+    license = licenses.cc0;
     maintainers = with maintainers; [ siddharthist ];
   };
 }
diff --git a/pkgs/development/python-modules/entrypoint2/default.nix b/pkgs/development/python-modules/entrypoint2/default.nix
index 812749b3bee..6e81b70f599 100644
--- a/pkgs/development/python-modules/entrypoint2/default.nix
+++ b/pkgs/development/python-modules/entrypoint2/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, EasyProcess
+, easyprocess
 , path
 , pytestCheckHook
 , pythonOlder
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   };
 
   nativeCheckInputs = [
-    EasyProcess
+    easyprocess
     path
     pytestCheckHook
   ];
diff --git a/pkgs/development/python-modules/Fabric/default.nix b/pkgs/development/python-modules/fabric/default.nix
index 9b44b552648..9b44b552648 100644
--- a/pkgs/development/python-modules/Fabric/default.nix
+++ b/pkgs/development/python-modules/fabric/default.nix
diff --git a/pkgs/development/python-modules/FormEncode/default.nix b/pkgs/development/python-modules/formencode/default.nix
index 307ad10b304..1323f2902cf 100644
--- a/pkgs/development/python-modules/FormEncode/default.nix
+++ b/pkgs/development/python-modules/formencode/default.nix
@@ -10,13 +10,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "FormEncode";
+  pname = "formencode";
   version = "2.0.1";
 
   disabled = isPy27;
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "FormEncode";
+    inherit version;
     sha256 = "8f2974112c2557839d5bae8b76490104c03830785d923abbdef148bf3f710035";
   };
 
diff --git a/pkgs/development/python-modules/GeoIP/default.nix b/pkgs/development/python-modules/geoip/default.nix
index 95423a858d0..0db8cb1e4a9 100644
--- a/pkgs/development/python-modules/GeoIP/default.nix
+++ b/pkgs/development/python-modules/geoip/default.nix
@@ -1,17 +1,18 @@
 {lib, buildPythonPackage, fetchPypi
-, geoip, nose}:
+, libgeoip, nose}:
 
 buildPythonPackage rec {
-  pname = "GeoIP";
+  pname = "geoip";
   version = "1.3.2";
 
   nativeCheckInputs = [ nose ];
   propagatedBuildInputs = [
-    geoip
+    libgeoip
   ];
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "GeoIP";
+    inherit version;
     sha256 = "1rphxf3vrn8wywjgr397f49s0s22m83lpwcq45lm0h2p45mdm458";
   };
 
diff --git a/pkgs/development/python-modules/geopandas/default.nix b/pkgs/development/python-modules/geopandas/default.nix
index 47d2376b41d..d8999785273 100644
--- a/pkgs/development/python-modules/geopandas/default.nix
+++ b/pkgs/development/python-modules/geopandas/default.nix
@@ -8,7 +8,7 @@
 , pyproj
 , pytestCheckHook
 , pythonOlder
-, Rtree
+, rtree
 , shapely
 }:
 
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     pytestCheckHook
-    Rtree
+    rtree
   ];
 
   doCheck = !stdenv.isDarwin;
diff --git a/pkgs/development/python-modules/ghrepo-stats/default.nix b/pkgs/development/python-modules/ghrepo-stats/default.nix
index 00f49fbdaea..7f0d81dc3c9 100644
--- a/pkgs/development/python-modules/ghrepo-stats/default.nix
+++ b/pkgs/development/python-modules/ghrepo-stats/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , matplotlib
-, PyGithub
+, pygithub
 , pythonOlder
 }:
 
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     beautifulsoup4
     matplotlib
-    PyGithub
+    pygithub
   ];
 
   # Module has no tests
diff --git a/pkgs/development/python-modules/HTSeq/default.nix b/pkgs/development/python-modules/htseq/default.nix
index 486f8a4556f..5c369d7f06a 100644
--- a/pkgs/development/python-modules/HTSeq/default.nix
+++ b/pkgs/development/python-modules/htseq/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, cython, numpy, pysam, matplotlib, python, isPy27, isPy3k }:
 buildPythonPackage rec {
   version = "0.12.4";
-  pname = "HTSeq";
+  pname = "htseq";
 
   src = fetchFromGitHub {
     owner = "htseq";
diff --git a/pkgs/development/python-modules/ihatemoney/default.nix b/pkgs/development/python-modules/ihatemoney/default.nix
index bd7d404fe29..f93cdf7c33e 100644
--- a/pkgs/development/python-modules/ihatemoney/default.nix
+++ b/pkgs/development/python-modules/ihatemoney/default.nix
@@ -23,7 +23,7 @@
 , idna
 , itsdangerous
 , jinja2
-, Mako
+, mako
 , markupsafe
 , python-dateutil
 , pytz
@@ -71,7 +71,7 @@ buildPythonPackage rec {
     idna
     itsdangerous
     jinja2
-    Mako
+    mako
     markupsafe
     psycopg2
     python-dateutil
diff --git a/pkgs/development/python-modules/JayDeBeApi/default.nix b/pkgs/development/python-modules/jaydebeapi/default.nix
index 0263b4b752d..378da83759b 100644
--- a/pkgs/development/python-modules/JayDeBeApi/default.nix
+++ b/pkgs/development/python-modules/jaydebeapi/default.nix
@@ -1,20 +1,21 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, JPype1
+, jpype1
 }:
 
 buildPythonPackage rec {
-  pname = "JayDeBeApi";
+  pname = "jaydebeapi";
   version = "1.2.3";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "JayDeBeApi";
+    inherit version;
     sha256 = "f25e9307fbb5960cb035394c26e37731b64cc465b197c4344cee85ec450ab92f";
   };
 
   propagatedBuildInputs = [
-    JPype1
+    jpype1
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/JPype1/default.nix b/pkgs/development/python-modules/jpype1/default.nix
index f26473f0a90..0093afbb582 100644
--- a/pkgs/development/python-modules/JPype1/default.nix
+++ b/pkgs/development/python-modules/jpype1/default.nix
@@ -9,12 +9,13 @@
 }:
 
 buildPythonPackage rec {
-  pname = "JPype1";
+  pname = "jpype1";
   version = "1.4.1";
   disabled = isPy27;
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "JPype1";
+    inherit version;
     sha256 = "sha256-3I7oVAc0dK15rhaNkML2iThU9Yk2z6GPNYfK2uDTaW0=";
   };
 
diff --git a/pkgs/development/python-modules/keep/default.nix b/pkgs/development/python-modules/keep/default.nix
index 8b9823b6f03..176924b5fd1 100644
--- a/pkgs/development/python-modules/keep/default.nix
+++ b/pkgs/development/python-modules/keep/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, PyGithub
+, pygithub
 , terminaltables
 , click
 , requests
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     click
     requests
     terminaltables
-    PyGithub
+    pygithub
   ];
 
   # no tests
diff --git a/pkgs/development/python-modules/kombu/default.nix b/pkgs/development/python-modules/kombu/default.nix
index 28fe591d80c..ee023a5e34b 100644
--- a/pkgs/development/python-modules/kombu/default.nix
+++ b/pkgs/development/python-modules/kombu/default.nix
@@ -6,7 +6,7 @@
 , case
 , fetchPypi
 , importlib-metadata
-, Pyro4
+, pyro4
 , pytestCheckHook
 , pythonOlder
 , pytz
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     azure-servicebus
     case
-    Pyro4
+    pyro4
     pytestCheckHook
     pytz
   ];
diff --git a/pkgs/development/python-modules/libgpuarray/default.nix b/pkgs/development/python-modules/libgpuarray/default.nix
index 89a83df4268..6b141af3c96 100644
--- a/pkgs/development/python-modules/libgpuarray/default.nix
+++ b/pkgs/development/python-modules/libgpuarray/default.nix
@@ -8,7 +8,7 @@
 , numpy
 , six
 , nose
-, Mako
+, mako
 , cudaSupport ? false, cudaPackages
 , openclSupport ? true, ocl-icd, clblas
 }:
@@ -59,7 +59,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy
     six
-    Mako
+    mako
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/Logbook/default.nix b/pkgs/development/python-modules/logbook/default.nix
index da1f178729c..e6d155760d5 100644
--- a/pkgs/development/python-modules/Logbook/default.nix
+++ b/pkgs/development/python-modules/logbook/default.nix
@@ -1,11 +1,12 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k, pytest, mock, brotli }:
 
 buildPythonPackage rec {
-  pname = "Logbook";
+  pname = "logbook";
   version = "1.5.3";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "Logbook";
+    inherit version;
     sha256 = "1s1gyfw621vid7qqvhddq6c3z2895ci4lq3g0r1swvpml2nm9x36";
   };
 
diff --git a/pkgs/development/python-modules/ludios_wpull/default.nix b/pkgs/development/python-modules/ludios_wpull/default.nix
index 0045f4b3e0f..eae9f78b26a 100644
--- a/pkgs/development/python-modules/ludios_wpull/default.nix
+++ b/pkgs/development/python-modules/ludios_wpull/default.nix
@@ -8,7 +8,7 @@
 , namedlist
 , sqlalchemy
 , tornado
-, Yapsy
+, yapsy
 , pythonAtLeast
 }:
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     sha256 = "0j4dir0dgg8pkf4d1znicz6wyyi1wzij50r21z838cycsdr54j4c";
   };
 
-  propagatedBuildInputs = [ chardet dnspython html5-parser lxml namedlist sqlalchemy tornado Yapsy ];
+  propagatedBuildInputs = [ chardet dnspython html5-parser lxml namedlist sqlalchemy tornado yapsy ];
 
   # Test suite has tests that fail on all platforms
   doCheck = false;
diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix
index 5798f7c95d9..40dc76162cc 100644
--- a/pkgs/development/python-modules/maestral/default.nix
+++ b/pkgs/development/python-modules/maestral/default.nix
@@ -14,7 +14,7 @@
 , keyrings-alt
 , packaging
 , pathspec
-, Pyro5
+, pyro5
 , requests
 , rich
 , setuptools
@@ -50,7 +50,7 @@ buildPythonPackage rec {
     keyrings-alt
     packaging
     pathspec
-    Pyro5
+    pyro5
     requests
     rich
     setuptools
diff --git a/pkgs/development/python-modules/Mako/default.nix b/pkgs/development/python-modules/mako/default.nix
index 7b8f9b7a8b3..33b5bd2e512 100644
--- a/pkgs/development/python-modules/Mako/default.nix
+++ b/pkgs/development/python-modules/mako/default.nix
@@ -18,13 +18,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "Mako";
+  pname = "mako";
   version = "1.2.4";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "Mako";
+    inherit version;
     sha256 = "sha256-1go5A9w7sBoYrWqJzb4uTq3GnAvI7x43c7pT1Ew/ejQ=";
   };
 
diff --git a/pkgs/development/python-modules/markdown-it-py/default.nix b/pkgs/development/python-modules/markdown-it-py/default.nix
index c1c5da228f0..52dc8672100 100644
--- a/pkgs/development/python-modules/markdown-it-py/default.nix
+++ b/pkgs/development/python-modules/markdown-it-py/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "markdown-it-py";
-  version = "2.1.0";
+  version = "2.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "executablebooks";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-6UATJho3SuIbLktZtFcDrCTWIAh52E+n5adcgl49un0=";
+    hash = "sha256-qdRU1BxczFDGoIEtl0ZMkKNn4p5tec8YuPt5ZwX5fYM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mathlibtools/default.nix b/pkgs/development/python-modules/mathlibtools/default.nix
index bf50e7fdd62..4f90bb7f369 100644
--- a/pkgs/development/python-modules/mathlibtools/default.nix
+++ b/pkgs/development/python-modules/mathlibtools/default.nix
@@ -6,7 +6,7 @@
 , gitpython
 , networkx
 , pydot
-, PyGithub
+, pygithub
 , pythonOlder
 , pyyaml
 , toml
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     gitpython
     networkx
     pydot
-    PyGithub
+    pygithub
     pyyaml
     toml
     tqdm
diff --git a/pkgs/development/python-modules/matrix-nio/default.nix b/pkgs/development/python-modules/matrix-nio/default.nix
index 73171dbdbf2..58af3000349 100644
--- a/pkgs/development/python-modules/matrix-nio/default.nix
+++ b/pkgs/development/python-modules/matrix-nio/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, Logbook
+, logbook
 , aiofiles
 , aiohttp
 , aiohttp-socks
@@ -53,7 +53,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    Logbook
+    logbook
     aiofiles
     aiohttp
     aiohttp-socks
diff --git a/pkgs/development/python-modules/Nikola/default.nix b/pkgs/development/python-modules/nikola/default.nix
index 4a549cee2c0..66525404523 100644
--- a/pkgs/development/python-modules/Nikola/default.nix
+++ b/pkgs/development/python-modules/nikola/default.nix
@@ -14,7 +14,7 @@
 , ipykernel
 , jinja2
 , lxml
-, Mako
+, mako
 , markdown
 , micawber
 , mock
@@ -26,7 +26,7 @@
 , pygal
 , pygments
 , pyphen
-, PyRSS2Gen
+, pyrss2gen
 , pytestCheckHook
 , pythonOlder
 , requests
@@ -36,11 +36,11 @@
 , typogrify
 , unidecode
 , watchdog
-, Yapsy
+, yapsy
 }:
 
 buildPythonPackage rec {
-  pname = "Nikola";
+  pname = "nikola";
   version = "8.2.3";
   disabled = pythonOlder "3.7";
 
@@ -62,7 +62,7 @@ buildPythonPackage rec {
     ipykernel
     jinja2
     lxml
-    Mako
+    mako
     markdown
     micawber
     natsort
@@ -73,14 +73,14 @@ buildPythonPackage rec {
     pygal
     pygments
     pyphen
-    PyRSS2Gen
+    pyrss2gen
     requests
     ruamel-yaml
     toml
     typogrify
     unidecode
     watchdog
-    Yapsy
+    yapsy
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/nocturne/default.nix b/pkgs/development/python-modules/nocturne/default.nix
index 42424f1dacc..036c3af91e1 100644
--- a/pkgs/development/python-modules/nocturne/default.nix
+++ b/pkgs/development/python-modules/nocturne/default.nix
@@ -6,7 +6,7 @@
 , lib
 , nlohmann_json
 , pybind11
-, PyVirtualDisplay
+, pyvirtualdisplay
 , sfml
 , substituteAll
 }:
@@ -42,8 +42,8 @@ buildPythonPackage rec {
 
   buildInputs = [ sfml ];
 
-  # hydra-core and PyVirtualDisplay are not declared as dependences but they are requirements
-  propagatedBuildInputs = [ hydra-core PyVirtualDisplay ];
+  # hydra-core and pyvirtualdisplay are not declared as dependences but they are requirements
+  propagatedBuildInputs = [ hydra-core pyvirtualdisplay ];
 
   # Test suite requires hydra-submitit-launcher which is not packaged as of 2022-01-02
   doCheck = false;
diff --git a/pkgs/development/python-modules/nuitka/default.nix b/pkgs/development/python-modules/nuitka/default.nix
index 4e52fc4dcd1..a16f6cf5d27 100644
--- a/pkgs/development/python-modules/nuitka/default.nix
+++ b/pkgs/development/python-modules/nuitka/default.nix
@@ -10,8 +10,8 @@
 }:
 
 buildPythonPackage rec {
+  pname = "nuitka";
   version = "1.1.5";
-  pname = "Nuitka";
 
   # Latest version is not yet on PyPi
   src = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/osmnx/default.nix b/pkgs/development/python-modules/osmnx/default.nix
index 330385625d2..fec12037e20 100755
--- a/pkgs/development/python-modules/osmnx/default.nix
+++ b/pkgs/development/python-modules/osmnx/default.nix
@@ -11,7 +11,7 @@
 , pythonOlder
 , rasterio
 , requests
-, Rtree
+, rtree
 , scikit-learn
 , scipy
 , shapely
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     numpy
     pandas
     requests
-    Rtree
+    rtree
     shapely
     folium
     scikit-learn
diff --git a/pkgs/development/python-modules/pandas-stubs/default.nix b/pkgs/development/python-modules/pandas-stubs/default.nix
index 9e80c0a0501..605986514aa 100644
--- a/pkgs/development/python-modules/pandas-stubs/default.nix
+++ b/pkgs/development/python-modules/pandas-stubs/default.nix
@@ -19,7 +19,7 @@
 , types-pytz
 , typing-extensions
 , xarray
-, XlsxWriter
+, xlsxwriter
 }:
 
 buildPythonPackage rec {
@@ -59,7 +59,7 @@ buildPythonPackage rec {
     tabulate
     typing-extensions
     xarray
-    XlsxWriter
+    xlsxwriter
   ];
 
   disabledTests = [
diff --git a/pkgs/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix
index 6c6fb3b29cc..46caae33006 100644
--- a/pkgs/development/python-modules/pandas/default.nix
+++ b/pkgs/development/python-modules/pandas/default.nix
@@ -20,7 +20,7 @@
 , pytestCheckHook
 , pytest-xdist
 , pytest-asyncio
-, XlsxWriter
+, xlsxwriter
 # Darwin inputs
 , runtimeShell
 , libcxx
@@ -49,12 +49,13 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     glibcLocales
-    hypothesis
+    # hypothesis indirectly depends on pandas to build its documentation
+    (hypothesis.override { enableDocumentation = false; })
     jinja2
     pytest-asyncio
     pytest-xdist
     pytestCheckHook
-    XlsxWriter
+    xlsxwriter
   ];
 
   # Doesn't work with -Werror,-Wunused-command-line-argument
diff --git a/pkgs/development/python-modules/papermill/default.nix b/pkgs/development/python-modules/papermill/default.nix
index 9afafa5c66f..f1c26beaa64 100644
--- a/pkgs/development/python-modules/papermill/default.nix
+++ b/pkgs/development/python-modules/papermill/default.nix
@@ -11,7 +11,7 @@
 , nbclient
 , nbformat
 , pyarrow
-, PyGithub
+, pygithub
 , pytest-mock
 , pytestCheckHook
 , pythonOlder
@@ -54,7 +54,7 @@ buildPythonPackage rec {
       gcsfs
     ];
     github = [
-      PyGithub
+      pygithub
     ];
     hdfs = [
       pyarrow
diff --git a/pkgs/development/python-modules/pdoc3/default.nix b/pkgs/development/python-modules/pdoc3/default.nix
index 740ce08af4e..1c3e5ef08af 100644
--- a/pkgs/development/python-modules/pdoc3/default.nix
+++ b/pkgs/development/python-modules/pdoc3/default.nix
@@ -4,7 +4,7 @@
 , fetchPypi
 , fetchpatch
 , pythonOlder
-, Mako
+, mako
 , markdown
 , setuptools-git
 , setuptools-scm
@@ -42,7 +42,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    Mako
+    mako
     markdown
   ];
 
diff --git a/pkgs/development/python-modules/pecan/default.nix b/pkgs/development/python-modules/pecan/default.nix
index 63bae07aec7..fa64ff24d05 100644
--- a/pkgs/development/python-modules/pecan/default.nix
+++ b/pkgs/development/python-modules/pecan/default.nix
@@ -2,7 +2,7 @@
 , fetchPypi
 , buildPythonPackage
 , logutils
-, Mako
+, mako
 , webtest
 , pythonOlder
 , pytestCheckHook
@@ -28,7 +28,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     logutils
-    Mako
+    mako
     webtest
     six
   ];
diff --git a/pkgs/development/python-modules/Pmw/default.nix b/pkgs/development/python-modules/pmw/default.nix
index f88346d6648..ec120848a8c 100644
--- a/pkgs/development/python-modules/Pmw/default.nix
+++ b/pkgs/development/python-modules/pmw/default.nix
@@ -1,11 +1,12 @@
 { lib , buildPythonPackage , fetchPypi, tkinter }:
 
 buildPythonPackage rec {
-  pname = "Pmw";
+  pname = "pmw";
   version = "2.1.1";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "Pmw";
+    inherit version;
     sha256 = "sha256-lIQSRXz8zwx3XdCOCRP7APkIlqM8eXN9VxxzEq6vVcY=";
   };
 
diff --git a/pkgs/development/python-modules/pweave/default.nix b/pkgs/development/python-modules/pweave/default.nix
index c9e2ff020f8..bea63909ab5 100644
--- a/pkgs/development/python-modules/pweave/default.nix
+++ b/pkgs/development/python-modules/pweave/default.nix
@@ -11,11 +11,12 @@
 }:
 
 buildPythonPackage rec {
-  pname = "Pweave";
+  pname = "pweave";
   version = "0.30.3";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "Pweave";
+    inherit version;
     sha256 = "5e5298d90e06414a01f48e0d6aa4c36a70c5f223d929f2a9c7e2d388451c7357";
   };
 
diff --git a/pkgs/development/python-modules/pwntools/default.nix b/pkgs/development/python-modules/pwntools/default.nix
index a9b5b7f0ae6..a10f6a7fa54 100644
--- a/pkgs/development/python-modules/pwntools/default.nix
+++ b/pkgs/development/python-modules/pwntools/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , debugger
 , fetchPypi
-, Mako
+, mako
 , packaging
 , pysocks
 , pygments
@@ -52,7 +52,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    Mako
+    mako
     packaging
     pysocks
     pygments
diff --git a/pkgs/development/python-modules/pycuda/default.nix b/pkgs/development/python-modules/pycuda/default.nix
index e2a41cca4a3..cc2bffb2698 100644
--- a/pkgs/development/python-modules/pycuda/default.nix
+++ b/pkgs/development/python-modules/pycuda/default.nix
@@ -2,7 +2,7 @@
 , addOpenGLRunpath
 , fetchPypi
 , fetchFromGitHub
-, Mako
+, mako
 , boost
 , numpy
 , pytools
@@ -71,7 +71,7 @@ buildPythonPackage rec {
     cudatoolkit
     compyte
     python
-    Mako
+    mako
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pyGithub/default.nix b/pkgs/development/python-modules/pygithub/default.nix
index 7facf0c0032..f510fcc8d8f 100644
--- a/pkgs/development/python-modules/pyGithub/default.nix
+++ b/pkgs/development/python-modules/pygithub/default.nix
@@ -10,7 +10,7 @@
 }:
 
 buildPythonPackage rec {
-  pname = "PyGithub";
+  pname = "pygithub";
   version = "1.57";
   format = "setuptools";
   disabled = pythonOlder "3.6";
diff --git a/pkgs/development/python-modules/pygments/default.nix b/pkgs/development/python-modules/pygments/default.nix
index 22193faab82..5015acb03f3 100644
--- a/pkgs/development/python-modules/pygments/default.nix
+++ b/pkgs/development/python-modules/pygments/default.nix
@@ -10,12 +10,12 @@
 let pygments = buildPythonPackage
   rec {
     pname = "pygments";
-    version = "2.13.0";
+    version = "2.14.0";
 
     src = fetchPypi {
       pname = "Pygments";
       inherit version;
-      sha256 = "sha256-VqhQiulfmOK5vfk6a+WuP32K+Fi0PgLFov8INya+QME=";
+      hash = "sha256-s+0GqeismpquWm9dvniopYZV0XtDuTwHjwlN3Edq4pc=";
     };
 
     propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pylti/default.nix b/pkgs/development/python-modules/pylti/default.nix
index b68695ad425..69e4af22ccf 100644
--- a/pkgs/development/python-modules/pylti/default.nix
+++ b/pkgs/development/python-modules/pylti/default.nix
@@ -21,7 +21,7 @@
 }:
 
 buildPythonPackage rec {
-  pname = "PyLTI";
+  pname = "pylti";
   version = "0.7.0";
 
   disabled = !isPy27;
@@ -38,7 +38,8 @@ buildPythonPackage rec {
   ];
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "PyLTI";
+    inherit version;
     sha256 = "80938a235b1ab390f6889a95237d087ea7adde5cc50fcae9c80c49898e8ee78e";
   };
 
diff --git a/pkgs/development/python-modules/pymvglive/default.nix b/pkgs/development/python-modules/pymvglive/default.nix
index e2c2e8f05a1..f80a9206319 100644
--- a/pkgs/development/python-modules/pymvglive/default.nix
+++ b/pkgs/development/python-modules/pymvglive/default.nix
@@ -1,11 +1,12 @@
 { lib, buildPythonPackage, fetchPypi, requests }:
 
 buildPythonPackage rec {
-  pname = "PyMVGLive";
+  pname = "pymvglive";
   version = "1.1.4";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "PyMVGLive";
+    inherit version;
     sha256 = "0sh4xm74im9qxzpbrlc5h1vnpgvpybnpvdcav1iws0b561zdr08c";
   };
 
diff --git a/pkgs/development/python-modules/pyopencl/default.nix b/pkgs/development/python-modules/pyopencl/default.nix
index ad24fbcbd2a..725cb91f966 100644
--- a/pkgs/development/python-modules/pyopencl/default.nix
+++ b/pkgs/development/python-modules/pyopencl/default.nix
@@ -5,7 +5,7 @@
 , appdirs
 , cffi
 , decorator
-, Mako
+, mako
 , mesa_drivers
 , numpy
 , ocl-icd
@@ -31,7 +31,7 @@ in buildPythonPackage rec {
     appdirs
     cffi
     decorator
-    Mako
+    mako
     numpy
     platformdirs
     pytools
diff --git a/pkgs/development/python-modules/pypugjs/default.nix b/pkgs/development/python-modules/pypugjs/default.nix
index e530df116c2..96d722c38b1 100644
--- a/pkgs/development/python-modules/pypugjs/default.nix
+++ b/pkgs/development/python-modules/pypugjs/default.nix
@@ -4,7 +4,7 @@
 , django
 , fetchFromGitHub
 , jinja2
-, Mako
+, mako
 , nose
 , pyramid
 , pyramid_mako
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     django
     jinja2
-    Mako
+    mako
     nose
     tornado
     pyramid
diff --git a/pkgs/development/python-modules/pyramid_mako/default.nix b/pkgs/development/python-modules/pyramid_mako/default.nix
index a4de687eed2..be9c76eeb88 100644
--- a/pkgs/development/python-modules/pyramid_mako/default.nix
+++ b/pkgs/development/python-modules/pyramid_mako/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , webtest
 , pyramid
-, Mako
+, mako
 }:
 
 buildPythonPackage rec {
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   ];
 
   buildInputs = [ webtest ];
-  propagatedBuildInputs = [ pyramid Mako ];
+  propagatedBuildInputs = [ pyramid mako ];
 
   meta = with lib; {
     homepage = "https://github.com/Pylons/pyramid_mako";
diff --git a/pkgs/development/python-modules/pyrss2gen/default.nix b/pkgs/development/python-modules/pyrss2gen/default.nix
index 4a7dc788caa..00c823475a6 100644
--- a/pkgs/development/python-modules/pyrss2gen/default.nix
+++ b/pkgs/development/python-modules/pyrss2gen/default.nix
@@ -4,11 +4,12 @@
 }:
 
 buildPythonPackage rec {
-  pname = "PyRSS2Gen";
+  pname = "pyrss2gen";
   version = "1.1";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "PyRSS2Gen";
+    inherit version;
     sha256 = "1rvf5jw9hknqz02rp1vg8abgb1lpa0bc65l7ylmlillqx7bswq3r";
   };
 
diff --git a/pkgs/development/python-modules/pyscreenshot/default.nix b/pkgs/development/python-modules/pyscreenshot/default.nix
index 8fbd0801dd6..0457edb1450 100644
--- a/pkgs/development/python-modules/pyscreenshot/default.nix
+++ b/pkgs/development/python-modules/pyscreenshot/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy3k
-, EasyProcess
+, easyprocess
 , entrypoint2
 , jeepney
 , mss
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    EasyProcess
+    easyprocess
     entrypoint2
     pillow
   ] ++ lib.optionals (isPy3k) [
diff --git a/pkgs/development/python-modules/pystemmer/default.nix b/pkgs/development/python-modules/pystemmer/default.nix
index 738b67a0997..0df510e0b55 100644
--- a/pkgs/development/python-modules/pystemmer/default.nix
+++ b/pkgs/development/python-modules/pystemmer/default.nix
@@ -9,15 +9,10 @@
  }:
 
 buildPythonPackage rec {
-  pname = "PyStemmer";
+  pname = "pystemmer";
   version = "2.2.0";
   format = "setuptools";
 
-  src' = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-4hcbkbhrscap3d8J6Mhn5Ij4vWm94H0EEKNc3O4NhXw=";
-  };
-
   src = fetchFromGitHub {
     owner = "snowballstem";
     repo = "pystemmer";
@@ -52,10 +47,6 @@ buildPythonPackage rec {
     "-L${libstemmer}/lib"
   ];
 
-  #preBuild = ''
-  #  cython src/Stemmer.pyx
-  #'';
-
   pythonImportsCheck = [
     "Stemmer"
   ];
diff --git a/pkgs/development/python-modules/pytest-bdd/default.nix b/pkgs/development/python-modules/pytest-bdd/default.nix
index fb86c3b0433..7908a04fa40 100644
--- a/pkgs/development/python-modules/pytest-bdd/default.nix
+++ b/pkgs/development/python-modules/pytest-bdd/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, Mako
+, mako
 , parse
 , parse-type
 , poetry-core
@@ -35,7 +35,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    Mako
+    mako
     parse
     parse-type
     typing-extensions
diff --git a/pkgs/development/python-modules/pytest-xvfb/default.nix b/pkgs/development/python-modules/pytest-xvfb/default.nix
index f4038c55779..ba067c19658 100644
--- a/pkgs/development/python-modules/pytest-xvfb/default.nix
+++ b/pkgs/development/python-modules/pytest-xvfb/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytest
-, PyVirtualDisplay
+, pyvirtualdisplay
 , isPy27
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   buildInputs = [ pytest ];
 
   propagatedBuildInputs = [
-    PyVirtualDisplay
+    pyvirtualdisplay
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/python-telegram-bot/default.nix b/pkgs/development/python-modules/python-telegram-bot/default.nix
index d87ba9f7610..fe27508d5ff 100644
--- a/pkgs/development/python-modules/python-telegram-bot/default.nix
+++ b/pkgs/development/python-modules/python-telegram-bot/default.nix
@@ -1,6 +1,6 @@
 { lib
 , aiolimiter
-, APScheduler
+, apscheduler
 , beautifulsoup4
 , buildPythonPackage
 , cachetools
@@ -33,7 +33,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     aiolimiter
-    APScheduler
+    apscheduler
     cachetools
     cryptography
     httpx
diff --git a/pkgs/development/python-modules/PyVirtualDisplay/default.nix b/pkgs/development/python-modules/pyvirtualdisplay/default.nix
index bc7469e1d61..1f70791ea8b 100644
--- a/pkgs/development/python-modules/PyVirtualDisplay/default.nix
+++ b/pkgs/development/python-modules/pyvirtualdisplay/default.nix
@@ -1,13 +1,14 @@
 { lib, buildPythonPackage, fetchPypi, EasyProcess }:
 
 buildPythonPackage rec {
-  pname = "PyVirtualDisplay";
+  pname = "pyvirtualdisplay";
   version = "3.0";
 
   propagatedBuildInputs = [ EasyProcess ];
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "PyVirtualDisplay";
+    inherit version;
     sha256 = "sha256-CXVbw86263JfsH7KVCX0PyNY078I4A0qm3kqGu3RYVk=";
   };
 
diff --git a/pkgs/development/python-modules/pywbem/default.nix b/pkgs/development/python-modules/pywbem/default.nix
index e02d767ce93..0b32bf7f545 100644
--- a/pkgs/development/python-modules/pywbem/default.nix
+++ b/pkgs/development/python-modules/pywbem/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , decorator
 , fetchPypi
-, FormEncode
+, formencode
 , httpretty
 , libxml2
 , lxml
@@ -47,7 +47,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     decorator
-    FormEncode
+    formencode
     httpretty
     libxml2
     lxml
diff --git a/pkgs/development/python-modules/recommonmark/default.nix b/pkgs/development/python-modules/recommonmark/default.nix
index 7804029c0d9..ebe070f2735 100644
--- a/pkgs/development/python-modules/recommonmark/default.nix
+++ b/pkgs/development/python-modules/recommonmark/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
-, CommonMark
+, commonmark
 , docutils
 , sphinx
 , isPy3k
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   };
 
   nativeCheckInputs = [ pytestCheckHook ];
-  propagatedBuildInputs = [ CommonMark docutils sphinx ];
+  propagatedBuildInputs = [ commonmark docutils sphinx ];
 
   dontUseSetuptoolsCheck = true;
 
diff --git a/pkgs/development/python-modules/reikna/default.nix b/pkgs/development/python-modules/reikna/default.nix
index dd75551b34e..77ef9e8d04b 100644
--- a/pkgs/development/python-modules/reikna/default.nix
+++ b/pkgs/development/python-modules/reikna/default.nix
@@ -4,7 +4,7 @@
 , sphinx
 , pytest-cov
 , pytest
-, Mako
+, mako
 , numpy
 , funcsigs
 , withCuda ? false, pycuda
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [ sphinx pytest-cov pytest ];
 
-  propagatedBuildInputs = [ Mako numpy funcsigs ]
+  propagatedBuildInputs = [ mako numpy funcsigs ]
     ++ lib.optional withCuda pycuda
     ++ lib.optional withOpenCL pyopencl;
 
diff --git a/pkgs/development/python-modules/requests-cache/default.nix b/pkgs/development/python-modules/requests-cache/default.nix
index 5cb90496ea6..f85d2b2debe 100644
--- a/pkgs/development/python-modules/requests-cache/default.nix
+++ b/pkgs/development/python-modules/requests-cache/default.nix
@@ -26,7 +26,7 @@
 
 buildPythonPackage rec {
   pname = "requests-cache";
-  version = "0.9.7";
+  version = "0.9.8";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -34,8 +34,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "requests-cache";
     repo = "requests-cache";
-    rev = "v${version}";
-    hash = "sha256-HSYu4jOEMXI/zGuWI7invYVvVeeM5+dDlc+9h8TOGms=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Xbzbwz80xY8IDPDhZEUhmmiCFJZvSQMQ6EmE4EL7QGo=";
   };
 
   nativeBuildInputs = [
@@ -107,6 +107,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Persistent cache for requests library";
     homepage = "https://github.com/reclosedev/requests-cache";
+    changelog = "https://github.com/requests-cache/requests-cache/blob/v${version}/HISTORY.md";
     license = licenses.bsd3;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/rich/default.nix b/pkgs/development/python-modules/rich/default.nix
index b263a2d08cb..68ba22087b3 100644
--- a/pkgs/development/python-modules/rich/default.nix
+++ b/pkgs/development/python-modules/rich/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
-, CommonMark
+, markdown-it-py
 , poetry-core
 , pygments
 , typing-extensions
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "rich";
-  version = "13.0.0";
+  version = "13.3.0";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -25,13 +25,13 @@ buildPythonPackage rec {
     owner = "Textualize";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-Mc2ZTpn2cPGXIBblwwukJGiD8etdVi8ag9Xb77gG62A=";
+    hash = "sha256-0bE3I3xuPIkBjKcHvXJhdPa4Kg+B7ByKUPJohgh9tHk=";
   };
 
   nativeBuildInputs = [ poetry-core ];
 
   propagatedBuildInputs = [
-    CommonMark
+    markdown-it-py
     pygments
   ] ++ lib.optionals (pythonOlder "3.9") [
     typing-extensions
diff --git a/pkgs/development/python-modules/Rtree/default.nix b/pkgs/development/python-modules/rtree/default.nix
index 4ee9b26c5d2..4ee9b26c5d2 100644
--- a/pkgs/development/python-modules/Rtree/default.nix
+++ b/pkgs/development/python-modules/rtree/default.nix
diff --git a/pkgs/development/python-modules/shodan/default.nix b/pkgs/development/python-modules/shodan/default.nix
index 1a17905f3b8..e9312be501b 100644
--- a/pkgs/development/python-modules/shodan/default.nix
+++ b/pkgs/development/python-modules/shodan/default.nix
@@ -6,7 +6,7 @@
 , requests
 , setuptools
 , pythonOlder
-, XlsxWriter
+, xlsxwriter
 }:
 
 buildPythonPackage rec {
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     colorama
     requests
     setuptools
-    XlsxWriter
+    xlsxwriter
   ];
 
   # The tests require a shodan api key, so skip them.
diff --git a/pkgs/development/python-modules/snowballstemmer/default.nix b/pkgs/development/python-modules/snowballstemmer/default.nix
index a1813fac54e..60ba22e9039 100644
--- a/pkgs/development/python-modules/snowballstemmer/default.nix
+++ b/pkgs/development/python-modules/snowballstemmer/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, PyStemmer, fetchPypi }:
+{ lib, buildPythonPackage, pystemmer, fetchPypi }:
 
 buildPythonPackage rec {
   pname = "snowballstemmer";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   # No tests included
   doCheck = false;
 
-  propagatedBuildInputs = [ PyStemmer ];
+  propagatedBuildInputs = [ pystemmer ];
 
   meta = with lib; {
     description = "16 stemmer algorithms (15 + Poerter English stemmer) generated from Snowball algorithms";
diff --git a/pkgs/development/python-modules/sphinx-markdown-parser/default.nix b/pkgs/development/python-modules/sphinx-markdown-parser/default.nix
index cd5b1927d10..626e8dba585 100644
--- a/pkgs/development/python-modules/sphinx-markdown-parser/default.nix
+++ b/pkgs/development/python-modules/sphinx-markdown-parser/default.nix
@@ -4,7 +4,7 @@
 , fetchFromGitHub
 , sphinx
 , markdown
-, CommonMark
+, commonmark
 , recommonmark
 , pydash
 , pyyaml
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     sha256 = "0i0hhapmdmh83yx61lxi2h4bsmhnzddamz95844g2ghm132kw5mv";
   };
 
-  propagatedBuildInputs = [ sphinx markdown CommonMark pydash pyyaml unify yapf recommonmark ];
+  propagatedBuildInputs = [ sphinx markdown commonmark pydash pyyaml unify yapf recommonmark ];
 
   # Avoids running broken tests in test_markdown.py
   checkPhase = ''
diff --git a/pkgs/development/python-modules/sphinx/default.nix b/pkgs/development/python-modules/sphinx/default.nix
index 74abbe90c96..3e50d87ec87 100644
--- a/pkgs/development/python-modules/sphinx/default.nix
+++ b/pkgs/development/python-modules/sphinx/default.nix
@@ -106,6 +106,12 @@ buildPythonPackage rec {
     # requires imagemagick (increases build closure size), doesn't
     # test anything substantial
     "test_ext_imgconverter"
+
+    # fails with pygments 2.14
+    # TODO remove for sphinx 6
+    "test_viewcode"
+    "test_additional_targets_should_be_translated"
+    "test_additional_targets_should_not_be_translated"
   ] ++ lib.optionals stdenv.isDarwin [
     # Due to lack of network sandboxing can't guarantee port 7777 isn't bound
     "test_inspect_main_url"
diff --git a/pkgs/development/python-modules/spyder/default.nix b/pkgs/development/python-modules/spyder/default.nix
index 80435a738d5..a209a488355 100644
--- a/pkgs/development/python-modules/spyder/default.nix
+++ b/pkgs/development/python-modules/spyder/default.nix
@@ -35,7 +35,7 @@
 , qtconsole
 , qtpy
 , rope
-, Rtree
+, rtree
 , scipy
 , spyder-kernels
 , textdistance
@@ -93,7 +93,7 @@ buildPythonPackage rec {
     qtconsole
     qtpy
     rope
-    Rtree
+    rtree
     scipy
     spyder-kernels
     textdistance
diff --git a/pkgs/development/python-modules/sqlobject/default.nix b/pkgs/development/python-modules/sqlobject/default.nix
index 4b30f56a9f2..21c48ad86ef 100644
--- a/pkgs/development/python-modules/sqlobject/default.nix
+++ b/pkgs/development/python-modules/sqlobject/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
-, FormEncode
+, formencode
 , pastedeploy
 , paste
 , pydispatcher
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    FormEncode
+    formencode
     paste
     pastedeploy
     pydispatcher
diff --git a/pkgs/development/python-modules/textual/default.nix b/pkgs/development/python-modules/textual/default.nix
index 5decea07774..d02a152903a 100644
--- a/pkgs/development/python-modules/textual/default.nix
+++ b/pkgs/development/python-modules/textual/default.nix
@@ -2,8 +2,11 @@
 , buildPythonPackage
 , fetchFromGitHub
 , poetry-core
+, mkdocs-exclude
+, markdown-it-py
+, mdit-py-plugins
+, linkify-it-py
 , importlib-metadata
-, nanoid
 , rich
 , typing-extensions
 , aiohttp
@@ -19,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "textual";
-  version = "0.10.1";
+  version = "0.11.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -28,7 +31,7 @@ buildPythonPackage rec {
     owner = "Textualize";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-DPE8brf8y6DJDPfDNUBk09ngthSWN59UYw6yPfI4+Qw=";
+    hash = "sha256-Dr3sgAJxB4CQTT4vWbOB3R9mh2pgaIwLeDJB0e7hkyI=";
   };
 
   nativeBuildInputs = [
@@ -41,18 +44,21 @@ buildPythonPackage rec {
   '';
 
   propagatedBuildInputs = [
-    importlib-metadata
-    nanoid
     rich
-  ] ++ lib.optionals (pythonOlder "3.10") [
+    markdown-it-py
+    mdit-py-plugins
+    linkify-it-py
+    importlib-metadata
+    aiohttp
+    click
+    msgpack
+    mkdocs-exclude
+  ] ++ lib.optionals (pythonOlder "3.11") [
     typing-extensions
   ];
 
   nativeCheckInputs = [
-    aiohttp
-    click
     jinja2
-    msgpack
     pytest-aiohttp
     pytestCheckHook
     syrupy
diff --git a/pkgs/development/python-modules/Theano/default.nix b/pkgs/development/python-modules/theano/default.nix
index e931875605b..627941e6bc4 100644
--- a/pkgs/development/python-modules/Theano/default.nix
+++ b/pkgs/development/python-modules/theano/default.nix
@@ -48,7 +48,7 @@ let
   libgpuarray_ = libgpuarray.override { inherit cudaSupport cudaPackages; };
 
 in buildPythonPackage rec {
-  pname = "Theano";
+  pname = "theano";
   version = "1.0.5";
 
   disabled = isPyPy || pythonOlder "2.6" || (isPy3k && pythonOlder "3.3");
diff --git a/pkgs/development/python-modules/txtorcon/default.nix b/pkgs/development/python-modules/txtorcon/default.nix
index e412b9a8702..6a4a098856b 100644
--- a/pkgs/development/python-modules/txtorcon/default.nix
+++ b/pkgs/development/python-modules/txtorcon/default.nix
@@ -4,7 +4,7 @@
 , buildPythonPackage
 , cryptography
 , fetchPypi
-, GeoIP
+, geoip
 , idna
 , incremental
 , lsof
@@ -42,7 +42,7 @@ buildPythonPackage rec {
     pytestCheckHook
     mock
     lsof
-    GeoIP
+    geoip
   ];
 
   doCheck = !(stdenv.isDarwin && stdenv.isAarch64);
diff --git a/pkgs/development/python-modules/WSME/default.nix b/pkgs/development/python-modules/wsme/default.nix
index a88b843a615..a818b3baf4b 100644
--- a/pkgs/development/python-modules/WSME/default.nix
+++ b/pkgs/development/python-modules/wsme/default.nix
@@ -21,13 +21,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "WSME";
+  pname = "wsme";
   version = "0.11.0";
 
   disabled = pythonAtLeast "3.9";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "WSME";
+    inherit version;
     sha256 = "bd2dfc715bedcc8f4649611bc0c8a238f483dc01cff7102bc1efa6bea207b64b";
   };
 
diff --git a/pkgs/development/python-modules/XlsxWriter/default.nix b/pkgs/development/python-modules/xlsxwriter/default.nix
index 4cf7842464a..4cf7842464a 100644
--- a/pkgs/development/python-modules/XlsxWriter/default.nix
+++ b/pkgs/development/python-modules/xlsxwriter/default.nix
diff --git a/pkgs/development/python-modules/yapsy/default.nix b/pkgs/development/python-modules/yapsy/default.nix
index 27871201959..a58c14150a3 100644
--- a/pkgs/development/python-modules/yapsy/default.nix
+++ b/pkgs/development/python-modules/yapsy/default.nix
@@ -5,11 +5,12 @@
 }:
 
 buildPythonPackage rec {
-  pname = "Yapsy";
+  pname = "yapsy";
   version = "1.12.2";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "Yapsy";
+    inherit version;
     sha256 = "12rznbnswfw0w7qfbvmmffr9r317gl1rqg36nijwzsklkjgks4fq";
   };
 
diff --git a/pkgs/development/python-modules/zodb/default.nix b/pkgs/development/python-modules/zodb/default.nix
index d44642d7515..735ad740721 100644
--- a/pkgs/development/python-modules/zodb/default.nix
+++ b/pkgs/development/python-modules/zodb/default.nix
@@ -10,7 +10,7 @@
 , zconfig
 , persistent
 , zc_lockfile
-, BTrees
+, btrees
 , manuel
 }:
 
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     zconfig
     persistent
     zc_lockfile
-    BTrees
+    btrees
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 2aff749ebcb..a8d47b1a11d 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -40,11 +40,11 @@ stdenv.mkDerivation rec {
     + lib.optionalString isBootstrap "-boot"
     + lib.optionalString cursesUI "-cursesUI"
     + lib.optionalString qt5UI "-qt5UI";
-  version = "3.25.1";
+  version = "3.25.2";
 
   src = fetchurl {
     url = "https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
-    sha256 = "sha256-HFEdCVFq9JNpTtm68TxVlHo2OJZ01lei1eDM7caykdg=";
+    sha256 = "0g6k9sa23smh9z5dz8v6dqy89887gxc7s24gchpm7p9ip4ng49n0";
   };
 
   patches = [
diff --git a/pkgs/development/tools/cambalache/default.nix b/pkgs/development/tools/cambalache/default.nix
index e2e7157425b..43a5778ff95 100644
--- a/pkgs/development/tools/cambalache/default.nix
+++ b/pkgs/development/tools/cambalache/default.nix
@@ -57,15 +57,16 @@ python3.pkgs.buildPythonApplication rec {
     libhandy
   ];
 
-  # Not compatible with gobject-introspection setup hooks.
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   # Prevent double wrapping.
   dontWrapGApps = true;
 
   postPatch = ''
     patchShebangs postinstall.py
+    # those programs are used at runtime not build time
+    # https://gitlab.gnome.org/jpu/cambalache/-/blob/main/meson.build#L79-80
+    substituteInPlace ./meson.build \
+      --replace "find_program('broadwayd', required: true)" "" \
+      --replace "find_program('gtk4-broadwayd', required: true)" ""
   '';
 
   preFixup = ''
diff --git a/pkgs/development/tools/github/cligh/default.nix b/pkgs/development/tools/github/cligh/default.nix
index ce340239ac4..426a9735a90 100644
--- a/pkgs/development/tools/github/cligh/default.nix
+++ b/pkgs/development/tools/github/cligh/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, buildPythonApplication, pyxdg, PyGithub }:
+{ lib, fetchFromGitHub, buildPythonApplication, pyxdg, pygithub }:
 
 buildPythonApplication rec {
   pname = "cligh";
@@ -13,7 +13,7 @@ buildPythonApplication rec {
     sha256 = "0d1fd78rzl2n75xpmy1gnxh1shvcs4qm0j4qqszqvfriwkg2flxn";
   };
 
-  propagatedBuildInputs = [ pyxdg PyGithub ];
+  propagatedBuildInputs = [ pyxdg pygithub ];
 
   meta = with lib; {
     homepage = "http://the-brannons.com/software/cligh.html";
diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix
index d105dd61665..c59ed440b7c 100644
--- a/pkgs/development/tools/misc/d-feet/default.nix
+++ b/pkgs/development/tools/misc/d-feet/default.nix
@@ -63,10 +63,6 @@ python3.pkgs.buildPythonApplication rec {
     "-Dtests=false" # needs dbus
   ];
 
-  # Temporary fix
-  # See https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   postPatch = ''
     chmod +x meson_post_install.py
     patchShebangs meson_post_install.py
diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix
index bd7adcd1a7b..e3b76b05248 100644
--- a/pkgs/development/tools/misc/gdb/default.nix
+++ b/pkgs/development/tools/misc/gdb/default.nix
@@ -81,8 +81,15 @@ stdenv.mkDerivation rec {
 
   configurePlatforms = [ "build" "host" "target" ];
 
-  # GDB have to be built out of tree.
   preConfigure = ''
+    # remove precompiled docs, required for man gdbinit to mention /etc/gdb/gdbinit
+    rm gdb/doc/*.info*
+    rm gdb/doc/*.5
+    rm gdb/doc/*.1
+    # fix doc build https://sourceware.org/bugzilla/show_bug.cgi?id=27808
+    rm gdb/doc/GDBvn.texi
+
+    # GDB have to be built out of tree.
     mkdir _build
     cd _build
   '';
@@ -103,6 +110,9 @@ stdenv.mkDerivation rec {
     "--with-system-zlib"
     "--with-system-readline"
 
+    "--with-system-gdbinit=/etc/gdb/gdbinit"
+    "--with-system-gdbinit-dir=/etc/gdb/gdbinit.d"
+
     "--with-gmp=${gmp.dev}"
     "--with-mpfr=${mpfr.dev}"
     "--with-expat" "--with-libexpat-prefix=${expat.dev}"
diff --git a/pkgs/development/tools/misc/texinfo/7.0.nix b/pkgs/development/tools/misc/texinfo/7.0.nix
new file mode 100644
index 00000000000..b92b923ddcd
--- /dev/null
+++ b/pkgs/development/tools/misc/texinfo/7.0.nix
@@ -0,0 +1,4 @@
+import ./common.nix {
+  version = "7.0.2";
+  sha256 = "sha256-8hHsMmE4PhqJ5FVak7nQF/6Ae5w5kvst/0hx2ubaVK0=";
+}
diff --git a/pkgs/development/tools/misc/texinfo/common.nix b/pkgs/development/tools/misc/texinfo/common.nix
index 38a44e8c9cb..af0d26fe1f3 100644
--- a/pkgs/development/tools/misc/texinfo/common.nix
+++ b/pkgs/development/tools/misc/texinfo/common.nix
@@ -28,6 +28,10 @@ stdenv.mkDerivation {
 
   patches = patches ++ optional crossBuildTools ./cross-tools-flags.patch;
 
+  postPatch = ''
+    patchShebangs tp/maintain
+  '';
+
   # ncurses is required to build `makedoc'
   # this feature is introduced by the ./cross-tools-flags.patch
   NATIVE_TOOLS_CFLAGS = if crossBuildTools then "-I${getDev buildPackages.ncurses}/include" else null;
@@ -58,7 +62,7 @@ stdenv.mkDerivation {
     && !stdenv.isDarwin
     && !stdenv.isSunOS; # flaky
 
-  checkFlags = lib.optionals (!stdenv.hostPlatform.isMusl) [
+  checkFlags = lib.optionals (!stdenv.hostPlatform.isMusl && lib.versionOlder version "7") [
     # Test is known to fail on various locales on texinfo-6.8:
     #   https://lists.gnu.org/r/bug-texinfo/2021-07/msg00012.html
     "XFAIL_TESTS=test_scripts/layout_formatting_fr_icons.sh"
@@ -72,8 +76,9 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = "https://www.gnu.org/software/texinfo/";
     description = "The GNU documentation system";
+    homepage = "https://www.gnu.org/software/texinfo/";
+    changelog = "https://git.savannah.gnu.org/cgit/texinfo.git/plain/NEWS";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ vrthra oxij ];
diff --git a/pkgs/development/tools/ocaml/findlib/default.nix b/pkgs/development/tools/ocaml/findlib/default.nix
index f48ce5abf3f..bcadfbc660a 100644
--- a/pkgs/development/tools/ocaml/findlib/default.nix
+++ b/pkgs/development/tools/ocaml/findlib/default.nix
@@ -50,6 +50,7 @@ stdenv.mkDerivation rec {
       if [[ -n "$conflict" ]]; then
         echo "Conflicting ocaml packages detected";
         echo "$conflict"
+        echo "Set dontDetectOcamlConflicts to false to disable this check."
         exit 1
       fi
     }
diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix
index 0aeb5f2e963..11663d5d4c4 100644
--- a/pkgs/misc/drivers/sc-controller/default.nix
+++ b/pkgs/misc/drivers/sc-controller/default.nix
@@ -18,12 +18,9 @@ buildPythonApplication rec {
     sha256 = "sha256-ym5fkOTRhibBaUqT0+p/jyqqKOVsyMz5INgfkoz0IJA=";
   };
 
-  # see https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
+  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
 
-  nativeBuildInputs = [ wrapGAppsHook ];
-
-  buildInputs = [ gtk3 gobject-introspection libappindicator-gtk3 librsvg ];
+  buildInputs = [ gtk3 libappindicator-gtk3 librsvg ];
 
   propagatedBuildInputs = [ evdev pygobject3 pylibacl vdf ];
 
diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix
index 121933f69e9..64ddfae7b32 100644
--- a/pkgs/misc/solfege/default.nix
+++ b/pkgs/misc/solfege/default.nix
@@ -35,13 +35,11 @@ buildPythonApplication rec {
     texinfo
     txt2man
 
-    # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
     gobject-introspection
     wrapGAppsHook
   ];
 
   buildInputs = [
-    gobject-introspection
     gtk3
     librsvg
   ];
diff --git a/pkgs/os-specific/darwin/binutils/default.nix b/pkgs/os-specific/darwin/binutils/default.nix
index 3b1a2636873..79418a6474d 100644
--- a/pkgs/os-specific/darwin/binutils/default.nix
+++ b/pkgs/os-specific/darwin/binutils/default.nix
@@ -89,6 +89,7 @@ stdenv.mkDerivation {
 
   passthru = {
     inherit targetPrefix;
+    isCCTools = true;
   };
 
   meta = {
diff --git a/pkgs/os-specific/darwin/cctools/port.nix b/pkgs/os-specific/darwin/cctools/port.nix
index 3c48c3ebc0c..4d807997751 100644
--- a/pkgs/os-specific/darwin/cctools/port.nix
+++ b/pkgs/os-specific/darwin/cctools/port.nix
@@ -3,6 +3,7 @@
 , libuuid
 , libobjc ? null, maloader ? null
 , enableTapiSupport ? true, libtapi
+, fetchpatch
 }:
 
 let
@@ -42,6 +43,14 @@ stdenv.mkDerivation {
   patches = [
     ./ld-ignore-rpath-link.patch
     ./ld-rpath-nonfinal.patch
+    (fetchpatch {
+      url = "https://github.com/tpoechtrager/cctools-port/commit/4a734070cd2838e49658464003de5b92271d8b9e.patch";
+      hash = "sha256-72KaJyu7CHXxJJ1GNq/fz+kW1RslO3UaKI91LhBtiXA=";
+    })
+    (fetchpatch {
+      url = "https://github.com/MercuryTechnologies/cctools-port/commit/025899b7b3593dedb0c681e689e57c0e7bbd9b80.patch";
+      hash = "sha256-SWVUzFaJHH2fu9y8RcU3Nx/QKx60hPE5zFx0odYDeQs=";
+    })
   ]
     ++ lib.optional stdenv.isDarwin ./darwin-no-memstream.patch;
 
diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix
index 1ac2ccf842a..0e7988f4d99 100644
--- a/pkgs/os-specific/linux/cryptsetup/default.nix
+++ b/pkgs/os-specific/linux/cryptsetup/default.nix
@@ -10,14 +10,14 @@
 
 stdenv.mkDerivation rec {
   pname = "cryptsetup";
-  version = "2.5.0";
+  version = "2.6.1";
 
   outputs = [ "bin" "out" "dev" "man" ];
   separateDebugInfo = true;
 
   src = fetchurl {
-    url = "mirror://kernel/linux/utils/cryptsetup/v2.5/${pname}-${version}.tar.xz";
-    sha256 = "sha256-kYSm672c5+shEVLn90GmyC8tHMDiSoTsnFKTnu4PBUI=";
+    url = "mirror://kernel/linux/utils/cryptsetup/v${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    hash = "sha256-QQ3tZaEHKrnI5Brd7Te5cpwIf+9NLbArtO9SmtbaRpM=";
   };
 
   patches = [
@@ -74,6 +74,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://gitlab.com/cryptsetup/cryptsetup/";
     description = "LUKS for dm-crypt";
+    changelog = "https://gitlab.com/cryptsetup/cryptsetup/-/raw/v${version}/docs/v${version}-ReleaseNotes";
     license = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [ ];
     platforms = with lib.platforms; linux;
diff --git a/pkgs/os-specific/linux/ell/default.nix b/pkgs/os-specific/linux/ell/default.nix
index 6243076a211..0dd9fcb45bf 100644
--- a/pkgs/os-specific/linux/ell/default.nix
+++ b/pkgs/os-specific/linux/ell/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "ell";
-  version = "0.55";
+  version = "0.56";
 
   outputs = [ "out" "dev" ];
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/libs/ell/ell.git";
     rev = version;
-    sha256 = "sha256-vMWs+0iaszq+p55Z9AhqkNHWeOwlgt2iq7uuA8xGjJ4=";
+    sha256 = "sha256-aCQ7I4XgxswQRfzzZG3MYe+W3dPWWex5MErMc0ZilSA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/iwd/default.nix b/pkgs/os-specific/linux/iwd/default.nix
index 2d37d07dbe7..fa4b5847c63 100644
--- a/pkgs/os-specific/linux/iwd/default.nix
+++ b/pkgs/os-specific/linux/iwd/default.nix
@@ -12,12 +12,12 @@
 
 stdenv.mkDerivation rec {
   pname = "iwd";
-  version = "2.1";
+  version = "2.3";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/network/wireless/iwd.git";
     rev = version;
-    sha256 = "sha256-Aq038SG8vuxCA6mYOP5I6VWCUty5vgdbpAa9J+bIfZM=";
+    sha256 = "sha256-xI/zl7yYWZpoag7RZIL06aUNVgrHDOBEn93dbWBG48I=";
   };
 
   outputs = [ "out" "man" "doc" ]
diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix
index a64787cac1e..719b9a1216c 100644
--- a/pkgs/os-specific/linux/kernel-headers/default.nix
+++ b/pkgs/os-specific/linux/kernel-headers/default.nix
@@ -111,12 +111,12 @@ let
 in {
   inherit makeLinuxHeaders;
 
-  linuxHeaders = let version = "6.1"; in
+  linuxHeaders = let version = "6.2"; in
     makeLinuxHeaders {
       inherit version;
       src = fetchurl {
         url = "mirror://kernel/linux/kernel/v${lib.versions.major version}.x/linux-${version}.tar.xz";
-        sha256 = "sha256-LKHxcFGkMPb+0RluSVJxdQcXGs/ZfZZXchJQJwOyXes=";
+        hash = "sha256-dIYvqKtA7a6FuzOFwLcf4QMoi85RhSbWMZeACzy97LE=";
       };
       patches = [
          ./no-relocs.patch # for building x86 kernel headers on non-ELF platforms
diff --git a/pkgs/os-specific/linux/kernel/hardened/update.py b/pkgs/os-specific/linux/kernel/hardened/update.py
index e289a97c56f..5d6a2eba966 100755
--- a/pkgs/os-specific/linux/kernel/hardened/update.py
+++ b/pkgs/os-specific/linux/kernel/hardened/update.py
@@ -1,5 +1,5 @@
 #! /usr/bin/env nix-shell
-#! nix-shell -i python -p "python3.withPackages (ps: [ps.PyGithub])" git gnupg
+#! nix-shell -i python -p "python3.withPackages (ps: [ps.pygithub])" git gnupg
 
 # This is automatically called by ../update.sh.
 
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index 21e6790eb0b..b01805e83da 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -179,7 +179,6 @@ let
           exit 1
         fi
 
-        # Note: we can get rid of this once http://permalink.gmane.org/gmane.linux.kbuild.devel/13800 is merged.
         buildFlagsArray+=("KBUILD_BUILD_TIMESTAMP=$(date -u -d @$SOURCE_DATE_EPOCH)")
 
         cd $buildRoot
@@ -370,7 +369,6 @@ stdenv.mkDerivation ((drvAttrs config stdenv.hostPlatform.linux-kernel kernelPat
   nativeBuildInputs = [ perl bc nettools openssl rsync gmp libmpc mpfr zstd python3Minimal ]
       ++ optional  (stdenv.hostPlatform.linux-kernel.target == "uImage") buildPackages.ubootTools
       ++ optional  (lib.versionOlder version "5.8") libelf
-      # Removed util-linuxMinimal since it should not be a dependency.
       ++ optionals (lib.versionAtLeast version "4.16") [ bison flex ]
       ++ optionals (lib.versionAtLeast version "5.2")  [ cpio pahole zlib ]
       ++ optional  (lib.versionAtLeast version "5.8")  elfutils
diff --git a/pkgs/os-specific/linux/lvm2/2_02.nix b/pkgs/os-specific/linux/lvm2/2_02.nix
deleted file mode 100644
index 07d8de0b227..00000000000
--- a/pkgs/os-specific/linux/lvm2/2_02.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-import ./common.nix {
-  version = "2.02.188";
-  hash = "sha256-cQHosIFq135DkP7ZdJoJAhS6UgBhzQg0N4ceGeUMyb0=";
-}
diff --git a/pkgs/os-specific/linux/lvm2/2_03.nix b/pkgs/os-specific/linux/lvm2/2_03.nix
index 5a5193997be..0237a0555ab 100644
--- a/pkgs/os-specific/linux/lvm2/2_03.nix
+++ b/pkgs/os-specific/linux/lvm2/2_03.nix
@@ -1,4 +1,4 @@
 import ./common.nix {
-  version = "2.03.18";
-  hash = "sha256-n2g+KYDZXA3Ou9JcfBdwMsVhXXJnv8iF6r/OWSgPR2k=";
+  version = "2.03.19";
+  hash = "sha256-7J/58dmYzisF8a0i3c+UAdIC0CFYEdxGjXjLprCyaHk=";
 }
diff --git a/pkgs/os-specific/linux/lvm2/common.nix b/pkgs/os-specific/linux/lvm2/common.nix
index 0ea8a97bdb2..27a160033b1 100644
--- a/pkgs/os-specific/linux/lvm2/common.nix
+++ b/pkgs/os-specific/linux/lvm2/common.nix
@@ -1,7 +1,6 @@
 { version, hash }:
 
 { lib, stdenv
-, fetchpatch
 , fetchurl
 , pkg-config
 , coreutils
@@ -52,6 +51,7 @@ stdenv.mkDerivation rec {
     "--with-default-locking-dir=/run/lock/lvm"
     "--with-default-run-dir=/run/lvm"
     "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
+    "--with-systemd-run=/run/current-system/systemd/bin/systemd-run"
   ] ++ lib.optionals (!enableCmdlib) [
     "--bindir=${placeholder "bin"}/bin"
     "--sbindir=${placeholder "bin"}/bin"
@@ -68,28 +68,17 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals udevSupport [
     "--enable-udev_rules"
     "--enable-udev_sync"
+  ] ++ lib.optionals enableVDO [
+    "--enable-vdo"
   ] ++ lib.optionals stdenv.hostPlatform.isStatic [
     "--enable-static_link"
-  ] ++  lib.optionals enableVDO [
-    "--enable-vdo"
   ];
 
   preConfigure = ''
     sed -i /DEFAULT_SYS_DIR/d Makefile.in
     sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in
-  '' + lib.optionalString (lib.versionOlder version "2.03.15") ''
-    substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \
-      --replace /usr/bin/udevadm /run/current-system/systemd/bin/udevadm
-    # https://github.com/lvmteam/lvm2/issues/36
-  '' + lib.optionalString (lib.versionOlder version "2.03.14") ''
-    substituteInPlace udev/69-dm-lvm-metad.rules.in \
-      --replace "(BINDIR)/systemd-run" /run/current-system/systemd/bin/systemd-run
-  '' + lib.optionalString (lib.versionAtLeast version "2.03.14") ''
-    substituteInPlace udev/69-dm-lvm.rules.in \
-      --replace "/usr/bin/systemd-run" /run/current-system/systemd/bin/systemd-run
-  '' + ''
+
     substituteInPlace make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system"
-  '' + lib.optionalString (lib.versionAtLeast version "2.03") ''
     substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system"
 
     substituteInPlace scripts/blk_availability_systemd_red_hat.service.in \
@@ -100,9 +89,8 @@ stdenv.mkDerivation rec {
     sed -i 's|^#define LVM_CONFIGURE_LINE.*$|#define LVM_CONFIGURE_LINE "<removed>"|g' ./include/configure.h
   '';
 
-  patches = lib.optionals (lib.versionAtLeast version "2.03.15") [
+  patches = [
     # fixes paths to and checks for tools
-    # TODO: needs backport to LVM 2.02 used by static/musl
     (substituteAll (let
       optionalTool = cond: pkg: if cond then pkg else "/run/current-system/sw";
     in {
@@ -113,22 +101,16 @@ stdenv.mkDerivation rec {
       multipath_tools = optionalTool enableMultipath multipath-tools;
       vdo = optionalTool enableVDO vdo;
     }))
-  ] ++ lib.optionals (lib.versionOlder version "2.03.15") [
-    # Musl fixes from Alpine.
+    # Musl fix from Alpine
     ./fix-stdio-usage.patch
-    (fetchpatch {
-      name = "mallinfo.patch";
-      url = "https://git.alpinelinux.org/aports/plain/main/lvm2/mallinfo.patch?h=3.7-stable&id=31bd4a8c2dc00ae79a821f6fe0ad2f23e1534f50";
-      sha256 = "0g6wlqi215i5s30bnbkn8w7axrs27y3bnygbpbnf64wwx7rxxlj0";
-    })
   ] ++ lib.optionals stdenv.hostPlatform.isStatic [
-    ./no-shared.diff
+    ./no-shared.patch
   ];
 
   doCheck = false; # requires root
 
   makeFlags = lib.optionals udevSupport [
-    "SYSTEMD_GENERATOR_DIR=$(out)/lib/systemd/system-generators"
+    "SYSTEMD_GENERATOR_DIR=${placeholder "out"}/lib/systemd/system-generators"
   ] ++ lib.optionals onlyLib [
     "libdm.device-mapper"
   ];
@@ -164,7 +146,10 @@ stdenv.mkDerivation rec {
     moveToOutput lib/libdevmapper.so $lib
   '';
 
-  passthru.tests.installer = nixosTests.installer.lvm;
+  passthru.tests = {
+    installer = nixosTests.installer.lvm;
+    lvm2 = nixosTests.lvm2;
+  };
 
   meta = with lib; {
     homepage = "http://sourceware.org/lvm2/";
diff --git a/pkgs/os-specific/linux/lvm2/fix-stdio-usage.patch b/pkgs/os-specific/linux/lvm2/fix-stdio-usage.patch
index 59666ffbad5..98cdc6eb3ec 100644
--- a/pkgs/os-specific/linux/lvm2/fix-stdio-usage.patch
+++ b/pkgs/os-specific/linux/lvm2/fix-stdio-usage.patch
@@ -1,8 +1,18 @@
+From 63b1c7332bee6080bffecf9ce9d75ff15d799166 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 16 Nov 2022 10:42:39 +0100
+Subject: [PATCH] fix stdio usage
+
+---
+ lib/commands/toolcontext.c | 4 ++--
+ tools/lvmcmdline.c         | 6 +++---
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
 diff --git a/lib/commands/toolcontext.c b/lib/commands/toolcontext.c
-index 296618686..96343eeb7 100644
+index b630554a9..f20080d18 100644
 --- a/lib/commands/toolcontext.c
 +++ b/lib/commands/toolcontext.c
-@@ -1619,7 +1619,7 @@ struct cmd_context *create_toolcontext(unsigned is_clvmd,
+@@ -1667,7 +1667,7 @@ struct cmd_context *create_toolcontext(unsigned is_clvmd,
  	/* FIXME Make this configurable? */
  	reset_lvm_errno(1);
  
@@ -11,20 +21,20 @@ index 296618686..96343eeb7 100644
  	/* Set in/out stream buffering before glibc */
  	if (set_buffering
  #ifdef SYS_gettid
-@@ -2006,7 +2006,7 @@ void destroy_toolcontext(struct cmd_context *cmd)
+@@ -2045,7 +2045,7 @@ void destroy_toolcontext(struct cmd_context *cmd)
+ 		dm_hash_destroy(cmd->cft_def_hash);
  
- 	if (cmd->pending_delete_mem)
- 		dm_pool_destroy(cmd->pending_delete_mem);
+ 	dm_device_list_destroy(&cmd->cache_dm_devs);
 -#ifndef VALGRIND_POOL
 +#if !defined(VALGRIND_POOL) && defined(__GLIBC__)
  	if (cmd->linebuffer) {
  		/* Reset stream buffering to defaults */
  		if (is_valid_fd(STDIN_FILENO) &&
 diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
-index d97ff5720..bbbda82bd 100644
+index a5bb6a5c5..0ebfa375c 100644
 --- a/tools/lvmcmdline.c
 +++ b/tools/lvmcmdline.c
-@@ -3342,7 +3342,7 @@ static int _check_standard_fds(void)
+@@ -3422,7 +3422,7 @@ static int _check_standard_fds(void)
  	int err = is_valid_fd(STDERR_FILENO);
  
  	if (!is_valid_fd(STDIN_FILENO) &&
@@ -33,7 +43,7 @@ index d97ff5720..bbbda82bd 100644
  		if (err)
  			perror("stdin stream open");
  		else
-@@ -3352,7 +3352,7 @@ static int _check_standard_fds(void)
+@@ -3432,7 +3432,7 @@ static int _check_standard_fds(void)
  	}
  
  	if (!is_valid_fd(STDOUT_FILENO) &&
@@ -42,7 +52,7 @@ index d97ff5720..bbbda82bd 100644
  		if (err)
  			perror("stdout stream open");
  		/* else no stdout */
-@@ -3360,7 +3360,7 @@ static int _check_standard_fds(void)
+@@ -3440,7 +3440,7 @@ static int _check_standard_fds(void)
  	}
  
  	if (!is_valid_fd(STDERR_FILENO) &&
@@ -51,3 +61,6 @@ index d97ff5720..bbbda82bd 100644
  		printf("stderr stream open: %s\n",
  		       strerror(errno));
  		return 0;
+-- 
+2.38.1
+
diff --git a/pkgs/os-specific/linux/lvm2/no-shared.diff b/pkgs/os-specific/linux/lvm2/no-shared.diff
deleted file mode 100644
index d40dd85dfc6..00000000000
--- a/pkgs/os-specific/linux/lvm2/no-shared.diff
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/libdm/Makefile.in b/libdm/Makefile.in
-index 66ec39513..ab7123dae 100644
---- a/libdm/Makefile.in
-+++ b/libdm/Makefile.in
-@@ -44,7 +44,6 @@ endif
- 
- LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX)
- LIB_VERSION = $(LIB_VERSION_DM)
--TARGETS = libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION)
- 
- CFLOW_LIST = $(SOURCES)
- CFLOW_LIST_TARGET = libdevmapper.cflow
-diff --git a/make.tmpl.in b/make.tmpl.in
-index e7780e8d4..ca4aa9fdd 100644
---- a/make.tmpl.in
-+++ b/make.tmpl.in
-@@ -346,7 +346,7 @@ SUBDIRS.cflow := $(SUBDIRS:=.cflow)
- SUBDIRS.clean := $(SUBDIRS:=.clean)
- SUBDIRS.distclean := $(SUBDIRS:=.distclean)
- 
--TARGETS += $(LIB_SHARED) $(LIB_STATIC)
-+TARGETS += $(LIB_STATIC)
- 
- all: $(SUBDIRS) $(TARGETS)
- 
diff --git a/pkgs/os-specific/linux/lvm2/no-shared.patch b/pkgs/os-specific/linux/lvm2/no-shared.patch
new file mode 100644
index 00000000000..23a82a0fa29
--- /dev/null
+++ b/pkgs/os-specific/linux/lvm2/no-shared.patch
@@ -0,0 +1,46 @@
+diff --git a/libdm/Makefile.in b/libdm/Makefile.in
+index 2758648e6..f305a12b0 100644
+--- a/libdm/Makefile.in
++++ b/libdm/Makefile.in
+@@ -47,7 +47,6 @@ endif
+ 
+ LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX)
+ LIB_VERSION = $(LIB_VERSION_DM)
+-TARGETS = libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION) .symver_check
+ 
+ CFLOW_LIST = $(SOURCES)
+ CFLOW_LIST_TARGET = libdevmapper.cflow
+diff --git a/libdm/make.tmpl.in b/libdm/make.tmpl.in
+index a731687c2..9366cdf1c 100644
+--- a/libdm/make.tmpl.in
++++ b/libdm/make.tmpl.in
+@@ -314,7 +314,7 @@ SUBDIRS.cflow := $(SUBDIRS:=.cflow)
+ SUBDIRS.clean := $(SUBDIRS:=.clean)
+ SUBDIRS.distclean := $(SUBDIRS:=.distclean)
+ 
+-TARGETS += $(LIB_SHARED) $(LIB_STATIC)
++TARGETS += $(LIB_STATIC)
+ 
+ all: $(SUBDIRS) $(TARGETS)
+ 
+@@ -431,7 +431,6 @@ DEFS+=-D_FILE_OFFSET_BITS=64
+ 
+ ifneq (,$(LIB_SHARED))
+ 
+-TARGETS += $(LIB_SHARED).$(LIB_VERSION)
+ $(LIB_SHARED).$(LIB_VERSION): $(OBJECTS) $(LDDEPS)
+ 	@echo "    [CC] $@"
+ ifeq ("@LIB_SUFFIX@","so")
+diff --git a/make.tmpl.in b/make.tmpl.in
+index b73176f5a..6100d0dfd 100644
+--- a/make.tmpl.in
++++ b/make.tmpl.in
+@@ -368,7 +368,7 @@ SUBDIRS.cflow := $(SUBDIRS:=.cflow)
+ SUBDIRS.clean := $(SUBDIRS:=.clean)
+ SUBDIRS.distclean := $(SUBDIRS:=.distclean)
+ 
+-TARGETS += $(LIB_SHARED) $(LIB_STATIC)
++TARGETS += $(LIB_STATIC)
+ 
+ INTERNAL_LIBS = \
+ 	$(top_builddir)/libdaemon/client/libdaemonclient.a \
diff --git a/pkgs/os-specific/linux/piper/default.nix b/pkgs/os-specific/linux/piper/default.nix
index 293425897e9..39b0eaf5325 100644
--- a/pkgs/os-specific/linux/piper/default.nix
+++ b/pkgs/os-specific/linux/piper/default.nix
@@ -19,9 +19,7 @@ python3.pkgs.buildPythonApplication rec {
   buildInputs = [
     gtk3 glib gnome.adwaita-icon-theme python3 librsvg
   ];
-  propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ] ++ [
-    gobject-introspection # fixes https://github.com/NixOS/nixpkgs/issues/56943 for now
-  ];
+  propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ];
 
   mesonFlags = [
     "-Druntime-dependency-checks=false"
diff --git a/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch b/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch
index 431e79a55d5..1e602fdee6b 100644
--- a/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch
+++ b/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch
@@ -4,19 +4,30 @@ Date: Thu, 1 May 2014 14:10:10 +0200
 Subject: [PATCH] Look for fsck in the right place
 
 ---
- src/fsck/fsck.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ src/fsck/fsck.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
 
 diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c
-index 595434ab57..374a4e6c76 100644
+index 73c76fceea..d00cea7158 100644
 --- a/src/fsck/fsck.c
 +++ b/src/fsck/fsck.c
-@@ -373,7 +373,7 @@ static int run(int argc, char *argv[]) {
+@@ -352,6 +352,7 @@ static int run(int argc, char *argv[]) {
+         if (r == 0) {
+                 char dash_c[STRLEN("-C") + DECIMAL_STR_MAX(int) + 1];
+                 int progress_socket = -1;
++                _cleanup_free_ char *fsck_name = NULL;
+                 const char *cmdline[9];
+                 int i = 0;
+ 
+@@ -372,7 +373,10 @@ static int run(int argc, char *argv[]) {
                  } else
                          dash_c[0] = 0;
  
 -                cmdline[i++] = "/sbin/fsck";
-+                cmdline[i++] = "/run/current-system/sw/bin/fsck";
++                r = find_executable("fsck", &fsck_name);
++                if (r < 0)
++                        return r;
++                cmdline[i++] = fsck_name;
                  cmdline[i++] =  arg_repair;
                  cmdline[i++] = "-T";
  
diff --git a/pkgs/servers/calibre-web/default.nix b/pkgs/servers/calibre-web/default.nix
index 0fd0ecd6379..66eb2930ff5 100644
--- a/pkgs/servers/calibre-web/default.nix
+++ b/pkgs/servers/calibre-web/default.nix
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   propagatedBuildInputs = with python3.pkgs; [
-    APScheduler
+    apscheduler
     advocate
     chardet
     flask-babel
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index dafb5b4976d..cdacf122a0f 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -331,7 +331,7 @@
       blinkpy
     ];
     "blinksticklight" = ps: with ps; [
-      BlinkStick
+      blinkstick
     ];
     "bliss_automation" = ps: with ps; [
     ];
@@ -534,7 +534,7 @@
       plexapi
       plexauth
       plexwebsocket
-      PyChromecast
+      pychromecast
       sqlalchemy
       zeroconf
     ];
@@ -2436,7 +2436,7 @@
       mutesync
     ];
     "mvglive" = ps: with ps; [
-      PyMVGLive
+      pymvglive
     ];
     "my" = ps: with ps; [
       aiohttp-cors
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index b5e42fca6ae..f3be5821680 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -179,7 +179,7 @@ let
           hash = "sha256-EViSjr/nnuJIDTwV8j/O50hJkWV3M5aTNnWyzrinoyg=";
         };
         propagatedBuildInputs = [
-          self.APScheduler
+          self.apscheduler
           self.cachetools
           self.certifi
           self.cryptography
diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix
index 734823e9f47..6c776115ec5 100644
--- a/pkgs/servers/home-assistant/tests.nix
+++ b/pkgs/servers/home-assistant/tests.nix
@@ -18,7 +18,7 @@ let
     hassio = [ bellows zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp ];
     homeassistant_sky_connect = [ bellows zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zwave-js-server-python ];
     homeassistant_yellow = [ bellows zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp ];
-    lovelace = [ PyChromecast ];
+    lovelace = [ pychromecast ];
     nest = [ av ];
     onboarding = [ pymetno radios rpi-bad-power ];
     raspberry_pi = [ rpi-bad-power ];
diff --git a/pkgs/servers/mautrix-facebook/default.nix b/pkgs/servers/mautrix-facebook/default.nix
index 017501ded00..1da6346c1e0 100644
--- a/pkgs/servers/mautrix-facebook/default.nix
+++ b/pkgs/servers/mautrix-facebook/default.nix
@@ -18,9 +18,9 @@ python3.pkgs.buildPythonPackage rec {
   };
 
   propagatedBuildInputs = with python3.pkgs; [
-    CommonMark
     aiohttp
     asyncpg
+    commonmark
     mautrix
     paho-mqtt
     pillow
diff --git a/pkgs/servers/mautrix-googlechat/default.nix b/pkgs/servers/mautrix-googlechat/default.nix
index 74389663455..be82fa1eaab 100644
--- a/pkgs/servers/mautrix-googlechat/default.nix
+++ b/pkgs/servers/mautrix-googlechat/default.nix
@@ -48,10 +48,10 @@
 
   propagatedBuildInputs = with python3.pkgs; [
     aiohttp
+    commonmark
     yarl
     asyncpg
     ruamel-yaml
-    CommonMark
     python-magic
     protobuf3
     mautrix
diff --git a/pkgs/servers/mautrix-signal/default.nix b/pkgs/servers/mautrix-signal/default.nix
index 8ff6f1d3669..ee9ff4031a1 100644
--- a/pkgs/servers/mautrix-signal/default.nix
+++ b/pkgs/servers/mautrix-signal/default.nix
@@ -26,10 +26,10 @@ python3.pkgs.buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = with python3.pkgs; [
-    CommonMark
     aiohttp
     asyncpg
     attrs
+    commonmark
     mautrix
     phonenumbers
     pillow
diff --git a/pkgs/servers/mautrix-telegram/default.nix b/pkgs/servers/mautrix-telegram/default.nix
index 79864978af4..177d2fac310 100644
--- a/pkgs/servers/mautrix-telegram/default.nix
+++ b/pkgs/servers/mautrix-telegram/default.nix
@@ -38,13 +38,13 @@ python.pkgs.buildPythonPackage {
   propagatedBuildInputs = with python.pkgs; ([
     ruamel-yaml
     python-magic
-    CommonMark
+    commonmark
     aiohttp
     yarl
     mautrix
     tulir-telethon
     asyncpg
-    Mako
+    mako
     # speedups
     cryptg
     aiodns
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 41bc0609c91..262134612b9 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -1356,11 +1356,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libXxf86vm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto }: stdenv.mkDerivation {
     pname = "libXxf86vm";
-    version = "1.1.4";
+    version = "1.1.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libXxf86vm-1.1.4.tar.bz2";
-      sha256 = "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg";
+      url = "mirror://xorg/individual/lib/libXxf86vm-1.1.5.tar.xz";
+      sha256 = "1rw8z01vgfc4wvf0q75sgnj6n04dkrw1w7z455qydrz0nd4fyzr4";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3052,11 +3052,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xkbcomp = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, xorgproto }: stdenv.mkDerivation {
     pname = "xkbcomp";
-    version = "1.4.5";
+    version = "1.4.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xkbcomp-1.4.5.tar.bz2";
-      sha256 = "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8";
+      url = "mirror://xorg/individual/app/xkbcomp-1.4.6.tar.xz";
+      sha256 = "164fqnpq80vbl7693x82h38kvxcdf668vggpg9439q21xw8xcl7s";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list
index f5d004fd0f6..58865efd056 100644
--- a/pkgs/servers/x11/xorg/tarballs.list
+++ b/pkgs/servers/x11/xorg/tarballs.list
@@ -46,7 +46,7 @@ mirror://xorg/individual/app/xgc-1.0.5.tar.bz2
 mirror://xorg/individual/app/xhost-1.0.9.tar.xz
 mirror://xorg/individual/app/xinit-1.4.1.tar.bz2
 mirror://xorg/individual/app/xinput-1.6.3.tar.bz2
-mirror://xorg/individual/app/xkbcomp-1.4.5.tar.bz2
+mirror://xorg/individual/app/xkbcomp-1.4.6.tar.xz
 mirror://xorg/individual/app/xkbevd-1.1.4.tar.bz2
 mirror://xorg/individual/app/xkbprint-1.0.4.tar.bz2
 mirror://xorg/individual/app/xkbutils-1.0.4.tar.bz2
@@ -207,7 +207,7 @@ mirror://xorg/individual/lib/libXv-1.0.11.tar.bz2
 mirror://xorg/individual/lib/libXvMC-1.0.12.tar.bz2
 mirror://xorg/individual/lib/libXxf86dga-1.1.5.tar.bz2
 mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2
-mirror://xorg/individual/lib/libXxf86vm-1.1.4.tar.bz2
+mirror://xorg/individual/lib/libXxf86vm-1.1.5.tar.xz
 mirror://xorg/individual/lib/xtrans-1.4.0.tar.bz2
 mirror://xorg/individual/proto/xcb-proto-1.14.1.tar.xz
 mirror://xorg/individual/proto/xorgproto-2021.5.tar.bz2
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index 8ff64ff9a3a..43fa87d14d8 100644
--- a/pkgs/stdenv/adapters.nix
+++ b/pkgs/stdenv/adapters.nix
@@ -189,6 +189,28 @@ rec {
       });
     });
 
+  useMoldLinker = stdenv: let
+    bintools = stdenv.cc.bintools.override {
+      extraBuildCommands = ''
+        wrap ld.mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${pkgs.mold}/bin/ld.mold
+        wrap ld ${../build-support/bintools-wrapper/ld-wrapper.sh} ${pkgs.mold}/bin/ld.mold
+      '';
+    };
+  in stdenv.override (old: {
+    cc = stdenv.cc.override {
+      inherit bintools;
+    };
+    allowedRequisites =
+      lib.mapNullable (rs: rs ++ [ bintools pkgs.mold (lib.getLib pkgs.mimalloc) (lib.getLib pkgs.openssl) ]) (stdenv.allowedRequisites or null);
+      # gcc >12.1.0 supports '-fuse-ld=mold'
+      # the wrap ld above in bintools supports gcc <12.1.0 and shouldn't harm >12.1.0
+    # https://github.com/rui314/mold#how-to-use
+    } // lib.optionalAttrs (stdenv.cc.isClang || (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12")) {
+    mkDerivationFromStdenv = extendMkDerivationArgs old (args: {
+      NIX_CFLAGS_LINK = toString (args.NIX_CFLAGS_LINK or "") + " -fuse-ld=mold";
+    });
+  });
+
 
   /* Modify a stdenv so that it builds binaries optimized specifically
      for the machine they are built on.
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 6bf319d0730..d9672f62e3d 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -186,21 +186,29 @@ let
                                   ++ buildInputs ++ propagatedBuildInputs
                                   ++ depsTargetTarget ++ depsTargetTargetPropagated) == 0;
   dontAddHostSuffix = attrs ? outputHash && !noNonNativeDeps || !stdenv.hasCC;
-  supportedHardeningFlags = [ "fortify" "stackprotector" "pie" "pic" "strictoverflow" "format" "relro" "bindnow" ];
+
+  hardeningDisable' = if lib.any (x: x == "fortify") hardeningDisable
+    # disabling fortify implies fortify3 should also be disabled
+    then lib.unique (hardeningDisable ++ [ "fortify3" ])
+    else hardeningDisable;
+  supportedHardeningFlags = [ "fortify" "fortify3" "stackprotector" "pie" "pic" "strictoverflow" "format" "relro" "bindnow" ];
   # Musl-based platforms will keep "pie", other platforms will not.
   # If you change this, make sure to update section `{#sec-hardening-in-nixpkgs}`
   # in the nixpkgs manual to inform users about the defaults.
-  defaultHardeningFlags = if stdenv.hostPlatform.isMusl &&
-                            # Except when:
-                            #    - static aarch64, where compilation works, but produces segfaulting dynamically linked binaries.
-                            #    - static armv7l, where compilation fails.
-                            !(stdenv.hostPlatform.isAarch && stdenv.hostPlatform.isStatic)
-                          then supportedHardeningFlags
-                          else lib.remove "pie" supportedHardeningFlags;
+  defaultHardeningFlags = let
+    # not ready for this by default
+    supportedHardeningFlags' = lib.remove "fortify3" supportedHardeningFlags;
+  in if stdenv.hostPlatform.isMusl &&
+      # Except when:
+      #    - static aarch64, where compilation works, but produces segfaulting dynamically linked binaries.
+      #    - static armv7l, where compilation fails.
+      !(stdenv.hostPlatform.isAarch && stdenv.hostPlatform.isStatic)
+    then supportedHardeningFlags'
+    else lib.remove "pie" supportedHardeningFlags';
   enabledHardeningOptions =
-    if builtins.elem "all" hardeningDisable
+    if builtins.elem "all" hardeningDisable'
     then []
-    else lib.subtractLists hardeningDisable (defaultHardeningFlags ++ hardeningEnable);
+    else lib.subtractLists hardeningDisable' (defaultHardeningFlags ++ hardeningEnable);
   # hardeningDisable additionally supports "all".
   erroneousHardeningFlags = lib.subtractLists supportedHardeningFlags (hardeningEnable ++ lib.remove "all" hardeningDisable);
 
diff --git a/pkgs/stdenv/linux/bootstrap-tools-musl/default.nix b/pkgs/stdenv/linux/bootstrap-tools-musl/default.nix
index d690f402672..569f0c6f31e 100644
--- a/pkgs/stdenv/linux/bootstrap-tools-musl/default.nix
+++ b/pkgs/stdenv/linux/bootstrap-tools-musl/default.nix
@@ -15,4 +15,5 @@ derivation ({
   langC = true;
   langCC = true;
   isGNU = true;
+  hardeningUnsupportedFlags = [ "fortify3" ];
 } // extraAttrs)
diff --git a/pkgs/stdenv/linux/bootstrap-tools/default.nix b/pkgs/stdenv/linux/bootstrap-tools/default.nix
index d690f402672..569f0c6f31e 100644
--- a/pkgs/stdenv/linux/bootstrap-tools/default.nix
+++ b/pkgs/stdenv/linux/bootstrap-tools/default.nix
@@ -15,4 +15,5 @@ derivation ({
   langC = true;
   langCC = true;
   isGNU = true;
+  hardeningUnsupportedFlags = [ "fortify3" ];
 } // extraAttrs)
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index 87819073828..18a593b058d 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -100,6 +100,14 @@ assert crossSystem == localSystem;
 let
   inherit (localSystem) system;
 
+  isFromNixpkgs = pkg: !(isFromBootstrapFiles pkg);
+  isFromBootstrapFiles =
+    pkg: pkg.passthru.isFromBootstrapFiles or false;
+  isBuiltByNixpkgsCompiler =
+    pkg: isFromNixpkgs pkg && isFromNixpkgs pkg.stdenv.cc.cc;
+  isBuiltByBootstrapFilesCompiler =
+    pkg: isFromNixpkgs pkg && isFromBootstrapFiles pkg.stdenv.cc.cc;
+
   commonPreHook =
     ''
       export NIX_ENFORCE_PURITY="''${NIX_ENFORCE_PURITY-1}"
@@ -117,16 +125,14 @@ let
 
 
   # Download and unpack the bootstrap tools (coreutils, GCC, Glibc, ...).
-  bootstrapTools = import (if localSystem.libc == "musl" then ./bootstrap-tools-musl else ./bootstrap-tools) {
+  bootstrapTools = (import (if localSystem.libc == "musl" then ./bootstrap-tools-musl else ./bootstrap-tools) {
     inherit system bootstrapFiles;
-    extraAttrs = lib.optionalAttrs
-      config.contentAddressedByDefault
-      {
-        __contentAddressed = true;
-        outputHashAlgo = "sha256";
-        outputHashMode = "recursive";
-      };
-  };
+    extraAttrs = lib.optionalAttrs config.contentAddressedByDefault {
+      __contentAddressed = true;
+      outputHashAlgo = "sha256";
+      outputHashMode = "recursive";
+    };
+  }) // { passthru.isFromBootstrapFiles = true; };
 
   getLibc = stage: stage.${localSystem.libc};
 
@@ -186,7 +192,7 @@ let
     };
 
 in
-
+  assert bootstrapTools.passthru.isFromBootstrapFiles or false;  # sanity check
 [
 
   ({}: {
@@ -200,9 +206,6 @@ in
 
   # Build a dummy stdenv with no GCC or working fetchurl.  This is
   # because we need a stdenv to build the GCC wrapper and fetchurl.
-  #
-  # resulting stage0 stdenv:
-  # - coreutils, binutils, glibc, gcc: from bootstrapFiles
   (prevStage: stageFun prevStage {
     name = "bootstrap-stage0";
 
@@ -230,6 +233,7 @@ in
         '' + lib.optionalString (localSystem.libc == "musl") ''
           ln -s ${bootstrapTools}/include-libc $out/include
         '';
+        passthru.isFromBootstrapFiles = true;
       };
       gcc-unwrapped = bootstrapTools;
       binutils = import ../../build-support/bintools-wrapper {
@@ -258,10 +262,14 @@ in
   # If we ever need to use a package from more than one stage back, we
   # simply re-export those packages in the middle stage(s) using the
   # overrides attribute and the inherit syntax.
-  #
-  # resulting stage1 stdenv:
-  # - coreutils, binutils, glibc, gcc: from bootstrapFiles
-  (prevStage: stageFun prevStage {
+  (prevStage:
+    # previous stage0 stdenv:
+    assert isFromBootstrapFiles prevStage.binutils.bintools;
+    assert isFromBootstrapFiles prevStage."${localSystem.libc}";
+    assert isFromBootstrapFiles prevStage.gcc-unwrapped;
+    assert isFromBootstrapFiles prevStage.coreutils;
+    assert isFromBootstrapFiles prevStage.gnugrep;
+    stageFun prevStage {
     name = "bootstrap-stage1";
 
     # Rebuild binutils to use from stage2 onwards.
@@ -288,10 +296,14 @@ in
   # 2nd stdenv that contains our own rebuilt binutils and is used for
   # compiling our own Glibc.
   #
-  # resulting stage2 stdenv:
-  # - coreutils, glibc, gcc: from bootstrapFiles
-  # - binutils: from nixpkgs, built by bootstrapFiles toolchain
-  (prevStage: stageFun prevStage {
+  (prevStage:
+    # previous stage1 stdenv:
+    assert isBuiltByBootstrapFilesCompiler prevStage.binutils-unwrapped;
+    assert            isFromBootstrapFiles prevStage."${localSystem.libc}";
+    assert            isFromBootstrapFiles prevStage.gcc-unwrapped;
+    assert            isFromBootstrapFiles prevStage.coreutils;
+    assert            isFromBootstrapFiles prevStage.gnugrep;
+    stageFun prevStage {
     name = "bootstrap-stage2";
 
     overrides = self: super: {
@@ -334,6 +346,7 @@ in
         bintools = self.stdenvNoCC.mkDerivation {
           pname = prevStage.bintools.bintools.pname + "-patchelfed-ld";
           inherit (prevStage.bintools.bintools) version;
+          passthru = { inherit (prevStage.bintools.passthru) isFromBootstrapFiles; };
           enableParallelBuilding = true;
           dontUnpack = true;
           dontBuild = true;
@@ -360,11 +373,14 @@ in
   # Construct a third stdenv identical to the 2nd, except that this
   # one uses the rebuilt Glibc from stage2.  It still uses the recent
   # binutils and rest of the bootstrap tools, including GCC.
-  #
-  # resulting stage3 stdenv:
-  # - coreutils, gcc: from bootstrapFiles
-  # - glibc, binutils: from nixpkgs, built by bootstrapFiles toolchain
-  (prevStage: stageFun prevStage {
+  (prevStage:
+    # previous stage2 stdenv:
+    assert isBuiltByBootstrapFilesCompiler prevStage.binutils-unwrapped;
+    assert isBuiltByBootstrapFilesCompiler prevStage.${localSystem.libc};
+    assert            isFromBootstrapFiles prevStage.gcc-unwrapped;
+    assert            isFromBootstrapFiles prevStage.coreutils;
+    assert            isFromBootstrapFiles prevStage.gnugrep;
+    stageFun prevStage {
     name = "bootstrap-stage3";
 
     overrides = self: super: rec {
@@ -401,17 +417,21 @@ in
   # Construct a fourth stdenv that uses the new GCC.  But coreutils is
   # still from the bootstrap tools.
   #
-  # resulting stage4 stdenv:
-  # - coreutils: from bootstrapFiles
-  # - glibc, binutils: from nixpkgs, built by bootstrapFiles toolchain
-  # - gcc: from nixpkgs, built by bootstrapFiles toolchain. Can assume
-  #        it has almost no code from bootstrapTools as gcc bootstraps
-  #        internally. The only exceptions are crt files from glibc
-  #        built by bootstrapTools used to link executables and libraries,
-  #        and the bootstrapTools-built, statically-linked
-  #        lib{mpfr,mpc,gmp,isl}.a which are linked into the final gcc
-  #        (see commit cfde88976ba4cddd01b1bb28b40afd12ea93a11d).
-  (prevStage: stageFun prevStage {
+  (prevStage:
+    # previous stage3 stdenv:
+    assert isBuiltByBootstrapFilesCompiler prevStage.binutils-unwrapped;
+    assert isBuiltByBootstrapFilesCompiler prevStage.${localSystem.libc};
+    assert isBuiltByBootstrapFilesCompiler prevStage.gcc-unwrapped;
+    assert            isFromBootstrapFiles prevStage.coreutils;
+    assert            isFromBootstrapFiles prevStage.gnugrep;
+    # Can assume prevStage.gcc-unwrapped has almost no code from
+    # bootstrapTools as gcc bootstraps internally. The only
+    # exceptions are crt files from glibc built bybootstrapTools
+    # used to link executables and libraries, and the
+    # bootstrapTools-built, statically-linked
+    # lib{mpfr,mpc,gmp,isl}.a which are linked into the final gcc
+    # (see commit cfde88976ba4cddd01b1bb28b40afd12ea93a11d).
+    stageFun prevStage {
     name = "bootstrap-stage4";
 
     overrides = self: super: {
@@ -468,17 +488,15 @@ in
   # dependency (`nix-store -qR') on bootstrapTools or the first
   # binutils built.
   #
-  # resulting stage5 (final) stdenv:
-  # - coreutils, binutils: from nixpkgs, built by nixpkgs toolchain
-  # - glibc: from nixpkgs, built by bootstrapFiles toolchain
-  # - gcc: from nixpkgs, built by bootstrapFiles toolchain. Can assume
-  #        it has almost no code from bootstrapTools as gcc bootstraps
-  #        internally. The only exceptions are crt files from glibc
-  #        built by bootstrapTools used to link executables and libraries,
-  #        and the bootstrapTools-built, statically-linked
-  #        lib{mpfr,mpc,gmp,isl}.a which are linked into the final gcc
-  #        (see commit cfde88976ba4cddd01b1bb28b40afd12ea93a11d).
-  (prevStage: {
+  (prevStage:
+    # previous stage4 stdenv; see stage3 comment regarding gcc,
+    # which applies here as well.
+    assert        isBuiltByNixpkgsCompiler prevStage.binutils-unwrapped;
+    assert isBuiltByBootstrapFilesCompiler prevStage.${localSystem.libc};
+    assert isBuiltByBootstrapFilesCompiler prevStage.gcc-unwrapped;
+    assert        isBuiltByNixpkgsCompiler prevStage.coreutils;
+    assert        isBuiltByNixpkgsCompiler prevStage.gnugrep;
+    {
     inherit config overlays;
     stdenv = import ../generic rec {
       name = "stdenv-linux";
@@ -554,4 +572,14 @@ in
     };
   })
 
+  # This "no-op" stage is just a place to put the assertions about stage5.
+  (prevStage:
+    # previous stage5 stdenv; see stage3 comment regarding gcc,
+    # which applies here as well.
+    assert        isBuiltByNixpkgsCompiler prevStage.binutils-unwrapped;
+    assert isBuiltByBootstrapFilesCompiler prevStage.${localSystem.libc};
+    assert isBuiltByBootstrapFilesCompiler prevStage.gcc-unwrapped;
+    assert        isBuiltByNixpkgsCompiler prevStage.coreutils;
+    assert        isBuiltByNixpkgsCompiler prevStage.gnugrep;
+    { inherit (prevStage) config overlays stdenv; })
 ]
diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix
index 71d065179d1..5d154d1630b 100644
--- a/pkgs/test/default.nix
+++ b/pkgs/test/default.nix
@@ -63,8 +63,6 @@ with pkgs;
 
   overriding = callPackage ./overriding.nix { };
 
-  patch-shebangs = callPackage ./patch-shebangs {};
-
   texlive = callPackage ./texlive {};
 
   cuda = callPackage ./cuda { };
diff --git a/pkgs/test/patch-shebangs/default.nix b/pkgs/test/patch-shebangs/default.nix
deleted file mode 100644
index 5c49787eee3..00000000000
--- a/pkgs/test/patch-shebangs/default.nix
+++ /dev/null
@@ -1,70 +0,0 @@
-{ lib, stdenv, runCommand }:
-
-let
-  tests = {
-    bad-shebang = stdenv.mkDerivation {
-      name         = "bad-shebang";
-      dontUnpack = true;
-      installPhase = ''
-        mkdir -p $out/bin
-        echo "#!/bin/sh" > $out/bin/test
-        echo "echo -n hello" >> $out/bin/test
-        chmod +x $out/bin/test
-      '';
-      passthru = {
-        assertion = "grep -v '^#!/bin/sh' $out/bin/test > /dev/null";
-      };
-    };
-
-    ignores-nix-store = stdenv.mkDerivation {
-      name = "ignores-nix-store";
-      dontUnpack = true;
-      installPhase = ''
-        mkdir -p $out/bin
-        echo "#!$NIX_STORE/path/to/sh" > $out/bin/test
-        echo "echo -n hello" >> $out/bin/test
-        chmod +x $out/bin/test
-      '';
-      passthru = {
-        assertion = "grep \"^#!$NIX_STORE/path/to/sh\" $out/bin/test > /dev/null";
-      };
-    };
-  };
-in runCommand "patch-shebangs-test" {
-  passthru = { inherit (tests) bad-shebang ignores-nix-store; };
-  meta.platforms = lib.platforms.all;
-} ''
-  validate() {
-    local name=$1
-    local testout=$2
-    local assertion=$3
-
-    echo -n "... $name: " >&2
-
-    local rc=0
-    (out=$testout eval "$assertion") || rc=1
-
-    if [ "$rc" -eq 0 ]; then
-      echo "yes" >&2
-    else
-      echo "no" >&2
-    fi
-
-    return "$rc"
-  }
-
-  echo "checking whether patchShebangs works properly... ">&2
-
-  fail=
-  ${lib.concatStringsSep "\n" (lib.mapAttrsToList (_: test: ''
-    validate "${test.name}" "${test}" ${lib.escapeShellArg test.assertion} || fail=1
-  '') tests)}
-
-  if [ "$fail" ]; then
-    echo "failed"
-    exit 1
-  else
-    echo "succeeded"
-    touch $out
-  fi
-''
diff --git a/pkgs/test/stdenv/default.nix b/pkgs/test/stdenv/default.nix
index c7bb07f625e..ba9ea8cb75b 100644
--- a/pkgs/test/stdenv/default.nix
+++ b/pkgs/test/stdenv/default.nix
@@ -98,7 +98,7 @@ in
 
 {
   # tests for hooks in `stdenv.defaultNativeBuildInputs`
-  hooks = lib.recurseIntoAttrs (import ./hooks.nix { stdenv = bootStdenv; pkgs = earlyPkgs; });
+  hooks = lib.recurseIntoAttrs (import ./hooks.nix { stdenv = bootStdenv; pkgs = earlyPkgs; inherit lib; });
 
   outputs-no-out = runCommand "outputs-no-out-assert" {
     result = testers.testBuildFailure (stdenv.mkDerivation {
@@ -158,7 +158,7 @@ in
 
   structuredAttrsByDefault = lib.recurseIntoAttrs {
 
-    hooks = lib.recurseIntoAttrs (import ./hooks.nix { stdenv = bootStdenvStructuredAttrsByDefault; pkgs = earlyPkgs; });
+    hooks = lib.recurseIntoAttrs (import ./hooks.nix { stdenv = bootStdenvStructuredAttrsByDefault; pkgs = earlyPkgs; inherit lib; });
 
     test-cc-wrapper-substitutions = ccWrapperSubstitutionsTest {
       name = "test-cc-wrapper-substitutions-structuredAttrsByDefault";
diff --git a/pkgs/test/stdenv/hooks.nix b/pkgs/test/stdenv/hooks.nix
index d7c409e6215..ba5da511c6f 100644
--- a/pkgs/test/stdenv/hooks.nix
+++ b/pkgs/test/stdenv/hooks.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgs }:
+{ stdenv, pkgs, lib }:
 
 # ordering should match defaultNativeBuildInputs
 
@@ -91,7 +91,7 @@
     '';
   };
   # TODO: add multiple-outputs
-  # TODO: move patch-shebangs test from pkgs/test/patch-shebangs/default.nix to here
+  patch-shebangs = import ./patch-shebangs.nix { inherit stdenv lib pkgs; };
   prune-libtool-files =
     let
       libFoo = pkgs.writeText "libFoo" ''
diff --git a/pkgs/test/stdenv/patch-shebangs.nix b/pkgs/test/stdenv/patch-shebangs.nix
new file mode 100644
index 00000000000..fb52f38ecc9
--- /dev/null
+++ b/pkgs/test/stdenv/patch-shebangs.nix
@@ -0,0 +1,98 @@
+{ lib, stdenv, pkgs }:
+
+# since the tests are using a early stdenv, the stdenv will have dontPatchShebangs=1, so it has to be unset
+# https://github.com/NixOS/nixpkgs/blob/768a982bfc9d29a6bd3beb963ed4b054451ce3d0/pkgs/stdenv/linux/default.nix#L148-L153
+
+# strictDeps has to be disabled because the shell isn't in buildInputs
+
+let
+  tests = {
+    bad-shebang = stdenv.mkDerivation {
+      name = "bad-shebang";
+      strictDeps = false;
+      dontUnpack = true;
+      installPhase = ''
+        mkdir -p $out/bin
+        echo "#!/bin/bash" > $out/bin/test
+        echo "echo -n hello" >> $out/bin/test
+        chmod +x $out/bin/test
+        dontPatchShebangs=
+      '';
+      passthru = {
+        assertion = "grep '^#!${stdenv.shell}' $out/bin/test > /dev/null";
+      };
+    };
+
+    ignores-nix-store = stdenv.mkDerivation {
+      name = "ignores-nix-store";
+      strictDeps = false;
+      dontUnpack = true;
+      installPhase = ''
+        mkdir -p $out/bin
+        echo "#!$NIX_STORE/path/to/bash" > $out/bin/test
+        echo "echo -n hello" >> $out/bin/test
+        chmod +x $out/bin/test
+        dontPatchShebangs=
+      '';
+      passthru = {
+        assertion = "grep \"^#!$NIX_STORE/path/to/bash\" $out/bin/test > /dev/null";
+      };
+    };
+
+    split-string = stdenv.mkDerivation {
+      name = "split-string";
+      strictDeps = false;
+      dontUnpack = true;
+      installPhase = ''
+        mkdir -p $out/bin
+        echo "#!/usr/bin/env -S bash --posix" > $out/bin/test
+        echo "echo -n hello" >> $out/bin/test
+        chmod +x $out/bin/test
+        dontPatchShebangs=
+      '';
+      passthru = {
+        assertion = "grep -v '^#!${pkgs.coreutils}/bin/env -S ${stdenv.shell} --posix' $out/bin/test > /dev/null";
+      };
+    };
+
+  };
+in
+stdenv.mkDerivation {
+  name = "test-patch-shebangs";
+  passthru = { inherit (tests) bad-shebang ignores-nix-store split-string; };
+  buildCommand = ''
+    validate() {
+      local name=$1
+      local testout=$2
+      local assertion=$3
+
+      echo -n "... $name: " >&2
+
+      local rc=0
+      (out=$testout eval "$assertion") || rc=1
+
+      if [ "$rc" -eq 0 ]; then
+        echo "yes" >&2
+      else
+        echo "no" >&2
+      fi
+
+      return "$rc"
+    }
+
+    echo "checking whether patchShebangs works properly... ">&2
+
+    fail=
+    ${lib.concatStringsSep "\n" (lib.mapAttrsToList (_: test: ''
+      validate "${test.name}" "${test}" ${lib.escapeShellArg test.assertion} || fail=1
+    '') tests)}
+
+    if [ "$fail" ]; then
+      echo "failed"
+      exit 1
+    else
+      echo "succeeded"
+      touch $out
+    fi
+  '';
+}
diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix
index 0d8303c0df4..6c4c89e8888 100644
--- a/pkgs/tools/X11/arandr/default.nix
+++ b/pkgs/tools/X11/arandr/default.nix
@@ -27,10 +27,6 @@ buildPythonApplication rec {
   # no tests
   doCheck = false;
 
-  # hook for gobject-introspection doesn't like strictDeps
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   buildInputs = [ docutils gsettings-desktop-schemas gtk3 ];
   nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
   propagatedBuildInputs = [ xrandr pygobject3 ];
diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix
index 189ae296fa5..bd3afcb5321 100644
--- a/pkgs/tools/admin/azure-cli/default.nix
+++ b/pkgs/tools/admin/azure-cli/default.nix
@@ -131,13 +131,13 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage {
     colorama
     cryptography
     distro
-    Fabric
+    fabric
     jsmin
     knack
     mock
     paramiko
     pydocumentdb
-    PyGithub
+    pygithub
     pygments
     pynacl
     pyopenssl
diff --git a/pkgs/tools/audio/beets/common.nix b/pkgs/tools/audio/beets/common.nix
index 4cfef4657e3..b3eefbf9cba 100644
--- a/pkgs/tools/audio/beets/common.nix
+++ b/pkgs/tools/audio/beets/common.nix
@@ -61,7 +61,6 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [
     confuse
-    gobject-introspection
     gst-python
     jellyfish
     mediafile
@@ -74,7 +73,6 @@ python3Packages.buildPythonApplication rec {
     unidecode
   ] ++ (concatMap (p: p.propagatedBuildInputs) (attrValues enabledPlugins));
 
-  # see: https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
   nativeBuildInputs = [
     gobject-introspection
     sphinxHook
diff --git a/pkgs/tools/audio/mpdris2/default.nix b/pkgs/tools/audio/mpdris2/default.nix
index a367da9828e..fd8618d6243 100644
--- a/pkgs/tools/audio/mpdris2/default.nix
+++ b/pkgs/tools/audio/mpdris2/default.nix
@@ -13,7 +13,6 @@ python3.pkgs.buildPythonApplication rec {
   pname = "mpDris2";
   version = "0.9.1";
   format = "other";
-  strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchFromGitHub {
     owner = "eonpatapon";
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index a42d7cce67d..95bf111d6de 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -121,7 +121,7 @@ let
     ps.setuptools
     ps.virtualenv
     # Libraries needed by the python tools
-    ps.Mako
+    ps.mako
     ceph-common
     ps.cherrypy
     ps.cmd2
diff --git a/pkgs/tools/graphics/graphviz/default.nix b/pkgs/tools/graphics/graphviz/default.nix
index 98d2c63d1bf..ee7350fbc9d 100644
--- a/pkgs/tools/graphics/graphviz/default.nix
+++ b/pkgs/tools/graphics/graphviz/default.nix
@@ -30,13 +30,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "graphviz";
-  version = "7.0.2";
+  version = "7.1.0";
 
   src = fetchFromGitLab {
     owner = "graphviz";
     repo = "graphviz";
     rev = version;
-    hash = "sha256-iCpIKTGXZ1R3mbpbwv5ztdtjY7p9/NsJlA6u5lfpgdY=";
+    hash = "sha256-y91YiBJT45slK266UGfow7MFdrdMXZQm3FYBWs1YuuE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/mangohud/default.nix b/pkgs/tools/graphics/mangohud/default.nix
index 9639a7881f0..8bdf4938ed5 100644
--- a/pkgs/tools/graphics/mangohud/default.nix
+++ b/pkgs/tools/graphics/mangohud/default.nix
@@ -17,7 +17,7 @@
 , appstream
 , glslang
 , makeWrapper
-, Mako
+, mako
 , meson
 , ninja
 , pkg-config
@@ -142,7 +142,7 @@ in stdenv.mkDerivation rec {
     appstream
     glslang
     makeWrapper
-    Mako
+    mako
     meson
     ninja
     pkg-config
diff --git a/pkgs/tools/graphics/piglit/default.nix b/pkgs/tools/graphics/piglit/default.nix
index 0a4dfc4bafc..561268b3f4b 100644
--- a/pkgs/tools/graphics/piglit/default.nix
+++ b/pkgs/tools/graphics/piglit/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     libxcb
     libxkbcommon
     (python3.withPackages (ps: with ps; [
-      Mako
+      mako
       numpy
     ]))
     waffle
diff --git a/pkgs/tools/inputmethods/input-remapper/default.nix b/pkgs/tools/inputmethods/input-remapper/default.nix
index c6941607683..092901e08c3 100644
--- a/pkgs/tools/inputmethods/input-remapper/default.nix
+++ b/pkgs/tools/inputmethods/input-remapper/default.nix
@@ -45,11 +45,6 @@ in
     hash = "sha256-KPQLgXSonuOgphagYN2JN+CMIpmjTIPUTCqOPDk0UYU=";
   };
 
-  # Fixes error
-  # Couldn’t recognize the image file format for file "*.svg"
-  # at startup, see https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   postPatch = ''
     # fix FHS paths
     substituteInPlace inputremapper/configs/data.py \
diff --git a/pkgs/tools/misc/gaphor/default.nix b/pkgs/tools/misc/gaphor/default.nix
index 95d9f911273..a97b887f1ca 100644
--- a/pkgs/tools/misc/gaphor/default.nix
+++ b/pkgs/tools/misc/gaphor/default.nix
@@ -37,11 +37,7 @@ buildPythonApplication rec {
     wrapGAppsHook
   ];
 
-  # Setting gobject-introspection on booth nativeBuildInputs and
-  # buildInputs because of #56943. This recognizes pango, avoiding
-  # a "ValueError: Namespace PangoCairo not available".
   buildInputs = [
-    gobject-introspection
     gtksourceview4
     pango
   ];
diff --git a/pkgs/tools/misc/online-judge-template-generator/default.nix b/pkgs/tools/misc/online-judge-template-generator/default.nix
index cf1ab7b7078..e867059eff3 100644
--- a/pkgs/tools/misc/online-judge-template-generator/default.nix
+++ b/pkgs/tools/misc/online-judge-template-generator/default.nix
@@ -4,7 +4,7 @@
 , beautifulsoup4
 , colorlog
 , fetchFromGitHub
-, Mako
+, mako
 , online-judge-api-client
 , online-judge-tools
 , ply
@@ -29,7 +29,7 @@ buildPythonApplication rec {
     appdirs
     beautifulsoup4
     colorlog
-    Mako
+    mako
     online-judge-api-client
     online-judge-tools
     ply
diff --git a/pkgs/tools/misc/trackma/default.nix b/pkgs/tools/misc/trackma/default.nix
index e3d6322b85e..855585dde3f 100644
--- a/pkgs/tools/misc/trackma/default.nix
+++ b/pkgs/tools/misc/trackma/default.nix
@@ -35,10 +35,10 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [ copyDesktopItems ]
-    ++ lib.optionals withGTK [ wrapGAppsHook ]
+    ++ lib.optionals withGTK [ wrapGAppsHook gobject-introspection ]
     ++ lib.optionals withQT [ qt5.wrapQtAppsHook ];
 
-  buildInputs = lib.optionals withGTK [ glib gobject-introspection gtk3 ];
+  buildInputs = lib.optionals withGTK [ glib gtk3 ];
 
   propagatedBuildInputs = with python3.pkgs; ([ urllib3 ]
     ++ lib.optionals withQT [ pyqt5 ]
@@ -47,9 +47,6 @@ python3.pkgs.buildPythonApplication rec {
     ++ lib.optionals stdenv.isLinux [ dbus-python pygobject3 pyinotify ]
     ++ lib.optionals (withGTK || withQT) [ pillow ]);
 
-  # broken with gobject-introspection setup hook, see https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   dontWrapQtApps = true;
   dontWrapGApps = true;
 
diff --git a/pkgs/tools/networking/curl/7.88.0-http2-breakage.patch b/pkgs/tools/networking/curl/7.88.0-http2-breakage.patch
deleted file mode 100644
index fd22299a762..00000000000
--- a/pkgs/tools/networking/curl/7.88.0-http2-breakage.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 3103de2053ca8cacf9cdbe78764ba6814481709f Mon Sep 17 00:00:00 2001
-Date: Wed, 15 Feb 2023 22:11:13 +0100
-Subject: [PATCH] http2: buffer/pausedata and output flush fix.
-
- * do not process pending input data when copying pausedata to the
-   caller
- * return CURLE_AGAIN if the output buffer could not be completely
-   written out.
-
-Ref: #10525
-Closes #10529
----
- lib/http2.c | 15 +++------------
- 1 file changed, 3 insertions(+), 12 deletions(-)
-
-diff --git a/lib/http2.c b/lib/http2.c
-index 46fc746457726..1ef5d3949218f 100644
---- a/lib/http2.c
-+++ b/lib/http2.c
-@@ -467,6 +467,7 @@ static CURLcode flush_output(struct Curl_cfilter *cf,
-   }
-   if((size_t)written < buflen) {
-     Curl_dyn_tail(&ctx->outbuf, buflen - (size_t)written);
-+    return CURLE_AGAIN;
-   }
-   else {
-     Curl_dyn_reset(&ctx->outbuf);
-@@ -1790,6 +1791,7 @@ static ssize_t cf_h2_recv(struct Curl_cfilter *cf, struct Curl_easy *data,
- 
-     stream->pausedata += nread;
-     stream->pauselen -= nread;
-+    drain_this(cf, data);
- 
-     if(stream->pauselen == 0) {
-       DEBUGF(LOG_CF(data, cf, "[h2sid=%u] Unpaused", stream->stream_id));
-@@ -1798,18 +1800,6 @@ static ssize_t cf_h2_recv(struct Curl_cfilter *cf, struct Curl_easy *data,
- 
-       stream->pausedata = NULL;
-       stream->pauselen = 0;
--
--      /* When NGHTTP2_ERR_PAUSE is returned from
--         data_source_read_callback, we might not process DATA frame
--         fully.  Calling nghttp2_session_mem_recv() again will
--         continue to process DATA frame, but if there is no incoming
--         frames, then we have to call it again with 0-length data.
--         Without this, on_stream_close callback will not be called,
--         and stream could be hanged. */
--      if(h2_process_pending_input(cf, data, err) != 0) {
--        nread = -1;
--        goto out;
--      }
-     }
-     DEBUGF(LOG_CF(data, cf, "[h2sid=%u] recv: returns unpaused %zd bytes",
-                   stream->stream_id, nread));
-@@ -1933,6 +1923,7 @@ static ssize_t cf_h2_recv(struct Curl_cfilter *cf, struct Curl_easy *data,
-       drained_transfer(cf, data);
-     }
- 
-+    *err = CURLE_OK;
-     nread = retlen;
-     DEBUGF(LOG_CF(data, cf, "[h2sid=%u] cf_h2_recv -> %zd",
-                   stream->stream_id, nread));
-
-
-From 87ed650d04dc1a6f7944a5d952f7d5b0934a19ac Mon Sep 17 00:00:00 2001
-From: Harry Sintonen <sintonen@iki.fi>
-Date: Thu, 16 Feb 2023 06:26:26 +0200
-Subject: [PATCH] http2: set drain on stream end
-
-Ensure that on_frame_recv() stream end will trigger a read if there is
-pending data. Without this it could happen that the pending data is
-never consumed.
-
-This combined with https://github.com/curl/curl/pull/10529 should fix
-https://github.com/curl/curl/issues/10525
-
-Ref: https://github.com/curl/curl/issues/10525
-Closes #10530
----
- lib/http2.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/lib/http2.c b/lib/http2.c
-index 1ef5d3949218f..bdb5e7378e9cb 100644
---- a/lib/http2.c
-+++ b/lib/http2.c
-@@ -868,6 +868,14 @@ static int on_frame_recv(nghttp2_session *session, const nghttp2_frame *frame,
-         return NGHTTP2_ERR_CALLBACK_FAILURE;
-       }
-     }
-+    if(frame->hd.flags & NGHTTP2_FLAG_END_STREAM) {
-+      /* Stream has ended. If there is pending data, ensure that read
-+         will occur to consume it. */
-+      if(!data->state.drain && stream->memlen) {
-+        drain_this(cf, data_s);
-+        Curl_expire(data, 0, EXPIRE_RUN_NOW);
-+      }
-+    }
-     break;
-   case NGHTTP2_HEADERS:
-     DEBUGF(LOG_CF(data_s, cf, "[h2sid=%u] recv frame HEADERS", stream_id));
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 21173d4d070..fca190bde4a 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -48,19 +48,18 @@ assert !(opensslSupport && wolfsslSupport);
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "curl";
-  version = "7.88.0";
+  version = "7.88.1";
 
   src = fetchurl {
     urls = [
       "https://curl.haxx.se/download/curl-${finalAttrs.version}.tar.bz2"
       "https://github.com/curl/curl/releases/download/curl-${finalAttrs.version}/curl-${finalAttrs.version}.tar.bz2"
     ];
-    hash = "sha256-yB9DntAkQvapuVg237OpjgxHdhDKey9NWqH8MpVD0z8=";
+    hash = "sha256-giS0XM4Sq94DnBLcBxG36oWxBLmtU01uTFtOGIphyQc=";
   };
 
   patches = [
     ./7.79.1-darwin-no-systemconfiguration.patch
-    ./7.88.0-http2-breakage.patch
   ];
 
   outputs = [ "bin" "dev" "out" "man" "devdoc" ];
@@ -185,6 +184,7 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   meta = with lib; {
+    changelog = "https://curl.se/changes.html#${lib.replaceStrings [ "." ] [ "_" ] finalAttrs.version}";
     description = "A command line tool for transferring files with URL syntax";
     homepage    = "https://curl.se/";
     license = licenses.curl;
diff --git a/pkgs/tools/networking/dnstwist/default.nix b/pkgs/tools/networking/dnstwist/default.nix
index bab81c2069e..3c70713bedb 100644
--- a/pkgs/tools/networking/dnstwist/default.nix
+++ b/pkgs/tools/networking/dnstwist/default.nix
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3.pkgs; [
     dnspython
-    GeoIP
+    geoip
     ppdeep
     requests
     tld
diff --git a/pkgs/tools/security/gnome-keysign/default.nix b/pkgs/tools/security/gnome-keysign/default.nix
index 50a1ff98d14..f5157fc9e41 100644
--- a/pkgs/tools/security/gnome-keysign/default.nix
+++ b/pkgs/tools/security/gnome-keysign/default.nix
@@ -67,9 +67,6 @@ python3.pkgs.buildPythonApplication rec {
     twisted
   ];
 
-  # https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   # bunch of linting
   doCheck = false;
 
diff --git a/pkgs/tools/security/wapiti/default.nix b/pkgs/tools/security/wapiti/default.nix
index 49c0f8cd14f..367123fad25 100644
--- a/pkgs/tools/security/wapiti/default.nix
+++ b/pkgs/tools/security/wapiti/default.nix
@@ -29,7 +29,7 @@ python3.pkgs.buildPythonApplication rec {
     humanize
     importlib-metadata
     loguru
-    Mako
+    mako
     markupsafe
     mitmproxy
     six
diff --git a/pkgs/tools/security/xsser/default.nix b/pkgs/tools/security/xsser/default.nix
index 5028b3c7721..6c75f2e733f 100644
--- a/pkgs/tools/security/xsser/default.nix
+++ b/pkgs/tools/security/xsser/default.nix
@@ -22,10 +22,6 @@ buildPythonApplication rec {
     substituteInPlace setup.py --replace /usr/share share
   '';
 
-  # Temporary fix
-  # See https://github.com/NixOS/nixpkgs/issues/56943
-  strictDeps = false;
-
   nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
 
   buildInputs = [
diff --git a/pkgs/tools/text/diffutils/default.nix b/pkgs/tools/text/diffutils/default.nix
index d5f27747cf1..fb0a95c49e1 100644
--- a/pkgs/tools/text/diffutils/default.nix
+++ b/pkgs/tools/text/diffutils/default.nix
@@ -7,13 +7,25 @@
 
 stdenv.mkDerivation rec {
   pname = "diffutils";
-  version = "3.8";
+  version = "3.9";
 
   src = fetchurl {
     url = "mirror://gnu/diffutils/diffutils-${version}.tar.xz";
-    sha256 = "sha256-pr3X0bMSZtEcT03mwbdI1GB6sCMa9RiPwlM9CuJDj+w=";
+    hash = "sha256-2A076QogGGjeg9eNrTQTrYgWDMU7zDbrnq98INvwI/E=";
   };
 
+  patches = [
+    # Backport of a fix for 'diff -D' output.
+    # TODO: remove when updating to 3.10.
+    ./fix-diff-D.patch
+  ];
+
+  postPatch = ''
+    # avoid the need for help2man
+    # TODO: can be removed when fix-diff-D.patch is removed.
+    touch man/diff.1
+  '';
+
   outputs = [ "out" "info" ];
 
   nativeBuildInputs = [ xz.bin ];
diff --git a/pkgs/tools/text/diffutils/fix-diff-D.patch b/pkgs/tools/text/diffutils/fix-diff-D.patch
new file mode 100644
index 00000000000..616f0927914
--- /dev/null
+++ b/pkgs/tools/text/diffutils/fix-diff-D.patch
@@ -0,0 +1,15 @@
+https://git.savannah.gnu.org/cgit/diffutils.git/patch/?id=ba08fbbb0ca5da455bf695236c57bc50e7faed50
+https://github.com/NixOS/nixpkgs/pull/213421#issuecomment-1407749912
+
+Fix 'diff -D' regression
+--- a/src/diff.c
++++ b/src/diff.c
+@@ -416,7 +416,7 @@ main (int argc, char **argv)
+ 	    char *base = b;
+ 	    int changes = 0;
+ 
+-	    for (i = 0; i < sizeof sizeof C_ifdef_group_formats; i++)
++	    for (i = 0; i < sizeof C_ifdef_group_formats; i++)
+ 	      {
+ 		char ch = C_ifdef_group_formats[i];
+ 		switch (ch)
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7bc3228eb37..5f100052826 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7170,7 +7170,7 @@ with pkgs;
 
   f2fs-tools = callPackage ../tools/filesystems/f2fs-tools { };
 
-  Fabric = with python3Packages; toPythonApplication Fabric;
+  Fabric = with python3Packages; toPythonApplication fabric;
 
   fail2ban = callPackage ../tools/security/fail2ban { };
 
@@ -9728,7 +9728,7 @@ with pkgs;
   mangohud = callPackage ../tools/graphics/mangohud {
     libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
     mangohud32 = pkgsi686Linux.mangohud;
-    inherit (python3Packages) Mako;
+    inherit (python3Packages) mako;
   };
 
   manix = callPackage ../tools/nix/manix {
@@ -18790,7 +18790,8 @@ with pkgs;
   texinfo6_5 = callPackage ../development/tools/misc/texinfo/6.5.nix { }; # needed for allegro
   texinfo6_7 = callPackage ../development/tools/misc/texinfo/6.7.nix { }; # needed for gpm, iksemel and fwknop
   texinfo6 = callPackage ../development/tools/misc/texinfo/6.8.nix { };
-  texinfo = texinfo6;
+  texinfo7 = callPackage ../development/tools/misc/texinfo/7.0.nix { };
+  texinfo = texinfo7;
   texinfoInteractive = texinfo.override { interactive = true; };
 
   texi2html = callPackage ../development/tools/misc/texi2html { };
@@ -26286,7 +26287,7 @@ with pkgs;
 
   lsscsi = callPackage ../os-specific/linux/lsscsi { };
 
-  lvm2-2_03 = callPackage ../os-specific/linux/lvm2/2_03.nix {
+  lvm2 = callPackage ../os-specific/linux/lvm2/2_03.nix {
     # udev is the same package as systemd which depends on cryptsetup
     # which depends on lvm2 again.  But we only need the libudev part
     # which does not depend on cryptsetup.
@@ -26296,10 +26297,6 @@ with pkgs;
     # systemd (optionally, but on by default) on cryptsetup and cryptsetup depends on lvm2
     util-linux = util-linuxMinimal;
   };
-  lvm2-2_02 = callPackage ../os-specific/linux/lvm2/2_02.nix {
-    udev = systemdMinimal;
-  };
-  lvm2 = if stdenv.hostPlatform.isMusl then lvm2-2_02 else lvm2-2_03;
 
   lvm2_dmeventd = lvm2.override {
     enableDmeventd = true;
diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix
index ce9c2b3916e..95e111c001f 100644
--- a/pkgs/top-level/python-aliases.nix
+++ b/pkgs/top-level/python-aliases.nix
@@ -38,17 +38,22 @@ mapAliases ({
   ansible-base = throw "ansible-base has been removed, because it is end of life"; # added 2022-03-30
   anyjson = throw "anyjson has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18
   argon2_cffi = argon2-cffi; # added 2022-05-09
+  APScheduler = apscheduler; # added 2023-02-19
   asyncio-nats-client = nats-py; # added 2022-02-08
   awkward0 = throw "awkward0 has been removed, use awkward instead"; # added 2022-12-13
   Babel = babel; # added 2022-05-06
   bedup = throw "bedup was removed because it was broken and abandoned upstream"; # added 2023-02-04
   bitcoin-price-api = throw "bitcoin-price-api has been removed, it was using setuptools 2to3 translation feautre, which has been removed in setuptools 58"; # added 2022-02-15
+  BlinkStick = blinkstick; # added 2023-02-19
   blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # added 2020-11-29
   bsblan = python-bsblan; # added 2022-11-04
   bt_proximity = bt-proximity; # added 2021-07-02
+  BTrees = btrees; # added 2023-02-19
   carrot = throw "carrot has been removed, as its development was discontinued in 2012"; # added 2022-01-18
   class-registry = phx-class-registry; # added 2021-10-05
   codespell = throw "codespell has been promoted to a top-level attribute"; # Added 2022-10-02
+  ColanderAlchemy = colanderalchemy; # added 2023-02-19
+  CommonMark = commonmark; # added 2023-02-19
   ConfigArgParse = configargparse; # added 2021-03-18
   cozy = throw "cozy was removed because it was not actually https://pypi.org/project/Cozy/."; # added 2022-01-14
   cryptography_vectors = "cryptography_vectors is no longer exposed in python*Packages because it is used for testing cryptography only."; # Added 2022-03-23
@@ -77,7 +82,9 @@ mapAliases ({
   dogpile_cache = dogpile-cache; # added 2021-10-28
   dogpile-core = throw "dogpile-core is no longer maintained, use dogpile-cache instead"; # added 2021-11-20
   eebrightbox = throw "eebrightbox is unmaintained upstream and has therefore been removed"; # added 2022-02-03
+  EasyProcess = easyprocess; # added 2023-02-19
   email_validator = email-validator; # added 2022-06-22
+  Fabric = fabric; # addedd 2023-02-19
   face_recognition = face-recognition; # added 2022-10-15
   face_recognition_models = face-recognition-models; # added 2022-10-15
   fake_factory = throw "fake_factory has been removed because it is unused and deprecated by upstream since 2016."; # added 2022-05-30
@@ -89,10 +96,12 @@ mapAliases ({
   flask_sqlalchemy = flask-sqlalchemy; # added 2022-07-20
   flask_testing = flask-testing; # added 2022-04-25
   flask_wtf = flask-wtf; # added 2022-05-24
+  FormEncode = formencode; # added 2023-02-19
   functorch = throw "functorch is now part of the torch package and has therefore been removed. See https://github.com/pytorch/functorch/releases/tag/v1.13.0 for more info."; # added 2022-12-01
   garages-amsterdam = throw "garages-amsterdam has been renamed odp-amsterdam."; # added 2023-01-04
   garminconnect-ha = garminconnect; # added 2022-02-05
   gdtoolkit = throw "gdtoolkit has been promoted to a top-level attribute"; # added 2023-02-15
+  GeoIP = geoip; # added 2023-02-19
   gigalixir = throw "gigalixir has been promoted to a top-level attribute"; # Added 2022-10-02
   gitdb2 = throw "gitdb2 has been deprecated, use gitdb instead."; # added 2020-03-14
   GitPython = gitpython; # added 2022-10-28
@@ -109,24 +118,29 @@ mapAliases ({
   hangups = throw "hangups was removed because Google Hangouts has been shut down"; # added 2023-02-13
   hbmqtt = throw "hbmqtt was removed because it is no longer maintained"; # added 2021-11-07
   hdlparse = throw "hdlparse has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18
+  HTSeq = htseq; # added 2023-02-19
   hyperkitty = throw "Please use pkgs.mailmanPackages.hyperkitty"; # added 2022-04-29
   IMAPClient = imapclient; # added 2021-10-28
   imdbpy = throw "imdbpy has been renamed to cinemagoer"; # added 2022-08-08
   ipaddress = throw "ipaddress has been removed because it is no longer required since python 2.7."; # added 2022-05-30
   influxgraph = throw "influxgraph has been removed because it is no longer maintained"; # added 2022-07-10
   itanium_demangler = itanium-demangler; # added 2022-1017
+  JayDeBeApi = jaydebeapi; # added 2023-02-19
   jinja2_time = jinja2-time; # added 2022-11-07
+  JPype1 = jpype1; # added 2023-02-19
   jupyter_client = jupyter-client; # added 2021-10-15
   jupyter_core = jupyter-core; # added 2023-01-05
   jupyter_server = jupyter-server; # added 2023-01-05
+  Kajiki = kajiki; # added 2023-02-19
   Keras = keras; # added 2021-11-25
   ldap = python-ldap; # added 2022-09-16
   lammps-cython = throw "lammps-cython no longer builds and is unmaintained"; # added 2021-07-04
   logilab_astng = throw "logilab-astng has not been released since 2013 and is unmaintained"; # added 2022-11-29
   logilab_common = logilab-common; # added 2022-11-21
   loo-py = loopy; # added 2022-05-03
+  Mako = mako; # added 2023-02-19
   Markups = markups; # added 2022-02-14
-  MDP = mdp; # added 2023-02-24
+  MDP = mdp; # added 2023-02-19
   MechanicalSoup = mechanicalsoup; # added 2021-06-01
   memcached = python-memcached; # added 2022-05-06
   mailman = throw "Please use pkgs.mailman"; # added 2022-04-29
@@ -140,6 +154,7 @@ mapAliases ({
   nose-cover3 = throw "nose-cover3 has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-02-16
   nose_progressive = throw "nose_progressive has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; #added 2023-02-21
   notifymuch = throw "notifymuch has been promoted to a top-level attribute"; # added 2022-10-02
+  Nuitka = nuitka; # added 2023-02-19
   ordereddict = throw "ordereddict has been removed because it is only useful on unsupported python versions."; # added 2022-05-28
   pafy = throw "pafy has been removed because it is unmaintained and only a dependency of mps-youtube, itself superseded by yewtube"; # Added 2023-01-19
   pam = python-pam; # added 2020-09-07.
@@ -158,11 +173,14 @@ mapAliases ({
   protonup = protonup-ng; # Added 2022-11-06
   pur = throw "pur has been renamed to pkgs.pur"; # added 2021-11-08
   pushbullet = pushbullet-py;  # Added 2022-10-15
+  Pweave = pweave; # added 2023-02-19
   pyalmond = throw "pyalmond has been removed, since its API endpoints have been shutdown"; # added 2023-02-02
   pydrive = throw "pydrive is broken and deprecated and has been replaced with pydrive2."; # added 2022-06-01
+  PyGithub = pygithub; # added 2023-02-19
   pyGtkGlade = throw "Glade support for pygtk has been removed"; # added 2022-01-15
   pycallgraph = throw "pycallgraph has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18
   pychef = throw "pychef has been removed because it's been archived upstream and abandoned since 2017."; # added 2022-11-14
+  PyChromecast = pychromecast; # added 2023-02-19
   pycryptodome-test-vectors = throw "pycryptodome-test-vectors has been removed because it is an internal package to pycryptodome"; # added 2022-05-28
   pyflunearyou = pyoutbreaksnearme; # added 2023-02-11
   pyialarmxr = pyialarmxr-homeassistant; # added 2022-06-07
@@ -173,6 +191,7 @@ mapAliases ({
   PyLD = pyld; # added 2022-06-22
   pymc3 = pymc; # added 2022-06-05, module was rename starting with 4.0.0
   pymssql = throw "pymssql has been abandoned upstream."; # added 2020-05-04
+  PyMVGLive = pymvglive; # added 2023-02-19
   pyramid_hawkauth = throw "pyramid_hawkauth has been removed because it is no longer maintained"; # added 2023-02-2
   pyreadability = readability-lxml; # added 2022-05-24
   pyroute2-core = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
@@ -183,8 +202,12 @@ mapAliases ({
   pyroute2-nftables = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
   pyroute2-nslink = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
   pyroute2-protocols = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
+  Pyro4 = pyro4; # added 2023-02-19
+  Pyro5 = pyro5; # added 2023-02-19
+  PyRSS2Gen = pyrss2gen; # added 2023-02-19
   pysmart-smartx = pysmart; # added 2021-10-22
   pyspotify = throw "pyspotify has been removed because Spotify stopped supporting libspotify"; # added 2022-05-29
+  PyStemmer = pystemmer; # added 2023-02-19
   pytest_6 = pytest; # added 2022-02-10
   pytestcov = pytest-cov; # added 2021-01-04
   pytest-pep8 = pytestpep8; # added 2021-01-04
@@ -207,7 +230,9 @@ mapAliases ({
   pytorchWithCuda = torchWithCuda; # added 2022-09-30
   pytorchWithoutCuda = torchWithoutCuda; # added 2022-09-30
   pytwitchapi = twitchapi; # added 2022-03-07
+  PyVirtualDisplay = pyvirtualdisplay; # added 2023-02-19
   qasm2image = throw "qasm2image is no longer maintained (since November 2018), and is not compatible with the latest pythonPackages.qiskit versions."; # added 2020-12-09
+  Quandl = quandl; # added 2023-02-19
   qiskit-aqua = throw "qiskit-aqua has been removed due to deprecation, with its functionality moved to different qiskit packages";
   rdflib-jsonld = throw "rdflib-jsonld is not compatible with rdflib 6"; # added 2021-11-05
   repeated_test = repeated-test; # added 2022-11-15
@@ -239,6 +264,9 @@ mapAliases ({
   tensorflow-estimator_2 = tensorflow-estimator; # added 2021-11-25
   tensorflow-tensorboard = tensorboard; # added 2022-03-06
   tensorflow-tensorboard_2 = tensorflow-tensorboard; # added 2021-11-25
+  Theano = theano; # added 2023-02-19
+  TheanoWithCuda = theanoWithCuda; # added 2023-02-19
+  TheanoWithoutCuda = theanoWithoutCuda; # added 2023-02-19
   tumpa = throw "tumpa was promoted to a top-level attribute"; # added 2022-11-19
   tvnamer = throw "tvnamer was moved to pkgs.tvnamer"; # added 2021-07-05
   types-cryptography = throw "types-cryptography has been removed because it is obsolete since cryptography version 3.4.4."; # added 2022-05-30
@@ -252,7 +280,10 @@ mapAliases ({
   weakrefmethod = throw "weakrefmethod was removed since it's not needed in Python >= 3.4"; # added 2022-12-01
   webapp2 = throw "webapp2 is unmaintained since 2012"; # added 2022-05-29
   websocket_client = websocket-client; # added 2021-06-15
+  WSME = wsme; # added 2023-02-19
   xenomapper = throw "xenomapper was moved to pkgs.xenomapper"; # added 2021-12-31
+  XlsxWriter = xlsxwriter; # added 2023-02-19
+  Yapsy = yapsy; # added 2023-02-19
   zc-buildout221 = zc-buildout; # added 2021-07-21
   zc_buildout_nix = throw "zc_buildout_nix was pinned to a version no longer compatible with other modules";
 })
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 08f7417ac86..96b6d7c6637 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -552,7 +552,7 @@ self: super: with self; {
 
   aprslib = callPackage ../development/python-modules/aprslib { };
 
-  APScheduler = callPackage ../development/python-modules/APScheduler { };
+  apscheduler = callPackage ../development/python-modules/apscheduler { };
 
   apsw = callPackage ../development/python-modules/apsw { };
 
@@ -1332,7 +1332,7 @@ self: super: with self; {
 
   blinkpy = callPackage ../development/python-modules/blinkpy { };
 
-  BlinkStick = callPackage ../development/python-modules/blinkstick { };
+  blinkstick = callPackage ../development/python-modules/blinkstick { };
 
   blis = callPackage ../development/python-modules/blis { };
 
@@ -1465,7 +1465,7 @@ self: super: with self; {
 
   bt-proximity = callPackage ../development/python-modules/bt-proximity { };
 
-  BTrees = callPackage ../development/python-modules/btrees { };
+  btrees = callPackage ../development/python-modules/btrees { };
 
   btrfs = callPackage ../development/python-modules/btrfs { };
 
@@ -1917,7 +1917,7 @@ self: super: with self; {
 
   coinmetrics-api-client = callPackage ../development/python-modules/coinmetrics-api-client { };
 
-  ColanderAlchemy = callPackage ../development/python-modules/colanderalchemy { };
+  colanderalchemy = callPackage ../development/python-modules/colanderalchemy { };
 
   colander = callPackage ../development/python-modules/colander { };
 
@@ -1961,7 +1961,7 @@ self: super: with self; {
 
   commoncode = callPackage ../development/python-modules/commoncode { };
 
-  CommonMark = callPackage ../development/python-modules/commonmark { };
+  commonmark = callPackage ../development/python-modules/commonmark { };
 
   compiledb = callPackage ../development/python-modules/compiledb { };
 
@@ -2936,7 +2936,7 @@ self: super: with self; {
 
   easyocr = callPackage ../development/python-modules/easyocr { };
 
-  EasyProcess = callPackage ../development/python-modules/easyprocess { };
+  easyprocess = callPackage ../development/python-modules/easyprocess { };
 
   easy-thumbnails = callPackage ../development/python-modules/easy-thumbnails { };
 
@@ -3226,7 +3226,7 @@ self: super: with self; {
 
   f90nml = callPackage ../development/python-modules/f90nml { };
 
-  Fabric = callPackage ../development/python-modules/Fabric { };
+  fabric = callPackage ../development/python-modules/fabric { };
 
   faadelays = callPackage ../development/python-modules/faadelays { };
 
@@ -3603,7 +3603,7 @@ self: super: with self; {
 
   fortiosapi = callPackage ../development/python-modules/fortiosapi { };
 
-  FormEncode = callPackage ../development/python-modules/FormEncode { };
+  formencode = callPackage ../development/python-modules/formencode { };
 
   foundationdb51 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb51; };
   foundationdb52 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb52; };
@@ -3779,7 +3779,9 @@ self: super: with self; {
 
   geoip2 = callPackage ../development/python-modules/geoip2 { };
 
-  GeoIP = callPackage ../development/python-modules/GeoIP { };
+  geoip = callPackage ../development/python-modules/geoip {
+    libgeoip = pkgs.geoip;
+  };
 
   geojson = callPackage ../development/python-modules/geojson { };
 
@@ -4422,7 +4424,7 @@ self: super: with self; {
 
   html-text = callPackage ../development/python-modules/html-text { };
 
-  HTSeq = callPackage ../development/python-modules/HTSeq { };
+  htseq = callPackage ../development/python-modules/htseq { };
 
   httmock = callPackage ../development/python-modules/httmock { };
 
@@ -4880,7 +4882,7 @@ self: super: with self; {
 
   jaxopt = callPackage ../development/python-modules/jaxopt { };
 
-  JayDeBeApi = callPackage ../development/python-modules/JayDeBeApi { };
+  jaydebeapi = callPackage ../development/python-modules/jaydebeapi { };
 
   jc = callPackage ../development/python-modules/jc { };
 
@@ -4938,7 +4940,7 @@ self: super: with self; {
 
   jpylyzer = callPackage ../development/python-modules/jpylyzer { };
 
-  JPype1 = callPackage ../development/python-modules/JPype1 { };
+  jpype1 = callPackage ../development/python-modules/jpype1 { };
 
   jq = callPackage ../development/python-modules/jq {
     inherit (pkgs) jq;
@@ -5109,7 +5111,7 @@ self: super: with self; {
 
   kaitaistruct = callPackage ../development/python-modules/kaitaistruct { };
 
-  Kajiki = callPackage ../development/python-modules/kajiki { };
+  kajiki = callPackage ../development/python-modules/kajiki { };
 
   kaldi-active-grammar = callPackage ../development/python-modules/kaldi-active-grammar { };
 
@@ -5567,7 +5569,7 @@ self: super: with self; {
 
   log-symbols = callPackage ../development/python-modules/log-symbols { };
 
-  Logbook = callPackage ../development/python-modules/Logbook { };
+  logbook = callPackage ../development/python-modules/logbook { };
 
   logfury = callPackage ../development/python-modules/logfury { };
 
@@ -5681,7 +5683,7 @@ self: super: with self; {
 
   maison = callPackage ../development/python-modules/maison { };
 
-  Mako = callPackage ../development/python-modules/Mako { };
+  mako = callPackage ../development/python-modules/mako { };
 
   malduck= callPackage ../development/python-modules/malduck { };
 
@@ -6378,7 +6380,7 @@ self: super: with self; {
 
   nidaqmx = callPackage ../development/python-modules/nidaqmx { };
 
-  Nikola = callPackage ../development/python-modules/Nikola { };
+  nikola = callPackage ../development/python-modules/nikola { };
 
   niko-home-control = callPackage ../development/python-modules/niko-home-control { };
 
@@ -6510,7 +6512,7 @@ self: super: with self; {
 
   ntplib = callPackage ../development/python-modules/ntplib { };
 
-  Nuitka = callPackage ../development/python-modules/nuitka { };
+  nuitka = callPackage ../development/python-modules/nuitka { };
 
   nulltype = callPackage ../development/python-modules/nulltype { };
 
@@ -7453,7 +7455,7 @@ self: super: with self; {
 
   plyvel = callPackage ../development/python-modules/plyvel { };
 
-  Pmw = callPackage ../development/python-modules/Pmw { };
+  pmw = callPackage ../development/python-modules/pmw { };
 
   pocket = callPackage ../development/python-modules/pocket { };
 
@@ -7699,7 +7701,7 @@ self: super: with self; {
 
   pvo = callPackage ../development/python-modules/pvo { };
 
-  Pweave = callPackage ../development/python-modules/pweave { };
+  pweave = callPackage ../development/python-modules/pweave { };
 
   pwntools = callPackage ../development/python-modules/pwntools {
     debugger = pkgs.gdb;
@@ -7873,7 +7875,7 @@ self: super: with self; {
 
   pychm = callPackage ../development/python-modules/pychm { };
 
-  PyChromecast = callPackage ../development/python-modules/pychromecast { };
+  pychromecast = callPackage ../development/python-modules/pychromecast { };
 
   pyclimacell = callPackage ../development/python-modules/pyclimacell { };
 
@@ -8138,7 +8140,7 @@ self: super: with self; {
 
   pygit2 = callPackage ../development/python-modules/pygit2 { };
 
-  PyGithub = callPackage ../development/python-modules/pyGithub { };
+  pygithub = callPackage ../development/python-modules/pygithub { };
 
   pyglet = callPackage ../development/python-modules/pyglet { };
 
@@ -8347,7 +8349,7 @@ self: super: with self; {
 
   pylpsd = callPackage ../development/python-modules/pylpsd { };
 
-  PyLTI = callPackage ../development/python-modules/pylti { };
+  pylti = callPackage ../development/python-modules/pylti { };
 
   pylutron = callPackage ../development/python-modules/pylutron { };
 
@@ -8455,7 +8457,7 @@ self: super: with self; {
 
   pymupdf = callPackage ../development/python-modules/pymupdf { };
 
-  PyMVGLive = callPackage ../development/python-modules/pymvglive { };
+  pymvglive = callPackage ../development/python-modules/pymvglive { };
 
   pymyq = callPackage ../development/python-modules/pymyq { };
 
@@ -8743,9 +8745,9 @@ self: super: with self; {
 
   pyrmvtransport = callPackage ../development/python-modules/pyrmvtransport { };
 
-  Pyro4 = callPackage ../development/python-modules/pyro4 { };
+  pyro4 = callPackage ../development/python-modules/pyro4 { };
 
-  Pyro5 = callPackage ../development/python-modules/pyro5 { };
+  pyro5 = callPackage ../development/python-modules/pyro5 { };
 
   pyroma = callPackage ../development/python-modules/pyroma { };
 
@@ -8759,7 +8761,7 @@ self: super: with self; {
 
   pyrsistent = callPackage ../development/python-modules/pyrsistent { };
 
-  PyRSS2Gen = callPackage ../development/python-modules/pyrss2gen { };
+  pyrss2gen = callPackage ../development/python-modules/pyrss2gen { };
 
   pyrtlsdr = callPackage ../development/python-modules/pyrtlsdr { };
 
@@ -8959,7 +8961,7 @@ self: super: with self; {
     inherit (pkgs) systemd;
   };
 
-  PyStemmer = callPackage ../development/python-modules/pystemmer { };
+  pystemmer = callPackage ../development/python-modules/pystemmer { };
 
   pystray = callPackage ../development/python-modules/pystray { };
 
@@ -9656,7 +9658,7 @@ self: super: with self; {
 
   pyvicare = callPackage ../development/python-modules/pyvicare { };
 
-  PyVirtualDisplay = callPackage ../development/python-modules/PyVirtualDisplay { };
+  pyvirtualdisplay = callPackage ../development/python-modules/pyvirtualdisplay { };
 
   pyvis = callPackage ../development/python-modules/pyvis { };
 
@@ -9824,9 +9826,6 @@ self: super: with self; {
 
   quandl = callPackage ../development/python-modules/quandl { };
 
-  # TODO: rename this
-  Quandl = callPackage ../development/python-modules/quandl { }; # alias for an older package which did not support Python 3
-
   quantities = callPackage ../development/python-modules/quantities { };
 
   quantiphy = callPackage ../development/python-modules/quantiphy { };
@@ -10243,7 +10242,7 @@ self: super: with self; {
 
   rtoml = callPackage ../development/python-modules/rtoml { };
 
-  Rtree = callPackage ../development/python-modules/Rtree {
+  rtree = callPackage ../development/python-modules/rtree {
     inherit (pkgs) libspatialindex;
   };
 
@@ -11466,17 +11465,17 @@ self: super: with self; {
 
   theano-pymc = callPackage ../development/python-modules/theano-pymc { };
 
-  Theano = callPackage ../development/python-modules/Theano rec {
+  theano = callPackage ../development/python-modules/theano rec {
     cudaSupport = pkgs.config.cudaSupport or false;
     cudnnSupport = cudaSupport;
   };
 
-  TheanoWithCuda = self.Theano.override {
+  theanoWithCuda = self.theano.override {
     cudaSupport = true;
     cudnnSupport = true;
   };
 
-  TheanoWithoutCuda = self.Theano.override {
+  theanoWithoutCuda = self.theano.override {
     cudaSupport = false;
     cudnnSupport = false;
   };
@@ -12429,7 +12428,7 @@ self: super: with self; {
 
   wsgitools = callPackage ../development/python-modules/wsgitools { };
 
-  WSME = callPackage ../development/python-modules/WSME { };
+  wsme = callPackage ../development/python-modules/wsme { };
 
   wsnsimpy = callPackage ../development/python-modules/wsnsimpy { };
 
@@ -12517,7 +12516,7 @@ self: super: with self; {
 
   xlsx2csv = callPackage ../development/python-modules/xlsx2csv { };
 
-  XlsxWriter = callPackage ../development/python-modules/XlsxWriter { };
+  xlsxwriter = callPackage ../development/python-modules/xlsxwriter { };
 
   xlwt = callPackage ../development/python-modules/xlwt { };
 
@@ -12601,7 +12600,7 @@ self: super: with self; {
 
   yappi = callPackage ../development/python-modules/yappi { };
 
-  Yapsy = callPackage ../development/python-modules/yapsy { };
+  yapsy = callPackage ../development/python-modules/yapsy { };
 
   yara-python = callPackage ../development/python-modules/yara-python { };
 
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 374a308ac14..c22ea7f503f 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -82,7 +82,7 @@ let
               jobs.tests.cc-wrapper-libcxx.x86_64-darwin
               jobs.tests.stdenv-inputs.x86_64-darwin
               jobs.tests.macOSSierraShared.x86_64-darwin
-              jobs.tests.patch-shebangs.x86_64-darwin
+              jobs.tests.stdenv.hooks.patch-shebangs.x86_64-darwin
               */
             ];
         } else null;
@@ -127,7 +127,7 @@ let
               jobs.tests.cc-multilib-gcc.x86_64-linux
               jobs.tests.cc-multilib-clang.x86_64-linux
               jobs.tests.stdenv-inputs.x86_64-linux
-              jobs.tests.patch-shebangs.x86_64-linux
+              jobs.tests.stdenv.hooks.patch-shebangs.x86_64-linux
               */
             ]
             # FIXME: reintroduce aarch64-darwin after this builds again
@@ -158,7 +158,7 @@ let
               jobs.tests.cc-wrapper-libcxx-6.x86_64-darwin
               jobs.tests.stdenv-inputs.x86_64-darwin
               jobs.tests.macOSSierraShared.x86_64-darwin
-              jobs.tests.patch-shebangs.x86_64-darwin
+              jobs.tests.stdenv.hooks.patch-shebangs.x86_64-darwin
               */
             ];
         };